/* Follows morning-landing's tokens (DESIGN-v2.1): ink on white, purple for focus and selection, one mint (#BCF7CE)
   highlight, Clash Grotesk to declare and Hanken Grotesk to speak. Served from this origin only. */
@font-face{font-family:'Clash Grotesk';font-weight:500;font-display:swap;src:url('/fonts/ClashGrotesk-Medium.woff2') format('woff2')}
@font-face{font-family:'Clash Grotesk';font-weight:600;font-display:swap;src:url('/fonts/ClashGrotesk-Semibold.woff2') format('woff2')}
@font-face{font-family:'Hanken Grotesk';font-weight:400;font-style:normal;font-display:swap;src:url('/fonts/HankenGrotesk-Regular.ttf') format('truetype')}
@font-face{font-family:'Hanken Grotesk';font-weight:400;font-style:italic;font-display:swap;src:url('/fonts/HankenGrotesk-Italic.ttf') format('truetype')}

:root{
  --ink:#171331; --ground:#fff; --purple:#693FF3; --mint:#BCF7CE;
  --mut:rgba(23,19,49,.68); --line:rgba(23,19,49,.16); --error:#A11C1C; --wash:rgba(105,63,243,.07);
  --f-declare:'Clash Grotesk','Helvetica Neue',Arial,sans-serif;
  --f-speak:'Hanken Grotesk','Helvetica Neue',Arial,sans-serif;
  --page-margin:20px;
}
@media (min-width:768px){:root{--page-margin:32px}}

*{box-sizing:border-box}
h1{text-wrap:balance}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--ground);color:var(--ink);font-family:var(--f-speak);letter-spacing:-.02em;font-size:17px;line-height:1.5}
a{color:inherit}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
[hidden]{display:none!important}

.strip{position:sticky;top:0;z-index:10;height:64px;display:flex;align-items:center;padding:0 var(--page-margin);background:rgba(255,255,255,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.strip img{height:15px;width:auto;display:block}
.strip .x{margin:0 12px;font-family:var(--f-declare);font-weight:500;font-size:18px;line-height:1;color:var(--mut)}
.strip img.btv{height:13px}

main{max-width:640px;margin:0 auto;padding:0 var(--page-margin)}
.intro{padding:clamp(32px,5vw,56px) 0 8px}
h1{font-family:var(--f-declare);font-weight:600;font-size:clamp(36px,2vw + 22px,48px);line-height:1;letter-spacing:-.03em;margin:0}
mark{background:var(--mint);color:var(--ink);padding:0 .08em}
.lede{font-size:clamp(1.1rem,1.4vw,1.25rem);line-height:1.5;margin:20px 0 0}

.formwrap{padding:24px 0 0}
form{display:grid;gap:28px}
.q{margin:0;padding:0;border:0;min-width:0}
.legend{display:block;padding:0;font-family:var(--f-declare);font-weight:500;font-size:17px;line-height:1.3;letter-spacing:-.01em;margin:0 0 10px}
.qnum{color:var(--mut)}
.req{color:var(--error)}

input[type=text],input[type=email],select{width:100%;font-family:var(--f-declare);font-weight:500;font-size:17px;line-height:1.2;color:var(--ink);background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 18px;min-height:52px;appearance:none;-webkit-appearance:none}
select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' fill='none' stroke='%23171331' stroke-width='2'%3E%3Cpath d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 18px center;padding-right:44px}
input::placeholder{color:var(--mut)}
input:hover,select:hover{border-color:rgba(23,19,49,.4)}
input:focus-visible,select:focus-visible{outline:2px solid var(--purple);outline-offset:1px;border-color:var(--purple)}
[aria-invalid="true"]{border-color:var(--error)!important}

.opts{display:grid;gap:8px}
.opt{display:flex;align-items:center;gap:12px;min-height:48px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;cursor:pointer;font-size:16px;line-height:1.3}
.opt:hover{border-color:rgba(23,19,49,.4)}
.opt input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--purple)}
.opt:has(input:checked){border-color:var(--purple);background:var(--wash)}
.opt:has(input:focus-visible){outline:2px solid var(--purple);outline-offset:1px}

.consent{font-family:var(--f-declare);font-weight:500;font-size:14px;line-height:1.4;color:var(--ink);margin:10px 0 0}
.consent a{text-decoration:underline}
.err{font-family:var(--f-declare);font-weight:500;font-size:14px;line-height:1.3;color:var(--error);margin:8px 0 0}

.btn{font-family:var(--f-declare);font-weight:500;font-size:17px;line-height:1;background:var(--ink);color:#fff;border:0;border-radius:999px;padding:0 28px;min-height:56px;width:100%;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}
.btn:hover{background:#2b2550}
.btn[disabled]{opacity:.72;cursor:progress}
@media (min-width:520px){.btn{width:auto;justify-self:start}}

.done{padding:8px 0 0}
.done:focus{outline:none}
.done strong{display:block;font-family:var(--f-declare);font-weight:600;font-size:clamp(26px,19.62px + 1.124vw,34px);letter-spacing:-.02em;line-height:1.15}
.done span{display:block;margin-top:10px}
.done a{text-decoration:underline}

.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

footer{margin:64px auto 0;max-width:640px;border-top:1px solid var(--line);padding:24px var(--page-margin) 40px;display:flex;flex-wrap:wrap;gap:8px 24px;font-family:var(--f-declare);font-weight:500;font-size:13px;line-height:1.2}
footer span{color:var(--mut);margin-right:auto}
