:root {
  --warm: #fcfaf5; --ink: #203a8f; --deep: #132968; --cobalt: #1d78f2;
  --pale: #d8ecff; --yellow: #f4c531; --pink: #f57fa5; --lilac: #dcd6f7;
  --text: #17204a; --muted: #53618c; --line: rgba(32,58,143,.18);
  --max: 1320px; --header: 88px; --ease: cubic-bezier(.22,1,.36,1);
  --display: "Avenir Next Condensed", "DIN Condensed", "Helvetica Neue", sans-serif;
  --body: "Avenir Next", "Helvetica Neue", sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: var(--header); }
body { margin: 0; background: var(--warm); color: var(--text); font-family: var(--body); font-size: 16px; line-height: 1.55; -webkit-font-smoothing: antialiased; }
body.menu-open,body.modal-open { overflow: hidden; }
body.menu-open .site-header { backdrop-filter: none; }
img { display: block; max-width: 100%; }
a { color: inherit; }
button,input { font: inherit; }
button { color: inherit; }
::selection { background: var(--yellow); color: var(--deep); }
.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; }
.skip-link { position: fixed; z-index: 1000; top: 12px; left: 12px; padding: 10px 16px; border-radius: 8px; background: var(--ink); color: white; transform: translateY(-160%); }
.skip-link:focus { transform: none; }

.site-header { position: sticky; z-index: 100; top: 0; height: var(--header); display: flex; align-items: center; justify-content: space-between; gap: 32px; padding: 0 max(28px,calc((100vw - var(--max))/2)); border-bottom: 1px solid var(--line); background: rgba(252,250,245,.96); backdrop-filter: blur(14px); transition: height .25s ease, box-shadow .25s ease; }
.site-header.is-scrolled { height: 72px; box-shadow: 0 10px 30px rgba(26,43,100,.08); }
.brand { display: flex; flex-direction: column; flex: 0 0 auto; color: var(--ink); font-family: var(--display); font-size: 18px; font-weight: 900; letter-spacing: -.04em; line-height: .76; text-decoration: none; text-transform: uppercase; }
.brand span:nth-child(2) { margin-left: 9px; }.brand span:nth-child(3) { margin-left: 18px; }
.site-nav { display: flex; align-items: center; gap: clamp(20px,3vw,46px); }
.site-nav a { position: relative; color: var(--deep); font-size: 14px; font-weight: 750; text-decoration: none; }
.site-nav a:not(.nav-cta)::after { position: absolute; right: 0; bottom: -7px; left: 0; height: 2px; background: var(--cobalt); content: ""; transform: scaleX(0); transform-origin: left; transition: transform .25s ease; }
.site-nav a:hover::after,.site-nav a:focus-visible::after,.site-nav a[aria-current="page"]::after { transform: scaleX(1); }
.nav-cta { padding: 11px 20px; border-radius: 10px; background: var(--pink); color: white!important; }
.nav-cta[aria-current="page"] { box-shadow: 0 0 0 3px rgba(32,58,143,.12); }
.menu-toggle { display: none; }

