/* ==========================================================================
   SITE CORE - Maestro Thermas Park Hotel
   Fonte única de verdade, carregada em TODAS as páginas:
   - Variáveis globais de cores e tipografia
   - Neutralização total de fontes legadas / script (Amelia, Baloo)
   - Padrão tipográfico clássico para hotelaria & SEO (Montserrat títulos / Inter textos)
   - Hierarquia clássica H1, H2, H3, H4, H5, H6
   - Botão flutuante "Pedir Orçamento" (sempre no topo absoluto)
   ========================================================================== */

/* ---------- Variáveis Globais de Cores e Tipografia ---------- */
:root {
  --site-orange: #EA9600;
  --site-orange-light: #FFA606;
  --site-orange-dark: #D38400;
  --site-orange-bg: #FFF9ED;
  --site-blue: #012DD5;
  --site-blue-dark: #0022A1;
  --site-wpp-green: #25D366;
  --site-wpp-green-dark: #1EBE5D;
  --site-text-dark: #1E293B;
  --site-text-muted: #64748B;
  --site-border: #E2E8F0;

  --site-font-title: 'Montserrat', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  --site-font-body: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
  --site-font-serif: 'Playfair Display', Georgia, "Times New Roman", serif !important;
  --bs-font-sans-serif: 'Inter', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif !important;
}

/* ---------- Neutralização Total de Fontes Legadas / Script ---------- */
@font-face {
  font-family: 'amelia';
  src: local('Montserrat'), local('Montserrat-Regular');
}
@font-face {
  font-family: 'amelia-bold';
  src: local('Montserrat'), local('Montserrat-Bold');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'amelia-bold-italic';
  src: local('Montserrat'), local('Montserrat-Bold');
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: 'amelia-black';
  src: local('Montserrat'), local('Montserrat-ExtraBold');
  font-weight: 800;
  font-style: normal;
}
@font-face {
  font-family: 'amelia-light';
  src: local('Inter'), local('Inter-Light');
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: 'baloo';
  src: local('Montserrat'), local('Montserrat-Regular');
}
@font-face {
  font-family: 'baloo-bold';
  src: local('Montserrat'), local('Montserrat-Bold');
  font-weight: 700;
  font-style: normal;
}

/* Neutraliza estilos inline herdados do site legado */
[style*="font-family: amelia"],
[style*="font-family:amelia"],
[style*="font-family: 'amelia"],
[style*="font-family:'amelia"],
[style*="font-family: baloo"],
[style*="font-family:baloo"] {
  font-family: var(--site-font-title) !important;
}

/* ---------- Padrão Tipográfico Clássico H1, H2, H3... (Desktop) ---------- */
h1, .h1 {
  font-family: var(--site-font-title) !important;
  font-weight: 800 !important;
  font-style: normal !important;
  line-height: 1.2 !important;
  letter-spacing: -0.02em !important;
}

h2, .h2 {
  font-family: var(--site-font-title) !important;
  font-weight: 700 !important;
  font-style: normal !important;
  line-height: 1.25 !important;
  letter-spacing: -0.015em !important;
}

h3, .h3 {
  font-family: var(--site-font-title) !important;
  font-weight: 700 !important;
  font-style: normal !important;
  line-height: 1.3 !important;
  letter-spacing: -0.01em !important;
}

h4, .h4 {
  font-family: var(--site-font-title) !important;
  font-weight: 600 !important;
  font-style: normal !important;
  line-height: 1.35 !important;
}

h5, .h5 {
  font-family: var(--site-font-title) !important;
  font-weight: 600 !important;
  font-style: normal !important;
  line-height: 1.4 !important;
}

h6, .h6 {
  font-family: var(--site-font-title) !important;
  font-weight: 600 !important;
  font-style: normal !important;
  line-height: 1.4 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}

/* Textos corridos clássicos */
body, p, li, label, input, select, textarea {
  font-family: var(--site-font-body) !important;
  font-style: normal !important;
}

p {
  line-height: 1.65 !important;
}

/* ---------- Botão Flutuante Pedir Orçamento (Sempre no Topo Absoluto) ---------- */
.floating-orcamento-btn,
a.floating-orcamento-btn,
body > .floating-orcamento-btn,
html body .floating-orcamento-btn {
  position: fixed !important;
  bottom: 26px !important;
  right: 26px !important;
  z-index: 2147483647 !important;
  background: linear-gradient(135deg, #EA9600 0%, #D38400 100%) !important;
  color: #ffffff !important;
  padding: 13px 24px !important;
  border-radius: 50px !important;
  font-family: var(--site-font-title) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  font-style: normal !important;
  text-transform: uppercase !important;
  letter-spacing: 0.05em !important;
  text-decoration: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 9px !important;
  box-shadow: 0 8px 24px rgba(234, 150, 0, 0.45), 0 3px 8px rgba(0, 0, 0, 0.15) !important;
  transition: all 0.25s ease-in-out !important;
  border: 2px solid rgba(255, 255, 255, 0.25) !important;
  outline: none !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  -webkit-tap-highlight-color: transparent !important;
}

.floating-orcamento-btn:hover,
.floating-orcamento-btn:focus {
  transform: translateY(-3px) scale(1.02) !important;
  box-shadow: 0 12px 28px rgba(234, 150, 0, 0.55), 0 4px 10px rgba(0, 0, 0, 0.2) !important;
  color: #ffffff !important;
}

.floating-orcamento-btn svg {
  flex-shrink: 0 !important;
  width: 20px !important;
  height: 20px !important;
  stroke: #ffffff !important;
}
