.header{
    position: fixed;
}

.hero {
    margin: 0;
    padding: 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100vh;
    overflow: hidden;
    color: #fff;
}

.hero-content h2{
    text-shadow: 2px 2px 5px rgba(0,0,0,0.9);
    font-size: 2rem;
}

.carousel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  min-height: 100%;
}

.carousel-item {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 1.5s ease-in-out;
}

.carousel-item.active {
  opacity: 1;
}

.carousel img {
  width: 100%;
  height: 100%;
  object-fit:cover;
}

.carousel-caption {
  position: absolute;
  bottom: 30%;
  left: 5%;
  font-size: 2rem;
  font-weight: bold;
  text-shadow: 2px 2px 5px rgba(0,0,0,1);
}

.hero-content {
  position: relative;
  text-align: center;
  z-index: 2;
  max-width: 650px;
  padding: 20px;
}

/* Scoped — SOLO para el hero de minicargadores (evita afectar otras páginas) */
#inicio .carousel,
#inicio .carousel-item {
  top: 0;               /* Asegura que el contenedor posicionado empiece en 0 */
  left: 0;
}

/* Fuerza que la imagen no deje espacio por ser inline, y que ocupe totalmente */
#inicio .carousel img {
  display: block;       /* elimina huecos por inline/line-height */
  margin: 0;
  padding: 0;
  /* evita desplazamientos por baseline vertical-align: top;  */
  width: 100%;
  height: 100%;
  object-fit: cover;
  top: 0;
  left: 0;
}

/* Por si acaso hay un line-height heredado creando hueco */
#inicio .carousel, 
#inicio .carousel img {
  line-height: 0;
}

/* Si el header está fixed y tapa la parte superior, compensa solo este héroe */
#inicio {
  /* Ajusta esta propiedad solo si la parte superior queda tapada
     Sustituye 100px por la altura real del header si es diferente */
  margin-top: 100px; 
}

/* ==========================
   SECCIÓN MINICARGADORES
=========================== */
.mini-section {
  margin-top: 120px;
  padding: 2rem 8%;
  color: var(--Negrocarbón);
}

/* Encabezado */
.mini-hero h1 {
  font-size: 2.8rem;
  color: var(--hmo-color);
  text-shadow: 2px 2px 5px rgba(0,0,0,1);
  text-align: center;
}

.mini-hero p {
  text-align: center;
  font-size: 1.3rem;
  font-weight: bold;
  color: var(--Grisacero);
  margin-bottom: 2rem;
}

/* Introducción */
.mini-intro {
  background: var(--white);
  padding: 2rem;
  border-radius: 15px;
  text-align: center;
  box-shadow: var(--shadow);
}

.mini-intro h2 {
  color: var(--hmo-color);
  font-size: 2rem;
  margin-bottom: 1rem;
}

.mini-intro p {
  color: var(--Negrocarbón);
  font-size: 1.1rem;
  margin-bottom: 1rem;
}

/* Imagen principal */
.mini-image {
  text-align: center;
  margin: 2rem 0;
}

.mini-image img {
  width: 100%;
  max-width: 750px;
  border-radius: 15px;
  object-fit: cover;
  box-shadow: var(--shadow);
  transition: transform .3s;
}

.mini-image img:hover {
  transform: scale(1.04);
}

/* Especificaciones */
.specs-container {
  text-align: center;
  margin-bottom: 2rem;
}

.specs-container h2 {
  color: var(--hmo-color);
  margin-bottom: 1rem;
}

.spec-list {
  list-style: none;
  font-size: 1.2rem;
  color: var(--Negrocarbón);
}

.check {
  color: var(--hmo-color);
  font-weight: bold;
  margin-right: 10px;
}

/* Condiciones de alquiler */
.rent-info {
  background: var(--Negrocarbón);
  color: var(--white);
  padding: 2rem;
  border-radius: 15px;
  margin: 2rem 0;
}

.rent-info h2 {
  color: var(--Amarilloconstrucción);
  margin-bottom: 1rem;
}

.rent-info ul li {
  margin: .6rem 0;
  font-size: 1.1rem;
}

/* ADITAMENTOS */
.aditamentos-section h2 {
  text-align: center;
  font-size: 2rem;
  margin-bottom: 2rem;
  color: var(--hmo-color);
}

.aditamentos-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px,1fr));
  gap: 1.5rem;
}

.aditamento-card {
  background: var(--white);
  padding: 1.5rem;
  border-radius: 12px;
  text-align: center;
  color: var(--Negrocarbón);
  box-shadow: var(--shadow);
  transition: transform .3s, box-shadow .3s;
}

.aditamento-card:hover {
  transform: translateY(-8px);
  box-shadow: 0 18px 36px rgba(16,24,32,0.25);
}

.aditamento-card img {
  width: 100%;
  height: 200px;
  object-fit: contain;
  margin-bottom: 1rem;
}

.aditamento-card h3 {
  font-size: 1.3rem;
  color: var(--hmo-color);
  margin-bottom: .5rem;
}
/* Cinta corporativa superior */
.mini-section {
  position: relative;
  overflow: hidden;
}
.mini-section::before {
  content: "";
  position: absolute;
  top: -40px;
  left: 0;
  width: 100%;
  height: 120px;
  background: linear-gradient(135deg, var(--hmo-color), #0a2650);
  transform: skewY(-3deg);
  z-index: -1;
}

/* Títulos más imponentes */
.mini-hero h1 {
  font-size: 3.4rem;
  font-weight: 900;
  letter-spacing: -2px;
  text-transform: uppercase;
}

/* Subtítulo más elegante */
.mini-hero p {
  font-size: 1.4rem;
  opacity: .9;
}

/* Scroll animations */
.fade-up {
  opacity: 0;
  transform: translateY(40px);
  transition: all .8s ease-out;
}
.fade-up.visible {
  opacity: 1;
  transform: translateY(0);
}

/* CTA corporativo 
.btn-cotizar {
  display: inline-block;
  margin-top: 1.5rem;
  padding: 14px 32px;
  background: var(--hmo-color);
  color: var(--white);
  font-weight: 600;
  border-radius: 50px;
  text-decoration: none;
  font-size: 1.2rem;
  transition: .3s;
}
.btn-cotizar:hover {
  background: #153f73;
  transform: scale(1.05);
}*/

/* Tarjetas aditamentos: efecto premium */
.aditamento-card {
  overflow: hidden;
  position: relative;
}
.aditamento-card img {
  transition: transform .45s ease, filter .4s;
}
.aditamento-card:hover img {
  transform: scale(1.15);
  filter: brightness(1.15);
}
.aditamento-card:hover p {
  opacity: 1;
}

/* Textos suavizados y más corporativos */
.spec-list li,
.rent-info ul li {
  font-size: 1.25rem;
  font-weight: 500;
}


/* RESPONSIVE */
@media(max-width: 768px) {
  .mini-hero h1{
    font-size: 1.8rem;
  } 
  .mini-intro h2 {
    color: var(--hmo-color);
    font-size: 1.2rem;
    margin-bottom: 1rem;
}  

.carousel-caption {
    position: absolute;
    bottom: 30%;
    left: 5%;
    font-size: 1.2rem;
    font-weight: bold;
    text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.9);

}
.span-title-dos {
    color: var(--hmo-color);
    font-size: 1.8rem;
    text-shadow: 3px 3px 6px rgba(0, 0, 0, 0.9);
}

.mini-hero p {
  color: var(--Negrocarbón);
    font-size: 1.2rem;
    opacity: .9;
}
}

