/* Five types of heritage share the petrol-green brand background. */
.audiences-section {
  padding: 94px 0 106px;
  background: radial-gradient(ellipse at 85% 0%, #44a2be1a, transparent 65%), linear-gradient(120deg, #0b3532, #154d46);
  color: #f1f6f8;
}
.audiences-inner {
  width: min(1800px, 100%);
  padding-left: clamp(30px, 4vw, 76px);
  padding-right: clamp(30px, 4vw, 76px);
}
.audiences-section h2 {
  margin: 0 auto;
  max-width: 900px;
  font-size: clamp(34px, 3.2vw, 50px);
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -.035em;
  text-align: center;
}
.audiences-grid { display: grid; grid-template-columns: repeat(10, minmax(0, 1fr)); align-items: start; gap: 28px; margin-top: 60px; }
.audience-card { grid-column: span 2; min-width: 0; }
.audience-illustration { aspect-ratio: 1; margin-bottom: 18px; border-radius: 12px; overflow: hidden; background: radial-gradient(ellipse at 45% 32%, #fbfdfe, #e7f0f5); box-shadow: inset 0 0 0 1px rgba(196,220,232,.45); }
.audience-illustration img { display: block; width: 100%; height: 100%; object-fit: contain; }
.audience-card h3 { display: flex; align-items: flex-end; min-height: 2.6em; margin-bottom: 18px; font-size: clamp(20px, 1.5vw, 25px); font-weight: 600; line-height: 1.3; letter-spacing: -.025em; }
.audience-organizations { min-height: 3.3em; margin-top: 10px; color: #abc1c9; font-size: 13px; font-weight: 400; line-height: 1.65; }
.audience-context { margin-top: 10px; color: #e0edf2; font-size: 14px; font-weight: 500; line-height: 1.8; }

@media (min-width: 1000px) and (max-width: 1439px) {
  .audiences-grid { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 44px 28px; }
  .audience-card:nth-child(4) { grid-column: 2 / span 2; }
  .audience-card:nth-child(5) { grid-column: 4 / span 2; }
  .audience-illustration { aspect-ratio: 4 / 3; }
  .audience-card h3 { font-size: 25px; }
}

@media (min-width: 681px) and (max-width: 999px) {
  .audiences-section { padding: 80px 0 90px; }
  .audiences-inner { padding-left: 30px; padding-right: 30px; }
  .audiences-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 42px 28px; margin-top: 48px; }
  .audience-card:last-child { grid-column: 2 / span 2; }
  .audience-illustration { aspect-ratio: 4 / 3; }
  .audience-card h3 { font-size: 25px; }
}

@media (max-width: 680px) {
  .audiences-section { padding: 65px 0 72px; }
  .audiences-inner { padding-left: 21px; padding-right: 21px; }
  .audiences-section h2 { font-size: clamp(29px, 7.4vw, 37px); }
  .audiences-grid { grid-template-columns: minmax(0, 1fr); gap: 38px; margin: 38px auto 0; max-width: 440px; }
  .audience-card { grid-column: auto; }
  .audience-illustration { aspect-ratio: 4 / 3; }
  .audience-card h3 { display: block; min-height: 0; margin-bottom: 16px; font-size: 25px; }
  .audience-organizations { min-height: 0; }
}
