/* Site institucional — mesmas cores e fontes do painel (web/src/app/globals.css). */
@font-face { font-family: 'Cormorant Garamond'; font-weight: 500; font-display: swap; src: url(fontes/cormorant-garamond-latin-500-normal.woff2) format('woff2'); }
@font-face { font-family: 'Cormorant Garamond'; font-weight: 600; font-display: swap; src: url(fontes/cormorant-garamond-latin-600-normal.woff2) format('woff2'); }
@font-face { font-family: 'Manrope'; font-weight: 400; font-display: swap; src: url(fontes/manrope-latin-400-normal.woff2) format('woff2'); }
@font-face { font-family: 'Manrope'; font-weight: 600; font-display: swap; src: url(fontes/manrope-latin-600-normal.woff2) format('woff2'); }

:root {
  --bg: #FBF8F4; --surface: #FFFFFF; --surface2: #F4ECE3; --line: #E8DDD1;
  --text: #2B2420; --muted: #6E6157; --gold: #7A5C2C; --goldline: #B8975A; --goldsoft: #F3E9D8;
  --titulo: 'Cormorant Garamond', Georgia, serif; --corpo: 'Manrope', system-ui, sans-serif;
}
@media (prefers-color-scheme: dark) {
  :root { --bg: #171412; --surface: #211D1A; --surface2: #2C2622; --line: #3B342E;
          --text: #F2EBE3; --muted: #BCAFA2; --gold: #DCC18F; --goldline: #B8975A; --goldsoft: #3A3024; }
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--text); font: 400 16px/1.65 var(--corpo); -webkit-font-smoothing: antialiased; }
a { color: var(--gold); }
h1, h2, h3 { font-family: var(--titulo); font-weight: 600; line-height: 1.15; margin: 0; }
h1 { font-size: clamp(2.3rem, 6vw, 3.8rem); max-width: 16ch; }
h2 { font-size: clamp(1.9rem, 4.5vw, 2.6rem); margin-bottom: .6rem; }
h3 { font-size: 1.35rem; margin-bottom: .35rem; }
p { margin: 0; }
.largura { width: 100%; max-width: 1080px; margin: 0 auto; padding: 0 16px; }
@media (min-width: 720px) { .largura { padding: 0 32px; } }

.topo { position: sticky; top: 0; z-index: 5; background: color-mix(in srgb, var(--bg) 92%, transparent); backdrop-filter: blur(8px); border-bottom: 1px solid var(--line); }
.topo-linha { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 72px; }
.marca { display: flex; align-items: center; gap: 12px; color: var(--gold); text-decoration: none; }
.marca span { display: flex; flex-direction: column; color: var(--text); line-height: 1.2; }
.marca strong { font-family: var(--titulo); font-size: 1.25rem; font-weight: 600; }
.marca small { color: var(--muted); font-size: .78rem; letter-spacing: .08em; text-transform: uppercase; }
.menu { display: none; gap: 28px; }
.menu a { color: var(--text); text-decoration: none; font-size: .95rem; }
.menu a:hover { color: var(--gold); }
@media (min-width: 760px) { .menu { display: flex; } }

.abertura { padding: 72px 0 80px; border-bottom: 1px solid var(--line); background: linear-gradient(180deg, var(--surface2), var(--bg)); }
.abertura h1 { margin: .4rem 0 1.2rem; }
.texto-grande { font-size: 1.1rem; color: var(--muted); max-width: 56ch; }
.sobretitulo { color: var(--gold); font-size: .8rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.acoes { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 2rem; }
.botao { display: inline-block; padding: 14px 24px; border-radius: 999px; background: var(--gold); color: var(--bg); text-decoration: none; font-weight: 600; }
.botao:hover { filter: brightness(1.08); }
.botao-claro { background: transparent; color: var(--gold); border: 1px solid var(--goldline); }

.secao { padding: 72px 0; }
.secao-tom { background: var(--surface2); border-block: 1px solid var(--line); }
.intro { color: var(--muted); max-width: 60ch; margin-bottom: 2rem; }

.grade { list-style: none; margin: 0; padding: 0; display: grid; gap: 16px; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); }
.grade li { background: var(--surface); border: 1px solid var(--line); border-radius: 14px; padding: 22px; }
.grade p { color: var(--muted); font-size: .95rem; }

.passos { list-style: none; margin: 1.5rem 0 0; padding: 0; display: grid; gap: 24px; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); }
.passos span { display: inline-grid; place-items: center; width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--goldline); color: var(--gold); font-family: var(--titulo); font-size: 1.2rem; margin-bottom: .8rem; }
.passos p { color: var(--muted); font-size: .95rem; }

.contato { display: grid; gap: 24px; }
.dados { margin: 0; display: grid; gap: 12px; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); }
.dados div { background: var(--surface); border: 1px solid var(--line); border-radius: 14px; padding: 18px 20px; }
.dados dt { color: var(--muted); font-size: .8rem; text-transform: uppercase; letter-spacing: .1em; }
.dados dd { margin: .2rem 0 0; font-weight: 600; }
.portal { color: var(--muted); }

.rodape { border-top: 1px solid var(--line); padding: 32px 0 40px; color: var(--muted); font-size: .88rem; }
.rodape-linha { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 16px; }
.rodape-links { display: flex; gap: 20px; align-items: flex-start; }
.rodape-links a { color: var(--muted); text-decoration: none; }
.rodape-links a:hover { color: var(--gold); }
.restrita { opacity: .55; font-size: .8rem; }
