.partners-page {
  --partners-blue: #062f60;
  --partners-blue-light: #0a437d;
}

.partners-page .partners-main > section,
.partners-page .partners-footer {
  border-top: 0;
}

.partners-hero {
  padding-top: 86px;
  padding-bottom: 70px;
}

.partners-hero-frame {
  position: relative;
  height: min(86.4vh, 912px);
  min-height: 516px;
  overflow: hidden;
  border-radius: 22px;
  background:
    linear-gradient(90deg, rgba(0,0,0,.76) 0%, rgba(0,0,0,.5) 38%, rgba(0,0,0,.1) 70%, rgba(0,0,0,.04) 100%),
    url("./assets/images/patrick-mouratoglou-partners-hero.jpeg") 50% 50% / cover no-repeat;
}

.partners-hero-grid {
  display: none;
}

.partners-hero-grid span { border-left: 1px solid rgba(255,255,255,.18); }
.partners-hero-grid span:last-child { border-right: 1px solid rgba(255,255,255,.18); }

.partners-kicker {
  position: absolute;
  top: 42px;
  left: 42px;
  margin: 0;
  color: rgba(255,255,255,.65);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}

.partners-hero-tagline {
  position: absolute;
  left: 42px;
  bottom: 42px;
  max-width: 980px;
  margin: 0;
  font-size: var(--type-hero);
  font-weight: 900;
  line-height: .9;
  letter-spacing: -.055em;
  text-transform: uppercase;
}

.partners-belief,
.partners-impact,
.partner-stories {
  padding-top: 90px;
  padding-bottom: 100px;
}

.partners-split {
  display: grid;
  grid-template-columns: minmax(300px, 1fr) minmax(360px, 1fr);
  gap: clamp(50px, 8vw, 120px);
  align-items: start;
}

.partners-belief h2,
.partners-impact h2,
.partner-stories > h2 {
  margin: 0;
  font-size: var(--type-section-title);
  font-weight: 850;
  line-height: .92;
  letter-spacing: -.045em;
  text-transform: uppercase;
}

.partners-copy {
  max-width: 610px;
}

.partners-copy p {
  margin: 0 0 24px;
  font-size: 18px;
  line-height: 1.48;
}

.partners-overline {
  margin: 0 0 10px;
  color: var(--muted);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
}

.impact-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 4px;
  margin-top: 58px;
}

.impact-grid article {
  position: relative;
  min-height: 220px;
  overflow: hidden;
  padding: clamp(26px, 2.5vw, 34px);
  background: linear-gradient(145deg, #062d59, var(--blue));
}

.impact-grid article::after {
  content: "";
  position: absolute;
  right: -105px;
  bottom: -165px;
  width: 300px;
  height: 300px;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 50%;
}

.impact-grid strong {
  position: relative;
  z-index: 1;
  display: block;
  margin-bottom: 16px;
  font: 850 var(--type-number)/.9 var(--font-display);
  letter-spacing: -.055em;
}

.impact-grid p {
  position: relative;
  z-index: 1;
  max-width: 250px;
  margin: 0;
  font-family: var(--font-body);
  font-size: 16px;
  font-weight: 500;
  line-height: 1.4;
  text-transform: none;
}

.partner-story-list { margin-top: 58px; }

.partner-story {
  display: grid;
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
  gap: clamp(46px, 8vw, 120px);
  align-items: center;
  min-height: 310px;
  padding: 48px;
  background: #090909;
}

.partner-story:nth-child(even) { background: var(--blue); }
.partner-story + .partner-story { margin-top: 4px; }

.partner-story-logo {
  display: flex;
  height: 100px;
  align-items: center;
  justify-content: flex-start;
}

.partner-story-logo img {
  display: block;
  width: 100%;
  max-width: 330px;
  height: 100%;
  object-fit: contain;
  object-position: left center;
  opacity: .62;
}

.partner-story-logo img[src$="/asics.png"] {
  transform: scale(.82);
  transform-origin: left center;
}

.partner-story-copy h3 {
  margin: 0 0 20px;
  font-size: var(--type-card-title);
  font-weight: 800;
  line-height: 1;
  text-transform: uppercase;
}

.partner-story-copy p {
  max-width: 760px;
  margin: 0;
  font-size: 16px;
  line-height: 1.5;
}

.partners-contact {
  padding-top: 100px;
  padding-bottom: 70px;
}

.partners-contact .contact-heading p {
  max-width: 760px;
}

.partners-footer {
  max-width: 1250px;
  margin-top: 20px;
}

@media (max-width: 980px) {
  .partners-split { grid-template-columns: 1fr; gap: 44px; }
  .partners-copy { max-width: 760px; }
  .impact-grid { grid-template-columns: 1fr 1fr; }
  .impact-grid article:last-child { grid-column: 1 / -1; }
  .partner-story { grid-template-columns: 220px minmax(0, 1fr); gap: 44px; padding: 38px; }
}

@media (max-width: 760px) {
  .partners-hero { padding-top: 76px; padding-bottom: 42px; }
  .partners-hero-frame { height: 72vh; min-height: 540px; border-radius: 14px; background-position: 48% 50%; }
  .partners-kicker { top: 24px; left: 20px; }
  .partners-hero-tagline { left: 20px; bottom: 24px; font-size: clamp(36px, 10vw, 46px); }
  .partners-belief, .partners-impact, .partner-stories { padding-top: 36px; padding-bottom: 36px; }
  .partners-copy p { font-size: 16px; }
  .impact-grid { grid-template-columns: 1fr; margin-top: 28px; }
  .impact-grid article, .impact-grid article:last-child { grid-column: auto; min-height: 190px; }
  .partner-story-list { margin-top: 28px; }
  .partner-story { grid-template-columns: 1fr; gap: 30px; min-height: 0; padding: 30px 24px; }
  .partner-story-logo { height: 72px; }
  .partner-story-logo img { max-width: 250px; }
  .partner-story-copy p { font-size: 15px; }
  .partners-contact { padding-top: 36px; }
}
