.sponsor-section {
  background: white;
  padding: clamp(44px, 6vw, 76px) clamp(18px, 6vw, 96px) clamp(90px, 14vw, 190px);
}

.sponsor-section .lead {
  width: min(1000px, 100%);
  margin: 0 auto clamp(56px, 7vw, 90px);
  text-align: center;
  font-size: clamp(1.35rem, 2.2vw, 2.25rem);
  line-height: 1.28;
}
.section-title {
  width: min(1160px, 100%);
  margin: 0 auto clamp(50px, 6vw, 72px);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: clamp(18px, 3vw, 50px);
}

.section-title span {
  height: 2px;
  background: #dfc487;
}

.section-title h1 {
  margin: 0;
  font-family: "Libre Baskerville", Georgia, serif;
  line-height: 1.1;
  text-align: center;
  font-size: clamp(2rem, 4vw, 3.8rem);
}

.benefits-grid {
  width: min(1320px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 2vw, 24px);
  align-items: stretch;
}

.benefit-card {
  min-height: clamp(255px, 20vw, 310px);
  padding: clamp(24px, 2.7vw, 38px) clamp(18px, 2vw, 26px);
  border: 1.5px solid #9c9c9c;
  border-radius: 8px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: white;
  box-shadow: 0 12px 28px rgba(0, 0, 0, .05);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.benefit-card:hover {
  border-color: var(--gold);
  box-shadow: 0 18px 36px rgba(92, 7, 17, .11);
  transform: translateY(-4px);
}

.benefit-card h2 {
  margin: 0 0 12px;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(1.45rem, 1.9vw, 2rem);
  line-height: 1.12;
  text-transform: uppercase;
}

.benefit-card p {
  margin: 0;
  font-size: clamp(.98rem, 1.12vw, 1.2rem);
  line-height: 1.32;
}

.benefit-icon {
  color: var(--brown);
  width: clamp(52px, 5vw, 72px);
  height: clamp(52px, 5vw, 72px);
  margin-bottom: clamp(16px, 2vw, 22px);
  fill: none;
  stroke: currentColor;
  stroke-width: 2.2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.sponsor-plan {
  width: min(430px, 100%);
  margin: clamp(36px, 5vw, 64px) auto 0;
}

.sponsor-price {
  min-height: 345px;
  padding: 50px 36px;
  border-radius: 12px;
  background: var(--brown-dark);
  color: white;
  text-align: center;
}

.sponsor-price h2 {
  margin: 0 auto 22px;
  padding: 10px 18px;
  background: var(--gold);
  font-family: "Archivo", Arial, sans-serif;
  font-size: clamp(1rem, 1.7vw, 1.55rem);
  text-transform: uppercase;
}

.sponsor-price p {
  margin: 0 0 12px;
  font-family: "Archivo", Arial, sans-serif;
  font-size: clamp(3rem, 5vw, 5rem);
  font-weight: 800;
  line-height: 1;
}

.sponsor-price span {
  display: block;
  margin-bottom: 26px;
  font-size: clamp(1rem, 1.3vw, 1.25rem);
}

.sponsor-price a {
  width: min(360px, 100%);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 64px;
  padding: 12px 28px;
  border: 0;
  background: var(--green);
  color: white;
  font-family: "Archivo", Arial, sans-serif;
  font-size: clamp(1.3rem, 2vw, 2rem);
  font-weight: 700;
  text-transform: uppercase;
  transition: transform .2s ease, filter .2s ease, box-shadow .2s ease;
}

.sponsor-price a:hover {
  transform: translateY(-2px);
  filter: brightness(1.04);
  box-shadow: 0 12px 26px rgba(4, 191, 101, .25);
}

.sponsor-price a {
  width: 100%;
  min-height: 60px;
  background: var(--gold);
  font-size: clamp(1rem, 1.5vw, 1.35rem);
}

@media (max-width: 980px) {
  .benefits-grid {
    width: min(760px, 100%);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 720px) {
  .sponsor-section {
    padding-left: 16px;
    padding-right: 16px;
  }

  .section-title {
    grid-template-columns: 1fr;
  }

  .section-title span {
    display: none;
  }

  .benefit-card {
    min-height: 240px;
  }
}

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