/* PARTNERS HERO (two-column: text + image) */
.partners-hero{
  min-height:100vh;
  display:grid;
  grid-template-columns:1fr 1fr;
  align-items:center;
  gap:60px;
  padding-top:140px;
}

.partners-hero-content h1{
  margin-bottom:24px;
}

.partners-hero-content p{
  max-width:620px;
  margin-bottom:32px;
}

.partners-hero-image img{
  width:100%;
  height:auto;
  display:block;
  border-radius:24px;
  box-shadow:var(--shadow-xl);
}

/* PARTNERS GRID SECTION */
#partners-grid{
  padding:100px 24px;
}

#partners-grid .section-header{
  margin-bottom:50px;
}

/* Centered flex so 5 cards balance (3 on top, 2 centered below)
   instead of leaving an orphan in the last row */
.partners-grid{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:24px;
  max-width:1080px;
  margin:0 auto;
}

.partner-card{
  flex:0 1 320px;
  background:var(--bg-card);
  border:1px solid var(--border-color);
  border-radius:24px;
  padding:36px 28px;
  text-align:center;
  transition:.3s ease;
}

.partner-card:hover{
  transform:translateY(-6px);
  border-color:var(--primary);
}

.partner-card svg{
  width:40px;
  height:40px;
  color:var(--primary);
  margin-bottom:18px;
}

.partner-card h3{
  color:#fff;
  margin-bottom:12px;
}

.partner-card p{
  color:var(--text-secondary);
  line-height:1.6;
}

/* PARTNER CTA */
.partner-cta{
  text-align:center;
  padding:100px 24px;
  background:var(--primary);
  color:#000;
}

.partner-cta h2{
  max-width:760px;
  margin:0 auto 16px;
}

.partner-cta p{
  color:#111;
  max-width:620px;
  margin:0 auto 30px;
}

.partner-cta .btn-primary{
  background:#000;
  color:#fff;
}

.partner-cta .btn-primary:hover{
  background:#111;
}

/* RESPONSIVE */
@media(max-width:1024px){
  .partners-hero{
    grid-template-columns:1fr;
  }
}

@media(max-width:768px){
  .partners-hero{
    min-height:auto;
    padding-top:120px;
  }

  #partners-grid,
  .partner-cta{
    padding:70px 20px;
  }
}