
    :root {
      /* Brand controls, intentionally concentrated here for easy matching */
      --ink: #F0F4FA;
      --ink-soft: #D0D9E8;
      --paper: #0B1628;
      --white: #ffffff;
      --line: rgba(201,151,58,.2);
      --line-strong: rgba(201,151,58,.35);
      --accent: #C9973A;
      --accent-dark: #E8B84B;
      --accent-pale: rgba(201,151,58,.10);
      --warning: #9a6b19;
      --warning-pale: rgba(201,151,58,.08);
      --critical: #8a3f3b;
      --critical-pale: #f7e8e7;
      --radius: 18px;
      --shadow: 0 18px 50px rgba(20, 28, 24, 0.08);
      --max: 1120px;
    }

    * { box-sizing: border-box; }

    html { scroll-behavior: smooth; }

    body {
      margin: 0;
      background: var(--paper);
      color: var(--ink);
      font-family: 'Manrope', sans-serif;
      line-height: 1.55;
      -webkit-font-smoothing: antialiased;
    }

    button, input { font: inherit; }

    a {
      color: inherit;
      text-decoration-thickness: 1px;
      text-underline-offset: 3px;
    }

    .wrap {
      width: min(calc(100% - 36px), var(--max));
      margin: 0 auto;
    }

    .hero {
      padding: 78px 0 54px;
    }

    .hero-grid {
      display: grid;
      grid-template-columns: 1.25fr .75fr;
      gap: 52px;
      align-items: center;
    }

    .eyebrow {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      color: var(--accent-dark);
      text-transform: uppercase;
      letter-spacing: .12em;
      font-weight: 800;
      font-size: 12px;
      margin-bottom: 18px;
    }

    .eyebrow::before {
      content: "";
      width: 26px;
      height: 2px;
      background: var(--accent);
    }

    h1, h2, h3 {
      line-height: 1.06;
      letter-spacing: -.04em;
      margin: 0;
    }

    h1 {
      font-size: clamp(42px, 6vw, 72px);
      max-width: 850px;
    }

    .hero .accent-text { color: var(--accent); }

    .hero-copy {
      margin: 24px 0 0;
      max-width: 720px;
      font-size: clamp(18px, 2.2vw, 22px);
      color: var(--ink-soft);
    }

    .hero-actions {
      display: flex;
      align-items: center;
      gap: 18px;
      flex-wrap: wrap;
      margin-top: 30px;
    }

    .btn {
      border: 0;
      border-radius: 999px;
      padding: 14px 22px;
      cursor: pointer;
      transition: transform .16s ease, box-shadow .16s ease, background .16s ease;
      font-weight: 800;
      text-decoration: none;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
    }

    .btn:hover { transform: translateY(-1px); }

    .btn-primary {
      background: #0B1628;
      color: var(--white);
      box-shadow: 0 8px 22px rgba(21,26,24,.16);
    }

    .btn-primary:hover { background: #000; }

    .btn-accent {
      background: var(--accent);
      color: var(--white);
      box-shadow: 0 8px 22px rgba(47,122,88,.18);
    }

    .btn-accent:hover { background: var(--accent-dark); }

    .btn-ghost {
      background: transparent;
      color: var(--ink);
      border: 1px solid var(--line-strong);
    }

    .micro {
      color: var(--ink-soft);
      font-size: 13px;
    }

    .trust-card {
      border: 1px solid var(--line);
      background: #132038;
      border-radius: 4px;
      padding: 28px;
      box-shadow: var(--shadow);
    }

    .trust-card h2 {
      font-size: 24px;
      margin-bottom: 20px;
    }

    .trust-points {
      display: grid;
      gap: 0;
      border-top: 1px solid var(--line);
    }

    .trust-row {
      display: flex;
      gap: 14px;
      align-items: flex-start;
      padding: 16px 0;
      border-bottom: 1px solid var(--line);
    }

    .trust-num {
      font-size: 22px;
      min-width: 56px;
      font-weight: 800;
      color: var(--accent-dark);
      letter-spacing: -.04em;
    }

    .trust-label {
      font-size: 14px;
      color: var(--ink-soft);
      padding-top: 4px;
    }

    .mna-note {
      margin: 20px 0 0;
      padding: 16px;
      border-radius: 4px;
      background: var(--accent-pale);
      font-size: 14px;
      color: #D0D9E8;
    }

    .mna-note strong { color: var(--ink); }

    .confidential-note {
      margin-top: 10px;
      color: var(--ink-soft);
      font-size: 12px;
    }

    .value-strip {
      border-top: 1px solid var(--line);
      border-bottom: 1px solid var(--line);
      background: var(--navy-mid, #132038);
    }

    .value-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
    }

    .value-item {
      padding: 30px 30px 32px;
      border-right: 1px solid var(--line);
      border-top: 2px solid var(--gold);
    }

    .value-item:last-child { border-right: 0; }
    .value-item small { display: block; color: var(--gold); font-size: 11px; font-weight: 800; letter-spacing: 2px; margin-bottom: 12px; }
    .value-item strong { display: block; margin-bottom: 6px; color: #fff; font-size: 15px; }
    .value-item span { color: var(--ink-soft); font-size: 14px; line-height: 1.6; }

    .scorecard-shell {
      padding: 64px 0 90px;
    }

    .card {
      background: #132038;
      border: 1px solid var(--line);
      border-radius: 4px;
      box-shadow: var(--shadow);
    }

    .start-card {
      padding: 38px;
      max-width: 920px;
      margin: 0 auto;
    }

    .start-card h2 {
      font-size: clamp(30px, 4vw, 46px);
      margin-bottom: 16px;
    }

    .start-card p {
      color: var(--ink-soft);
      max-width: 720px;
      font-size: 17px;
    }

    .start-meta {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin: 24px 0 28px;
    }

    .pill {
      background: var(--accent-pale);
      color: var(--accent-dark);
      padding: 7px 11px;
      border-radius: 999px;
      font-size: 12px;
      font-weight: 800;
    }

    #quizScreen, #resultScreen, #detailScreen { display: none; }

    .quiz-card {
      max-width: 920px;
      margin: 0 auto;
      overflow: hidden;
    }

    .quiz-top {
      padding: 22px 28px 0;
    }

    .progress-head {
      display: flex;
      justify-content: space-between;
      gap: 16px;
      align-items: center;
      font-size: 13px;
      color: var(--ink-soft);
      margin-bottom: 10px;
    }

    .progress-track {
      width: 100%;
      height: 6px;
      background: #1E3054;
      border-radius: 999px;
      overflow: hidden;
    }

    .progress-fill {
      width: 5%;
      height: 100%;
      background: var(--accent);
      transition: width .25s ease;
    }

    .question-wrap {
      padding: 42px 42px 30px;
    }

    .question-number {
      color: var(--accent-dark);
      font-size: 12px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .1em;
      margin-bottom: 12px;
    }

    .question-title {
      font-size: clamp(27px, 4vw, 39px);
      max-width: 800px;
    }

    .why {
      margin: 18px 0 0;
      border: 1px solid var(--line);
      border-radius: 4px;
      background: #0B1628;
      max-width: 770px;
    }

    .why summary {
      cursor: pointer;
      padding: 11px 14px;
      font-size: 13px;
      font-weight: 700;
      color: var(--ink-soft);
      list-style: none;
    }

    .why summary::-webkit-details-marker { display: none; }

    .why summary::before {
      content: "+";
      display: inline-block;
      width: 18px;
      color: var(--accent-dark);
      font-weight: 900;
    }

    .why[open] summary::before { content: "–"; }

    .why p {
      margin: 0;
      padding: 0 14px 14px 32px;
      color: var(--ink-soft);
      font-size: 14px;
      max-width: 720px;
    }

    .answers {
      display: grid;
      gap: 12px;
      margin-top: 30px;
    }

    .answer {
      width: 100%;
      text-align: left;
      border: 1px solid var(--line-strong);
      background: #132038;
      color: var(--ink);
      border-radius: 4px;
      padding: 16px 18px;
      cursor: pointer;
      transition: border .14s ease, background .14s ease, transform .14s ease;
      display: grid;
      grid-template-columns: 28px 1fr;
      gap: 12px;
      align-items: start;
    }

    .answer:hover {
      border-color: #C9973A;
      background: #132038;
      transform: translateY(-1px);
    }

    .answer.selected {
      border-color: var(--accent);
      background: var(--accent-pale);
    }

    .answer-dot {
      width: 22px;
      height: 22px;
      border: 1.5px solid var(--line-strong);
      border-radius: 50%;
      position: relative;
      margin-top: 1px;
    }

    .answer.selected .answer-dot {
      border-color: var(--accent);
    }

    .answer.selected .answer-dot::after {
      content: "";
      position: absolute;
      inset: 4px;
      border-radius: 50%;
      background: var(--accent);
    }

    .quiz-actions {
      display: flex;
      justify-content: space-between;
      align-items: center;
      gap: 14px;
      padding: 22px 42px 34px;
      border-top: 1px solid var(--line);
    }

    .quiz-actions .btn { min-width: 120px; }

    .result-card {
      max-width: 980px;
      margin: 0 auto;
      overflow: hidden;
    }

    .result-head {
      padding: 42px;
      background: #0B1628;
      color: var(--white);
    }

    .result-head .eyebrow { color: #C9973A; }
    .result-head .eyebrow::before { background: #C9973A; }

    .result-grid {
      display: grid;
      grid-template-columns: .55fr 1fr;
      gap: 34px;
      align-items: center;
    }

    .score-orb {
      width: 190px;
      height: 190px;
      border-radius: 50%;
      display: grid;
      place-content: center;
      text-align: center;
      background: conic-gradient(var(--accent) var(--score-angle, 0deg), #1E3054 0);
      position: relative;
      margin: 0 auto;
    }

    .score-orb::before {
      content: "";
      position: absolute;
      inset: 13px;
      border-radius: inherit;
      background: #0B1628;
    }

    .score-orb strong,
    .score-orb span {
      position: relative;
      z-index: 1;
    }

    .score-orb strong {
      font-size: 56px;
      line-height: .9;
      letter-spacing: -.05em;
    }

    .score-orb span {
      margin-top: 7px;
      color: #D0D9E8;
      font-size: 12px;
    }

    .result-title {
      font-size: clamp(34px, 5vw, 54px);
      margin-bottom: 12px;
    }

    .result-intro {
      color: #D0D9E8;
      font-size: 17px;
      max-width: 630px;
      margin: 0;
    }

    .result-body { padding: 36px 42px 42px; }

    .constraint-box {
      padding: 22px;
      border-radius: 4px;
      background: var(--warning-pale);
      border: 1px solid rgba(201,151,58,.3);
      margin-bottom: 30px;
    }

    .constraint-box small {
      display: block;
      color: #E8B84B;
      font-size: 11px;
      text-transform: uppercase;
      letter-spacing: .1em;
      font-weight: 800;
      margin-bottom: 6px;
    }

    .constraint-box strong {
      display: block;
      font-size: 24px;
      letter-spacing: -.02em;
      margin-bottom: 6px;
    }

    .constraint-box p {
      margin: 0;
      color: #D0D9E8;
    }

    .category-list {
      display: grid;
      gap: 17px;
      margin: 24px 0 34px;
    }

    .category-row {
      display: grid;
      grid-template-columns: 190px 1fr 48px;
      gap: 14px;
      align-items: center;
    }

    .category-name {
      font-size: 14px;
      font-weight: 700;
    }

    .bar {
      height: 9px;
      background: #1E3054;
      border-radius: 999px;
      overflow: hidden;
    }

    .bar > span {
      display: block;
      height: 100%;
      width: 0;
      border-radius: inherit;
      background: var(--accent);
      transition: width .6s ease;
    }

    .category-score {
      text-align: right;
      font-weight: 800;
      font-size: 14px;
    }

    .capture {
      margin-top: 34px;
      padding: 26px;
      border: 1px solid var(--line);
      border-radius: 4px;
      background: #0B1628;
    }

    .capture h3 {
      font-size: 26px;
      margin-bottom: 8px;
    }

    .capture > p {
      margin: 0 0 20px;
      color: var(--ink-soft);
    }

    .form-grid {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 14px;
    }

    .field { display: grid; gap: 7px; }
    .field.full { grid-column: 1 / -1; }

    .field label {
      font-size: 12px;
      font-weight: 800;
      color: var(--ink-soft);
    }

    .field input {
      width: 100%;
      border: 1px solid var(--line-strong);
      border-radius: 4px;
      padding: 13px 14px;
      background: #132038;
      color: var(--ink);
      outline: none;
    }

    .field input:focus {
      border-color: var(--accent);
      box-shadow: 0 0 0 3px rgba(47,122,88,.10);
    }

    .consent {
      margin: 16px 0;
      display: flex;
      align-items: flex-start;
      gap: 9px;
      color: var(--ink-soft);
      font-size: 12px;
    }

    .consent input { margin-top: 3px; }

    .form-footnote {
      margin-top: 12px;
      font-size: 11px;
      color: #8A9BB5;
    }

    .form-status {
      display: none;
      margin-top: 14px;
      border-radius: 4px;
      padding: 12px 14px;
      font-size: 13px;
    }

    .form-status.ok {
      display: block;
      background: var(--accent-pale);
      color: var(--accent-dark);
    }

    .form-status.error {
      display: block;
      background: var(--critical-pale);
      color: var(--critical);
    }

    .detail-card {
      max-width: 980px;
      margin: 0 auto;
      padding: 42px;
    }

    .detail-card h2 {
      font-size: clamp(32px, 5vw, 50px);
      margin-bottom: 10px;
    }

    .detail-lead {
      color: var(--ink-soft);
      font-size: 17px;
      max-width: 750px;
      margin: 0 0 28px;
    }

    .priority-grid {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 15px;
      margin-top: 24px;
    }

    .priority {
      border: 1px solid var(--line);
      border-radius: 4px;
      padding: 20px;
      background: #132038;
    }

    .priority-num {
      font-size: 12px;
      color: var(--accent-dark);
      font-weight: 800;
      letter-spacing: .08em;
      text-transform: uppercase;
    }

    .priority h3 {
      font-size: 19px;
      margin: 8px 0;
      letter-spacing: -.02em;
    }

    .priority p {
      margin: 0;
      color: var(--ink-soft);
      font-size: 14px;
    }

    .advisory {
      margin-top: 30px;
      border-radius: 4px;
      padding: 26px;
      background: #0B1628;
      color: var(--white);
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 24px;
      align-items: center;
    }

    .status {
      display: inline-flex;
      gap: 8px;
      align-items: center;
      color: #D0D9E8;
      font-size: 12px;
      font-weight: 800;
      text-transform: uppercase;
      letter-spacing: .08em;
      margin-bottom: 8px;
    }

    .status-dot {
      width: 8px;
      height: 8px;
      border-radius: 50%;
      background: #d49d3d;
    }

    .advisory h3 { font-size: 25px; margin-bottom: 7px; }
    .advisory p { color: #D0D9E8; margin: 0; max-width: 620px; }

    .disclaimer {
      margin-top: 22px;
      color: #8A9BB5;
      font-size: 11px;
    }

    footer {
      border-top: 1px solid var(--line);
      padding: 26px 0 40px;
      color: var(--ink-soft);
      font-size: 13px;
    }

    .footer-row {
      display: flex;
      justify-content: space-between;
      gap: 20px;
      flex-wrap: wrap;
    }

    .sr-only {
      position: absolute;
      width: 1px;
      height: 1px;
      padding: 0;
      margin: -1px;
      overflow: hidden;
      clip: rect(0, 0, 0, 0);
      white-space: nowrap;
      border: 0;
    }

    @media (max-width: 820px) {
      .hero { padding-top: 50px; }
      .hero-grid,
      .result-grid,
      .advisory { grid-template-columns: 1fr; }
      .trust-card { max-width: 600px; }
      .value-grid { grid-template-columns: 1fr; }
      .value-item {
        border-right: 0;
        border-bottom: 1px solid var(--line);
        padding: 18px 0;
      }
      .value-item:last-child { border-bottom: 0; }
      .question-wrap { padding: 34px 24px 26px; }
      .quiz-actions { padding: 20px 24px 28px; }
      .result-head, .result-body, .detail-card { padding: 30px 24px; }
      .category-row { grid-template-columns: 145px 1fr 38px; }
      .priority-grid { grid-template-columns: 1fr; }
    }

    @media (max-width: 560px) {
      .wrap { width: min(calc(100% - 24px), var(--max)); }
      h1 { font-size: 42px; }
      .hero-copy { font-size: 18px; }
      .hero-actions .btn { width: 100%; }
      .start-card { padding: 26px 22px; }
      .quiz-actions .btn { min-width: 0; padding-inline: 17px; }
      .score-orb { width: 158px; height: 158px; }
      .score-orb strong { font-size: 47px; }
      .category-row {
        grid-template-columns: 1fr 42px;
      }
      .category-row .bar {
        grid-column: 1 / -1;
        grid-row: 2;
      }
      .form-grid { grid-template-columns: 1fr; }
      .field.full { grid-column: auto; }
      .advisory .btn { width: 100%; }
    }

    @media (prefers-reduced-motion: reduce) {
      *, *::before, *::after {
        scroll-behavior: auto !important;
        transition: none !important;
      }
    }

    :root { --navy:#0B1628; --navy-mid:#132038; --navy-light:#1E3054; --gold:#C9973A; --gold-light:#E8B84B; --border:rgba(201,151,58,.2); --shadow:none; --max:1200px; }
    [hidden] {display:none!important;} body { line-height:1.7; } p + p { margin-top: 14px; } h1,h2,h3 {color:#fff;font-weight:800;} h1 {font-size:clamp(38px,5.5vw,68px);line-height:1.1;letter-spacing:-2px;}
    .wrap {width:90%;}
    .hero {padding:90px 0 80px;background:linear-gradient(rgba(201,151,58,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(201,151,58,.035) 1px,transparent 1px),radial-gradient(ellipse at 40% 50%,rgba(201,151,58,.07),transparent 70%),linear-gradient(145deg,#0B1628,#132038 60%,#0d1e38);background-size:60px 60px,60px 60px,auto,auto;}
    .hero-grid {grid-template-columns:1.35fr .85fr;gap:64px;} .hero-copy{font-size:18px;line-height:1.8;max-width:620px;} .eyebrow {font-size:12px;letter-spacing:2.5px;font-weight:600;color:var(--gold);} .eyebrow:before{height:1px;width:32px;}
    .btn {border-radius:4px;font-size:15px;font-weight:600;letter-spacing:.3px;padding:16px 28px;box-shadow:none;} .btn-primary,.btn-accent{background:var(--gold);color:var(--navy);} .btn-primary:hover,.btn-accent:hover{background:var(--gold-light);} .btn-ghost:hover{color:var(--gold);}
    .btn:disabled {opacity:.4;cursor:not-allowed;transform:none;} :focus-visible{outline:2px solid var(--gold-light);outline-offset:4px;} .field input:focus{box-shadow:0 0 0 3px rgba(201,151,58,.15);}
    .trust-card{background:rgba(11,22,40,.65);padding:28px;border-top:2px solid var(--gold);} .trust-identity{display:flex;gap:16px;align-items:center;margin-bottom:24px;} .trust-identity img{width:68px;height:78px;object-fit:cover;object-position:center top;border-radius:4px;border:1px solid var(--border);} .trust-identity strong{display:block;color:white;font-size:18px;} .trust-identity span{font-size:12px;color:#8A9BB5;} .trust-card h2{font-size:23px;line-height:1.3;} .trust-row{padding:12px 0;} .trust-num{font-weight:800;} .mna-note{padding:16px 0;background:transparent;border-bottom:1px solid var(--border);margin-top:4px;} .confidential-note{font-size:12px;color:#D0D9E8;line-height:1.8;}
    .scorecard-shell{padding:100px 0;} #scorecard,[id$="Screen"]{scroll-margin-top:110px;} .card{border-radius:4px;} .start-card{padding:48px;} .start-card h2{font-size:clamp(28px,4vw,42px);line-height:1.2;} .pill{border-radius:4px;border:1px solid var(--border);font-weight:600;}
    .answer {line-height:1.65;} .answer:hover{background:#1E3054;}.answer.selected{border-color:var(--gold);background:rgba(201,151,58,.10);} .question-title{line-height:1.2;font-size:clamp(25px,3.6vw,36px);} .score-orb:before{background:#0B1628;} .result-head{border-bottom:1px solid var(--border);} .result-title{line-height:1.15;} .advisory{border:1px solid var(--border);} .advisory h3{line-height:1.3;} .priority h3{line-height:1.35;} .form-footnote,.disclaimer{font-size:12px;} .preview-note{border-left:2px solid var(--gold);padding:10px 16px;color:#D0D9E8;font-size:13px;background:rgba(201,151,58,.06);margin:18px 0;} .detail-summary{color:var(--gold-light);font-weight:600;margin-bottom:20px;}
    footer{background:var(--navy);border-top:1px solid var(--border);padding:36px 5%;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;} .footer-logo{font-size:18px;color:white;text-decoration:none;}.footer-logo span{color:var(--gold);}.footer-copy{font-size:13px;color:#8A9BB5;}.footer-links{display:flex;flex-wrap:wrap;gap:24px;}.footer-links a{font-size:13px;color:#8A9BB5;text-decoration:none;}.footer-links a:hover{color:var(--gold);}
    .skip-link{position:absolute;left:5%;top:-100px;background:var(--gold);color:var(--navy);padding:12px;z-index:200;}.skip-link:focus{top:12px;}
    @media(max-width:1000px){.hero-grid{gap:32px;}.hero{padding-top:60px;}}
    @media(max-width:820px){.hero-grid{grid-template-columns:1fr;}.hero{padding:48px 0;}.trust-card{max-width:none;}.value-item,.value-item:first-child{padding:20px 0;}.scorecard-shell{padding:60px 0;}.hero-grid{gap:40px;}footer{align-items:flex-start;flex-direction:column;}}
    @media(max-width:560px){.wrap{width:90%;}h1{font-size:42px;}.start-card{padding:28px 22px;}.trust-card{padding:24px;}.capture{padding:20px;}.footer-links{gap:12px 20px;}.btn{padding-inline:20px;}}
      .consent strong { color: var(--ink); font-weight: 700; }
    .consent + .consent { margin-top: 0; }
