/* Finishing pass: preserve approved architecture, palette and footer geometry.
   No font files, clinical copy or section order are changed here. */
:root {
  --aspire-navy: #132E4D;
  --aspire-ivory: #F7F3EC;
  --aspire-petrol: #123F40;
  --aspire-cognac: #B45D52;
  --aspire-section-space: clamp(3rem, 5vw, 4.5rem);
  --aspire-section-heading: clamp(2rem, 1.3rem + 1.4vw, 2.5rem);
  --aspire-close-heading: clamp(2.125rem, 1.3rem + 2.2vw, 3.25rem);
}

/* Equal editorial roles share a scale. The founder name, peer-quote label,
   homepage statements and closing invitations retain their distinct roles. */
html[data-color-study="stone"] body main.interior {
  --support-heading: var(--aspire-section-heading);
}
html[data-color-study="stone"] body main.interior > .section:not(.patient-intro) {
  padding-block: var(--aspire-section-space);
}
html[data-color-study="stone"] body main.interior :is(h1, h2) {
  text-wrap: balance;
}
html[data-color-study="stone"] body main.interior .page-foot h2 {
  font-size: var(--aspire-close-heading)!important;
}
html[data-color-study="stone"] body main.interior .page-foot .actions {
  gap: 24px;
}
html[data-color-study="stone"] body main.interior :is(.page-head-grid, .two-cols, .coverage-layout) > * {
  min-width: 0;
}

/* A moving photographic gallery, not raised UI cards. Existing slow,
   opposite-direction motion and five original destinations are retained. */
html:root:root:root body #pathway .quiet-track > .explore-card {
  border: 0!important;
  border-radius: 2px!important;
  box-shadow: none!important;
  isolation: isolate;
}
html:root:root:root body #pathway .explore-card img {
  transition: transform 800ms cubic-bezier(.2,.65,.3,1)!important;
  transform: scale(1);
}
html:root:root:root body #pathway .explore-card .card-copy {
  height: auto;
  min-height: 82px;
  padding: 28px 20px 18px;
}
html:root:root:root body #pathway .explore-card .card-arrow {
  transition: transform 350ms ease;
}
html:root:root:root body #pathway .explore-card:focus-visible {
  outline: 2px solid var(--aspire-cognac)!important;
  outline-offset: -4px;
}
html:root:root:root body #pathway .quiet-window {
  touch-action: pan-x pan-y;
}
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  html:root:root:root body #pathway .explore-card:hover img {
    transform: scale(1.025)!important;
  }
  html:root:root:root body #pathway .explore-card:hover .card-arrow {
    transform: translate(2px, -2px);
  }
}

@media (max-width: 760px) {
  html[data-color-study="stone"] body main.interior .page-foot {
    padding-block: 48px;
  }
  html[data-color-study="stone"] body main.interior .page-foot :is(.button, .text-link) {
    max-width: 100%;
    white-space: normal;
    min-height: 44px;
  }
  html[data-color-study="stone"] body main.interior :is(.voice-card, .patient-review, .location-card) {
    height: auto;
  }
}
@media (max-width: 700px) {
  html:root:root:root body #pathway .quiet-window {
    scroll-snap-type: x proximity;
    scroll-padding-inline: 0;
  }
  html:root:root:root body #pathway .explore-card {
    scroll-snap-align: start;
  }
  html:root:root:root body #main #approach .method-rows h3 {
    font-size: 23px!important;
    line-height: 1.25!important;
  }
  html:root:root:root body #main #approach .method-rows .eyebrow {
    margin-bottom: 16px;
  }
  html:root:root:root body #main #monitoring .monitoring-layout {
    gap: 28px;
  }
  html:root:root:root body #main #monitoring .monitoring-slogan {
    max-width: 34ch;
    line-height: 1.65;
  }
}
@media (max-width: 360px) {
  /* Four full-width editorial steps are clearer than eight-word columns. */
  html:root:root:root body #main #approach .method-rows {
    grid-template-columns: minmax(0, 1fr)!important;
    gap: 24px;
  }
  html:root:root:root body #main #approach .method-rows article {
    display: block;
  }
  html:root:root:root body #main #approach .method-rows h3 {
    margin-block: 14px 12px!important;
  }
}
@media (prefers-reduced-motion: reduce) {
  html:root:root:root body #pathway :is(.explore-card, .explore-card img, .card-arrow) {
    transition: none!important;
    transform: none!important;
  }
  html:root:root:root body #pathway .quiet-window {
    scroll-behavior: auto;
  }
}
