@import url('https://fonts.googleapis.com/css2?family=Anton&family=Archivo:wght@400;450;500;550;600;650;700;750&display=swap');
:root{--ink:#262626;--yellow:#EBE46E;--pink:#D9A4C4;--green:#5FA68A;--orange:#E3754C;--paper:#F4F0E6;--desk:#EAE7DE;--track:#DDD8CB;--white:#fff;--muted:#615f5a;--gutter:clamp(22px,4vw,76px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Archivo,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--ink);outline-offset:5px}p{line-height:1.5}h1,h2,h3,p,blockquote{margin:0}h1,h2,h3{font-weight:500}em{font-style:normal}h1,h2{letter-spacing:-.065em;line-height:1.02}h2{font-size:clamp(48px,5.8vw,90px)}.muted{color:#79766e}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.13em;font-weight:650;line-height:1.4}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:var(--yellow);padding:15px}.skip:focus{top:12px}.site-header{height:90px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;position:absolute;top:0;left:0;right:0;z-index:10}.wordmark{font-size:30px;font-weight:700;letter-spacing:-1.8px;white-space:nowrap}.wordmark>span{font-size:11px;vertical-align:top;display:inline-block;margin:4px 0 0 3px;letter-spacing:0}nav{display:flex;gap:30px;align-items:center;font-size:14px}.button{background:var(--ink);color:var(--yellow);padding:18px 25px;border:0;border-radius:100px;display:inline-flex;gap:35px;align-items:center;justify-content:space-between;font-size:15px;font-weight:550;cursor:pointer;min-height:48px;transition:transform .2s,background .2s}.button:hover{background:#42423a;transform:translateY(-2px)}.button.small{padding:13px 21px}.opening{height:150svh;padding:12px}.opening-stage{position:sticky;top:12px;height:calc(100svh - 24px);min-height:650px;display:grid;grid-template-columns:1.1fr 1fr;gap:30px;padding:112px calc(var(--gutter) - 12px) 56px;transform:scale(var(--hero-scale,1));transform-origin:50% 40%;border-radius:30px;background:var(--paper)}.hero-copy{padding-top:30px;z-index:1}.hero-copy h1{font-size:clamp(65px,7.8vw,124px);margin-top:32px}.hero-copy h1 em{white-space:nowrap}.hero-bottom{display:flex;align-items:end;gap:30px;justify-content:space-between;margin-top:40px}.hero-bottom p{font-size:17px}.text-link{font-size:14px;display:inline-flex;gap:20px;border-bottom:1px solid var(--ink);padding:10px 0;white-space:nowrap}.placeholder{position:relative;overflow:hidden;isolation:isolate}.hero-media{background:var(--yellow);border-radius:30px;min-height:460px;align-self:stretch}.placeholder-tag{position:absolute;top:24px;left:24px;display:inline-flex;align-items:center;gap:8px;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;border:1px solid currentColor;border-radius:100px;padding:8px 11px;opacity:.65}.placeholder-tag:before{content:'+';font-size:16px;font-weight:400;line-height:10px}.media-caption{position:absolute;left:32px;bottom:34px;right:25px;display:flex;flex-direction:column;gap:20px}.media-caption>span{font-size:clamp(28px,3.2vw,48px);letter-spacing:-.045em;line-height:1.1}.media-caption small{font-size:12px}.signal{display:inline-block;background:var(--yellow);border:2px solid var(--ink);border-radius:50%;height:23px;width:23px;flex-shrink:0}.hero-signal{position:absolute;right:32px;top:50%;background:var(--ink);height:14px;width:14px}.opening-note{position:absolute;bottom:17px;left:calc(var(--gutter) - 12px);font-size:11px;letter-spacing:.04em}.section-pad{padding:110px var(--gutter)}.introduction{min-height:85svh;display:flex;flex-direction:column;justify-content:center}.introduction h2{margin:35px 0 60px;font-size:clamp(58px,8vw,120px)}.intro-bottom{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:start}.intro-bottom>p:first-child{font-size:26px;line-height:1.3;letter-spacing:-.025em}.intro-bottom>p:last-child{max-width:420px;font-size:18px}.prototype-note{font-size:12px;color:var(--muted);margin-top:45px}.persona{height:120svh;padding:0 14px}.persona-stage{position:sticky;top:20px;min-height:680px;height:calc(100svh - 40px);display:grid;grid-template-columns:1fr 1fr;gap:6vw;padding:35px calc(var(--gutter) - 14px);align-items:center}.persona-copy{padding:16px 0;max-width:590px}.persona-copy .eyebrow{display:flex;align-items:center;gap:10px}.tiny-signal{width:9px;height:9px;border-radius:50%;background:var(--ink)}.persona h2{margin:30px 0;font-size:clamp(48px,5.5vw,84px)}.persona blockquote{font-size:clamp(20px,2vw,29px);line-height:1.4;letter-spacing:-.025em;max-width:530px}.attribution{font-size:14px;font-weight:650;margin-top:25px}.attribution span{font-weight:400;color:var(--muted);display:block;margin-top:4px}.meaning{margin-top:35px;padding-top:22px;border-top:1px solid var(--track);display:grid;grid-template-columns:.85fr 1fr;gap:15px}.meaning>span{font-size:12px;color:var(--muted);padding-top:4px}.meaning p{font-size:18px;line-height:1.4}.persona-media{height:100%;max-height:760px;min-height:480px;background:var(--desk);border-radius:28px;transform:translateY(var(--media-y,0px));transition:background .3s}.place-name{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);text-align:center;font-size:clamp(28px,3.7vw,60px);font-weight:500;letter-spacing:-.055em;opacity:.45}.scene-direction{position:absolute;left:28px;bottom:78px;font-size:18px;line-height:1.4}.scene-footer{position:absolute;bottom:25px;left:28px;right:28px;display:flex;justify-content:space-between;border-top:1px solid #26262630;padding-top:16px;font-size:12px}.reverse .persona-copy{grid-column:2;grid-row:1}.reverse .persona-media{grid-column:1;grid-row:1}.peter{background:#DDD8CB}.michelle{background:var(--pink)}.priya{background:var(--orange)}.rachel{background:var(--green)}.tom-media{background:var(--yellow)}.tom h2{font-size:clamp(45px,5vw,75px)}.connection{background:var(--ink);color:var(--paper);height:150svh;margin:80px 12px 0;border-radius:30px}.connection-stage{position:sticky;top:0;min-height:680px;height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:60px var(--gutter);overflow:hidden}.connection h2{margin:35px 0 65px;font-size:clamp(48px,7vw,105px)}.connection h2 em{color:var(--yellow)}.people-network{display:grid;grid-template-columns:repeat(6,1fr);width:100%;max-width:1180px;position:relative}.network-person{position:relative;padding-bottom:35px;border-bottom:1px solid #ebe46e70}.network-person:after{content:'';position:absolute;bottom:-6px;left:calc(50% - 5px);width:10px;height:10px;border-radius:50%;background:var(--yellow)}.network-person>span{font-size:23px;letter-spacing:-.03em}.network-person small{display:block;color:#c7c4bb;font-size:12px;margin-top:9px}.network-centre{display:flex;flex-direction:column;align-items:center;gap:17px;font-size:22px;letter-spacing:-.025em}.network-centre:before{content:'';width:1px;height:55px;background:#ebe46e70}.network-centre .signal{border:0;background:transparent}.connection-description{max-width:560px;font-size:17px;color:#c7c4bb;margin-top:24px}.framework{padding-top:150px;padding-bottom:150px}.framework h2{margin-top:35px}.flow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:80px}.step-line{display:block;border-top:1px solid var(--ink);position:relative;margin-bottom:32px}.step-line:before{content:'';position:absolute;top:-5px;left:0;width:8px;height:8px;border-radius:50%;background:var(--ink)}.flow-steps h3{font-size:30px;letter-spacing:-.045em;margin-bottom:16px}.flow-steps p{font-size:16px;max-width:280px;color:var(--muted)}.framework-note{font-size:12px;margin-top:35px;color:var(--muted)}.capabilities{background:var(--desk);border-radius:30px;margin:0 12px}.capabilities-heading h2{font-size:clamp(40px,5vw,72px);margin:30px 0}.capabilities-heading>p:last-child{font-size:18px;margin-bottom:60px}.capability-list article{display:grid;grid-template-columns:65px 1fr 220px;gap:20px;border-top:1px solid #26262630;padding:35px 0}.cap-index{font-size:12px;padding-top:8px}.capability-list h3{font-size:30px;letter-spacing:-.04em;margin-bottom:15px}.capability-list p{max-width:550px;font-size:17px;color:var(--muted)}.cap-label{font-size:12px;text-align:right;padding-top:10px}.finale{padding-top:150px;padding-bottom:30px}.finale h2{font-size:clamp(50px,7vw,110px);margin:30px 0 85px}.finale h2 em{position:relative}.registration-layout{display:grid;grid-template-columns:1fr 1fr;gap:9vw}.registration-intro>p{font-size:35px;line-height:1.15;letter-spacing:-.04em}.registration-intro>span{display:block;font-size:18px;line-height:1.6;max-width:350px;margin-top:28px}form h3{font-size:26px;letter-spacing:-.035em}.form-notice{font-size:13px;margin:18px 0 28px;color:var(--muted);max-width:500px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;margin-bottom:23px;line-height:1.5}input:not([type=checkbox]),select{display:block;width:100%;padding:13px 0;margin-top:5px;background:transparent;border:0;border-bottom:1px solid var(--ink);border-radius:0;color:var(--ink);min-height:48px;font-size:16px}select{padding-right:25px}.optional{color:var(--muted)}.consent{display:flex;align-items:flex-start;gap:12px;margin-top:30px}.consent input{width:20px;height:20px;accent-color:var(--ink);margin:0;flex-shrink:0}.privacy-note{font-size:12px;color:var(--muted);margin:-8px 0 22px}.submit{width:100%;background:var(--yellow);color:var(--ink)}.submit:hover{background:var(--yellow);box-shadow:inset 0 0 0 1px var(--ink)}#form-status{font-size:14px;margin-top:15px;min-height:42px}footer{display:flex;align-items:center;justify-content:space-between;margin-top:100px;border-top:1px solid var(--track);padding-top:30px}footer>span,footer>a:last-child{font-size:12px}.journey-progress{position:fixed;left:0;right:0;bottom:0;height:3px;z-index:20;pointer-events:none}.journey-progress span{display:block;height:100%;width:100%;background:var(--ink);transform:scaleX(var(--progress,0));transform-origin:left}
@media(min-width:1600px){.opening-stage{gap:6vw}.hero-bottom{max-width:610px}}
@media(max-width:1050px){.hero-bottom{display:block}.text-link{margin-top:20px}.opening-stage{min-height:680px}.persona-stage{gap:4vw}.persona h2{font-size:55px}.persona blockquote{font-size:23px}.meaning{display:block}.meaning p{margin-top:8px}.capability-list article{grid-template-columns:40px 1fr}.cap-label{display:none}}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){html{scroll-padding-top:20px}.site-header{height:80px;padding:0 22px}.wordmark{font-size:25px}nav{gap:0}.nav-story,.nav-ecosystem{display:none}.button.small{font-size:12px;gap:16px;padding:10px 16px}.opening{height:auto;padding:0 12px}.opening-stage{position:relative;top:0;height:auto;min-height:0;display:flex;flex-direction:column;padding:110px 10px 45px;gap:35px;transform:none!important}.hero-copy{padding:0}.hero-copy h1{font-size:clamp(51px,10vw,72px);margin-top:26px}.hero-bottom{margin-top:28px}.hero-bottom p{font-size:17px}.hero-media{height:360px;min-height:0;width:100%;border-radius:24px}.media-caption>span{font-size:35px}.opening-note{left:10px;bottom:10px;font-size:10px}.section-pad{padding:85px 22px}.introduction{min-height:0}.introduction h2{font-size:49px;margin:27px 0 35px}.intro-bottom{grid-template-columns:1fr;gap:25px}.intro-bottom>p:first-child{font-size:23px}.intro-bottom>p:last-child{font-size:17px}.prototype-note{font-size:11px;margin-top:27px}.persona{height:auto;padding:0 22px;margin-bottom:75px}.persona-stage{position:relative;top:0;height:auto;min-height:0;display:flex;flex-direction:column;padding:0;gap:28px;align-items:stretch}.persona-copy{padding:0}.persona h2,.tom h2{font-size:52px;margin:25px 0}.persona blockquote{font-size:23px;line-height:1.45}.attribution{margin-top:23px}.meaning{margin-top:26px;padding-top:20px;display:grid;grid-template-columns:1fr 1fr}.meaning p{font-size:16px;margin:0}.persona-media{height:380px;min-height:0;border-radius:24px;transform:none!important}.place-name{font-size:44px}.scene-direction{font-size:17px}.connection{height:auto;margin:0 12px;border-radius:24px}.connection-stage{position:relative;height:auto;min-height:0;padding:70px 22px}.connection h2{font-size:43px;margin:27px 0 40px}.people-network{grid-template-columns:repeat(2,1fr);gap:25px 12px}.network-person{padding-bottom:18px}.network-person:last-child{grid-column:auto}.network-person>span{font-size:21px}.network-person small{font-size:11px}.network-centre:before{height:35px}.network-centre{font-size:21px}.connection-description{font-size:16px}.framework h2{font-size:44px;margin-top:25px}.flow-steps{grid-template-columns:1fr 1fr;gap:45px 25px;margin-top:45px}.flow-steps h3{font-size:25px}.flow-steps p{font-size:15px}.step-line{margin-bottom:20px}.capabilities{padding:60px 22px;border-radius:24px}.capabilities-heading h2{font-size:39px}.capabilities-heading>p:last-child{font-size:16px;margin-bottom:35px}.capability-list article{grid-template-columns:25px 1fr;gap:10px;padding:28px 0}.capability-list h3{font-size:25px}.capability-list p{font-size:16px}.finale h2{font-size:48px;margin:26px 0 45px}.registration-layout{grid-template-columns:1fr;gap:45px}.registration-intro>p{font-size:30px}.registration-intro>span{font-size:17px;max-width:100%;margin-top:20px}.form-row{grid-template-columns:1fr;gap:0}footer{margin-top:50px;flex-wrap:wrap;gap:25px}footer>span{display:none}.eyebrow{font-size:11px}.placeholder-tag{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}.opening,.persona,.connection{height:auto}.opening-stage,.persona-stage,.connection-stage{position:relative;transform:none!important;height:auto;min-height:0}.opening-stage{padding-bottom:65px}.persona-stage{padding-top:60px;padding-bottom:60px}.persona-media{height:650px;transform:none!important}.connection-stage{padding-top:100px;padding-bottom:100px}}

/* Horizontal questions journey */
.questions{padding:120px var(--gutter)}
.questions-track{display:grid;gap:20px}
.question-title-panel{min-height:70svh;display:flex;flex-direction:column;justify-content:center}
.question-title-panel h2{font-size:clamp(62px,8.5vw,132px);margin:34px 0 50px}
.question-title-panel h2 span{display:block;white-space:nowrap}
.question-title-panel>p:last-child{font-size:clamp(22px,2vw,30px);line-height:1.3;letter-spacing:-.03em;max-width:600px}
.prevention-view{min-height:70svh;display:grid;grid-template-columns:minmax(560px,.9fr) minmax(520px,.92fr);gap:clamp(72px,8vw,150px);align-items:center;color:var(--ink)}
.prevention-view-title{align-self:center}
.prevention-view h2{margin:28px 0 0;font-size:clamp(60px,7.4vw,118px);line-height:.94;letter-spacing:.005em;text-transform:uppercase}
.prevention-view h2 span,.prevention-view h2 em{color:var(--green)}
.prevention-view-body{display:grid;gap:22px;max-width:760px;font-size:clamp(18px,1.28vw,24px);line-height:1.42;letter-spacing:-.025em}
.prevention-view-body p{max-width:720px}
.question-card{min-height:620px;border-radius:28px;padding:32px;display:flex;flex-direction:column;justify-content:space-between;color:var(--ink)}
.question-yellow{background:var(--yellow)}.question-pink{background:var(--pink)}.question-green{background:var(--green)}
.question-card-top{display:flex;justify-content:space-between;text-transform:uppercase;font-size:11px;letter-spacing:.12em;font-weight:650}
.question-card h3{font-size:clamp(42px,4vw,68px);line-height:1.05;letter-spacing:-.055em;max-width:590px}
.question-answer{border-top:1px solid #26262655;padding-top:23px;display:grid;grid-template-columns:150px 1fr;gap:25px;align-items:start}
.question-answer span{text-transform:uppercase;font-size:11px;letter-spacing:.1em;font-weight:650;padding-top:4px}
.question-answer p{font-size:19px;line-height:1.4;letter-spacing:-.018em}
.question-bridge{min-height:620px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:40px}
.question-bridge h2{font-size:clamp(46px,5vw,78px);line-height:1.08}
.question-bridge>span{font-size:17px;margin-top:38px;border-bottom:1px solid var(--ink);padding-bottom:8px}
.question-bridge small{font-size:11px;color:var(--muted);margin-top:45px;max-width:none;line-height:1.5;white-space:nowrap}

/* One pinned stage for all six personas */
.personas{padding:110px 0 20px}
.personas-stage{display:block}
.persona-deck{min-width:0}
.persona-panel{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(420px,1.18fr);gap:4vw;align-items:center;margin-bottom:90px}
.persona-panel .persona-copy{max-width:530px}
.persona-panel .persona-copy .eyebrow{display:flex;align-items:center;gap:10px}
.persona-panel h3{font-size:clamp(48px,5vw,78px);line-height:1.02;letter-spacing:-.06em;margin:28px 0}
.persona-panel #sarah-title{white-space:normal}
.persona-panel .sarah .scene-direction{white-space:nowrap}
.persona-panel h3 em{font-style:normal}
.persona-panel blockquote{font-size:clamp(20px,1.8vw,28px);line-height:1.4;letter-spacing:-.025em;max-width:520px}
.persona-panel .persona-media{height:70svh;max-height:760px;min-height:540px}
.persona-photo-card{position:relative;overflow:hidden;background:var(--ink);color:var(--paper);isolation:isolate}
.persona-photo-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:58% 44%;transform:scale(1.03);filter:saturate(.94) contrast(1.03)}
.persona-photo-card.peter img{object-position:46% 45%;transform:scale(1.04)}
.persona-photo-card.tom-media img{object-position:42% 46%;transform:scale(1.04)}
.persona-photo-card.michelle img{object-position:42% 45%;transform:scale(1.04)}
.persona-photo-card.priya img{object-position:42% 45%;transform:scale(1.04)}
.persona-photo-card.rachel img{object-position:40% 45%;transform:scale(1.04)}
.persona-photo-card .persona-photo-wash{position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(38,38,38,.62) 0%,rgba(38,38,38,.20) 43%,rgba(235,228,110,.16) 100%),radial-gradient(circle at 16% 24%,rgba(114,165,138,.62),transparent 38%),linear-gradient(0deg,rgba(38,38,38,.64) 0%,transparent 42%);mix-blend-mode:multiply}
.persona-photo-card .scene-direction,.persona-photo-card .scene-footer,.persona-photo-card .persona-signal-dot{z-index:2}
.persona-photo-card .scene-direction{bottom:104px;max-width:360px;color:var(--paper);text-shadow:0 12px 32px rgba(0,0,0,.42)}
.persona-photo-card .scene-footer{bottom:44px;color:var(--paper);border-color:rgba(244,241,233,.36)}
.persona-signal-dot{position:absolute;right:30px;top:30px;width:18px;height:18px;border-radius:999px;background:var(--green);box-shadow:0 0 0 12px rgba(114,165,138,.18),0 18px 44px rgba(0,0,0,.24)}
.persona-photo-card::after{content:'';position:absolute;z-index:2;right:28px;bottom:92px;width:44px;height:3px;background:rgba(244,241,233,.86)}

@media (min-width:1051px){
  .question-bridge h2{font-size:78px}
  #peter h3{font-size:78px}
}

@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .questions{height:1040svh;padding:0;overflow:clip}
  .js .questions-stage{position:sticky;top:0;height:100svh;overflow:hidden}
  .js .questions-track{position:relative;z-index:1;display:flex;align-items:center;width:max-content;height:100%;padding:0 var(--gutter);gap:22px;opacity:var(--question-track-opacity,1);transform:translate3d(var(--question-shift,0),0,0);will-change:transform,opacity;transition:opacity .28s ease}
  .js .questions-track::after{content:'';flex:0 0 calc(100vw - min(52vw,760px) - var(--gutter))}
  .js .prevention-view{width:min(190vw,3000px);height:100%;min-height:0;flex-shrink:0;padding-right:12vw;display:flex;align-items:center;gap:clamp(90px,10vw,180px)}
  .js .prevention-view-title{align-self:center;width:calc(100vw - (var(--gutter) * 2));flex:0 0 calc(100vw - (var(--gutter) * 2));min-height:100%;display:flex;flex-direction:column;justify-content:center;opacity:var(--prevention-title-opacity,1);transform:translate3d(calc(var(--prevention-title-shift,0) * -1vw),0,0);will-change:transform,opacity}
  .js .prevention-view-title h2{max-width:min(1120px,88vw);font-size:clamp(70px,9vw,138px)}
  .js .prevention-view-body{width:min(54vw,820px);max-width:820px;align-self:center;flex:0 0 min(54vw,820px);opacity:var(--prevention-body-opacity,0);transform:translate3d(calc((1 - var(--prevention-body-opacity,0)) * 44px),0,0);will-change:transform,opacity}
  .js .prevention-view,.js .question-card{opacity:var(--question-cards-opacity,1);transition:opacity .34s ease}
  .js .question-card{width:min(46vw,690px);height:68svh;min-height:590px;max-height:780px;flex-shrink:0}
  .js .question-bridge{position:relative;z-index:7;width:min(58vw,860px);height:100svh;min-height:0;flex-shrink:0;margin-left:clamp(58px,7vw,124px);justify-content:flex-start;padding-top:clamp(82px,8svh,112px);transform:translate3d(0,var(--bridge-lift,0px),0);transform-origin:left top;will-change:transform,opacity}
  .js .personas{position:absolute;z-index:2;inset:0;height:100%;padding:0;opacity:var(--persona-deck-opacity,0);pointer-events:none;will-change:opacity;transition:opacity .42s ease}
  .js .personas-stage{position:absolute;inset:0;height:100%;min-height:720px;padding:0 var(--gutter);display:block;overflow:hidden}
  .js .persona-deck{position:relative;height:100%;min-height:610px}
  .js .persona-progress{display:flex;position:absolute;z-index:8;left:calc(var(--gutter) + 40px);bottom:52px;width:min(310px,34vw);opacity:var(--persona-deck-opacity,0);transition:opacity .2s linear}
  .js .persona-panel{position:absolute;inset:0;margin:0;padding:92px 0 52px;grid-template-columns:minmax(430px,.88fr) minmax(540px,1.12fr);gap:5vw;opacity:0;transform:none;translate:0 38px;scale:1;pointer-events:none;visibility:hidden;transition:opacity .16s ease,translate .25s ease,visibility 0s linear .25s}
  .js .persona-panel .persona-copy{align-self:end;margin-left:40px;margin-bottom:18px}
  .js .persona-panel h3{margin:18px 0}
  .js .persona-panel blockquote{line-height:1.35}
  .js .persona-panel .attribution{margin-top:16px}
  .js .persona-panel .meaning{margin-top:20px;padding-top:14px}
  .js .persona-panel .persona-media{align-self:center;height:66svh;max-height:760px}
  .js .persona-panel.is-active{opacity:1;transform:none;translate:0 0;scale:1;pointer-events:auto;visibility:visible;transition:opacity .45s ease,translate .6s cubic-bezier(.2,.75,.25,1),visibility 0s;transition-delay:0s}
  .js .persona-panel.is-active .persona-media{animation:personaMediaIn .75s cubic-bezier(.2,.75,.25,1) both}
  .journey-initializing .persona-panel,.journey-initializing .persona-panel .persona-media{transition:none!important;animation:none!important}
  @keyframes personaMediaIn{from{clip-path:inset(5% 0 0 0 round 28px);transform:translateY(18px)}to{clip-path:inset(0 0 0 0 round 28px);transform:translateY(0)}}
}

