
:root{--t:#0E0E0D;--s:#4A4945;--s3:#6B6A65;--l:#DCDAD4;--f:#F3F2EE;--n:#0E0E0D;--on:#F4F3EF;--on2:#A7A6A0;--r:#C8102E;--rn:#FF5A6E;--serif:"Brygada 1918","Iowan Old Style",Georgia,serif;--sans:"Saira",system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}
html,body{margin:0;background:#fff;color:var(--t);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:var(--r)}
.mo-g{display:grid;grid-template-columns:minmax(320px,420px) 1fr;min-height:100vh}
aside.mo{background:var(--n);color:var(--on);padding:44px 48px;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;justify-content:space-between;gap:40px;overflow:auto}
aside.mo .logo img{height:15px;width:auto;display:block}
aside.mo .ch{display:grid;gap:18px;margin-top:64px}
aside.mo .k{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--on2)}
aside.mo h1{margin:0;font-family:var(--serif);font-weight:400;font-size:42px;line-height:1.08;letter-spacing:-.01em}
aside.mo h1 em{font-style:italic}
aside.mo p{margin:0;font-size:15px;line-height:1.6;color:#C9C8C2}
.prog{list-style:none;margin:0;padding:0;display:grid;gap:13px;font-size:14px;counter-reset:et}
.prog div{display:flex;gap:16px;align-items:center;color:#8D8C87;counter-increment:et}
.prog div::before{content:counter(et,decimal-leading-zero);width:22px}
.prog i{display:none}
.prog .on{color:#C9C8C2}
.prog .cur{color:#fff;font-weight:600}
.prog .cur::before{color:var(--rn)}
.prog .cur::after{content:"";flex:1;border-bottom:1px solid #4A4A47}
.etq{display:none}
main.wrap{padding:56px clamp(24px,7vw,96px) 48px;max-width:860px;width:100%}
.etapa{display:none} .etapa.ativa{display:block;animation:ent .45s cubic-bezier(.2,.7,.2,1)}
@keyframes ent{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
.kick{font-size:13px;color:var(--r);font-weight:600;letter-spacing:.04em;margin:0 0 8px}
h2{font-family:var(--serif);font-weight:500;font-size:36px;line-height:1.15;margin:0 0 10px}
.lead{color:var(--s);font-size:17px;margin:0 0 34px;max-width:60ch}
.box{border-top:1px solid var(--t);padding:18px 0 22px;margin:0}
.box:last-of-type{border-bottom:1px solid var(--l)}
.box h3{margin:0 0 6px;font-family:var(--serif);font-weight:500;font-size:21px}
.box p{margin:0;color:var(--s);font-size:15.5px}
.campo{margin:0 0 30px}
.campo>label,.campo>.rot{display:block;font-weight:600;font-size:14px;margin:0 0 4px}
.campo .aj{display:block;color:var(--s);font-size:14px;margin:0 0 10px;line-height:1.5}
.req{color:var(--r)}
input[type=text],input[type=email],input[type=tel],input[type=url]{width:100%;font-family:var(--serif);font-size:21px;border:none;border-bottom:1px solid var(--t);border-radius:0;padding:6px 0 10px;background:transparent;color:var(--t)}
select{width:100%;font:inherit;font-size:16px;border:1px solid var(--l);border-radius:0;padding:12px 14px;background:#fff;color:var(--t)}
textarea{width:100%;font-family:var(--serif);font-size:17px;line-height:1.55;border:1px solid var(--l);border-radius:0;padding:14px 16px;background:#fff;color:var(--t);min-height:132px;resize:vertical}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--t)}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,.ops label:focus-within{outline:2px solid var(--r);outline-offset:2px}
.cont{display:block;text-align:right;font-size:12px;color:var(--s3);margin-top:4px}
.ops{display:flex;flex-wrap:wrap;gap:8px}
.ops label{display:flex;gap:10px;align-items:flex-start;border:1px solid var(--l);padding:10px 16px;cursor:pointer;font-weight:400;font-size:15px;transition:background .2s,border-color .2s,color .2s}
.ops label:hover{border-color:var(--t)}
.ops input{position:absolute;opacity:0;pointer-events:none}
.ops label.sel{border-color:var(--t);background:var(--t);color:#fff}
.ops label.sel a{color:#fff}
#w_decl .ops{display:grid}
#w_decl .ops label{padding:12px 16px 12px 44px;position:relative;line-height:1.5}
#w_decl .ops label::before{content:"";position:absolute;left:14px;top:14px;width:16px;height:16px;border:1px solid currentColor}
#w_decl .ops label.sel::before{background:#fff;box-shadow:inset 0 0 0 3px var(--t)}
.dois{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.erro{color:var(--r);font-size:14px;margin-top:6px;display:none}
.campo.inv .erro{display:block}
.campo.inv input,.campo.inv textarea,.campo.inv select{border-color:var(--r)}
.campo.inv .ops label{border-color:#E9B3BB}
.nav{display:flex;justify-content:space-between;align-items:center;margin-top:40px;gap:16px;border-top:1px solid var(--l);padding-top:24px}
.nav .dir{display:flex;align-items:center;gap:20px}
button{font:inherit;font-size:15px;font-weight:500;border-radius:0;padding:14px 28px;cursor:pointer;border:1px solid var(--l);background:#fff;color:var(--t);transition:background .2s}
button.pri{background:var(--t);color:#fff;border-color:var(--t)}
button.pri:hover{background:#000}
#voltar{border:none;padding:14px 0;color:var(--s)}
button:disabled{opacity:.45;cursor:default}
.drop{display:block;border:1px dashed var(--s3);padding:40px;text-align:center;cursor:pointer;background:var(--f);transition:background .2s}
.drop:hover{background:#ECEBE6}
.drop.tem{border-style:solid;border-color:var(--t);background:#fff}
.drop b{display:block;margin-bottom:4px;font-family:var(--serif);font-weight:500;font-size:20px}
.drop small{color:var(--s)}
.barra{height:3px;background:var(--l);overflow:hidden;margin-top:18px;display:none}
.barra i{display:block;height:100%;width:0;background:var(--r);transition:width .2s}
.rev h3{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--serif);font-weight:500;font-size:20px;margin:30px 0 8px;border-bottom:1px solid var(--t);padding-bottom:8px}
.rev h3 a{font-family:var(--sans);font-size:13px;color:var(--r);cursor:pointer;font-weight:500}
.rev dl{display:grid;grid-template-columns:38% 1fr;gap:0;margin:0;font-size:14.5px}
.rev dt,.rev dd{padding:9px 0;border-bottom:1px solid #ECEBE6}
.rev dt{color:var(--s);padding-right:14px} .rev dd{margin:0;white-space:pre-wrap;word-break:break-word}
.fim{padding:40px 0}
.fim .sel{width:56px;height:56px;background:var(--t);color:#fff;display:flex;align-items:center;justify-content:center;margin:0 0 26px}
.fim .sel svg{width:26px;height:26px}
.fim h2{font-size:40px}
.isca{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.salvo{font-size:12px;color:var(--s)}
footer.mo{color:var(--s3);font-size:13px;padding:28px 0 0;margin-top:56px;border-top:1px solid var(--l)}
footer.mo a{color:var(--s3)}
@media (max-width:900px){
 .mo-g{display:block}
 aside.mo{position:static;height:auto;padding:20px 20px 22px;gap:22px;overflow:visible}
 aside.mo .logo img{height:12px}
 aside.mo .ch{margin-top:22px;gap:10px}
 aside.mo .k{font-size:11px}
 aside.mo h1{font-size:28px}
 aside.mo p{display:none}
 .prog{grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}
 .prog div{display:block;height:2px;background:#4A4A47}
 .prog div::before,.prog div::after,.prog span{display:none}
 .prog .on{background:var(--on)}
 .prog .cur{background:var(--rn)}
 .etq{display:flex;justify-content:space-between;font-size:13px;margin-top:10px;color:var(--on)}
 .etq b{color:var(--rn);font-weight:600}
 .etq span:last-child{color:var(--on2)}
 main.wrap{padding:28px 20px 120px}
 h2{font-size:28px}
 .lead{font-size:16px;margin-bottom:26px}
 .dois{grid-template-columns:1fr;gap:0}
 .ops label{flex:1 1 calc(50% - 4px)}
 #w_decl .ops label{flex:none}
 .rev dl{grid-template-columns:1fr}.rev dt{border-bottom:none;padding-bottom:0}
 .nav{position:fixed;left:0;right:0;bottom:0;background:#fff;margin:0;padding:12px 20px calc(14px + env(safe-area-inset-bottom));z-index:5;border-top:1px solid var(--l)}
 .nav .salvo{display:none}
 .nav .dir{flex:1}
 #seguir{flex:1;height:50px}
 #voltar{border:1px solid var(--l);padding:0 18px;height:50px;color:var(--t)}
}
@media (prefers-reduced-motion:reduce){.etapa.ativa{animation:none}}
