html{scroll-padding-top:24px}body{flex-direction:column;min-height:100dvh;display:flex;padding-bottom:0!important}body>main.contact-shell{flex:1 0 auto}body>footer{flex-shrink:0}.contact-shell{padding:clamp(40px,6vh,72px) 0 clamp(28px,4vh,48px);position:relative;overflow:hidden}.contact-shell:before,.contact-shell:after{content:"";pointer-events:none;filter:blur(120px);opacity:.32;z-index:0;border-radius:50%;position:absolute}.contact-shell:before{background:radial-gradient(circle,#8fd6ec8c,#0000 70%);width:520px;height:520px;top:-180px;left:-160px}.contact-shell:after{background:radial-gradient(circle,#8fd6ec47,#0000 70%);width:620px;height:620px;bottom:-220px;right:-180px}.contact-shell>.container{z-index:1;position:relative}.contact-logo{border-radius:var(--radius-s);width:max-content;transition:opacity .35s var(--ease-out), transform .35s var(--ease-out);cursor:pointer;justify-content:center;align-items:center;margin:0 auto clamp(28px,4vh,44px);padding:6px 8px;display:flex}.contact-logo:hover,.contact-logo:focus-visible{opacity:.85;outline:none;transform:translateY(-2px)}.contact-logo img{object-fit:contain;width:auto;max-width:100%;height:clamp(56px,8vw,80px);display:block}.contact-header{text-align:center;max-width:720px;margin:0 auto clamp(28px,4vh,40px)}.contact-header .eyebrow{margin-bottom:18px}.contact-header h1{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin-bottom:14px;font-size:clamp(34px,5.5vw,56px);font-weight:500;line-height:1.05}.contact-header h1 em{color:var(--accent);font-style:italic}.contact-lede{color:var(--ink-soft);max-width:540px;margin:0 auto;font-size:clamp(14px,1.3vw,16px);line-height:1.6}.contact-lede strong{color:var(--ink);font-weight:600}@media (width<=560px){.contact-logo img{height:48px}}.stepper{max-width:720px;margin:0 auto clamp(20px,3vh,32px)}.stepper__bar{background:#ffffff0f;border-radius:999px;height:3px;margin-bottom:18px;position:relative;overflow:hidden}.stepper__fill{background:linear-gradient(90deg, var(--accent), #8fd6ec80);width:25%;transition:width .55s var(--ease-out);border-radius:999px;position:absolute;inset:0;box-shadow:0 0 12px #8fd6ec80}.stepper__list{grid-template-columns:repeat(4,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.stepper__item{text-align:center;opacity:.35;transition:opacity .35s var(--ease-out), color .35s var(--ease-out);flex-direction:column;align-items:center;gap:4px;display:flex}.stepper__item.is-active,.stepper__item.is-done{opacity:1}.stepper__num{font-family:var(--font-body);letter-spacing:.14em;color:var(--ink-mute);transition:color .35s var(--ease-out);font-size:11px;font-weight:600}.stepper__item.is-active .stepper__num,.stepper__item.is-done .stepper__num{color:var(--accent)}.stepper__label{font-family:var(--font-body);color:var(--ink-soft);letter-spacing:-.005em;font-size:13px;font-weight:500}.stepper__item.is-active .stepper__label{color:var(--ink)}@media (width<=560px){.stepper__label{font-size:11px}.stepper__num{font-size:10px}}@media (width<=380px){.stepper__label{display:none}}.contact-form{flex-direction:column;gap:12px;max-width:920px;margin:0 auto;display:flex}.wizard{flex-direction:column;gap:18px;display:flex}.wizard__viewport{border-radius:var(--radius-l);width:100%}.wizard__track{width:100%}.wizard__step{opacity:0;width:100%;min-width:0;transition:opacity .35s var(--ease-out), transform .45s var(--ease-out);pointer-events:none;padding:0 2px;display:none;transform:scale(.985)}.wizard__step.is-current{opacity:1;pointer-events:auto;animation:wizardStepIn .35s var(--ease-out) both;display:block;transform:none}@keyframes wizardStepIn{0%{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}.wizard__nav{flex-wrap:wrap;justify-content:center;align-items:stretch;gap:10px;padding:0;display:flex}.wizard__prev{padding:14px 22px!important;font-size:14px!important}.wizard__prev svg{transition:transform .3s var(--ease-out)}.wizard__prev:hover svg{transform:translate(-3px)}.wizard__prev:disabled,.wizard__prev[disabled]{opacity:.35;pointer-events:none;cursor:not-allowed}.wizard__next,.wizard__submit{padding:14px 28px!important;font-size:14px!important}.wizard__prev[hidden],.wizard__next[hidden],.wizard__submit[hidden]{display:none!important}.wizard__next svg,.wizard__submit svg{transition:transform .3s var(--ease-out)}.wizard__next:hover svg,.wizard__submit:hover svg{transform:translate(3px)}.wizard__submit:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=560px){.wizard__nav{flex-direction:column-reverse;gap:8px}.wizard__prev,.wizard__next,.wizard__submit{justify-content:center;width:100%;padding:14px 20px!important}}.recap{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:28px;display:grid}.recap__item{border:1px solid var(--stroke);border-radius:var(--radius-s);background:#ffffff08;min-width:0;padding:14px 16px}.recap__item--full{grid-column:1/-1}.recap__label{font-family:var(--font-body);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-mute);margin-bottom:6px;font-size:11px;font-weight:500;display:block}.recap__value{color:var(--ink);white-space:pre-wrap;word-break:break-word;font-size:14px;line-height:1.55;display:block}.recap__value--empty{color:var(--ink-mute);font-style:italic}@media (width<=720px){.recap{grid-template-columns:1fr;gap:10px}.recap__item{padding:12px 14px}}.form-section{background:var(--glass);border:1px solid var(--stroke);border-radius:var(--radius-l);-webkit-backdrop-filter:blur(var(--blur));padding:clamp(28px,4vw,44px)}.form-section__head{border-bottom:1px solid var(--stroke);align-items:flex-start;gap:18px;margin-bottom:28px;padding-bottom:22px;display:flex}.form-section__num{background:var(--accent-soft);border:1px solid var(--stroke-accent);width:44px;height:44px;font-family:var(--font-body);color:var(--accent);letter-spacing:.04em;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:inline-flex}.form-section__head h2{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);margin-bottom:6px;font-size:clamp(20px,2.4vw,26px);font-weight:500;line-height:1.2}.form-section__head p{color:var(--ink-mute);font-size:14px;line-height:1.55}.form-grid{grid-template-columns:repeat(2,1fr);gap:20px 22px;display:grid}.field{flex-direction:column;gap:8px;min-width:0;display:flex}.field--full{grid-column:1/-1}.field label{font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-size:12px;font-weight:500}.field .req{color:var(--accent);margin-left:2px}.field input,.field select,.field textarea{border:1px solid var(--stroke);border-radius:var(--radius-s);width:100%;color:var(--ink);font-family:var(--font-body);transition:border-color .3s var(--ease-out), background .3s var(--ease-out), box-shadow .3s var(--ease-out);appearance:none;background:#ffffff08;padding:14px 16px;font-size:15px;line-height:1.5}.field textarea{resize:vertical;min-height:96px}.field input::placeholder,.field textarea::placeholder{color:var(--ink-mute)}.field input:hover,.field select:hover,.field textarea:hover{background:#ffffff0d;border-color:#ffffff29}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--stroke-accent);background:#8fd6ec0a;outline:none;box-shadow:0 0 0 3px #8fd6ec1f}.field input:invalid:not(:placeholder-shown),.field textarea:invalid:not(:placeholder-shown){border-color:#ff787866}.field select{cursor:pointer;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none'><path d='M1 1.5L6 6.5L11 1.5' stroke='rgba(255,255,255,0.5)' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'/></svg>");background-position:right 16px center;background-repeat:no-repeat;padding-right:42px}.field select option{background:var(--surface);color:var(--ink)}.form-section--submit{border:1px solid var(--stroke-accent);background:linear-gradient(135deg,#8fd6ec0f,#8fd6ec03)}.consent{border:1px solid var(--stroke);border-radius:var(--radius-m);cursor:pointer;transition:border-color .3s var(--ease-out), background .3s var(--ease-out);background:#ffffff08;align-items:flex-start;gap:12px;margin-bottom:28px;padding:18px;display:flex}.consent:hover{background:#ffffff0d;border-color:#ffffff24}.consent input[type=checkbox]{width:20px;height:20px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;margin-top:2px}.consent span{color:var(--ink-soft);font-size:14px;line-height:1.6}.consent a{color:var(--accent);border-bottom:1px solid #8fd6ec59;transition:border-color .3s}.consent a:hover{border-color:var(--accent)}.form-actions{flex-direction:column;align-items:center;gap:16px;display:flex}.form-submit{padding:16px 36px!important;font-size:15px!important}.form-submit:disabled{opacity:.55;cursor:not-allowed;transform:none!important}.form-meta{color:var(--ink-mute);text-align:center;font-size:13px}.form-meta a{color:var(--ink-soft);border-bottom:1px solid #ffffff2e;transition:color .3s,border-color .3s}.form-meta a:hover{color:var(--accent);border-color:var(--stroke-accent)}.form-status{text-align:center;color:var(--ink-soft);min-height:1.4em;margin-top:18px;font-size:14px}.form-status.is-error{color:#ff9c9c}body.is-success-shown{overflow:hidden}.form-success{z-index:9999;-webkit-backdrop-filter:blur(28px)saturate(140%);animation:successFadeIn .55s var(--ease-out) both;background:#080a108c;justify-content:center;align-items:center;padding:clamp(20px,4vw,48px);display:flex;position:fixed;inset:0}.form-success[hidden]{display:none}@keyframes successFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur()}to{opacity:1;-webkit-backdrop-filter:blur(28px)saturate(140%)}}.form-success__card{text-align:center;border-radius:var(--radius-l);width:100%;max-width:520px;animation:successCardIn .7s var(--ease-out) both;background:linear-gradient(160deg,#1c202ceb,#0e121af0);border:1px solid #8fd6ec38;padding:clamp(36px,5vw,56px) clamp(28px,4vw,48px);position:relative;overflow:hidden;box-shadow:0 30px 80px #0000008c,0 0 0 1px #ffffff0a,inset 0 1px #ffffff0f}.form-success__card:before{content:"";filter:blur(40px);pointer-events:none;z-index:0;background:radial-gradient(circle,#8fd6ec47,#0000 65%);width:320px;height:320px;position:absolute;top:-120px;left:50%;transform:translate(-50%)}.form-success__card>*{z-index:1;position:relative}@keyframes successCardIn{0%{opacity:0;transform:translateY(24px)scale(.94)}60%{opacity:1}to{opacity:1;transform:none}}.form-success__icon{width:76px;height:76px;color:var(--accent);animation:iconPop .9s var(--ease-out) .2s both;background:radial-gradient(circle at 30% 30%,#8fd6ec52,#8fd6ec14);border:1px solid #8fd6ec66;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 26px;display:inline-flex;box-shadow:0 0 0 6px #8fd6ec0f,0 12px 32px #8fd6ec2e}@keyframes iconPop{0%{opacity:0;transform:scale(.4)rotate(-12deg)}60%{opacity:1;transform:scale(1.08)rotate(2deg)}to{opacity:1;transform:scale(1)rotate(0)}}.form-success__icon svg{stroke-dasharray:30;stroke-dashoffset:30px;width:34px;height:34px;animation:checkDraw .6s var(--ease-out) .55s forwards}@keyframes checkDraw{to{stroke-dashoffset:0}}.form-success h2{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);margin-bottom:16px;font-size:clamp(28px,4vw,40px);font-weight:500;line-height:1.1}.form-success p{color:var(--ink-soft);max-width:380px;margin-bottom:32px;margin-left:auto;margin-right:auto;font-size:15px;line-height:1.65}.form-success p strong{color:var(--ink);font-weight:600}.form-success .btn{min-width:200px}@media (width<=480px){.form-success__card{padding:36px 24px}.form-success__icon{width:64px;height:64px;margin-bottom:20px}.form-success__icon svg{width:28px;height:28px}}@media (width<=720px){.form-grid{grid-template-columns:1fr}.form-section__head{flex-direction:column;gap:14px}}@media (width<=640px){.contact-shell{padding:clamp(40px,6vh,64px) 0 80px}.form-section{padding:22px 18px}.form-section__head{gap:12px;margin-bottom:22px;padding-bottom:18px}.form-section__num{width:38px;height:38px;font-size:12px}.field input,.field select,.field textarea{padding:13px 14px;font-size:16px}.consent{gap:10px;padding:14px}.consent span{font-size:13px}}
