/* Telas PHP da área do casal (entrar, pedir acesso, painel) — identidade do site (22/10) */
:root{
  --fundo:#FBFAF7; --papel:#FFFFFF; --suave:#F1EEE8; --linha:#E3DFD6;
  --verde:#123A38; --verde2:#0C2B29; --cobre:#A65C36; --tinta:#16201F; --texto:#3F4644; --neutro:#7A7F7C; --r:2px;
  --fina:'Jost',system-ui,sans-serif; --sans:'Manrope',system-ui,sans-serif; --verso:'Literata',Georgia,serif;
}
*{box-sizing:border-box}
body{margin:0;background:var(--fundo);color:var(--tinta);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:var(--verde)}
h1,h2,h3{font-family:var(--fina);font-weight:300;margin:0;line-height:1.08;color:var(--tinta);text-wrap:balance}
p{margin:0}
.barra{border-bottom:1px solid var(--linha)}
.barra .in{max-width:1180px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.barra .marca{text-decoration:none;color:var(--tinta)}
.barra .marca b{display:block;font-family:var(--fina);font-weight:400;font-size:1.3rem;letter-spacing:.08em;text-transform:uppercase;line-height:1;white-space:nowrap}
.barra .marca small{display:block;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:var(--neutro);margin-top:4px}
.barra .ao-site{font:600 .74rem var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--verde);text-decoration:none;white-space:nowrap}
@media(max-width:420px){.barra .marca b{font-size:1.05rem}.barra .ao-site{font-size:.66rem}}
.cel{max-width:560px;margin:0 auto;padding:40px 20px 30px;display:flex;flex-direction:column;gap:22px}
.marca-t{font-family:var(--fina);font-weight:200;text-transform:uppercase;font-size:clamp(2.1rem,7vw,3rem);line-height:1.02;letter-spacing:.02em}
.risca{width:56px;height:1px;background:var(--cobre);margin:16px 0 0}
.rotulo{font-size:.72rem;letter-spacing:.2em;text-transform:uppercase;color:var(--cobre);font-weight:700}
.lead{font-size:1.05rem;color:var(--texto)}
.chamada{font-family:var(--fina);font-weight:300;font-size:1.4rem;line-height:1.3}
.nota{font-size:.88rem;color:var(--neutro)}
.botoes{display:flex;flex-direction:column;gap:12px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:12px 24px;border-radius:var(--r);font:600 .82rem var(--sans);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;cursor:pointer;border:1px solid var(--verde);background:var(--verde);color:#fff}
.btn:hover{background:var(--verde2)}
.btn.sec{background:transparent;color:var(--verde)}
.btn svg{width:20px;height:20px}
.passos{list-style:none;padding:0;margin:0;border-top:1px solid var(--linha)}
.passos li{display:flex;gap:16px;align-items:baseline;padding:14px 0;border-bottom:1px solid var(--linha)}
.passos .n{font-family:var(--fina);font-weight:200;font-size:2rem;line-height:1;color:var(--cobre);min-width:1.4ch}
.passos .t{color:var(--texto)}
.campo{display:flex;flex-direction:column;gap:6px;font-size:.74rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--texto)}
.campo input{font:500 1.02rem var(--sans);letter-spacing:0;text-transform:none;padding:13px 14px;border-radius:var(--r);border:1px solid var(--linha);background:var(--papel);color:var(--tinta);outline:none;width:100%}
.campo input:focus{border-color:var(--verde)}
.erro{background:#FBE9E3;color:#8A3B1E;border-radius:var(--r);padding:12px 14px;font-size:.95rem}
.ok{background:#E6F0EC;color:var(--verde);border-radius:var(--r);padding:12px 14px;font-size:.95rem}
.linkbtn{background:none;border:none;color:var(--verde);font:600 .95rem var(--sans);cursor:pointer;padding:0;text-decoration:underline}
.fim{text-align:center;padding:30px 20px 36px}
.fim img{width:min(380px,85%);margin:0 auto}
.fim p{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase;color:var(--neutro);margin-top:8px}
/* painel */
section{padding:clamp(28px,5vw,56px) 20px}
.miolo{max-width:1040px;margin:0 auto}
.cartao{background:var(--papel);border:1px solid var(--linha);border-radius:var(--r);padding:clamp(20px,4vw,32px)}
table.tab{width:100%;border-collapse:collapse;font-size:.95rem}
table.tab th,table.tab td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--linha)}
table.tab th{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--cobre)}