*{box-sizing:border-box}
body{margin:0;min-height:100svh;display:flex;flex-direction:column;font-size:16px;line-height:1.6;letter-spacing:-.01em;background:radial-gradient(ellipse 720px 420px at 50% 0,rgba(124,58,237,.04),transparent 70%),#fff}
main{width:min(800px,calc(100% - 48px));margin:clamp(32px,7vh,64px) auto 40px}
#application{padding:40px;border:1px solid var(--surface-border);border-radius:24px;background:#fff;box-shadow:0 12px 40px rgba(0,0,0,.04),0 2px 8px rgba(0,0,0,.02)}
.card{position:relative}#number{display:none}
h1{font-size:clamp(24px,3.3vw,32px);font-weight:600;line-height:1.25;letter-spacing:-.035em;text-align:center;margin:0 0 32px;text-wrap:balance}
#question:focus{outline:none}
#description{font-size:15px;line-height:1.6;color:var(--text-secondary);text-align:center;margin:-18px 0 28px}#description:empty{display:none}
#fields{display:grid;gap:12px}.choice{display:flex;align-items:center;gap:14px;padding:17px 20px;min-height:60px;border:1px solid var(--surface-border);border-radius:12px;color:var(--text-primary);background:#fff;cursor:pointer;line-height:1.5;transition:border-color .15s,background .15s,box-shadow .15s}
.choice:hover{border-color:#c4b5fd;background:var(--accent-bg)}.choice:has(input:checked){border-color:var(--accent);background:var(--accent-bg);box-shadow:0 0 0 1px var(--accent)}
input[type=checkbox],input[type=radio]{accent-color:var(--accent);width:20px;height:20px;margin:0;flex-shrink:0;cursor:pointer}
.images{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.images .choice{position:relative;flex-direction:column;justify-content:center;gap:12px;padding:36px 12px 18px;min-height:190px;text-align:center;font-size:15px;font-weight:500}
.images img{width:100%;max-width:118px;height:86px;object-fit:cover;border-radius:8px}.images input{position:absolute;top:12px;left:12px;width:18px;height:18px}
.binary{grid-template-columns:repeat(2,minmax(0,1fr))}.binary .choice{justify-content:center;min-height:96px;padding:24px;font-size:18px;font-weight:500}
.names{grid-template-columns:repeat(2,minmax(0,1fr))}.names span{display:block;margin-bottom:8px;font-size:14px;font-weight:500}.entry{display:block;width:100%;min-height:56px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:var(--text-primary);padding:14px 16px;font:inherit;transition:border-color .15s,box-shadow .15s}.entry:hover{border-color:#94a3b8}.entry:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-ring);outline:none}.entry::placeholder{color:var(--text-tertiary)}
nav{display:flex;justify-content:space-between;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid var(--surface-border)}
button{font:inherit;font-size:14px;font-weight:500;line-height:1.4;min-height:48px;border:1px solid var(--surface-border);border-radius:100px;padding:12px 24px;cursor:pointer;transition:background .15s,box-shadow .15s;color:var(--text-secondary);background:#fff}
button:hover{background:var(--bg-primary);color:var(--text-primary)}#next{margin-left:auto;min-width:120px;color:#fff;border-color:var(--accent);background:var(--accent)}#next:hover{background:var(--accent-hover);box-shadow:0 2px 10px rgba(124,58,237,.22)}button:disabled{opacity:.5;cursor:default}#previous:disabled{visibility:hidden}
#error{color:#b91c1c;font-size:14px;line-height:1.5;margin:18px 0 0}#error:empty{display:none}.trap{position:absolute;left:-10000px}
footer{margin-top:28px;text-align:center;color:var(--text-secondary);font-size:13px}#progress{height:4px;background:var(--bg-tertiary);width:min(240px,70%);margin:0 auto 10px;border-radius:100px;overflow:hidden}#progress:before{content:'';display:block;height:100%;width:var(--progress,0%);background:var(--accent);border-radius:100px;transition:width .2s}#success{text-align:center}#success[hidden]{display:none}
.contact-hint{margin:0;font-size:13px;line-height:1.6;color:var(--text-secondary)}.contact-consent{display:flex;align-items:flex-start;gap:12px;margin-top:8px;padding-top:20px;border-top:1px solid var(--surface-border);font-size:14px;line-height:1.65;color:var(--text-secondary);cursor:pointer}.contact-consent input[type=checkbox]{margin-top:3px}.contact-policy{margin:0 0 0 32px;font-size:13px;line-height:1.5}.contact-policy a{color:var(--accent);text-underline-offset:3px}
@media(max-width:700px){main{width:calc(100% - 32px);margin:24px auto 28px}#application{padding:28px 24px;border-radius:20px}.images{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.images .choice{min-height:168px;padding-top:32px}.images img{height:76px;max-width:108px}h1{margin-bottom:26px}nav{margin-top:26px;padding-top:22px}}
@media(max-width:400px){#application{padding:26px 18px}.images .choice{font-size:14px;padding-inline:8px}.names{grid-template-columns:1fr}.choice{padding:14px}.binary .choice{min-height:82px;padding:18px}.contact-consent{font-size:13px}button{padding-inline:20px}h1{font-size:24px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}

#description{white-space:pre-line}#fields>label>span{display:block;margin-bottom:6px}#fields>.choice>span{margin-bottom:0}#fields select{margin-top:6px}#fields label:has(.entry){font-size:14px}#fields .entry{margin-top:5px}

.application-proof{margin:0}.application-proof video{display:block;width:100%;max-height:350px;background:#111;border-radius:12px}.application-proof figcaption{margin-top:8px;font-size:12px;color:var(--text-secondary);text-align:center}.application-transcript{font-size:14px;color:var(--text-secondary)}.application-transcript summary{cursor:pointer;color:var(--accent)}.application-transcript p{white-space:pre-line;line-height:1.6}
