/* Identidade visual das páginas públicas do Rio no Teatro. */
:root {
    --primary-blue: #071522; --primary-yellow: #EAC17A;
    --bg-body: #071522; --bg-surface: #0D2234; --bg-card: #132B40;
    --bg-input: #0D2234; --bg-header: #071522;
    --text-primary: #FAF4E9; --text-secondary: #AEBBC7; --text-muted: #AEBBC7;
    --border-color: #2C4054; --border-light: #2C4054;
    --shadow-sm: none; --shadow-md: none; --shadow-lg: none;
    --dark-bg: #071522; --dark-card: #132B40; --dark-border: #2C4054;
}
:root[data-theme="light"] {
    --bg-body: #F6EFE3; --bg-surface: #F6EFE3; --bg-card: #fffaf1;
    --bg-header: #071522; --text-primary: #17293B; --text-secondary: #536577;
    --border-color: #d9d0c2; --border-light: #e5ddd1;
}
.rnt-home-hero { min-height: 500px; height: 65vh; }
.rnt-home-hero .rnt-hero-title { font-family: Georgia, serif; font-size: clamp(38px, 5vw, 64px); line-height: 1.1; text-shadow: none; }
.rnt-hero-cta, .rnt-featured-btn { background: #EAC17A !important; color: #071522 !important; border: 0; border-radius: 12px !important; box-shadow: none !important; min-height: 44px; transition: background 180ms ease, transform 180ms ease; }
.rnt-hero-cta:hover, .rnt-featured-card:hover .rnt-featured-btn { background: #F3D29A !important; }
.rnt-hero-cta:focus-visible, .rnt-featured-card:focus-visible { outline: 3px solid #EAC17A; outline-offset: 3px; }
.rnt-confianca { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px 72px; padding: 27px 20px; background: #0D2234; color: #FAF4E9; text-align: center; }
.rnt-confianca strong, .rnt-confianca span { display: block; }
.rnt-confianca strong { color: #EAC17A; font-size: 20px; }
.rnt-confianca span { color: #AEBBC7; font-size: 14px; }
.rnt-section-title, .rnt-featured-title, .rnt-hero-card .rnt-hero-title { font-family: Georgia, serif !important; }
.rnt-section-title { background: transparent !important; color: var(--text-primary) !important; padding: 0 !important; }
.rnt-featured-card { background: var(--bg-card) !important; border: 1px solid var(--border-color); border-radius: 16px !important; box-shadow: none !important; transition: border-color 180ms ease, transform 180ms ease !important; }
.rnt-featured-card:hover { border-color: #EAC17A; transform: translateY(-3px) !important; box-shadow: none !important; }
.rnt-featured-content { background: transparent !important; }
.rnt-hero-card { box-shadow: none !important; background: transparent !important; }
.rnt-discount-badge { background: #EAC17A !important; color: #071522 !important; box-shadow: none !important; border-radius: 8px; }
@media (max-width: 767px) { .rnt-home-hero { min-height: 420px; height: 65vh; } .rnt-confianca { gap: 20px 30px; } }

/* O conteúdo determina a altura: títulos e agendas longos não cortam a oferta. */
.rnt-featured-card { height: auto !important; min-height: 510px; }
.rnt-featured-image { flex-shrink: 0; }
.rnt-featured-content { height: auto !important; flex: 1 0 auto; }
/* Reserva espaço para o selo nas páginas de detalhe, inclusive com título longo. */
.rnt-hero-card:has(> .rnt-discount-badge) { padding-top: 70px; }
.rnt-info-value a { color: var(--primary-yellow); }
:root[data-theme="light"] .rnt-info-value a { color: #173c5d; }

/* Pedido: mesma paleta da vitrine, com contraste nos formulários. */
.rnt-order-header h3, .rnt-summary-header h3, .rnt-form-title, .rnt-section-subtitle { font-family: Georgia, serif !important; }
.rnt-btn-buy { border-radius: 12px; min-height: 44px; box-shadow: none !important; }
.rnt-btn-buy:hover { background: #F3D29A !important; }
.rnt-order-card, .rnt-form-card, .rnt-summary-card { box-shadow: none !important; border-radius: 16px; }
