/* Formulário de simulação (modal) · mesmos tokens da LP */
.m2fm-ov,.m2fm-inline{--bg:#050505;--surf:#0C0E12;--azul:#4374B4;--azul-c:#6E9BD6;--txt:#F3F2EE;--mut:#A9ACA6;--wa:#25D366;--wa-h:#4BE07E;--wa-txt:#04210F;--line:rgba(110,155,214,.32);--azul-t:#3D6AA8;--err:#F2A8A8;--f:"Poppins",system-ui,Arial,sans-serif;font-family:var(--f);color:var(--txt)}
.m2fm-ov{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(5,5,5,.74);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;transition:opacity .22s ease}
.m2fm-ov[hidden]{display:none}
.m2fm-ov.is-open{opacity:1}
.m2fm-modal{position:relative;width:100%;max-width:580px;max-height:calc(100dvh - 40px);overflow:auto;overscroll-behavior:contain;background:var(--surf);border-radius:14px;box-shadow:inset 0 0 0 1px rgba(243,242,238,.08),0 30px 80px rgba(0,0,0,.6);padding:38px 38px 32px;transform:translateY(18px) scale(.98);transition:transform .32s cubic-bezier(.16,1,.3,1)}
.m2fm-ov.is-open .m2fm-modal{transform:none}
.m2fm-modal:focus{outline:none}
.m2fm-x{position:absolute;top:12px;right:12px;width:44px;height:44px;border:0;background:transparent;color:var(--mut);font:400 28px/1 var(--f);cursor:pointer;border-radius:50%}
.m2fm-x:hover{color:var(--txt);background:rgba(255,255,255,.06)}
.m2fm-grip{display:none}
.m2fm-step{animation:m2fmIn .28s ease both}
@keyframes m2fmIn{from{opacity:0;transform:translateX(10px)}to{opacity:1;transform:none}}
.m2fm-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-6px 0 10px;padding-right:46px}
.m2fm-back{border:0;background:none;color:var(--mut);font:400 14px var(--f);cursor:pointer;padding:8px 0}
.m2fm-back:hover{color:var(--txt)}
.m2fm-bar{height:3px;background:rgba(243,242,238,.1);border-radius:3px;overflow:hidden;margin:0 50px 26px 0}
.m2fm-bar i{display:block;height:100%;background:var(--azul);border-radius:3px;transition:width .4s cubic-bezier(.16,1,.3,1)}
.m2fm-title{margin:0 0 8px;font:600 30px/1.1 var(--f);letter-spacing:-.025em;color:var(--txt)}
.m2fm-sub{margin:0 0 26px;font:400 16px/1.55 var(--f);color:var(--mut)}
.m2fm-q{margin:0 0 22px;border:0;padding:0;min-width:0}
.m2fm-q legend{padding:0;margin:0 0 12px;font:500 15px/1.3 var(--f);color:var(--txt)}
.m2fm-q legend b{color:var(--azul-c);font-weight:600;margin-right:8px}
.m2fm-chips{display:flex;flex-wrap:wrap;gap:9px}
.m2fm-chip{min-height:46px;padding:11px 18px;border:0;border-radius:999px;background:transparent;box-shadow:inset 0 0 0 1px rgba(243,242,238,.2);color:var(--txt);font:400 15px/1.2 var(--f);cursor:pointer;transition:box-shadow .18s,background-color .18s,transform .12s}
.m2fm-chip:hover{box-shadow:inset 0 0 0 1px var(--azul-c)}
.m2fm-chip:active{transform:scale(.97)}
.m2fm-chip[aria-pressed="true"]{background:rgba(67,116,180,.2);box-shadow:inset 0 0 0 1px var(--azul)}
.m2fm-chip[aria-pressed="true"]::before{content:"✓";color:var(--azul-c);margin-right:7px}
.m2fm-chip:focus-visible,.m2fm-in:focus-visible,.m2fm-go:focus-visible,.m2fm-back:focus-visible,.m2fm-x:focus-visible{outline:2px solid var(--azul-c);outline-offset:2px}
.m2fm-in{width:100%;min-height:52px;margin-top:9px;padding:14px 16px;background:var(--bg);border:1px solid rgba(243,242,238,.18);border-radius:10px;color:var(--txt);font:400 17px/1.3 var(--f);color-scheme:dark;transition:border-color .18s}
.m2fm-in::placeholder{color:#8B8F89}
.m2fm-in:focus{outline:none;border-color:var(--azul-c)}
.m2fm-field{display:block;margin:0 0 16px}
.m2fm-field span{display:block;font:500 14px/1 var(--f);color:var(--txt)}
.m2fm-field span em{font-style:normal;color:var(--mut);font-weight:400}
.m2fm-q.is-bad legend,.m2fm-field.is-bad span{color:var(--err)}
.m2fm-field.is-bad .m2fm-in{border-color:var(--err)}
.m2fm-err{min-height:20px;margin:0 0 12px;font:400 14px/1.4 var(--f);color:var(--err)}
.m2fm-go{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:58px;border:0;border-radius:999px;background:var(--wa);color:var(--wa-txt);font:600 17px/1 var(--f);cursor:pointer;transition:background-color .18s,transform .12s}
.m2fm-go:hover{background:var(--wa-h)}
.m2fm-go[data-act="next"]{background:var(--azul-t);color:#fff}
.m2fm-go[data-act="next"]:hover{background:var(--azul)}
.m2fm-go:active{transform:scale(.99)}
.m2fm-go svg{width:22px;height:22px}
.m2fm-note{margin:14px 0 0;text-align:center;font:400 13px/1.4 var(--f);color:var(--mut)}
.m2fm-done{text-align:center;padding:24px 0 8px}
.m2fm-spin{width:46px;height:46px;margin:0 auto 20px;border:3px solid rgba(37,211,102,.25);border-top-color:var(--wa);border-radius:50%;animation:m2fmSpin .9s linear infinite}
@keyframes m2fmSpin{to{transform:rotate(360deg)}}
.m2fm-done a{color:var(--azul-c)}
@media(max-width:767px){
 .m2fm-ov{align-items:flex-end;padding:0}
 .m2fm-modal{max-width:none;max-height:92dvh;border-radius:14px 14px 0 0;padding:14px 20px calc(22px + env(safe-area-inset-bottom));transform:translateY(100%)}
 .m2fm-grip{display:block;width:44px;height:4px;margin:0 auto 14px;border-radius:4px;background:rgba(243,242,238,.22)}
 .m2fm-x{top:6px;right:6px}
 .m2fm-title{font-size:26px}
 .m2fm-sub{font-size:15px;margin-bottom:20px}
 .m2fm-chip{min-height:44px;padding:10px 15px;font-size:14.5px}
 .m2fm-ov .m2fm-go[data-act="next"]{position:sticky;bottom:calc(8px + env(safe-area-inset-bottom));box-shadow:0 -12px 24px 6px var(--surf)}
}
@media(prefers-reduced-motion:reduce){.m2fm-ov,.m2fm-modal,.m2fm-bar i,.m2fm-chip{transition:none}.m2fm-step{animation:none}.m2fm-spin{animation:none}}

/* formulário dentro da página (episódio 8) */
.m2fm-inline{position:relative;background:rgba(12,14,18,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:14px;box-shadow:inset 0 0 0 1px rgba(243,242,238,.09),0 30px 80px rgba(0,0,0,.45);padding:36px}
.m2fm-inline .m2fm-bar{margin-right:0}
.m2fm-inline .m2fm-top{padding-right:0}
.m2fm-inline .m2fm-title{font-size:28px}
.m2fm-sem-js .m2fm-title{margin-bottom:8px}
.m2fm-sem-js .btn{margin-top:6px}
@media(max-width:767px){.m2fm-inline{padding:22px 20px 24px}.m2fm-inline .m2fm-title{font-size:24px}}
