.elementor-kit-5{--e-global-color-primary:#1A4A35;--e-global-color-secondary:#F5EFE0;--e-global-color-text:#6B6560;--e-global-color-accent:#C9B99A;--e-global-color-terracota:#D95C3A;--e-global-color-verde_escuro:#1A4A35;--e-global-color-verde_medio:#2D6B4F;--e-global-color-creme:#F5EFE0;--e-global-color-kraft:#C9B99A;--e-global-color-cinza:#6B6560;--e-global-typography-primary-font-family:"Playfair Display";--e-global-typography-primary-font-weight:700;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-weight:300;--e-global-typography-text-font-family:"Cormorant Garamond";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Jost";--e-global-typography-accent-font-weight:400;}.elementor-kit-5 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* === COSA NOSTRA — BRAND & RESPONSIVE CSS === */

/* --- Google Fonts Import --- */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,700;1,400;1,700&family=Cormorant+Garamond:ital,wght@0,300;0,400;0,600;1,300;1,400&family=Jost:wght@300;400;500;600&display=swap');

/* --- Base Reset --- */
*, *::before, *::after { box-sizing: border-box; }
body { font-family: 'Cormorant Garamond', serif; color: #6B6560; background-color: #FDFAF5; margin: 0; }
img { max-width: 100%; height: auto; }

/* --- Header & Navigation --- */
.site-header {
  background: #FDFAF5 !important;
  border-bottom: 1px solid rgba(201,185,154,0.3) !important;
  padding: 0 !important;
}

/* Logo centralizado */
.site-header .site-branding {
  text-align: center !important;
}

.site-header .site-branding .site-title,
.site-header .site-branding .site-title a,
header .site-title a {
  color: #1A4A35 !important;
  font-family: 'Playfair Display', serif !important;
  font-size: 28px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-decoration: none !important;
}

.main-navigation a,
.site-navigation a,
header nav a {
  color: #1A4A35 !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  font-weight: 400 !important;
  text-decoration: none !important;
  padding: 8px 14px !important;
  transition: color 0.3s ease !important;
}
.main-navigation a:hover, header nav a:hover { color: #D95C3A !important; }

/* --- Hero Section --- */
.elementor-section.elementor-section-height-min-height {
  min-height: 100vh !important;
}

/* --- Headings --- */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Playfair Display', serif;
  color: #1A4A35;
  line-height: 1.2;
}

/* --- Links --- */
a { color: #1A4A35; text-decoration: none; transition: color 0.3s; }
a:hover { color: #D95C3A; }
.hello-elementor a:not(.elementor-button), .site-header a { color: #1A4A35 !important; }

/* --- Buttons --- */
.elementor-button {
  font-family: 'Jost', sans-serif !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
}

/* --- Footer --- */
.site-footer {
  background: #1A4A35 !important;
  color: rgba(245,239,224,0.7) !important;
  font-family: 'Jost', sans-serif !important;
  font-size: 11px !important;
  letter-spacing: 2px !important;
  text-align: center !important;
  padding: 20px !important;
}
.site-footer a { color: rgba(245,239,224,0.7) !important; }
.site-footer a:hover { color: #D95C3A !important; }

/* ========================================
   RESPONSIVE — TABLET (max-width: 1024px)
   ======================================== */
@media (max-width: 1024px) {
  .elementor-section > .elementor-container { flex-wrap: wrap !important; }
  .elementor-column { width: 100% !important; flex: 0 0 100% !important; }
  
  .elementor-widget-heading .elementor-heading-title { font-size: 80% !important; }
  
  /* Hero */
  .elementor-section-height-min-height { min-height: 70vh !important; }
  
  /* Navigation */
  .main-navigation li { display: inline-block !important; }
  .main-navigation a { font-size: 10px !important; padding: 6px 10px !important; letter-spacing: 2px !important; }
}

/* ========================================
   RESPONSIVE — MOBILE (max-width: 768px)
   ======================================== */
@media (max-width: 768px) {
  /* --- Header Mobile --- */
  .site-header .site-branding .site-title { font-size: 22px !important; }
  
  .main-navigation {
    display: none !important;
  }
  
  /* Menu hambúrguer — mostrar botão */
  .menu-toggle {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important;
    border: 1px solid #1A4A35 !important;
    color: #1A4A35 !important;
    font-family: 'Jost', sans-serif !important;
    font-size: 10px !important;
    letter-spacing: 2px !important;
    padding: 8px 16px !important;
    cursor: pointer !important;
    text-transform: uppercase !important;
  }
  
  .main-navigation.toggled {
    display: block !important;
    background: #FDFAF5 !important;
    border-top: 1px solid rgba(201,185,154,0.3) !important;
    width: 100% !important;
  }
  
  .main-navigation.toggled ul {
    flex-direction: column !important;
    padding: 10px 0 !important;
  }
  
  .main-navigation.toggled li {
    display: block !important;
    text-align: center !important;
  }
  
  .main-navigation.toggled a {
    display: block !important;
    padding: 12px 20px !important;
    border-bottom: 1px solid rgba(201,185,154,0.2) !important;
    font-size: 11px !important;
  }
  
  /* --- Elementor Mobile Fixes --- */
  .elementor-section { padding-left: 20px !important; padding-right: 20px !important; }
  .elementor-section > .elementor-container { flex-wrap: wrap !important; }
  
  /* Columns — all full width on mobile */
  .elementor-column,
  .elementor-col-50,
  .elementor-col-33,
  .elementor-col-25,
  .elementor-col-66 {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  
  /* Hero */
  .elementor-section-height-min-height { min-height: 90vh !important; }
  .elementor-widget-heading .elementor-heading-title[style*="font-size: 80"] { font-size: 48px !important; }
  .elementor-widget-heading .elementor-heading-title[style*="font-size: 70"] { font-size: 44px !important; }
  .elementor-widget-heading .elementor-heading-title[style*="font-size: 44"] { font-size: 32px !important; }
  .elementor-widget-heading .elementor-heading-title[style*="font-size: 32"] { font-size: 26px !important; }
  .elementor-widget-heading .elementor-heading-title[style*="font-size: 56"] { font-size: 40px !important; }
  
  /* Text editor */
  .elementor-widget-text-editor { font-size: 16px !important; }
  
  /* Buttons full width on mobile */
  .elementor-widget-html a[style*="inline-block"] {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-bottom: 10px !important;
  }
  
  /* Section paddings reduced on mobile */
  .elementor-section[style*="padding"] {
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  
  /* Images fill width on mobile */
  .elementor-widget-image img {
    width: 100% !important;
  }
  
  /* Grid cards wrap on mobile */
  div[style*="display:grid"], div[style*="display: grid"] {
    grid-template-columns: 1fr !important;
  }
  
  div[style*="display:flex"][style*="gap"], div[style*="display: flex"][style*="gap"] {
    flex-direction: column !important;
  }
  
  /* Stats flex wrap */
  div[style*="display:flex;gap:40px"] {
    flex-direction: column !important;
    gap: 30px !important;
    align-items: center !important;
  }
  
  /* Pratos section alternating */
  .elementor-col-50:first-child { order: 1 !important; }
  .elementor-col-50:last-child { order: 2 !important; }
  
  /* Map placeholder */
  div[style*="min-height:400px"] { min-height: 280px !important; }
  div[style*="min-height:500px"] { min-height: 300px !important; }
  
  /* Marcas grid */
  div[style*="display:grid;grid-template-columns:repeat(4"] {
    grid-template-columns: repeat(2, 1fr) !important;
  }
  
  /* Reviews cards */
  div[style*="display:grid;grid-template-columns:repeat(2"] {
    grid-template-columns: 1fr !important;
  }
  
  /* App delivery cards */
  div[style*="display:flex;gap:20px"] {
    flex-direction: column !important;
    align-items: center !important;
  }
  
  /* Hide decorative dividers on mobile */
  .elementor-divider { margin: 8px auto !important; }
}

/* ========================================
   RESPONSIVE — SMALL MOBILE (max-width: 480px)
   ======================================== */
@media (max-width: 480px) {
  .site-header .site-branding .site-title { font-size: 18px !important; }
  
  .elementor-section { padding-left: 16px !important; padding-right: 16px !important; }
  
  .elementor-widget-heading .elementor-heading-title { font-size: 85% !important; }
  
  /* Hero full height on small screens */
  .elementor-section-height-min-height { min-height: 100vh !important; }
}


/* === Hero Banner - Foto Fachada === */
.elementor-element-6ydn1 .elementor-background-overlay {
  background-color: rgba(8, 22, 14, 0.42) !important;
  background-image: linear-gradient(to bottom, rgba(0,0,0,0.15) 0%, rgba(8,22,14,0.55) 100%) !important;
}

/* Hero must be full height */
.elementor-element-6ydn1.elementor-section {
  min-height: 100vh !important;
}/* End custom CSS */