:root{
  --sol:#F2701D; --sol-escuro:#C9530A; --ouro:#FFC233; --noite:#14213D; --noite-2:#1E2F55;
  --creme:#FFF8EE; --papel:#FFFFFF; --tinta:#1B1B1F; --cinza:#5B6170; --linha:#EADFCF; --verde:#1E8E5A;
  --raio:18px; --sombra:0 6px 24px rgba(20,33,61,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--creme);color:var(--tinta);font:16px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
a{color:var(--sol-escuro)}
img{max-width:100%;display:block}
.cx{max-width:1080px;margin:0 auto;padding:0 16px}

/* topo */
.topo{background:var(--noite);color:#fff;position:sticky;top:0;z-index:10}
.topo .cx{display:flex;align-items:center;gap:16px;min-height:60px;flex-wrap:wrap}
.marca{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none;font-weight:800;font-size:1.15rem;letter-spacing:-.01em}
.marca .sol{width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 35% 35%,var(--ouro),var(--sol));box-shadow:0 0 0 4px rgba(255,194,51,.22);flex:none}
.marca small{display:block;font-weight:500;font-size:.72rem;opacity:.75;letter-spacing:.02em}
.menu{display:flex;gap:4px;margin-left:auto;flex-wrap:wrap}
.menu a{color:#fff;text-decoration:none;padding:8px 12px;border-radius:999px;font-size:.93rem;opacity:.9}
.menu a:hover,.menu a.aqui{background:rgba(255,255,255,.12);opacity:1}
.menu a.cta{background:var(--sol);font-weight:700;opacity:1}
.menu a.cta:hover{background:var(--sol-escuro)}

/* capa */
.capa{background:linear-gradient(160deg,var(--noite) 0%,var(--noite-2) 55%,#3A2A52 100%);color:#fff;padding:56px 0 64px;position:relative;overflow:hidden}
.capa::after{content:"";position:absolute;right:-90px;top:-90px;width:340px;height:340px;border-radius:50%;background:radial-gradient(circle at 40% 40%,var(--ouro),var(--sol) 60%,transparent 72%);opacity:.9}
.capa .cx{position:relative;z-index:1}
.olho{display:inline-block;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ouro);margin-bottom:10px}
.capa h1{font-size:clamp(2rem,5.5vw,3.4rem);line-height:1.08;margin:0 0 14px;letter-spacing:-.02em;max-width:15ch}
.capa p{font-size:1.1rem;max-width:52ch;margin:0 0 24px;opacity:.92}
.busca{display:flex;gap:8px;max-width:560px;background:#fff;border-radius:999px;padding:6px}
.busca input{flex:1;border:0;outline:0;font:inherit;padding:10px 16px;border-radius:999px;min-width:0;color:var(--tinta)}
.botao{display:inline-block;background:var(--sol);color:#fff;font-weight:700;text-decoration:none;border:0;border-radius:999px;padding:12px 22px;font:inherit;font-weight:700;cursor:pointer}
.botao:hover{background:var(--sol-escuro)}
.botao.claro{background:#fff;color:var(--noite)}
.botao.zap{background:var(--verde)}
.botao.linha{background:transparent;color:var(--noite);border:2px solid var(--noite)}

/* seções */
section{padding:44px 0}
h2{font-size:1.6rem;letter-spacing:-.01em;margin:0 0 6px}
.sub{color:var(--cinza);margin:0 0 22px;max-width:62ch}
.grade{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
.cat{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);padding:18px 14px;text-decoration:none;color:var(--tinta);text-align:center;font-weight:600;transition:transform .15s,box-shadow .15s}
.cat:hover{transform:translateY(-3px);box-shadow:var(--sombra);border-color:var(--sol)}
.cat span{display:block;font-size:2rem;margin-bottom:6px}
.cat em{display:block;font-style:normal;font-weight:400;font-size:.8rem;color:var(--cinza)}

.cartoes{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.cartao{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);overflow:hidden;text-decoration:none;color:var(--tinta);display:flex;flex-direction:column;box-shadow:var(--sombra)}
.cartao .foto{aspect-ratio:16/10;background:linear-gradient(135deg,#FFE3C2,#FFD08A);display:flex;align-items:center;justify-content:center;font-size:2.6rem}
.cartao .foto img{width:100%;height:100%;object-fit:cover}
.cartao .corpo{padding:16px}
.cartao h3{margin:0 0 4px;font-size:1.1rem}
.cartao p{margin:0;color:var(--cinza);font-size:.93rem}
.selos{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}
.selo{font-size:.72rem;font-weight:700;padding:3px 9px;border-radius:999px;background:#EEF2FA;color:var(--noite)}
.selo.ok{background:#E2F5EB;color:#12613C}
.selo.fund{background:#FFF0CC;color:#7A5200}
.selo.dono{background:#F3E8FF;color:#56308C}

.vazio{background:var(--papel);border:2px dashed var(--linha);border-radius:var(--raio);padding:28px 20px;text-align:center}
.vazio b{display:block;font-size:1.1rem;margin-bottom:6px}
.vazio p{color:var(--cinza);margin:0 0 16px}

.faixa{background:var(--noite);color:#fff;border-radius:var(--raio);padding:28px 24px;display:flex;gap:20px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.faixa h2{color:#fff}
.faixa p{margin:0;opacity:.88;max-width:56ch}

.tres{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.passo{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);padding:20px}
.passo b{display:block;margin-bottom:4px}
.passo .n{display:inline-flex;width:30px;height:30px;border-radius:50%;background:var(--sol);color:#fff;font-weight:800;align-items:center;justify-content:center;margin-bottom:10px}

/* página interna */
.cabeca{background:var(--noite);color:#fff;padding:34px 0 38px}
.cabeca h1{margin:0 0 6px;font-size:clamp(1.7rem,4.5vw,2.5rem);letter-spacing:-.02em}
.cabeca p{margin:0;opacity:.88;max-width:62ch}
.migalha{font-size:.85rem;opacity:.75;margin-bottom:10px}
.migalha a{color:#fff}
.texto{max-width:70ch}
.texto p{margin:0 0 16px}
.lista{padding-left:20px;margin:0 0 16px}
.lista li{margin-bottom:6px}
.duas{display:grid;gap:28px;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.caixa{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);padding:22px;box-shadow:var(--sombra)}
.caixa h3{margin:0 0 12px}
.caixa .botao{display:block;text-align:center;margin-bottom:10px}
.aviso{background:#FFF0CC;border-left:5px solid var(--ouro);border-radius:10px;padding:12px 16px;margin:0 0 20px;font-size:.93rem}
.tempo{list-style:none;padding:0;margin:0 0 20px;border-left:3px solid var(--sol)}
.tempo li{padding:0 0 16px 18px;position:relative}
.tempo li::before{content:"";position:absolute;left:-8px;top:6px;width:13px;height:13px;border-radius:50%;background:var(--sol)}
.tempo b{display:block;color:var(--sol-escuro)}

.planos{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.plano{background:var(--papel);border:1px solid var(--linha);border-radius:var(--raio);padding:22px}
.plano.destaque{border:2px solid var(--sol);box-shadow:var(--sombra)}
.plano h3{margin:0}
.plano .preco{font-size:1.25rem;font-weight:800;color:var(--sol-escuro);margin:6px 0 2px}
.plano small{color:var(--cinza)}
.plano ul{padding-left:18px;margin:14px 0 0;font-size:.93rem}

/* formulário */
form.cad{display:grid;gap:14px;max-width:620px}
form.cad label{font-weight:600;display:grid;gap:6px}
form.cad input,form.cad select,form.cad textarea{font:inherit;padding:12px 14px;border:1px solid #D9CDBB;border-radius:12px;background:#fff;width:100%}
form.cad input:focus,form.cad select:focus,form.cad textarea:focus{outline:2px solid var(--sol);border-color:var(--sol)}
form.cad .aceite{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:.93rem}
form.cad .aceite input{width:auto;margin-top:5px}
.retorno{padding:14px 16px;border-radius:12px;display:none}
.retorno.ok{display:block;background:#E2F5EB;color:#12613C}
.retorno.erro{display:block;background:#FDE7E4;color:#8C2A1D}

footer{background:var(--noite);color:#fff;padding:34px 0;margin-top:30px;font-size:.92rem}
footer a{color:var(--ouro)}
footer .cx{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
footer p{margin:0 0 6px;opacity:.85}

@media (max-width:760px){
  .duas{grid-template-columns:1fr}
  .menu{margin-left:0;width:100%;padding-bottom:8px;overflow-x:auto;flex-wrap:nowrap}
  .menu a{white-space:nowrap}
  .capa{padding:40px 0 48px}
  .capa::after{width:200px;height:200px;right:-70px;top:-70px;opacity:.55}
}

.fig{margin:0 0 22px}
.fig img{width:100%;border-radius:18px;box-shadow:var(--sombra)}
.fig figcaption{font-size:.85rem;color:var(--cinza);margin-top:8px}
