
/* Departamento Bella — compact responsive layout
   Conserva íntegramente los colores de la versión original. */

/* Espacios un poco más compactos */
.section,
.guest-moments,
.bella-experience,
.destination-section,
.directions-video,
.airbnb-reviews-luxury,
.contact-premium{
  padding-top:52px!important;
  padding-bottom:52px!important;
}
.section-head{margin-bottom:24px!important}
.section-head h2{font-size:clamp(2rem,4vw,3.7rem)!important;line-height:1.02!important}

/* Portada: solo geometría, sin modificar colores */
.hero{min-height:min(650px,82vh)!important}

/* Galería */
.gallery{gap:12px!important}
.gallery .photo{border-radius:14px!important;overflow:hidden!important}

/* Ubicación */
.location-card{border-radius:18px!important;overflow:hidden!important}
.map-wrap{min-height:390px!important}

/* TABLET */
@media (max-width:1024px){
  .section,.guest-moments,.bella-experience,.destination-section,.directions-video,.airbnb-reviews-luxury,.contact-premium{
    padding-top:42px!important;
    padding-bottom:42px!important;
  }
  .hero{min-height:620px!important}
  .booking-grid{grid-template-columns:1fr 1fr!important;gap:14px!important}
  .guide-layout{gap:18px!important}
  .location-card{grid-template-columns:42% 58%!important}
  .map-wrap{min-height:350px!important}
  .contact-panel{padding:22px!important}
  .gallery{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* MÓVIL */
@media (max-width:700px){
  .section,.guest-moments,.bella-experience,.destination-section,.directions-video,.airbnb-reviews-luxury,.contact-premium{
    padding:30px 16px!important;
  }
  .section-head{margin-bottom:18px!important}
  .section-head h2{font-size:clamp(2rem,10vw,3rem)!important}
  .hero{min-height:680px!important}
  .hero>img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:58% center!important;
  }
  .hero .hero-content,.hero-content{
    width:auto!important;
    max-width:none!important;
    margin:0 16px!important;
    padding-bottom:26px!important;
    align-self:flex-end!important;
  }
  .hero h1{font-size:clamp(2.8rem,13vw,4.3rem)!important;line-height:.96!important}
  .hero p{font-size:1rem!important;line-height:1.5!important}
  .hero .actions,.hero-actions{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
  }
  .hero .btn{width:100%!important;justify-content:center!important}
  .booking-grid{grid-template-columns:1fr!important}
  .booking-card{padding:20px!important}
  .availability-panel{padding:18px!important}
  .guide-layout{grid-template-columns:1fr!important}
  .guide-intro,.guide-list{padding:20px!important}
  .location-card{grid-template-columns:1fr!important}
  .location-card > div:first-child{padding:22px!important}
  .map-wrap{min-height:300px!important}
  .contact-panel{grid-template-columns:1fr!important;padding:18px!important}
  .contact-form{padding:16px!important}
  .form-row{grid-template-columns:1fr!important}
  .gallery{grid-template-columns:1fr!important;gap:10px!important}
  .gallery .photo{aspect-ratio:4/3!important}
  .faq-list details{padding:16px!important}
}
@media (max-width:390px){
  .hero h1{font-size:2.75rem!important}
  .section,.guest-moments,.contact-premium{
    padding-left:12px!important;
    padding-right:12px!important;
  }
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation:none!important;
    transition:none!important;
    scroll-behavior:auto!important;
  }
}

/* PORTADA VIDEO CORREGIDA */
.hero{position:relative!important;overflow:hidden!important}
.hero-bg-video{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;display:block!important;object-fit:cover!important;object-position:center!important;z-index:0!important;background:#0d292d!important}
.hero .bella-logo-portada,.hero .hero-shade,.hero .hero-content,.hero .scroll{z-index:2!important}
.hero .bella-logo-portada{position:absolute!important}
.hero .hero-shade{position:absolute!important}
@media(min-width:1100px){
 .hero{height:auto!important;min-height:0!important;aspect-ratio:16/9!important}
 .hero-bg-video{object-fit:contain!important}
}
@media(max-width:1099px){.hero-bg-video{object-fit:cover!important;object-position:center!important}}


/* AJUSTE MÓVIL/TABLET: sin línea residual del header y sin etiquetas en galería */
@media (max-width: 1100px){
  header, .site-header, .navbar, .nav, .topbar,
  header::before, header::after,
  .site-header::before, .site-header::after,
  .navbar::before, .navbar::after{
    border-bottom:0 !important;
    border-top:0 !important;
    box-shadow:none !important;
    outline:none !important;
  }

  #galeria #official-gallery-grid > .bella-space-photo > span,
  #galeria #official-gallery-grid > .official-managed-card > span,
  #galeria #official-gallery-grid .photo-label,
  #galeria .bella-space-photo .photo-label,
  #galeria .official-managed-card .photo-label{
    display:none !important;
    visibility:hidden !important;
    opacity:0 !important;
    height:0 !important;
    min-height:0 !important;
    max-height:0 !important;
    padding:0 !important;
    margin:0 !important;
    border:0 !important;
    overflow:hidden !important;
  }
}