@media(max-width:1050px) and (min-width:701px){
  .js .persona-panel{grid-template-columns:minmax(300px,.88fr) minmax(360px,1.12fr);gap:3vw}
  .persona-panel h3{font-size:54px}.persona-panel blockquote{font-size:21px}
  .question-answer{grid-template-columns:120px 1fr}
}

@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .questions{padding:85px 22px}
  .question-title-panel{min-height:0;margin-bottom:34px}
  .question-title-panel h2{font-size:49px;margin:25px 0 30px}
  .question-title-panel h2 span{white-space:normal}
  .question-title-panel>p:last-child{font-size:22px}
  .question-card{min-height:510px;padding:25px;border-radius:24px}
  .question-card h3{font-size:40px}
  .question-answer{grid-template-columns:1fr;gap:10px}
  .question-answer p{font-size:17px}
  .question-bridge{min-height:430px;padding:20px 0}
  .question-bridge h2{font-size:46px}
  .personas{padding:80px 0 20px}
  .personas-stage{display:block}
  .persona-panel{display:flex;flex-direction:column;margin-bottom:95px;gap:28px;scroll-margin-top:30px}
  .persona-panel h3{font-size:52px;margin:24px 0}
  .persona-panel #sarah-title{font-size:52px}
  .persona-panel .sarah .scene-direction{white-space:normal}
  .persona-panel blockquote{font-size:22px}
  .persona-panel .persona-media{height:390px;min-height:0;width:100%;order:-1}
  .persona-panel .meaning{display:grid;grid-template-columns:1fr 1fr}
}

@media(prefers-reduced-motion:reduce){
  .questions,.personas{height:auto!important;overflow:visible!important}
  .questions-stage,.personas-stage{position:relative!important;height:auto!important;min-height:0!important;overflow:visible!important}
  .questions-track{transform:none!important}
  .persona-panel{position:relative!important;opacity:1!important;visibility:visible!important;transform:none!important;pointer-events:auto!important}
}

/* Staged ecosystem reveal */
.connection-line{display:block}
.ecosystem-focus{display:flex;flex-direction:column;align-items:center;transform-origin:center center}
.network-centre strong{font-family:'Anton',Impact,sans-serif;font-size:clamp(22px,2.2vw,34px);font-weight:400;letter-spacing:.01em;text-transform:uppercase}
.ecosystem-spoken-title{display:grid;width:min(1180px,92vw);min-height:1.05em;place-items:center}
.ecosystem-title-frame{grid-area:1/1;display:block;white-space:nowrap;opacity:0;filter:blur(7px);transform:translateY(22px) scale(.94);transition:opacity .3s ease,filter .4s ease,transform .46s cubic-bezier(.2,.8,.2,1)}
.ecosystem-title-frame>span{display:inline-block;opacity:0;filter:blur(8px);transform:translateY(.42em) scale(.9);transition:opacity .24s ease,filter .36s ease,transform .42s cubic-bezier(.2,.8,.2,1)}
.ecosystem-title-final,.ecosystem-title-final>span{opacity:1;filter:blur(0);transform:none}
.connection[data-focus-word] .ecosystem-title-frame{opacity:0;filter:blur(7px);transform:translateY(-18px) scale(.96)}
.connection[data-focus-word] .ecosystem-title-frame>span{opacity:0;filter:blur(8px);transform:translateY(.42em) scale(.9)}
.connection[data-focus-word^="story"] .ecosystem-title-story,.connection[data-focus-word^="lives"] .ecosystem-title-lives,.connection[data-focus-word^="ecosystem"] .ecosystem-title-final{opacity:1;filter:blur(0);transform:none}
.connection[data-focus-word="story-different"] .ecosystem-title-story>span:first-child,.connection[data-focus-word="story-complete"] .ecosystem-title-story>span,.connection[data-focus-word="lives-different"] .ecosystem-title-lives>span:first-child,.connection[data-focus-word="lives-complete"] .ecosystem-title-lives>span,.connection[data-focus-word="ecosystem-one"] .ecosystem-title-final>span:first-child,.connection[data-focus-word="ecosystem-connected"] .ecosystem-title-final>span:nth-child(-n+2),.connection[data-focus-word="ecosystem-complete"] .ecosystem-title-final>span{opacity:1;filter:blur(0);transform:none}
.signal-vector{display:block;width:23px;height:23px;overflow:visible}
.signal-vector circle{fill:var(--yellow)}

/* Horizontal information pathway */
.framework{position:relative;padding:130px var(--gutter);background:var(--yellow)}
.framework-stage{position:relative}
.framework-track{display:grid;gap:60px}
.framework-intro{min-height:70svh;display:flex;flex-direction:column;justify-content:center}
.framework-intro h2{font-size:clamp(58px,7.5vw,118px);margin:32px 0}
.framework-intro>p:last-child{font-size:20px;max-width:530px}
.framework-chapter{position:relative;min-height:620px;padding:38px;border-top:1px solid var(--ink);display:flex;flex-direction:column;justify-content:space-between}
.framework-data{background:var(--yellow)}
.framework-data .framework-number{background:#DDD8CB}
.framework-number{font-size:11px;letter-spacing:.12em;font-weight:650}
.framework-chapter h3{font-size:clamp(76px,10vw,155px);line-height:.92;letter-spacing:-.07em}
.framework-chapter>p{font-size:18px;max-width:430px}
.framework-chapter strong{font-size:clamp(34px,4vw,64px);line-height:1.05;letter-spacing:-.055em;font-weight:500}
.framework-signal{display:none}
.framework-note{font-size:11px;color:var(--muted);margin-top:35px}
.capabilities-stage{padding:110px var(--gutter)}

@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .connection{height:780svh}
  .js .connection-stage{justify-content:center;overflow:visible}
  .js .connection-eyebrow{opacity:calc(var(--connection-eyebrow,0) * (1 - var(--connection-context-exit,0)));transform:translateY(calc((1 - var(--connection-eyebrow,0)) * 18px));will-change:opacity,transform}
  .js .connection-line-one{opacity:calc(var(--connection-line-one,0) * (1 - var(--connection-context-exit,0)));transform:translateY(calc((1 - var(--connection-line-one,0)) * 34px)) scale(calc(.96 + var(--connection-line-one,0) * .04));will-change:opacity,transform}
  .js .connection-line-two{opacity:calc(var(--connection-line-two,0) * (1 - var(--connection-context-exit,0)));transform:translateY(calc((1 - var(--connection-line-two,0)) * 34px)) scale(calc(.96 + var(--connection-line-two,0) * .04));will-change:opacity,transform}
  .js .people-network{opacity:calc(var(--connection-network,0) * (1 - var(--connection-context-exit,0)));transform:translateY(calc((1 - var(--connection-network,0)) * 28px)) scale(calc(.96 + var(--connection-network,0) * .04));will-change:opacity,transform}
  .js .ecosystem-focus{width:100%;opacity:var(--connection-focus,0);transform:translateY(calc((1 - var(--connection-focus,0)) * 26px - var(--connection-zoom,0) * 200px));will-change:opacity,transform}
  .js .network-centre:before{opacity:calc(var(--connection-network,0) * (1 - var(--connection-context-exit,0)));transition:opacity .16s linear}
  .js .network-centre .signal{opacity:var(--connection-focus,0)}
  .js .network-centre strong,.js .connection-description{opacity:calc(var(--connection-focus,0) * var(--connection-copy,0))}
  .js .network-centre .signal{position:relative;z-index:5;transform:none}
  .js .signal-vector{position:absolute;left:50%;top:50%;width:var(--connection-wash-size,23px);height:var(--connection-wash-size,23px);transform:translate(-50%,-50%);will-change:width,height}
  .js .network-centre strong{font-size:clamp(34px,calc(2.2vw + var(--connection-zoom,0) * 4.4vw),105px);line-height:1;will-change:font-size}
  .js .connection-description{max-width:720px;font-size:calc(17px + var(--connection-zoom,0) * 3px)}

  .js .framework{z-index:2;height:560svh;padding:0;overflow:clip}
  .js .framework-stage{position:sticky;top:0;height:100svh;overflow:hidden}
  .js .framework-track{position:relative;z-index:2;display:flex;align-items:center;width:max-content;height:100%;gap:0;padding:0 var(--gutter);transform:translate3d(var(--framework-shift,0),0,0);will-change:transform}
  .js .framework-intro{width:min(90vw,1400px);height:100%;min-height:0;flex-shrink:0;padding-right:8vw}
  .js .framework-intro h2{font-size:clamp(72px,8.7vw,138px)}
  .js .framework-intro>p:last-child{max-width:none;white-space:nowrap}
  .js .framework-chapter{width:min(66vw,1080px);height:72svh;min-height:640px;max-height:830px;flex-shrink:0;border-top:0;border-left:1px solid #26262655;padding:35px clamp(58px,6vw,92px) 42px}
  .js .framework-chapter h3{font-size:clamp(72px,8.7vw,138px)}
  .js .framework-final{width:min(95vw,1500px)}
  .js .framework-final h3{font-size:clamp(72px,8.7vw,138px);white-space:nowrap}
  .js .framework-signal{display:block;position:absolute;z-index:1;left:0;right:0;bottom:0;width:100%;height:50%;overflow:visible;pointer-events:none}
  .js .signal-guide,.js .signal-progress{fill:none;vector-effect:non-scaling-stroke}
  .js .signal-guide{stroke:var(--track);stroke-width:2}
  .js .signal-progress{stroke:var(--pink);stroke-width:2;stroke-dasharray:1000;stroke-dashoffset:1000}
  .js .framework-note{position:absolute;z-index:3;right:var(--gutter);bottom:24px;margin:0}

  .js .capabilities{height:520svh;padding:0;margin:0 12px}
  .js .capabilities-stage{position:sticky;top:12px;height:calc(100svh - 24px);padding:76px calc(var(--gutter) - 12px) 48px;overflow:hidden}
  .js .capabilities-heading{opacity:1;transform:none}
  .js .capabilities-heading h2{font-size:clamp(42px,4.4vw,68px);margin:24px 0}
  .js .capabilities-heading>p:last-child{margin-bottom:36px}
  .js .capability-list article{padding:25px 0;opacity:var(--capability-opacity,.14);transform:translateX(var(--capability-shift,16px)) scale(var(--capability-scale,.985));transform-origin:left center;transition:opacity .2s linear,transform .35s cubic-bezier(.2,.75,.25,1);will-change:opacity,transform}
}

@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .connection-line{display:block}
  .ecosystem-focus{transform:none!important;opacity:1!important}
  .framework{padding:90px 22px}
  .framework-intro{min-height:0;margin-bottom:75px}
  .framework-intro h2{font-size:47px;margin:25px 0}
  .framework-intro>p:last-child{font-size:18px}
  .framework-track{gap:70px}
  .framework-chapter{min-height:520px;padding:25px 0;border-top:1px solid var(--ink)}
  .framework-chapter h3{font-size:78px}
  .framework-chapter>p{font-size:17px}
  .framework-chapter strong{font-size:38px}
  .framework-signal{display:none!important}
  .capabilities{padding:0;border-radius:24px}
  .capabilities-stage{padding:60px 22px}
}

@media(prefers-reduced-motion:reduce){
  .connection-eyebrow,.connection-line,.people-network,.ecosystem-focus,.connection-description{opacity:1!important;transform:none!important}
  .framework{height:auto!important;overflow:visible!important}
  .framework-stage{position:relative!important;height:auto!important;overflow:visible!important}
  .framework-track{transform:none!important}
  .framework-signal{display:none!important}
  .capabilities{height:auto!important}
  .capabilities-stage{position:relative!important;height:auto!important;overflow:visible!important}
  .capabilities-heading,.capability-list article{opacity:1!important;transform:none!important}
}

/* Approved Biomorphik wordmark */
.wordmark{display:inline-flex;align-items:center;width:190px;height:44px;line-height:0;white-space:nowrap}
.wordmark img{display:block;width:100%;height:auto;max-height:100%;object-fit:contain;object-position:left center}
footer .wordmark{width:210px}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.wordmark,footer .wordmark{width:155px;height:36px}}

/* App design-system typography and colour accents */
h1,h2,h3{font-family:'Anton',Impact,sans-serif;font-weight:400;text-transform:uppercase;letter-spacing:.022em!important;word-spacing:.055em!important;font-kerning:normal;text-rendering:optimizeLegibility}
.hero-copy h1 em{color:var(--green)}
.finale h2 em{color:var(--orange)}
.chip-row{display:flex;flex-wrap:wrap;gap:4px;align-items:center}
.chip,.placeholder-tag,.image-coming,.answer-number,.cap-path span,.question-card-top span,.meaning>span,.sarah-detail>span{display:inline-flex;align-items:center;width:fit-content;padding:7px 12px;border:0;border-radius:0;background:var(--desk);color:var(--ink);font-size:10.5px;font-weight:800;line-height:1;text-transform:uppercase;letter-spacing:.05em}
.chip.is-active,.cap-path span:first-child{background:var(--ink);color:var(--yellow)}
.hero-chip-row{margin:0 0 clamp(24px,3vh,36px)}
.perspective-kicker{margin-bottom:12px}
.framework-chip-row{margin:22px 0 30px}
.answers-chip-row{margin-top:18px}
.placeholder-tag:before{content:'+';margin-right:6px;font-size:14px;font-weight:800;line-height:1}
.framework-chapter:nth-of-type(1){--chapter-accent:var(--yellow)}
.framework-chapter:nth-of-type(2){--chapter-accent:var(--pink)}
.framework-chapter:nth-of-type(3){--chapter-accent:var(--green)}
.framework-chapter:nth-of-type(4){--chapter-accent:var(--orange)}
.framework-number{display:inline-flex;align-items:center;justify-content:center;width:auto;height:auto;padding:8px 12px;background:var(--chapter-accent,var(--yellow));border-radius:0;color:var(--ink);font-size:10.5px;font-weight:800;letter-spacing:.12em}
.capability-list article:nth-child(1){--capability-accent:var(--yellow)}
.capability-list article:nth-child(2){--capability-accent:var(--pink)}
.capability-list article:nth-child(3){--capability-accent:var(--green)}
.capability-list article:nth-child(4){--capability-accent:var(--orange)}
.cap-index{display:flex;align-items:center;justify-content:center;width:auto;height:auto;padding:8px 12px;background:var(--capability-accent);border-radius:0;color:var(--ink);font-size:10.5px;font-weight:800;letter-spacing:.12em}

