/**
 * partner.css
 * Stili per partner.php (coerenti con global.css)
 */

.partner .partner-hero{
  padding: 96px 0 64px;
}

.partner .partner-hero-grid{
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 32px;
  align-items: center;
}

.partner .partner-hero-grid > *{
  min-width: 0;
}

.partner .partner-hero-copy h1{
  margin: 0 0 14px;
  font-size: clamp(34px, 5vw, 62px);
  letter-spacing: -0.03em;
  line-height: 1.06;
}

.partner .partner-lead{
  margin: 0;
  max-width: 76ch;
  line-height: 1.7;
}

/* Box destra (logo + card) */
.partner .partner-hero-media{
  border: 1px solid var(--border);
  border-radius: calc(var(--radius) + 12px);
  background: rgba(255,255,255,.02);
  box-shadow: var(--shadow);
  overflow: hidden;
  padding: 18px;
  display: grid;
  gap: 14px;
}

.partner .partner-logo-wrap{
  border: 1px solid rgba(247,249,255,.10);
  background:
    radial-gradient(520px 220px at 30% 0%, rgba(240,138,34,.18), transparent 55%),
    rgba(255,255,255,.02);
  border-radius: calc(var(--radius) + 10px);
  padding: 18px;
  display: grid;
  place-items: center;
  min-height: 220px;
}

.partner .partner-logo-wrap img{
  width: min(340px, 100%);
  height: auto;
  object-fit: contain;
  opacity: .98;
}

.partner .partner-hero-card{
  border: 1px solid rgba(240,138,34,.25);
  background: rgba(240,138,34,.08);
  border-radius: calc(var(--radius) + 10px);
  box-shadow: 0 0 0 4px rgba(240,138,34,.06);
}

.partner .partner-hero-card-inner{
  padding: 14px;
  display: grid;
  gap: 10px;
}

.partner .partner-hero-card-title{
  margin: 0;
  font-weight: 900;
  letter-spacing: .02em;
}

.partner .partner-hero-card-text{
  margin: 0;
  line-height: 1.6;
}

/* Reasons + flow */
.partner .partner-reasons .card-pad,
.partner .partner-flow .card-pad{
  padding: 18px;
}

.partner .partner-cta-row{
  margin-top: 18px;
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
}

/* Contatti */
.partner .partner-contact-list p{
  margin: 10px 0 0;
  line-height: 1.6;
}

.partner .partner-map{
  margin-top: 12px;
}

.partner .partner-mini-info{
  margin-top: 14px;
  display: grid;
  gap: 12px;
}

/* Responsive */
@media (max-width: 980px){
  .partner .partner-hero{
    padding: 76px 0 46px;
  }

  .partner .partner-hero-grid{
    grid-template-columns: 1fr;
  }

  .partner .partner-logo-wrap{
    min-height: 200px;
  }
}