/* MABIS contact form component (scoped to .mf-sec) */
.mf-sec{--mf-font:'SF Pro Display',-apple-system,BlinkMacSystemFont,'Inter','Segoe UI',Roboto,sans-serif;background:#000;color:#fff;font-family:'SF Pro Display',-apple-system,BlinkMacSystemFont,'Inter','Segoe UI',Roboto,sans-serif;padding-block:clamp(72px,10vw,128px);scroll-margin-top:56px}
.mf-sec *{box-sizing:border-box}
.mf-wrap{width:min(720px,100% - 40px);margin-inline:auto}
.mf-eyebrow{font:600 .8125rem/1.2 var(--mf-font);letter-spacing:.14em;text-transform:uppercase;color:#B8F030;margin:0 0 16px}
.mf-title{font:800 clamp(2rem,5vw,3.4rem)/1.06 var(--mf-font);letter-spacing:-.04em;margin:0;text-wrap:balance}
.mf-title em{font-style:normal;color:#B8F030}
.mf-desc{color:rgba(255,255,255,.68);font-size:clamp(1.02rem,1.6vw,1.2rem);line-height:1.5;margin:18px 0 36px;max-width:34em;text-wrap:pretty}
.mf{display:grid;gap:22px}
.mf-f{display:grid;gap:8px;min-width:0}
.mf-f>label,.mf-f>.mf-l{font:600 .9rem/1.3 var(--mf-font);color:rgba(255,255,255,.86)}
.mf-req{color:#B8F030;margin-left:3px}
.mf input[type=text],.mf input[type=email],.mf input[type=tel],.mf input[type=number],.mf select,.mf textarea{width:100%;font:400 1rem/1.4 var(--mf-font);color:#fff;background:#101010;border:1.5px solid rgba(255,255,255,.18);border-radius:14px;padding:14px 16px;min-height:50px;transition:border-color .2s,box-shadow .2s;appearance:none;-webkit-appearance:none}
.mf select{background-image:linear-gradient(45deg,transparent 50%,#B8F030 50%),linear-gradient(135deg,#B8F030 50%,transparent 50%);background-position:calc(100% - 22px) 22px,calc(100% - 16px) 22px;background-size:6px 6px;background-repeat:no-repeat;padding-right:42px}
.mf select option{background:#101010;color:#fff}
.mf textarea{min-height:130px;resize:vertical}
.mf input::placeholder,.mf textarea::placeholder{color:rgba(255,255,255,.35)}
.mf input:focus,.mf select:focus,.mf textarea:focus{outline:none;border-color:#B8F030;box-shadow:0 0 0 4px rgba(184,240,48,.18)}
.mf-f.bad input,.mf-f.bad select,.mf-f.bad textarea{border-color:#fff;box-shadow:0 0 0 3px rgba(255,255,255,.14)}
.mf-err{display:none;font-size:.86rem;color:#fff;border-left:3px solid #B8F030;padding:2px 0 2px 10px}
.mf-f.bad .mf-err,.mf-chk.bad .mf-err{display:block}
.mf-two{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media(max-width:620px){.mf-two{grid-template-columns:1fr}}
.mf-dyn{display:grid;gap:22px;padding:22px;border:1px solid rgba(184,240,48,.35);border-radius:20px;background:linear-gradient(180deg,rgba(184,240,48,.07),transparent)}
.mf-dyn[hidden],.mf-f[hidden],.mf-sub[hidden]{display:none}
.mf-opts{display:grid;gap:10px}
.mf-opt{position:relative}
.mf-opt input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.mf-opt span{display:flex;justify-content:space-between;align-items:center;gap:14px;min-height:52px;padding:14px 18px;border:1.5px solid rgba(255,255,255,.18);border-radius:14px;background:#101010;font-weight:500;transition:border-color .2s,background .2s,color .2s}
.mf-opt span b{font-weight:700;color:#B8F030;white-space:nowrap;font-size:.92rem}
.mf-opt input:checked+span{border-color:#B8F030;background:#B8F030;color:#000}
.mf-opt input:checked+span b{color:#000}
.mf-opt input:focus-visible+span{box-shadow:0 0 0 4px rgba(184,240,48,.3)}
.mf-opt:hover span{border-color:#B8F030}
.mf-grid{grid-template-columns:repeat(2,1fr)}@media(max-width:520px){.mf-grid{grid-template-columns:1fr}}
.mf-note{font-size:.86rem;line-height:1.5;color:rgba(255,255,255,.6);margin:0;text-wrap:pretty}
.mf-chk{display:grid;gap:8px}
.mf-chk label{display:grid;grid-template-columns:24px 1fr;gap:12px;align-items:start;font-size:.92rem;line-height:1.5;color:rgba(255,255,255,.78);cursor:pointer}
.mf-chk input{appearance:none;-webkit-appearance:none;width:24px;height:24px;border-radius:7px;border:1.5px solid rgba(255,255,255,.4);background:#101010;margin:0;cursor:pointer;display:grid;place-content:center;transition:background .2s,border-color .2s}
.mf-chk input::after{content:"";width:12px;height:7px;border-left:2.5px solid #000;border-bottom:2.5px solid #000;transform:rotate(-45deg) scale(0);margin-top:-3px;transition:transform .15s}
.mf-chk input:checked{background:#B8F030;border-color:#B8F030}.mf-chk input:checked::after{transform:rotate(-45deg) scale(1)}
.mf-chk input:focus-visible{box-shadow:0 0 0 4px rgba(184,240,48,.3)}
.mf-chk a{color:#B8F030;text-decoration:underline;text-underline-offset:3px}
.mf-chk.bad label{color:#fff}
.mf-hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.mf-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:15px 30px;border-radius:980px;border:1.5px solid #B8F030;background:#B8F030;color:#000;font:700 1.05rem/1 var(--mf-font);cursor:pointer;transition:background .2s,transform .2s;justify-self:start}
.mf-btn:hover{background:#fff;border-color:#fff;transform:translateY(-1px)}.mf-btn:disabled{opacity:.55;cursor:wait;transform:none}
@media(max-width:520px){.mf-btn{justify-self:stretch}}
.mf-status{min-height:1.5em;font-size:.95rem;color:rgba(255,255,255,.75)}
.mf-status.mf-stx{display:block;color:#fff;border-left:3px solid #B8F030;padding-left:10px}
.mf-status a{color:#B8F030;text-decoration:underline}

.mf[hidden]{display:none}
.mf-ok{display:none}
.mf-sec.done .mf-eyebrow,.mf-sec.done .mf-title,.mf-sec.done .mf-desc{display:none}
.mf-ok.on{display:grid;justify-items:center;align-content:center;text-align:center;gap:22px;position:relative;min-height:min(72vh,600px);isolation:isolate;padding:24px 0}
.ok-glow{position:absolute;left:50%;top:42%;width:min(640px,120vw);aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,rgba(184,240,48,.28),rgba(184,240,48,.06) 45%,transparent 70%);z-index:-1;animation:okg 4s ease-in-out infinite}
@keyframes okg{50%{scale:1.12;opacity:.75}}
.ok-p{position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none}
.ok-p s{position:absolute;left:var(--x);bottom:-10px;width:calc(var(--s)*1px);height:calc(var(--s)*1px);border-radius:50%;background:#B8F030;opacity:0;animation:okp var(--t) var(--d) ease-out infinite}
@keyframes okp{0%{opacity:0;transform:translateY(0)}15%{opacity:.9}100%{opacity:0;transform:translateY(-62vh) translateX(18px)}}
.ok-ck{width:clamp(96px,16vw,132px);height:auto;filter:drop-shadow(0 0 28px rgba(184,240,48,.55))}
.ok-ck .c{fill:rgba(184,240,48,.1);stroke:#B8F030;stroke-width:3;stroke-linecap:round;stroke-dasharray:340;stroke-dashoffset:340;transform-origin:center;transform:rotate(-90deg);animation:okd .9s .1s cubic-bezier(.22,.8,.2,1) forwards}
.ok-ck .t{fill:none;stroke:#B8F030;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:90;stroke-dashoffset:90;animation:okd .5s .8s ease-out forwards}
@keyframes okd{to{stroke-dashoffset:0}}
.mf-ok b{display:block;font:900 clamp(2.2rem,7vw,4.4rem)/1.02 var(--mf-font);letter-spacing:-.05em;text-wrap:balance;max-width:11em;opacity:0;animation:oku .8s .9s cubic-bezier(.22,.8,.2,1) forwards}
.mf-ok b em{font-style:normal;color:#B8F030}
.mf-ok p{margin:0;max-width:26em;font:400 clamp(1.05rem,2.2vw,1.35rem)/1.45 var(--mf-font);color:rgba(255,255,255,.78);text-wrap:balance;opacity:0;animation:oku .8s 1.15s cubic-bezier(.22,.8,.2,1) forwards}
.ok-brand{margin-top:14px;font:900 1.4rem/1 var(--mf-font);letter-spacing:-.05em;opacity:0;animation:oku .8s 1.45s ease forwards}.ok-brand i{display:inline-block;width:.38em;height:.38em;border-radius:50%;background:#B8F030;margin-left:.12em}
@keyframes oku{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.ok-ck .c,.ok-ck .t{animation:none;stroke-dashoffset:0}.mf-ok b,.mf-ok p,.ok-brand{animation:none;opacity:1}.ok-glow,.ok-p s{animation:none}}