/* Capability story: one full information layer per scroll chapter */
.capabilities{--capabilities-accent:var(--yellow);background:color-mix(in srgb,var(--capabilities-accent) 30%,var(--paper));transition:background-color .55s ease}
.capabilities-stage{display:grid;grid-template-columns:minmax(280px,.72fr) minmax(0,2fr);gap:clamp(28px,4vw,76px)}
.capabilities-heading{align-self:center;position:relative;z-index:5}
.capabilities-heading h2{font-size:clamp(48px,5.2vw,82px)!important;line-height:.98;margin:25px 0!important}
.capabilities-heading>p:last-of-type{max-width:310px;margin-bottom:28px!important}
.capability-progress{display:flex;align-items:center;gap:12px;max-width:310px;font-size:10px;font-weight:700;letter-spacing:.12em}
.capability-progress i{position:relative;display:block;height:2px;flex:1;background:#26262624;overflow:hidden}
.capability-progress i:after{content:'';position:absolute;inset:0;background:var(--ink);transform:scaleX(var(--capabilities-progress,0));transform-origin:left;transition:transform .18s linear}
.persona-progress{display:none;align-items:center;gap:12px;max-width:310px;font-size:10px;font-weight:700;letter-spacing:.12em}
.persona-progress i{position:relative;display:block;height:2px;flex:1;background:#26262624;overflow:hidden}
.persona-progress i:after{content:'';position:absolute;inset:0;background:var(--ink);transform:scaleX(var(--persona-progress,0));transform-origin:left;transition:transform .18s linear}
.sarah-answer-intro.has-sarah-poses>div p,.sarah-answer-intro.has-peter-poses>div p,.sarah-answer-intro.has-tom-poses>div p,.sarah-answer-intro.has-michelle-poses>div p,.sarah-answer-intro.has-priya-poses>div p,.sarah-answer-intro.has-rachel-poses>div p{color:#fff;text-shadow:0 10px 30px #101410d9}
.sarah-answer-intro.has-sarah-poses small,.sarah-answer-intro.has-peter-poses small,.sarah-answer-intro.has-tom-poses small,.sarah-answer-intro.has-michelle-poses small,.sarah-answer-intro.has-priya-poses small,.sarah-answer-intro.has-rachel-poses small{display:block;color:#fff;text-shadow:0 10px 30px #101410d9}
.capability-list{position:relative;min-width:0;height:100%}
.capability-list article.capability-panel{--capability-opacity:0;--capability-shift:38px;--capability-scale:.975;position:absolute;inset:0;display:grid;grid-template-columns:1fr;grid-template-rows:auto 1fr;gap:24px;padding:clamp(32px,3vw,52px);border:0;border-radius:28px;background:var(--capability-accent);opacity:var(--capability-opacity);transform:translateY(var(--capability-shift)) scale(var(--capability-scale));pointer-events:none;overflow:hidden;transition:opacity .22s linear,transform .45s cubic-bezier(.2,.75,.25,1)}
.capability-panel header{position:relative;padding-right:80px}
.capability-panel .cap-index{position:absolute;right:0;top:0;width:auto;height:auto;background:color-mix(in srgb,var(--paper) 68%,transparent)}
.capability-panel .eyebrow{margin-bottom:18px}
.capability-panel h3{font-size:clamp(52px,5vw,82px);line-height:.94;margin:0;max-width:930px}
.capability-panel .cap-lead{font-size:clamp(18px,1.45vw,24px);line-height:1.3;max-width:760px;margin-top:22px;color:var(--ink)}
.capability-body{align-self:end;display:grid;gap:20px;opacity:var(--capability-detail,0);transform:translateY(calc((1 - var(--capability-detail,0)) * 24px));transition:opacity .18s linear,transform .3s ease}
.cap-summary{font-size:16px;line-height:1.48;max-width:900px;color:var(--ink)}
.cap-audiences{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.cap-audiences section{padding:16px;border:1px solid #2626262b;border-radius:0;background:color-mix(in srgb,var(--paper) 42%,transparent)}
.cap-audiences h4{margin:0 0 8px;font-family:'Anton',Impact,sans-serif;font-size:17px;font-weight:400;text-transform:uppercase;letter-spacing:.035em}
.cap-audiences p{font-size:13px;line-height:1.42;color:var(--ink)}
.cap-path{display:flex;flex-wrap:wrap;align-items:center;gap:4px}
.cap-path span{gap:6px;background:color-mix(in srgb,var(--paper) 42%,transparent)}
.cap-path span:not(:last-child):after{content:'→';margin-left:4px}
.capability-body>strong{font-family:'Anton',Impact,sans-serif;font-size:clamp(22px,2vw,32px);font-weight:400;text-transform:uppercase;letter-spacing:.025em}

/* Personal Applications: one anchored product, three larger audience moments. */
.capability-apps{grid-template-rows:auto 1fr!important;gap:16px!important}
.capability-apps .capability-body{gap:0;align-self:stretch}
.capability-apps header .eyebrow{margin-bottom:10px}
.capability-apps h3{font-size:clamp(52px,3.8vw,64px)}
.capability-apps .cap-lead{margin-top:12px;font-size:clamp(17px,1.25vw,21px)}
.capability-apps .cap-summary,.capability-apps .cap-path,.capability-apps .capability-body>strong{display:none}
.cap-app-showcase{display:grid;grid-template-columns:minmax(330px,.78fr) minmax(0,1.22fr);align-items:stretch;gap:clamp(28px,3.5vw,64px);height:100%;min-height:650px}
.cap-phone{position:relative;width:min(100%,340px);aspect-ratio:176/384;align-self:center;margin:auto;border-radius:43px;overflow:hidden;background:var(--ink);box-shadow:0 30px 70px #2626263d;transform:translateY(calc((1 - var(--phone-presence,0)) * 26px)) scale(calc(.94 + var(--phone-presence,0) * .06));opacity:var(--phone-presence,0);transition:transform .5s cubic-bezier(.2,.75,.25,1),opacity .25s linear}
.cap-phone-screen{position:absolute;inset:0;display:grid;place-items:center;background:var(--paper);opacity:var(--app-screen-active,0);transform:translateY(calc((1 - var(--app-screen-active,0)) * 22px)) scale(calc(.975 + var(--app-screen-active,0) * .025));transition:opacity .38s linear,transform .58s cubic-bezier(.2,.75,.25,1)}
.cap-phone-screen img{display:block;width:100%;height:100%;object-fit:cover}
.cap-answer-media{position:relative;min-height:650px;border-radius:34px;overflow:hidden;background:var(--yellow)}
.cap-answer-media .cap-phone-screen img{object-fit:contain;padding:clamp(24px,4vw,58px)}
.capability-apps .cap-audiences{position:relative;display:block;min-height:650px}
.capability-apps .cap-audiences section{--audience-active:0;position:absolute;inset:0;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:0;padding:clamp(34px,4vw,64px);border:0;border-radius:34px;background:var(--ink);color:var(--paper);opacity:var(--audience-active);transform:translateY(calc((1 - var(--audience-active)) * 58px)) scale(calc(.97 + var(--audience-active) * .03));pointer-events:none;transition:opacity .32s linear,transform .58s cubic-bezier(.2,.75,.25,1)}
.capability-apps .cap-audiences section:nth-child(2){background:var(--green)}
.capability-apps .cap-audiences section:nth-child(3){background:var(--pink);color:var(--ink)}
.capability-apps .cap-audiences section>span{display:grid;place-items:center;width:54px;height:54px;margin-bottom:auto;border:1px solid currentColor;border-radius:50%;font-size:12px;font-weight:700;letter-spacing:.08em}
.capability-apps .cap-audiences h4{max-width:620px;margin:0 0 22px;font-size:clamp(42px,4.2vw,70px);line-height:.94;color:inherit}
.capability-apps .cap-audiences p{max-width:620px;font-size:clamp(18px,1.45vw,24px);line-height:1.35;color:inherit}

@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .capabilities{height:900svh}
  .js .capabilities-stage{display:block;padding:56px calc(var(--gutter) - 12px)}
  .js .capability-list article.capability-panel{padding:clamp(30px,2.6vw,48px)}
  .js .capabilities-heading{position:absolute;z-index:8;top:clamp(64px,8vh,98px);left:calc(var(--gutter) - 12px);width:min(37vw,540px);align-self:auto}
  .js .capabilities-heading h2{font-size:clamp(54px,5vw,78px)!important;line-height:.98;margin:22px 0!important}
  .js .capabilities-heading>p:last-of-type{margin-bottom:20px!important}
  .js .capability-list{position:absolute;inset:0}
  .js .capability-list article.capability-panel:not(.capability-apps){inset:0 0 0 31%;height:auto}
  .js .capability-apps{inset:0!important;display:block!important;padding:0!important;background:transparent!important;border-radius:0!important;overflow:hidden}
  .js .capability-apps>header{display:none}
  .js .capability-apps .capability-body{position:absolute;inset:0;display:block;height:auto;min-height:0;opacity:1;transform:none}
  .js .capability-apps .cap-app-showcase{position:static;display:block;height:auto;min-height:0}
  .js .capability-apps .cap-answer-media{position:absolute;z-index:3;top:42px;right:calc(var(--gutter) - 12px);bottom:42px;width:54%;min-height:0;border-radius:28px;background:var(--yellow);opacity:1}
  .js .capability-apps .cap-answer-media .cap-phone-screen{inset:0;background:var(--yellow)}
  .js .capability-apps .cap-answer-media .cap-phone-screen img{width:100%;height:100%;padding:clamp(28px,4vh,56px);object-fit:contain}
  .js .capability-apps .cap-audiences{position:absolute;left:calc(var(--gutter) - 12px);bottom:clamp(58px,8vh,96px);width:min(37vw,540px);min-height:270px}
  .js .capability-apps .cap-audiences section{justify-content:flex-end;padding:0;border-radius:0;background:transparent!important;color:var(--ink)!important;transform:translateY(calc((1 - var(--audience-active)) * 38px));transform-origin:left bottom;transition:opacity .16s linear,transform .45s cubic-bezier(.2,.75,.25,1)}
  .js .capability-apps .cap-audiences section>span{width:auto;height:auto;margin:0 0 18px;border:0;border-radius:0;font-size:11px}
  .js .capability-apps .cap-audiences section>span:after{content:'  ·  ANSWER IN THE APP';white-space:pre;color:var(--muted)}
  .js .capability-apps .cap-audiences h4{max-width:520px;margin:0 0 18px;font-size:clamp(48px,5vw,78px);line-height:.94}
  .js .capability-apps .cap-audiences p{max-width:500px;font-size:clamp(19px,1.55vw,25px);line-height:1.4}
}

@media(max-width:1050px){
  .capabilities-stage{grid-template-columns:250px minmax(0,1fr);gap:24px}
  .capability-panel h3{font-size:clamp(42px,5vw,62px)}
  .cap-audiences{grid-template-columns:1fr}
  .cap-audiences section{padding:12px 14px}
  .cap-audiences p{font-size:12px}
  .cap-app-showcase{grid-template-columns:280px minmax(0,1fr);gap:22px;min-height:590px}
  .capability-apps .cap-audiences{min-height:590px}
  .capability-apps .cap-audiences section{padding:34px}
  .capability-apps .cap-audiences h4{font-size:42px}
}

@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .capabilities-stage{display:block}
  .capability-progress{display:none}
  .capability-list{height:auto;display:grid;gap:18px}
  .capability-list article.capability-panel{position:relative;inset:auto;display:block;opacity:1!important;transform:none!important;pointer-events:auto;padding:28px 22px;border-radius:22px;overflow:visible}
  .capability-panel header{padding-right:54px}
  .capability-panel h3{font-size:42px}
  .capability-panel .cap-lead{font-size:18px}
  .capability-body{opacity:1!important;transform:none!important;margin-top:32px}
  .cap-audiences{grid-template-columns:1fr}
  .cap-summary{font-size:15px}
  .capability-apps .cap-summary,.capability-apps .cap-path,.capability-apps .capability-body>strong{display:none}
  .cap-app-showcase{grid-template-columns:1fr;height:auto;min-height:0;margin-top:24px}
  .cap-answer-media{min-height:620px;margin-top:24px}
  .cap-answer-media .cap-phone-screen:first-child{opacity:1!important;transform:none!important}
  .cap-phone{width:min(82vw,290px);opacity:1!important;transform:none!important}
  .cap-phone-screen:first-child{opacity:1!important;transform:none!important}
  .capability-apps .cap-audiences{display:grid;gap:12px;min-height:0}
  .capability-apps .cap-audiences section{position:relative;inset:auto;min-height:340px;opacity:1!important;transform:none!important}
}

/* Sarah answer journey: one persistent persona, three scroll-led answers. */
.answers-overview h2{margin:0!important;font-size:clamp(48px,4.2vw,68px)!important;line-height:.98}
.answers-link{display:inline-block;margin:18px 0 0;padding-bottom:7px;border-bottom:1px solid currentColor;font-size:15px;font-weight:600}
.answers-support{max-width:500px;margin-top:18px;font-size:11px;line-height:1.45;color:var(--muted)}
.sarah-story h3{margin:10px 0 0;font-family:'Anton',Impact,sans-serif;font-size:clamp(48px,4vw,66px);font-weight:400;line-height:.96;text-transform:uppercase;letter-spacing:.015em}
.sarah-story h3 em{font-style:normal;color:var(--green)}
.answer-persona-story{--persona-answer-active:0}
.answer-persona-story h3{margin:10px 0 0;font-family:'Anton',Impact,sans-serif;font-size:clamp(42px,3.6vw,60px);font-weight:400;line-height:.96;text-transform:uppercase;letter-spacing:.015em}
.answer-persona-story h3 em{font-style:normal;color:var(--green)}
.sarah-narrative blockquote{margin:22px 0 18px;max-width:550px;font-size:clamp(18px,1.42vw,25px);line-height:1.42}
.sarah-persona{display:grid;gap:4px;margin-top:18px;font-size:14px}
.sarah-persona strong{font-size:15px}
.sarah-persona span{color:var(--muted)}
.sarah-detail{display:grid;grid-template-columns:1fr 1.35fr;gap:18px;align-items:start;margin:22px 0 26px;padding-top:16px;border-top:1px solid #26262624;font-size:12px;color:var(--muted)}
.sarah-detail>span{background:var(--track);color:var(--ink);padding:7px 10px}
.sarah-detail strong{font-size:16px;line-height:1.35;font-weight:500;color:var(--ink)}
.sarah-answer-scene{display:flex;flex-direction:column;align-items:stretch;justify-content:space-between;padding:clamp(26px,3vw,48px)!important;background:#ddd8cb!important;color:var(--ink);transition:opacity .1s linear,transform .48s cubic-bezier(.2,.75,.25,1)}
.sarah-answer-scene:nth-child(-n+4){background:var(--desk)!important}
.sarah-answer-scene:nth-child(n+5):nth-child(-n+8){background:var(--track)!important}
.sarah-answer-scene:nth-child(n+9):nth-child(-n+12){background:var(--yellow)!important}
.sarah-answer-scene:nth-child(n+13):nth-child(-n+16){background:var(--pink)!important}
.sarah-answer-scene:nth-child(n+17):nth-child(-n+20){background:var(--orange)!important}
.sarah-answer-scene:nth-child(n+21):nth-child(-n+24){background:var(--green)!important}
.sarah-answer-scene .image-coming{align-self:flex-start;padding:7px 12px;border:0;border-radius:0;background:color-mix(in srgb,var(--paper) 58%,transparent);font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}
.sarah-answer-intro>strong{margin:auto;font-size:clamp(48px,5vw,82px);font-weight:400;color:#2626266c}
.sarah-answer-intro>div{display:grid;gap:18px;font-size:18px}
.sarah-answer-intro small{padding-top:15px;border-top:1px solid #26262625;font-size:11px}
.cap-phone-screen.answer-image-scene{isolation:isolate;overflow:hidden;background:#1f2924;color:var(--paper)}
.cap-phone-screen.answer-image-scene:after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#10141038 0%,#10141018 38%,#10141078 100%),linear-gradient(90deg,#10141040 0%,transparent 42%,#f4f1e930 100%)}
.cap-answer-media .cap-phone-screen.answer-image-scene .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.answer-image-scene .answer-scene-image{position:absolute;inset:0;width:100%;height:100%;padding:0!important;object-fit:cover!important;object-position:50% 48%;filter:saturate(.98) contrast(1.02)}
.cap-phone-screen.answer-image-scene>.answer-number,.cap-phone-screen.answer-image-scene>.image-coming,.cap-phone-screen.answer-image-scene>.answer-content{position:relative;z-index:1}
.cap-phone-screen.answer-image-scene>.answer-number,.cap-phone-screen.answer-image-scene>.image-coming{background:#f4f1e9e0;color:var(--ink);box-shadow:0 10px 24px #1014101a}
.cap-phone-screen.answer-image-scene .answer-content{color:#f4f1e9;text-shadow:0 10px 30px #101410a6}
.cap-phone-screen.answer-image-scene .answer-content .eyebrow{color:#fff;text-shadow:0 8px 24px #101410d9}.cap-phone-screen.answer-image-scene .answer-content{background:linear-gradient(180deg,#10141000 0%,#10141040 100%);padding-top:18px}
.cap-phone-screen.answer-image-scene .answer-content h3,.cap-phone-screen.answer-image-scene .answer-content strong{color:#f4f1e9}
.cap-phone-screen.answer-image-scene .answer-content h3{border-bottom-color:#f4f1e95c}
.cap-phone-screen.answer-image-scene>.answer-number{display:none}
.cap-phone-screen.has-sarah-results .answer-scene-image{object-position:45% 50%}
.cap-phone-screen.has-sarah-health-story .answer-scene-image{object-position:52% 50%}
.sarah-answer-intro.has-sarah-poses,.sarah-answer-intro.has-peter-poses,.sarah-answer-intro.has-tom-poses,.sarah-answer-intro.has-michelle-poses,.sarah-answer-intro.has-priya-poses,.sarah-answer-intro.has-rachel-poses{isolation:isolate;overflow:hidden;background:#1f2924!important;color:var(--paper)}
.sarah-answer-poses{position:absolute;inset:0;z-index:0;overflow:hidden;border-radius:inherit;background:#d7d1c4}
.sarah-answer-poses:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#10141052 0%,#1014101f 34%,#10141017 52%,#10141078 100%),linear-gradient(90deg,#10141057 0%,transparent 36%,#f4f1e942 100%)}
.sarah-answer-poses .sarah-pose,.cap-answer-media .cap-phone-screen .sarah-answer-poses img{position:absolute;inset:0;width:100%;height:100%;padding:0;object-fit:cover;object-position:56% 45%;opacity:0;transform:scale(1.035);filter:saturate(.96) contrast(1.02)}
.js .capability-apps .cap-answer-media .cap-phone-screen .sarah-answer-poses img{inset:0;width:100%;height:100%;padding:0!important;object-fit:cover!important}
.cap-answer-media .cap-phone-screen .sarah-answer-poses .sarah-pose-1,.cap-answer-media .cap-phone-screen .peter-answer-poses .peter-pose-1,.cap-answer-media .cap-phone-screen .tom-answer-poses .tom-pose-1,.cap-answer-media .cap-phone-screen .michelle-answer-poses .michelle-pose-1,.cap-answer-media .cap-phone-screen .priya-answer-poses .priya-pose-1,.cap-answer-media .cap-phone-screen .rachel-answer-poses .rachel-pose-1{opacity:1}
.sarah-answer-poses .sarah-pose-2{object-position:52% 45%}
.sarah-answer-poses .sarah-pose-3{object-position:56% 45%}
.peter-answer-poses .peter-pose-1{object-position:55% 46%}
.peter-answer-poses .peter-pose-2{object-position:54% 46%}
.peter-answer-poses .peter-pose-3{object-position:54% 46%}
.cap-answer-media .cap-phone-screen .tom-answer-poses .tom-pose-1{object-position:44% 47%}
.cap-answer-media .cap-phone-screen .tom-answer-poses .tom-pose-2{object-position:50% 46%}
.cap-answer-media .cap-phone-screen .tom-answer-poses .tom-pose-3{object-position:48% 47%}
.cap-answer-media .cap-phone-screen .michelle-answer-poses .michelle-pose-1{object-position:38% 46%}
.cap-answer-media .cap-phone-screen .michelle-answer-poses .michelle-pose-2{object-position:43% 46%}
.cap-answer-media .cap-phone-screen .michelle-answer-poses .michelle-pose-3{object-position:42% 46%}
.cap-answer-media .cap-phone-screen .priya-answer-poses .priya-pose-1{object-position:42% 46%}
.cap-answer-media .cap-phone-screen .priya-answer-poses .priya-pose-2{object-position:40% 46%}
.cap-answer-media .cap-phone-screen .priya-answer-poses .priya-pose-3{object-position:42% 46%}
.cap-answer-media .cap-phone-screen .rachel-answer-poses .rachel-pose-1{object-position:40% 46%}
.cap-answer-media .cap-phone-screen .rachel-answer-poses .rachel-pose-2{object-position:40% 46%}
.cap-answer-media .cap-phone-screen .rachel-answer-poses .rachel-pose-3{object-position:40% 46%}
.sarah-answer-intro.has-sarah-poses>.sarah-answer-poses,.sarah-answer-intro.has-peter-poses>.sarah-answer-poses,.sarah-answer-intro.has-tom-poses>.sarah-answer-poses,.sarah-answer-intro.has-michelle-poses>.sarah-answer-poses,.sarah-answer-intro.has-priya-poses>.sarah-answer-poses,.sarah-answer-intro.has-rachel-poses>.sarah-answer-poses{position:absolute;z-index:0}
.sarah-answer-intro.has-sarah-poses>.image-coming,.sarah-answer-intro.has-sarah-poses>strong,.sarah-answer-intro.has-sarah-poses>div:not(.sarah-answer-poses),.sarah-answer-intro.has-peter-poses>.image-coming,.sarah-answer-intro.has-peter-poses>strong,.sarah-answer-intro.has-peter-poses>div:not(.sarah-answer-poses),.sarah-answer-intro.has-tom-poses>.image-coming,.sarah-answer-intro.has-tom-poses>strong,.sarah-answer-intro.has-tom-poses>div:not(.sarah-answer-poses),.sarah-answer-intro.has-michelle-poses>.image-coming,.sarah-answer-intro.has-michelle-poses>strong,.sarah-answer-intro.has-michelle-poses>div:not(.sarah-answer-poses),.sarah-answer-intro.has-priya-poses>.image-coming,.sarah-answer-intro.has-priya-poses>strong,.sarah-answer-intro.has-priya-poses>div:not(.sarah-answer-poses),.sarah-answer-intro.has-rachel-poses>.image-coming,.sarah-answer-intro.has-rachel-poses>strong,.sarah-answer-intro.has-rachel-poses>div:not(.sarah-answer-poses){position:relative;z-index:1}
.sarah-answer-intro.has-sarah-poses>.image-coming,.sarah-answer-intro.has-peter-poses>.image-coming,.sarah-answer-intro.has-tom-poses>.image-coming,.sarah-answer-intro.has-michelle-poses>.image-coming,.sarah-answer-intro.has-priya-poses>.image-coming,.sarah-answer-intro.has-rachel-poses>.image-coming{background:#f4f1e9e0;color:var(--ink);box-shadow:0 10px 24px #1014101a}
.sarah-answer-intro.has-sarah-poses>strong,.sarah-answer-intro.has-peter-poses>strong,.sarah-answer-intro.has-tom-poses>strong,.sarah-answer-intro.has-michelle-poses>strong,.sarah-answer-intro.has-priya-poses>strong,.sarah-answer-intro.has-rachel-poses>strong{color:#f4f1e9e8;text-shadow:0 16px 46px #10141080}
.sarah-answer-intro.has-sarah-poses>div,.sarah-answer-intro.has-peter-poses>div,.sarah-answer-intro.has-tom-poses>div,.sarah-answer-intro.has-michelle-poses>div,.sarah-answer-intro.has-priya-poses>div,.sarah-answer-intro.has-rachel-poses>div{color:#f4f1e9;text-shadow:0 10px 30px #10141082}
.sarah-answer-intro.has-sarah-poses small,.sarah-answer-intro.has-peter-poses small,.sarah-answer-intro.has-tom-poses small,.sarah-answer-intro.has-michelle-poses small,.sarah-answer-intro.has-priya-poses small,.sarah-answer-intro.has-rachel-poses small{border-top-color:#f4f1e95c;color:#f4f1e9d6}
.capabilities:is([data-answer-audio-active="sarah"],[data-answer-persona-active="sarah"]) .sarah-answer-poses .sarah-pose-1{animation:sarahPoseOne var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="sarah"],[data-answer-persona-active="sarah"]) .sarah-answer-poses .sarah-pose-2{animation:sarahPoseTwo var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="sarah"],[data-answer-persona-active="sarah"]) .sarah-answer-poses .sarah-pose-3{animation:sarahPoseThree var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="peter"],[data-answer-persona-active="peter"]) .peter-answer-poses .peter-pose-1{animation:sarahPoseOne var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="peter"],[data-answer-persona-active="peter"]) .peter-answer-poses .peter-pose-2{animation:sarahPoseTwo var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="peter"],[data-answer-persona-active="peter"]) .peter-answer-poses .peter-pose-3{animation:sarahPoseThree var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="tom"],[data-answer-persona-active="tom"]) .tom-answer-poses .tom-pose-1{animation:sarahPoseOne var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="tom"],[data-answer-persona-active="tom"]) .tom-answer-poses .tom-pose-2{animation:sarahPoseTwo var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="tom"],[data-answer-persona-active="tom"]) .tom-answer-poses .tom-pose-3{animation:sarahPoseThree var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="michelle"],[data-answer-persona-active="michelle"]) .michelle-answer-poses .michelle-pose-1{animation:sarahPoseOne var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="michelle"],[data-answer-persona-active="michelle"]) .michelle-answer-poses .michelle-pose-2{animation:sarahPoseTwo var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="michelle"],[data-answer-persona-active="michelle"]) .michelle-answer-poses .michelle-pose-3{animation:sarahPoseThree var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="priya"],[data-answer-persona-active="priya"]) .priya-answer-poses .priya-pose-1{animation:sarahPoseOne var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="priya"],[data-answer-persona-active="priya"]) .priya-answer-poses .priya-pose-2{animation:sarahPoseTwo var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="priya"],[data-answer-persona-active="priya"]) .priya-answer-poses .priya-pose-3{animation:sarahPoseThree var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="rachel"],[data-answer-persona-active="rachel"]) .rachel-answer-poses .rachel-pose-1{animation:sarahPoseOne var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="rachel"],[data-answer-persona-active="rachel"]) .rachel-answer-poses .rachel-pose-2{animation:sarahPoseTwo var(--answer-pose-duration,18s) ease-in-out infinite}
.capabilities:is([data-answer-audio-active="rachel"],[data-answer-persona-active="rachel"]) .rachel-answer-poses .rachel-pose-3{animation:sarahPoseThree var(--answer-pose-duration,18s) ease-in-out infinite}
@keyframes sarahPoseOne{0%,27%{opacity:1;transform:scale(1.02)}38%,100%{opacity:0;transform:scale(1.055)}}
@keyframes sarahPoseTwo{0%,27%{opacity:0;transform:scale(1.045)}38%,62%{opacity:1;transform:scale(1.025)}73%,100%{opacity:0;transform:scale(1.055)}}
@keyframes sarahPoseThree{0%,62%{opacity:0;transform:scale(1.045)}73%,100%{opacity:1;transform:scale(1.025)}}
.answer-number{position:absolute;right:clamp(26px,3vw,48px);top:clamp(28px,3vw,50px);background:color-mix(in srgb,var(--paper) 58%,transparent)}
.answer-content{margin-top:auto;max-width:800px}
.answer-content .eyebrow{margin-bottom:16px}
.answer-content h3{max-width:820px;margin:0 0 24px;font-family:'Arial',sans-serif;font-size:clamp(30px,3vw,50px);font-weight:400;line-height:1.08;text-transform:none;letter-spacing:-.045em}
.answer-content>strong{display:block;padding-top:20px;border-top:1px solid #26262630;font-family:'Anton',Impact,sans-serif;font-size:clamp(34px,3.4vw,58px);font-weight:400;line-height:1;text-transform:uppercase;letter-spacing:.015em}

@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .capabilities{height:1650svh;background:var(--paper)}
  .js .capabilities-stage{padding:0}
  .js .capabilities-heading.sarah-narrative{top:clamp(45px,6vh,72px);bottom:42px;left:calc(var(--gutter) - 12px);display:flex;flex-direction:column;width:min(38vw,570px)}
  .js .answers-overview{flex:0 0 auto;opacity:var(--heading-arrival,0);transform:translateY(calc((1 - var(--heading-arrival,0)) * 74px));transition:opacity .14s linear,transform .42s cubic-bezier(.2,.75,.25,1)}
  .js .persona-answer-stories{position:relative;flex:1 1 auto;min-height:0;margin-top:clamp(90px,10vh,130px)}
  .js .answer-persona-story{position:absolute;inset:0;display:flex;min-height:0;flex-direction:column;opacity:var(--persona-answer-active);transform:translateY(calc((1 - var(--persona-answer-active)) * 24px));pointer-events:none;transition:opacity .12s linear,transform .42s cubic-bezier(.2,.75,.25,1)}
  .js .answer-persona-story blockquote{margin:14px 0 12px;font-size:clamp(15px,1.06vw,18px);line-height:1.34}
  .js .sarah-narrative .sarah-persona{margin-top:auto}
  .js .sarah-narrative .capability-progress{margin-top:0;opacity:var(--content-entrance,0);transition:opacity .2s linear}
  .js .sarah-answer-journey{opacity:1!important;transform:none!important}
  .js .capability-apps .cap-answer-media{top:42px;right:calc(var(--gutter) - 12px);bottom:42px;width:54%;background:#ddd8cb}
  .js .capability-apps .cap-answer-media{opacity:var(--content-entrance,0);transform:translateY(calc((1 - var(--content-entrance,0)) * 28px)) scale(calc(.98 + var(--content-entrance,0) * .02));transition:opacity .2s linear,transform .48s cubic-bezier(.2,.75,.25,1)}
}

@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .hero-chip-row,.framework-chip-row,.answers-chip-row{gap:4px}
  .chip{padding:6px 9px;font-size:9.5px}
  .sarah-narrative{margin-bottom:34px}
  .answers-overview{margin-bottom:90px}
  .answers-overview h2{font-size:50px!important}
  .sarah-narrative blockquote{font-size:18px}
  .answer-persona-story{position:relative;margin-bottom:70px;opacity:1!important;transform:none!important}
  .sarah-narrative .capability-progress{display:flex}
  .sarah-answer-journey{padding:0!important;background:transparent!important}
  .sarah-answer-journey .cap-answer-media{min-height:620px;margin:0}
  .sarah-answer-scene{padding:25px!important}
  .sarah-answer-scene:not(:first-child){position:relative;inset:auto;min-height:620px;margin-top:16px;opacity:1!important;transform:none!important}
  .answer-number{right:25px;top:27px;max-width:48%;text-align:right}
  .answer-content h3{font-size:31px}
}

/* Persona narration is scroll-cued, with a persistent user override for autoplay restrictions. */
.narration-toggle{position:fixed;z-index:30;right:var(--gutter);bottom:22px;display:inline-flex;align-items:center;gap:9px;min-height:38px;padding:9px 13px;border:1px solid #26262638;border-radius:100px;background:color-mix(in srgb,var(--paper) 88%,transparent);color:var(--ink);font-size:11px;font-weight:650;letter-spacing:.05em;cursor:pointer;backdrop-filter:blur(12px)}
.audio-wave{display:inline-flex;align-items:center;justify-content:center;gap:2px;width:17px;height:15px;border-radius:8px;transition:box-shadow .25s}
.audio-wave i{display:block;width:3px;height:12px;border-radius:3px;background:var(--muted);transform:scaleY(.3);transform-origin:center}
.narration-toggle[aria-pressed="true"] .audio-wave{box-shadow:0 0 0 5px color-mix(in srgb,var(--green) 16%,transparent)}
.narration-toggle[aria-pressed="true"] .audio-wave i{background:var(--green);animation:audio-wave .72s ease-in-out infinite alternate}
.narration-toggle[aria-pressed="true"] .audio-wave i:nth-child(2){animation-delay:-.46s}
.narration-toggle[aria-pressed="true"] .audio-wave i:nth-child(3){animation-delay:-.22s}
@keyframes audio-wave{0%{transform:scaleY(.25)}45%{transform:scaleY(1)}100%{transform:scaleY(.48)}}
.narration-toggle:hover{border-color:var(--ink)}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.narration-toggle,.journey-scroll-cue{display:none!important}}
@media(prefers-reduced-motion:reduce){.narration-toggle[aria-pressed="true"] .audio-wave i{animation:none;transform:scaleY(.65)}}

/* Opening gateway: the user gesture also unlocks narrated audio. */
html.js body:not(.journey-entered){overflow:hidden}
.site-loader{display:none}.js .site-loader{position:fixed;z-index:200;inset:0;display:grid;place-items:center;min-height:100svh;padding:clamp(22px,4vw,72px);background:var(--paper);color:var(--ink);overflow:hidden;transition:visibility .2s linear 1.2s}
.js .site-loader:before{content:'';position:absolute;left:50%;top:50%;width:23px;height:23px;border-radius:50%;background:var(--yellow);transform:translate(-50%,-50%) scale(0);opacity:0;z-index:3;pointer-events:none}
.js .site-loader.is-leaving{visibility:hidden;pointer-events:none}
.js .site-loader.is-leaving:before{animation:loader-connected-wash 1.05s cubic-bezier(.24,.74,.2,1) forwards}
.loader-scene{position:relative;z-index:2;width:min(1120px,100%);min-height:min(820px,calc(100svh - 44px));display:grid;grid-template-rows:auto 1fr auto;align-items:center;justify-items:center;text-align:center;gap:clamp(28px,5vh,56px);padding:clamp(24px,4vw,60px)}
.site-loader.is-leaving .loader-scene{animation:loader-scene-out .55s ease forwards}
.loader-copy{display:flex;flex-direction:column;align-items:center;max-width:850px;background:transparent;padding:0}
.loader-title{margin:22px 0 24px;font-family:'Anton',Impact,sans-serif;font-size:clamp(54px,6.4vw,118px);font-weight:400;line-height:.94;letter-spacing:.018em!important;text-transform:uppercase;text-wrap:balance}.loader-logo{display:block;width:min(520px,72vw);height:auto;margin:0 0 26px}
.loader-summary{max-width:760px;font-size:clamp(17px,1.2vw,22px);line-height:1.45;text-wrap:balance}
.loader-audio-note{margin-top:24px;max-width:560px;color:var(--muted);font-size:15px;line-height:1.45}
.loader-actions{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,.72fr);gap:12px;width:min(620px,100%);margin-top:28px;opacity:.38;transition:opacity .35s}
.site-loader.is-ready .loader-actions{opacity:1}
.loader-enter{min-height:54px;padding:17px 20px;border:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);font-size:13px;font-weight:750;letter-spacing:.08em;text-transform:uppercase;cursor:wait;pointer-events:none;transition:background .2s,color .2s,transform .2s}
.loader-enter-audio{display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--yellow)}
.loader-enter-silent{background:transparent}
.site-loader.is-ready .loader-enter{cursor:pointer;pointer-events:auto}
.loader-enter:hover{transform:translateY(-2px)}
.loader-enter-silent:hover{background:var(--ink);color:var(--paper)}
.loader-copy small{margin-top:12px;font-size:11px;color:var(--muted)}
@keyframes loader-scene-out{to{opacity:0;transform:translateY(-18px) scale(.98);filter:blur(6px)}}
@keyframes loader-connected-wash{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}50%{opacity:1;transform:translate(-50%,-50%) scale(18)}100%{opacity:1;transform:translate(-50%,-50%) scale(150)}}
@media(max-width:900px){.loader-scene{min-height:calc(100svh - 44px)}.loader-actions{grid-template-columns:1fr}.loader-title{font-size:clamp(48px,12vw,82px)}.loader-logo{width:min(420px,78vw)}}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.site-loader{padding:16px}.loader-scene{min-height:calc(100svh - 32px);padding:18px;gap:24px}.loader-title{font-size:clamp(42px,13vw,62px)}.loader-logo{width:min(300px,78vw);margin:0 0 20px}.loader-summary{font-size:16px}.loader-audio-note{font-size:14px}.loader-actions{display:grid}.loader-copy small{display:block}}
/* Collective close: a second dark chapter before registration. */
.collective-health{height:230svh;margin:80px 12px 0;border-radius:30px;background:var(--ink);color:var(--paper)}
.collective-health-stage{position:sticky;top:0;height:100svh;min-height:680px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:72px var(--gutter);overflow:hidden;text-align:center}
.collective-health-eyebrow{opacity:var(--collective-eyebrow,0);transform:translateY(calc((1 - var(--collective-eyebrow,0)) * 24px))}
.collective-health h2{max-width:1100px;margin:34px 0 48px;font-family:'Anton',Impact,sans-serif;font-size:clamp(70px,9.2vw,150px);font-weight:400;line-height:.9;text-transform:uppercase;letter-spacing:.005em}
.collective-health h2 span{display:block;opacity:var(--collective-line-one,0);transform:translateY(calc((1 - var(--collective-line-one,0)) * 46px))}
.collective-health h2 span:nth-child(2){opacity:var(--collective-line-two,0);transform:translateY(calc((1 - var(--collective-line-two,0)) * 46px))}
.collective-health h2 span:nth-child(3){color:var(--green);opacity:var(--collective-line-three,0);transform:translateY(calc((1 - var(--collective-line-three,0)) * 46px))}
.collective-health-intro{max-width:790px;font-size:clamp(18px,1.45vw,25px);line-height:1.45;color:#c7c4bb;opacity:var(--collective-copy,0);transform:translateY(calc((1 - var(--collective-copy,0)) * 30px))}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.collective-health{height:auto;margin:35px 12px 0;border-radius:24px}.collective-health-stage{position:relative;height:auto;min-height:80svh;padding:90px 24px}.collective-health-eyebrow,.collective-health h2 span,.collective-health-intro{opacity:1!important;transform:none!important}.collective-health h2{font-size:clamp(42px,12vw,58px);margin:28px 0 40px}.collective-health-intro{font-size:18px}}
@media(prefers-reduced-motion:reduce){.collective-health{height:auto}.collective-health-stage{position:relative;height:auto;min-height:80svh}.collective-health-eyebrow,.collective-health h2 span,.collective-health-intro{opacity:1!important;transform:none!important}.loader-line i{animation:none;transform:none}}

/* Perspective-led opening hero */
.perspective-hero{min-height:100svh;padding:12px}
.perspective-hero-stage{min-height:calc(100svh - 24px);padding:112px calc(var(--gutter) - 12px) 42px;border-radius:30px;background:var(--paper);overflow:hidden}
.perspective-hero-layout{display:grid;grid-template-columns:minmax(500px,.95fr) minmax(520px,1.05fr);gap:clamp(30px,4vw,72px);height:calc(100svh - 178px);min-height:620px}
.perspective-hero-copy{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;padding:24px 0 10px;max-width:720px}
.perspective-kicker{margin-bottom:clamp(22px,3vh,36px)}
.perspective-hero h1{font-family:'Anton',Impact,sans-serif;font-size:clamp(68px,7.1vw,116px);font-weight:400;line-height:.94;letter-spacing:.005em;text-transform:uppercase}
.perspective-hero h1 em{color:var(--green)}
.perspective-examples{display:grid;gap:5px;margin-top:auto;font-size:clamp(16px,1.05vw,19px);line-height:1.3;letter-spacing:-.02em}
.perspective-examples strong{font-weight:500}
.perspective-summary{margin-top:22px;max-width:620px;font-size:clamp(15px,.96vw,17px);line-height:1.5}
.scroll-cue{display:inline-flex;align-items:center;gap:15px;margin-top:24px;font-size:12px;font-weight:650;letter-spacing:.035em}
.scroll-cue>span{padding-bottom:7px;border-bottom:1px solid var(--ink)}
.scroll-cue>i{position:relative;display:block;width:24px;height:38px;border:1px solid var(--ink);border-radius:14px}
.scroll-cue>i>b{position:absolute;top:7px;left:50%;width:4px;height:7px;border-radius:4px;background:var(--ink);transform:translateX(-50%);animation:scroll-cue 1.7s cubic-bezier(.35,0,.2,1) infinite}
@keyframes scroll-cue{0%{opacity:0;transform:translate(-50%,0)}22%{opacity:1}72%{opacity:1}100%{opacity:0;transform:translate(-50%,16px)}}
.journey-scroll-cue{position:fixed;z-index:19;left:50%;bottom:24px;display:flex;flex-direction:column;align-items:center;gap:8px;opacity:calc(var(--journey-cue,0) * .28);transform:translate(-50%,calc((1 - var(--journey-cue,0)) * 16px)) scale(.96);pointer-events:none;transition:opacity .42s ease,transform .42s cubic-bezier(.2,.75,.25,1),filter .42s ease;filter:saturate(.82)}.is-scrolling .journey-scroll-cue{opacity:var(--journey-cue,0);transform:translate(-50%,calc((1 - var(--journey-cue,0)) * 16px)) scale(1);filter:saturate(1)}
.journey-scroll-cue>span{padding:6px 10px;border-radius:100px;background:color-mix(in srgb,var(--paper) 76%,transparent);font-size:10px;font-weight:650;letter-spacing:.08em;text-transform:uppercase;backdrop-filter:blur(10px)}
.journey-scroll-cue>i{position:relative;display:block;width:24px;height:38px;border:1px solid color-mix(in srgb,var(--ink) 82%,transparent);border-radius:14px;background:color-mix(in srgb,var(--paper) 58%,transparent);backdrop-filter:blur(10px)}
.journey-scroll-cue>i>b{position:absolute;top:7px;left:50%;width:4px;height:7px;border-radius:4px;background:var(--ink);transform:translateX(-50%);animation:scroll-cue 1.7s cubic-bezier(.35,0,.2,1) infinite}
.perspective-media{height:100%;min-height:560px;border-radius:30px;background:var(--yellow)}
.perspective-media-caption{position:absolute;left:32px;right:32px;bottom:32px;display:flex;flex-direction:column;gap:7px;font-family:'Anton',Impact,sans-serif;font-size:clamp(34px,3.4vw,58px);font-weight:400;line-height:.96;letter-spacing:.01em;text-transform:uppercase}
.perspective-media-caption strong{font-weight:400}.perspective-media-caption span{color:#26262688}
.opening#collective{margin-top:0}
@media(max-width:1050px){.perspective-hero-layout{grid-template-columns:minmax(420px,.95fr) minmax(400px,1.05fr)}.perspective-hero h1{font-size:clamp(62px,7vw,88px)}}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.perspective-hero{padding:0 12px}.perspective-hero-stage{min-height:0;padding:105px 10px 40px;border-radius:0}.perspective-hero-layout{display:flex;width:100%;height:auto;min-height:0;min-width:0;flex-direction:column;gap:34px}.perspective-hero-copy{width:100%;min-width:0;padding:0}.perspective-hero h1{max-width:100%;font-size:clamp(43px,12.4vw,58px);line-height:.96}.perspective-examples{margin-top:34px;font-size:16px}.perspective-summary{font-size:15px;margin-top:22px}.scroll-cue{margin-top:22px}.scroll-cue>i{display:none}.perspective-media{width:100%;height:460px;min-height:0;border-radius:24px}.perspective-media-caption{left:24px;right:24px;bottom:25px;font-size:35px}}

/* Hero blood-drop assembly: the supplied silhouette is also the future portrait mask. */
.hero-drop-field{display:none}
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .opening{height:340svh}
  .js .opening-stage{overflow:hidden;transform:none}
  .js .hero-copy{opacity:var(--hero-copy-opacity,1);transform:translateX(var(--hero-copy-shift,0));will-change:opacity,transform}
  .js .opening-note{opacity:var(--hero-copy-opacity,1)}
  .js .hero-media{opacity:var(--hero-media-opacity,1);transform:translateX(var(--hero-media-shift,0)) scale(var(--hero-media-scale,1));transform-origin:center center;will-change:opacity,transform}
  .js .hero-drop-field{display:block;position:absolute;z-index:3;inset:0;overflow:hidden;pointer-events:none;opacity:var(--hero-field-opacity,1);transform:translate3d(0,var(--hero-field-exit,0),0);will-change:opacity,transform}
  .js .hero-drop{position:absolute;left:var(--drop-x,50%);top:var(--drop-top,50%);display:flex;align-items:center;justify-content:center;width:var(--drop-size,clamp(108px,10.5vw,190px));aspect-ratio:224/352;background-color:var(--drop-fill,var(--yellow));background-image:var(--drop-image,none);background-position:center;background-size:cover;-webkit-mask:url('blood-drop-shape.png') center/contain no-repeat;mask:url('blood-drop-shape.png') center/contain no-repeat;opacity:var(--drop-opacity,0);transform:translate(-50%,-50%) translateY(var(--drop-y,0)) scale(var(--drop-scale,.7));will-change:opacity,transform}
  .js .hero-drop>span{max-width:68%;color:var(--ink);font-size:11px;font-weight:700;line-height:1.25;letter-spacing:.1em;text-align:center;text-transform:uppercase}
  .js .hero-drop-main{z-index:2;left:50%;top:48%;width:clamp(155px,14vw,250px);--drop-fill:var(--green);opacity:var(--hero-main-opacity,0);transform:translate(-50%,-50%) scale(var(--hero-main-scale,4.2));will-change:opacity,transform}
  .js .hero-drop-main>span{font-size:clamp(11px,.85vw,14px)}
  .js .hero-drop-message{position:absolute;left:50%;bottom:7%;width:min(560px,42vw);transform:translateX(-50%) translateY(calc((1 - var(--hero-message-opacity,0)) * 22px));opacity:var(--hero-message-opacity,0);text-align:center}
  .js .hero-drop-message strong{display:block;font-family:'Anton',Impact,sans-serif;font-size:clamp(24px,2.1vw,38px);font-weight:400;letter-spacing:.02em;text-transform:uppercase}
  .js .hero-drop-message span{display:block;margin-top:8px;font-size:14px;color:var(--muted)}
}

