@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@600;700;800&display=swap');
:root{font-family:'DM Sans',system-ui,sans-serif;color:#16383f;background:#eaf7f5;--ink:#0d343d;--muted:#587176;--deep:#083b47;--teal:#0d857e;--mint:#7ce0d3;--line:#cfe5e2}*{box-sizing:border-box}body{margin:0;min-width:280px}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:wait;opacity:.65}button,input{ -webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,.choice:focus-within{outline:3px solid #79c9be;outline-offset:4px}h1,h2{font-family:Manrope,system-ui,sans-serif}h1:focus{outline:none}.shell{min-height:100dvh;padding:clamp(12px,4vw,48px);background:radial-gradient(circle at 8% 5%,#bceee4,transparent 30rem),linear-gradient(140deg,#f8fcfb,#e3f2f2)}.survey-card{max-width:1040px;margin:auto;border:1px solid white;border-radius:26px;overflow:hidden;background:#fff;box-shadow:0 24px 70px #0c434a1c}.brand{min-height:86px;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:16px clamp(22px,5vw,48px);border-bottom:1px solid var(--line)}.brand img{width:min(210px,48vw);height:auto}.brand-note{font-size:.8rem;color:var(--muted)}.welcome{display:grid;grid-template-columns:1.06fr 1fr}.welcome-copy{background:var(--deep);color:white;padding:clamp(30px,6vw,64px)}.eyebrow{color:var(--teal);font-size:.75rem;text-transform:uppercase;font-weight:700;letter-spacing:.13em}.welcome-copy .eyebrow{color:var(--mint)}h1{font-size:clamp(1.9rem,4vw,3rem);letter-spacing:-.04em;line-height:1.17;margin:18px 0}.welcome h1{font-size:clamp(2.4rem,4.5vw,3.8rem)}.lead{font-size:1.3rem;line-height:1.7;color:#d9eeee}.welcome-detail{margin-top:42px;padding-top:24px;border-top:1px solid #ffffff33;line-height:1.8;font-size:.9rem;color:#cce5e2}.start-panel{padding:clamp(28px,5vw,56px);align-self:center}.start-panel h2{font-size:1.7rem}.start-panel p,.instruction,.confirmation>p{color:var(--muted);line-height:1.7}.pulse{display:grid;place-items:center;width:60px;height:60px;background:#eaf7f5;color:var(--teal);border-radius:16px;font-size:2.7rem}.primary,.secondary{min-height:52px;border:0;border-radius:10px;padding:12px 23px;font-weight:700;display:inline-flex;justify-content:center;align-items:center;gap:18px}.primary{background:var(--teal);color:white;box-shadow:0 8px 20px #0d857e26}.primary:hover{background:#086f69}.secondary{background:#edf6f5;color:var(--deep)}.start-panel .primary{width:100%;margin-top:12px}.fine-print{font-size:.8rem!important;line-height:1.6;color:var(--muted)}.question-screen{max-width:820px;margin:auto;padding:clamp(24px,5vw,52px) clamp(22px,5vw,54px)}.progress-row{display:flex;justify-content:space-between;gap:12px;font-size:.82rem;color:var(--muted);font-weight:600}progress{appearance:none;width:100%;height:7px;border:0;border-radius:20px;background:#e5f1ef;margin:12px 0 26px;overflow:hidden}progress::-webkit-progress-bar{background:#e5f1ef}progress::-webkit-progress-value{background:var(--teal)}progress::-moz-progress-bar{background:var(--teal)}.instruction{font-size:1.05rem;margin-bottom:26px}.text-label{display:block;font-weight:700;margin:20px 0 9px}input:not([type=radio]){width:100%;min-height:56px;border:1px solid #aecbc8;border-radius:11px;padding:12px 16px;color:var(--ink)}fieldset{padding:0;border:0;margin:0}legend{font-size:.85rem;color:var(--muted);margin-bottom:16px}.choices{display:grid;grid-template-columns:1fr 1fr;gap:13px}.choice{position:relative;display:flex;align-items:center;gap:14px;min-height:70px;padding:16px;border:1px solid var(--line);border-radius:12px;cursor:pointer;font-weight:600}.choice:hover{background:#f5fbfa;border-color:var(--teal)}.choice:has(input:checked){background:#eaf7f5;border-color:var(--teal);box-shadow:inset 0 0 0 1px var(--teal)}.choice input{position:absolute;width:1px;height:1px;opacity:0}.dot{height:22px;width:22px;border:2px solid #9dbfbc;border-radius:50%;box-shadow:inset 0 0 0 5px #fff;background:#fff;flex-shrink:0}input:checked+.dot{border-color:var(--teal);background:var(--teal)}.actions{display:flex;justify-content:space-between;gap:12px;margin-top:30px;padding-top:24px;border-top:1px solid var(--line)}.error{color:#7f3326;background:#fff2ef;padding:14px;border-left:3px solid #b84e3b;border-radius:6px;line-height:1.5}.review{margin:0}.review>div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #e4efed}.review dt{color:var(--muted)}.review dd{margin:0;text-align:right;overflow-wrap:anywhere;font-weight:600}.confirmation{padding:clamp(32px,7vw,70px);max-width:820px;margin:auto}.check{width:64px;height:64px;border-radius:50%;background:var(--teal);color:white;font-size:2rem;display:grid;place-items:center;margin-bottom:28px}.reference{font-size:.78rem;overflow-wrap:anywhere;margin:30px 0}footer{display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding:18px clamp(22px,5vw,48px);font-size:.76rem;color:var(--muted)}@media(max-width:650px){.welcome{grid-template-columns:1fr}.welcome-copy{padding:30px}.welcome h1{font-size:2.3rem}.welcome-detail{margin-top:24px}.brand-note{display:none}.survey-card{border-radius:18px}.question-screen h1{font-size:2rem}.instruction{font-size:1rem}.choices{gap:10px}.choice{padding:12px;min-height:64px}.review>div{font-size:.9rem}.brand{min-height:72px}}@media(max-width:340px){.choices{grid-template-columns:1fr}.actions button{padding:12px 16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
