/* Working registration and Shape Seiro components, styled for the approved design. */
:root{--paper:var(--cream);--gold:var(--brass)}
body.modal-open{overflow:hidden}
.form-step-count,.form-error,.survey-error,.registration-success .reference,.founding-countdown{font-family:var(--f-display);font-style:normal}
.file-field span{font-size:11px;color:var(--muted)}
.file-field input[type=file]{padding:10px;cursor:pointer}.file-field input[type=file]::file-selector-button{margin-right:12px;border:0;border-radius:999px;padding:10px 14px;background:var(--cream);color:var(--ink);font:600 11px/1 var(--f-display);cursor:pointer}
.join-dialog{width:min(960px,calc(100% - 32px));max-height:min(92dvh,900px);margin:auto;padding:0;overflow:auto;border:1px solid var(--line);border-radius:24px;background:#0b0b0b;color:var(--cream);box-shadow:0 30px 120px #000}
.join-dialog::backdrop{background:rgba(0,0,0,.82);backdrop-filter:blur(8px)}
.join-dialog[open]{animation:join-in .28s ease both}
.join-modal-section{padding:64px 40px 44px}.join-modal-section #join-title{max-width:11ch;font-size:clamp(58px,7vw,78px);line-height:.9}
.keep-together{white-space:nowrap}.required-mark{display:inline;color:var(--brass);font-weight:700}.required-note{margin:2px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.required-note span{color:var(--brass);font-weight:700}
.join-modal-section>.wrap{width:100%;gap:32px}
.join-close{position:sticky;z-index:4;float:right;top:14px;right:14px;width:46px;height:46px;margin:14px 14px -60px 0;border:1px solid var(--line);border-radius:50%;background:rgba(11,11,11,.88);color:var(--cream);font:500 18px/1 var(--f-display);cursor:pointer;backdrop-filter:blur(8px)}
.join-close:focus-visible{outline:2px solid var(--brass);outline-offset:3px}
@keyframes join-in{from{opacity:0;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
#apply{scroll-margin-top:100px}.contact-layout{display:grid;grid-template-columns:1fr;gap:24px}.contact-choice{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.contact-email{font-size:13px;color:var(--muted)}.route-buttons{display:flex;gap:6px;padding:5px;border:1px solid var(--line);border-radius:999px;background:#eee9df0a}.route-buttons button{border:0;border-radius:999px;background:none;color:var(--cream);font-size:13px;padding:14px 20px;min-height:44px}.route-buttons button[aria-pressed=true]{background:var(--cream);color:var(--ink)}.service-status{font-size:12px;color:var(--muted);line-height:1.6;margin:0 0 18px}.contact-form{gap:20px}.contact-form legend{font-size:clamp(22px,2.4vw,30px);line-height:1.3}.form-step-count{font-size:11px;letter-spacing:.2em;color:var(--brass);margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{display:flex;flex-direction:column;gap:8px;font-size:12px;color:var(--muted)}.contact-form input:not([type=radio]):not([type=checkbox]),.contact-form select,.contact-form textarea{font:16px/1.4 var(--f-display);color:var(--cream);background:#eee9df0c;border:1px solid var(--line);border-radius:12px;padding:13px 14px;width:100%;min-width:0;min-height:48px}.contact-form select option{background:var(--ink)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid var(--brass);outline-offset:2px}.registration-roles{display:flex;flex-wrap:wrap;gap:10px}.registration-roles label{display:flex;flex-direction:row;align-items:center;gap:8px;border:1px solid var(--line);border-radius:999px;padding:12px 18px;color:var(--cream);font-size:14px;cursor:pointer}.registration-roles label:has(input:checked){background:var(--brass);color:var(--ink);border-color:var(--brass)}.registration-roles input,.check-label input{accent-color:var(--brass);width:16px;height:16px;flex-shrink:0}.contact-form .check-label{display:flex;flex-direction:row;gap:12px;align-items:flex-start;font-size:13px;line-height:1.6}.check-label a{text-underline-offset:3px}.turnstile-slot{min-height:70px;margin-top:20px;max-width:100%}.form-controls{display:flex;align-items:center;justify-content:space-between;gap:20px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;cursor:pointer;border:0;min-height:48px;padding:16px 24px;font:600 13px/1.4 var(--f-display);border-radius:999px}.button.primary{background:var(--cream);color:var(--ink)}.text-link,.skip-survey{background:none;border:0;color:var(--cream);text-decoration:underline;text-underline-offset:5px;font-size:13px;min-height:44px}.form-controls .button{margin-left:auto}.form-error,.survey-error{font-size:13px;line-height:1.6;color:#e8c898}.registration-success{background:#0b0b0be8;border:1px solid var(--line);border-radius:22px;padding:32px;scroll-margin-top:100px}.registration-success h3{font-size:40px;margin:20px 0}.registration-success p{font-size:14px;overflow-wrap:anywhere}.registration-success .reference{color:var(--brass);font-size:20px}.registration-success .button{margin-top:20px}.registration-success .skip-survey{display:block}.founding-countdown{font-size:18px;color:var(--brass);margin-block:20px}.social-links{display:flex;gap:24px;flex-wrap:wrap;margin-top:22px}.social-links a{font-size:13px;min-height:44px}.survey-dialog{width:720px;max-width:calc(100% - 24px);max-height:90dvh;padding:60px 32px 28px;overflow:auto;border:1px solid var(--line);border-radius:20px;background:var(--ink);color:var(--cream)}.survey-dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}.survey-close{position:absolute;top:14px;right:18px;min-height:40px;background:none;border:0;color:var(--cream)}.survey-intro h2,.survey-question h2{font-size:32px;line-height:1.15;max-width:none;margin:20px 0;letter-spacing:-.02em;text-shadow:none}.survey-intro p,.survey-question .small-copy{font-size:13px;line-height:1.7;color:var(--muted)}.survey-intro .skip-survey{display:block;margin-top:16px}.survey-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:22px}.survey-options label{display:flex;align-items:center;gap:10px;min-height:52px;padding:12px;border:1px solid var(--line);border-radius:10px;font-size:13px;cursor:pointer}.survey-options label:has(input:checked){border-color:var(--brass);background:#d9b77a10}.survey-options input{accent-color:var(--brass);flex-shrink:0;width:16px;height:16px}.survey-question textarea{width:100%;min-height:130px;resize:vertical;background:#161616;color:var(--cream);font-size:16px;border:1px solid var(--line);border-radius:10px;padding:14px}.survey-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:22px}#survey-title:focus{outline:none}.survey-intro .button{margin-top:16px}.privacy-notice{position:fixed;z-index:40;bottom:18px;left:18px;max-width:430px;padding:24px;background:var(--cream);color:var(--ink);border-radius:16px;box-shadow:0 12px 60px #0007}.privacy-notice h2{font-size:23px;line-height:1.1;max-width:none;text-shadow:none}.privacy-notice p{font-size:12px;line-height:1.7}.privacy-actions{display:flex;gap:10px}.privacy-actions button{font-size:11px;line-height:1.5;min-height:44px;padding:10px;background:transparent;color:var(--ink);border:1px solid #0b0b0b55;border-radius:8px;flex:1}
@media(max-width:700px){.contact-choice{gap:16px;justify-content:center}.contact-email{width:100%;text-align:center;font-size:14px}.route-buttons{border-radius:16px;width:100%}.route-buttons button{flex:1;padding:13px 10px;font-size:12px;line-height:1.4;border-radius:12px}.form-grid{grid-template-columns:1fr;gap:18px}.contact-form.glass{padding:22px 18px}.contact-form legend{font-size:27px;line-height:1.18}.contact-form label{font-size:13px}.contact-form input:not([type=radio]):not([type=checkbox]),.contact-form select,.contact-form textarea{font-size:16px;min-height:52px}.registration-roles{display:grid;grid-template-columns:1fr 1fr;gap:8px}.registration-roles label{justify-content:center;padding:13px 10px;font-size:12px;text-align:center}.form-controls{gap:10px}.form-controls .button{min-height:52px;font-size:12px;padding:14px 18px}.registration-success{padding:22px}.survey-dialog{padding:56px 20px 24px}.survey-intro h2,.survey-question h2{font-size:28px}.survey-options{grid-template-columns:1fr}.survey-controls{position:sticky;bottom:-24px;background:var(--ink);padding-block:12px;border-top:1px solid var(--line)}.survey-controls .button{font-size:12px;padding:13px 17px}.privacy-notice{left:12px;right:12px;bottom:12px;max-width:none;padding:20px}}
@media(max-width:700px){.join-dialog{width:100%;max-width:none;max-height:100dvh;height:100dvh;border:0;border-radius:0}.join-modal-section{padding:76px 20px 36px}.join-modal-section #join-title{max-width:9.5ch;font-size:clamp(52px,15vw,62px)}.join-close{top:12px;right:12px;margin:12px 12px -58px 0}}