@media(prefers-reduced-motion:reduce){.hero-drop-field{display:none!important}}

/* Short desktop refinement: preserve the full composition on common 1080px displays. */
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .questions{height:1400svh}
  .js .question-bridge{opacity:var(--bridge-opacity,1);transition:opacity .28s ease,transform .55s cubic-bezier(.2,.75,.25,1)}
}

.finale footer{position:relative;min-height:76px}
.restart-journey{position:absolute;top:18px;left:50%;display:inline-flex!important;align-items:center;justify-content:center;min-width:260px;min-height:52px;padding:13px 25px!important;border:0;border-radius:0;background:var(--desk);font-size:13px!important;font-weight:800;letter-spacing:.05em;text-align:center;text-decoration:none;text-transform:uppercase;transform:translateX(-50%);animation:restart-journey-pulse 2s cubic-bezier(.4,0,.2,1) infinite}
.restart-journey:hover{background:var(--ink);color:var(--paper)}
@keyframes restart-journey-pulse{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-6px)}}

@media (min-width:701px) and (max-height:1000px){
  .perspective-hero-stage{padding-top:82px;padding-bottom:24px}
  .perspective-hero-layout{height:calc(100svh - 112px);min-height:560px}
  .perspective-hero h1{font-size:clamp(56px,5.5vw,84px);line-height:.91}
  .perspective-examples{margin-top:auto;font-size:14px;line-height:1.45}
  .perspective-summary{margin-top:15px;font-size:14px;line-height:1.45}
  .scroll-cue{margin-top:14px}

  .question-title-panel h2{margin:18px 0 24px;font-size:clamp(52px,5.8vw,78px);line-height:.94}
  .question-title-panel .text-link{font-size:15px}
  .question-title-panel .persona-note{margin-top:26px}
  .js .question-bridge{width:min(48vw,660px);height:100svh;min-height:0;margin-left:clamp(52px,6vw,96px);padding:72px 28px 28px}
  .js .question-bridge h2{font-size:clamp(42px,4.1vw,62px);line-height:1}
  .js .question-bridge>span{margin-top:26px;font-size:15px}
  .js .question-bridge small{margin-top:30px}
  .js .persona-panel{padding:92px 0 34px}
  .js .persona-panel h3{margin:12px 0;font-size:clamp(38px,3.35vw,50px);line-height:.96}
  .js .persona-panel blockquote{font-size:clamp(15px,1.15vw,18px);line-height:1.32}
  .js .persona-panel .persona-copy{margin-bottom:6px}
  .js .persona-panel .attribution{margin-top:8px}
  .js .persona-panel .meaning{margin-top:10px;padding-top:9px}
  .js .persona-panel .persona-media{height:66svh;max-height:630px;min-height:500px}

  .connection h2{margin:20px 0 32px;font-size:clamp(50px,5.3vw,82px);line-height:.93}
  .connection-personas{margin-top:28px}
  .js .framework-intro h2{font-size:clamp(56px,5.6vw,84px)}
  .js .framework-chapter h3{font-size:clamp(56px,6.4vw,94px)}

  .js .capabilities-heading.sarah-narrative{top:26px;bottom:24px}
  .answers-overview h2{font-size:clamp(40px,3.3vw,52px)!important;line-height:.94}
  .answers-overview .answers-link{margin-top:24px}
  .js .persona-answer-stories{margin-top:58px}
  .js .answer-persona-story h3{margin:8px 0;font-size:clamp(36px,3vw,48px);line-height:.94}
  .js .answer-persona-story blockquote{font-size:14px;line-height:1.28}
  .js .sarah-narrative .sarah-persona{font-size:12px}
  .js .sarah-narrative .sarah-detail{margin:10px 0 12px;padding-top:9px}
  .js .capability-apps .cap-answer-media{top:24px;bottom:24px}

  .collective-health h2{margin:20px 0 30px;font-size:clamp(60px,6.8vw,104px);line-height:.92}
  .collective-health-intro{font-size:17px;line-height:1.5}

  .finale{min-height:100svh;padding-top:62px;padding-bottom:14px}
  .finale h2{margin:16px 0 34px;font-size:clamp(52px,5.3vw,80px);line-height:.92}
  .registration-intro>p{font-size:27px;line-height:1.05}
  .registration-intro>span{margin-top:16px;font-size:14px;line-height:1.5}
  .finale form h3{font-size:22px}
  .finale .form-notice{margin:8px 0 12px;font-size:11px}
  .finale label{margin-bottom:11px}
  .finale .consent{margin-top:14px}
  .finale footer{margin-top:30px;padding-top:14px}
}

@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .finale footer{justify-content:center;gap:18px;min-height:0}
  .finale footer .wordmark{width:100%;justify-content:center}
  .restart-journey{position:relative;top:auto;left:auto;order:-1;width:min(100%,300px);transform:none;animation:restart-journey-pulse-mobile 2s cubic-bezier(.4,0,.2,1) infinite}
  @keyframes restart-journey-pulse-mobile{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
}
/* Persona section: keep the original bridge heading, then reveal the stories below it. */
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .question-bridge{opacity:var(--bridge-opacity,1);transform:translate3d(0,var(--bridge-lift,0px),0);will-change:transform,opacity}
  .js .personas{transition:opacity .42s ease}
  .js .persona-deck{height:100%}
  .js .persona-panel{padding:0;grid-template-columns:minmax(0,38vw) minmax(0,54vw);gap:clamp(28px,4vw,76px)}
  .js .persona-panel .persona-copy{align-self:start;width:min(38vw,570px);max-width:570px;margin:clamp(560px,56vh,700px) 0 0 40px}
  .js .persona-panel h3{font-size:clamp(42px,3.6vw,60px);line-height:.96;margin:10px 0 0;letter-spacing:.015em!important}
  .js .persona-panel blockquote{margin:22px 0 18px;max-width:550px;font-size:clamp(18px,1.42vw,25px);line-height:1.42}
  .js .persona-panel .attribution{margin-top:18px}
  .js .persona-panel .meaning{margin:22px 0 26px;padding-top:16px}
  .js .persona-panel .persona-media{grid-column:2;height:auto;min-height:0;max-height:none;align-self:stretch;margin:42px 0;border-radius:28px}
}
@media (min-width:701px) and (max-height:1000px){
  .js .persona-panel .persona-copy{margin-top:clamp(470px,52vh,560px);margin-left:28px}
  .js .persona-panel h3{font-size:clamp(40px,3.3vw,52px);line-height:.94}
  .js .persona-panel blockquote{font-size:14px;line-height:1.28}
  .js .persona-panel .attribution{margin-top:8px}
  .js .persona-panel .meaning{margin:10px 0 12px;padding-top:9px}
  .js .persona-panel .persona-media{margin:42px 0 24px}
}

