:root { --heroH:72vh; } /* reduz ~10% */
@media (max-width: 900px){ :root { --heroH:65vh; } }

/* Altura do carrossel e overflow controlado */
.carousel, .carousel-inner, .hero, .hero-slider, .slider, .slides {
  height: var(--heroH) !important;
  overflow: hidden !important;
  width: 100% !important;
}

/* Item ocupa toda a área e centraliza conteúdo vertical */
.carousel-item, .slide {
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Imagens preenchem e cortam proporcionalmente */
.carousel-item img,
.slide img,
.slides img,
.hero img,
.slider img,
picture > img,
.carousel img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}

/* NÃO MEXE no menu. Só garante que o logo fique à esquerda e menu à direita */
header nav.navbar .navbar-brand,
.navbar .navbar-brand { margin-left: 0 !important; margin-right: auto !important; }
header nav.navbar ul, .navbar .navbar-nav { margin-left: auto !important; }

/* Título do hero à esquerda (reforço em CSS caso o tema permita) */
.hero h1, .banner h1, .masthead h1, .page-header h1,
.intro h1, .headline h1, .hero-section h1 {
  text-align: left !important;
}
