:root {
  --ds-gutter: clamp(16px, 4vw, 32px);
  --ds-radius: 6px;
}

html { scroll-behavior: auto; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  * { transition: none; }
}

:where(a) { text-underline-offset: 0.2em; }
:focus-visible {
  outline: 3px solid var(--wp--preset--color--mint-dark);
  outline-offset: 2px;
  border-radius: 6px;
}

/* One shared container for every section */
.ds-container {
  box-sizing: border-box;
  width: 100%;
  max-width: 1180px;
  margin-inline: auto;
  padding-inline: var(--ds-gutter);
}
.ds-main { margin-block-start: 0; }
.ds-content { padding-block: clamp(32px, 6vw, 72px); }

/* Header */
.ds-header {
  position: sticky;
  top: 0;
  z-index: 50;
  margin-block-start: 0;
  background: #FFFFFF;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border-bottom: 1px solid var(--wp--preset--color--border);
}
.admin-bar .ds-header { top: 32px; }
@media (max-width: 782px) { .admin-bar .ds-header { top: 46px; } }
.ds-header__inner { padding-block: 12px; gap: 16px; }
.ds-brand { margin: 0; font-size: 1.25rem; font-weight: 800; letter-spacing: -0.02em; line-height: 1; }
.ds-brand a { color: var(--wp--preset--color--ink); text-decoration: none; }
.ds-nav { gap: 4px; font-size: 0.95rem; }
.ds-nav .wp-block-navigation-item__content {
  padding: 8px 12px;
  border-radius: 4px;
  color: var(--wp--preset--color--ink);
  font-weight: 500;
  text-decoration: none;
  transition: none;
}
.ds-nav .wp-block-navigation-item__content:hover,
.ds-nav .current-menu-item > .wp-block-navigation-item__content {
  background: var(--wp--preset--color--soft);
  color: var(--wp--preset--color--mint-dark);
}
.ds-nav .wp-block-navigation__responsive-container-open {
  color: var(--wp--preset--color--ink);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 4px;
  padding: 6px;
  background: var(--wp--preset--color--surface);
}
.ds-nav .wp-block-navigation__responsive-container.is-menu-open { padding: 24px var(--ds-gutter); }
.ds-nav .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container { gap: 4px; }