/* Persona refinement: match answer-section title rhythm and remove leading eyebrow dots. */
.persona-panel .tiny-signal{display:none!important}
.persona-panel .persona-copy .eyebrow{gap:0}
@media (min-width:701px){
  .persona-panel h3,
  #peter h3,
  #sarah-title{font-size:clamp(42px,3.6vw,60px)!important;line-height:.96!important;letter-spacing:.015em!important}
}
@media (min-width:701px) and (max-height:1000px){
  .persona-panel h3,
  #peter h3,
  #sarah-title{font-size:clamp(40px,3.3vw,52px)!important;line-height:.94!important}
}
/* Final title and chip cleanup. */
.framework-number{width:fit-content;min-width:0;padding:7px 12px;align-self:flex-start}
.persona-panel h3 .muted,.question-bridge h2 .muted,.answers-overview h2 .muted,.framework-intro h2 .muted{color:var(--green)}@media (min-width:1051px){#sarah-title{white-space:normal!important}}
@media (max-width:1200px), (orientation:portrait), (max-height:760px){#sarah-title{white-space:normal!important}}
/* Signal-to-system framework copy refinement. */
.framework-chapter>p b{display:block;margin-bottom:12px;color:var(--ink);font-size:clamp(22px,2vw,32px);font-weight:650;line-height:1.1;letter-spacing:-.035em}
.framework-note strong{color:var(--ink);font-weight:800;text-transform:uppercase;letter-spacing:.08em}
@media (min-width:701px) and (prefers-reduced-motion:no-preference){.js .framework-intro>p:last-child{max-width:760px;white-space:normal}.js .framework-note{max-width:560px;text-align:right;line-height:1.45}}
/* Align framework chapter titles across the signal-to-system section. */
.framework-chapter{display:grid;grid-template-rows:auto auto 1fr auto;align-content:stretch;gap:clamp(22px,4vh,42px)}
.framework-chapter h3{align-self:start;margin:0}
.framework-chapter>p{align-self:start}
.framework-chapter strong{align-self:end}
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .framework-chapter{display:grid;grid-template-rows:auto auto minmax(72px,1fr) auto;align-content:stretch;gap:clamp(24px,4.4vh,48px);padding-top:clamp(88px,11vh,120px)}
  .js .framework-chapter .framework-number{position:absolute;top:35px;left:6vw}
  .js .framework-chapter h3{align-self:start;margin:0}
  .js .framework-chapter>p{max-width:520px;align-self:start}
  .js .framework-chapter strong{align-self:end;font-size:clamp(32px,3.35vw,56px);line-height:1.06}
  .js .framework-discovery strong{font-size:clamp(30px,3.08vw,52px);max-width:780px}
}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.persona-photo-card::after{bottom:82px}.persona-photo-card img{object-position:56% 44%}.persona-signal-dot{right:24px;top:24px}}
.cap-answer-media .cap-phone-screen.has-peter-community-screening .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-peter-community-screening .answer-scene-image{object-position:55% 50%}
.cap-answer-media .cap-phone-screen.has-peter-health-equity .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-peter-health-equity .answer-scene-image{object-position:52% 50%}
.cap-answer-media .cap-phone-screen.has-peter-prevention-intelligence .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-peter-prevention-intelligence .answer-scene-image{object-position:54% 50%}

.cap-answer-media .cap-phone-screen.has-tom-distance-screening .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-tom-distance-screening .answer-scene-image{object-position:48% 50%}

.cap-answer-media .cap-phone-screen.has-tom-mobile-health .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-tom-mobile-health .answer-scene-image{object-position:50% 50%}

.cap-answer-media .cap-phone-screen.has-tom-regional-health-equity .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-tom-regional-health-equity .answer-scene-image{object-position:50% 50%}

.perspective-media.hero-perspective-carousel{position:relative;overflow:hidden;isolation:isolate;background:#1f2924;color:var(--paper);box-shadow:inset 0 0 0 1px #10141012}
.hero-perspective-carousel:after{content:'';position:absolute;inset:0;z-index:2;background:linear-gradient(180deg,#10141024 0%,#10141000 34%,#1014108f 100%),linear-gradient(90deg,#10141028 0%,transparent 48%,#f4f1e91f 100%);pointer-events:none}
.hero-perspective-frame{position:absolute;inset:0;z-index:0;opacity:0;animation:heroPerspectiveFade 36s ease-in-out infinite;overflow:hidden}
.hero-perspective-frame-b{animation-delay:6s}
.hero-perspective-frame-c{animation-delay:12s}
.hero-perspective-frame-d{animation-delay:18s}
.hero-perspective-frame-e{animation-delay:24s}
.hero-perspective-frame-f{animation-delay:30s}
.hero-perspective-frame img{width:100%;height:100%;object-fit:cover;object-position:50% 50%;transform:scale(1.04) translate3d(-1.2%,0,0);animation:heroPerspectiveDrift 36s ease-in-out infinite;filter:saturate(1.02) contrast(1.02)}
.hero-perspective-frame-b img{object-position:28% 50%;animation-delay:6s;transform:scale(1.04) translate3d(1.2%,0,0)}
.hero-perspective-frame-c img{object-position:50% 50%;animation-delay:12s;transform:scale(1.04) translate3d(-1.2%,0,0)}
.hero-perspective-frame-d img{object-position:45% 50%;animation-delay:18s;transform:scale(1.04) translate3d(1.2%,0,0)}
.hero-perspective-frame-e img{object-position:50% 50%;animation-delay:24s;transform:scale(1.04) translate3d(-1.2%,0,0)}
.hero-perspective-frame-f img{object-position:50% 50%;animation-delay:30s;transform:scale(1.04) translate3d(1.2%,0,0)}
.hero-perspective-kicker{position:absolute;top:22px;left:22px;z-index:3;padding:8px 13px;background:#f4f1e9e8;color:var(--ink);font-size:10px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;box-shadow:0 10px 28px #10141022}
.hero-perspective-carousel .perspective-media-caption{z-index:4;color:var(--paper);text-shadow:0 14px 36px #101410a6}
.hero-perspective-carousel .perspective-media-caption span{color:#f4f1e9b8}
.hero-perspective-carousel .hero-signal{z-index:4;background:var(--yellow)}
@keyframes heroPerspectiveFade{0%,7%{opacity:0}14%,50%{opacity:1}57%,100%{opacity:0}}
@keyframes heroPerspectiveDrift{0%{transform:scale(1.04) translate3d(-1.2%,0,0)}50%{transform:scale(1.09) translate3d(1.2%,-1%,0)}100%{transform:scale(1.04) translate3d(-1.2%,0,0)}}
@media(prefers-reduced-motion:reduce){.hero-perspective-frame,.hero-perspective-frame img{animation:none}.hero-perspective-frame-a{opacity:1}.hero-perspective-frame-b,.hero-perspective-frame-c,.hero-perspective-frame-d,.hero-perspective-frame-e,.hero-perspective-frame-f{opacity:0}}

@media(max-width:520px){.question-bridge small{white-space:normal;max-width:320px}}

.cap-answer-media .cap-phone-screen.has-michelle-measure-outcomes .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-michelle-measure-outcomes .answer-scene-image{object-position:50% 50%}

.cap-answer-media .cap-phone-screen.has-michelle-program-impact .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-michelle-program-impact .answer-scene-image{object-position:0% 50%}

.cap-answer-media .cap-phone-screen.has-michelle-scenarios .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-michelle-scenarios .answer-scene-image{object-position:50% 50%}

.cap-answer-media .cap-phone-screen.has-priya-permission .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-priya-permission .answer-scene-image{object-position:50% 50%}

.cap-answer-media .cap-phone-screen.has-priya-find-signal .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-priya-find-signal .answer-scene-image{object-position:50% 50%}
.cap-answer-media .cap-phone-screen.has-priya-cohort-followup .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-priya-cohort-followup .answer-scene-image{object-position:37% 50%}
.cap-answer-media .cap-phone-screen.has-rachel-prevention-indicators .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-rachel-prevention-indicators .answer-scene-image{object-position:31% 50%}
.cap-answer-media .cap-phone-screen.has-rachel-health-equity-map .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-rachel-health-equity-map .answer-scene-image{object-position:31% 50%}
.cap-answer-media .cap-phone-screen.has-rachel-scenario-modelling .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-rachel-scenario-modelling .answer-scene-image{object-position:38% 50%}
.cap-answer-media .cap-phone-screen.has-peter-community-priorities .answer-scene-image,.js .capability-apps .cap-answer-media .cap-phone-screen.has-peter-community-priorities .answer-scene-image{object-position:50% 50%}

.mobile-answer-groups{display:none}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .loader-audio-note,.loader-actions,.loader-copy small{display:none!important}
  .js .capabilities .persona-answer-stories,.js .capabilities .capability-list{display:none!important}
  .js .mobile-answer-groups{display:grid;gap:72px;margin-top:34px}
  .mobile-answer-group{display:grid;gap:22px;min-width:0}
  .mobile-answer-main{position:relative!important;display:block!important;margin:0!important;padding:0 0 2px!important;opacity:1!important;transform:none!important;pointer-events:auto!important}
  .mobile-answer-main h3{font-size:clamp(40px,12vw,54px);line-height:.96;margin:10px 0 0}
  .mobile-answer-main blockquote{margin:22px 0 18px;font-size:18px;line-height:1.42}
  .mobile-answer-main .sarah-detail{margin-bottom:0}
  .mobile-answer-slider{display:flex;gap:14px;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:0;padding:0 0 12px;-webkit-overflow-scrolling:touch}
  .mobile-answer-slider::-webkit-scrollbar{height:0}
  .mobile-answer-slide{position:relative!important;inset:auto!important;flex:0 0 100%;min-height:610px;margin:0!important;opacity:1!important;transform:none!important;scroll-snap-align:start;border-radius:24px;overflow:hidden}
  .mobile-answer-slide .answer-number{display:inline-flex!important;left:20px;right:auto;top:20px;max-width:calc(100% - 40px);text-align:left;font-size:10px;padding:7px 10px}
  .mobile-answer-slide .image-coming{margin-top:42px}
  .mobile-answer-slide .answer-content h3{font-size:29px;line-height:1.08}
  .mobile-answer-slide .answer-content>strong{font-size:34px}
  .mobile-answer-dots{display:flex;justify-content:center;gap:8px;margin-top:-4px}
  .mobile-answer-dots span{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--ink) 24%,transparent)}
  .mobile-answer-dots span:first-child{background:var(--ink)}
}

@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .framework-discovery>p{max-width:620px}
  .js .framework-discovery>p b{white-space:nowrap}
}
@media (max-width:1050px){
  .js .framework-discovery>p b{white-space:normal}
}

@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .prevention-view{min-height:0;display:block;padding:10px 0 30px}
  .prevention-view h2{font-size:clamp(43px,11.8vw,58px);line-height:.96;margin-top:24px}
  .prevention-view-body{margin-top:34px;font-size:17px;line-height:1.48}
}

.form-hp{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

.site-copyright{margin:0 0 0 auto;font-size:12px;color:var(--muted);text-align:right}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.site-copyright{width:100%;margin:0;text-align:center;order:2}}

/* Footer controls: keep action and audio controls clear of footer information. */
.finale footer{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;align-items:center;gap:24px;min-height:0}
.restart-journey{position:relative;top:auto;left:auto;justify-self:center;transform:none;animation:restart-journey-pulse-inline 2s cubic-bezier(.4,0,.2,1) infinite}
.site-copyright{margin:0;justify-self:end}
.narration-toggle{top:22px;bottom:auto}
@keyframes restart-journey-pulse-inline{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.finale footer{display:flex;flex-wrap:wrap;justify-content:center;gap:18px}.restart-journey{order:-1;width:min(100%,300px);animation:restart-journey-pulse-mobile 2s cubic-bezier(.4,0,.2,1) infinite}.site-copyright{width:100%;margin:0;text-align:center;order:2;justify-self:auto}}

/* Keep the audio toggle near the bottom without covering footer details. */
.narration-toggle{top:auto;bottom:92px}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.narration-toggle{display:none!important}}

/* Mobile: turn Six Answers into simple automatic image slides per persona. */
@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .capabilities{height:auto!important;margin:0 12px;background:color-mix(in srgb,var(--yellow) 18%,var(--paper))!important}
  .js .capabilities-stage{position:relative!important;display:block!important;height:auto!important;min-height:0!important;padding:56px 20px 72px!important;overflow:visible!important}
  .js .capabilities-heading.sarah-narrative{position:relative!important;inset:auto!important;width:auto!important;display:block!important;margin:0 0 28px!important}
  .answers-overview h2{font-size:clamp(44px,13vw,62px)!important;line-height:.96!important}
  .answers-support{max-width:310px!important}
  .js .capabilities .persona-answer-stories,.js .capabilities .capability-list{display:none!important}
  .js .mobile-answer-groups{display:grid!important;gap:76px;margin-top:30px}
  .mobile-answer-group{display:grid;gap:18px;min-width:0}
  .mobile-answer-main{position:relative!important;display:block!important;padding:0!important;margin:0!important;opacity:1!important;transform:none!important;pointer-events:auto!important}
  .mobile-answer-main blockquote{display:none!important}
  .mobile-answer-main h3{margin:10px 0 14px!important;font-size:clamp(38px,11vw,54px)!important;line-height:.95!important}
  .mobile-answer-main .sarah-persona{margin-top:0!important}
  .mobile-answer-main .sarah-detail{margin-top:16px!important;margin-bottom:0!important}
  .mobile-answer-slider{position:relative;display:block;min-height:590px;overflow:hidden;border-radius:24px;background:#d7d1c2;box-shadow:0 18px 40px #10141016}
  .mobile-answer-slide{position:absolute!important;inset:0!important;min-height:0!important;height:100%!important;margin:0!important;border-radius:24px;overflow:hidden;opacity:0;transform:scale(1.025);animation:mobileAnswerSlide 12s infinite!important;pointer-events:none!important}
  .mobile-answer-slide:nth-child(2){animation-delay:4s!important}
  .mobile-answer-slide:nth-child(3){animation-delay:8s!important}
  .mobile-answer-slide .answer-scene-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;padding:0!important;object-fit:cover!important}
  .mobile-answer-slide:after{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,#10141010 0%,#10141014 35%,#10141086 100%)}
  .mobile-answer-slide .answer-number{display:inline-flex!important;position:absolute!important;left:18px!important;top:18px!important;right:auto!important;z-index:2;max-width:calc(100% - 36px);padding:8px 10px!important;background:#f4f1e9e8!important;color:var(--ink)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important;text-align:left!important}
  .mobile-answer-slide .image-coming{position:absolute!important;left:18px!important;bottom:118px!important;z-index:2;margin:0!important;background:#f4f1e9e8!important;color:var(--ink)!important}
  .mobile-answer-slide .answer-content{position:absolute!important;left:18px!important;right:18px!important;bottom:22px!important;z-index:2;padding:0!important;background:transparent!important;color:#f4f1e9!important;text-shadow:0 10px 28px #101410cc}
  .mobile-answer-slide .answer-content h3{display:none!important}
  .mobile-answer-slide .answer-content .eyebrow{display:block!important;color:#fff!important;font-size:12px!important;letter-spacing:.14em!important;margin-bottom:0!important}
  .mobile-answer-slide .answer-content>strong{display:block!important;margin-top:12px!important;font-family:'Anton',Impact,sans-serif;font-size:clamp(34px,10vw,48px)!important;font-weight:400!important;line-height:.96!important;letter-spacing:.01em!important;text-transform:uppercase!important;color:#f4f1e9!important}
  .mobile-answer-dots{display:flex;justify-content:center;gap:8px;margin-top:4px}
  .mobile-answer-dots span{width:7px;height:7px;border-radius:50%;background:color-mix(in srgb,var(--ink) 24%,transparent);animation:mobileAnswerDot 15s infinite}
  .mobile-answer-dots span:nth-child(2){animation-delay:5s}
  .mobile-answer-dots span:nth-child(3){animation-delay:10s}
}
@keyframes mobileAnswerSlide{0%,7%{opacity:0;transform:scale(1.025)}12%,33%{opacity:1;transform:scale(1)}38%,100%{opacity:0;transform:scale(1.025)}}
@keyframes mobileAnswerDot{0%,9%{background:color-mix(in srgb,var(--ink) 24%,transparent)}12%,33%{background:var(--ink)}38%,100%{background:color-mix(in srgb,var(--ink) 24%,transparent)}}
@media(max-width:1200px) and (prefers-reduced-motion:reduce), (orientation:portrait) and (prefers-reduced-motion:reduce), (max-height:760px) and (prefers-reduced-motion:reduce){.mobile-answer-slide,.mobile-answer-dots span{animation:none!important}.mobile-answer-slide:first-child{opacity:1!important;transform:none!important}.mobile-answer-dots span:first-child{background:var(--ink)}}

/* Mobile: make the connected-prevention intro render as the current section, not the old horizontal package. */
@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .questions{height:auto!important;padding:0 12px;margin-top:20px}
  .questions-stage{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;overflow:visible!important;padding:0!important}
  .questions-track{position:relative!important;display:block!important;width:auto!important;height:auto!important;transform:none!important;padding:0!important}
  .prevention-view{display:block!important;min-height:0!important;padding:76px 12px 70px!important;color:var(--ink)!important;background:var(--paper)!important}
  .prevention-view-title{position:relative!important;left:auto!important;width:auto!important;max-width:100%!important}
  .prevention-view .eyebrow{font-size:11px!important;letter-spacing:.14em!important}
  .prevention-view h2{margin:24px 0 0!important;font-size:clamp(44px,12vw,64px)!important;line-height:.94!important;font-family:'Anton',Impact,sans-serif!important;font-weight:400!important;letter-spacing:.005em!important;text-transform:uppercase!important}
  .prevention-view h2 span,.prevention-view h2 em{color:var(--green)!important}
  .prevention-view-body{display:grid!important;gap:18px!important;width:auto!important;max-width:100%!important;margin-top:34px!important;font-size:17px!important;line-height:1.48!important;letter-spacing:-.02em!important;opacity:1!important;transform:none!important}
  .question-bridge{position:relative!important;display:block!important;width:auto!important;height:auto!important;min-height:0!important;padding:40px 12px 54px!important;transform:none!important;opacity:1!important}
}

/* Return audio toggle to the lower corner and soften it like the scroll cue. */
.narration-toggle{top:auto;bottom:22px;opacity:calc(.34 + var(--journey-cue,0) * .46);filter:saturate(.82);transition:opacity .42s ease,filter .42s ease,border-color .2s ease,background .2s ease}
.is-scrolling .narration-toggle,.narration-toggle:hover,.narration-toggle:focus-visible{opacity:1;filter:saturate(1)}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.narration-toggle{display:none!important}}

/* Footer: keep restart action centred between logo and copyright. */
.finale footer{grid-template-columns:1fr auto 1fr}
.finale footer .wordmark{justify-self:start}
.restart-journey{justify-self:center}
.site-copyright{justify-self:end;text-align:right}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.finale footer{display:flex;flex-wrap:wrap;justify-content:center}.restart-journey{order:-1}.site-copyright{width:100%;text-align:center}}

/* Tablet portrait: keep story bridge and persona copy from running under the image. */
@media (min-width:701px) and (max-width:1050px) and (orientation:portrait){
  .js .questions{height:1180svh}
  .js .questions-stage{top:12px;height:calc(100svh - 24px);min-height:0;padding:0;overflow:hidden}
  .js .question-bridge{width:min(44vw,390px);margin-left:clamp(20px,4vw,38px);padding:clamp(54px,7vh,76px) 10px 24px}
  .js .question-bridge h2{font-size:clamp(33px,5.8vw,48px);line-height:1.02;max-width:100%;overflow-wrap:normal}
  .js .question-bridge>span{margin-top:20px;font-size:13px;white-space:normal;max-width:310px}
  .js .question-bridge small{display:block;margin-top:20px;max-width:310px;font-size:10px;line-height:1.45;white-space:normal}
  .js .persona-panel{grid-template-columns:minmax(0,42vw) minmax(0,50vw);gap:clamp(18px,3vw,36px)}
  .js .persona-panel .persona-copy{width:auto;max-width:100%;margin:clamp(430px,45vh,560px) 0 0 clamp(12px,2.8vw,26px)}
  .js .persona-panel h3{font-size:clamp(34px,5.1vw,46px);line-height:.98;max-width:100%}
  .js .persona-panel blockquote{max-width:100%;font-size:clamp(15px,2.35vw,20px);line-height:1.34;letter-spacing:-.02em}
  .js .persona-panel .meaning{grid-template-columns:minmax(90px,.75fr) minmax(0,1fr);gap:10px}
  .js .persona-panel .meaning p{font-size:clamp(14px,2vw,17px);line-height:1.35}
  .js .persona-panel .persona-media{margin:42px 0 24px;border-radius:26px}
}

/* Mobile answer cards: remove secondary chips and allow the three answers to autoplay. */
@media(max-width:1200px), (orientation:portrait), (max-height:760px){
  .mobile-answer-slide{opacity:0;transform:scale(1.025);animation:mobileAnswerSlide 12s infinite!important}
  .mobile-answer-slide:nth-child(1){animation-delay:0s!important}
  .mobile-answer-slide:nth-child(2){animation-delay:4s!important}
  .mobile-answer-slide:nth-child(3){animation-delay:8s!important}
  .mobile-answer-slide .image-coming{display:none!important}
  .mobile-answer-slide .answer-content{bottom:24px!important}
  .mobile-answer-slide .answer-content .eyebrow{display:block!important;margin-bottom:12px!important;font-size:12px!important;color:#fff!important}
  .mobile-answer-slide .answer-number{display:inline-flex!important}
}


/* Story intro title: reveal each word with Charlie's narration. */
.story-word-title .prevention-title-line{display:block;color:var(--muted)}
.story-word-title .prevention-title-line-primary{color:var(--ink)}
.story-word-title .story-word{display:inline-block;color:inherit;opacity:0;filter:blur(10px);transform:translateY(.35em) scale(.96);transition:opacity .42s ease,filter .52s ease,transform .52s cubic-bezier(.2,.75,.25,1)}
.story-word-title .story-word.is-visible{opacity:1;filter:blur(0);transform:none}
html:not(.js) .story-word-title .story-word,.questions:not([data-entry-audio-active]) .story-word-title[data-reveal-complete="true"] .story-word{opacity:1;filter:blur(0);transform:none}
@media(prefers-reduced-motion:reduce){.story-word-title .story-word{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}}

/* Jane body close: staged phrase reveal, matching the connection spoken-title treatment. */
.jane-closing-line strong{display:block;min-height:1.15em}
.jane-closing-phrase{display:inline-block;opacity:0;filter:blur(8px);transform:translateY(.42em) scale(.9);transition:opacity .28s ease,filter .38s ease,transform .44s cubic-bezier(.2,.8,.2,1)}
.questions[data-jane-close="understand"] .jane-closing-understand,
.questions[data-jane-close="act"] .jane-closing-understand,
.questions[data-jane-close="act"] .jane-closing-act,
.questions[data-jane-close="measure"] .jane-closing-phrase,
.questions[data-jane-close="complete"] .jane-closing-phrase{opacity:1;filter:blur(0);transform:none}
html:not(.js) .jane-closing-phrase{opacity:1;filter:none;transform:none}
@media(prefers-reduced-motion:reduce){.jane-closing-phrase{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}}
.story-word-title .prevention-title-line-green{display:block;color:var(--green)}

/* Story-to-persona handoff: fade Jane, then lift the bridge vertically into place. */
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .questions-track{width:100%;max-width:100vw}
  .js .prevention-view{position:absolute;inset:0 auto 0 0;width:100%;padding:0 var(--gutter);gap:clamp(90px,10vw,180px);opacity:1!important;pointer-events:none}
  .js .prevention-view-title{width:min(54vw,980px);flex:0 0 min(54vw,980px)}
  .js .prevention-view-body{flex:0 0 min(40vw,760px);width:min(40vw,760px);max-width:760px}
  .js .question-bridge{position:absolute;left:var(--gutter);top:0;z-index:6;width:min(46vw,760px);height:100svh;margin-left:0;padding:clamp(82px,10vh,128px) 0 0;opacity:var(--bridge-opacity,0);transform:translate3d(0,var(--bridge-lift,18vh),0);transition:opacity .26s ease,transform .58s cubic-bezier(.2,.75,.25,1);pointer-events:none}
  .js .question-bridge h2{font-size:clamp(54px,5vw,78px);line-height:.98;max-width:100%}
  .js .personas{z-index:5}
  .js .persona-panel{transition:opacity .55s ease,translate .65s cubic-bezier(.2,.75,.25,1),visibility 0s linear .25s}
}


/* Charlie-to-Jane handoff: slide title away, bring Jane in from the right. */
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .prevention-view-title{transform:translate3d(calc(var(--prevention-title-shift,0) * -1vw),0,0)}
  .js .prevention-view-body{opacity:var(--prevention-body-opacity,0);transform:translate3d(calc((1 - var(--prevention-body-enter,0)) * 28vw),0,0)}
}

/* Centre Jane's panel at the end of its right-to-centre entrance. */
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .prevention-view-body{position:absolute;left:50%;top:50%;width:min(52vw,820px);max-width:820px;flex:0 0 auto;transform:translate3d(calc(-50% + ((1 - var(--prevention-body-enter,0)) * 48vw)),-50%,0);z-index:3}
}

