[hidden]{display:none!important}.quiz-main{min-height:650px}.quiz-intro{padding:90px 0 100px;overflow:hidden}.quiz-intro-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:80px;align-items:center}.quiz-intro h1{font-size:clamp(40px,4.6vw,66px);line-height:1.06;max-width:770px}.quiz-intro .eyebrow{color:#65d7aa}.quiz-intro .lead{font-size:20px;max-width:630px}.quiz-start{margin-top:12px;gap:35px;min-height:56px}.quiz-caption{font-size:14px;color:#aebfd7;margin:20px 0 0}.quiz-route{padding:30px;border:1px solid #ffffff24;border-radius:8px;background:#ffffff06}.route-mark{display:flex;align-items:center;justify-content:space-between;font-size:62px;font-weight:900;letter-spacing:-5px;margin-bottom:28px;color:#fff}.route-mark>span{color:#4d92ff;letter-spacing:0}.quiz-route>div{display:flex;gap:20px;align-items:center;padding:17px 0;border-top:1px solid #ffffff24}.route-number{color:#6aa7ff;font-size:12px;font-weight:800}.quiz-route p{margin:0}.route-end{display:flex;justify-content:space-between;color:#65d7aa;font-weight:700;padding-top:22px;border-top:1px solid #ffffff24}.quiz-workspace{max-width:850px;padding-top:48px;padding-bottom:64px}.quiz-meta{display:flex;justify-content:space-between;color:var(--muted);font-size:13px;margin-bottom:14px}.quiz-meta>span:first-child{color:var(--blue);font-weight:800}.quiz-progress{height:4px;background:var(--line);margin-bottom:35px;border-radius:4px;overflow:hidden}.quiz-progress>span{display:block;background:var(--blue);height:100%;transition:width .2s}.quiz-workspace h1{font-size:clamp(28px,3.5vw,40px);line-height:1.12;max-width:780px;margin-bottom:16px}.quiz-hint{color:var(--muted);margin-bottom:24px}.quiz-options{border:0;padding:0;margin:0;display:grid;gap:10px}.quiz-option{display:flex;gap:14px;align-items:flex-start;padding:17px 20px;border:1px solid var(--line);border-radius:var(--radius);background:white;cursor:pointer;transition:border-color .15s,background .15s}.quiz-option:hover{border-color:#8eb9fb}.quiz-option:has(input:checked){border-color:var(--blue);background:#eef5ff;box-shadow:inset 3px 0 var(--blue)}.quiz-option:has(input:focus-visible){outline:3px solid #87b7ff;outline-offset:2px}.quiz-option input{margin-top:5px;accent-color:var(--blue);width:18px;height:18px;flex-shrink:0}.quiz-option strong{font-weight:750}.quiz-option small{display:block;font-size:14px;color:var(--muted);margin-top:3px}.quiz-navigation{display:flex;justify-content:space-between;gap:24px;align-items:center;border-top:1px solid var(--line);padding-top:24px;margin-top:24px}.quiz-navigation .btn{gap:28px;min-height:50px}.quiz-back{border:0;background:none;color:var(--muted);cursor:pointer;padding:10px 0}.quiz-field{display:grid;gap:8px;margin:22px 0 0;font-weight:650}.quiz-field input,.quiz-field textarea{width:100%;border:1px solid var(--line);background:#fff;border-radius:8px;padding:14px 16px;color:var(--ink);font-weight:400}.quiz-field textarea{min-height:100px;resize:vertical}.quiz-field input:focus,.quiz-field textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.quiz-error{color:#b42318;font-size:14px;margin:16px 0 0}.quiz-error:empty{display:none}.quiz-contact-copy{color:var(--muted);max-width:760px}.quiz-channels{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}.quiz-channels .quiz-option{flex:1;min-width:140px;padding:12px 16px}.quiz-contact-legend{font-weight:650;margin-top:24px}.quiz-consent{margin-top:22px;display:flex;gap:10px;align-items:flex-start;font-size:13px;color:var(--muted)}.quiz-consent input{margin-top:4px;accent-color:var(--blue)}.quiz-consent a{color:var(--blue);text-decoration:underline}.quiz-success{max-width:800px;padding-top:90px;padding-bottom:110px;text-align:center}.quiz-success h2{font-size:44px}.quiz-success>p:not(.eyebrow){font-size:19px;color:var(--muted);margin:24px auto 32px;max-width:620px}.success-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#e2f5ed;color:var(--green);font-size:32px;margin:0 auto 28px}.quiz-trap{position:absolute;left:-9999px}.quiz-main :focus-visible{outline:3px solid #65a6ff;outline-offset:4px}.quiz-main h1:focus,.quiz-main h2:focus{outline:none}.btn:disabled{opacity:.6;cursor:wait}.quiz-option:has(input:disabled){opacity:.55;cursor:default}@media(max-width:800px){.quiz-intro{padding:55px 0 60px}.quiz-intro-grid{grid-template-columns:1fr;gap:35px}.quiz-route{display:none}.quiz-workspace{padding-top:30px}.quiz-meta>span:last-child{display:none}.quiz-option{padding:14px}.quiz-success h2{font-size:34px}.quiz-success{padding:65px 0}.quiz-intro .lead{font-size:18px}}@media(prefers-reduced-motion:reduce){.quiz-main *{transition:none!important;scroll-behavior:auto}}

#quiz{scroll-margin-top:100px}

.quiz-navigation:has(.quiz-back[hidden]){justify-content:flex-end}

/* Override calculator option defaults inherited from the shared stylesheet. */
.quiz-workspace .quiz-option {
  display: flex;
  align-items: center;
  min-height: 64px;
}
.quiz-workspace .quiz-option input {
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  margin: 0;
  padding: 0;
}
.quiz-workspace .quiz-option > span {
  display: block;
  min-width: 0;
}
.quiz-workspace .quiz-option strong {
  display: block;
  line-height: 1.45;
}

/* Keep quiz navigation visible at every question and viewport height. */
.quiz-workspace {
  padding-top: 24px;
  padding-bottom: 112px;
}
.quiz-progress { margin-bottom: 24px; }
.quiz-workspace h1 { font-size: clamp(26px, 3vw, 36px); margin-bottom: 12px; }
.quiz-hint { margin-bottom: 18px; }
.quiz-workspace .quiz-options { gap: 8px; }
.quiz-workspace .quiz-option { min-height: 56px; padding: 12px 16px; }
.quiz-workspace .quiz-option small { font-weight: 400; line-height: 1.4; }
.quiz-navigation {
  position: fixed;
  z-index: 21;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0;
  padding: 14px max(20px, calc((100vw - 810px) / 2));
  padding-bottom: max(14px, env(safe-area-inset-bottom));
  background: rgba(247, 249, 252, .98);
  border-top: 1px solid var(--line);
  box-shadow: 0 -8px 24px rgba(16, 24, 40, .06);
}
.quiz-navigation .btn { min-height: 48px; }
body:has(.quiz-workspace:not([hidden])) { padding-bottom: 82px; }
.quiz-error { scroll-margin-bottom: 110px; }
.quiz-field input, .quiz-field textarea { scroll-margin-bottom: 110px; }
@media (max-width: 600px) {
  .quiz-workspace { width: calc(100% - 32px); padding-top: 16px; }
  .quiz-meta { margin-bottom: 10px; font-size: 12px; }
  .quiz-progress { margin-bottom: 18px; }
  .quiz-workspace h1 { font-size: 26px; line-height: 1.12; }
  .quiz-hint { font-size: 14px; margin-bottom: 14px; }
  .quiz-workspace .quiz-option { gap: 10px; min-height: 48px; padding: 10px 12px; }
  .quiz-workspace .quiz-option strong { font-size: 14px; line-height: 1.35; }
  .quiz-workspace .quiz-option small { font-size: 12px; margin-top: 3px; }
  .quiz-navigation { padding: 10px 16px max(10px, env(safe-area-inset-bottom)); gap: 12px; }
  .quiz-navigation .btn { font-size: 14px; padding-inline: 16px; }
  .quiz-navigation .quiz-back { font-size: 14px; flex-shrink: 0; }
}

@media (max-width: 600px) {
  .quiz-contact-copy { display: none; }
  .quiz-channels {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
  }
  .quiz-workspace .quiz-channels .quiz-option {
    min-width: 0;
    min-height: 44px;
    padding: 10px 6px;
    gap: 6px;
    justify-content: center;
    white-space: nowrap;
    font-size: 13px;
  }
  .quiz-workspace .quiz-channels .quiz-option input {
    flex-basis: 16px;
    width: 16px;
    height: 16px;
  }
  .quiz-contact-legend { margin-top: 18px; }
  #contact-field .quiz-field { margin-top: 16px; }
}
