@font-face{font-family:"Montserrat";font-weight:800;font-display:swap;src:url(fonts/montserrat-800.woff2) format("woff2")}
@font-face{font-family:"Montserrat";font-weight:900;font-display:swap;src:url(fonts/montserrat-900.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-weight:400;font-display:swap;src:url(fonts/poppins-400.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-weight:500;font-display:swap;src:url(fonts/poppins-500.woff2) format("woff2")}
@font-face{font-family:"Poppins";font-weight:600;font-display:swap;src:url(fonts/poppins-600.woff2) format("woff2")}
:root{
  --verde:#0B3A2D;--verde-2:#0F4635;--verde-3:#072A20;
  --creme:#F7F2E8;--creme-2:#EFE7D7;
  --ouro:#D6AA55;--ouro-borda:#C99B45;--ouro-texto:#7D5E1C;
  --carvao:#14201B;--erro:#8A2A1E;
  --cta:#28c76f;--cta-2:#1eaa53;--cta-texto:#06240F;
  --display:"Montserrat","Helvetica Neue",Helvetica,sans-serif;
  --sans:"Poppins","Helvetica Neue",Helvetica,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0}
body{min-height:100vh;display:flex;flex-direction:column;background:var(--creme);color:var(--carvao);font-family:var(--sans);line-height:1.55;-webkit-font-smoothing:antialiased}
.topo{background:var(--verde);color:var(--creme);position:relative;overflow:hidden;padding:34px 22px 92px;text-align:center}
.topo::before{content:"";position:absolute;width:220px;height:200px;top:-120px;right:-130px;border:1.5px solid var(--ouro-borda);border-radius:48px;opacity:.5}
.topo-in{position:relative;max-width:560px;margin:0 auto}
.wordmark{font-family:var(--display);font-weight:800;font-size:1.05rem;letter-spacing:.08em;text-transform:uppercase;margin:0 0 26px}
.wordmark span{display:block;font-family:var(--sans);font-weight:500;font-size:.62rem;letter-spacing:.22em;color:var(--ouro);margin-top:2px}
.avatar{width:88px;height:88px;border-radius:50%;object-fit:cover;object-position:center 20%;border:2px solid var(--ouro);margin:0 auto 18px;display:block}
.eyebrow{font-size:.7rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;color:var(--ouro);margin:0 0 12px}
h1{font-family:var(--display);font-weight:900;font-size:clamp(1.7rem,7vw,2.4rem);line-height:1.12;letter-spacing:-.015em;margin:0 0 14px;color:#fff}
.topo p.sub{color:#E4DCD4;font-size:.98rem;margin:0 auto;max-width:40ch}
main{flex:1;padding:0 18px 48px}
.caixa{position:relative;max-width:520px;margin:-62px auto 0;background:#fff;border:1px solid var(--ouro-borda);border-radius:24px;padding:26px 22px}
label{display:block;font-weight:600;font-size:.92rem;margin:0 0 8px;color:var(--verde)}
input{width:100%;font:500 1rem var(--sans);color:var(--carvao);background:var(--creme);border:1.5px solid #CDBFA8;border-radius:14px;padding:15px 16px;outline:none}
input:focus{border-color:var(--verde);background:#fff}
.dica{font-size:.8rem;color:#5B635D;margin:8px 0 18px}
.btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--cta);border:1px solid var(--cta-2);color:var(--cta-texto);font:600 1.02rem var(--sans);padding:17px 22px;border-radius:999px;text-decoration:none;cursor:pointer;transition:background .18s}
.btn:hover{background:var(--cta-2)}
.btn:focus-visible{outline:3px solid var(--ouro);outline-offset:3px}
.btn[disabled]{opacity:.7;cursor:wait}
.msg{margin:16px 0 0;padding:14px 16px;border-radius:14px;background:#F6E6E1;border:1px solid #E2BDB2;color:var(--erro);font-size:.92rem;font-weight:500}
.msg[hidden]{display:none}
.lista{list-style:none;margin:0 0 22px;padding:0;display:grid;gap:12px}
.lista li{display:flex;gap:12px;align-items:flex-start;font-size:.96rem}
.lista svg{flex:none;margin-top:3px}
.titulo-caixa{font-family:var(--display);font-weight:800;font-size:1.15rem;color:var(--verde);margin:0 0 14px}
.voltar{display:block;text-align:center;margin-top:16px;font-size:.88rem;color:var(--ouro-texto)}
footer{background:var(--verde-3);color:#A9B5A7;font-size:.78rem;text-align:center;padding:22px 18px}
footer a{color:var(--creme)}
@media(min-width:760px){.topo{padding:48px 22px 110px}.caixa{padding:32px 30px}}
