/* Juratio — site institucional (preto, ouro e rubi) */
:root {
    --preto: #0a0a0b;
    --preto-2: #121214;
    --rubi: #6e1222;
    --rubi-escuro: #2a050c;
    --ouro: #d9b968;
    --ouro-claro: #f3d98b;
    --ouro-fosco: rgba(217, 185, 104, .32);
    --texto: #e9e4d8;
    --texto-suave: #a99f88;
    --gradiente-ouro: linear-gradient(170deg, #fff4c9 0%, #e9c46a 22%, #9f7220 45%, #f6dc8e 60%, #b8892c 80%, #6e4e12 100%);
}
* { box-sizing: border-box; }
html { background: #000; scroll-behavior: smooth; }
body {
    margin: 0; color: var(--texto);
    font-family: system-ui, -apple-system, "Segoe UI", Roboto, sans-serif; font-size: 17px; line-height: 1.6;
    background: radial-gradient(ellipse at 50% 0%, #1d1d20 0%, var(--preto) 45%, #000 100%) fixed;
}
a { color: var(--ouro); }
.conteudo { width: 100%; max-width: 1080px; margin: 0 auto; padding: 0 20px; }

/* topo */
.topo { display: flex; align-items: center; justify-content: space-between; padding: 20px 0; }
.topo-marca { display: flex; align-items: center; gap: 10px; text-decoration: none; }
.topo-marca img { width: 40px; height: 40px; }
.nome-ouro {
    font-family: "Cinzel", serif; font-weight: 700; letter-spacing: .18em;
    background: var(--gradiente-ouro); -webkit-background-clip: text; background-clip: text; color: transparent;
}
.topo-marca .nome-ouro { font-size: 20px; }
.botao {
    display: inline-block; padding: 11px 26px; border-radius: 999px; text-decoration: none; white-space: nowrap;
    font-family: "Cinzel", serif; font-weight: 600; font-size: 14px; letter-spacing: .14em;
    color: #1a1206; background: var(--gradiente-ouro);
    box-shadow: 0 6px 18px rgba(0, 0, 0, .5), inset 0 1px 0 rgba(255, 255, 255, .4);
    transition: transform .15s, box-shadow .15s;
}
.botao:hover { transform: translateY(-1px); box-shadow: 0 10px 24px rgba(0, 0, 0, .6), inset 0 1px 0 rgba(255, 255, 255, .4); }
.botao-contorno { color: var(--ouro-claro); background: transparent; border: 1px solid var(--ouro); box-shadow: none; }

/* abertura */
.abertura { text-align: center; padding: 56px 0 72px; }
.abertura img { width: 168px; height: 168px; filter: drop-shadow(0 14px 24px rgba(0, 0, 0, .7)); }
.abertura .nome-ouro { display: block; font-size: clamp(44px, 9vw, 76px); margin-top: 18px; padding-left: .18em; line-height: 1;
    filter: drop-shadow(0 1px 0 #5a3c0c) drop-shadow(0 6px 8px rgba(0, 0, 0, .5)); }
.frase-marca { font-family: "Cinzel", serif; font-weight: 600; font-size: 13px; letter-spacing: .42em; padding-left: .42em; color: var(--ouro); margin-top: 12px; }
.filete { width: 160px; height: 1px; margin: 34px auto; background: linear-gradient(90deg, transparent, var(--ouro), transparent); }
.abertura h1 {
    font-family: "Cinzel", serif; font-weight: 600; font-size: clamp(24px, 3.6vw, 36px); line-height: 1.3;
    color: var(--texto); max-width: 760px; margin: 0 auto 18px;
}
.abertura p { color: var(--texto-suave); max-width: 640px; margin: 0 auto 32px; font-size: 18px; }
.abertura .acoes { display: flex; gap: 14px; justify-content: center; flex-wrap: wrap; }

/* seções */
section { padding: 64px 0; }
.titulo-secao {
    text-align: center; font-family: "Cinzel", serif; font-weight: 600; font-size: clamp(22px, 3vw, 30px);
    color: var(--ouro-claro); margin: 0 0 10px; letter-spacing: .04em;
}
.subtitulo-secao { text-align: center; color: var(--texto-suave); margin: 0 auto 40px; max-width: 620px; }
.faixa-rubi { background: linear-gradient(180deg, transparent, rgba(110, 18, 34, .35) 18%, rgba(110, 18, 34, .35) 82%, transparent); }

.cartoes { display: grid; grid-template-columns: repeat(auto-fit, minmax(290px, 1fr)); gap: 18px; }
.cartao {
    padding: 24px 22px; border-radius: 12px;
    background: rgba(255, 255, 255, .025); border: 1px solid var(--ouro-fosco);
    box-shadow: 0 14px 34px rgba(0, 0, 0, .45);
}
.cartao h3 { margin: 0 0 8px; font-family: "Cinzel", serif; font-weight: 600; font-size: 17px; color: var(--ouro-claro); letter-spacing: .03em; }
.cartao p { margin: 0; color: var(--texto-suave); font-size: 15.5px; }
.cartao .simbolo { font-size: 22px; color: var(--ouro); margin-bottom: 10px; display: block; }
.em-breve { opacity: .8; border-style: dashed; }
.etiqueta {
    display: inline-block; margin-bottom: 10px; padding: 2px 10px; border-radius: 999px;
    font-size: 11.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--ouro); border: 1px solid var(--ouro-fosco);
}

.chamada { text-align: center; }
.chamada p { color: var(--texto-suave); margin: 0 auto 28px; max-width: 560px; }

/* rodapé */
.rodape { border-top: 1px solid rgba(217, 185, 104, .18); padding: 28px 0 40px; color: var(--texto-suave); font-size: 14px; }
.rodape .conteudo { display: flex; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.rodape a { color: var(--texto-suave); }
.rodape a:hover { color: var(--ouro); }

/* texto longo (política de privacidade) */
.documento { max-width: 780px; margin: 0 auto; padding: 24px 0 64px; }
.documento h1 { font-family: "Cinzel", serif; font-weight: 600; color: var(--ouro-claro); font-size: clamp(26px, 4vw, 36px); margin: 10px 0 6px; }
.documento h2 { font-family: "Cinzel", serif; font-weight: 600; color: var(--ouro); font-size: 19px; margin: 36px 0 10px; letter-spacing: .03em; }
.documento p, .documento li { color: var(--texto); }
.documento .data { color: var(--texto-suave); font-size: 15px; margin-bottom: 26px; }
.documento .aviso {
    padding: 14px 18px; border-radius: 10px; margin: 18px 0 8px; font-size: 15px;
    background: rgba(110, 18, 34, .35); border: 1px solid rgba(220, 90, 110, .45); color: #f1d3d8;
}
.documento table { width: 100%; border-collapse: collapse; margin: 10px 0; font-size: 15.5px; }
.documento th, .documento td { text-align: left; vertical-align: top; padding: 10px 12px; border-bottom: 1px solid rgba(217, 185, 104, .18); }
.documento th { color: var(--ouro); font-weight: 600; }
.preencher { background: rgba(217, 185, 104, .18); color: var(--ouro-claro); padding: 0 6px; border-radius: 4px; }

@media (max-width: 560px) {
    .topo .botao { padding: 9px 18px; font-size: 12.5px; }
    .abertura { padding: 32px 0 52px; }
    section { padding: 48px 0; }
}
