/* Gruppo "azienda": pronto-intervento.html + azienda.html — regole specifiche */

/* ---------- Pronto intervento ---------- */
.pi-hero .hero-media {
  max-width: 520px;
}

.pi-hero .hero-media [data-art] {
  filter: drop-shadow(0 30px 60px rgba(10, 102, 214, 0.35));
}

.pi-hero .hero-actions .link-arrow {
  align-self: center;
}

.pi-stats .stats {
  gap: 24px;
}

.pi-split .list-check {
  margin-top: 28px;
}

.pi-cta .hero-actions {
  margin-top: 36px;
}

.pi-cta .cta-note {
  margin-top: 24px;
  font-size: 15px;
  color: var(--text-inv-2);
}

.pi-cta .cta-note a {
  color: #2997ff;
}

/* ---------- Azienda ---------- */
.az-hero .hero-content {
  max-width: 760px;
}

.az-story .lead + .lead {
  margin-top: 16px;
}

.az-tech {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 24px;
  align-items: center;
  margin-top: clamp(40px, 6vw, 64px);
  padding: 28px 32px;
}

.az-tech h3 {
  margin-bottom: 4px;
}

.az-tech p {
  color: var(--text-2);
}

.az-fleet .card-dark {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 32px;
}

.az-fleet .card-dark [data-art] {
  width: 120px;
  margin-bottom: 8px;
}

.az-fleet .card-dark p {
  color: var(--text-inv-2);
  flex: 1;
}

.az-fleet .card-dark .link-arrow {
  margin-top: 8px;
}

.az-office {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 14px;
}

.az-office .az-label {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--text-2);
}

.az-address {
  font-style: normal;
  font-size: 21px;
  line-height: 1.3;
  letter-spacing: -0.01em;
  font-weight: 600;
}

.az-office .list-plain {
  display: flex;
  flex-direction: column;
  gap: 6px;
  color: var(--text-2);
  font-size: 15px;
}

.az-office .list-plain .icon {
  width: 18px;
  height: 18px;
  margin-right: 8px;
  vertical-align: -0.2em;
  color: var(--accent);
}

.az-office .link-arrow {
  margin-top: auto;
}

.az-brands .brand-row {
  margin-top: 48px;
}

.az-cta .hero-actions {
  margin-top: 36px;
}

.az-cta .btn-ghost {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.6);
}

/* ---------- Responsive ---------- */
@media (max-width: 834px) {
  .az-tech {
    grid-template-columns: minmax(0, 1fr);
    text-align: left;
  }

  .az-fleet .card-dark {
    padding: 28px;
  }
}

@media (max-width: 480px) {
  .pi-hero .hero-actions .link-arrow {
    width: 100%;
    justify-content: center;
  }

  .az-address {
    font-size: 19px;
  }
}