/* Keep Jane's closing statement on one line when desktop space allows. */
@media (min-width:1051px){
  .jane-closing-line strong{white-space:nowrap}
}

/* Keep title accents consistent with the hero green while preserving black primary lines. */
.story-word-title .prevention-title-line-primary,
.story-word-title .prevention-title-line-primary .story-word{color:var(--ink)!important}
.story-word-title .prevention-title-line-green,
.story-word-title .prevention-title-line-green .story-word{color:var(--green)!important}
/* Tablet/mobile question-persona text alignment: keep copy left-aligned and inside the viewport. */
@media (max-width:900px) and (prefers-reduced-motion:no-preference){
  .js .question-bridge{
    left:0!important;
    width:calc(100vw - 44px)!important;
    max-width:calc(100vw - 44px)!important;
    margin-left:0!important;
    padding-left:22px!important;
    padding-right:22px!important;
    align-items:flex-start!important;
    text-align:left!important;
  }
  .js .question-bridge h2{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(40px,10vw,62px)!important;
    line-height:.98!important;
    text-align:left!important;
    overflow-wrap:normal!important;
  }
  .js .question-bridge>span,
  .js .question-bridge small{
    width:100%!important;
    max-width:100%!important;
    text-align:left!important;
  }
  .js .persona-panel{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:clamp(18px,4vw,34px)!important;
  }
  .js .persona-panel .persona-copy{
    width:100%!important;
    max-width:calc(50vw - 38px)!important;
    margin-left:0!important;
    text-align:left!important;
  }
  .js .persona-panel h3{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(38px,7vw,52px)!important;
    line-height:.96!important;
    text-align:left!important;
    overflow-wrap:normal!important;
  }
}
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .question-bridge,
  .js .persona-panel .persona-copy{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    text-align:left!important;
  }
  .js .question-bridge h2,
  .js .persona-panel h3{
    text-align:left!important;
  }
}

/* Match the Six Answers heading layout to the Six Questions bridge across responsive widths. */
@media (min-width:901px) and (prefers-reduced-motion:no-preference){
  .js .capabilities-heading.sarah-narrative{
    left:var(--gutter)!important;
    width:min(46vw,760px)!important;
    max-width:min(46vw,760px)!important;
    text-align:left!important;
  }
  .js .answers-overview h2{
    font-size:clamp(54px,5vw,78px)!important;
    line-height:.98!important;
    margin:0!important;
    max-width:100%!important;
    text-align:left!important;
  }
  .js .answers-overview .answers-link{
    margin-top:38px!important;
    font-size:17px!important;
    text-align:left!important;
  }
  .js .answers-support{
    margin-top:45px!important;
    max-width:none!important;
    font-size:11px!important;
    line-height:1.5!important;
    text-align:left!important;
  }
}

@media (max-width:900px) and (prefers-reduced-motion:no-preference){
  .js .capabilities-heading.sarah-narrative{
    left:0!important;
    width:calc(100vw - 44px)!important;
    max-width:calc(100vw - 44px)!important;
    margin-left:0!important;
    padding-left:22px!important;
    padding-right:22px!important;
    align-items:flex-start!important;
    text-align:left!important;
  }
  .js .answers-overview{
    width:100%!important;
    max-width:100%!important;
    text-align:left!important;
  }
  .js .answers-overview h2{
    width:100%!important;
    max-width:100%!important;
    font-size:clamp(40px,10vw,62px)!important;
    line-height:.98!important;
    margin:0!important;
    text-align:left!important;
    overflow-wrap:normal!important;
  }
  .js .answers-overview .answers-link{
    width:fit-content!important;
    max-width:100%!important;
    margin-top:38px!important;
    font-size:17px!important;
    text-align:left!important;
  }
  .js .answers-support{
    width:100%!important;
    max-width:100%!important;
    margin-top:45px!important;
    font-size:11px!important;
    line-height:1.5!important;
    text-align:left!important;
  }
}

@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .capabilities-heading.sarah-narrative,
  .js .answers-overview{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    padding-left:0!important;
    padding-right:0!important;
    text-align:left!important;
  }
  .js .answers-overview h2,
  .js .answers-overview .answers-link,
  .js .answers-support{
    text-align:left!important;
  }
}

/* Match the complete Six Questions persona layout to the Six Answers section. */
@media (min-width:901px) and (prefers-reduced-motion:no-preference){
  .js .question-bridge{
    left:var(--gutter)!important;
    top:0!important;
    width:min(46vw,760px)!important;
    max-width:min(46vw,760px)!important;
    height:100svh!important;
    margin-left:0!important;
    padding:clamp(45px,6vh,72px) 0 0!important;
    text-align:left!important;
  }
  .js .question-bridge h2{
    font-size:clamp(54px,5vw,78px)!important;
    line-height:.98!important;
    margin:0!important;
    max-width:100%!important;
    text-align:left!important;
  }
  .js .question-bridge>span{
    margin-top:38px!important;
    font-size:17px!important;
    text-align:left!important;
  }
  .js .question-bridge small{
    margin-top:45px!important;
    max-width:none!important;
    font-size:11px!important;
    line-height:1.5!important;
    text-align:left!important;
  }
  .js .personas-stage{
    padding:0!important;
  }
  .js .persona-deck{
    position:absolute!important;
    inset:0!important;
    height:100%!important;
    min-height:0!important;
  }
  .js .persona-panel{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    padding:0!important;
    margin:0!important;
  }
  .js .persona-panel .persona-copy{
    position:absolute!important;
    z-index:8!important;
    left:var(--gutter)!important;
    bottom:42px!important;
    width:min(46vw,760px)!important;
    max-width:min(46vw,760px)!important;
    margin:0!important;
    text-align:left!important;
  }
  .js .persona-panel .persona-media{
    position:absolute!important;
    z-index:3!important;
    top:42px!important;
    right:calc(var(--gutter) - 12px)!important;
    bottom:42px!important;
    width:54%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    border-radius:28px!important;
  }
  .js .persona-progress{
    left:var(--gutter)!important;
    bottom:24px!important;
    width:min(310px,34vw)!important;
  }
}

@media (min-width:701px) and (max-width:900px) and (prefers-reduced-motion:no-preference){
  .js .question-bridge{
    left:0!important;
    width:calc(100vw - 44px)!important;
    max-width:calc(100vw - 44px)!important;
    padding:clamp(45px,6vh,72px) 22px 0!important;
  }
  .js .persona-panel{
    display:block!important;
    position:absolute!important;
    inset:0!important;
    padding:0!important;
    margin:0!important;
  }
  .js .persona-panel .persona-copy{
    position:absolute!important;
    z-index:8!important;
    left:22px!important;
    bottom:42px!important;
    width:calc(46vw - 22px)!important;
    max-width:calc(46vw - 22px)!important;
    margin:0!important;
    text-align:left!important;
  }
  .js .persona-panel .persona-media{
    position:absolute!important;
    z-index:3!important;
    top:42px!important;
    right:22px!important;
    bottom:42px!important;
    width:50vw!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    margin:0!important;
    border-radius:28px!important;
  }
  .js .persona-progress{
    left:22px!important;
    bottom:24px!important;
    width:min(310px,42vw)!important;
  }
}

@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .persona-panel{
    display:flex!important;
    flex-direction:column!important;
    gap:28px!important;
  }
  .js .persona-panel .persona-copy{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
  .js .persona-panel .persona-media{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:620px!important;
    min-height:620px!important;
    max-height:none!important;
    margin:24px 0 0!important;
    border-radius:28px!important;
  }
}

/* Responsive story polish: keep the full journey readable on smaller devices. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  body{font-size:16px}
  .site-header{height:76px;padding:0 20px}
  .perspective-hero{padding:0 10px}
  .perspective-hero-stage{padding:96px 10px 36px!important;overflow:hidden}
  .perspective-hero h1{font-size:clamp(42px,12vw,58px)!important;line-height:.96!important;max-width:100%}
  .perspective-summary{max-width:100%;font-size:15px!important;line-height:1.5}
  .perspective-media{height:min(68svh,460px)!important;min-height:360px!important;max-height:520px!important}
  .perspective-media-caption{left:20px!important;right:20px!important;bottom:22px!important;font-size:clamp(28px,8vw,36px)!important}

  .questions{height:auto!important;padding:0 10px 64px!important;margin-top:14px!important;overflow:visible!important}
  .questions-stage{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;padding:0!important;overflow:visible!important}
  .questions-track{position:relative!important;display:block!important;width:auto!important;height:auto!important;padding:0!important;transform:none!important;overflow:visible!important}
  .prevention-view{position:relative!important;display:block!important;min-height:0!important;padding:74px 12px 58px!important;background:var(--paper)!important;color:var(--ink)!important}
  .prevention-view-title,.prevention-view-body{position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;transform:none!important;opacity:1!important}
  .prevention-view h2{font-size:clamp(42px,12vw,62px)!important;line-height:.94!important;max-width:100%!important;text-align:left!important}
  .prevention-view-body{display:grid!important;gap:17px!important;margin-top:34px!important;font-size:17px!important;line-height:1.48!important;letter-spacing:-.02em!important}
  .jane-closing-line strong{min-height:0!important}
  .jane-closing-phrase{opacity:1!important;filter:none!important;transform:none!important}

  .question-bridge{position:relative!important;display:block!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:54px 12px 62px!important;transform:none!important;opacity:1!important;text-align:left!important;pointer-events:auto!important}
  .question-bridge h2,.answers-overview h2,.framework-intro h2,.collective-health h2,.finale h2{font-size:clamp(40px,12vw,58px)!important;line-height:.96!important;max-width:100%!important;text-align:left!important;overflow-wrap:normal!important;word-break:normal!important;text-wrap:balance}
  .question-bridge>span,.question-bridge small{display:block!important;width:100%!important;max-width:100%!important;white-space:normal!important;text-align:left!important}
  .question-bridge>span{margin-top:28px!important;font-size:16px!important}
  .question-bridge small{margin-top:30px!important;font-size:11px!important;line-height:1.45!important}

  .personas{position:relative!important;inset:auto!important;height:auto!important;min-height:0!important;padding:0!important;opacity:1!important;pointer-events:auto!important;overflow:visible!important}
  .personas-stage{position:relative!important;inset:auto!important;height:auto!important;min-height:0!important;padding:0!important;overflow:visible!important}
  .persona-deck{position:relative!important;inset:auto!important;height:auto!important;min-height:0!important;overflow:visible!important}
  .persona-panel{position:relative!important;inset:auto!important;display:flex!important;visibility:visible!important;opacity:1!important;flex-direction:column!important;gap:22px!important;margin:0 0 78px!important;padding:0 12px!important;transform:none!important;translate:none!important;pointer-events:auto!important}
  .persona-panel .persona-copy{position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;text-align:left!important}
  .persona-panel h3{font-size:clamp(38px,11.2vw,56px)!important;line-height:.95!important;max-width:100%!important;margin:14px 0 0!important;text-align:left!important;overflow-wrap:normal!important}
  .persona-panel blockquote{font-size:18px!important;line-height:1.42!important;max-width:100%!important;margin:22px 0 18px!important}
  .persona-panel .meaning{display:grid!important;grid-template-columns:minmax(118px,.9fr) minmax(0,1fr)!important;gap:12px!important;margin-top:18px!important;padding-top:15px!important}
  .persona-panel .meaning p{font-size:15px!important;line-height:1.35!important}
  .persona-panel .persona-media{position:relative!important;inset:auto!important;width:100%!important;height:min(72svh,560px)!important;min-height:420px!important;max-height:620px!important;margin:12px 0 0!important;border-radius:26px!important;overflow:hidden!important}
  .persona-panel .persona-media img{width:100%!important;height:100%!important;object-fit:cover!important}
  .persona-progress{display:none!important}

  .connection{height:auto!important;margin:0 10px!important;border-radius:24px!important;overflow:hidden!important}
  .connection-stage{position:relative!important;height:auto!important;min-height:0!important;padding:72px 22px!important}
  .connection h2{font-size:clamp(40px,12vw,58px)!important;line-height:.96!important;margin:28px 0 42px!important}
  .people-network{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:24px 14px!important}

  .framework{height:auto!important;min-height:0!important;padding:84px 22px!important;overflow:hidden!important}
  .framework-stage{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;overflow:visible!important;padding:0!important}
  .framework-track{display:grid!important;grid-template-columns:1fr!important;gap:24px!important;width:auto!important;transform:none!important;padding:0!important}
  .framework-intro,.framework-chapter{position:relative!important;width:100%!important;min-width:0!important;min-height:auto!important;padding:28px 0!important;transform:none!important;opacity:1!important}
  .framework-chapter h3{font-size:clamp(46px,14vw,70px)!important;line-height:.94!important}
  .framework-chapter strong{font-size:clamp(28px,8vw,42px)!important;line-height:1.05!important}
  .framework-statement{font-size:clamp(34px,10vw,50px)!important;line-height:1.02!important}
  .signal-progress{display:none!important}

  .capabilities{height:auto!important;margin:0 10px!important;border-radius:24px!important;overflow:hidden!important;background:color-mix(in srgb,var(--yellow) 18%,var(--paper))!important}
  .capabilities-stage{position:relative!important;display:block!important;height:auto!important;min-height:0!important;padding:56px 20px 70px!important;overflow:visible!important}
  .capabilities-heading.sarah-narrative{position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;margin:0 0 30px!important;padding:0!important;opacity:1!important;transform:none!important;text-align:left!important}
  .answers-overview h2{font-size:clamp(40px,12vw,58px)!important;line-height:.96!important}
  .answers-support{max-width:100%!important;font-size:11px!important;line-height:1.45!important}
  .capabilities .persona-answer-stories,.capabilities .capability-list,.cap-answer-media{display:none!important}
  .mobile-answer-groups{display:grid!important;gap:76px!important;margin-top:32px!important}
  .mobile-answer-group{display:grid!important;gap:18px!important;min-width:0!important}
  .mobile-answer-main{position:relative!important;display:block!important;margin:0!important;padding:0!important;opacity:1!important;transform:none!important;pointer-events:auto!important}
  .mobile-answer-main blockquote{display:none!important}
  .mobile-answer-main h3{font-size:clamp(38px,11vw,54px)!important;line-height:.95!important;margin:10px 0 14px!important;text-align:left!important}
  .mobile-answer-main .sarah-detail{margin-top:16px!important;margin-bottom:0!important}
  .mobile-answer-slider{position:relative!important;display:block!important;height:min(78svh,640px)!important;min-height:520px!important;overflow:hidden!important;border-radius:24px!important;background:#d7d1c2!important;box-shadow:0 18px 40px #10141016!important}
  .mobile-answer-slide{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;border-radius:24px!important;overflow:hidden!important;opacity:0;transform:scale(1.025);animation:mobileAnswerSlide 12s infinite!important;pointer-events:none!important}
  .mobile-answer-slide:nth-child(1){animation-delay:0s!important}
  .mobile-answer-slide:nth-child(2){animation-delay:4s!important}
  .mobile-answer-slide:nth-child(3){animation-delay:8s!important}
  .mobile-answer-slide .answer-scene-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;padding:0!important}
  .mobile-answer-slide .image-coming,.mobile-answer-slide .answer-content h3{display:none!important}
  .mobile-answer-slide .answer-number{display:inline-flex!important;position:absolute!important;left:18px!important;top:18px!important;right:auto!important;z-index:2;max-width:calc(100% - 36px);padding:8px 10px!important;background:#f4f1e9e8!important;color:var(--ink)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important;text-align:left!important}
  .mobile-answer-slide .answer-content{position:absolute!important;left:18px!important;right:18px!important;bottom:24px!important;z-index:2;padding:0!important;background:transparent!important;color:#f4f1e9!important;text-shadow:0 10px 28px #101410cc!important}
  .mobile-answer-slide .answer-content .eyebrow{display:block!important;margin-bottom:12px!important;color:#fff!important;font-size:12px!important;letter-spacing:.14em!important}
  .mobile-answer-slide .answer-content>strong{display:block!important;font-family:'Anton',Impact,sans-serif!important;font-size:clamp(34px,10vw,48px)!important;font-weight:400!important;line-height:.96!important;text-transform:uppercase!important;color:#f4f1e9!important}
  .mobile-answer-dots{display:flex!important;justify-content:center!important;gap:8px!important;margin-top:4px!important}

  .collective-health{height:auto!important;min-height:0!important;margin:34px 10px 0!important;border-radius:24px!important;overflow:hidden!important}
  .collective-health-stage{position:relative!important;height:auto!important;min-height:0!important;padding:84px 22px!important;overflow:visible!important}
  .collective-health h2 span,.collective-health-intro{opacity:1!important;transform:none!important}
  .collective-health-intro{max-width:100%!important;font-size:18px!important;line-height:1.45!important;text-align:left!important}

  .finale{padding:86px 22px 28px!important;overflow:hidden!important}
  .registration-layout{display:grid!important;grid-template-columns:1fr!important;gap:40px!important}
  .registration-intro>p{font-size:clamp(28px,8vw,36px)!important;line-height:1.15!important}
  .form-row{grid-template-columns:1fr!important;gap:0!important}
  .finale footer{display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:18px!important;margin-top:70px!important;text-align:center!important}
  .restart-journey{order:-1;width:min(100%,300px)!important}
  .site-copyright{width:100%!important;text-align:center!important}
}

@media (min-width:701px) and (max-width:1050px){
  html,body{overflow-x:hidden}
  .perspective-hero h1{font-size:clamp(56px,8vw,90px)!important;line-height:.98!important}
  .prevention-view h2{font-size:clamp(56px,8vw,94px)!important;line-height:.95!important}
  .question-bridge h2,.answers-overview h2{font-size:clamp(46px,6.4vw,68px)!important;line-height:.98!important;max-width:100%!important;text-align:left!important}
}

@media (min-width:701px) and (max-width:1050px) and (orientation:portrait){
  .js .question-bridge{left:clamp(22px,4vw,38px)!important;width:min(44vw,430px)!important;max-width:min(44vw,430px)!important;margin-left:0!important;padding-top:clamp(58px,8vh,86px)!important}
  .js .question-bridge>span,.js .question-bridge small{white-space:normal!important;max-width:100%!important}
  .js .persona-panel .persona-copy{left:clamp(22px,4vw,38px)!important;bottom:clamp(28px,4vh,42px)!important;width:min(44vw,430px)!important;max-width:min(44vw,430px)!important;margin:0!important}
  .js .persona-panel h3{font-size:clamp(34px,5vw,48px)!important;line-height:.98!important}
  .js .persona-panel blockquote{font-size:clamp(14px,2.1vw,18px)!important;line-height:1.34!important}
  .js .persona-panel .meaning{grid-template-columns:minmax(92px,.75fr) minmax(0,1fr)!important;gap:10px!important;margin-top:12px!important;padding-top:10px!important}
  .js .persona-panel .meaning p{font-size:clamp(13px,1.9vw,16px)!important;line-height:1.34!important}
  .js .persona-panel .persona-media{top:32px!important;right:clamp(22px,4vw,38px)!important;bottom:32px!important;width:50vw!important;border-radius:26px!important}
  .js .capabilities-heading.sarah-narrative{left:clamp(22px,4vw,38px)!important;width:min(44vw,430px)!important;max-width:min(44vw,430px)!important}
  .js .capability-apps .cap-answer-media{right:clamp(22px,4vw,38px)!important;width:50vw!important;top:32px!important;bottom:32px!important}
}

/* Framework taglines: use the title display type without audio-timed reveal. */
.framework-tagline{
  display:block;
  font-family:'Anton',Impact,sans-serif;
  font-weight:400;
  text-transform:uppercase;
  letter-spacing:.01em;
}
.framework-tagline-line{
  display:block;
  opacity:1;
  filter:none;
  transform:none;
}

/* Framework intro title: word reveal synced to the intro narration. */
.framework-word-title .framework-title-line{display:block;color:var(--muted)}
.framework-word-title .framework-title-line-primary{color:var(--ink)}
.framework-word-title .framework-title-line-green{color:var(--green)}
.framework-word-title .framework-word{display:inline-block;color:inherit;opacity:1;filter:none;transform:none}
.framework[data-intro-audio-active] .framework-word-title .framework-word{opacity:0;filter:blur(10px);transform:translateY(.35em) scale(.96);transition:opacity .42s ease,filter .52s ease,transform .52s cubic-bezier(.2,.75,.25,1)}
.framework[data-intro-audio-active] .framework-word-title .framework-word.is-visible,.framework-word-title[data-reveal-complete="true"] .framework-word{opacity:1;filter:blur(0);transform:none}
@media(prefers-reduced-motion:reduce){.framework-word-title .framework-word{opacity:1!important;filter:none!important;transform:none!important;transition:none!important}}

