/* Colori e logo estratti dall'identità visiva ufficiale Sirio 7. */
:root {
  --acid: #EB4780;
  --display: "Playfair Display", sans-serif;
  --mono: "Playfair Display", sans-serif;
  --body: "Montserrat", sans-serif;
}

p,
.product-description,
.partner-note,
.form-status {
  font-family: var(--body);
}

h1,
h2,
h3,
.product-name,
.hero h1 em,
.partner h2 em {
  font-style: italic;
}

/* Superfici scure del sito. Il testo mantiene il suo colore originale. */
.section-dark,
.choice-grid input:checked + span,
.footer {
  background-color: #333333;
}

.choice-grid input:checked + span {
  border-color: #333333;
}

.brand {
  align-items: center;
  line-height: 1;
  position: static;
}

.brand-logo {
  display: block;
  height: auto;
  width: 151px;
}

.benefit-card.accent-card:hover {
  background: #f15182;
}

.benefit-card.accent-card p,
.benefit-card.accent-card .index {
  color: #171717;
}

.dark-link span {
  color: #b42151;
}

.form-honeypot {
  left: -9999px;
  position: absolute;
}

.partner-form .button:disabled {
  cursor: wait;
  opacity: .7;
  transform: none;
}

/* Hero fotografico: il lato sinistro conserva il contrasto per titolo e CTA. */
.hero {
  background-color: #333333;
  background-image:
    linear-gradient(90deg, rgba(51, 51, 51, .88) 0%, rgba(51, 51, 51, .73) 42%, rgba(51, 51, 51, .16) 73%, rgba(51, 51, 51, .06) 100%),
    linear-gradient(0deg, rgba(51, 51, 51, .46), transparent 48%),
    url('../assets/hero-tapparella-custom.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.hero-panel {
  display: none;
}

.hero-grid {
  opacity: .48;
}

.audiences {
  background: var(--mist);
}

.audiences-heading h2 {
  font-size: 54px;
  letter-spacing: -3.2px;
  line-height: .98;
  margin: 0;
}

.audience-grid {
  border-top: 1px solid var(--line);
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 72px;
}

.audience-card {
  border-bottom: 1px solid var(--line);
  border-right: 1px solid var(--line);
  min-height: 220px;
  padding: 28px;
}

.audience-card:last-child {
  border-right: 0;
}

.audience-card h3 {
  font-size: 19px;
  letter-spacing: -.8px;
  line-height: 1.1;
  margin: 0 0 16px;
}

.audience-card p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.55;
  margin: 0;
}

.audience-note {
  font-size: 24px;
  font-weight: 700;
  letter-spacing: -1px;
  margin: 34px 0 0;
}

@media (max-width: 800px) {
  .hero {
    background-position: 65% center;
  }

  .audiences-heading h2 {
    font-size: 43px;
    letter-spacing: -2.8px;
  }

  .audience-grid {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 54px;
  }

  .audience-card:nth-child(2) {
    border-right: 0;
  }

  .audience-card:nth-child(3) {
    border-right: 1px solid var(--line);
  }
}

@media (max-width: 460px) {
  .audience-grid {
    grid-template-columns: 1fr;
  }

  .audience-card,
  .audience-card:nth-child(3) {
    border-right: 0;
    min-height: 0;
  }
}

/* Foto prodotto per il blocco Configurazioni su richiesta. */
.support-visual {
  background-color: #deded8;
  background-image:
    linear-gradient(0deg, rgba(245, 244, 239, .96) 0%, rgba(245, 244, 239, .78) 28%, rgba(245, 244, 239, .08) 63%),
    url('../assets/supporto-tapparella-custom.png');
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

.support-visual .technical-lines,
.support-visual .measure,
.support-visual::after {
  display: none;
}

.support-visual p {
  color: #171717;
}

.support-visual strong {
  color: #8d2049;
}
