/* Início: neutro e claro, para as três portas de entrada (casamentos, eventos e festas infantis) aparecerem cada uma com a sua cor. */
body.tema-home {
  --bg: #F4F2EC; --surface: #FFFFFF; --ink: #18201B; --muted: #58645C; --line: #DDD8CC; --tint: #E9E5D9;
  --accent: #1B2A22; --on-accent: #FFFFFF; --rec: #E0314B; --error: #B3261E; --tab: #F4F1EA; --radius: 18px;
  --font-display: "Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;
  --font-body: "Jost", "Segoe UI", system-ui, sans-serif;
  --font-mono: "JetBrains Mono", ui-monospace, Menlo, monospace;
  color-scheme: light;
}
.tema-home h1, .tema-home h2, .tema-home h3 { font-weight: 700; letter-spacing: -.02em; }
.tema-home .hero-home { padding-block: 56px 28px; display: grid; gap: 22px; max-width: 820px; }
.tema-home h1 { font-size: clamp(2.5rem, 5.8vw, 4.4rem); }

.tema-home .portas { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; padding-block: 24px 64px; }
.tema-home .porta { display: grid; grid-template-rows: auto 1fr; border-radius: 22px; overflow: hidden; text-decoration: none; border: 1px solid var(--line); transition: transform .18s ease, box-shadow .18s ease; }
.tema-home .porta:hover { transform: translateY(-4px); box-shadow: 0 22px 40px -26px rgba(24,32,27,.55); }
.tema-home .porta .vf { border-radius: 0; aspect-ratio: 4 / 3; }
.tema-home .porta .vf .c { width: 20px; height: 20px; border-width: 2px; }
.tema-home .porta .corpo { padding: 22px 24px 26px; display: grid; gap: 8px; align-content: start; }
.tema-home .porta h2 { font-size: 1.7rem; }
.tema-home .porta p { font-size: 1rem; line-height: 1.55; }
.tema-home .porta .ir { font-weight: 600; margin-top: 4px; }
.tema-home .porta.casamento { background: #EEF2E8; color: #1B2B20; }
.tema-home .porta.casamento h2 { font-family: "Cormorant Garamond", Georgia, serif; font-size: 2.05rem; }
.tema-home .porta.casamento .ir { color: #2F5D3F; }
.tema-home .porta.eventos { background: #0F121C; color: #F1F3F9; border-color: #2A3250; }
.tema-home .porta.eventos .ir { color: #FFB020; }
.tema-home .porta.infantil { background: #FFE3A0; color: #2A2B55; border-color: #F0DDB8; }
.tema-home .porta.infantil h2 { font-family: "Fredoka", "Trebuchet MS", system-ui, sans-serif; font-weight: 600; }
.tema-home .porta.infantil .ir { color: #B52F3C; }

.tema-home .contato-home { background: var(--tint); padding-block: 64px; }
.tema-home .contato-home .wrap { display: grid; justify-items: center; gap: 28px; text-align: center; }
.tema-home .contato-home .texto { display: grid; gap: 10px; max-width: 56ch; }
.tema-home .contato-home .texto h2 { font-size: clamp(2rem, 4vw, 3rem); }
.tema-home .contato-home .texto p { color: var(--muted); }
.tema-home .card { width: 100%; max-width: 560px; text-align: left; }

@media (max-width: 900px) {
  .tema-home .portas { grid-template-columns: minmax(0, 1fr); }
  .tema-home .porta { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 560px) {
  .tema-home .card { padding: 22px; }
}
@media (prefers-reduced-motion: reduce) {
  .tema-home .porta { transition: none; }
}

/* Página de Privacidade: texto corrido, legível */
.tema-home .prosa { max-width: 760px; padding-block: 56px 72px; display: grid; gap: 14px; }
.tema-home .prosa h1 { font-size: clamp(2rem, 4.6vw, 3rem); }
.tema-home .prosa h2 { font-size: 1.4rem; margin-top: 18px; }
.tema-home .prosa ul { margin: 0; padding-left: 1.2em; display: grid; gap: 6px; }
.tema-home .prosa a { color: var(--accent); }
