/* 🔹 HERO */
.hero {
    position: relative;
    height: 100vh;
    background: url('../img/img25.webp') center center / cover no-repeat fixed;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
}
.hero .overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(to bottom right, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.6));
    z-index: 1;
}
.hero-content {
    position: relative;
    z-index: 2;
    padding: 0 1rem;
}
.hero-title {
    font-size: 4rem;
    line-height: 1.1;
}
.hero-subtitle {
    font-size: 2rem;
    font-weight: 600;
}

/* 🔹 Secció 2 de Manteniment */
.sec2-reg {
  background-color: white;
  scroll-margin-top: 80px;
}

.sec2-reg .reg-img {
  width: 100%; min-height: 400px;
  background: url('../img/img26.webp') center center / cover no-repeat;
  border-radius: 12px; box-shadow: var(--shadow-soft);
}

.sec2-reg h2 {
  font-size: 3rem;
  color: var(--verd-clar);
  margin-bottom: 1rem;
  font-weight: 700;
}

.sec2-reg p,
.sec2-reg li {
  font-size: 1.5rem;
  color: var(--marro);
}

.sec2-reg ul li {
  margin-bottom: 0.75rem;
}

/* 🔹 SEC3-REG */
.sec3-reg h2 {
  font-size: 3rem;
  color: var(--verd-clar);
}
.sec3-reg h3 {
  font-size: 2rem;
  margin-bottom: 2rem;
  font-weight: 400;
}

.sec3-reg li {
  font-size: 1.5rem;
  color: var(--marro);
}
.sec3-reg .card-reg {
  background-color: white; transition: transform .3s ease, box-shadow .3s ease;
  border: 1px solid var(--verd-clar);
  box-shadow: var(--shadow-soft)
}
.sec3-reg .card-reg:hover {
  transform: translateY(-5px); box-shadow: var(--shadow-green);
}
.sec3-reg .card-reg i {
    font-size: 3rem;
    color: var(--verd-clar);
}

.sec3-reg .card-reg h5 {
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: .75rem;
    
}
.sec3-reg .card-reg p {
     font-size: 1.2rem;
     color: var(--gris);
}


/* 🔹 SEC4 – Tipus de reg detallats */



.sec4 h2 {
  font-size: 2.5rem;
  color: var(--verd-clar);
  margin-bottom: .5rem;
}

.sec4 h3 {
  font-size: 1.8rem;
  color: var(--gris);
  margin-bottom: 1rem;
}

.sec4 p {
  font-size: 1.5rem;
  color: var(--marro);
  line-height: 1.6;
  margin-bottom: .75rem;
}

.sec4 .img-fluid {
  display: block;
  width: 100%;
  height: auto;
}


/* 🔹 SEC5 CTA final */

.sec5-cta {
  background: linear-gradient(rgba(0, 0, 0, 0.55), rgba(0, 0, 0, 0.25)),
              url('../img/img40.webp') center center / cover no-repeat;
  min-height: 800px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 4rem 1rem;
}

.sec5-cta h2 {
  font-size: 3rem;
  font-weight: 700;
}

.sec5-cta p {
  font-size: 2rem;
  font-weight: 500;
  color: var(--blanc);
}




@media (max-width: 575.98px) {
    .hero {
      background: url('../img/img25.webp') center center / cover no-repeat scroll;
      background-attachment: scroll;
      height: 100vh;
    }

    .hero-title {
        font-size: 2rem;
    }
    .hero-subtitle {
        font-size: 1.5rem;
    }

    /* 🔹 SEC2 */
    .sec2-reg h2 {
        font-size: 2rem;
    }

    .sec2-reg p,
    .sec2-reg li {
        font-size: 1.2rem;
    }

    /* 🔹 SEC3 */
    .sec3-reg h2 {
        font-size: 2rem;
    }
    .sec3-reg h3{
        font-size: 1.5rem;
    }
    .sec3-reg .card-reg h5 {
        font-size: 1.5rem;
    }
    .sec3-reg .card-reg p {
        font-size: 1.2rem;
    }
    
    /* 🔹 SEC4 */
    .sec4 h2 {
        font-size: 2rem;
    }
    .sec4 h3 {
        font-size: 1.5rem;
    }
    .sec4 p {
        font-size: 1.2rem;
    }

    /* 🔹 SEC5 */
    .sec5-cta h2 {
        font-size: 2rem;
    }

    .sec5-cta p {
        font-size: 1.5rem;
    }
}
