:root{
  --bg:#071019;--bg2:#09131e;--panel:#0c1722;--panel2:#101c28;--line:#263545;
  --text:#f2f4f5;--muted:#aab5c1;--gold:#d39a3d;--gold2:#f0bd62;--bronze:#9d642d;
  --green:#79bd70;--amber:#e6a744;--orange:#e57c36;--red:#d45245;--radius:18px;
  --max:1360px;--shadow:0 24px 70px rgba(0,0,0,.25)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:radial-gradient(circle at 8% 0%,rgba(65,91,112,.18),transparent 28%),linear-gradient(180deg,var(--bg),#050b12 70%);color:var(--text);font-family:Inter,system-ui,sans-serif;line-height:1.55}
button,input,select,textarea{font:inherit}
a{color:inherit}.skip-link{position:absolute;left:-999px}.skip-link:focus{left:16px;top:16px;z-index:50;background:#fff;color:#000;padding:10px}
.scorecard-header{height:78px;max-width:var(--max);margin:auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.08)}
.brand-wordmark{display:inline-flex;flex-direction:column;font-size:26px;font-weight:800;line-height:.8;text-decoration:none;letter-spacing:-.04em}.brand-wordmark:before{content:"";width:15px;height:3px;background:var(--gold);margin-bottom:4px}.brand-wordmark span{font-size:11px;font-weight:500;letter-spacing:.05em;margin-top:6px}
.scorecard-header nav{display:flex;align-items:center;gap:28px}.scorecard-header nav a{text-decoration:none;color:#c9d1d9;font-size:13px;font-weight:600}.scorecard-header .header-action{border:1px solid var(--gold);color:#f3c777;padding:9px 14px;border-radius:6px}
.hero{max-width:var(--max);min-height:620px;margin:auto;padding:86px 28px 64px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;border-bottom:1px solid rgba(255,255,255,.08);overflow:hidden}
.hero h1{font-size:clamp(48px,6vw,86px);letter-spacing:-.06em;line-height:1.01;margin:0 0 24px;max-width:760px}.hero-copy>p{font-size:19px;color:var(--muted);max-width:640px}
.hero-actions{display:flex;align-items:center;gap:26px;margin:32px 0}.button{display:inline-flex;align-items:center;justify-content:center;gap:16px;border-radius:7px;padding:13px 19px;border:1px solid var(--line);background:#111d29;color:var(--text);font-weight:700;text-decoration:none;cursor:pointer;transition:.18s ease}.button:hover{transform:translateY(-1px);border-color:#536476}.button.primary{background:linear-gradient(135deg,#ad712c,var(--gold));border-color:#e2a84e;color:#fff;box-shadow:0 12px 26px rgba(173,113,44,.2)}.button.secondary{background:transparent}.text-link{font-weight:700;text-underline-offset:6px}.trust-line{font-size:13px!important;margin-top:58px}.trust-line span{color:var(--gold);margin:0 6px}
.hero-signal{position:relative;min-height:460px}.signal-ring{position:absolute;border:1px solid rgba(211,154,61,.3);border-radius:50%;inset:50%;transform:translate(-50%,-50%)}.ring-one{width:240px;height:240px}.ring-two{width:370px;height:370px}.ring-three{width:520px;height:520px}.signal-ring:after{content:"";position:absolute;width:8px;height:8px;background:var(--gold2);border-radius:50%;top:19%;right:10%;box-shadow:0 0 20px var(--gold)}.signal-core{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);width:190px;height:190px;border-radius:50%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle at 35% 30%,#203142,#0b1722 70%);border:1px solid #415064;box-shadow:var(--shadow)}.signal-core span{color:var(--muted)}.signal-core strong{font-size:32px;color:var(--gold2)}
.audience-section,.dimensions-section,.assessment-section,.privacy-section{max-width:var(--max);margin:auto;padding:82px 28px;border-bottom:1px solid rgba(255,255,255,.08)}
.section-heading{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:end;margin-bottom:38px}.section-heading h2,.assessment-intro h2,.privacy-section h2{font-size:clamp(30px,3vw,46px);line-height:1.12;letter-spacing:-.04em;margin:0}.section-heading p,.assessment-intro p,.privacy-section p{color:var(--muted);margin:0}
.audience-rail{display:grid;grid-template-columns:repeat(6,1fr);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.audience-rail span{min-height:105px;display:grid;place-items:center;text-align:center;padding:18px;border-right:1px solid var(--line);font-weight:700}.audience-rail span:last-child{border-right:0}
.dimension-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}.dimension-list li{display:grid;grid-template-columns:52px 1fr;gap:18px;padding:24px 8px;border-bottom:1px solid var(--line)}.dimension-list li:nth-child(odd){border-right:1px solid var(--line);padding-right:34px}.dimension-list li:nth-child(even){padding-left:34px}.dimension-list>li>span{color:var(--gold2);font-weight:800}.dimension-list strong,.dimension-list small{display:block}.dimension-list small{color:var(--muted);margin-top:4px}
.assessment-intro{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.privacy-chip{border:1px solid var(--line);padding:8px 12px;border-radius:999px;color:#c6d1dc;font-size:12px}
.assessment-app{min-height:720px;display:grid;grid-template-columns:280px 1fr;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:rgba(8,18,28,.82);box-shadow:var(--shadow)}
.step-sidebar{background:#08121c;border-right:1px solid var(--line);padding:24px 0;display:flex;flex-direction:column}.sidebar-title{padding:0 22px 20px;color:#dfe6eb;font-weight:800}.step-sidebar ol{list-style:none;padding:0;margin:0}.step-sidebar li{display:flex;gap:12px;align-items:center;padding:14px 22px;color:#788594;border-left:3px solid transparent;font-size:13px}.step-sidebar li span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#152230;color:#b5c0cb;font-size:11px}.step-sidebar li.active{color:#fff;background:linear-gradient(90deg,rgba(211,154,61,.16),transparent);border-left-color:var(--gold)}.step-sidebar li.active span,.step-sidebar li.complete span{background:var(--gold);color:#09111a}.step-sidebar li.complete{color:#cbd4dc}.sidebar-note{margin:auto 18px 0;border:1px solid var(--line);border-radius:12px;padding:14px;background:#0c1722}.sidebar-note strong,.sidebar-note span{display:block}.sidebar-note span{font-size:12px;color:var(--muted);margin-top:5px}
.question-workspace{padding:34px;min-width:0}.loading-state{display:grid;place-items:center;min-height:500px;color:var(--muted)}.progress-row{display:flex;justify-content:space-between;align-items:end}.progress-row div span,.progress-row div strong{display:block}.progress-row span{font-size:12px;color:var(--muted)}.progress-row strong{font-size:20px;margin-top:4px}.progress-track{height:4px;background:#172430;border-radius:99px;margin:18px 0 34px;overflow:hidden}.progress-track span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--bronze),var(--gold2));transition:width .3s}
.question-card{min-width:0;padding:0 0 32px;margin:0 0 32px;border:0;border-bottom:1px solid var(--line)}.question-card:last-child{border-bottom:0}.question-number{font-size:11px;color:var(--gold2);font-weight:800;text-transform:uppercase;letter-spacing:.08em}.question-card h3{font-size:20px;line-height:1.35;margin:7px 0}.question-card>p{font-size:13px;color:var(--muted);margin:0 0 18px}
.option-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.option-list.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.option{position:relative}.option input{position:absolute;opacity:0;pointer-events:none}.option span{height:100%;min-height:112px;display:flex;flex-direction:column;justify-content:center;border:1px solid #334356;background:#0c1722;border-radius:10px;padding:14px;color:#cbd4dc;font-size:13px;cursor:pointer;transition:.15s}.option span b{color:var(--text);font-size:19px;margin-bottom:6px}.option input:focus-visible+span{outline:3px solid rgba(240,189,98,.35);outline-offset:2px}.option input:checked+span{border-color:var(--gold);background:linear-gradient(180deg,rgba(211,154,61,.14),rgba(211,154,61,.04));box-shadow:inset 0 0 0 1px rgba(211,154,61,.35)}.option-list.compact .option span{min-height:70px}.workspace-actions{display:flex;justify-content:space-between;gap:18px;margin-top:26px}.form-error{color:#ff9a8c;font-size:13px;min-height:20px;margin:10px 0}
.result-stage{animation:fadeIn .35s ease}.result-kicker,.result-topline span{color:var(--gold2);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.basic-result-grid{display:grid;grid-template-columns:190px 1fr;gap:36px;align-items:center;padding:20px 0 38px}.score-orbit{width:170px;height:170px;border-radius:50%;display:grid;place-content:center;text-align:center;border:12px solid #1c2a38;border-top-color:var(--gold);border-right-color:var(--gold2)}.score-orbit strong{font-size:58px;line-height:1}.score-orbit span{color:var(--muted)}.basic-result-grid h2{font-size:36px;margin:0 0 12px}.basic-result-grid p{color:var(--muted)}
.unlock-panel{border-top:1px solid var(--line);padding-top:30px;display:grid;grid-template-columns:.8fr 1.2fr;gap:34px}.unlock-panel h3{font-size:24px;margin-top:0}.unlock-panel p{color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-grid .wide{grid-column:1/-1}label{display:grid;gap:6px;font-size:13px;font-weight:700;color:#dce3e9}label small{color:var(--muted);font-weight:400}input,select,textarea{width:100%;border:1px solid #344457;border-radius:8px;background:#08121b;color:#f3f5f6;padding:11px 12px}input:focus,select:focus,textarea:focus{outline:3px solid rgba(211,154,61,.2);border-color:var(--gold)}.check-row{grid-template-columns:18px 1fr;align-items:start;margin:14px 0;color:var(--muted);font-weight:400}.check-row input{width:16px;height:16px;margin-top:3px}
.result-topline{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:16px}.result-topline strong{font-size:13px}.rich-result-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:24px;margin:28px 0}.result-overview,.radar-panel{border:1px solid var(--line);border-radius:14px;padding:22px;background:#09141e}.result-overview{display:flex;gap:28px;align-items:center}.score-orbit.large{width:155px;height:155px;flex:0 0 155px}.result-overview h2{font-size:28px;line-height:1.2;margin:0 0 9px}.result-overview p{color:var(--muted)}.risk-label{color:var(--green)!important;font-weight:800}.radar-panel canvas{width:100%;height:auto;display:block}.result-details{display:grid;grid-template-columns:1.15fr .9fr .95fr;gap:18px}.result-details>section{border:1px solid var(--line);border-radius:14px;padding:18px;background:#0a151f}.result-details h3{margin:0 0 14px}.band-list{display:grid;gap:8px}.band-row{display:grid;grid-template-columns:1fr auto;gap:12px;padding-bottom:8px;border-bottom:1px solid rgba(255,255,255,.06);font-size:12px}.band-row strong{color:var(--gold2)}.gap-list{padding-left:24px;margin:0}.gap-list li{padding:0 0 12px;color:var(--muted)}.gap-list strong{display:block;color:#fff}.next-step-card{background:linear-gradient(145deg,rgba(211,154,61,.13),#0a151f)!important}.next-step-card>span{font-size:11px;text-transform:uppercase;color:var(--gold2);font-weight:800}.next-step-card p{color:var(--muted)}
.paid-preview{margin-top:26px;border-top:1px solid var(--line);padding-top:26px}.preview-heading{display:flex;justify-content:space-between;gap:24px;align-items:center}.preview-heading h2{margin:0;font-size:28px}.preview-heading p{color:var(--muted);max-width:760px}.preview-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.preview-tabs article{border:1px solid var(--line);border-radius:12px;padding:16px;background:#09141e}.preview-tabs span,.preview-tabs strong{display:block}.preview-tabs span{color:var(--gold2);font-size:12px}.preview-tabs p{font-size:12px;color:var(--muted)}details{border:1px solid var(--line);border-radius:10px;padding:14px}summary{cursor:pointer;font-weight:800}.option-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:14px}.option-grid article{padding:15px;background:#09141e;border-radius:9px}.option-grid strong,.option-grid span{display:block}.option-grid span{color:var(--gold2);font-size:12px}
.privacy-section{max-width:1040px;text-align:center}.privacy-section p{margin-top:18px}.privacy-section .disclaimer{font-size:12px}
dialog{width:min(720px,calc(100% - 30px));border:1px solid var(--line);border-radius:16px;padding:0;background:#0b1722;color:var(--text);box-shadow:0 40px 100px #000}dialog::backdrop{background:rgba(0,6,12,.78)}.dialog-close-row{display:flex;justify-content:flex-end;padding:10px}.dialog-close-row button{background:transparent;color:#fff;border:0;font-size:26px;cursor:pointer}.dialog-body{padding:0 28px 28px}.dialog-body h2{font-size:30px;margin:0}.dialog-body>p{color:var(--muted)}
footer{max-width:var(--max);margin:auto;padding:38px 28px;display:grid;grid-template-columns:1fr 1fr auto;gap:24px;align-items:center;color:var(--muted);font-size:13px}footer .brand-wordmark{color:var(--text)}footer div a{margin-left:18px}footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:18px}
.report-body{background:#eef1f3;color:#17202b}.report-shell{max-width:980px;margin:30px auto;background:#fff;padding:54px;box-shadow:0 10px 40px #c5cbd0}.report-shell section{padding:28px 0;border-bottom:1px solid #dde2e6}.report-cover{min-height:520px;display:flex;flex-direction:column;justify-content:center}.report-cover h1{font-size:56px;line-height:1.05}.report-metrics,.roadmap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.report-metrics div,.roadmap-grid article,.report-table>div{border:1px solid #d8dee4;padding:18px}.report-metrics span,.report-metrics strong{display:block}.report-metrics strong{font-size:30px}.report-table{display:grid;grid-template-columns:1fr 1fr;gap:12px}.report-table span{float:right}.report-table p{color:#52606d}.report-shell footer{display:block;padding:30px 0;color:#52606d}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:1050px){.scorecard-header nav a:not(.header-action){display:none}.hero{grid-template-columns:1fr;min-height:auto}.hero-signal{min-height:360px}.audience-rail{grid-template-columns:repeat(3,1fr)}.assessment-app{grid-template-columns:1fr}.step-sidebar{display:none}.result-details{grid-template-columns:1fr 1fr}.next-step-card{grid-column:1/-1}.preview-tabs{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.scorecard-header{padding:0 16px}.scorecard-header .header-action{font-size:11px}.hero,.audience-section,.dimensions-section,.assessment-section,.privacy-section{padding:54px 16px}.hero h1{font-size:46px}.hero-actions{align-items:flex-start;flex-direction:column}.hero-signal{min-height:280px}.ring-three{width:350px;height:350px}.ring-two{width:270px;height:270px}.ring-one{width:190px;height:190px}.signal-core{width:145px;height:145px}.section-heading{grid-template-columns:1fr}.audience-rail{grid-template-columns:1fr 1fr}.dimension-list{grid-template-columns:1fr}.dimension-list li:nth-child(odd),.dimension-list li:nth-child(even){border-right:0;padding:20px 0}.assessment-intro{align-items:flex-start;gap:18px;flex-direction:column}.question-workspace{padding:22px 16px}.option-list,.option-list.compact{grid-template-columns:1fr}.option span{min-height:64px}.unlock-panel,.rich-result-grid,.result-details,.basic-result-grid{grid-template-columns:1fr}.basic-result-grid{justify-items:center;text-align:center}.result-overview{flex-direction:column;text-align:center}.form-grid,.preview-tabs,.option-grid{grid-template-columns:1fr}.form-grid .wide,.next-step-card{grid-column:auto}.preview-heading{align-items:flex-start;flex-direction:column}.audience-rail span{min-height:82px}.workspace-actions{position:sticky;bottom:0;background:#0a151f;padding:12px 0}footer{grid-template-columns:1fr}.report-shell{margin:0;padding:24px}.report-metrics,.roadmap-grid,.report-table{grid-template-columns:1fr}}
@media print{.scorecard-header,.button,.paid-preview,dialog{display:none!important}.report-shell{box-shadow:none;margin:0;max-width:none}}

/* Mobile-first product pass: readable assessment, stable touch controls, no horizontal squeeze. */
@media(max-width:860px){
  html{scroll-padding-top:72px}
  body{font-size:16px;background:linear-gradient(180deg,#071019,#050b12 72%)}
  .scorecard-header{
    position:sticky;
    top:0;
    z-index:30;
    height:auto;
    min-height:68px;
    padding:12px 16px;
    background:rgba(7,16,25,.96);
    backdrop-filter:blur(12px);
  }
  .brand-wordmark{font-size:22px}
  .scorecard-header nav{gap:10px}
  .scorecard-header nav a:not(.header-action){display:none}
  .scorecard-header .header-action{
    min-height:42px;
    display:inline-flex;
    align-items:center;
    border-radius:999px;
    padding:9px 13px;
    font-size:13px;
    white-space:nowrap;
  }
  .hero{
    min-height:auto;
    padding:38px 16px 34px;
    grid-template-columns:1fr;
    gap:24px;
  }
  .hero h1{
    font-size:clamp(38px,10.5vw,50px);
    letter-spacing:-.05em;
    line-height:1.04;
  }
  .hero-copy>p{font-size:17px;line-height:1.55}
  .hero-actions{gap:14px;margin:24px 0 22px}
  .hero-actions .button,
  .hero-actions .text-link{width:100%;justify-content:center;text-align:center}
  .button{min-height:46px;border-radius:12px;padding:12px 16px}
  .trust-line{margin-top:24px!important}
  .hero-signal{display:none}
  .audience-section,
  .dimensions-section,
  .assessment-section,
  .privacy-section{padding:48px 16px}
  .section-heading{display:block;margin-bottom:24px}
  .section-heading h2,
  .assessment-intro h2,
  .privacy-section h2{font-size:clamp(26px,7vw,34px)}
  .section-heading p{margin-top:10px}
  .audience-rail{
    grid-template-columns:1fr;
    border-radius:16px;
  }
  .audience-rail span{
    min-height:auto;
    justify-content:start;
    place-items:unset;
    text-align:left;
    padding:14px 16px;
    border-right:0;
    border-bottom:1px solid var(--line);
  }
  .audience-rail span:last-child{border-bottom:0}
  .dimension-list{grid-template-columns:1fr}
  .dimension-list li{
    grid-template-columns:42px 1fr;
    gap:12px;
    padding:16px 0!important;
    border-right:0!important;
  }
  .assessment-app{
    min-height:0;
    display:block;
    border-radius:18px;
    overflow:visible;
  }
  .question-workspace{padding:18px 14px 0}
  .progress-row{
    align-items:start;
    gap:12px;
  }
  .progress-row strong{font-size:18px}
  .question-card{margin-bottom:24px;padding-bottom:24px}
  .question-card h3{font-size:18px;line-height:1.34}
  .question-card>p{font-size:14px}
  .option-list,
  .option-list.compact{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
  }
  .option span{
    min-height:56px;
    padding:12px 14px;
    border-radius:12px;
    font-size:14.5px;
  }
  .option span b{font-size:18px}
  .workspace-actions{
    position:sticky;
    bottom:0;
    z-index:20;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin:18px -14px 0;
    padding:12px 14px calc(12px + env(safe-area-inset-bottom));
    background:rgba(10,21,31,.96);
    border-top:1px solid var(--line);
  }
  .workspace-actions .button{width:100%;min-width:0}
  .basic-result-grid,
  .unlock-panel,
  .rich-result-grid,
  .result-details,
  .form-grid,
  .preview-tabs,
  .option-grid{grid-template-columns:1fr}
  .unlock-panel{gap:18px}
  .score-orbit{width:150px;height:150px}
  .score-orbit strong{font-size:48px}
  .result-overview{
    flex-direction:column;
    text-align:center;
  }
  .radar-panel{overflow:hidden}
  .radar-panel canvas{max-width:100%;height:auto}
  .preview-heading{
    flex-direction:column;
    align-items:stretch;
  }
  .preview-heading .button{width:100%}
  label{font-size:14px}
  input,select,textarea{min-height:44px;font-size:16px}
  .check-row{grid-template-columns:24px 1fr;gap:10px}
  .check-row input{width:20px;height:20px}
  dialog{
    width:calc(100% - 24px);
    max-height:calc(100dvh - 24px);
    overflow:auto;
  }
  .dialog-body{padding:0 18px 22px}
  footer{
    display:block;
    padding:32px 16px;
  }
  footer div a{display:inline-block;margin:10px 16px 0 0}
}

@media(max-width:420px){
  .scorecard-header{padding-inline:12px}
  .brand-wordmark{font-size:20px}
  .scorecard-header .header-action{font-size:12px;padding-inline:11px}
  .hero,.audience-section,.dimensions-section,.assessment-section,.privacy-section{padding-inline:12px}
  .question-workspace{padding-inline:12px}
  .workspace-actions{margin-inline:-12px;padding-inline:12px}
}
