.selection-page{background:var(--paper);color:var(--ink);min-height:100svh}.select-top{height:86px;display:flex;align-items:center;justify-content:space-between}.close-link{font-size:13px;display:flex;gap:14px;align-items:center}.close-link span{font-size:28px;font-weight:300}.selector{min-height:calc(100svh - 86px);display:grid;grid-template-columns:.82fr 1.18fr}.selector-intro{background:#11110f;color:#f5f2ec;padding:clamp(46px,6vw,100px);display:flex;flex-direction:column;justify-content:center}.selector-intro h1{font-size:clamp(68px,6.8vw,126px);line-height:.78;letter-spacing:-.075em;margin:0 0 42px;font-weight:540}.selector-intro h1 em{font-family:var(--serif);font-weight:400;color:var(--acid)}.selector-intro>p{color:#aaa69f;font-size:18px;line-height:1.48;max-width:650px}.selector-promise{display:grid;grid-template-columns:42px 1fr;gap:10px 14px;margin-top:42px;border-top:1px solid rgba(255,255,255,.18);padding-top:24px}.selector-promise span{color:var(--acid);font-size:11px}.selector-promise p{margin:0 0 6px;font-size:15px}.selector-intro small{margin-top:38px;color:#77736c}.form-shell{padding:clamp(42px,6vw,100px);display:flex;flex-direction:column;justify-content:center;max-width:980px;width:100%;margin:0 auto}.progress{display:flex;align-items:center;gap:16px;margin-bottom:52px;position:relative}.progress:before{content:"";height:4px;background:#ded9d0;flex:1;border-radius:999px}.progress i{height:4px;background:var(--acid);position:absolute;left:0;top:50%;translate:0 -50%;display:block;border-radius:999px;transition:width .3s ease;width:16.67%;max-width:calc(100% - 45px)}.progress span{font-size:11px;white-space:nowrap;color:var(--muted)}.form-step{display:none;animation:stepIn .4s cubic-bezier(.2,.8,.2,1)}.form-step.is-active{display:block}@keyframes stepIn{from{opacity:0;transform:translateX(22px)}to{opacity:1;transform:none}}.step-kicker{text-transform:uppercase;letter-spacing:.16em;font-size:10px;font-weight:700;color:#77736d;margin-bottom:18px}.form-step h2,.form-success h2{font-size:clamp(48px,5.2vw,92px);line-height:.91;letter-spacing:-.06em;margin:0 0 42px;font-weight:520;max-width:900px}.field-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.field-grid.two{grid-template-columns:1fr 1fr}.field-grid label,.contact-row label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}input[type=email],input[type=tel],input[type=number],.field-grid input{display:block;width:100%;border:0;border-bottom:1px solid #aaa39a;background:transparent;padding:15px 0 13px;font:inherit;font-size:18px;color:var(--ink);outline:0;border-radius:0;text-transform:none;letter-spacing:0}.field-grid input:focus,.contact-row input:focus{border-color:var(--ink)}.choice-grid,.priority-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.choice-grid.vertical{grid-template-columns:1fr}.choice-grid label,.priority-grid label{cursor:pointer}.choice-grid input,.priority-grid input{position:absolute;opacity:0}.choice-grid span,.priority-grid span{display:block;border:1px solid #cfc8bf;border-radius:22px;padding:20px 22px;font-size:16px;line-height:1.3;transition:.2s ease;background:#f4f0e9}.choice-grid input:checked+span,.priority-grid input:checked+span{border-color:var(--ink);background:#11110f;color:#fff;transform:translateY(-2px)}.choice-grid.vertical span{padding:22px 25px}.contact-row{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:32px}.consent{display:flex;gap:12px;align-items:flex-start;margin-top:28px;color:var(--muted);font-size:12px;line-height:1.4;max-width:680px}.consent input{margin-top:3px}.form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:54px}.back{border:0;background:transparent;font:inherit;cursor:pointer;color:var(--muted);padding:12px 0}.back:disabled{opacity:.25;cursor:default}.next,.submit{border-radius:999px!important;font-weight:700;padding:16px 24px!important}.form-success p{font-size:18px;line-height:1.45;max-width:720px}.success-mark{width:100px;height:100px;border-radius:50%;background:var(--acid);display:grid;place-items:center;font-size:48px;margin:38px 0}.prototype-note{font-size:12px!important;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.has-error{animation:shake .25s linear}@keyframes shake{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@media(max-width:980px){.selector{grid-template-columns:1fr}.selector-intro{min-height:68svh}.form-shell{min-height:82svh}.field-grid,.field-grid.two,.contact-row,.choice-grid,.priority-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.select-top .brand span{display:none}.selector-intro{padding:42px 20px}.form-shell{padding:42px 20px}.field-grid,.field-grid.two,.contact-row,.choice-grid,.priority-grid{grid-template-columns:1fr}.form-step h2{font-size:50px}.selector-intro h1{font-size:64px}.choice-grid span,.priority-grid span{padding:17px 18px}}


/* v0.7 selection refinement */
.form-shell{justify-content:flex-start!important;padding-top:clamp(30px,4.2vh,58px)!important;padding-bottom:48px!important}
.form-shell>*,.form-shell form{width:100%;max-width:880px;margin-left:auto;margin-right:auto}
.progress{margin-bottom:38px!important}.progress span{font-weight:650;letter-spacing:.04em;color:#3b3834!important}
.field-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.field-hint{display:block;margin-top:7px;font-size:11px;color:var(--muted);text-transform:none;letter-spacing:0}
.field-error{display:block!important;color:#c32626!important;font-size:11px!important;font-weight:700!important;letter-spacing:0!important;text-transform:none!important;margin-top:7px!important;line-height:1.2!important}
label.is-invalid input{border-color:#c32626!important;color:#9f1d1d!important}
.choice-grid.is-invalid,.priority-grid.is-invalid{outline:1px solid #c32626;outline-offset:8px;border-radius:16px}
.consent.is-invalid{color:#c32626!important}
.choice-grid.is-invalid .field-error,.priority-grid.is-invalid .field-error{grid-column:1/-1;margin-left:2px}
.form-step.has-error h2{color:#171714}
@media(max-width:980px){.field-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:720px){.field-grid{grid-template-columns:1fr!important}}


/* v0.8 — clearer progress, required-field pulse and pointer affordance */
.close-link,.choice-grid label,.priority-grid label,.next,.submit,.back:not(:disabled),.form-success .cta{cursor:pointer!important}
.progress{gap:22px!important;margin-bottom:32px!important}
.progress span{font-size:17px!important;font-weight:650!important;letter-spacing:-.015em!important;color:#2f2d29!important}
.progress span b{font-size:27px!important;line-height:1!important;font-weight:650!important;color:var(--ink)!important;vertical-align:-2px!important}
.step-kicker{font-size:13px!important;letter-spacing:.12em!important;margin-bottom:16px!important;color:#5b5751!important}
.next,.submit{cursor:pointer!important;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease!important}
.next:hover,.submit:hover{transform:translateY(-2px) scale(1.015)!important;box-shadow:0 8px 22px rgba(80,92,0,.14)!important}
.pulse-field{transition:color .25s ease}
.pulse-field.needs-input{animation:requiredPulse 1.8s ease-in-out infinite}
.pulse-field.needs-input input{animation:requiredLine 1.8s ease-in-out infinite}
@keyframes requiredPulse{0%,100%{color:var(--muted)}50%{color:#20201e}}
@keyframes requiredLine{0%,100%{border-bottom-color:#aaa39a;box-shadow:0 1px 0 rgba(147,170,0,0)}50%{border-bottom-color:var(--brand-accent);box-shadow:0 1px 0 rgba(147,170,0,.38)}}
.pulse-field:focus-within{animation:none!important;color:var(--ink)!important}
.pulse-field:focus-within input{animation:none!important;border-bottom-color:var(--ink)!important;box-shadow:none!important}
@media(max-width:620px){.progress span{font-size:15px!important}.progress span b{font-size:23px!important}.step-kicker{font-size:12px!important}}

/* v0.9 — TUSOCIA lockup */
.brand-mark{letter-spacing:-.045em!important;word-spacing:0!important}
.brand-mark span{display:inline!important;margin:0!important;padding:0!important}


.hp-field{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.submit-error{max-width:880px;margin:28px auto 0;color:#8e2b22;font-size:14px;line-height:1.4;border-top:1px solid #cfc8bf;padding-top:16px}
.submit[disabled]{opacity:.55;cursor:wait}
.privacy-layer{margin-top:28px;padding:18px 20px;border:1px solid #cfc8bf;border-radius:18px;background:#f4f0e9;max-width:760px}.privacy-layer p{margin:0;font-size:12px;line-height:1.55;color:var(--muted)}.privacy-layer a,.consent a{text-decoration:underline}.selector-legal-footer{display:flex;justify-content:flex-end;gap:18px;padding:16px clamp(20px,4vw,58px) 26px;font-size:11px;color:var(--muted)}.selector-legal-footer a{text-decoration:none}.selector-legal-footer a:hover{text-decoration:underline}@media(max-width:620px){.selector-legal-footer{justify-content:flex-start;flex-wrap:wrap}}