h1,h2,h3 { margin-top: 0; color: var(--deep); font-family: var(--display); letter-spacing: -.035em; }
h1 { margin-bottom: 28px; font-size: clamp(58px,7vw,104px); font-weight: 900; line-height: .88; }
h2 { margin-bottom: 22px; font-size: clamp(42px,5vw,72px); font-weight: 850; line-height: .92; }
h3 { font-size: 28px; line-height: 1; }
.section-shell { padding: clamp(86px,9vw,142px) max(28px,calc((100vw - var(--max))/2)); }
.section-label { display: flex; align-items: center; gap: 14px; margin: 0 0 18px; color: var(--cobalt); font-size: 13px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.section-label::after { width: 54px; height: 3px; border-radius: 3px; background: currentColor; content: ""; }
.section-label-yellow { color: var(--yellow); }
.text-link { color: var(--cobalt); font-weight: 800; text-decoration-thickness: 2px; text-underline-offset: 7px; }
.text-link span,.inline-button b { display: inline-block; margin-left: 4px; transition: transform .2s ease; }
.text-link:hover span,.inline-button:hover b { transform: translateX(5px); }
.button { display: inline-flex; min-height: 54px; align-items: center; justify-content: center; padding: 0 27px; border-radius: 10px; font-weight: 850; text-decoration: none; transition: transform .2s ease,box-shadow .2s ease; }
.button:hover { transform: translateY(-3px); box-shadow: 0 12px 24px rgba(32,58,143,.15); }
.button-coral { background: var(--pink); color: white; }.button-yellow { background: var(--yellow); color: var(--deep); }

/* Photos: preserve original aspect ratio throughout. */
.natural-photo { margin: 0; overflow: hidden; border-radius: 14px; text-align: center; }
.natural-photo img { width: auto; max-width: 100%; height: auto; margin-inline: auto; border-radius: inherit; transition: transform .45s var(--ease); }
.natural-photo:hover img { transform: scale(1.025); }
.natural-photo figcaption { margin-top: 12px; color: var(--muted); font-size: 13px; text-align: left; }
.natural-photo-wide img { max-height: 720px; }
.natural-photo-portrait img { max-height: 820px; }
.natural-photo-full img { max-height: 920px; }

.home-hero { position: relative; display: grid; min-height: calc(100svh - var(--header)); overflow: hidden; background: var(--deep); }
.home-hero-copy { position: relative; z-index: 2; display: flex; width: min(1120px,calc(100% - 56px)); align-items: center; flex-direction: column; justify-content: center; justify-self: center; padding: 68px clamp(28px,6vw,96px); color: white; text-align: center; }
.home-hero h1 { max-width: none; color: white; font-size: clamp(64px,6.15vw,104px); white-space: nowrap; }
.home-hero h1 span { position: relative; display: inline-block; z-index: 1; white-space: nowrap; }
.home-hero h1 span::after { position: absolute; z-index: -1; right: -4%; bottom: -13px; width: 80%; height: 28px; border-top: 5px solid var(--pink); border-radius: 50%; content: ""; transform: rotate(-2deg); animation: bladeTrace 1.15s .45s var(--ease) both; }
.home-hero-copy > p { max-width: none; margin: 0; color: white; font-size: clamp(18px,1.55vw,23px); line-height: 1.38; white-space: nowrap; }
.hero-actions { display: flex; align-items: center; gap: 34px; margin-top: 38px; }
.home-hero .text-link { color: white; }.home-hero-media { position: absolute; z-index: 0; inset: 0; margin: 0; background: var(--deep); }.home-hero-media img { width: 100%; height: 100%; object-fit: cover; object-position: center; }.home-hero-glass { position: absolute; z-index: 1; inset: 0; background: rgba(13,35,95,.43); backdrop-filter: blur(3px); }.blade-trace { position: absolute; z-index: 3; bottom: 42px; left: 50%; width: min(900px,70%); height: 90px; border-top: 2px solid rgba(216,236,255,.48); border-radius: 50%; transform: translateX(-50%) rotate(-5deg); }.blade-trace::after { position: absolute; top: 12px; left: 20%; width: 92%; height: 50px; border-top: 2px solid rgba(216,236,255,.24); border-radius: 50%; content: ""; }

.home-intro { display: grid; grid-template-columns: .8fr 1.2fr; align-items: center; gap: clamp(54px,8vw,120px); background: var(--pale); }
.home-intro-copy > p:not(.section-label):not(.statement) { max-width: 620px; color: var(--deep); font-size: 19px; }
.statement { margin: 34px 0; color: var(--ink); font-size: clamp(20px,2vw,28px); }
.home-intro .natural-photo { padding: 0; background: transparent; }
.home-paths { background: var(--warm); }
.section-heading { max-width: 860px; margin-bottom: 58px; }
.path-list { border-top: 1px solid var(--line); }
.path-row { display: grid; grid-template-columns: 170px 1fr auto; align-items: center; gap: 30px; padding: 30px 0; border-bottom: 1px solid var(--line); text-decoration: none; }
.path-row span { color: var(--cobalt); font-size: 14px; font-weight: 850; text-transform: uppercase; }.path-row strong { color: var(--deep); font-family: var(--display); font-size: clamp(25px,3vw,40px); line-height: 1; }.path-row em { color: var(--pink); font-size: 22px; font-style: normal; font-weight: 850; }.path-row:hover strong { color: var(--cobalt); }

.page-hero { position: relative; min-height: 630px; display: flex; align-items: center; padding: 100px max(28px,calc((100vw - var(--max))/2)); overflow: hidden; }
.page-hero > div { position: relative; z-index: 1; max-width: 1060px; }
.page-hero h1 { max-width: 1050px; }
.page-hero > div > p:last-child { max-width: 760px; color: var(--muted); font-size: 20px; }
.page-hero::after { position: absolute; right: -180px; bottom: -370px; width: 760px; height: 760px; border: 3px solid var(--pale); border-radius: 50%; content: ""; }
.page-hero-blue { min-height: 700px; background: var(--pale); }
.page-hero-blue::after { border-color: rgba(255,255,255,.85); }
.page-index { position: absolute; right: max(28px,calc((100vw - var(--max))/2)); bottom: 64px; margin: 0; color: rgba(32,58,143,.23); font-family: var(--display); font-size: clamp(80px,12vw,180px); font-weight: 900; line-height: .8; }

.story-gallery { padding-top: 120px; }
.story-feature { display: grid; grid-template-columns: minmax(0,1.45fr) minmax(300px,.55fr); align-items: center; gap: clamp(44px,8vw,120px); margin-bottom: 150px; }
.story-feature-reverse { grid-template-columns: minmax(300px,.55fr) minmax(0,1.45fr); }
.story-feature-reverse figure { grid-column: 2; }.story-feature-reverse > div { grid-column: 1; grid-row: 1; }
.story-feature .natural-photo { padding: 0; border: 0; background: transparent; }
.story-feature .natural-photo img { max-height: 760px; }
.story-feature > div > span { display: block; margin-bottom: 16px; color: var(--cobalt); font-family: var(--display); font-size: 58px; font-weight: 900; line-height: 1; }
.story-feature h2 { font-size: clamp(40px,5vw,68px); }.story-feature > div p { color: var(--muted); font-size: 18px; }
.production-note { padding: 22px; border-left: 4px solid var(--pink); background: var(--lilac); color: var(--deep); }

.prose-layout { display: grid; grid-template-columns: .8fr 1.2fr; gap: clamp(54px,8vw,120px); }
.prose-lead { color: var(--deep); font-family: var(--display); font-size: clamp(28px,3.2vw,44px); font-weight: 700; letter-spacing: -.025em; line-height: 1.12; }
.prose-lead p { margin-top: 0; }.prose-body { color: #35406d; font-size: 19px; }.prose-body p { margin-top: 0; margin-bottom: 26px; }
.founder { display: grid; grid-template-columns: minmax(420px,.82fr) 1.18fr; align-items: center; gap: clamp(54px,8vw,120px); background: var(--pale); }
.founder .natural-photo { padding: 0; background: transparent; }.founder-copy p { color: #35406d; font-size: 18px; }
.coming-soon { display: flex; flex-direction: column; gap: 3px; margin-top: 34px; padding: 20px 22px; border-radius: 14px; background: var(--lilac); color: var(--deep); }.coming-soon span { color: var(--muted); font-size: 14px; }
.ted-section { display: grid; grid-template-columns: .72fr 1.28fr; align-items: center; gap: clamp(52px,8vw,110px); }.ted-copy p:not(.section-label) { color: #35406d; font-size: 18px; }.ted-open { border: 0; background: transparent; cursor: pointer; }.ted-video { aspect-ratio: 16/9; overflow: hidden; border: 0; border-radius: 24px; background: var(--deep); box-shadow: 0 22px 60px rgba(18,43,105,.16); }.ted-video-link { position: relative; display: grid; width: 100%; place-items: center; color: #fff; isolation: isolate; cursor: pointer; text-align: left; transition: transform .25s ease, box-shadow .25s ease; }.ted-video-link:hover { transform: translateY(-4px); box-shadow: 0 28px 68px rgba(18,43,105,.24); }.ted-video-link:focus-visible { outline: 4px solid var(--yellow); outline-offset: 5px; }.ted-video-photo,.ted-video-shade { position: absolute; inset: 0; }.ted-video-photo { display: grid; place-items: center; background: #0c2467; z-index: -2; }.ted-video-photo img { width: 100%; height: 100%; object-fit: contain; object-position: center; opacity: .72; }.ted-video-shade { background: rgba(8,20,59,.48); z-index: -1; }.ted-video-kicker,.ted-video-caption { position: absolute; font-family: var(--font-sans); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }.ted-video-kicker { top: 22px; left: 24px; padding: 8px 10px; color: var(--ink); background: var(--yellow); }.ted-play { display: grid; width: 84px; height: 58px; place-items: center; border-radius: 16px; background: #e62117; box-shadow: 0 12px 28px rgba(0,0,0,.25); }.ted-play svg { width: 32px; height: 32px; fill: #fff; }.ted-video-caption { bottom: 22px; left: 24px; color: #fff; }.ted-video-caption b { margin-left: 5px; font-size: 16px; }.video-modal { position: fixed; z-index: 300; inset: 0; display: grid; place-items: center; padding: 28px; }.video-modal[hidden] { display: none; }.video-modal-backdrop { position: absolute; inset: 0; background: rgba(10,20,52,.78); backdrop-filter: blur(8px); }.video-dialog { position: relative; width: min(1080px,100%); overflow: hidden; border-radius: 22px; background: var(--deep); box-shadow: 0 28px 90px rgba(0,0,0,.35); }.video-dialog-header { display: flex; align-items: center; justify-content: space-between; gap: 18px; min-height: 66px; padding: 0 16px 0 24px; color: white; }.video-dialog-header p { margin: 0; font-family: var(--display); font-size: 21px; font-weight: 800; }.video-close { display: grid; width: 42px; height: 42px; place-items: center; border: 0; border-radius: 50%; background: var(--yellow); color: var(--deep); cursor: pointer; font-size: 30px; line-height: 1; }.video-player { aspect-ratio: 16/9; background: #111; }.video-player iframe { width: 100%; height: 100%; border: 0; }

.barrier-list { padding-top: 40px; }.barrier-row { border-bottom: 1px solid var(--line); }.barrier-row:first-child { border-top: 1px solid var(--line); }
.barrier-row summary { display: grid; grid-template-columns: 100px minmax(210px,.7fr) 1.2fr 34px; align-items: center; gap: 28px; padding: 30px 0; list-style: none; cursor: pointer; }.barrier-row summary::-webkit-details-marker { display: none; }
.barrier-number { color: var(--cobalt); font-family: var(--display); font-size: 56px; font-weight: 900; line-height: 1; }.accent-yellow { color: #dcae08; }.accent-pink { color: var(--pink); }.accent-lilac { color: #8c78dd; }.accent-pale { color: #58a9ee; }
.barrier-name { color: var(--deep); font-family: var(--display); font-size: 24px; font-weight: 850; }.barrier-summary { color: var(--muted); }
.plus { position: relative; width: 24px; height: 24px; }.plus::before,.plus::after { position: absolute; top: 11px; left: 2px; width: 20px; height: 2px; background: var(--cobalt); content: ""; transition: transform .25s ease; }.plus::after { transform: rotate(90deg); }.barrier-row[open] .plus::after { transform: rotate(0); }
.barrier-row > p { max-width: 790px; margin: -8px 58px 30px 128px; color: #3f4c79; font-size: 17px; }
.barrier-statement { position: relative; max-width: 960px; margin: 72px 0 0; padding-left: 68px; color: var(--deep); font-family: var(--display); font-size: clamp(27px,3.5vw,48px); font-weight: 800; letter-spacing: -.025em; line-height: 1.08; }.barrier-statement::before { position: absolute; top: 4px; left: 0; display: grid; width: 46px; height: 46px; place-items: center; border: 2px solid var(--cobalt); border-radius: 50%; color: var(--cobalt); content: "→"; font-size: 24px; }
.next-step { display: flex; align-items: end; justify-content: space-between; gap: 40px; padding: 80px max(28px,calc((100vw - var(--max))/2)); background: var(--ink); }.next-step h2 { max-width: 820px; margin-bottom: 0; color: white; }

.start-hero { display: grid; grid-template-columns: .82fr 1.18fr; align-items: center; gap: clamp(52px,8vw,110px); min-height: 760px; padding: 96px max(28px,calc((100vw - var(--max))/2)); background: var(--ink); color: white; }.start-hero h1 { color: white; }.start-hero > div > p:last-child { max-width: 620px; color: #dce6ff; font-size: 20px; }.start-hero .natural-photo { padding: 0; background: transparent; }.start-hero img { max-height: 650px; }
.resource-heading { display: grid; grid-template-columns: 100px minmax(0,1fr); gap: 30px; max-width: 1050px; }.resource-heading > span,.directory-intro > span,.community-copy > span { color: var(--cobalt); font-family: var(--display); font-size: clamp(50px,6vw,78px); font-weight: 900; letter-spacing: -.06em; line-height: .78; }.resource-heading h2,.directory-intro h2,.community-copy h2 { margin: 0 0 18px; }.resource-heading p,.directory-intro p,.community-copy > p { max-width: 690px; margin: 0; color: var(--muted); font-size: 19px; }
.guide-tabs { display: grid; grid-template-columns: repeat(3,1fr); margin-top: 68px; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--line); }.guide-tab { min-height: 98px; padding: 18px 24px; border: 0; border-left: 1px solid var(--line); background: transparent; color: var(--deep); cursor: pointer; font-size: 16px; font-weight: 850; text-align: left; transition: background .2s ease,color .2s ease; }.guide-tab:first-child { border-left: 0; }.guide-tab:hover,.guide-tab[aria-selected="true"] { background: var(--lilac); }.guide-tab[aria-selected="true"] { color: var(--ink); }
.guide-panels { margin-top: 34px; }.guide-panel { display: grid; grid-template-columns: minmax(0,1.25fr) minmax(230px,.65fr); gap: clamp(28px,6vw,104px); align-items: start; padding: clamp(34px,5vw,64px); background: var(--lilac); }.guide-panel[hidden] { display: none; }.guide-panel h3 { margin: 0 0 13px; color: var(--ink); font-family: var(--display); font-size: clamp(32px,3.5vw,52px); font-weight: 900; line-height: .9; }.guide-panel p { color: #35406d; }.guide-panel ul { padding: 0; margin: 24px 0 0; list-style: none; }.guide-panel li { padding: 10px 0; border-top: 1px solid rgba(32,58,143,.22); color: #35406d; }.guide-panel aside { align-self: stretch; padding-left: clamp(24px,3vw,54px); border-left: 1px solid rgba(32,58,143,.3); }.guide-panel aside strong { display: block; margin-bottom: 10px; color: var(--ink); font-family: var(--display); font-size: 26px; font-weight: 900; line-height: 1; }.guide-panel aside p { margin-top: 0; font-size: 15px; }.inline-button { padding: 0; border: 0; background: transparent; color: var(--cobalt); font-weight: 850; text-decoration: none; cursor: pointer; }.starter-guide { position: relative; margin-top: 30px; padding: 35px; border-radius: 20px; background: var(--ink); color: white; }.starter-guide h2 { color: white; }.starter-guide > div { position: relative; padding-right: 46px; }.starter-guide > div button { position: absolute; top: -12px; right: 0; border: 0; background: transparent; color: white; font-size: 38px; cursor: pointer; }.starter-guide label { display: flex; align-items: center; gap: 12px; padding: 13px 0; border-top: 1px solid rgba(255,255,255,.16); cursor: pointer; }.starter-guide input { width: 20px; height: 20px; accent-color: var(--yellow); }.starter-guide > p { color: #dce6ff; }
.directory-expanded { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(280px,.95fr); gap: clamp(48px,9vw,150px); align-items: center; background: var(--cobalt); color: white; }.directory-intro > span { color: var(--yellow); }.directory-intro h2 { color: white; }.directory-intro p { color: #e2ecff; font-size: 17px; }.directory-cities { padding-left: clamp(24px,3vw,54px); border-left: 1px solid rgba(255,255,255,.4); }.directory-cities > p { margin: 0 0 12px; color: #e2ecff; font-size: 14px; font-weight: 850; text-transform: uppercase; }.directory-cities a { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 18px 0; border-top: 1px solid rgba(255,255,255,.4); color: white; text-decoration: none; }.directory-cities a:last-child { border-bottom: 1px solid rgba(255,255,255,.4); }.directory-cities strong { font-family: var(--display); font-size: 31px; font-weight: 900; line-height: 1; }.directory-cities span { font-size: 12px; font-weight: 800; text-align: right; }
.community-section { display: grid; grid-template-columns: minmax(0,.78fr) minmax(360px,1.22fr); align-items: center; gap: clamp(48px,7vw,104px); }.community-paths { display: grid; grid-template-columns: repeat(3,1fr); gap: 24px; margin: 46px 0 34px; }.community-paths > div { padding-left: 15px; border-left: 2px solid var(--pink); }.community-paths strong { color: var(--ink); font-family: var(--display); font-size: 21px; font-weight: 900; line-height: 1; }.community-paths p { margin: 9px 0 0; color: var(--muted); font-size: 14px; }.community-section .natural-photo { width: 100%; }.community-section .natural-photo img { width: 100%; max-height: 660px; object-fit: contain; }

.site-footer { display: grid; grid-template-columns: 1fr auto 1fr; align-items: end; gap: 48px; padding: 56px max(28px,calc((100vw - var(--max))/2)); border-top: 1px solid var(--line); background: var(--warm); color: var(--deep); }.brand-footer { width: max-content; font-size: 20px; }.site-footer > div > p { margin: 20px 0 0; color: var(--ink); font-size: 13px; font-weight: 800; }.site-footer nav { display: flex; flex-direction: column; align-items: flex-start; gap: 12px; }.site-footer nav a { font-size: 14px; font-weight: 750; text-decoration: none; }.site-footer nav a:hover { color: var(--cobalt); }.footer-note { justify-self: end; max-width: 250px; margin: 0; color: var(--muted); font-size: 13px; text-align: right; }

.reveal { opacity: 0; transform: translateY(24px); transition: opacity .8s var(--ease),transform .8s var(--ease); }.reveal.is-visible { opacity: 1; transform: none; }
@keyframes bladeTrace { from { clip-path: inset(0 100% 0 0); } to { clip-path: inset(0); } }
:focus-visible { outline: 3px solid var(--yellow); outline-offset: 4px; }

@media (max-width:1050px) {
  .home-hero-copy { min-height: 560px; }.blade-trace { bottom: auto; top: 520px; width: 66%; }
  .home-intro,.prose-layout,.founder,.ted-section,.start-hero,.directory,.directory-expanded,.community-section { grid-template-columns: 1fr; }.home-intro .natural-photo,.founder .natural-photo,.start-hero .natural-photo { max-width: 780px; margin-inline: auto; }.directory-cities,.directory-form { padding-left: 0; border-left: 0; }.directory-form { grid-template-columns: 1fr 1fr; }.guide-panel { grid-template-columns: minmax(0,1fr); }.guide-panel aside { grid-column: 1; padding: 28px 0 0; border-top: 1px solid rgba(32,58,143,.3); border-left: 0; }
  .story-feature,.story-feature-reverse { grid-template-columns: 1fr; }.story-feature-reverse figure,.story-feature-reverse > div { grid-column: 1; }.story-feature-reverse figure { grid-row: 1; }
  .site-footer { grid-template-columns: 1fr auto; }.footer-note { grid-column: 1/-1; justify-self: start; text-align: left; }
}
@media (max-width:760px) {
  :root { --header: 72px; }.site-header { height: var(--header); padding: 0 20px; }.site-header.is-scrolled { height: 64px; }.brand { font-size: 15px; }
  .menu-toggle { position: relative; z-index: 102; display: block; width: 44px; height: 44px; padding: 11px 8px; border: 0; background: transparent; cursor: pointer; }.menu-toggle span:not(.sr-only) { display: block; width: 27px; height: 2px; margin: 6px 0; background: var(--ink); transition: transform .25s ease; }.menu-toggle[aria-expanded="true"] span:nth-of-type(1) { transform: translateY(4px) rotate(45deg); }.menu-toggle[aria-expanded="true"] span:nth-of-type(2) { transform: translateY(-4px) rotate(-45deg); }
  .site-nav { position: fixed; top: 0; left: 0; z-index: 101; width: 100vw; height: 100dvh; flex-direction: column; align-items: flex-start; justify-content: center; gap: 20px; padding: 90px 32px 40px; background: var(--warm); opacity: 0; pointer-events: none; transform: translateY(-20px); transition: .3s ease; }.site-nav.is-open { opacity: 1; pointer-events: auto; transform: none; }.site-nav a { font-family: var(--display); font-size: 34px; letter-spacing: -.03em; }.nav-cta { margin-top: 10px; font-size: 21px!important; }
  .section-shell { padding: 78px 22px; } h1 { font-size: clamp(52px,15vw,72px); } h2 { font-size: clamp(40px,12vw,56px); }
  .home-hero-copy { min-height: auto; padding: 68px 22px; }.home-hero h1 { font-size: clamp(53px,15vw,72px); white-space: normal; }.home-hero h1 span { white-space: normal; }.home-hero-copy > p { max-width: 590px; white-space: normal; }.blade-trace { display: none; }
  .home-intro .natural-photo { padding: 0; }.path-row { grid-template-columns: 1fr auto; gap: 9px 18px; }.path-row span { grid-column: 1; }.path-row strong { grid-column: 1; }.path-row em { grid-column: 2; grid-row: 1/3; }
  .page-hero,.page-hero-blue { min-height: 560px; padding: 76px 22px; }.page-hero > div > p:last-child { font-size: 17px; }.page-index { right: 22px; bottom: 35px; }
  .story-gallery { padding-top: 80px; }.story-feature { gap: 34px; margin-bottom: 100px; }.story-feature .natural-photo { padding: 0; }.story-feature > div > span { font-size: 43px; }
  .founder .natural-photo,.start-hero .natural-photo { padding: 0; }.ted-section { gap: 42px; }.ted-video { border-radius: 14px; }
  .barrier-row summary { grid-template-columns: 60px 1fr 25px; gap: 14px; padding: 24px 0; }.barrier-number { font-size: 36px; }.barrier-name { font-size: 20px; }.barrier-summary { grid-column: 2/-1; font-size: 14px; }.plus { grid-column: 3; grid-row: 1; }.barrier-row > p { margin: -2px 0 25px 74px; font-size: 15px; }.barrier-statement { padding-left: 55px; }.next-step { align-items: flex-start; flex-direction: column; padding: 72px 22px; }
  .start-hero { min-height: 0; padding: 76px 22px; }.start-hero > div > p:last-child { font-size: 17px; }.resource-heading { grid-template-columns: 64px 1fr; gap: 18px; }.guide-tabs { grid-template-columns: 1fr; margin-top: 44px; }.guide-tab { min-height: 64px; border-top: 1px solid var(--line); border-left: 0; }.guide-tab:first-child { border-top: 0; }.guide-panel { grid-template-columns: 1fr; padding: 30px 24px; }.guide-mark { font-size: 48px; }.guide-panel aside { grid-column: auto; padding: 24px 0 0; }.directory-form { grid-template-columns: 1fr; }.directory-form label,.directory-form input { grid-column: 1/-1; }.community-paths { grid-template-columns: 1fr; gap: 18px; }.community-section .natural-photo img { max-height: none; }.notify-form > div { grid-template-columns: 1fr; }.notify-form button { width: 100%; }
  .site-footer { grid-template-columns: 1fr; padding: 48px 22px; }.site-footer nav { align-items: flex-start; gap: 12px; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior: auto; } *,*::before,*::after { animation-duration: .01ms!important; animation-iteration-count: 1!important; transition-duration: .01ms!important; }.reveal { opacity: 1; transform: none; } }
