.contact-hero-form,.home-contact-form{min-width:0}.contact-hero-form .stepper-shell,.home-contact-form .stepper-shell{box-shadow:var(--shadow-strong)}.contact-hero-form .stepper-track,.home-contact-form .stepper-track{padding:22px 24px 8px}.contact-hero-form .stepper-step,.home-contact-form .stepper-step{padding:18px 24px 0}.contact-hero-form .stepper-footer,.home-contact-form .stepper-footer{padding:22px 24px 24px}.contact-hero-form .step-copy h3,.home-contact-form .step-copy h3{font-size:clamp(1.28rem,1.8vw,1.72rem)}.contact-hero-form .step-option-grid,.home-contact-form .step-option-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-consent{color:var(--text-muted);margin:2px 0 0;font-size:.82rem;line-height:1.45}.contact-consent a{color:var(--text);text-underline-offset:2px;text-decoration:underline}.contact-consent a:hover,.contact-consent a:focus-visible{color:var(--accent-local,var(--accent-magenta))}@media (max-width:620px){.contact-hero-form .step-option-grid,.home-contact-form .step-option-grid{grid-template-columns:1fr}}
.stepper{width:100%}.stepper-shell{border-radius:var(--radius-card);width:100%;overflow:hidden}.stepper-track{align-items:center;gap:0;padding:26px 28px 10px;display:flex}.stepper-track-item{flex:1;align-items:center;min-width:0;display:flex}.stepper-track-item:last-child{flex:none}.stepper-indicator{cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;padding:0;display:inline-grid}.stepper-indicator:disabled{cursor:default;opacity:.7}.stepper-indicator span{width:36px;height:36px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;border-radius:50%;place-items:center;font-size:.82rem;font-weight:700;display:grid}.stepper-indicator[data-status=inactive] span{color:#aeb4c3;background:#78809538}.stepper-indicator[data-status=active] span{color:#fff;background:#c20078}.stepper-indicator[data-status=complete] span{color:#fff;background:#7f00eb}.stepper-check{width:18px;height:18px}.stepper-connector{background:color-mix(in srgb, var(--text-subtle) 28%, transparent);border-radius:999px;flex:1;height:2px;margin:0 10px;display:block;position:relative;overflow:hidden}.stepper-connector-fill{background:var(--gradient-brand);display:block;position:absolute;inset:0 auto 0 0}.stepper-content{margin-top:8px}.stepper-step{padding:20px 28px 0}.step-copy{gap:8px;margin-bottom:20px;display:grid}.step-copy h3{color:var(--text);margin:0;font-size:clamp(1.45rem,2.5vw,2.1rem);line-height:1.08}.step-copy p{max-width:760px;color:var(--text-muted);margin:0}.step-option-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.step-option{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 78%, transparent);min-height:56px;color:var(--text-muted);cursor:pointer;border-radius:16px;align-items:center;gap:10px;padding:12px 14px;transition:border-color .18s,color .18s,transform .18s,background .18s;display:flex;position:relative}.step-option:has(input:checked){border-color:color-mix(in srgb, var(--accent-magenta) 58%, var(--border-strong));background:color-mix(in srgb, var(--accent-magenta) 12%, var(--surface));color:var(--text)}.step-option:hover,.step-option:focus-within{transform:translateY(-1px)}.step-option input{accent-color:var(--accent-magenta)}.step-field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.step-field{gap:7px;display:grid}.step-field span{color:var(--text);font-size:.9rem;font-weight:800}.step-field input,.step-field textarea{border:1px solid var(--border);background:color-mix(in srgb, var(--bg) 72%, transparent);width:100%;color:var(--text);border-radius:14px;outline:0;padding:12px 13px;transition:border-color .18s,background .18s}.step-field input:focus,.step-field textarea:focus{border-color:color-mix(in srgb, var(--accent-magenta) 54%, var(--border-strong));background:color-mix(in srgb, var(--surface) 92%, transparent)}.step-field input[aria-invalid=true]{border-color:color-mix(in srgb, var(--accent-red) 66%, var(--border-strong))}.step-field textarea{resize:vertical}.contact-check{grid-template-columns:minmax(0,1fr);gap:10px;margin-top:14px;display:grid}.contact-challenge{flex-wrap:wrap;align-items:center;gap:10px;max-width:440px;display:flex}.contact-challenge>span{flex:none}.contact-challenge input{flex:none;width:96px}.contact-challenge .step-field-error{flex-basis:100%}.contact-challenge-prompt{border:1px solid color-mix(in srgb, var(--accent-magenta) 24%, var(--border));background:color-mix(in srgb, var(--accent-magenta) 8%, transparent);width:fit-content;color:var(--text);font-family:var(--font-mono);border-radius:999px;padding:6px 10px;font-size:.92rem;line-height:1}.step-field small{color:var(--text-subtle);font-size:.78rem;line-height:1.35}.step-field-error{font-weight:800;color:color-mix(in srgb, var(--accent-red) 82%, var(--text))!important}.contact-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.step-summary{border:1px solid var(--border);background:color-mix(in srgb, var(--bg-elevated) 70%, transparent);border-radius:18px;gap:8px;margin-top:16px;padding:16px;display:grid}.step-summary strong{color:var(--text)}.step-summary p{color:var(--text-muted);margin:0}.stepper-footer{justify-content:space-between;align-items:center;gap:12px;padding:24px 28px 28px;display:flex}.stepper-button{border:1px solid var(--border);cursor:pointer;border-radius:999px;min-height:40px;padding:0 16px;font-weight:800;transition:border-color .18s,transform .18s,background .18s}.stepper-button:hover,.stepper-button:focus-visible{transform:translateY(-1px)}.stepper-button:disabled{cursor:wait;opacity:.62}.stepper-button:disabled:hover,.stepper-button:disabled:focus-visible{transform:none}.stepper-button-ghost{color:var(--text-muted);background:0 0}.stepper-button-primary{background:var(--text);color:var(--bg);border-color:#0000}@media (max-width:639px){.step-field-grid,.step-option-grid{grid-template-columns:1fr}.stepper-track{padding:20px 18px 8px}.stepper-step{padding:14px 18px 0}.stepper-footer{padding:20px 18px 22px}}
.send-status{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 82%, transparent);border-radius:18px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;margin-top:14px;padding:16px;display:grid}.send-status-error{border-color:color-mix(in srgb, var(--accent-red) 42%, var(--border-strong));background:color-mix(in srgb, var(--accent-red) 8%, var(--surface))}.send-status-error .send-animation{border-color:color-mix(in srgb, var(--accent-red) 42%, var(--border-strong));background:color-mix(in srgb, var(--accent-red) 12%, var(--bg-elevated));color:var(--accent-red)}.send-status-error .send-status-copy strong{color:var(--accent-red)}.send-animation{border:1px solid color-mix(in srgb, var(--accent-magenta) 18%, var(--border));background:color-mix(in srgb, var(--accent-magenta) 6%, var(--bg-elevated));width:76px;height:76px;color:var(--text);border-radius:50%;place-items:center;display:grid;position:relative;overflow:hidden}.send-animation:before,.send-animation:after{border:1px solid color-mix(in srgb, var(--accent-magenta) 24%, transparent);border-radius:inherit;content:"";position:absolute;inset:9px}.send-animation:after{opacity:.24;inset:18px}.send-plane-icon,.send-check-icon{width:30px;height:30px;position:absolute}.send-plane-icon{transform:translate(0,0)}.send-check-icon{color:var(--text);opacity:0}.send-check-icon path{stroke-dasharray:34;stroke-dashoffset:34px}.send-status-sending .send-animation:before{animation:1.1s ease-in-out infinite send-ring-pulse}.send-status-sending .send-plane-icon{animation:1.1s cubic-bezier(.7,0,.2,1) infinite send-plane-flight}.send-status-sent .send-animation{border-color:color-mix(in srgb, var(--accent-magenta) 34%, var(--border-strong));background:color-mix(in srgb, var(--accent-magenta) 16%, var(--surface));animation:.52s both send-success-pop}.send-status-sent .send-plane-icon{opacity:0;transform:translate(26px,-24px)scale(.72)}.send-status-sent .send-check-icon{opacity:1}.send-status-sent .send-check-icon path{animation:.62s .14s forwards send-check-draw}.send-status-copy{gap:4px;display:grid}.send-status-copy strong{color:var(--text);font-size:1.04rem}.send-status-copy p{color:var(--text-muted);margin:0}@keyframes send-plane-flight{0%{opacity:0;transform:translate(-18px,16px)scale(.86)rotate(-6deg)}18%{opacity:1}72%{opacity:1;transform:translate(5px,-6px)scale(1)rotate(0)}to{opacity:0;transform:translate(28px,-28px)scale(.76)rotate(8deg)}}@keyframes send-ring-pulse{0%,to{opacity:.4;transform:scale(.9)}50%{opacity:1;transform:scale(1.08)}}@keyframes send-success-pop{0%{transform:scale(.92)}58%{transform:scale(1.06)}to{transform:scale(1)}}@keyframes send-check-draw{to{stroke-dashoffset:0}}@media (max-width:639px){.send-status{grid-template-columns:1fr}}
.contact-form-shell{display:grid;position:relative}.contact-form-stage{display:grid}.contact-success-card{border-radius:var(--radius-card);text-align:center;justify-items:center;gap:18px;padding:56px 36px 44px;display:grid;position:relative;overflow:hidden}.contact-success-card:before{background:radial-gradient(circle at 50% 36%, color-mix(in srgb, var(--accent-magenta) 24%, transparent), transparent 58%);content:"";pointer-events:none;z-index:0;position:absolute;inset:-40%}.contact-success-card>*{z-index:1;position:relative}.contact-success-burst{pointer-events:none;z-index:0;place-items:center;display:grid;position:absolute;inset:0}.contact-success-sparkle{--angle:0deg;--distance:96px;--delay:0s;background:var(--gradient-brand);width:8px;height:8px;box-shadow:0 0 18px color-mix(in srgb, var(--accent-magenta) 65%, transparent);animation:contact-sparkle-burst 1.45s var(--delay) cubic-bezier(.16, 1, .3, 1) both;border-radius:999px;position:absolute;top:50%;left:50%}.contact-success-icon{background:color-mix(in srgb, var(--accent-magenta) 14%, var(--bg-elevated));width:116px;height:116px;box-shadow:0 22px 56px color-mix(in srgb, var(--accent-magenta) 32%, transparent);border-radius:50%;place-items:center;animation:.64s cubic-bezier(.22,1,.36,1) both contact-success-pop;display:grid;position:relative}.contact-success-icon svg{width:80px;height:80px}.contact-success-ring{fill:none;stroke:color-mix(in srgb, var(--accent-magenta) 70%, transparent);stroke-dasharray:264;stroke-dashoffset:264px;animation:.62s ease-out 80ms forwards contact-success-ring-draw}.contact-success-check{fill:none;stroke:var(--text)}.contact-success-copy{gap:8px;max-width:520px;display:grid}.contact-success-copy h3{color:var(--text);margin:0;font-size:clamp(1.4rem,2.4vw,1.7rem);font-weight:800;line-height:1.18}.contact-success-copy p{color:var(--text-muted);margin:0;line-height:1.6}.contact-success-hint{color:var(--text-subtle);font-size:.92rem}.contact-success-card .stepper-button-primary{min-height:44px;margin-top:6px;padding:0 22px}@keyframes contact-sparkle-burst{0%{opacity:0;transform:translate(-50%, -50%) rotate(var(--angle)) translateX(0) scale(.55)}18%{opacity:1}to{opacity:0;transform:translate(-50%, -50%) rotate(var(--angle)) translateX(var(--distance)) scale(.5)}}@keyframes contact-success-ring-draw{0%{stroke-dashoffset:264px;opacity:0}30%{opacity:1}to{stroke-dashoffset:0;opacity:1}}@keyframes contact-success-pop{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.08)}to{opacity:1;transform:scale(1)}}
