@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap');
#va-survey-root, #va-survey-root * { box-sizing: border-box; }
#va-survey-root {
  /* Alex Lawson campaign brand: Inter type, Lawson Orange #F09600 */
  --va-ink:#1a2230; --va-muted:#5b6472; --va-line:#e3e7ee;
  --va-accent:#F09600; --va-accent-ink:#1a2230; --va-bg:#fff; --va-soft:#fff6ea;
  max-width:640px; margin:0 auto;
  font-family:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  color:var(--va-ink);
  background:var(--va-bg); border:1px solid var(--va-line); border-radius:16px;
  padding:28px 26px; box-shadow:0 8px 30px rgba(20,34,60,.06); line-height:1.5;
}
#va-survey-root h2 { font-size:1.45rem; margin:0 0 4px; letter-spacing:-.01em; font-weight:700; }
#va-survey-root .va-period { color:var(--va-accent); }
#va-survey-root .va-logo { text-align:center; margin:0 0 14px; }
#va-survey-root .va-logo svg { height:66px; width:auto; }
#va-survey-root .va-sub { color:var(--va-muted); margin:0 0 20px; font-size:.95rem; }
#va-survey-root fieldset { border:0; margin:0 0 22px; padding:0; }
#va-survey-root legend { font-weight:650; font-size:1rem; padding:0; margin-bottom:10px; }
#va-survey-root .va-req { color:var(--va-accent); font-weight:700; }
#va-survey-root .va-opt { color:var(--va-muted); font-weight:400; font-size:.82rem; }
#va-survey-root label.va-choice {
  display:flex; align-items:center; gap:10px; padding:10px 12px; margin:6px 0;
  border:1px solid var(--va-line); border-radius:10px; cursor:pointer;
  font-size:.95rem; transition:border-color .15s, background .15s;
}
#va-survey-root label.va-choice:hover { border-color:var(--va-accent); background:var(--va-soft); }
#va-survey-root label.va-choice input { accent-color:var(--va-accent); width:17px; height:17px; }
#va-survey-root .va-scale { display:flex; gap:6px; flex-wrap:wrap; }
#va-survey-root .va-scale label {
  flex:1 1 0; min-width:88px; text-align:center; padding:9px 6px; border:1px solid var(--va-line);
  border-radius:9px; cursor:pointer; font-size:.82rem; color:var(--va-muted); transition:.15s;
}
#va-survey-root .va-scale input { position:absolute; opacity:0; pointer-events:none; }
#va-survey-root .va-scale label:hover { border-color:var(--va-accent); }
#va-survey-root .va-scale label.is-on { background:var(--va-accent); color:var(--va-accent-ink); border-color:var(--va-accent); }
#va-survey-root .va-stmt { margin:0 0 16px; }
#va-survey-root .va-stmt p { margin:0 0 8px; font-size:.94rem; font-weight:550; }
#va-survey-root input[type=text], #va-survey-root input[type=email], #va-survey-root textarea, #va-survey-root select {
  width:100%; padding:11px 12px; border:1px solid var(--va-line); border-radius:10px;
  font-size:.95rem; font-family:inherit; color:var(--va-ink); background:#fff;
}
#va-survey-root textarea { min-height:74px; resize:vertical; }
#va-survey-root input:focus, #va-survey-root textarea:focus, #va-survey-root select:focus {
  outline:none; border-color:var(--va-accent); box-shadow:0 0 0 3px rgba(240,150,0,.18);
}
#va-survey-root .va-row { display:flex; gap:12px; }
#va-survey-root .va-row > div { flex:1; }
#va-survey-root .va-hp { position:absolute !important; left:-9999px !important; opacity:0; height:0; overflow:hidden; }
#va-survey-root .va-consent { display:flex; gap:10px; align-items:flex-start; font-size:.9rem; color:var(--va-muted); margin-top:12px; }
#va-survey-root .va-consent input { margin-top:3px; accent-color:var(--va-accent); }
#va-survey-root button.va-submit {
  width:100%; margin-top:8px; padding:14px; border:0; border-radius:12px; cursor:pointer;
  background:var(--va-accent); color:var(--va-accent-ink); font-size:1rem; font-weight:650;
  letter-spacing:.01em; transition:transform .05s, opacity .15s;
}
#va-survey-root button.va-submit:hover { opacity:.93; }
#va-survey-root button.va-submit:active { transform:translateY(1px); }
#va-survey-root button.va-submit:disabled { opacity:.6; cursor:default; }
#va-survey-root .va-err { color:#c0392b; font-size:.85rem; margin-top:6px; display:none; }
#va-survey-root .va-submit-err { color:#c0392b; font-size:.9rem; margin-top:10px; text-align:center; display:none; }
#va-survey-root .va-foot { margin-top:14px; font-size:.75rem; color:var(--va-muted); text-align:center; }
#va-survey-root .va-thanks { text-align:center; padding:24px 8px; }
#va-survey-root .va-thanks h2 { font-size:1.5rem; }
@media (max-width:520px){ #va-survey-root .va-row{ flex-direction:column; } }
