/* V5: composition and typography from the sections selected in the feedback. */
:root{--ink:#105f63;--teal:#105f63;--teal-dark:#320c48;--turquoise:#2ecfd6;--sun:#fbd34c;--pale:#ffeea4;--lavender:#f0e3ff;--purple:#320c48;--cream:color-mix(in srgb,var(--pale) 12%,white);--mint:color-mix(in srgb,var(--turquoise) 6%,white);--coral:var(--purple);--coral-soft:var(--lavender);--line:color-mix(in srgb,var(--teal) 16%,transparent);--shadow:0 24px 70px color-mix(in srgb,var(--teal) 13%,transparent);--page:min(1180px,calc(100% - 64px))}
body{font-family:'DM Sans',sans-serif;overflow-x:clip}
/* Mobile-first refinement: green and turquoise replace purple surfaces. */
:root{--teal-dark:var(--teal);--purple:var(--teal);--lavender:color-mix(in srgb,var(--turquoise) 18%,white)}
h1,h2,h3,.hero-proof strong,.big-number,.together-title,.handwritten,.tagline{font-family:'Fredoka',sans-serif}
p{text-wrap:pretty}h1,h2,h3{text-wrap:balance}
.section h2{font-weight:450;font-size:clamp(2.25rem,4vw,3.75rem);line-height:1.08;letter-spacing:-.025em}
.section h3{font-weight:450}
.eyebrow{font-size:.75rem;line-height:1.65;letter-spacing:.12em}
.section .eyebrow{color:var(--teal)}
.skip{position:fixed;top:8px;left:16px;z-index:110;padding:12px 20px;background:var(--white);color:var(--ink);border-radius:8px;transform:translateY(-160%)}
.skip:focus{transform:none}
.site-header{gap:24px;height:88px;background:color-mix(in srgb,var(--cream) 96%,transparent)}
.brand{display:grid;place-items:center;background:var(--teal);border-radius:16px;padding:4px 16px;flex-shrink:0}
.brand img{width:88px;height:58px;object-fit:contain}
.site-header nav{gap:24px}
.site-header nav a{font-size:.875rem;white-space:nowrap}
.button{font-size:1rem;line-height:1.3}
.button-small{font-size:.875rem}
.button{box-shadow:0 10px 26px color-mix(in srgb,var(--teal) 16%,transparent)}
.button:hover{box-shadow:0 18px 36px color-mix(in srgb,var(--teal) 22%,transparent)}
.button-light,.button-light:hover{box-shadow:none}
.hero-actions small,.hero-proof span,.section-heading>p,.faq details p,footer p{color:var(--teal)}
.hero-visual figcaption strong{color:var(--teal)}
.tagline .word.active{text-shadow:none}
.mobile-cta{box-shadow:0 14px 36px color-mix(in srgb,var(--teal) 25%,transparent)}
.hero{gap:64px;padding-top:64px;padding-bottom:80px;min-height:720px}
.hero-copy{min-width:0}
.hero h1{font-size:clamp(3rem,5.2vw,4.5rem);line-height:1.02;color:var(--teal);background:none;-webkit-text-fill-color:initial;font-weight:500}
.hero-lead{font-size:1.125rem;line-height:1.65}
.hero-actions{flex-wrap:wrap;gap:16px}
.hero-actions small{max-width:200px}
.hero-proof{gap:16px;margin-top:32px}
.hero-proof strong{font-weight:500}
.hero-proof span{margin-top:4px}
.hero-visual{min-width:0}
.hero-visual img{height:auto;object-position:85% center;border-radius:180px 180px 24px 24px}
.hero-visual:before{inset:12% -2% -4% 10%}
.hero-visual figcaption{right:8px}
.story,.fit,.commitment{display:grid;grid-template-columns:1fr 1fr;gap:96px;align-items:start}
.story .section-heading{max-width:none}
.story .handwritten{display:inline-block;margin:24px 0 0;border-bottom:3px solid var(--sun);padding-bottom:8px;font-size:1.5rem;line-height:1.5;transform:rotate(-3deg);color:var(--teal)}
.prose{padding-top:4px;line-height:1.7}
.prose p{margin:0 0 24px}
.prose p:last-child{margin-bottom:0}
.prose strong{font-weight:700}
.partnership,.process{position:relative}
.anchor-alias{position:absolute;top:0;scroll-margin-top:104px}
.partnership .section-heading>p{color:var(--ink)}
.benefit-grid{gap:24px;margin-top:48px;align-items:stretch}
.benefit-card{min-height:0;border-radius:24px;padding:40px 32px;box-shadow:none}
.benefit-card.creator{background:var(--teal);color:var(--cream)}
.benefit-card.community{background:var(--pale);color:var(--teal)}
.benefit-card.together{background:var(--lavender);color:var(--purple)}
.card-label{display:block;font-size:.75rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.big-number{font-size:6rem;font-weight:450;line-height:1;margin:32px 0 16px;letter-spacing:-.04em;white-space:nowrap}
.big-number span{font-size:2rem;letter-spacing:-.02em}
.together-title{font-size:3.5rem;font-weight:450;line-height:1.02;margin:24px 0 16px}
.benefit-card h3{margin:0 0 24px;font-size:1.5rem;line-height:1.2}
.benefit-card p{margin:0;font-size:1rem;line-height:1.7;opacity:1}
.extras{display:grid;grid-template-columns:1fr 1fr;gap:64px;max-width:1100px;margin:48px auto 0}
.extras>div{display:flex;gap:24px}
.extra-number{flex-shrink:0;display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--line);border-radius:50%;font-size:.75rem}
.extras h3{font-size:1.5rem;line-height:1.2;margin:0 0 12px}
.extras p{margin:0;line-height:1.7}
.tagline{min-height:0;padding-top:96px;padding-bottom:96px;background:var(--teal)}
.tagline p{max-width:900px;font-size:clamp(2.25rem,4.5vw,3.75rem);font-weight:450;line-height:1.12}
.fit-copy h2{max-width:420px}
.fit-copy>p{max-width:450px;font-size:1rem;line-height:1.7;margin-top:32px}
.fit-list{padding-top:8px}
.fit-list article{display:flex;gap:24px;padding:32px 0;border-bottom:1px solid var(--line)}
.fit-list article:first-child{padding-top:0}
.fit-list article:last-child{padding-bottom:0;border-bottom:0}
.fit-list article>span{font-family:'Fredoka',sans-serif;font-size:2.25rem;line-height:1;color:var(--teal)}
.fit-list h3{font-size:1.5rem;line-height:1.2;margin:0 0 12px}
.fit-list p{margin:0;line-height:1.7}
.process{background:color-mix(in srgb,var(--turquoise) 10%,white)}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;max-width:1180px;margin-top:64px}
.timeline li{display:block;padding:0}
.timeline li:not(:last-child):before{display:none}
.timeline li>span{width:48px;height:48px;display:grid;place-items:center;padding:0;background:transparent;border:1px solid #105f6340;color:var(--teal);font-family:"DM Sans",sans-serif;font-weight:600;font-size:1rem;font-variant-numeric:tabular-nums;line-height:1;text-align:center;text-indent:0;margin-bottom:24px;transform:scale(.88);transform-origin:center;transition:transform 220ms var(--ease),background-color 180ms var(--ease),border-color 180ms var(--ease),color 180ms var(--ease)}
.timeline li.is-current>span{background:var(--teal);border-color:var(--teal);color:white;transform:scale(1)}
.timeline h3{font-size:1.5rem;line-height:1.2;margin:0 0 16px}
.timeline p{color:var(--ink);line-height:1.7}
.step-tag{display:inline-block;margin-top:16px;padding:4px 8px;background:var(--pale);border-radius:4px;font-size:.75rem;line-height:1.5;text-transform:uppercase}
.step-tag.muted{background:#105f6310}
.process-note{max-width:680px;margin-top:48px;padding:0;background:none;font-size:.875rem;line-height:1.7}
.small-note{font-size:.875rem}
.faq-list{align-items:start}
.faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:1rem;min-height:24px}
.faq summary:after{float:none;flex-shrink:0}
.faq details p{font-size:1rem;line-height:1.7}
.final-cta{min-height:0;padding-top:96px;padding-bottom:96px}
.final-cta h2{font-weight:450;font-size:clamp(3rem,5vw,4.5rem);line-height:1.08}
.final-cta p{font-size:1.125rem;line-height:1.7}
footer{min-height:128px;padding:32px 0}
footer>img{background:var(--teal);border-radius:12px;padding:8px 16px;width:112px}
@media(hover:none),(pointer:coarse){.button:hover,.benefit-card:hover{transform:none}}
.scroll-progress{height:4px;background:#105f6312}
.scroll-progress span{background:var(--sun)}
@media(max-width:1100px){.story,.fit,.commitment{gap:64px}.hero{gap:40px}.site-header nav{gap:16px}.big-number{font-size:4.5rem}.big-number span{font-size:1.5rem}.together-title{font-size:3rem}.benefit-card{padding:32px 24px}}
@media(max-width:900px){:root{--page:min(720px,calc(100% - 48px))}.hero{grid-template-columns:1fr}.hero h1{max-width:620px}.hero-visual{width:100%;max-width:520px}.story,.fit,.commitment{grid-template-columns:1fr;gap:40px}.story .prose,.fit-copy>p{max-width:100%}.benefit-grid{grid-template-columns:1fr;max-width:640px}.benefit-card{padding:40px}.big-number{font-size:6rem}.together-title{font-size:3.5rem}.extras{max-width:640px;gap:32px}.timeline{grid-template-columns:1fr 1fr;gap:48px 32px}.site-header{height:80px}.site-header>.button{display:inline-flex}.brand img{height:48px;width:72px}.mobile-cta{bottom:max(16px,env(safe-area-inset-bottom));background:var(--teal)}footer{padding-bottom:104px}.partnership,.process{padding-left:24px;padding-right:24px}}
@media(max-width:560px){:root{--page:calc(100% - 40px)}.site-header{gap:12px}.brand{padding:4px 8px}.brand img{width:64px}.button-small{padding:0 16px;font-size:.75rem}.hero{padding-top:40px;padding-bottom:64px}.hero h1{font-size:3rem}.hero-actions small{max-width:none}.hero-proof{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hero-proof div:last-child{grid-column:auto}.hero-proof strong{font-size:1.25rem}.hero-proof span{font-size:.75rem;line-height:1.5}.hero-visual img{aspect-ratio:4/5;object-position:85% center}.section h2{font-size:2.25rem}.section{padding-top:64px;padding-bottom:64px}.partnership,.process{padding-left:20px;padding-right:20px}.benefit-card{padding:32px}.extras{grid-template-columns:1fr;gap:32px}.story .handwritten{font-size:1.25rem}.tagline{padding:64px 24px}.tagline p{font-size:2.25rem}.timeline{display:block;margin-top:40px}.timeline li{display:grid;grid-template-columns:40px 1fr;gap:20px;padding-bottom:32px}.timeline li>span{width:40px;height:40px;margin:0;font-size:.875rem}.timeline li:not(:last-child):before{display:none}.timeline li:last-child{padding-bottom:0}.timeline h3{margin-top:8px}.process-note{text-align:left;margin-top:32px}.faq details{padding:24px 20px}.final-cta{padding:64px 20px}.final-cta h2{font-size:3rem}.final-cta>img{bottom:-8%}footer{gap:24px}footer p{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.scroll-progress{display:block}body.motion-ready [data-reveal]{opacity:1;transform:none;filter:none}.tagline .word{color:white}.button:hover,.benefit-card:hover{transform:none}}

/* Native details retains keyboard and screen-reader behavior. */
.interaction-ready .faq summary:after{display:none}
.faq-toggle{position:relative;display:block;flex:0 0 20px;width:20px;height:20px;color:var(--teal)}
.faq-toggle:before,.faq-toggle:after{content:"";position:absolute;background:currentColor;border-radius:2px}
.faq-toggle:before{width:14px;height:2px;left:3px;top:9px}
.faq-toggle:after{width:2px;height:14px;left:9px;top:3px;transform:scaleY(1);transition:transform 160ms var(--ease)}
details[open] .faq-toggle:after{transform:scaleY(0)}
@media(max-width:560px){
  .interaction-ready .timeline li:not(:last-child):after{display:none}
}
.keyboard-navigation .faq-toggle:after,.keyboard-navigation .timeline li:after{transition:none!important}
@media(prefers-reduced-motion:reduce){
  .faq-toggle:after{transform:none;transition:opacity 100ms var(--ease);transition-duration:100ms!important}
  details[open] .faq-toggle:after{transform:none;opacity:0}
  .timeline li>span{transform:none!important;transition:background-color 100ms linear,border-color 100ms linear,color 100ms linear}
}

/* V11 — The application steps now share the same scroll-led progress as the partnership chapters. */
.timeline{position:relative;--timeline-progress:0}
.timeline::before,.timeline::after{content:"";position:absolute;z-index:0;pointer-events:none;border-radius:999px}
.timeline::before{background:color-mix(in srgb,var(--teal) 20%,transparent)}
.timeline::after{background:var(--teal)}
.timeline li{position:relative;z-index:1}
.timeline li>span{background:color-mix(in srgb,var(--teal) 4%,white);border-color:color-mix(in srgb,var(--teal) 42%,transparent);color:var(--teal);transform:scale(.82);transition:transform 320ms cubic-bezier(.34,1.56,.64,1),background-color 180ms var(--ease),border-color 180ms var(--ease),color 180ms var(--ease)}
.timeline li.is-current>span{background:var(--teal);border-color:var(--teal);color:white;transform:scale(1)}
@media(min-width:901px){
  .timeline::before,.timeline::after{left:var(--timeline-start-x,24px);top:var(--timeline-line-y,24px);width:var(--timeline-length-x,calc(100% - 48px));height:2px;transform-origin:left center}
  .timeline::after{transform:scaleX(var(--timeline-progress))}
}
@media(max-width:900px){
  .timeline{display:block;max-width:640px}
  .timeline::before,.timeline::after{left:var(--timeline-line-x,24px);top:var(--timeline-start-y,24px);width:2px;height:var(--timeline-length-y,calc(100% - 48px));transform-origin:center top}
  .timeline::after{transform:scaleY(var(--timeline-progress))}
  .timeline li{display:grid;grid-template-columns:48px 1fr;gap:24px;padding-bottom:40px}
  .timeline li>span{margin:0}
  .timeline li:last-child{padding-bottom:0}
  .timeline h3{margin-top:8px}
}
@media(max-width:560px){
  .timeline li{grid-template-columns:40px 1fr;gap:20px;padding-bottom:32px}
}
@media(prefers-reduced-motion:reduce){
  .timeline::after{transform:none!important}
  .chapter-marker,.timeline li>span{transform:none!important}
}