/* Framework focus: upcoming chapters are visible but blurred until they reach the focal position. */
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .framework-chapter{
    opacity:calc(.52 * var(--framework-chapter-preview, 1));
    filter:blur(7px) saturate(.78);
    transform:scale(.985);
    transition:opacity .45s ease,filter .55s ease,transform .55s cubic-bezier(.2,.75,.25,1);
  }
  .js .framework-chapter.is-framework-focus{
    opacity:1;
    filter:blur(0) saturate(1);
    transform:scale(1);
  }
}
@media(max-width:700px), (prefers-reduced-motion:reduce){.framework-chapter{opacity:1!important;filter:none!important;transform:none!important}}

/* Stage the framework intro only once it is the focused item. */
@media (min-width:701px) and (prefers-reduced-motion:no-preference){
  .js .framework-intro .eyebrow,
  .js .framework-intro .framework-word,
  .js .framework-intro>p:last-child{
    opacity:0;
    filter:blur(10px);
    transform:translateY(26px) scale(.97);
    transition:opacity .42s ease,filter .52s ease,transform .56s cubic-bezier(.2,.75,.25,1);
  }
  .js .framework-intro.is-framework-focus[data-intro-stage] .eyebrow{
    opacity:1;
    filter:blur(0);
    transform:none;
  }
  .js .framework-intro.is-framework-focus .framework-word.is-visible,
  .js .framework-intro.is-framework-focus .framework-word-title[data-reveal-complete="true"] .framework-word{
    opacity:1;
    filter:blur(0);
    transform:none;
  }
  .js .framework-intro.is-framework-focus[data-intro-stage="complete"]>p:last-child{
    opacity:1;
    filter:blur(0);
    transform:none;
  }
}


/* Privacy cookie notice */
.privacy-cookie-notice{position:fixed;z-index:120;left:var(--gutter);right:var(--gutter);bottom:22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;max-width:980px;margin:0 auto;padding:18px 18px 18px 20px;border:1px solid color-mix(in srgb,var(--ink) 18%,transparent);border-radius:22px;background:color-mix(in srgb,var(--paper) 91%,transparent);box-shadow:0 18px 60px #2626261c;color:var(--ink);backdrop-filter:blur(18px);opacity:0;transform:translateY(18px);pointer-events:none;transition:opacity .36s ease,transform .42s cubic-bezier(.2,.75,.25,1)}
.privacy-cookie-notice.is-visible{opacity:1;transform:none;pointer-events:auto}
.privacy-cookie-notice strong{display:block;margin-bottom:5px;font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:750}
.privacy-cookie-notice p{max-width:690px;font-size:13px;line-height:1.45;color:var(--muted)}
.privacy-cookie-actions{display:flex;gap:10px;align-items:center;justify-content:flex-end}
.privacy-cookie-actions button{min-height:40px;padding:10px 14px;border-radius:999px;border:1px solid color-mix(in srgb,var(--ink) 22%,transparent);font-size:12px;font-weight:700;letter-spacing:.03em;cursor:pointer;white-space:nowrap}
.privacy-cookie-secondary{background:transparent;color:var(--ink)}
.privacy-cookie-primary{background:var(--ink);color:var(--yellow)}
.privacy-cookie-actions button:hover{transform:translateY(-1px)}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.privacy-cookie-notice{left:12px;right:12px;bottom:12px;grid-template-columns:1fr;padding:16px;border-radius:18px}.privacy-cookie-actions{justify-content:stretch}.privacy-cookie-actions button{flex:1;white-space:normal}.privacy-cookie-notice p{font-size:12px}}


/* Privacy page */
.privacy-page{min-height:100svh;padding:clamp(90px,11vw,150px) var(--gutter);background:var(--paper);color:var(--ink)}
.privacy-page .wordmark{display:inline-flex;margin-bottom:clamp(52px,8vw,100px)}
.privacy-page main{max-width:980px}
.privacy-page h1{font-size:clamp(56px,8vw,118px);margin-bottom:34px}
.privacy-page h2{font-size:clamp(28px,3.2vw,46px);margin:54px 0 16px;letter-spacing:-.04em}
.privacy-page p,.privacy-page li{font-size:clamp(16px,1.25vw,20px);line-height:1.55;color:var(--muted)}
.privacy-page ul{margin:12px 0 0;padding-left:22px}
.privacy-page a{text-decoration:underline;text-underline-offset:4px}
.privacy-page .button{margin-top:42px;text-decoration:none}
.privacy-note a,.site-copyright a,.privacy-cookie-notice a{text-decoration:underline;text-underline-offset:3px}
.privacy-settings{border:0;padding:0;background:none;color:inherit;font:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.privacy-settings:hover,.privacy-settings:focus-visible{opacity:.7}



/* Keep persona copy and meaning rows inside the text column beside the media. */
@media (min-width:701px){
  .js .persona-panel .persona-copy{
    width:min(37vw,560px);
    max-width:min(37vw,560px);
    overflow:visible;
  }
  .js .persona-panel .meaning{
    width:100%;
    max-width:100%;
    grid-template-columns:minmax(0,0.82fr) minmax(0,1fr);
  }
  .js .persona-panel .meaning>span,
  .js .persona-panel .meaning p{
    min-width:0;
    max-width:100%;
  }
  .js .persona-panel .meaning p{
    overflow-wrap:normal;
  }
}
@media (min-width:701px) and (max-width:1180px){
  .js .persona-panel .persona-copy{
    width:min(34vw,430px);
    max-width:min(34vw,430px);
  }
  .js .persona-panel .meaning{
    grid-template-columns:1fr;
    gap:8px;
  }
}


/* Mobile spacing between the connected-journeys section and framework intro. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .connection{
    margin-bottom:clamp(56px,14vw,88px)!important;
  }
  .framework{
    padding-top:clamp(104px,24vw,148px)!important;
  }
}


/* Phone-only Six Answers: match the readable Six Questions persona rhythm and rotate all three answer images. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .capabilities .answers-overview{
    margin-bottom:42px!important;
  }
  .mobile-answer-groups{
    display:grid!important;
    gap:88px!important;
    margin-top:36px!important;
  }
  .mobile-answer-group{
    display:grid!important;
    gap:24px!important;
    min-width:0!important;
  }
  .mobile-answer-main{
    display:block!important;
    position:relative!important;
    margin:0!important;
    padding:0!important;
    opacity:1!important;
    transform:none!important;
    pointer-events:auto!important;
    text-align:left!important;
  }
  .mobile-answer-main .eyebrow{
    display:block!important;
    margin-bottom:10px!important;
    color:var(--ink)!important;
  }
  .mobile-answer-main h3{
    display:block!important;
    margin:0 0 20px!important;
    font-size:clamp(38px,11vw,54px)!important;
    line-height:.95!important;
    text-align:left!important;
  }
  .mobile-answer-main blockquote{
    display:block!important;
    margin:0 0 22px!important;
    max-width:100%!important;
    font-size:18px!important;
    line-height:1.42!important;
    letter-spacing:-.02em!important;
    color:var(--ink)!important;
  }
  .mobile-answer-main .sarah-persona{
    display:grid!important;
    gap:4px!important;
    margin:0 0 20px!important;
    font-size:14px!important;
  }
  .mobile-answer-main .sarah-persona strong{
    font-size:15px!important;
  }
  .mobile-answer-main .sarah-detail{
    display:grid!important;
    grid-template-columns:minmax(132px,.9fr) minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding-top:16px!important;
    border-top:1px solid var(--track)!important;
  }
  .mobile-answer-main .sarah-detail span,
  .mobile-answer-main .sarah-detail strong{
    min-width:0!important;
  }
  .mobile-answer-main .sarah-detail strong{
    font-family:Archivo,Arial,sans-serif!important;
    font-size:15px!important;
    font-weight:500!important;
    line-height:1.35!important;
    letter-spacing:-.02em!important;
    text-transform:none!important;
  }
  .mobile-answer-slider{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:min(76svh,640px)!important;
    min-height:520px!important;
    overflow:hidden!important;
    border-radius:26px!important;
    background:#d7d1c2!important;
    box-shadow:0 18px 40px #10141016!important;
  }
  .mobile-answer-slide{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    border-radius:26px!important;
    overflow:hidden!important;
    opacity:0;
    transform:scale(1.025);
    animation:mobileAnswerSlide 12s infinite!important;
    pointer-events:none!important;
  }
  .mobile-answer-slide:nth-child(1){animation-delay:0s!important}
  .mobile-answer-slide:nth-child(2){animation-delay:4s!important}
  .mobile-answer-slide:nth-child(3){animation-delay:8s!important}
  .mobile-answer-slide .answer-scene-image{
    position:absolute!important;
    inset:0!important;
    width:100%!important;
    height:100%!important;
    padding:0!important;
    object-fit:cover!important;
  }
  .mobile-answer-slide:after{
    content:'';
    position:absolute;
    inset:0;
    z-index:0;
    background:linear-gradient(180deg,#10141012 0%,#10141018 38%,#10141088 100%);
  }
  .mobile-answer-slide .answer-number{
    display:inline-flex!important;
    position:absolute!important;
    left:18px!important;
    top:18px!important;
    right:auto!important;
    z-index:2!important;
    max-width:calc(100% - 36px)!important;
    padding:8px 10px!important;
    background:#f4f1e9e8!important;
    color:var(--ink)!important;
    font-size:10px!important;
    font-weight:900!important;
    letter-spacing:.08em!important;
    line-height:1!important;
    text-transform:uppercase!important;
    text-align:left!important;
  }
  .mobile-answer-slide .image-coming,
  .mobile-answer-slide .answer-content h3{
    display:none!important;
  }
  .mobile-answer-slide .answer-content{
    position:absolute!important;
    left:18px!important;
    right:18px!important;
    bottom:24px!important;
    z-index:2!important;
    padding:0!important;
    background:transparent!important;
    color:#f4f1e9!important;
    text-shadow:0 10px 28px #101410cc!important;
  }
  .mobile-answer-slide .answer-content .eyebrow{
    display:block!important;
    margin-bottom:12px!important;
    color:#fff!important;
    font-size:12px!important;
    letter-spacing:.14em!important;
  }
  .mobile-answer-slide .answer-content>strong{
    display:block!important;
    margin-top:0!important;
    font-family:'Anton',Impact,sans-serif!important;
    font-size:clamp(34px,10vw,48px)!important;
    font-weight:400!important;
    line-height:.96!important;
    letter-spacing:.01em!important;
    text-transform:uppercase!important;
    color:#f4f1e9!important;
  }
  .mobile-answer-dots{
    display:flex!important;
    justify-content:center!important;
    gap:8px!important;
    margin-top:2px!important;
  }
  .mobile-answer-dots span{
    width:7px!important;
    height:7px!important;
    border-radius:50%!important;
    background:color-mix(in srgb,var(--ink) 24%,transparent);
    animation:mobileAnswerDot 15s infinite!important;
  }
  .mobile-answer-dots span:nth-child(1){animation-delay:0s!important}
  .mobile-answer-dots span:nth-child(2){animation-delay:5s!important}
  .mobile-answer-dots span:nth-child(3){animation-delay:10s!important}
}
@media(max-width:1200px) and (prefers-reduced-motion:reduce), (orientation:portrait) and (prefers-reduced-motion:reduce), (max-height:760px) and (prefers-reduced-motion:reduce){
  .mobile-answer-slide,.mobile-answer-dots span{animation:none!important}
  .mobile-answer-slide:first-child{opacity:1!important;transform:none!important}
  .mobile-answer-dots span:first-child{background:var(--ink)!important}
}



/* Phone-only Six Answers: force the actual image stack to rotate with the dots. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .mobile-answer-slider .mobile-answer-slide{
    visibility:hidden!important;
    z-index:0!important;
    opacity:1!important;
    transform:none!important;
    animation:mobileAnswerVisibility 12s infinite!important;
  }
  .mobile-answer-slider .mobile-answer-slide:nth-child(1){animation-delay:0s!important}
  .mobile-answer-slider .mobile-answer-slide:nth-child(2){animation-delay:-8s!important}
  .mobile-answer-slider .mobile-answer-slide:nth-child(3){animation-delay:-4s!important}
}
@keyframes mobileAnswerVisibility{
  0%,31%{visibility:visible;z-index:3}
  33%,100%{visibility:hidden;z-index:0}
}
@media(max-width:1200px) and (prefers-reduced-motion:reduce), (orientation:portrait) and (prefers-reduced-motion:reduce), (max-height:760px) and (prefers-reduced-motion:reduce){
  .mobile-answer-slider .mobile-answer-slide{visibility:hidden!important;z-index:0!important;animation:none!important}
  .mobile-answer-slider .mobile-answer-slide:first-child{visibility:visible!important;z-index:3!important}
}

/* Mobile fixes: static prevention title, connected network spine, and visible answer carousel images. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .prevention-view-title .story-word-title .story-word,
  .questions[data-entry-audio-active] .prevention-view-title .story-word-title .story-word{
    opacity:1!important;
    filter:none!important;
    transform:none!important;
    transition:none!important;
  }
  .prevention-view-title .story-word-title{
    min-height:0!important;
  }
  .prevention-view-title{
    min-height:0!important;
  }
  .people-network{
    position:relative!important;
    overflow:visible!important;
  }
  .people-network:before{
    content:'';
    position:absolute;
    left:50%;
    top:28px;
    bottom:-44px;
    width:1px;
    transform:translateX(-50%);
    background:color-mix(in srgb,var(--yellow) 68%,transparent);
    z-index:0;
  }
  .people-network:after{
    content:'';
    position:absolute;
    left:0;
    right:0;
    top:calc(50% - 1px);
    height:1px;
    background:color-mix(in srgb,var(--yellow) 34%,transparent);
    z-index:0;
  }
  .network-person{
    z-index:1;
  }
  .network-person:before{
    content:'';
    position:absolute;
    left:50%;
    top:100%;
    width:1px;
    height:18px;
    transform:translateX(-50%);
    background:color-mix(in srgb,var(--yellow) 52%,transparent);
  }
  .mobile-answer-slider .mobile-answer-slide{
    visibility:visible!important;
    z-index:0!important;
    opacity:0!important;
    transform:scale(1.025)!important;
    animation:mobileAnswerImageCycle 12s infinite!important;
  }
  .mobile-answer-slider .mobile-answer-slide:nth-child(1){animation-delay:0s!important}
  .mobile-answer-slider .mobile-answer-slide:nth-child(2){animation-delay:4s!important}
  .mobile-answer-slider .mobile-answer-slide:nth-child(3){animation-delay:8s!important}
  .mobile-answer-slider .mobile-answer-slide .answer-scene-image{
    opacity:1!important;
    visibility:visible!important;
  }
}
@keyframes mobileAnswerImageCycle{
  0%,7%{opacity:0;transform:scale(1.025);z-index:0}
  12%,33%{opacity:1;transform:scale(1);z-index:3}
  38%,100%{opacity:0;transform:scale(1.025);z-index:0}
}
@media(max-width:1200px) and (prefers-reduced-motion:reduce), (orientation:portrait) and (prefers-reduced-motion:reduce), (max-height:760px) and (prefers-reduced-motion:reduce){
  .mobile-answer-slider .mobile-answer-slide{opacity:0!important;transform:none!important;animation:none!important;z-index:0!important}
  .mobile-answer-slider .mobile-answer-slide:first-child{opacity:1!important;z-index:3!important}
}


/* Mobile connection and answer carousel final polish. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .people-network{
    grid-template-columns:1fr 1fr!important;
    gap:30px 18px!important;
    padding:0 10px 52px!important;
    border:0!important;
  }
  .people-network:before{
    top:18px!important;
    bottom:0!important;
    background:color-mix(in srgb,var(--yellow) 72%,transparent)!important;
  }
  .people-network:after{
    display:none!important;
  }
  .network-person{
    padding:0 0 28px!important;
    border-bottom:0!important;
    text-align:center!important;
  }
  .network-person:after{
    bottom:0!important;
    left:50%!important;
    width:10px!important;
    height:10px!important;
    z-index:2!important;
    background:var(--yellow)!important;
    box-shadow:0 0 0 7px var(--ink)!important;
  }
  .network-person:nth-child(odd){padding-right:18px!important}
  .network-person:nth-child(even){padding-left:18px!important}
  .network-person:nth-child(odd):before,
  .network-person:nth-child(even):before{
    content:''!important;
    display:block!important;
    position:absolute!important;
    top:auto!important;
    bottom:4px!important;
    width:calc(50% - 5px)!important;
    height:1px!important;
    background:color-mix(in srgb,var(--yellow) 58%,transparent)!important;
    transform:none!important;
  }
  .network-person:nth-child(odd):before{left:50%!important}
  .network-person:nth-child(even):before{right:50%!important}
  .ecosystem-focus .network-centre:before{
    height:42px!important;
    background:color-mix(in srgb,var(--yellow) 72%,transparent)!important;
  }
  .mobile-answer-slider .mobile-answer-slide{
    background-image:linear-gradient(180deg,#10141012 0%,#10141018 38%,#10141088 100%),var(--mobile-answer-image)!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
  }
  .mobile-answer-slider .mobile-answer-slide .answer-scene-image{display:none!important}
  .mobile-answer-slider .mobile-answer-slide:after{display:none!important}
}


/* Clean mobile-only answer cards. These avoid the desktop slide classes entirely. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .mobile-answer-slider{position:relative!important;display:block!important;width:100%!important;height:min(76svh,640px)!important;min-height:520px!important;overflow:hidden!important;border-radius:26px!important;background:#d7d1c2!important;box-shadow:0 18px 40px #10141016!important}
  .mobile-answer-card{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;border-radius:26px!important;overflow:hidden!important;opacity:0;transform:scale(1.025);animation:mobileAnswerCardCycle 15s infinite!important;pointer-events:none!important;background:#1f2924!important}
  .mobile-answer-card:nth-child(1){animation-delay:0s!important}
  .mobile-answer-card:nth-child(2){animation-delay:5s!important}
  .mobile-answer-card:nth-child(3){animation-delay:10s!important}
  .mobile-answer-card-image{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;z-index:0!important}
  .mobile-answer-card:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,#10141012 0%,#10141018 38%,#10141088 100%)}
  .mobile-answer-card .answer-number{display:inline-flex!important;position:absolute!important;left:18px!important;top:18px!important;right:auto!important;z-index:2!important;max-width:calc(100% - 36px)!important;padding:8px 10px!important;background:#f4f1e9e8!important;color:var(--ink)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.08em!important;line-height:1!important;text-transform:uppercase!important;text-align:left!important}
  .mobile-answer-card .answer-content{position:absolute!important;left:18px!important;right:18px!important;bottom:24px!important;z-index:2!important;padding:0!important;background:transparent!important;color:#f4f1e9!important;text-shadow:0 10px 28px #101410cc!important}
  .mobile-answer-card .answer-content h3{display:none!important}
  .mobile-answer-card .answer-content .eyebrow{display:block!important;margin-bottom:12px!important;color:#fff!important;font-size:12px!important;letter-spacing:.14em!important}
  .mobile-answer-card .answer-content>strong{display:block!important;margin-top:0!important;font-family:'Anton',Impact,sans-serif!important;font-size:clamp(34px,10vw,48px)!important;font-weight:400!important;line-height:.96!important;letter-spacing:.01em!important;text-transform:uppercase!important;color:#f4f1e9!important}
}
@keyframes mobileAnswerCardCycle{0%,7%{opacity:0;transform:scale(1.025)}12%,33%{opacity:1;transform:scale(1)}38%,100%{opacity:0;transform:scale(1.025)}}
@media(max-width:1200px) and (prefers-reduced-motion:reduce), (orientation:portrait) and (prefers-reduced-motion:reduce), (max-height:760px) and (prefers-reduced-motion:reduce){.mobile-answer-card{opacity:0!important;transform:none!important;animation:none!important}.mobile-answer-card:first-child{opacity:1!important}}

@keyframes mobileAnswerDot15{0%,9%{background:color-mix(in srgb,var(--ink) 24%,transparent)}12%,33%{background:var(--ink)}38%,100%{background:color-mix(in srgb,var(--ink) 24%,transparent)}}
@media(max-width:1200px), (orientation:portrait), (max-height:760px){.mobile-answer-dots span{animation-name:mobileAnswerDot15!important;animation-duration:15s!important}}


/* Mobile connection branch direction correction. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .people-network .network-person:nth-child(odd):before{
    left:50%!important;
    right:auto!important;
    width:calc(50% - 5px)!important;
  }
  .people-network .network-person:nth-child(even):before{
    right:50%!important;
    left:auto!important;
    width:calc(50% - 5px)!important;
  }
}

/* Mobile connection branches: equal spacing on both sides of the centre spine. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .people-network{
    --network-branch:52px;
  }
  .people-network .network-person:after{
    left:auto!important;
    right:auto!important;
  }
  .people-network .network-person:nth-child(odd):after{
    right:calc(var(--network-branch) + 5px)!important;
  }
  .people-network .network-person:nth-child(even):after{
    left:calc(var(--network-branch) + 5px)!important;
  }
  .people-network .network-person:nth-child(odd):before,
  .people-network .network-person:nth-child(even):before{
    width:var(--network-branch)!important;
  }
  .people-network .network-person:nth-child(odd):before{
    right:5px!important;
    left:auto!important;
  }
  .people-network .network-person:nth-child(even):before{
    left:5px!important;
    right:auto!important;
  }
}


/* Mobile goes straight to the hero because audio is disabled on phone-sized screens. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .site-loader,
  .site-loader{display:none!important;visibility:hidden!important;pointer-events:none!important}
}

/* Compact screens: switch persona/question answer sections to a safe stacked flow.
   This prevents desktop pinned copy from overlapping media on tablets, small laptops,
   and portrait devices where there is not enough horizontal room for the animated layout. */
@media (min-width:701px) and (max-width:1200px), (min-width:701px) and (max-height:760px){
  html,body{overflow-x:hidden!important}

  .js .personas,
  .js .capabilities{
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }

  .js .personas-stage,
  .js .capabilities-stage{
    position:relative!important;
    top:auto!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    display:block!important;
    padding:clamp(56px,7vw,84px) clamp(28px,5vw,56px)!important;
  }

  .js .persona-deck{
    position:relative!important;
    inset:auto!important;
    height:auto!important;
    min-height:0!important;
    display:grid!important;
    gap:clamp(64px,8vw,96px)!important;
  }

  .js .persona-panel{
    position:relative!important;
    inset:auto!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,0.9fr) minmax(360px,1.1fr)!important;
    gap:clamp(28px,4vw,52px)!important;
    align-items:center!important;
    min-height:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    translate:none!important;
  }

  .js .persona-panel .persona-copy{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    right:auto!important;
    bottom:auto!important;
    z-index:2!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  .js .persona-panel h3{
    font-size:clamp(38px,5vw,58px)!important;
    line-height:.98!important;
    margin:14px 0 18px!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
  }

  .js .persona-panel blockquote{
    font-size:clamp(16px,1.8vw,21px)!important;
    line-height:1.36!important;
    max-width:100%!important;
  }

  .js .persona-panel .meaning{
    display:grid!important;
    grid-template-columns:minmax(120px,.78fr) minmax(0,1fr)!important;
    gap:12px!important;
    width:100%!important;
    max-width:100%!important;
    margin-top:18px!important;
    padding-top:14px!important;
  }

  .js .persona-panel .meaning p{
    font-size:clamp(14px,1.5vw,17px)!important;
    line-height:1.35!important;
    max-width:100%!important;
  }

  .js .persona-panel .persona-media{
    position:relative!important;
    inset:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    z-index:1!important;
    width:100%!important;
    height:min(64svh,620px)!important;
    min-height:430px!important;
    max-height:640px!important;
    margin:0!important;
    border-radius:28px!important;
    overflow:hidden!important;
  }

  .js .persona-progress{
    display:none!important;
  }

  .js .capabilities-heading.sarah-narrative{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:100%!important;
    margin:0 0 clamp(36px,5vw,56px)!important;
    padding:0!important;
    opacity:1!important;
    transform:none!important;
  }

  .js .capabilities .persona-answer-stories{
    display:grid!important;
    gap:clamp(64px,8vw,96px)!important;
    position:relative!important;
    margin:0!important;
    min-height:0!important;
  }

  .js .capabilities .persona-answer-stories .sarah-persona{
    opacity:1!important;
    transform:none!important;
  }

  .js .capability-apps .cap-answer-media,
  .js .cap-answer-media{
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    display:none!important;
  }
}

@media (min-width:701px) and (max-width:900px), (min-width:701px) and (orientation:portrait){
  .js .persona-panel{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:28px!important;
  }
  .js .persona-panel .persona-media{
    order:-1!important;
    height:min(60svh,560px)!important;
    min-height:390px!important;
  }
}

/* Small desktop guardrail: keep animated text columns clear of the image panel. */
@media (min-width:1201px) and (max-width:1450px){
  .js .question-bridge{
    left:clamp(42px,4vw,58px)!important;
    width:min(35vw,460px)!important;
    max-width:min(35vw,460px)!important;
    margin-left:0!important;
    padding-top:clamp(70px,8vh,96px)!important;
  }
  .js .question-bridge h2{
    font-size:clamp(40px,3.8vw,54px)!important;
    line-height:.98!important;
    max-width:100%!important;
    text-wrap:balance!important;
  }
  .js .question-bridge>span{
    margin-top:24px!important;
    font-size:14px!important;
    white-space:normal!important;
    max-width:280px!important;
  }
  .js .question-bridge small{
    margin-top:26px!important;
    font-size:10px!important;
    line-height:1.45!important;
    white-space:normal!important;
    max-width:310px!important;
  }

  .js .persona-panel{
    grid-template-columns:minmax(0,35vw) minmax(0,54vw)!important;
    gap:clamp(28px,3vw,44px)!important;
  }
  .js .persona-panel .persona-copy{
    left:clamp(42px,4vw,58px)!important;
    bottom:clamp(28px,4vh,42px)!important;
    width:min(35vw,430px)!important;
    max-width:min(35vw,430px)!important;
    margin:0!important;
    overflow:hidden!important;
  }
  .js .persona-panel h3{
    font-size:clamp(34px,3.25vw,46px)!important;
    line-height:.96!important;
    margin:10px 0 14px!important;
    max-width:100%!important;
  }
  .js .persona-panel blockquote{
    font-size:clamp(13px,1.08vw,16px)!important;
    line-height:1.34!important;
    max-width:100%!important;
    margin:16px 0 14px!important;
  }
  .js .persona-panel .attribution{
    margin-top:8px!important;
    font-size:13px!important;
  }
  .js .persona-panel .meaning{
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin-top:12px!important;
    padding-top:10px!important;
    width:100%!important;
    max-width:100%!important;
  }
  .js .persona-panel .meaning>span{
    padding-top:0!important;
    width:max-content!important;
    max-width:100%!important;
  }
  .js .persona-panel .meaning p{
    font-size:clamp(13px,1.08vw,16px)!important;
    line-height:1.34!important;
    max-width:100%!important;
  }
  .js .persona-panel .persona-media{
    right:clamp(32px,4vw,56px)!important;
    width:53vw!important;
    top:clamp(32px,5vh,52px)!important;
    bottom:clamp(32px,5vh,52px)!important;
  }
  .js .persona-progress{
    left:clamp(42px,4vw,58px)!important;
    width:min(280px,31vw)!important;
  }

  .js .capabilities-heading.sarah-narrative{
    left:clamp(42px,4vw,58px)!important;
    top:clamp(34px,5vh,58px)!important;
    bottom:clamp(26px,4vh,42px)!important;
    width:min(35vw,430px)!important;
    max-width:min(35vw,430px)!important;
  }
  .answers-overview h2{
    font-size:clamp(38px,3.4vw,50px)!important;
    line-height:.96!important;
    max-width:100%!important;
    text-wrap:balance!important;
  }
  .answers-overview .answers-link{
    margin-top:22px!important;
    font-size:14px!important;
  }
  .answers-support{
    max-width:310px!important;
    font-size:10px!important;
    line-height:1.45!important;
  }
  .js .persona-answer-stories{
    margin-top:clamp(42px,7vh,68px)!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .sarah-narrative h3{
    font-size:clamp(34px,3.25vw,46px)!important;
    line-height:.96!important;
    margin:10px 0 14px!important;
  }
  .sarah-narrative blockquote{
    font-size:clamp(13px,1.08vw,16px)!important;
    line-height:1.34!important;
    max-width:100%!important;
    margin:16px 0 14px!important;
  }
  .sarah-narrative .sarah-detail{
    grid-template-columns:1fr!important;
    gap:8px!important;
    margin-top:12px!important;
    padding-top:10px!important;
  }
  .sarah-narrative .sarah-detail p,
  .sarah-narrative .sarah-detail span{
    font-size:clamp(13px,1.08vw,16px)!important;
    line-height:1.34!important;
    max-width:100%!important;
  }
  .js .capability-apps .cap-answer-media{
    right:clamp(32px,4vw,56px)!important;
    width:53vw!important;
    top:clamp(32px,5vh,52px)!important;
    bottom:clamp(32px,5vh,52px)!important;
  }
}


/* Portrait screens use the static mobile-style journey and wider heading measure. */
@media (orientation:portrait){
  .questions,
  .capabilities,
  .connection,
  .framework{
    max-width:100vw!important;
  }
  #personas-title,
  .question-bridge h2,
  .answers-overview h2,
  .framework-intro h2,
  .collective-health h2,
  .finale h2{
    width:min(100%,760px)!important;
    max-width:min(100%,760px)!important;
    font-size:clamp(54px,10.5vw,86px)!important;
    line-height:.94!important;
    text-align:left!important;
    text-wrap:balance!important;
  }
  .question-bridge{
    width:100%!important;
    max-width:100%!important;
  }
  .question-bridge>span,
  .question-bridge small,
  .answers-support{
    width:min(100%,760px)!important;
    max-width:min(100%,760px)!important;
  }
}

@media (max-width:700px), (max-height:760px){
  #personas-title,
  .question-bridge h2,
  .answers-overview h2,
  .framework-intro h2,
  .collective-health h2,
  .finale h2{
    font-size:clamp(40px,12vw,58px)!important;
    max-width:100%!important;
  }
}


/* Responsive mode contract: compact, portrait, and short screens use the stable static journey. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .site-loader,
  .narration-toggle,
  .journey-scroll-cue{display:none!important}
  .opening,
  .questions,
  .personas,
  .connection,
  .framework,
  .capabilities,
  .collective-health{height:auto!important;min-height:0!important;overflow:visible!important}
  .opening-stage,
  .questions-stage,
  .personas-stage,
  .connection-stage,
  .framework-stage,
  .capabilities-stage,
  .collective-health-stage{position:relative!important;top:auto!important;height:auto!important;min-height:0!important;overflow:visible!important;transform:none!important}
  .questions-track,
  .framework-track{position:relative!important;display:block!important;width:auto!important;height:auto!important;transform:none!important;overflow:visible!important}
  .question-bridge,
  .persona-panel,
  .framework-intro,
  .framework-chapter,
  .capabilities-heading.sarah-narrative{position:relative!important;inset:auto!important;width:100%!important;max-width:100%!important;height:auto!important;min-height:0!important;opacity:1!important;visibility:visible!important;transform:none!important;translate:none!important;pointer-events:auto!important}
  #personas-title,
  .question-bridge h2,
  .answers-overview h2,
  .framework-intro h2,
  .collective-health h2,
  .finale h2{width:min(100%,760px)!important;max-width:min(100%,760px)!important;text-align:left!important;text-wrap:balance!important}
}

@media (min-width:1201px) and (min-height:761px) and (orientation:landscape){
  .narration-toggle{display:flex}
}

/* Match Six Answers title scale to the Six Questions title on animated desktop. */
@media (min-width:1201px) and (min-height:761px) and (orientation:landscape){
  #capabilities-title{
    font-size:clamp(54px,5vw,78px)!important;
    line-height:.98!important;
    width:100%!important;
    max-width:100%!important;
    text-align:left!important;
    text-wrap:balance!important;
  }
  .js .capabilities-heading.sarah-narrative{
    width:min(46vw,760px)!important;
    max-width:min(46vw,760px)!important;
  }
}

@media (min-width:1201px) and (max-width:1450px) and (min-height:761px) and (orientation:landscape){
  #capabilities-title{
    font-size:clamp(40px,3.8vw,54px)!important;
    line-height:.98!important;
  }
  .js .capabilities-heading.sarah-narrative{
    width:min(35vw,460px)!important;
    max-width:min(35vw,460px)!important;
  }
}

