/* ===== Base reset (idêntico às 3 páginas originais) ===== */
body { margin: 0; background: #F7F1E7; color: #292522; -webkit-font-smoothing: antialiased; }
* { box-sizing: border-box; }
a { color: #292522; text-decoration: none; }
a:hover { color: #795548; }

/* ===== Responsivo — regras da Home ===== */
@media (max-width: 1120px) {
  .nav-wordmark { display: none !important; }
}
@media (max-width: 860px) {
  .nav-wordmark { display: inline !important; }
  .nav-links { display: none !important; }
  .nav-burger { display: inline-flex !important; }
  .split-2 { grid-template-columns: 1fr !important; }
  .stack { flex-direction: column !important; }
  .prop-media { min-height: 62vh !important; }
  .rev-grid { grid-template-columns: 1fr !important; }
  .pad-x { padding-left: 24px !important; padding-right: 24px !important; }
  .hero-side { display: none !important; }
  .reserva-grid { grid-template-columns: 1fr 1fr !important; }
}

/* ===== Responsivo — regras de Fortaleza / Alto Paraíso ===== */
@media (max-width: 1180px) {
  .galeria { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; }
}
@media (max-width: 1000px) {
  .exp-grid { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; }
}
@media (max-width: 640px) {
  .exp-grid { grid-template-columns: minmax(0, 1fr) !important; }
}
@media (max-width: 860px) {
  .casa-media { min-height: 58vh !important; }
}

/* ===== Substitui o componente <image-slot> do editor por <div><img></div> ===== */
.img-slot { position: relative; overflow: hidden; width: 100%; height: 100%; display: block; }
.img-slot img { display: block; width: 100%; height: 100%; object-fit: cover; }
.img-slot.shape-rect { border-radius: 0; }
.img-slot.shape-rounded { border-radius: 12px; }
.img-slot.shape-circle { border-radius: 50%; }
.img-slot.shape-pill { border-radius: 9999px; }
.img-slot.img-slot-empty { background: #E7DDCC; }

/* ===== Estados de hover (substituem o atributo style-hover do editor) ===== */
.hv-a:hover { background: #4E5F49 !important; }
.hv-b:hover { background: #5E7158 !important; }
.hv-c:hover { background: currentColor !important; color: #F7F1E7 !important; }
.hv-d:hover { border-color: #292522 !important; }
.hv-e:hover { border-color: #F7F1E7 !important; }
.hv-f:hover { border-color: #F7F1E7 !important; background: rgba(247,241,231,0.12) !important; }
.hv-g:hover { border-color: #292522 !important; background: rgba(41,37,34,0.05) !important; }

/* ===== Nav da Home: transparente sobre o hero, sólido ao rolar ===== */
#site-nav { background: transparent; backdrop-filter: none; border-bottom: 1px solid transparent; color: #F7F1E7; }
#site-nav.scrolled { background: rgba(247,241,231,0.93); backdrop-filter: blur(14px) saturate(140%); border-bottom: 1px solid rgba(41,37,34,0.10); color: #292522; }
#site-nav .nav-logo { filter: brightness(0) invert(1) drop-shadow(0 1px 8px rgba(41,37,34,0.5)); }
#site-nav.scrolled .nav-logo { filter: none; }

/* ===== Menu mobile ===== */
.mobile-menu-overlay.open { display: flex !important; }
