/* Surgical readability / navigation fixes; preserve the approved page composition. */
:root{--gr-font:Arial,Helvetica,sans-serif;--gr-body:1rem;--gr-label:.875rem;--gr-meta:.75rem;--gr-form:560px;--gr-content:1220px;--gr-control:48px;--gr-radius:12px;--gr-gap:24px;--acid:#8cfb3f}
body,button,input,select,textarea{font-family:var(--gr-font)}
.activityMap{background-image:url('/hybrd-run/activity-map-v2.webp')}
.challengeMapPreview{background-image:linear-gradient(180deg,transparent 25%,#0b0e0c 100%),url('/hybrd-run/activity-map-v2.webp')}
.grVisuallyHidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.grFieldError,.formRequirement{font-size:var(--gr-label);line-height:1.5;letter-spacing:0;text-transform:none;font-weight:400}
.grFieldError{color:#b31c1c;display:block;grid-column:1/-1}.assessment .grFieldError,.testForm .grFieldError{color:#ffb4aa}
.grFieldError[hidden]{display:none}
.formRequirement{grid-column:1/-1;margin:0 0 8px}
[aria-invalid=true]{border-color:#c13828!important}
.originalChoices .shortcutTitle{display:block;font-size:14px;font-weight:800;line-height:1.3;letter-spacing:0}
.plansIntro h1,.ebookSlim .ebookHeroCopy h1{font-size:clamp(2rem,3.5vw,3rem);line-height:1.1}
.howItWorks h2,.deliverables h2,.materialShowcase h2,.faq h2,.authoritySection h2{font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.12;letter-spacing:-.035em}
.distanceSection h2{font-size:clamp(2rem,4vw,3rem);line-height:1.1}
.manifestoBand h2{font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.12}
.testForm{max-width:var(--gr-form);padding:28px}.testFields{grid-template-columns:1fr}
.testResultGrid small,.testResultGrid span{font-size:var(--gr-label);letter-spacing:0;line-height:1.5}
.standaloneResult>p,.testHero>p:last-child{font-size:var(--gr-body);line-height:1.6}
.testMobileNav span,.testBack{font-size:var(--gr-meta)}
.materialDots{gap:2px;bottom:0}
.materialDots button,.materialDots button.isActive{display:grid;place-items:center;min-width:32px;width:32px;min-height:44px;height:44px;padding:0;background:transparent;border-radius:0}
.materialDots button::after{content:"";width:7px;height:7px;background:#778177;border-radius:50%;transition:width .2s}
.materialDots button.isActive::after{width:24px;border-radius:8px;background:var(--acid)}
.materialDots button:focus-visible,.materialRail:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.materialRail figure{cursor:pointer}.materialRail figure>span{font-size:12px}
.materialShowcase .sampleBenefits{max-width:650px;margin:24px auto;text-align:left;line-height:1.6;font-size:16px}
.assessment .optionalMetrics label>span,.assessment .profileFields label>span{font-size:var(--gr-label);letter-spacing:0;line-height:1.4}
.assessment .stepHint,.assessment .privacyNote{font-size:var(--gr-label);line-height:1.5}
.assessment .formActions button,.testForm button,.formBtn{font-size:var(--gr-label);min-height:var(--gr-control)}
.assessment .step legend{font-size:clamp(1.5rem,2.5vw,1.75rem);line-height:1.2}
.assessment .sectionHeading h2{font-size:28px;line-height:1.15}
.assessmentClose{min-width:44px!important;min-height:44px!important}
.assessment .progressWrap>span{font-size:12px}
.assessment .formError{position:static;grid-column:1/-1;font-size:14px;line-height:1.5;margin:0;padding:10px 16px;max-height:30dvh;overflow:auto}
.assessment .weekGrid .numberChoice small{display:block!important;font-size:14px}
.assessment .weekGrid .numberChoice b{font-size:16px}
.assessment input,.assessment select{font-size:16px;min-height:48px}
.reviewGrid small,.testResultCard .testResultGrid small{font-size:14px;letter-spacing:0}
.result h2{font-size:clamp(1.75rem,3vw,2.5rem)}
.result .testResultCard.noTest .testResultGrid,.result .testResultCard.noTest .testResultHead>span{display:none}
.result .testResultCard.noTest{padding:20px;border:1px solid var(--line)}
.result .testResultCard.noTest h3{font-size:18px;margin:0 0 12px}
#conteudo .empty h1{font-size:clamp(2rem,4vw,3rem);line-height:1.15}
.profileCopy p{text-align:left;font-size:16px;line-height:1.6}
@media(max-width:700px){
 .assessment .step{overflow-y:auto!important}.assessment .profileFields{grid-template-columns:1fr}
 .assessment form{grid-template-rows:minmax(0,1fr) auto auto!important}
 .assessment .optionalMetrics label>span,.assessment .profileFields label>span{font-size:14px!important}
 .assessment .stepHint,.assessment .privacyNote{font-size:14px!important;line-height:1.5!important}
 .assessment .choice small{font-size:14px;line-height:1.4}
 .assessment .numberChoice span{padding:12px 6px}.assessment .weekGrid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .materialArrow{width:44px;height:44px}.materialRail figure>span{font-size:12px}
 .standaloneResult{padding:24px 18px}.testResultGrid article{padding:18px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.materialRail figure,.materialArrow,.materialDots button::after,.bookStack figure{transition:none!important;animation:none!important}}
.testHero h1{font-size:clamp(36px,5vw,64px);line-height:1.02}
.testHero{padding-block:48px 32px}
.testFields label{font-size:14px;letter-spacing:.02em}
.testStep{font-size:12px;letter-spacing:.06em}
.testError{font-size:14px}
.mobilityPreview .hero h1{font-size:clamp(38px,5vw,64px);line-height:1.02}
.mobilityPreview .hero{padding-block:48px}
.mobilityPreview .sectionHead h2{font-size:clamp(30px,3.5vw,44px);line-height:1.08}
.mobilityPreview .hero nav a{font-size:14px;letter-spacing:.02em;min-height:44px}
.mobilityPreview .eyebrow,.mobilityPreview .notice b,.mobilityPreview .safety b,.mobilityPreview .sectionHead strong{font-size:12px;letter-spacing:.04em}
.mobilityPreview .exerciseGrid p,.mobilityPreview .notice p,.mobilityPreview .safety p{font-size:14px;line-height:1.65}
.mobilityPreview .videoReference>div{min-width:0}
.mobilityPreview .videoReference h2{font-size:clamp(28px,3.3vw,42px);overflow-wrap:break-word}
@media(max-width:360px){
 #conteudo .empty h1{font-size:34px;overflow-wrap:break-word}
 .manifestoBand{min-width:0}
 .manifestoBand h2{font-size:34px;overflow-wrap:break-word}
 .manifestoBand>p,.manifestoBand>span{min-width:0;max-width:100%}
}
[hidden]{display:none!important}
.originalShortcuts h1{font:inherit;font-size:clamp(26px,3vw,36px);font-weight:900;line-height:1.12;letter-spacing:-.04em;margin:0}
.originalShortcuts h1 span{color:#a6bcf5}
.heroCopy>h2{font-size:clamp(42px,5.4vw,76px);line-height:1.02;letter-spacing:-.055em;margin:0}
.heroCopy>h2 em{font-style:normal;color:#a2a2a2;font-weight:400}
.comparisonHint{display:none}
.contactPreview{grid-column:1/-1;border:1px solid #777;padding:22px;border-radius:12px}
.contactPreview h3{font-size:18px;margin:0 0 14px}
.contactPreview p{font-size:16px;line-height:1.5;margin:0 0 18px}
.preparedMessage{white-space:pre-wrap;overflow-wrap:anywhere}
.delivery [hidden]{display:none!important}
@media(max-width:700px){
 .comparisonHint{display:block;font-size:14px;line-height:1.5;margin:0 0 12px;color:#bbb}
 .heroCopy>h2{font-size:40px}
 body:has(.testPage){height:100dvh;overflow:hidden}
 .testPage{height:100dvh!important;padding:0!important;display:grid!important;grid-template-rows:68px auto minmax(0,1fr);min-height:0!important;overflow:hidden!important}
 .testPage>gr-header{height:68px;min-height:0}
 .testPage>.draftFlowNote{position:static!important;margin:0!important;padding:8px 14px!important;font-size:12px!important;line-height:1.35!important}
 .testPage>.testHero{display:none!important}
 .testPage>.testForm{height:auto!important;min-height:0!important;max-height:none!important;width:100%;margin:0!important;grid-template-rows:minmax(0,1fr) auto auto!important}
 .testForm>section.testActive{padding:16px!important}
 .testForm .testFields{gap:10px}
 .testForm .testFields label{font-size:14px!important;letter-spacing:0}
 .testForm .testFields input,.testForm .testFields select{min-height:44px!important;font-size:16px!important}
 .testMobileNav{position:relative!important;bottom:auto!important;padding:10px 14px calc(10px + env(safe-area-inset-bottom))!important}
 body:has(.testPage)>gr-footer,body:has(.testPage)>gr-social-dock{display:none!important}
}
