:root {
  --ink: #14253c;
  --navy: #0b1730;
  --teal: #06666a;
  --teal-light: #cde9e7;
  --plum: #603b75;
  --gold: #c89b49;
  --paper: #fbfaf7;
  --white: #ffffff;
  --muted: #566170;
  --line: #dfe4e5;
  --max: 1160px;
}

* { box-sizing: border-box; }
html { scroll-behavior: auto; scroll-padding-top: 7rem; scroll-padding-bottom: 7rem; }
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size: 1.0625rem;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; }
img { display: block; max-width: 100%; }
.skip-link { position: absolute; left: -9999px; top: 0; }
.skip-link:focus { left: 1rem; top: 1rem; z-index: 100; padding: .75rem 1rem; background: white; }

.site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  border-bottom: 1px solid rgba(20,37,60,.1);
  background: rgba(251,250,247,.94);
  backdrop-filter: blur(12px);
}
.nav-wrap {
  width: min(calc(100% - 2rem), var(--max));
  min-height: 76px;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
}
.brand {
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: .7rem;
  font-family: Georgia, "Times New Roman", serif;
  font-size: 1.08rem;
  letter-spacing: .01em;
  font-weight: 700;
}
.brand-mark {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  flex: 0 0 auto;
  object-fit: contain;
}
.nav-links { display: flex; align-items: center; gap: 1.7rem; }
.nav-links a { text-decoration: none; font-size: .92rem; font-weight: 650; }
.nav-links a:hover, .nav-links a[aria-current="page"] { color: var(--teal); }
.nav-contact { border-bottom: 2px solid var(--gold); padding-bottom: .15rem; }
.menu-button { display: none; border: 0; background: transparent; font: inherit; font-weight: 700; color: var(--ink); }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.home-motion-stage {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background: var(--paper);
}
.home-motion-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  pointer-events: none;
  background-color: var(--paper);
}
.home-motion-stage .hero { position: relative; z-index: 1; }
html[data-motion="full"] .home-motion-stage::before {
  animation: ambient-color-wash 44s ease-in-out infinite;
}
html[data-motion="some"] .home-motion-stage::before {
  animation: gentle-color-wash 96s ease-in-out infinite;
}
html.motion-paused .home-motion-stage::before { animation-play-state: paused; }

