.checklist-page{background:#f7f8f5}
.checklist-header{grid-template-columns:190px 1fr auto auto}
.checklist-header-label{color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.checklist-hero{min-height:calc(100vh - 76px);display:grid;grid-template-columns:1.35fr .65fr;gap:8vw;align-items:center;padding-top:90px;padding-bottom:90px;border-bottom:1px solid var(--line)}
.checklist-hero h1{max-width:980px;margin:0;font-size:clamp(48px,6.5vw,94px);font-weight:500;letter-spacing:-.062em;line-height:.96}
.checklist-hero-copy>p:not(.kicker){max-width:780px;margin:32px 0 0;color:var(--muted);font-size:18px;line-height:1.7}
.checklist-actions,.advice-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:35px}
.risk-card{padding:35px;background:var(--ink);color:#fff}
.risk-card>p{margin:0 0 24px;color:var(--soft);font-size:10px;text-transform:uppercase;letter-spacing:.09em}
.risk-card ul{margin:0;padding-left:20px;font-size:14px;line-height:1.65}
.risk-card li{padding:5px 0}
.risk-card strong{display:block;margin-top:30px;padding-top:24px;border-top:1px solid rgba(255,255,255,.18);font-size:14px;line-height:1.6}
.checklist-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(45px,8vw,120px);padding-top:100px;padding-bottom:140px}
.score-panel{position:sticky;top:110px;align-self:start;padding:26px;background:linear-gradient(145deg,#edf4f3,#d8e5e4);border:1px solid rgba(49,85,97,.13)}
.score-ring{width:150px;height:150px;display:grid;place-content:center;margin:26px auto;border:1px solid rgba(49,85,97,.22);border-radius:50%;text-align:center;background:rgba(255,255,255,.45)}
.score-ring strong{font-size:35px;font-weight:570;letter-spacing:-.05em}
.score-ring span{color:var(--muted);font-size:9px;text-transform:uppercase}
.score-panel>p:not(.kicker){color:var(--muted);font-size:11px;line-height:1.65}
.score-bar{height:3px;margin-top:22px;background:rgba(49,85,97,.15)}
.score-bar i{display:block;width:0;height:100%;background:var(--deep);transition:width .25s}
.score-panel>span{display:block;margin-top:10px;color:var(--deep);font-size:10px}
.reset-checklist{margin-top:22px;padding:0;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--muted);font-size:10px;cursor:pointer}
.content-heading{padding-bottom:70px;border-bottom:1px solid var(--line)}
.content-heading h2,.questions-section h2,.main-advice h2{margin:0;font-size:clamp(40px,5vw,70px);font-weight:510;letter-spacing:-.055em;line-height:1.04}
.content-heading>p:last-child{max-width:670px;margin:22px 0 0;color:var(--muted);font-size:15px}
.check-section{display:grid;grid-template-columns:75px 1fr;gap:25px;padding:65px 0;border-bottom:1px solid var(--line)}
.section-number{padding-top:8px;color:var(--water);font-size:10px}
.check-section h3{margin:0;font-size:clamp(29px,3.4vw,44px);font-weight:540;letter-spacing:-.045em}
.check-section>div>p{max-width:720px;margin:15px 0 28px;color:var(--muted);font-size:13px;line-height:1.7}
.check-section blockquote{margin:24px 0;padding:22px 26px;border-left:3px solid var(--water);background:#eef4f3;color:var(--deep);font-size:13px}
.check-items{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.check-item,.flag-item{min-height:70px;display:flex;gap:12px;align-items:center;padding:14px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:rgba(255,255,255,.4);color:var(--muted);font-size:11px;cursor:pointer}
.check-item:has(input:checked){background:#e3efed;color:var(--ink)}
.check-item input,.flag-item input{width:16px;height:16px;flex:none;accent-color:var(--deep)}
.flag-grid{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(154,52,39,.25);border-left:1px solid rgba(154,52,39,.25)}
.flag-item{border-color:rgba(154,52,39,.25);background:#fff7f5;color:#7e3027}
.flag-item:has(input:checked){background:#f1d9d4}
.flag-item span:before{content:'×';margin-right:9px;font-weight:800}
.questions-section{padding:100px 0;border-bottom:1px solid var(--line)}
.questions-section ol{display:grid;grid-template-columns:1fr 1fr;margin:55px 0 0;padding:0;list-style-position:inside;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.questions-section li{min-height:88px;padding:23px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:13px}
.main-advice{margin-top:100px;padding:clamp(35px,6vw,75px);background:linear-gradient(135deg,#eef5f4,#d4e3e2)}
.main-advice>p:not(.kicker){max-width:760px;margin:24px 0 0;color:var(--muted);font-size:17px;line-height:1.65}

@media(max-width:980px){.checklist-header{grid-template-columns:150px 1fr auto}
.checklist-header .header-cta{display:none}
.checklist-hero{grid-template-columns:1fr;min-height:auto}
.risk-card{max-width:650px}
.checklist-layout{grid-template-columns:1fr}
.score-panel{position:static;display:grid;grid-template-columns:1fr 160px;align-items:center}
.score-panel .kicker,.score-panel>p,.score-panel .score-bar,.score-panel>span,.score-panel button{grid-column:1}
.score-ring{grid-column:2;grid-row:1/6}
.check-items,.flag-grid,.questions-section ol{grid-template-columns:1fr 1fr}
}

@media(max-width:620px){.checklist-header{grid-template-columns:120px 1fr auto}
.checklist-header-label{display:none}
.checklist-hero{padding-top:70px;padding-bottom:75px}
.checklist-hero h1{font-size:47px}
.checklist-hero-copy>p:not(.kicker){font-size:15px}
.risk-card{padding:26px}
.checklist-layout{grid-template-columns:minmax(0,1fr);padding-top:55px;padding-bottom:90px}
.checklist-content,.check-section>div{min-width:0;overflow-wrap:anywhere}
.score-panel{display:block}
.score-ring{width:125px;height:125px}
.check-section{grid-template-columns:1fr;padding:50px 0}
.section-number{padding:0}
.check-items,.flag-grid,.questions-section ol{grid-template-columns:1fr}
.questions-section{padding:75px 0}
.main-advice{margin-top:70px}
.main-advice h2{font-size:39px}
}

@media print{.site-header,.checklist-actions,.score-panel,.advice-actions,.footer{display:none!important}
.checklist-hero{min-height:auto;grid-template-columns:1fr;padding:20px 0}
.risk-card{color:#222;background:#eee}
.checklist-layout{display:block;padding:0}
.check-section{break-inside:avoid;padding:20px 0}
.check-items,.flag-grid{grid-template-columns:1fr 1fr}
.questions-section,.main-advice{break-before:page}
.main-advice{margin:0}
.grid-frame{max-width:none;background:none}
.check-item,.flag-item{min-height:44px}
.checklist-hero h1{font-size:42px}
.content-heading h2,.questions-section h2,.main-advice h2{font-size:34px}
}
