* { box-sizing: border-box; margin: 0; padding: 0; }
  html { scroll-behavior: smooth; }
  body { font-family: 'Poppins', system-ui, sans-serif; background: #fff; color: #221C57; -webkit-font-smoothing: antialiased; }
  ::selection { background: #2E2270; color: #fff; }
  a { transition: opacity .15s, color .15s; }
  a:hover { opacity: .82; }
  .gradtext { background: linear-gradient(95deg,#3B2E8C 0%,#4FB3A0 100%); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
  @keyframes fade { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }
  .fade { animation: fade .4s cubic-bezier(.2,.7,.2,1); }
  .optbtn { transition: border-color .15s, background .15s, color .15s, transform .12s; }
  .optbtn:hover { border-color: #C7C3E4 !important; }
  .optbtn:active { transform: scale(.995); }
  .primary-btn { transition: opacity .15s, transform .12s; }
  .primary-btn:active { transform: scale(.98); }
  .form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
  .fin { width: 100%; font-family: inherit; font-size: 15px; color: #221C57; padding: 13px 15px; border: 1.5px solid #E4E3EC; border-radius: 12px; background: #fff; outline: none; transition: border-color .15s; }
  .fin:focus { border-color: #2E2270; }
  .fin::placeholder { color: #B4B1C6; }
  .nav-toggle { display: none; }
  @media (max-width: 860px) {
    .site-nav { flex-wrap: wrap; gap: 14px !important; }
    .nav-toggle { display: flex !important; flex-direction: column; gap: 5px; margin-left: auto; align-items: center; justify-content: center; width: 44px; height: 44px; border: 1px solid #E4E3EC; border-radius: 11px; background: #fff; cursor: pointer; }
    .nav-toggle span { display: block; width: 20px; height: 2px; background: #2E2270; border-radius: 2px; }
    .nav-links, .nav-lang, .nav-cta { display: none !important; }
    .site-nav.nav-open .nav-links { display: flex !important; flex-direction: column; flex-basis: 100%; gap: 2px !important; margin-left: 0 !important; order: 5; }
    .site-nav.nav-open .nav-links a { padding: 9px 2px; font-size: 16px !important; }
    .site-nav.nav-open .nav-lang { display: flex !important; }
    .site-nav.nav-open .nav-cta { display: inline-flex !important; flex-basis: 100%; text-align: center; justify-content: center; order: 6; }
  }
  @media (max-width: 720px) {
    .intro-dims { grid-template-columns: 1fr 1fr !important; }
    .res-top { grid-template-columns: 1fr !important; text-align: center; }
    .res-donutwrap { justify-content: center !important; }
  }
  @media (max-width: 560px) {
    .page-pad { padding-left: 18px !important; padding-right: 18px !important; }
    .card-pad { padding: 24px 20px !important; }
    .intro-h1 { font-size: 32px !important; }
    .quiz-q { font-size: 21px !important; }
    .res-score { font-size: 30px !important; }
    .intro-dims { grid-template-columns: 1fr 1fr !important; }
    .quiz-nav { flex-direction: column-reverse !important; gap: 12px !important; }
    .quiz-nav > * { width: 100% !important; text-align: center; justify-content: center !important; }
    .form-grid { grid-template-columns: 1fr !important; }
  }
  @media (max-width: 760px) {
    .footer-grid { grid-template-columns: 1fr !important; }
    .footer-bottom { padding-left: 18px !important; padding-right: 18px !important; }
  }
