body[data-page="challenge"]{background:var(--paper);color:var(--mid)}
body[data-page="challenge"] .section{padding:clamp(76px,8vw,118px) 0}
body[data-page="challenge"] .eyebrow{color:var(--blue)}
body[data-page="challenge"] .candidate{background:#08101d}
body[data-page="challenge"] .links a.active{color:var(--blue)}
.challenge-hero{position:relative;isolation:isolate;min-height:min(calc(100vh - 103px),760px);display:flex;align-items:center;padding:clamp(70px,8vw,120px) 0;overflow:clip}
.challenge-hero:after{content:'50';position:absolute;z-index:0;right:-.05em;bottom:-.32em;font-size:clamp(330px,52vw,760px);line-height:1;font-weight:800;letter-spacing:-.12em;color:rgba(47,107,196,.035);pointer-events:none}
.challenge-hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:1.05fr .72fr;gap:clamp(54px,9vw,140px);align-items:center}
.challenge-hero h1{font-size:clamp(72px,10vw,148px);max-width:7ch;color:var(--navy)}
.challenge-hero h1 span{display:block;color:var(--blue)}
.challenge-hero .lead{margin-top:28px;max-width:660px;font-size:clamp(20px,2vw,26px);line-height:1.42;color:var(--ink)}
.challenge-hero .lead strong{color:var(--blue)}
.challenge-hero .hero-ctas{margin-top:34px}
.challenge-mark{position:relative;z-index:1;width:min(100%,480px);aspect-ratio:1;margin:auto;border-radius:50%;border:1px solid rgba(47,107,196,.2);display:grid;place-items:center;background:radial-gradient(circle at 40% 36%,#fff 0,rgba(234,247,251,.9) 38%,rgba(89,201,233,.12) 69%,transparent 70%);box-shadow:0 0 0 50px rgba(89,201,233,.035),0 0 0 105px rgba(52,182,176,.018)}
.challenge-mark:before{content:'';position:absolute;width:64%;height:64%;border-radius:50%;border:1px solid rgba(52,182,176,.3)}
.challenge-mark strong{font-size:clamp(70px,9vw,128px);line-height:.8;letter-spacing:-.08em;color:var(--blue)}
.challenge-mark span{display:block;margin-top:12px;text-align:center;font-size:11px;font-weight:800;letter-spacing:.16em;color:var(--quiet);text-transform:uppercase}
.challenge-micro{margin-top:23px;font-size:12px;color:var(--quiet)}
.why-target{background:#fff;border-block:1px solid var(--line)}
.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,9vw,135px);align-items:start}
.section h2{font-size:clamp(50px,6.8vw,94px);max-width:10ch}
.section .lede{font-size:clamp(20px,2vw,26px);line-height:1.48;color:var(--ink)}
.copy-stack p+p{margin-top:19px}
.stat-rule{margin-top:38px;padding-top:26px;border-top:1px solid var(--line)}
.stat-rule strong{display:block;font-size:clamp(62px,8vw,110px);line-height:.9;color:var(--blue);letter-spacing:-.07em}
.stat-rule span{display:block;margin-top:14px;max-width:42ch;color:var(--muted)}
.pull{margin-top:42px;font-size:clamp(29px,3.2vw,46px);font-weight:750;line-height:1.14;letter-spacing:-.045em;color:var(--navy)}
.source-note{margin-top:27px;padding-top:20px;border-top:1px solid var(--line);font-size:11.5px;line-height:1.6;color:var(--quiet)}
.waiting{position:relative;background:var(--navy);color:#fff;overflow:hidden}
.waiting .eyebrow{color:var(--sky)}
.waiting h2{color:#fff;max-width:12ch}
.waiting .lede{color:#cbd7e7;max-width:680px}
.waiting-head{display:grid;grid-template-columns:1fr .72fr;gap:70px;align-items:end}
.age-lines{margin-top:65px;border-top:1px solid #34425c}
.age-row{display:grid;grid-template-columns:135px minmax(0,1fr) 190px;gap:30px;align-items:center;padding:25px 0;border-bottom:1px solid #34425c}
.age-row small{font-size:11px;font-weight:800;letter-spacing:.13em;color:var(--sky2);text-transform:uppercase}
.age-track{position:relative;height:4px;border-radius:5px;background:#28354d;overflow:visible}
.age-track i{display:block;height:100%;border-radius:5px;background:linear-gradient(90deg,var(--teal),var(--sky),var(--blue));box-shadow:0 0 20px rgba(89,201,233,.2)}
.age-row strong{text-align:right;font-size:clamp(25px,3vw,38px);line-height:1;color:#fff;letter-spacing:-.04em}
.waiting-close{display:grid;grid-template-columns:1fr .7fr;gap:55px;margin-top:38px;align-items:start}
.waiting-close p{color:#cbd7e7}.waiting-close strong{color:var(--sky2)}
.method{font-size:11px!important;line-height:1.6;color:#899ab4!important}
.share-load{background:var(--paper)}
.share-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(55px,9vw,130px);align-items:center}
.share-copy p{margin-top:27px;max-width:590px;color:var(--ink);font-size:19px}
.share-close{font-weight:750!important;color:var(--blue)!important}
.converge{position:relative;min-height:440px}
.converge svg{position:absolute;inset:0;width:100%;height:100%}.flow-line{fill:none;stroke:url(#flowGradient);stroke-width:3;stroke-linecap:round;opacity:.85}
.flow-label{position:absolute;display:flex;align-items:center;justify-content:center;width:128px;height:128px;border-radius:50%;border:1px solid var(--line);background:#fff;text-align:center;font-size:11px;font-weight:800;letter-spacing:.08em;color:var(--ink);text-transform:uppercase;box-shadow:0 18px 40px rgba(11,18,32,.06)}
.flow-label.parents{left:1%;top:2%}.flow-label.network{left:1%;bottom:2%}.flow-label.occasions{right:1%;top:2%}.flow-label.growth{right:1%;bottom:2%}
.flow-centre{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:178px;height:178px;border-radius:50%;display:grid;place-items:center;text-align:center;background:var(--navy);color:#fff;box-shadow:0 0 0 17px rgba(89,201,233,.12),0 24px 60px rgba(11,18,32,.18)}
.flow-centre strong{display:block;font-size:35px;line-height:1;letter-spacing:-.05em}.flow-centre span{display:block;margin-top:8px;color:var(--sky2);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.challenge-calc{background:var(--paper2);border-block:1px solid var(--line)}
.calc-intro{display:grid;grid-template-columns:.85fr 1fr;gap:70px;align-items:end}
.calc-intro h2{max-width:11ch}.calc-intro .lede{max-width:670px}
.calculator{margin-top:55px;border-radius:22px;background:#fff;box-shadow:0 24px 70px rgba(11,18,32,.09);overflow:hidden;border:1px solid rgba(222,217,208,.8)}
.calc-main{display:grid;grid-template-columns:.95fr 1.05fr}
.calc-controls{padding:clamp(28px,4vw,50px);border-right:1px solid var(--line)}
.control+.control{margin-top:28px}.control-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:10px}.control-head label strong{display:block;color:var(--navy)}.control-head label span{display:block;color:var(--quiet);font-size:11px}.control-head output{font-size:16px;font-weight:750;color:var(--blue);white-space:nowrap}
.control input[type="range"]{width:100%;accent-color:var(--blue)}.range-ends{display:flex;justify-content:space-between;font-size:9px;font-weight:750;letter-spacing:.08em;color:var(--quiet)}
.scenario-block{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.scenario-block h3{font-size:18px;letter-spacing:-.025em}.scenario-block p{margin-top:5px;font-size:12px;color:var(--muted)}
.scenarios{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.scenario{min-height:42px;padding:9px 13px;border:1px solid var(--line);border-radius:999px;background:var(--paper);color:var(--muted);font-size:11px;font-weight:750;cursor:pointer}.scenario:hover,.scenario.active{border-color:var(--blue);background:var(--soft);color:var(--blue)}
.calc-result{position:relative;padding:clamp(32px,4vw,52px);background:var(--navy);color:#fff;overflow:hidden}.calc-result:after{content:'25';position:absolute;right:-.08em;bottom:-.32em;font-size:260px;font-weight:800;line-height:1;color:rgba(255,255,255,.025);letter-spacing:-.1em}
.result-top{position:relative;z-index:1;display:grid;grid-template-columns:180px 1fr;gap:32px;align-items:center}
.progress-ring{position:relative;width:180px;height:180px}.progress-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.progress-ring circle{fill:none;stroke-width:13}.progress-ring .track{stroke:#26344c}.progress-ring .value{stroke:url(#progressGradient);stroke-linecap:round;transition:stroke-dashoffset .35s ease}.progress-centre{position:absolute;inset:0;display:grid;place-content:center;text-align:center}.progress-centre strong{font-size:30px;line-height:1;letter-spacing:-.04em}.progress-centre span{margin-top:7px;color:var(--sky2);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.result-copy small{color:var(--sky2);font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.result-copy h3{margin-top:8px;font-size:clamp(43px,5vw,68px);line-height:.95;letter-spacing:-.06em}.result-copy p{margin-top:13px;color:#cbd7e7;font-size:14px}
.result-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-top:34px;background:#34425c;border:1px solid #34425c}.metric{padding:17px 19px;background:var(--navy)}.metric span{display:block;color:#899ab4;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.metric strong{display:block;margin-top:5px;font-size:21px;letter-spacing:-.03em}.metric.wide{grid-column:1/-1}.metric.wide strong{color:var(--sky2)}
.workback{position:relative;z-index:1;margin-top:30px;padding-top:24px;border-top:1px solid #34425c}.workback small{display:block;color:var(--sky2);font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.workback p{margin-top:8px;color:#cbd7e7}.workback strong{display:block;margin-top:10px;font-size:clamp(28px,3.2vw,42px);line-height:1.1;color:#fff;letter-spacing:-.04em}
.calc-foot{padding:22px clamp(28px,4vw,50px);border-top:1px solid var(--line);background:#faf9f6;font-size:11px;line-height:1.6;color:var(--quiet)}
.target-test{background:#fff}
.target-test .wrap{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,9vw,135px);align-items:center}.target-test h2{max-width:10ch}.target-test-copy{padding-left:30px;border-left:2px solid var(--sky)}.target-test-copy p{font-size:clamp(19px,1.85vw,24px);line-height:1.5;color:var(--ink)}.target-test-copy p+p{margin-top:18px}.target-test-copy strong{color:var(--blue)}
.parent-handoff{background:var(--navy);color:#fff}.parent-handoff .eyebrow{color:var(--sky)}.parent-handoff-grid{display:grid;grid-template-columns:1fr .75fr;gap:clamp(50px,9vw,130px);align-items:end}.parent-handoff h2{color:#fff;max-width:10ch}.parent-handoff .lede{margin-top:26px;color:#cbd7e7;max-width:620px}.handoff-actions{display:flex;flex-direction:column;align-items:flex-start;gap:15px}.handoff-actions .button{min-width:230px;text-align:center}.handoff-note{margin-top:8px;color:#899ab4;font-size:11px;line-height:1.55}
body[data-page="challenge"] footer{border-top:1px solid #1d293d}
body[data-page="challenge"] footer .logo{flex:none}
@media(max-width:1050px){.challenge-hero-grid,.split,.waiting-head,.waiting-close,.share-grid,.calc-intro,.target-test .wrap,.parent-handoff-grid{grid-template-columns:1fr}.challenge-mark{max-width:390px}.calc-main{grid-template-columns:1fr}.calc-controls{border-right:0;border-bottom:1px solid var(--line)}.share-grid{gap:35px}.converge{max-width:670px;width:100%;margin:auto}.parent-handoff-grid{gap:38px}}
@media(max-width:700px){body[data-page="challenge"] .section{padding:72px 0}.challenge-hero{min-height:auto;padding:67px 0 82px}.challenge-hero h1{font-size:clamp(62px,19vw,84px)}.challenge-hero-grid{gap:55px}.challenge-mark{width:80%;box-shadow:0 0 0 28px rgba(89,201,233,.035),0 0 0 62px rgba(52,182,176,.018)}.section h2{font-size:47px}.waiting-head{gap:28px}.age-lines{margin-top:42px}.age-row{grid-template-columns:80px 1fr;gap:12px 16px;padding:21px 0}.age-row strong{grid-column:1/-1;text-align:left}.waiting-close{gap:22px}.converge{min-height:360px}.flow-label{width:90px;height:90px;font-size:9px}.flow-centre{width:132px;height:132px}.flow-centre strong{font-size:27px}.calc-intro{gap:25px}.calculator{margin-top:36px;border-radius:14px}.calc-controls,.calc-result{padding:27px 20px}.control-head{gap:12px}.result-top{grid-template-columns:126px 1fr;gap:20px}.progress-ring{width:126px;height:126px}.progress-centre strong{font-size:24px}.result-copy h3{font-size:42px}.result-grid{grid-template-columns:1fr}.metric.wide{grid-column:auto}.target-test-copy{padding-left:20px}.handoff-actions .button{width:100%}.foot{align-items:flex-start}.foot p{text-align:left}}
@media(max-width:410px){.challenge-hero h1{font-size:62px}.section h2{font-size:43px}.result-top{grid-template-columns:1fr}.progress-ring{margin:auto}.result-copy{text-align:center}.flow-label{width:82px;height:82px}.flow-centre{width:118px;height:118px}.flow-centre strong{font-size:24px}}
@media(prefers-reduced-motion:reduce){.progress-ring .value{transition:none}}