@keyframes ambient-color-wash {
  0%, 100% { background-color: #fbfaf7; }
  22% { background-color: #e3edf9; }
  47% { background-color: #ddf0ec; }
  72% { background-color: #eae3f1; }
  88% { background-color: #f6ecd3; }
}
@keyframes gentle-color-wash {
  0%, 100% { background-color: #fbfaf7; }
  30% { background-color: #f3f7fb; }
  58% { background-color: #f0f8f6; }
  82% { background-color: #f7f3f8; }
}

.sensory-dialog {
  width: min(calc(100% - 2rem), 680px);
  max-height: min(90vh, 760px);
  padding: 0;
  border: 0;
  color: var(--ink);
  background: transparent;
}
.sensory-dialog::backdrop {
  background: rgba(7,17,38,.58);
  backdrop-filter: blur(5px);
}
.sensory-panel {
  max-height: min(90vh, 760px);
  overflow-y: auto;
  padding: clamp(1.6rem, 5vw, 3.25rem);
  border: 1px solid rgba(20,37,60,.12);
  background: var(--paper);
  box-shadow: 0 32px 90px rgba(7,17,38,.32);
}
.sensory-eyebrow {
  margin: 0 0 .65rem;
  color: var(--teal);
  font-size: .74rem;
  font-weight: 850;
  letter-spacing: .14em;
  text-transform: uppercase;
}
.sensory-panel h2 {
  max-width: 560px;
  margin: 0 0 1rem;
  font-size: clamp(2rem, 5vw, 3.2rem);
  font-weight: 500;
}
.sensory-panel > p:not(.sensory-eyebrow) { max-width: 590px; }
.sensory-system-note {
  padding: .8rem 1rem;
  border-left: 3px solid var(--teal);
  background: var(--teal-light);
  font-size: .9rem;
}
.sensory-options {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
  margin: 1.8rem 0 1.25rem;
}
.sensory-options button {
  min-height: 145px;
  padding: 1.1rem;
  border: 1px solid #bdc7cf;
  background: white;
  color: var(--ink);
  text-align: left;
  cursor: pointer;
}
.sensory-options button:hover,
.sensory-options button:focus-visible,
.sensory-options button[aria-pressed="true"] {
  border-color: var(--teal);
  outline: 3px solid rgba(8,127,131,.18);
  outline-offset: 2px;
}
.sensory-options button[aria-pressed="true"] { background: #edf7f6; }
.sensory-options strong {
  display: block;
  margin-bottom: .45rem;
  font: 500 1.22rem/1.15 Georgia, "Times New Roman", serif;
}
.sensory-options span {
  display: block;
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.45;
}
.sensory-reassurance { margin: 0; color: var(--muted); font-size: .9rem; }

.site-motion-controls {
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  z-index: 50;
  display: flex;
  gap: .35rem;
  padding: .35rem;
  border: 1px solid rgba(20,37,60,.16);
  background: rgba(251,250,247,.96);
  box-shadow: 0 10px 30px rgba(7,17,38,.15);
  backdrop-filter: blur(10px);
}
.site-motion-controls[hidden] { display: none; }
.site-motion-controls button {
  min-height: 42px;
  padding: .55rem .75rem;
  border: 0;
  background: transparent;
  color: var(--ink);
  font: inherit;
  font-size: .8rem;
  font-weight: 750;
  cursor: pointer;
}
.site-motion-controls button:hover,
.site-motion-controls button:focus-visible {
  background: var(--teal-light);
  outline: 2px solid var(--teal);
  outline-offset: -2px;
}

body.inner-page-motion {
  position: relative;
  overflow-x: clip;
}
body.inner-page-motion > main,
body.inner-page-motion > footer {
  position: relative;
  z-index: 1;
}
.inner-page-rings {
  position: absolute;
  top: 76px;
  right: 0;
  z-index: 0;
  width: min(58vw, 820px);
  height: min(64vw, 760px);
  min-height: 520px;
  overflow: hidden;
  pointer-events: none;
  isolation: isolate;
}
.inner-page-rings::before {
  content: "";
  position: absolute;
  inset: -12% -24% 16% 20%;
  z-index: -1;
  border-radius: 50%;
  background: radial-gradient(circle at 74% 30%, rgba(205,233,231,.34), rgba(234,227,241,.13) 38%, transparent 68%);
  filter: blur(18px);
  opacity: .7;
}
.inner-page-ring {
  position: absolute;
  top: -8%;
  right: -34%;
  aspect-ratio: 1;
  border: 1px solid;
  border-radius: 50%;
  transform-origin: 66% 34%;
  opacity: .72;
  will-change: transform, opacity;
}
.inner-page-ring--outer {
  width: 104%;
  border-color: rgba(8,127,131,.34);
}
.inner-page-ring--middle {
  top: 2%;
  right: -25%;
  width: 82%;
  border-color: rgba(96,59,117,.28);
}
.inner-page-ring--inner {
  top: 13%;
  right: -14%;
  width: 60%;
  border-color: rgba(200,155,73,.38);
}
html[data-motion="full"] .inner-page-rings::before {
  animation: inner-page-halo 24s ease-in-out infinite alternate;
}
html[data-motion="full"] .inner-page-ring--outer {
  animation: inner-page-ring-breathe 20s ease-in-out infinite alternate;
}
html[data-motion="full"] .inner-page-ring--middle {
  animation: inner-page-ring-breathe 24s ease-in-out -8s infinite alternate-reverse;
}
html[data-motion="full"] .inner-page-ring--inner {
  animation: inner-page-ring-breathe 18s ease-in-out -12s infinite alternate;
}
html[data-motion="some"] .inner-page-rings::before {
  animation: inner-page-halo-gentle 40s ease-in-out infinite alternate;
}
html[data-motion="some"] .inner-page-ring--outer {
  animation: inner-page-ring-breathe-gentle 36s ease-in-out infinite alternate;
}
html[data-motion="some"] .inner-page-ring--middle {
  animation: inner-page-ring-breathe-gentle 44s ease-in-out -14s infinite alternate-reverse;
}
html[data-motion="some"] .inner-page-ring--inner { animation: none; }
html.motion-paused .inner-page-rings::before,
html.motion-paused .inner-page-ring { animation-play-state: paused; }

@keyframes inner-page-ring-breathe {
  from { transform: translate3d(1.5%, -1%, 0) scale(.96); opacity: .52; }
  to { transform: translate3d(-2.5%, 3%, 0) scale(1.08); opacity: .92; }
}
@keyframes inner-page-halo {
  from { transform: translate3d(4%, -2%, 0) scale(.94); opacity: .58; }
  to { transform: translate3d(-3%, 4%, 0) scale(1.08); opacity: .92; }
}
@keyframes inner-page-ring-breathe-gentle {
  from { transform: translate3d(.5%, -.5%, 0) scale(.99); opacity: .62; }
  to { transform: translate3d(-1%, 1.5%, 0) scale(1.035); opacity: .8; }
}
@keyframes inner-page-halo-gentle {
  from { transform: translate3d(1%, -1%, 0) scale(.98); opacity: .62; }
  to { transform: translate3d(-1.5%, 2%, 0) scale(1.04); opacity: .78; }
}

.shell { width: min(calc(100% - 2rem), var(--max)); margin: auto; }
.hero {
  min-height: 650px;
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(330px, .88fr);
  align-items: center;
  gap: clamp(3rem, 7vw, 7rem);
  padding: 5.5rem 0 6.5rem;
}
.eyebrow {
  margin: 0 0 1.2rem;
  color: var(--teal);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .16em;
  text-transform: uppercase;
}
h1, h2, h3 { font-family: Georgia, "Times New Roman", serif; line-height: 1.08; letter-spacing: -.025em; }
h1 { max-width: 800px; margin: 0; font-size: clamp(3.25rem, 7vw, 6.7rem); font-weight: 500; }
h1 em { color: var(--teal); font-style: italic; }
.hero-copy { max-width: 640px; margin: 1.7rem 0 0; font-size: clamp(1.08rem, 1.5vw, 1.28rem); color: var(--muted); }
.actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: .7rem 1.1rem;
  border: 1px solid var(--ink);
  text-decoration: none;
  font-size: .9rem;
  font-weight: 750;
}
.button-primary { background: var(--ink); color: white; }
.button-primary:hover { background: var(--teal); border-color: var(--teal); }
.button-secondary:hover { background: white; }

.hero-orbit { position: relative; aspect-ratio: 1; display: grid; place-items: center; }
.orbit-ring { position: absolute; border: 1px solid rgba(8,127,131,.27); border-radius: 50%; }
.ring-one { inset: 3%; }
.ring-two { inset: 15%; border-color: rgba(96,59,117,.27); }
.ring-three { inset: 28%; border-color: rgba(200,155,73,.45); }
.orbit-center {
  position: relative;
  z-index: 2;
  width: 44%;
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  padding: 1rem;
  text-align: center;
  color: white;
  background: var(--navy);
  box-shadow: 0 28px 80px rgba(11,23,48,.2);
  font-family: Georgia, serif;
  font-size: clamp(1.25rem, 2.5vw, 2rem);
  line-height: 1.08;
}
.orbit-label { position: absolute; z-index: 3; padding: .35rem .65rem; background: var(--paper); font-size: .75rem; font-weight: 800; letter-spacing: .04em; }
.label-one { top: 5%; left: 26%; color: var(--teal); }
.label-two { right: -2%; top: 43%; color: var(--plum); }
.label-three { left: -2%; bottom: 22%; color: #8c692a; }
.label-four { right: 17%; bottom: 4%; color: var(--teal); }

html[data-motion="full"] .orbit-ring {
  animation: orbit-breathe 8.5s cubic-bezier(.45, 0, .55, 1) infinite alternate;
  transform-origin: center;
  will-change: transform, opacity, border-color;
}
html[data-motion="full"] .ring-two { animation-delay: -2.5s; animation-duration: 11s; }
html[data-motion="full"] .ring-three { animation-delay: -6s; animation-duration: 13.5s; }
html[data-motion="full"] .orbit-center {
  animation: orbit-center-breathe 9s cubic-bezier(.45, 0, .55, 1) infinite alternate;
  transform-origin: center;
  will-change: transform, box-shadow;
}
html.motion-paused .orbit-ring,
html.motion-paused .orbit-center,
html.motion-paused .feature-art::before,
html.motion-paused .feature-art::after { animation-play-state: paused !important; }

@keyframes orbit-breathe {
  from {
    transform: scale(.88);
    opacity: .34;
    border-color: rgba(8,127,131,.14);
  }
  to {
    transform: scale(1.13);
    opacity: 1;
    border-color: rgba(8,127,131,.70);
  }
}
@keyframes orbit-center-breathe {
  from {
    transform: scale(.97);
    box-shadow: 0 0 0 0 rgba(8,127,131,0);
  }
  to {
    transform: scale(1.045);
    box-shadow: 0 0 0 18px rgba(8,127,131,.08);
  }
}

.band { background: var(--navy); color: white; }
.manifesto { padding: clamp(4.5rem, 9vw, 8rem) 0; display: grid; grid-template-columns: .7fr 1.3fr; gap: 5rem; align-items: start; }
.manifesto .eyebrow { color: #7ed2cf; }
.manifesto h2 { margin: 0; font-size: clamp(2.5rem, 4.5vw, 4.7rem); font-weight: 500; }
.manifesto-copy { max-width: 650px; font-size: 1.12rem; color: #d8e0e8; }
.manifesto-copy p:first-child { margin-top: 0; }
.gold-rule { width: 72px; height: 3px; margin-top: 2rem; background: var(--gold); }

.section { padding: clamp(4.5rem, 9vw, 8rem) 0; }
.section-heading { max-width: 800px; margin-bottom: 3.2rem; }
.section-heading h2 { margin: 0; font-size: clamp(2.4rem, 4.5vw, 4.5rem); font-weight: 500; }
.section-heading p { max-width: 670px; color: var(--muted); }
.lens-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.lens-card { min-height: 250px; padding: 2rem 2rem 2rem 0; border-bottom: 1px solid var(--line); }
.lens-card:nth-child(odd) { border-right: 1px solid var(--line); }
.lens-card:nth-child(even) { padding-left: 2rem; }
.lens-number { display: block; margin-bottom: 2.5rem; color: var(--teal); font-size: .76rem; font-weight: 800; letter-spacing: .12em; }
.lens-card h3 { margin: 0 0 .8rem; font-size: 1.7rem; font-weight: 500; }
.lens-card p { margin: 0; color: var(--muted); }
.practice-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; margin-bottom: 1.5rem; }
.practice-card { min-height: 300px; padding: 2rem; border: 1px solid var(--line); background: white; }
.practice-card h3 { margin: 0 0 .8rem; font-size: 1.65rem; font-weight: 500; }
.practice-card p { margin: 0; color: var(--muted); }

@media (hover: hover) and (pointer: fine) {
  html[data-motion="full"]:not(.motion-paused) .practice-card,
  html[data-motion="some"]:not(.motion-paused) .practice-card {
    transition: transform 360ms cubic-bezier(.2,.7,.2,1), box-shadow 360ms ease, border-color 360ms ease;
    transform-origin: center;
  }
  html[data-motion="full"]:not(.motion-paused) .practice-card:hover {
    z-index: 2;
    transform: translateY(-7px) scale(1.025);
    border-color: rgba(8,127,131,.42);
    box-shadow: 0 20px 45px rgba(11,23,48,.13);
  }
  html[data-motion="some"]:not(.motion-paused) .practice-card:hover {
    z-index: 2;
    transform: translateY(-3px) scale(1.012);
    border-color: rgba(8,127,131,.32);
    box-shadow: 0 12px 28px rgba(11,23,48,.09);
  }
}

.feature { display: grid; grid-template-columns: .8fr 1.2fr; min-height: 430px; background: var(--teal-light); }
.feature-art { min-height: 360px; position: relative; overflow: hidden; background: linear-gradient(145deg, var(--plum), var(--navy)); }
.feature-art::before, .feature-art::after { content: ""; position: absolute; border: 1px solid rgba(255,255,255,.3); border-radius: 50%; }
.feature-art::before { width: 360px; height: 360px; top: -110px; left: -80px; }
.feature-art::after { width: 290px; height: 290px; right: -100px; bottom: -80px; }
.feature-art-photo { display: block; background: var(--navy); }
.feature-art-photo::before, .feature-art-photo::after { display: none; }
.feature-art-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 15%;
  transform: scale(1.3);
  transform-origin: center 15%;
}
html[data-motion="full"] .feature-art::before,
html[data-motion="full"] .feature-art::after {
  transform-origin: center;
  will-change: transform, opacity, border-color;
  animation: context-ring-breathe 14s cubic-bezier(.45, 0, .55, 1) infinite alternate;
}
html[data-motion="full"] .feature-art::after {
  animation-delay: -7s;
  animation-duration: 17s;
  animation-direction: alternate-reverse;
}
@keyframes context-ring-breathe {
  from {
    transform: scale(.86);
    opacity: .32;
    border-color: rgba(255,255,255,.22);
  }
  to {
    transform: scale(1.14);
    opacity: .82;
    border-color: rgba(126,210,207,.70);
  }
}
.feature-word { position: absolute; inset: 0; display: grid; place-items: center; padding: 2rem; color: white; text-align: center; font: italic 500 clamp(2rem, 4vw, 4.2rem)/1 Georgia, serif; }
.feature-copy { padding: clamp(2.5rem, 6vw, 5rem); align-self: center; }
.meta { color: var(--teal); text-transform: uppercase; letter-spacing: .11em; font-size: .73rem; font-weight: 850; }
.feature h3, .feature h2 { margin: .8rem 0 1rem; font-size: clamp(2rem, 3.5vw, 3.4rem); font-weight: 500; }
.feature p { color: #3f5260; }
.text-link { display: inline-block; margin-top: .5rem; color: var(--ink); text-decoration-thickness: 2px; text-underline-offset: .28rem; font-weight: 750; }

html[data-motion="full"]:not(.motion-paused) :where(.text-link, .article-body a, .prose > p a, .form-guidance a, .schedule-panel a:not(.button), .footer-links a),
html[data-motion="some"]:not(.motion-paused) :where(.text-link, .article-body a, .prose > p a, .form-guidance a, .schedule-panel a:not(.button), .footer-links a) {
  background-image: linear-gradient(currentColor, currentColor);
  background-position: left calc(100% - .02em);
  background-repeat: no-repeat;
  background-size: 28% 2px;
  text-decoration-color: transparent;
  transition: background-size 420ms cubic-bezier(.2,.7,.2,1);
}
html[data-motion="full"]:not(.motion-paused) :where(.text-link, .article-body a, .prose > p a, .form-guidance a, .schedule-panel a:not(.button), .footer-links a):is(:hover, :focus-visible),
html[data-motion="some"]:not(.motion-paused) :where(.text-link, .article-body a, .prose > p a, .form-guidance a, .schedule-panel a:not(.button), .footer-links a):is(:hover, :focus-visible) {
  background-size: 100% 2px;
}

.about-strip { display: grid; grid-template-columns: .65fr 1.35fr; gap: 5rem; align-items: start; }
.monogram {
  width: min(100%, 330px);
  aspect-ratio: 4/5;
  display: grid;
  place-items: center;
  background: linear-gradient(160deg, var(--teal), var(--navy) 65%, var(--plum));
  color: white;
  font: 500 clamp(4rem, 8vw, 7rem)/1 Georgia, serif;
  box-shadow: 18px 18px 0 var(--gold);
}
.founder-portrait {
  display: block;
  width: min(100%, 330px);
  aspect-ratio: 4/5;
  margin: 0 0 18px;
  background: var(--teal-light);
  box-shadow: 18px 18px 0 var(--gold);
  overflow: hidden;
}
.founder-portrait img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.founder-note-callout { margin: 2.25rem 0 0; padding: 1.5rem 1.75rem; background: var(--teal-light); }
.founder-note-callout .meta { margin: 0 0 .4rem; color: var(--teal); }
.founder-about-link { display: inline-block; margin-top: .1rem; }
.about-strip h2 { margin: 0 0 1.3rem; font-size: clamp(2.4rem, 4.5vw, 4.5rem); font-weight: 500; }
.about-strip p { max-width: 700px; color: var(--muted); }

.pathways { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.3rem; padding-bottom: clamp(4.5rem, 9vw, 8rem); }
.pathway { display: flex; flex-direction: column; min-height: 100%; padding: clamp(2rem, 5vw, 3.8rem); border: 1px solid var(--line); background: white; }
.pathway-individual { background: var(--teal-light); }
.pathway-wide { grid-column: 1 / -1; }
.pathway-wide .offering-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.pathway-employer { grid-column: 1 / -1; background: var(--teal-light); }
.pathway-collaborator { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(280px, .8fr) auto; gap: clamp(2rem, 5vw, 4rem); align-items: center; background: #f0eee8; }
.pathway-collaborator h2 { max-width: 540px; }
.pathway-collaborator .pathway-intro { max-width: 650px; }
.collaborator-fit { padding-left: 2rem; border-left: 1px solid #cfc9bd; }
.collaborator-fit h3 { margin: 0 0 .6rem; font-size: 1.35rem; }
.collaborator-fit p { margin: 0; color: var(--muted); }
.pathway-collaborator .button { align-self: center; margin-top: 0; white-space: nowrap; }
.pathway h2 { margin: .4rem 0 1rem; font-size: clamp(2.3rem, 4vw, 3.8rem); font-weight: 500; }
.pathway-intro { color: var(--muted); font-size: 1.08rem; }
.offering-list { display: grid; gap: 1.25rem; margin: 2rem 0 2.5rem; }
.offering { padding-top: 1.2rem; border-top: 1px solid var(--line); }
.offering h3 { margin: 0 0 .35rem; font-size: 1.2rem; }
.offering p { margin: 0; color: var(--muted); }
.pathway .button { align-self: flex-start; margin-top: auto; }
.sample-gate { margin: .5rem 0 2rem; padding: clamp(1.4rem, 3vw, 2rem); border: 1px solid rgba(8,127,131,.3); background: rgba(255,255,255,.72); }
.sample-gate h3 { margin: 0 0 .75rem; font-size: clamp(1.65rem, 2.7vw, 2.25rem); font-weight: 500; }
.sample-gate > p:not(.eyebrow) { margin: 0; color: var(--muted); }
.sample-gate .sample-note { margin-top: .8rem !important; font-size: .92rem; font-style: italic; }
.sample-form { display: grid; gap: 1rem; margin-top: 1.5rem; }
.sample-fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.consent-row { display: grid; grid-template-columns: 1.1rem 1fr; gap: .7rem; align-items: start; color: #3f5260; font-size: .88rem; line-height: 1.5; cursor: pointer; }
.consent-row input { width: 1.1rem; height: 1.1rem; margin: .18rem 0 0; accent-color: var(--teal); }
.sample-form .form-guidance a { color: var(--teal); text-underline-offset: .18rem; }
.sample-form .button { justify-self: start; margin-top: 0; cursor: pointer; }
.sample-form .button:disabled { opacity: .65; cursor: wait; }
.sample-download { padding-top: 1rem; border-top: 1px solid rgba(8,127,131,.25); outline: none; }
.sample-download p { margin: 0 0 .75rem; color: var(--teal); font-weight: 750; }
.sample-download .button-secondary { border-color: var(--teal); background: white; color: var(--ink); }
.sample-download .button-secondary:hover { background: var(--teal); color: white; }
.resource-hero { padding: clamp(4rem, 8vw, 7.5rem) 0; background: linear-gradient(145deg, #eef8f7 0%, var(--paper) 58%, #f1edf3 100%); }
.resource-hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(340px, .72fr); gap: clamp(3rem, 7vw, 7rem); align-items: center; }
.resource-copy h1 { max-width: 760px; font-size: clamp(3.2rem, 6vw, 6rem); }
.resource-question { max-width: 720px; margin: 1.6rem 0; color: #3f5260; font-size: clamp(1.1rem, 1.8vw, 1.3rem); }
.resource-copy blockquote { max-width: 650px; margin: 2rem 0; padding: 1.1rem 0 1.1rem 1.4rem; border-left: 4px solid var(--gold); color: var(--teal); font: 500 clamp(1.55rem, 2.8vw, 2.25rem)/1.28 Georgia, serif; }
.resource-copy > p:not(.eyebrow):not(.resource-question):not(.resource-disclosure) { max-width: 680px; color: var(--muted); }
.resource-disclosure { margin-top: 1.5rem; color: var(--muted); font-size: .86rem; font-weight: 650; }
.resource-form-card { padding: clamp(2rem, 4vw, 3.2rem); border-top: 5px solid var(--gold); background: white; box-shadow: 0 28px 70px rgba(20,37,60,.12); }
.resource-form-card h2 { margin: 0 0 .8rem; font-size: clamp(2rem, 3.5vw, 3.1rem); font-weight: 500; }
.resource-form-card > p:not(.eyebrow) { margin: 0; color: var(--muted); }
.resource-preview { padding: clamp(4.5rem, 9vw, 8rem) 0; }
.resource-preview-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-top: 1px solid var(--line); }
.resource-preview-grid article { padding: 1.8rem 1.5rem 1.8rem 0; border-bottom: 1px solid var(--line); }
.resource-preview-grid article + article { padding-left: 1.5rem; border-left: 1px solid var(--line); }
.resource-preview-grid span { color: var(--teal); font-size: .75rem; font-weight: 800; letter-spacing: .12em; }
.resource-preview-grid h3 { margin: 2rem 0 .7rem; font-size: 1.45rem; font-weight: 500; }
.resource-preview-grid p { margin: 0; color: var(--muted); font-size: .94rem; }
.coaching-note { margin: 1.3rem 0 0; color: var(--muted); font-size: .86rem; }
.invitation { text-align: center; padding: clamp(4rem, 8vw, 7rem) 0; }
.invitation h2 { max-width: 820px; margin: 0 auto 1rem; font-size: clamp(2.5rem, 5vw, 4.8rem); font-weight: 500; }
.invitation p { max-width: 680px; margin: 0 auto; color: var(--muted); font-size: 1.12rem; }
.engagement { padding: 1rem 0 clamp(5rem, 9vw, 8rem); scroll-margin-top: 100px; }
.engagement-heading { max-width: 760px; margin-bottom: 2.5rem; }
.engagement-heading h2 { margin: 0 0 1rem; font-size: clamp(2.4rem, 4.5vw, 4.5rem); font-weight: 500; }
.engagement-heading > p:last-child { color: var(--muted); font-size: 1.08rem; }
.contact-options { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(300px, .8fr); gap: 1.3rem; align-items: stretch; }
.inquiry-panel, .schedule-panel { padding: clamp(2rem, 5vw, 3.5rem); }
.inquiry-panel { border: 1px solid var(--line); background: white; }
.inquiry-panel h3, .schedule-panel h3 { margin: 0 0 .7rem; font-size: clamp(2rem, 3.5vw, 3rem); font-weight: 500; }
.inquiry-panel > p { margin-top: 0; color: var(--muted); }
.inquiry-form { display: grid; gap: 1.15rem; margin-top: 2rem; }
.form-row { display: grid; gap: .4rem; }
.form-row label { font-size: .9rem; font-weight: 750; }
.form-row label span { color: var(--muted); font-weight: 500; }
.form-row input, .form-row select, .form-row textarea { width: 100%; border: 1px solid #b8c0c7; border-radius: 0; background: var(--white); color: var(--ink); font: inherit; font-size: 1rem; }
.form-row input, .form-row select { min-height: 48px; padding: .65rem .8rem; }
.form-row textarea { min-height: 150px; padding: .75rem .8rem; resize: vertical; }
.form-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.form-row input:focus, .form-row select:focus, .form-row textarea:focus { outline: 3px solid rgba(8,127,131,.2); border-color: var(--teal); }
.form-guidance { margin: 0; color: var(--muted); font-size: .82rem; }
.inquiry-form .button { justify-self: start; border-radius: 0; cursor: pointer; }
.inquiry-form .button:disabled { opacity: .65; cursor: wait; }
.form-status { min-height: 1.5rem; margin: 0; color: var(--teal); font-weight: 700; }
.form-status.is-error { color: #9c2f2f; }
.schedule-panel { display: flex; flex-direction: column; justify-content: center; background: var(--navy); color: white; }
.schedule-panel .eyebrow { color: #7ed2cf; }
.schedule-panel > p:not(.eyebrow) { color: #cbd6df; }
.schedule-button { align-self: flex-start; margin-top: 1rem; border-color: white; background: white; color: var(--navy); }
.schedule-button:hover { border-color: var(--gold); background: var(--gold); }
.schedule-panel .contact-fallback { margin-top: 1.5rem; font-size: .86rem; }
.schedule-panel a:not(.button) { color: white; }
.keep-in-touch { padding: clamp(4rem, 8vw, 7rem) 0; }
.newsletter-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(320px, .8fr); gap: clamp(2rem, 7vw, 7rem); align-items: center; }
.newsletter-grid h2 { max-width: 680px; margin: 0 0 1rem; font-size: clamp(2.5rem, 4.5vw, 4.5rem); font-weight: 500; }
.newsletter-grid > div:first-child > p:last-child { max-width: 650px; color: #cbd6df; }
.keep-in-touch .eyebrow { color: #7ed2cf; }
.newsletter-form-wrap { min-height: 90px; padding: 1rem; background: white; color: var(--ink); }
.newsletter-form { display: grid; gap: .8rem; }
.newsletter-form > label { font-size: .82rem; font-weight: 800; }
.newsletter-fields { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: .65rem; }
.newsletter-fields input {
  min-width: 0;
  min-height: 48px;
  padding: .75rem .85rem;
  border: 1px solid #b8c0c5;
  border-radius: 0;
  background: white;
  color: var(--ink);
  font: inherit;
}
.newsletter-fields input:focus { outline: 3px solid rgba(8,127,131,.2); border-color: var(--teal); }
.newsletter-fields .button { border-radius: 0; cursor: pointer; }
.newsletter-fields .button:disabled { opacity: .65; cursor: wait; }
.newsletter-form .form-guidance { max-width: 620px; }
.newsletter-form .form-guidance a { color: var(--teal); }
.newsletter-form .form-status { min-height: 0; }

.people-hero { max-width: 980px; }
.people-founder-band { padding: 0; }
.people-founder { display: grid; grid-template-columns: minmax(280px, .75fr) minmax(0, 1.25fr); align-items: stretch; }
.people-founder-photo { min-height: 620px; margin: 0; }
.people-founder-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 22%; }
.people-founder-copy { align-self: center; padding: clamp(3rem, 8vw, 7rem); }
.people-founder-copy h2 { margin: 0 0 1.2rem; font-size: clamp(2.5rem, 5vw, 4.7rem); font-weight: 500; }
.people-founder-copy p:not(.eyebrow) { color: #d6dfe6; font-size: 1.06rem; }
.text-link-light { color: white; }
.collaborators-section { padding-bottom: clamp(4rem, 9vw, 8rem); }
.collaborators-heading { max-width: 880px; }
.collaborator-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
.collaborator-card { border: 1px solid var(--line); background: white; }
.collaborator-card > img { width: 100%; height: auto; aspect-ratio: 1 / 1; object-fit: cover; filter: saturate(.9); }
.collaborator-card > .blayre-photo { height: auto; aspect-ratio: 1 / 1; object-position: center; }
.collaborator-copy { padding: clamp(1.5rem, 3vw, 2.25rem); }
.collaborator-status { margin: 0 0 .8rem; color: var(--teal); font-size: .76rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.collaborator-copy h3 { margin: 0; font-size: 2rem; font-weight: 550; }
.collaborator-role { margin: .25rem 0 1.1rem; color: var(--muted); font-weight: 700; }
.collaborator-copy > p:last-child { margin-bottom: 0; color: #48545e; }
.people-collaboration-note { display: grid; grid-template-columns: minmax(240px, .7fr) minmax(0, 1.3fr); gap: clamp(2rem, 7vw, 7rem); padding-top: 0; padding-bottom: clamp(5rem, 10vw, 9rem); }
.people-collaboration-note h2 { margin: 0; font-size: clamp(2.3rem, 4vw, 4rem); font-weight: 500; }
.people-collaboration-note > div:last-child > p:first-child { margin-top: 0; }
.people-collaboration-note .button { margin-top: 1rem; }

.page-hero { padding: clamp(4rem, 9vw, 8rem) 0 4rem; max-width: 900px; }
.page-hero h1 { font-size: clamp(3.2rem, 6vw, 6rem); }
.page-hero .lede { max-width: 750px; margin-top: 1.5rem; font-size: 1.25rem; color: var(--muted); }
.article-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; padding-bottom: 7rem; }
.article-card { min-height: 360px; padding: 1.7rem; border: 1px solid var(--line); background: white; display: flex; flex-direction: column; }
.article-card.featured { grid-column: span 2; background: var(--navy); color: white; }
.article-card .meta { margin-bottom: auto; }
.article-card h2 { margin: 3rem 0 1rem; font-size: clamp(1.65rem, 3vw, 2.6rem); font-weight: 500; }
.article-card p { margin: 0 0 1.5rem; color: var(--muted); }
.article-card.featured p { color: #cbd6df; }
.article-card a { font-weight: 750; text-underline-offset: .25rem; }
.topic-card { background: #f0eee8; }

.featured-insight { margin-bottom: 6rem; padding: clamp(2rem, 5vw, 4rem); background: var(--navy); color: white; border: 1px solid var(--gold); }
.featured-insight-with-image { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); padding: 0; overflow: hidden; }
.featured-insight-with-image { background: white; color: var(--ink); border: 1px solid var(--gold); }
.featured-insight-with-image .featured-insight-image { min-height: 360px; background: var(--teal-light); }
.featured-insight-with-image .featured-insight-image a { display: block; height: 100%; }
.featured-insight-with-image .featured-insight-image img { display: block; width: 100%; height: 100%; object-fit: cover; }
.featured-insight-with-image .featured-insight-copy { align-self: center; padding: clamp(2rem, 5vw, 4rem); }
.featured-insight.featured-insight-with-image p:not(.meta) { color: var(--muted); }
.featured-insight.featured-insight-with-image .text-link { color: var(--ink); }
.featured-insight h2 { max-width: 820px; margin: 2rem 0 1rem; font-size: clamp(2.3rem, 4.2vw, 4rem); font-weight: 500; }
.featured-insight p:not(.meta) { max-width: 700px; color: #cbd6df; }
.featured-insight .text-link { color: white; }
.archive-section { padding-bottom: 8rem; }
.archive-heading { max-width: 760px; margin-bottom: 2.5rem; }
.archive-heading h2 { margin: 0; font-size: clamp(2.4rem, 4.5vw, 4.5rem); font-weight: 500; }
.archive-heading > p:last-child { color: var(--muted); }
.archive-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.archive-card { overflow: hidden; border: 1px solid var(--line); background: white; }
.archive-card-image { display: block; aspect-ratio: 16/9; overflow: hidden; background: var(--teal-light); }
.archive-card-image img { width: 100%; height: 100%; object-fit: cover; transition: transform .25s ease; }
html[data-motion="full"]:not(.motion-paused) .archive-card-image:hover img { transform: scale(1.025); }
.archive-card-copy { padding: 1.7rem; }
.archive-card-copy .meta { font-size: 0; }
.archive-card-copy .meta time { font-size: .73rem; }
.archive-card-copy h2 { margin: .75rem 0 1rem; font-size: clamp(1.6rem, 2.7vw, 2.3rem); font-weight: 500; }
.archive-card-copy h2 a { text-decoration: none; }
.archive-card-copy h2 a:hover { color: var(--teal); }
.archive-card-copy > p:not(.meta) { color: var(--muted); }

.prose { width: min(calc(100% - 2rem), 760px); margin: auto; padding: 4rem 0 8rem; }
.prose-header { margin-bottom: 3rem; padding-bottom: 2rem; border-bottom: 1px solid var(--line); }
.prose h1 { font-size: clamp(3rem, 6vw, 5.5rem); }
.prose .dek { font-size: 1.25rem; color: var(--muted); }
.prose p { margin: 1.4rem 0; }
.prose h2 { margin: 3.2rem 0 1rem; font-size: 2.1rem; font-weight: 500; }
.prose blockquote { margin: 2.5rem 0; padding: 1rem 0 1rem 1.7rem; border-left: 4px solid var(--gold); color: var(--teal); font: 500 1.55rem/1.35 Georgia, serif; }
.prose .author-note { margin-top: 4rem; padding: 1.5rem; background: var(--teal-light); }
.founder-note-hero {
  margin: 0 0 3rem;
  width: min(100%, 560px);
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--teal-light);
}
.founder-note-hero img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.archive-article { width: min(calc(100% - 2rem), 880px); }
.archive-article .prose-header { max-width: 820px; }
.archive-article .prose-header h1 { font-size: clamp(2.8rem, 6vw, 5.2rem); }
.article-hero { margin: 0 0 4rem; aspect-ratio: 16/9; overflow: hidden; background: var(--teal-light); }
.article-hero img { width: 100%; height: 100%; object-fit: cover; }
.article-body { width: min(100%, 760px); margin: auto; }
.article-body > p:first-child { font-size: 1.28rem; line-height: 1.55; color: var(--teal); }
.article-body > p > strong:only-child, .article-body > p > b:only-child { display: block; margin: 3rem 0 1rem; color: var(--teal); font-size: 1.08rem; letter-spacing: .045em; text-transform: uppercase; }
.article-body .pull-quote { margin: 2.8rem 0; padding: 1rem 0 1rem 1.7rem; border-left: 4px solid var(--gold); color: var(--teal); font: 500 clamp(1.55rem, 3vw, 2.15rem)/1.28 Georgia, serif; }
.article-body h2, .article-body h3, .article-body h4 { margin: 3rem 0 1rem; font-weight: 500; }
.article-body h2 { font-size: 2.1rem; }
.article-body h3, .article-body h4 { font-size: 1.65rem; }
.article-body ul, .article-body ol { margin: 1.4rem 0; padding-left: 1.5rem; }
.article-body li + li { margin-top: .65rem; }
.article-body a { color: var(--teal); text-underline-offset: .2rem; }
.article-author { width: min(100%, 760px); margin: 4rem auto 0; padding-top: 2rem; border-top: 1px solid var(--line); display: grid; grid-template-columns: 96px 1fr; gap: 1.4rem; align-items: center; }
.article-author img { width: 96px; height: 96px; border-radius: 50%; object-fit: cover; object-position: center 22%; }
.article-author h2 { margin: 0 0 .25rem; font-size: 1.55rem; font-weight: 500; }
.article-author p { margin: 0; color: var(--muted); font-size: .94rem; }
.article-author .author-focus { margin-top: .45rem; color: var(--ink); font-weight: 650; }
.article-author .author-role { margin-bottom: .35rem; color: var(--teal); font-size: .72rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
.article-return { width: min(100%, 760px); margin: 2rem auto 0; }

.site-footer { background: #071126; color: white; }
.footer-grid { padding: 4rem 0 2rem; display: grid; grid-template-columns: 1.3fr .7fr .7fr; gap: 3rem; }
.footer-grid h2 { margin: 0 0 1rem; font-size: 2rem; font-weight: 500; }
.footer-grid p { max-width: 500px; color: #bac6d2; }
.footer-label { color: #7ed2cf; font-size: .73rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.footer-links { display: grid; gap: .6rem; margin-top: 1rem; }
.footer-links a { color: white; text-decoration-color: rgba(255,255,255,.45); text-underline-offset: .2rem; }
.footer-bottom { padding: 1.2rem 0 2rem; border-top: 1px solid rgba(255,255,255,.14); color: #98a7b8; font-size: .82rem; }

@media (max-width: 820px) {
  .nav-wrap { min-height: 68px; }
  .menu-button { display: block; }
  .nav-links { display: none; position: absolute; top: 68px; left: 0; right: 0; padding: 1rem; background: var(--paper); border-bottom: 1px solid var(--line); flex-direction: column; align-items: flex-start; }
  .nav-links.open { display: flex; }
  .hero { grid-template-columns: 1fr; min-height: 0; padding-top: 4rem; }
  .hero-orbit { width: min(100%, 480px); margin: auto; }
  .manifesto, .about-strip { grid-template-columns: 1fr; gap: 2.5rem; }
  .feature { grid-template-columns: 1fr; }
  .article-grid { grid-template-columns: 1fr 1fr; }
  .archive-grid { grid-template-columns: 1fr; }
  .pathways, .contact-options, .newsletter-grid, .people-founder, .people-collaboration-note, .practice-grid { grid-template-columns: 1fr; }
  .resource-hero-grid { grid-template-columns: 1fr; }
  .resource-preview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .resource-preview-grid article:nth-child(3) { padding-left: 0; border-left: 0; }
  .pathway-wide .offering-list { grid-template-columns: 1fr; }
  .sample-fields { grid-template-columns: 1fr; }
  .pathway-collaborator { grid-template-columns: 1fr; }
  .collaborator-fit { padding: 1.5rem 0 0; border-top: 1px solid #cfc9bd; border-left: 0; }
  .pathway-collaborator .button { justify-self: start; }
  .people-founder-photo { min-height: 0; max-height: 720px; }
  .collaborator-grid { grid-template-columns: 1fr 1fr; }
  .article-card.featured { grid-column: span 2; }
  .footer-grid { grid-template-columns: 1fr 1fr; }
  .footer-grid > :first-child { grid-column: span 2; }
}

@media (max-width: 620px) {
  .sensory-options { grid-template-columns: 1fr; }
  .sensory-options button { min-height: 0; }
  .collaborator-grid { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .site-motion-controls { right: .6rem; bottom: .6rem; }
  .site-motion-controls button { font-size: .76rem; }
  body { font-size: 1rem; }
  .brand { font-size: .98rem; }
  .brand-mark { width: 30px; height: 30px; }
  h1 { font-size: 3.2rem; }
  .hero { gap: 3.5rem; padding-bottom: 4.5rem; }
  .lens-grid, .article-grid { grid-template-columns: 1fr; }
  .resource-preview-grid { grid-template-columns: 1fr; }
  .resource-preview-grid article, .resource-preview-grid article + article { padding: 1.5rem 0; border-left: 0; }
  .lens-card:nth-child(odd) { border-right: 0; }
  .lens-card:nth-child(even) { padding-left: 0; }
  .article-card.featured { grid-column: auto; }
  .footer-grid { grid-template-columns: 1fr; }
  .footer-grid > :first-child { grid-column: auto; }
  .monogram, .founder-portrait { width: calc(100% - 18px); }
  .article-author { grid-template-columns: 72px 1fr; gap: 1rem; }
  .article-author img { width: 72px; height: 72px; }
  .newsletter-fields { grid-template-columns: 1fr; }
  .newsletter-fields .button { width: 100%; }
  .inner-page-rings {
    top: 68px;
    right: -4%;
    width: min(112vw, 560px);
    height: 430px;
    min-height: 0;
    opacity: .72;
  }
  .inner-page-ring { right: -50%; }
  .inner-page-ring--middle { right: -41%; }
  .inner-page-ring--inner { right: -30%; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  html:not([data-motion-choice="explicit"]) .home-motion-stage::before { animation: none !important; }
  html:not([data-motion-choice="explicit"]) .inner-page-rings::before,
  html:not([data-motion-choice="explicit"]) .inner-page-ring { animation: none !important; }
}

@media (max-width: 700px) {
  .featured-insight-with-image { grid-template-columns: 1fr; }
  .featured-insight-with-image .featured-insight-image { min-height: 0; aspect-ratio: 16 / 9; }
}

/* Accessibility: shared defaults and visitor-controlled reading preferences. */
[hidden] { display: none !important; }
:where(a, button, input, select, textarea, summary):focus-visible {
  outline: 3px solid #0b1730 !important;
  outline-offset: 4px !important;
  box-shadow: 0 0 0 7px #fff !important;
}
:where(a, button, input, select, textarea, summary) { scroll-margin-block: 7rem; }
:where(main, section, header)[tabindex="-1"]:focus { outline: none; }
.skip-link:focus { position: fixed; color: #14253c; z-index: 100; }
.nav-links a[aria-current="page"] { text-decoration: underline; text-underline-offset: .35em; }
.nav-links { flex-wrap: wrap; }
.nav-links a, .menu-button, .footer-links a { min-height: 2.75rem; display: inline-flex; align-items: center; }
.menu-button { display: none; }
.site-footer { padding-bottom: 6rem; }
.site-motion-controls { max-width: calc(100% - 1.2rem); flex-wrap: wrap; }
.site-motion-controls button { font-size: .875rem; min-height: 2.75rem; }
.sensory-dialog { max-height: calc(100dvh - 2rem); max-width: 46rem; }
.sensory-panel { max-height: calc(100dvh - 2rem); padding: clamp(1.1rem, 4vw, 2.25rem); }
.sensory-dialog::backdrop { backdrop-filter: none; }
.sensory-heading-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.sensory-heading-row .sensory-eyebrow { margin: 0; }
.experience-close { min-height: 2.75rem; padding: .5rem .75rem; font: inherit; border: 1px solid #697987; color: var(--ink); background: white; cursor: pointer; }
.sensory-panel h2 { margin-top: 1rem; font-size: clamp(1.75rem, 4vw, 2.6rem); }
.sensory-panel fieldset { min-width: 0; padding: 0; margin: 1.25rem 0; border: 0; }
.sensory-panel legend { font-weight: 750; padding: 0; }
.experience-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; margin-top: .7rem; }
.experience-option { display: grid; grid-template-columns: 1.25rem minmax(0, 1fr); align-items: start; gap: .65rem; border: 1px solid #697987; background: white; padding: .85rem; cursor: pointer; }
.experience-option:has(input:checked) { border-color: var(--teal); box-shadow: inset 0 0 0 1px var(--teal); background: #edf7f6; }
.experience-option input { width: 1.2rem; height: 1.2rem; margin: .15rem 0 0; accent-color: var(--teal); }
.experience-option strong { display: block; font-size: 1rem; }
.experience-option small { display: block; font-size: .875rem; color: var(--muted); margin-top: .25rem; line-height: 1.5; }
.experience-reading summary { min-height: 2.75rem; padding: .5rem 0; cursor: pointer; font-weight: 700; }
.experience-reading label { display: flex; gap: .7rem; align-items: center; min-height: 2.75rem; cursor: pointer; }
.experience-reading input { width: 1.2rem; height: 1.2rem; accent-color: var(--teal); }
.experience-actions { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; margin-top: 1.25rem; }
.sensory-reassurance { margin-top: 1rem; }
.sensory-eyebrow, .eyebrow, .meta, .orbit-label, .lens-number, .footer-label,
.collaborator-status, .resource-preview-grid span, .article-author .author-role,
.archive-card-copy .meta time { font-size: .875rem; }
.form-guidance, .footer-bottom { font-size: .9375rem; }
.form-row input, .form-row select, .form-row textarea, .newsletter-fields input { border-color: #697987; }
.consent-row { grid-template-columns: 1.5rem minmax(0, 1fr); min-height: 2.75rem; }
.consent-row input { width: 1.5rem; height: 1.5rem; }
.button { white-space: normal; text-align: center; }
main, .shell, .prose, .pathway, .sample-gate, .offering, .form-row, .resource-form-card { min-width: 0; overflow-wrap: anywhere; }
.prose a, .article-body a, .form-guidance a { text-decoration-line: underline; text-underline-offset: .2em; }
html.large-text { font-size: 125%; }
html.high-contrast { --teal: #004f52; --muted: #283544; --line: #697987; --paper: #fff; --teal-light: #e5f5f3; }
html.high-contrast .home-motion-stage::before, html.high-contrast .inner-page-rings { display: none; }
html.high-contrast .orbit-label { background: white; }
html.high-contrast .site-header, html.high-contrast .site-motion-controls { background: white; }
html.high-contrast .footer-bottom { color: white; }
html.high-contrast .sample-gate { border-color: #697987; background: white; }
html:not([data-motion]), html[data-motion="none"], html.motion-paused { scroll-behavior: auto !important; }
html:not([data-motion]) *, html:not([data-motion]) *::before, html:not([data-motion]) *::after,
html[data-motion="none"] *, html[data-motion="none"] *::before, html[data-motion="none"] *::after {
  animation: none !important; transition: none !important; scroll-behavior: auto !important;
}
html.motion-paused *, html.motion-paused *::before, html.motion-paused *::after {
  animation-play-state: paused !important; transition: none !important; scroll-behavior: auto !important;
}
@media (prefers-reduced-motion: reduce) {
  html *, html *::before, html *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
  html .practice-card:hover, html .archive-card-image:hover img { transform: none !important; }
}
@media (max-width: 68rem) {
  .site-header { position: relative; }
  .nav-wrap { flex-wrap: wrap; gap: .5rem 1rem; }
  .js .menu-button { display: block; }
  .nav-links { position: static; width: 100%; flex-direction: column; align-items: stretch; gap: .25rem; padding: .75rem 0; background: var(--paper); }
  .js .nav-links { display: none; }
  .js .nav-links.open, html:not(.js) .nav-links { display: flex; }
  .nav-links a { padding: .4rem .25rem; }
  .pathways, .contact-options, .newsletter-grid, .resource-hero-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 40rem) {
  .experience-options, .sample-fields, .newsletter-fields { grid-template-columns: minmax(0, 1fr); }
  .pathway { padding: 1.2rem; }
  .sample-gate { padding: 1rem; }
  .article-author { grid-template-columns: 3.5rem minmax(0, 1fr); }
  .article-author img { width: 3.5rem; height: 3.5rem; }
  .site-motion-controls { right: .5rem; bottom: .5rem; max-width: calc(100% - 1rem); }
  .site-footer { padding-bottom: 8rem; }
  .experience-access { display: block; }
}
.experience-access { font: inherit; color: white; background: transparent; border: 1px solid currentColor; text-align: left; padding: .5rem .75rem; min-height: 2.75rem; cursor: pointer; }
.sample-text h3 { font-size: 1.4rem; line-height: 1.3; margin-top: 1.75rem; }
.sample-text section { margin-top: 3rem; }
@media (forced-colors: active) {
  .inner-page-rings, .home-motion-stage::before { display: none; }
  .experience-option, .button, .site-motion-controls, .sensory-panel { border: 1px solid CanvasText; }
  :where(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid Highlight !important; box-shadow: none !important; }
}