/* Search field */
.wp-block-search .wp-block-search__inside-wrapper {
  background: var(--wp--preset--color--surface);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 4px;
  padding: 4px;
}
.wp-block-search .wp-block-search__input {
  border: 0;
  background: transparent;
  padding: 8px 14px;
  font: inherit;
  color: var(--wp--preset--color--ink);
  min-width: 0;
}
.wp-block-search .wp-block-search__input::placeholder { color: var(--wp--preset--color--muted); opacity: 1; }
.wp-block-search .wp-block-search__input:focus-visible { outline: none; }
.wp-block-search .wp-block-search__inside-wrapper:focus-within {
  border-color: var(--wp--preset--color--mint-dark);
  outline: 3px solid rgba(52, 211, 153, 0.55);
  outline-offset: 1px;
}
.wp-block-search .wp-block-search__button {
  margin: 0;
  border: 0;
  border-radius: 4px;
  background: var(--wp--preset--color--mint);
  color: var(--wp--preset--color--ink);
  font-weight: 700;
  padding: 8px 18px;
}
.wp-block-search .wp-block-search__button:hover { background: var(--wp--preset--color--mint-dark); color: #fff; }
.ds-nav .ds-search { min-width: 200px; }

/* Hero */
.ds-hero {
  padding-block: clamp(36px, 7vw, 88px);
  background: var(--wp--preset--color--bg);
}
.ds-hero__grid { gap: clamp(24px, 5vw, 64px); margin-block: 0; align-items: center; }
.ds-hero__title {
  margin: 0 0 1rem;
  font-size: clamp(2.25rem, 1.2rem + 4.2vw, 3.75rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.025em;
}
.ds-accent { color: var(--wp--preset--color--mint-dark); }
.ds-hero__lead {
  max-width: 34em;
  margin: 0 0 1.75rem;
  color: var(--wp--preset--color--muted);
  font-size: clamp(1.0625rem, 1rem + 0.4vw, 1.25rem);
  line-height: 1.6;
}
.ds-hero__actions { gap: 12px; }
.ds-btn-primary .wp-block-button__link {
  background: var(--wp--preset--color--mint);
  color: var(--wp--preset--color--ink);
  border: 1px solid transparent;
  border-radius: 4px;
  padding: 0.85rem 1.5rem;
  font-weight: 700;
  transition: none;
}
.ds-btn-primary .wp-block-button__link:hover { background: var(--wp--preset--color--mint-dark); color: #fff; }
.ds-btn-secondary .wp-block-button__link {
  background: var(--wp--preset--color--surface);
  color: var(--wp--preset--color--ink);
  border: 1px solid var(--wp--preset--color--border);
  border-radius: 4px;
  padding: 0.85rem 1.5rem;
  font-weight: 600;
  transition: none;
}
.ds-btn-secondary .wp-block-button__link:hover { border-color: var(--wp--preset--color--mint-dark); color: var(--wp--preset--color--mint-dark); }
.ds-hero .wp-block-search { margin-top: 1.75rem; max-width: 30rem; }

.ds-hero__panel {
  background: #FFFFFF;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border: 1px solid var(--wp--preset--color--border);
  border-radius: var(--ds-radius);
  padding: clamp(12px, 3vw, 24px);
}
.ds-hero__art { display: block; width: 100%; height: auto; max-width: 440px; margin-inline: auto; }
.art-trace { stroke: var(--wp--preset--color--mint-dark); opacity: 0.35; }
.art-node { fill: var(--wp--preset--color--mint); }
.art-phone { fill: var(--wp--preset--color--surface); stroke: var(--wp--preset--color--mint-dark); }
.art-speaker { fill: var(--wp--preset--color--border); }
.art-tile { fill: var(--wp--preset--color--mint); }
.art-shelf { fill: var(--wp--preset--color--border); }

@media (max-width: 781px) {
  .ds-hero__art { max-width: 280px; }
  .ds-hero .wp-block-search { max-width: none; }
}

/* Footer */
.ds-footer { margin-block-start: 0; border-top: 1px solid var(--wp--preset--color--border); background: var(--wp--preset--color--surface); }
.ds-footer__inner { padding-block: 28px; gap: 12px 24px; }
.ds-footer__note { margin: 0; color: var(--wp--preset--color--muted); font-size: 0.95rem; }

/* Posts and lists */
.wp-block-post-template { padding: 0; list-style: none; }
.wp-block-post-title a { color: var(--wp--preset--color--ink); text-decoration: none; }
.wp-block-post-title a:hover { color: var(--wp--preset--color--mint-dark); }
.wp-block-post-date { color: var(--wp--preset--color--muted); font-size: 0.9rem; }

/* Mint Modern homepage extensions */
.ds-eyebrow,.ds-topic-kicker{font-size:.76rem;font-weight:800;letter-spacing:.12em;text-transform: none;color:var(--wp--preset--color--mint-dark);margin:0 0 12px}
.ds-section{padding-block:clamp(42px,7vw,82px)}
.ds-section h2{font-size:clamp(1.8rem,1.3rem + 2vw,2.5rem);letter-spacing:-.025em;margin:0 0 10px}
.ds-section__intro{max-width:42rem;color:var(--wp--preset--color--muted);line-height:1.65;margin:0 0 28px}
.ds-topic-grid{gap:18px;margin-block:18px}
.ds-topic-card{height:100%;box-sizing:border-box;padding:clamp(20px,3vw,28px);border:1px solid var(--wp--preset--color--border);border-radius:6px;background:#FFFFFF;transition: none;}
.ds-topic-card h3{font-size:1.2rem;line-height:1.3;margin:0 0 10px}
.ds-topic-card h3 a{color:var(--wp--preset--color--ink);text-decoration:none}
.ds-topic-card h3 a:hover{color:var(--wp--preset--color--mint-dark)}
.ds-topic-card p:last-child{color:var(--wp--preset--color--muted);line-height:1.65;margin-bottom:0}
.ds-footer__nav{font-size:.9rem}.ds-footer__nav a{color:var(--wp--preset--color--ink);text-decoration:none}.ds-footer__nav a:hover{color:var(--wp--preset--color--mint-dark)}
@media(max-width:781px){.ds-topic-grid{gap:12px}.ds-topic-card{height:100%;box-sizing:border-box;padding:clamp(20px,3vw,28px);border:1px solid var(--wp--preset--color--border);border-radius:6px;background:#FFFFFF;transition: none;}.ds-header__inner{gap:12px}}
