/* SEZIONE HERO */
.hero-banner {
  background-color: var(--bs-primary);
  height: 353px;
  display: flex;
  align-items: flex-start;
  position: relative;
  overflow: hidden;
}

/* Titolo */
.h1-hero {
  text-transform: uppercase !important;
  color: white !important;
  font-weight: 400 !important;
  position: relative;
  z-index: 2;
  word-wrap: break-word;
  overflow-wrap: break-word;
  white-space: normal;
}

/* Quadrato arancione allineato al bordo del container */
.hero-square {
  position: absolute;
  left: 0;
  top: 0;
  width: 120px;
  height: 120px;
  background-color: var(--bs-secondary);
  z-index: 1;
  transform: translateX(
    var(--px-vw-5, 5vw)
  ); /* stessa distanza del container */
}


/* Sezione certificazioni */
.certificazioni-section {
    margin: 0;
}

.certificazioni-section .col-12,
.certificazioni-section .col-md-6,
.certificazioni-section .col-lg-4 {
    padding: 0;
}

.certificazioni-section .card-wrapper {
    height: 100%;
}

.certificazioni-section .card {
    border: 1px solid #000;
    background: transparent;
    padding: 3rem 2rem;
    border-radius: 0;
    height: 100%;
    margin: 0;
}

/* Rimuove i bordi doppi */
.certificazioni-section .col-12:not(:nth-child(-n+3)) .card {
    border-top: none;
}

.certificazioni-section .col-12:not(:nth-child(3n+1)) .card {
    border-left: none;
}

.certificazioni-section .card-image {
    width: 80px;
    height: 80px;
    margin-bottom: 1.5rem;
}

.certificazioni-section .card-image img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.certificazioni-section .contenitore-card {
    width: 100%;
}

.certificazioni-section .card-title {
    margin-bottom: 1.5rem;
}

/* Rimuove il gap di Bootstrap */
.certificazioni-section.row {
    --bs-gutter-x: 0;
    --bs-gutter-y: 0;
}

/* Responsive - Mobile */
@media (max-width: 767px) {
    .certificazioni-section .col-12 .card {
        border-left: 1px solid #000 !important;
    }
    
    .certificazioni-section .col-12:not(:first-child) .card {
        border-top: none;
    }
    
    .certificazioni-section .card {
        padding: 2rem 1.5rem;
    }
    
    .certificazioni-section .card-image {
        width: 60px;
        height: 60px;
    }
}

/* Responsive - Tablet */
@media (min-width: 768px) and (max-width: 991px) {
    .certificazioni-section .col-md-6:nth-child(odd) .card {
        border-left: 1px solid #000 !important;
    }
    
    .certificazioni-section .col-md-6:nth-child(n+3) .card {
        border-top: none;
    }
}