/* Match answer detail chips to the question persona chips. */
.sarah-detail>span,
.mobile-answer-main .sarah-detail>span{
  display:inline-flex!important;
  align-items:center!important;
  width:fit-content!important;
  max-width:100%!important;
  padding:7px 12px!important;
  border:0!important;
  border-radius:0!important;
  background:var(--desk)!important;
  color:var(--ink)!important;
  font-size:10.5px!important;
  font-weight:800!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:.05em!important;
  white-space:nowrap!important;
}
@media (min-width:1201px) and (max-width:1450px) and (min-height:761px) and (orientation:landscape){
  .sarah-narrative .sarah-detail>span,
  .js .sarah-narrative .sarah-detail>span{
    padding:7px 12px!important;
    font-size:10.5px!important;
    line-height:1!important;
  }
}

/* Final static-mode override: compact, portrait and short screens must not inherit animated states. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .connection,
  .js .connection-stage,
  .js .connection h2,
  .js .people-network,
  .js .network-person,
  .js .network-centre,
  .js .connection-description,
  .js .ecosystem-focus,
  .js .ecosystem-title-frame,
  .js .ecosystem-title-frame>span,
  .js .ecosystem-title-final,
  .js .ecosystem-title-final>span{
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
    translate:none!important;
  }

  .js .connection-stage{
    display:flex!important;
    min-height:0!important;
    padding:72px clamp(22px,6vw,54px)!important;
  }

  .js .framework,
  .js .framework-stage,
  .js .framework-track,
  .js .framework-intro,
  .js .framework-chapter,
  .js .framework-intro .eyebrow,
  .js .framework-intro .framework-word,
  .js .framework-intro .framework-word-title,
  .js .framework-intro>p:last-child,
  .js .framework-chapter h3,
  .js .framework-chapter>p,
  .js .framework-chapter strong{
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
    translate:none!important;
  }

  .js .framework{
    background:var(--paper)!important;
    padding:84px clamp(22px,6vw,54px)!important;
  }

  .js .framework-stage,
  .js .framework-track{
    display:block!important;
    width:auto!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }

  .js .framework-intro,
  .js .framework-chapter{
    position:relative!important;
    width:100%!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:34px 0!important;
  }

  .js .capabilities{
    background:color-mix(in srgb,var(--yellow) 18%,var(--paper))!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }

  .js .capabilities-stage{
    display:block!important;
    position:relative!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    padding:56px clamp(22px,6vw,54px) 76px!important;
  }

  .js .capabilities-heading.sarah-narrative,
  .js .answers-overview{
    display:block!important;
    position:relative!important;
    inset:auto!important;
    width:100%!important;
    max-width:100%!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    translate:none!important;
    margin:0 0 34px!important;
    padding:0!important;
  }

  .js .capabilities .persona-answer-stories,
  .js .capabilities .capability-list,
  .js .cap-answer-media{
    display:none!important;
  }

  .js .mobile-answer-groups{
    display:grid!important;
    gap:76px!important;
    margin-top:34px!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }

  #personas-title,
  #capabilities-title,
  .question-bridge h2,
  .answers-overview h2{
    width:min(100%,820px)!important;
    max-width:min(100%,820px)!important;
    font-size:clamp(42px,7.2vw,68px)!important;
    line-height:.95!important;
    text-align:left!important;
    text-wrap:balance!important;
  }

  .question-bridge,
  .answers-overview{
    width:100%!important;
    max-width:100%!important;
  }
}

@media (max-width:700px){
  #personas-title,
  #capabilities-title,
  .question-bridge h2,
  .answers-overview h2{
    font-size:clamp(40px,12vw,58px)!important;
    max-width:100%!important;
  }
}

/* Portrait refinements after static-mode audit. */
@media (orientation:portrait), (max-width:1200px), (max-height:760px){
  #personas-title{
    width:min(100%,860px)!important;
    max-width:min(100%,860px)!important;
    font-size:clamp(38px,6.4vw,60px)!important;
    line-height:.94!important;
    text-wrap:balance!important;
  }

  .js .connection h2,
  .js .connection h2 span,
  .js .connection .connection-line,
  .js .ecosystem-focus,
  .js .network-centre,
  .js .network-centre span,
  .js .connection-description{
    display:block!important;
    opacity:1!important;
    visibility:visible!important;
    color:inherit!important;
    filter:none!important;
    transform:none!important;
    translate:none!important;
  }

  .js .connection h2{
    width:min(100%,820px)!important;
    max-width:min(100%,820px)!important;
    margin:28px auto 44px!important;
    text-align:center!important;
  }

  .js .ecosystem-focus{
    width:100%!important;
    max-width:820px!important;
    margin:34px auto 0!important;
  }

  .js .network-centre{
    color:var(--paper)!important;
    font-family:'Anton',Impact,sans-serif!important;
    font-size:clamp(30px,6.5vw,58px)!important;
    line-height:.98!important;
    text-transform:uppercase!important;
    letter-spacing:.01em!important;
  }

  .js .connection-description{
    margin:24px auto 0!important;
    max-width:720px!important;
    text-align:center!important;
  }

  .js .framework{
    background:var(--yellow)!important;
    margin:0!important;
    border-radius:0!important;
  }

  .js .framework-intro,
  .js .framework-chapter{
    background:var(--yellow)!important;
    border-top:1px solid color-mix(in srgb,var(--ink) 18%,transparent)!important;
  }

  .js .framework-chapter{
    display:grid!important;
    grid-template-rows:auto auto auto auto!important;
    gap:clamp(18px,3vw,34px)!important;
    padding:44px 0 54px!important;
  }

  .js .framework-chapter .framework-number{
    position:relative!important;
    top:auto!important;
    left:auto!important;
    align-self:start!important;
    justify-self:start!important;
    z-index:1!important;
    margin:0 0 8px!important;
    order:-1!important;
    transform:none!important;
  }

  .js .framework-chapter h3{
    position:relative!important;
    z-index:2!important;
    margin:0!important;
    padding:0!important;
    font-size:clamp(54px,10vw,88px)!important;
    line-height:.9!important;
  }
}

@media (orientation:portrait) and (min-width:701px){
  #personas-title,
  #capabilities-title,
  .question-bridge h2,
  .answers-overview h2{
    font-size:clamp(42px,6.2vw,62px)!important;
    width:min(100%,860px)!important;
    max-width:min(100%,860px)!important;
  }
}

/* Static connection focus: show the ecosystem title and centre the yellow dot. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .ecosystem-focus .network-centre{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:18px!important;
    width:100%!important;
    min-height:0!important;
    text-align:center!important;
  }

  .js .ecosystem-focus .network-centre:before{
    display:none!important;
    content:none!important;
  }

  .js .ecosystem-focus .signal{
    display:flex!important;
    position:relative!important;
    left:auto!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    width:24px!important;
    height:24px!important;
    min-width:24px!important;
    min-height:24px!important;
    margin:0 auto!important;
    padding:0!important;
    border:0!important;
    border-radius:999px!important;
    background:var(--yellow)!important;
    opacity:1!important;
    transform:none!important;
    translate:none!important;
    overflow:visible!important;
  }

  .js .ecosystem-focus .signal-vector{
    position:static!important;
    display:block!important;
    width:24px!important;
    height:24px!important;
    transform:none!important;
    opacity:1!important;
  }

  .js .ecosystem-focus .ecosystem-spoken-title{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:4px!important;
    width:100%!important;
    max-width:820px!important;
    margin:0 auto!important;
    color:var(--paper)!important;
    font-family:'Anton',Impact,sans-serif!important;
    font-size:clamp(34px,6.8vw,62px)!important;
    line-height:.98!important;
    text-align:center!important;
    text-transform:uppercase!important;
    letter-spacing:.01em!important;
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
    translate:none!important;
  }

  .js .ecosystem-focus .ecosystem-title-frame,
  .js .ecosystem-focus .ecosystem-title-frame>span{
    display:block!important;
    position:relative!important;
    grid-area:auto!important;
    white-space:normal!important;
    color:inherit!important;
    opacity:1!important;
    visibility:visible!important;
    filter:none!important;
    transform:none!important;
    translate:none!important;
  }

  .js .ecosystem-focus .ecosystem-title-frame>span{
    display:inline!important;
  }
}

/* Keep the six questions in the same text-then-image rhythm as the six answers
   whenever the static journey replaces the pinned desktop presentation. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .questions .question-bridge{
    padding-left:clamp(22px,6vw,54px)!important;
    padding-right:clamp(22px,6vw,54px)!important;
  }
  .js .questions .personas{
    display:block!important;
    padding:0!important;
    overflow:visible!important;
  }
  .js .questions .personas-stage{
    display:block!important;
    height:auto!important;
    min-height:0!important;
    padding:0 clamp(22px,6vw,54px) 72px!important;
    overflow:visible!important;
  }
  .js .questions .persona-deck{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:clamp(72px,7vw,88px)!important;
    height:auto!important;
    overflow:visible!important;
  }
  .js .questions .persona-panel{
    position:relative!important;
    inset:auto!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    gap:24px!important;
    align-items:start!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    translate:none!important;
    pointer-events:auto!important;
  }
  .js .questions .persona-panel .persona-copy{
    position:relative!important;
    inset:auto!important;
    grid-column:1!important;
    grid-row:auto!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }
  .js .questions .persona-panel h3{
    font-size:clamp(38px,11vw,54px)!important;
    line-height:.95!important;
    margin:10px 0 20px!important;
  }
  .js .questions .persona-panel blockquote{
    font-size:18px!important;
    line-height:1.42!important;
    margin:0 0 22px!important;
  }
  .js .questions .persona-panel .meaning{
    grid-template-columns:minmax(110px,.9fr) minmax(0,1fr)!important;
    gap:12px!important;
    margin-top:20px!important;
    padding-top:16px!important;
  }
  .js .questions .persona-panel .meaning>span{
    display:inline-flex!important;
    align-items:center!important;
    width:fit-content!important;
    max-width:100%!important;
    padding:7px 12px!important;
    background:var(--desk)!important;
    color:var(--ink)!important;
    font-size:10.5px!important;
    font-weight:800!important;
    line-height:1!important;
    text-transform:uppercase!important;
    letter-spacing:.05em!important;
  }
  .js .questions .persona-panel .meaning p{
    min-width:0!important;
    font-size:15px!important;
    line-height:1.35!important;
  }
  .js .questions .persona-panel .persona-media{
    position:relative!important;
    inset:auto!important;
    grid-column:1!important;
    grid-row:auto!important;
    order:0!important;
    width:100%!important;
    height:clamp(420px,76svh,640px)!important;
    min-height:0!important;
    max-height:640px!important;
    margin:0!important;
    overflow:hidden!important;
    border-radius:26px!important;
  }
  .js .questions .persona-panel .persona-media img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
  }
  .js .capabilities .mobile-answer-slider{
    height:clamp(420px,76svh,640px)!important;
    min-height:0!important;
  }
  .js .capabilities .mobile-answer-card:first-child{
    animation:none!important;
    opacity:1!important;
    transform:none!important;
    z-index:0!important;
  }
  .js .capabilities .mobile-answer-card:not(:first-child){
    z-index:1!important;
  }
}

/* Static layouts stack the framework chapters without a left edge. */
@media (max-width:1200px), (orientation:portrait), (max-height:760px){
  .js .framework-chapter{
    border-left:0!important;
  }
}

/* Portrait tablets give the Six Questions introduction the full available width. */
@media (orientation:portrait) and (min-width:701px){
  .js .questions .question-bridge{
    position:relative!important;
    inset:auto!important;
    left:auto!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:clamp(40px,4svh,56px) clamp(22px,6vw,54px) clamp(48px,5svh,72px)!important;
    box-sizing:border-box!important;
  }
  .js .questions .question-bridge h2{
    width:100%!important;
    max-width:860px!important;
  }
  .js .questions .question-bridge>span,
  .js .questions .question-bridge small{
    width:100%!important;
    max-width:760px!important;
  }
}

/* Sarah is active before the desktop persona deck enters, so reveal her copy
   with the deck instead of waiting for an active-class change. */
@media (min-width:1201px) and (orientation:landscape) and (min-height:761px) and (prefers-reduced-motion:no-preference){
  .js #sarah .persona-copy{
    opacity:var(--persona-deck-opacity,0);
    translate:0 calc((1 - var(--persona-deck-opacity,0)) * 32px);
  }

  /* Reserve a gutter between persona meaning rows and the image card. */
  .js .persona-panel .persona-copy{
    width:min(760px,calc(46% - var(--gutter) - var(--gutter) - 28px))!important;
    max-width:min(760px,calc(46% - var(--gutter) - var(--gutter) - 28px))!important;
    padding-right:12px!important;
  }

  .js .capabilities .persona-answer-stories{
    width:min(760px,calc(46vw - var(--gutter) - var(--gutter) - 28px))!important;
    max-width:min(760px,calc(46vw - var(--gutter) - var(--gutter) - 28px))!important;
    align-self:flex-start;
    padding-right:12px;
  }
}
