/* ==================================================
   ISOLATORI SISMICI — STILE UNIFORME AETOS
================================================== */

@import url("../../style.css");


body.project-detail{
  padding-top:0;
}


/* ==================================================
   SLIDESHOW COPERTINA
================================================== */

.project-hero{
  position:relative;
  overflow:hidden;
  background:#061831;
}

.project-hero .hero-slide{
  position:absolute;
  inset:0;
  z-index:0;

  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;

  opacity:0;
  transform:scale(1.07);

  transition:
    opacity 1.4s ease,
    transform 7s ease;
}

.project-hero .hero-slide.active{
  opacity:1;
  transform:scale(1);
}

.project-hero .hero-overlay{
  position:absolute;
  inset:0;
  z-index:1;

  background:linear-gradient(
    rgba(6,24,49,.15),
    rgba(6,24,49,.94)
  );
}

.project-hero-content{
  position:relative;
  z-index:2;
  max-width:1050px;
}

.hero-description{
  max-width:900px;
  color:#e5edf5;
  font-size:21px;
}


/* ==================================================
   PULSANTI
================================================== */

.project-hero-buttons{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  flex-wrap:wrap;

  gap:18px;

  margin-top:35px;
}

.project-hero-buttons .btn{
  min-width:190px;
  text-align:center;
}


/* ==================================================
   DATI PRINCIPALI
================================================== */

.project-info{
  grid-template-columns:repeat(3,1fr);
}


/* ==================================================
   NUMERI
================================================== */

.numbers{
  display:grid;
  grid-template-columns:repeat(4,1fr);

  gap:20px;

  margin-top:40px;
  padding:0;

  background:transparent;
}

.numbers article{
  padding:27px;

  background:#f4f6f8;

  border-radius:14px;

  text-align:center;
}

.numbers strong{
  display:block;

  margin-bottom:8px;

  color:#075f8f;

  font-size:34px;
}

.numbers span{
  color:#637084;

  font-weight:700;
}


/* ==================================================
   COLONNE TECNICHE
================================================== */

.project-columns article{
  padding:30px;

  background:rgba(255,255,255,.07);

  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
}

.project-columns h3{
  margin-bottom:12px;

  color:#8fd3ff;

  font-size:23px;
}

.project-columns p{
  color:#d8e3ee;
}


/* ==================================================
   ATTIVITÀ
================================================== */

.activities{
  max-width:1100px;

  margin-top:40px;
}

.activities article{
  display:grid;
  grid-template-columns:70px 1fr;

  gap:20px;

  padding:25px 0;

  border-bottom:1px solid #d8dfe7;
}

.activities > article > span{
  color:#075f8f;

  font-size:28px;
  font-weight:900;
}

.activities h3{
  margin-bottom:5px;

  color:#061831;

  font-size:23px;
}

.activities p{
  color:#637084;
}


/* ==================================================
   GALLERIA
================================================== */

.gallery-section{
  background:#f7f8fa;
}


.gallery{
  display:grid;

  grid-template-columns:repeat(2, minmax(0,1fr));

  gap:24px;

  margin-top:35px;
}


.gallery figure{
  margin:0;

  overflow:hidden;

  background:#ffffff;

  border-radius:14px;

  box-shadow:0 12px 35px rgba(6,24,49,.10);

  cursor:zoom-in;
}


.gallery figure.large{
  grid-column:1 / -1;
}


/* FOTO NORMALI */

.gallery img{
  display:block;

  width:100%;
  height:430px;

  object-fit:cover;
  object-position:center;

  background:#ffffff;

  transition:transform .35s ease;
}


.gallery figure.large img{
  height:580px;
}


.gallery figure:hover img{
  transform:scale(1.015);
}


.gallery figcaption{
  padding:18px 20px;

  color:#364156;

  font-weight:700;

  border-top:1px solid #e1e6eb;
}


/* ==================================================
   IMMAGINI TECNICHE FEM
   Nessun ritaglio
================================================== */

.gallery figure.technical-image{
  display:flex;

  flex-direction:column;

  justify-content:space-between;

  background:#ffffff;
}


.gallery figure.technical-image img{
  display:block;

  width:100%;
  height:500px;

  object-fit:contain !important;
  object-position:center;

  padding:18px;

  background:#ffffff;
}


/* ==================================================
   TABLET
================================================== */

@media(max-width:900px){

  .gallery{
    grid-template-columns:1fr;
  }


  .gallery figure.large{
    grid-column:auto;
  }


  .gallery img,
  .gallery figure.large img{
    height:auto;
    max-height:600px;
  }


  .gallery figure.technical-image img{
    height:auto;

    max-height:none;

    object-fit:contain !important;
  }

}

/* ==================================================
   RISULTATO
================================================== */

.result{
  color:#ffffff;

  background:linear-gradient(
    135deg,
    #0875a5,
    #061831
  );
}

.result h2{
  color:#ffffff;
}

.result > p{
  color:#e1ebf1;
}


/* ==================================================
   ANIMAZIONI
================================================== */

.reveal{
  opacity:0;

  transform:translateY(35px);

  transition:
    opacity .8s ease,
    transform .8s ease;
}

.reveal.visible{
  opacity:1;

  transform:none;
}


/* ==================================================
   TABLET
================================================== */

@media(max-width:900px){

  .project-info{
    grid-template-columns:repeat(2,1fr);
  }

  .numbers{
    grid-template-columns:repeat(2,1fr);
  }

}


/* ==================================================
   TELEFONO
================================================== */

@media(max-width:600px){

  .project-info,
  .numbers,
  .gallery{
    grid-template-columns:1fr;
  }

  .gallery figure.large{
    grid-column:auto;
  }

  .gallery img,
  .gallery figure.large img{
    height:auto;
    max-height:500px;
  }

  .activities article{
    grid-template-columns:50px 1fr;
    gap:14px;
  }

  .project-hero-buttons{
    flex-direction:column;
    align-items:stretch;

    width:100%;
  }

  .project-hero-buttons .btn{
    width:100%;
    min-width:0;
  }

}
/* ==================================================
   CORREZIONE IMMAGINI TECNICHE FEM
   Visualizzazione completa senza ritaglio
================================================== */

.gallery figure.technical-image{
  overflow:hidden;
  background:#ffffff;
}

.gallery figure.technical-image img{
  display:block;

  width:100%;
  height:auto !important;
  max-height:none !important;

  object-fit:contain !important;
  object-position:center;

  padding:12px;

  background:#ffffff;
}


/* immagini FEM a tutta larghezza */

.gallery figure.large.technical-image{
  grid-column:1 / -1;
}

.gallery figure.large.technical-image img{
  width:100%;
  height:auto !important;
  max-height:none !important;

  object-fit:contain !important;
}


/* MOBILE */

@media(max-width:900px){

  .gallery figure.large.technical-image{
    grid-column:auto;
  }

  .gallery figure.technical-image img,
  .gallery figure.large.technical-image img{
    width:100%;
    height:auto !important;
    max-height:none !important;
  }

}