@font-face {
  font-family: "DM Serif Display";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/dm-serif-display-regular.ttf");
}
@font-face {
  font-family: "DM Serif Display";
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url("fonts/dm-serif-display-italic.ttf");
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("fonts/manrope-400.ttf");
}
@font-face {
  font-family: "Manrope";
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url("fonts/manrope-700.ttf");
}

/* Revisión de sistema: cada cabecera introduce una pista estructural y una composición propia. */
.page-intro {
  position: relative;
  overflow: hidden;
}
.page-intro__track {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.72;
}
.page-intro__track span {
  position: absolute;
  display: block;
  border-left: 1px dashed rgba(16, 32, 53, 0.25);
  height: 135%;
  top: -16%;
}
.page-intro__track span:after {
  content: "";
  position: absolute;
  left: -5px;
  top: 31%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--coral);
}
.page-intro__track span:nth-child(1) {
  left: 8%;
}
.page-intro__track span:nth-child(2) {
  left: 10.2%;
  border-color: rgba(16, 32, 53, 0.12);
}
.page-intro__track span:nth-child(2):after {
  top: 63%;
  background: #559260;
}
.page-intro__track span:nth-child(3) {
  right: 12%;
  left: auto;
  border-color: rgba(16, 32, 53, 0.17);
}
.page-intro__track span:nth-child(3):after {
  top: 17%;
  background: var(--coral);
}
.page-intro__grid {
  position: relative;
  z-index: 1;
}
.page-intro.page-intro--current {
  background: linear-gradient(
    100deg,
    #fffdf9 0%,
    #fffdf9 69%,
    #e9e1d6 69%,
    #e9e1d6 100%
  );
}
.page-intro--current .page-intro__grid {
  grid-template-columns: 0.36fr 1.25fr 0.5fr;
}
.page-intro--current h1 {
  max-width: 660px;
  transform: translateX(5.5vw);
}
.page-intro--current .page-intro__aside {
  padding: 18px 0 8px;
  border-left: 3px solid var(--coral);
}
.page-intro.page-intro--athletes {
  background: linear-gradient(
    110deg,
    #fffdf9 0%,
    #fffdf9 54%,
    #d7e4dc 54%,
    #d7e4dc 100%
  );
}
.page-intro--athletes .page-intro__grid {
  grid-template-columns: 0.48fr 1.13fr 0.7fr;
}
.page-intro--athletes .page-intro__aside {
  align-self: stretch;
  align-items: flex-end;
  border-left: 1px solid rgba(16, 32, 53, 0.24);
  padding: 0 0 10px 22px;
}
.page-intro--athletes .intro-stat {
  font-size: 81px;
}
.page-intro.page-intro--agenda {
  background: #edf3ee;
}
.page-intro--agenda .page-intro__track span:nth-child(1):after,
.page-intro--agenda .page-intro__track span:nth-child(3):after {
  background: #559260;
}
.page-intro--agenda .section-kicker,
.page-intro--agenda .intro-stat {
  color: #427d4d;
}
.page-intro--agenda .kicker-line {
  border-color: #559260;
}
.page-intro--agenda .page-intro__aside {
  border-left: 3px solid #559260;
  padding-left: 14px;
}
.page-intro.page-intro--disciplines {
  background: linear-gradient(
    90deg,
    #fffdf9 0%,
    #fffdf9 76%,
    #102035 76%,
    #102035 100%
  );
  color: var(--ink);
}
.page-intro--disciplines .page-intro__track span:nth-child(3) {
  border-color: rgba(255, 255, 255, 0.45);
}
.page-intro--disciplines .page-intro__track span:nth-child(3):after {
  background: var(--coral);
}
.page-intro--disciplines .page-intro__aside {
  color: var(--white);
  border-left: 1px dashed rgba(255, 255, 255, 0.5);
  padding-left: 15px;
}
.profile-hero {
  position: relative;
  overflow: hidden;
}
.profile-hero:before {
  content: "";
  position: absolute;
  z-index: 0;
  width: 500px;
  height: 500px;
  border: 1px dashed rgba(255, 255, 255, 0.27);
  border-radius: 50%;
  left: -310px;
  bottom: -270px;
}
.profile-hero:after {
  content: "";
  position: absolute;
  z-index: 0;
  height: 82%;
  left: 8.2%;
  top: 18%;
  border-left: 1px dashed rgba(255, 77, 61, 0.68);
}
.profile-hero .site-shell {
  position: relative;
  z-index: 1;
}
.sale-hero {
  position: relative;
}
.sale-hero:after {
  content: "01  ·  02  ·  03";
  position: absolute;
  left: 7%;
  bottom: 24px;
  color: rgba(255, 255, 255, 0.28);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.28em;
}
.sale-hero:before {
  content: "";
  position: absolute;
  left: 6%;
  bottom: 41px;
  width: 44%;
  border-top: 1px dashed rgba(255, 255, 255, 0.32);
}
.agenda-home .status {
  color: #427d4d;
}
.agenda-home .status--hot {
  color: var(--coral);
}
.agenda-event__status:before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #559260;
  box-shadow: 0 0 0 4px rgba(85, 146, 96, 0.16);
}
.agenda-event:hover .agenda-event__status:before {
  background: var(--coral);
  box-shadow: 0 0 0 4px rgba(255, 77, 61, 0.14);
}
@media (max-width: 720px) {
  .page-intro__track span:nth-child(1) {
    left: 5%;
  }
  .page-intro__track span:nth-child(2) {
    left: 8.4%;
  }
  .page-intro__track span:nth-child(3) {
    right: 5%;
  }
  .page-intro--current h1 {
    transform: none;
  }
  .page-intro.page-intro--current,
  .page-intro.page-intro--athletes,
  .page-intro.page-intro--disciplines {
    background: var(--white);
  }
  .page-intro--disciplines .page-intro__aside {
    display: none;
  }
  .sale-hero:after,
  .sale-hero:before {
    display: none;
  }
}

:root {
  --ink: #102035;
  --paper: #f4f0e9;
  --white: #fffdf9;
  --coral: #ff4d3d;
  --sage: #d7e4dc;
  --sand: #e5ded3;
  --muted: #57606e;
  --line: #d9d3c9;
}
* {
  box-sizing: border-box;
}
html {
  scroll-behavior: smooth;
}
body {
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: Manrope, sans-serif;
  overflow-x: hidden;
}
a {
  color: inherit;
  text-decoration: none;
}
button {
  font: inherit;
  cursor: pointer;
}
img {
  display: block;
  max-width: 100%;
}
h1,
h2,
h3,
p {
  margin: 0;
}
h1,
h2,
h3 {
  text-wrap: balance;
}
.site-shell {
  width: min(1216px, calc(100% - 48px));
  margin: 0 auto;
}
.eyebrow,
.section-kicker {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.16em;
  line-height: 1.2;
  text-transform: uppercase;
}
.section-space {
  padding: 110px 0;
}
.sale-strip {
  background: var(--coral);
  color: var(--white);
  font-size: 11px;
}
.sale-strip__inner {
  min-height: 36px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 20px;
}
.sale-strip a {
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
  white-space: nowrap;
}
.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
  background: rgba(244, 240, 233, 0.94);
  border-bottom: 1px solid rgba(16, 32, 53, 0.14);
  backdrop-filter: blur(14px);
}
.header-row {
  height: 74px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 28px;
}
.brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  flex-shrink: 0;
}
.brand-mark {
  width: 51px;
  height: 51px;
  object-fit: contain;
}
.brand-name {
  font-family: "DM Serif Display", serif;
  font-size: 44px;
  line-height: 0.8;
  letter-spacing: -0.055em;
}
.brand-name span {
  color: var(--coral);
}
.desktop-nav {
  display: flex;
  align-items: stretch;
  gap: clamp(16px, 2.3vw, 34px);
  align-self: stretch;
}
.desktop-nav a {
  position: relative;
  display: grid;
  place-items: center;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.03em;
  white-space: nowrap;
}
.desktop-nav a:after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 3px;
  background: var(--coral);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.18s cubic-bezier(0.23, 1, 0.32, 1);
}
.desktop-nav a:hover:after,
.desktop-nav .is-active:after {
  transform: scaleX(1);
}
.header-actions {
  display: flex;
  align-items: center;
  gap: 13px;
}
.icon-button {
  width: 38px;
  height: 38px;
  border: 1px solid rgba(16, 32, 53, 0.24);
  background: transparent;
  color: var(--ink);
  display: grid;
  place-items: center;
  transition: 0.16s;
}
.icon-button:hover {
  background: var(--ink);
  color: var(--white);
}
.pill-button,
.primary-action,
.secondary-action,
.newsletter-button,
.contact-panel__button {
  display: inline-flex;
  gap: 11px;
  align-items: center;
  justify-content: center;
  background: var(--ink);
  color: var(--white);
  padding: 13px 17px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.025em;
  transition:
    transform 0.16s ease-out,
    background 0.16s ease-out;
}
.pill-button:hover,
.primary-action:hover,
.newsletter-button:hover,
.contact-panel__button:hover {
  background: var(--coral);
}
.pill-button span {
  color: var(--coral);
  font-size: 18px;
  line-height: 0;
}
.mobile-toggle {
  display: none;
}
.mobile-menu {
  display: none;
  position: fixed;
  inset: 110px 0 0;
  z-index: 45;
  min-height: calc(100vh - 110px);
  background: var(--ink);
  color: var(--white);
  padding: 30px 24px;
}
.mobile-menu.is-open {
  display: block;
}
.mobile-menu nav {
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.mobile-menu nav a {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 19px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
  font-family: "DM Serif Display", serif;
  font-size: 31px;
}
.mobile-menu nav a span {
  color: var(--coral);
  font-family: Manrope, sans-serif;
  font-size: 10px;
  font-weight: 800;
}
.mobile-menu nav a b {
  margin-left: auto;
  color: var(--coral);
}
.mobile-sale {
  display: block;
  margin-top: 30px;
  color: var(--coral);
  font-size: 12px;
  font-weight: 800;
}
.home-hero {
  position: relative;
  min-height: min(690px, calc(100vh - 110px));
  color: var(--white);
  overflow: hidden;
}
.home-hero__image,
.home-hero__shade {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.home-hero__image {
  object-fit: cover;
}
.home-hero__shade {
  background: linear-gradient(
    90deg,
    rgba(9, 22, 41, 0.9) 0%,
    rgba(9, 22, 41, 0.7) 34%,
    rgba(9, 22, 41, 0.15) 68%,
    rgba(9, 22, 41, 0.24)
  );
}
.home-hero__content {
  position: relative;
  z-index: 1;
  padding-top: clamp(88px, 12vw, 150px);
}
.hero-ribbon {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  color: #e7ded2;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.15em;
}
.live-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--coral);
  box-shadow: 0 0 0 5px rgba(255, 77, 61, 0.22);
}
.home-hero h1 {
  margin-top: 21px;
  max-width: 790px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(57px, 7.2vw, 103px);
  font-weight: 400;
  letter-spacing: -0.065em;
  line-height: 0.88;
}
.home-hero h1 em {
  color: #f7ecdf;
  font-weight: inherit;
}
.home-hero__content > p {
  margin-top: 27px;
  max-width: 440px;
  color: #e7ded2;
  font-size: 15px;
  line-height: 1.65;
}
.hero-actions {
  display: flex;
  gap: 15px;
  margin-top: 32px;
}
.primary-action {
  background: var(--coral);
  padding: 15px 20px;
}
.primary-action:hover {
  background: var(--white);
  color: var(--ink);
}
.ghost-action {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.55);
  padding: 0 0 4px;
  font-size: 11px;
  font-weight: 800;
}
.ghost-action span {
  color: var(--coral);
  font-size: 20px;
}
.hero-track-number {
  position: absolute;
  z-index: 1;
  right: 3vw;
  bottom: 58px;
  color: rgba(255, 255, 255, 0.2);
  font-family: "DM Serif Display", serif;
  font-size: clamp(150px, 22vw, 325px);
  letter-spacing: -0.1em;
  line-height: 0.65;
}
.hero-bottom {
  position: absolute;
  z-index: 2;
  left: 50%;
  bottom: 23px;
  transform: translateX(-50%);
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  color: #e7ded2;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.13em;
}
.hero-bottom span:nth-child(2) {
  text-align: center;
}
.hero-scroll {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 9px;
}
.hero-scroll i {
  display: block;
  height: 27px;
  border-left: 1px solid var(--coral);
}
.ticker-section {
  border-bottom: 1px solid var(--line);
  background: var(--white);
}
.ticker {
  min-height: 66px;
  display: grid;
  grid-template-columns: 175px 1fr auto;
  align-items: center;
  gap: 16px;
}
.ticker__label {
  display: flex;
  gap: 7px;
  align-items: center;
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.13em;
}
.ticker p {
  font-size: 12px;
}
.ticker a {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  font-size: 11px;
  font-weight: 800;
}
.section-heading {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 42px;
}
.section-heading h2,
.agenda-home h2,
.athlete-home h2,
.newsletter-section h2,
.feature-quote h2,
.season-header h2 {
  margin-top: 10px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(39px, 4.6vw, 61px);
  font-weight: 400;
  letter-spacing: -0.055em;
  line-height: 0.96;
}
h1 em,
h2 em {
  color: var(--coral);
  font-weight: inherit;
}
.text-link {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 5px;
  font-size: 11px;
  font-weight: 800;
}
.text-link span {
  color: var(--coral);
  font-size: 17px;
}
.news-layout {
  display: grid;
  grid-template-columns: 1.24fr 0.85fr 0.79fr;
  gap: 27px;
}
.story-card {
  border-top: 1px solid var(--ink);
  padding-top: 13px;
}
.story-image {
  display: block;
  position: relative;
  aspect-ratio: 1.55;
  overflow: hidden;
  margin-bottom: 15px;
}
.story-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.35s cubic-bezier(0.23, 1, 0.32, 1);
}
.story-card:hover .story-image img {
  transform: scale(1.035);
}
.story-image__line {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 5px;
  background: var(--coral);
  transform: scaleX(0.28);
  transform-origin: left;
  transition: transform 0.24s cubic-bezier(0.23, 1, 0.32, 1);
}
.story-card:hover .story-image__line {
  transform: scaleX(1);
}
.story-meta {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: #6b7180;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}
.story-meta span {
  color: var(--coral);
}
.story-card h3 {
  margin-top: 9px;
  font-family: "DM Serif Display", serif;
  font-size: 25px;
  font-weight: 400;
  letter-spacing: -0.035em;
  line-height: 1.03;
}
.story-card--featured h3 {
  font-size: 34px;
}
.story-card p {
  margin-top: 11px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.63;
}
.story-stack {
  display: grid;
  gap: 27px;
}
.story-stack .story-card {
  display: grid;
  grid-template-columns: 120px 1fr;
  column-gap: 14px;
}
.story-stack .story-image {
  grid-row: span 3;
  aspect-ratio: 0.9;
  margin: 0;
}
.story-stack .story-card h3 {
  font-size: 21px;
}
.story-stack .story-card p {
  display: none;
}
.briefs-panel {
  background: var(--ink);
  color: var(--white);
  padding: 25px 21px 12px;
  align-self: start;
}
.brief-item {
  display: grid;
  grid-template-columns: 25px 1fr 16px;
  gap: 9px;
  align-items: start;
  padding: 21px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.23);
}
.brief-item > span {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.brief-item small {
  color: #aeb6c1;
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.06em;
}
.brief-item strong {
  display: block;
  margin-top: 5px;
  font-family: "DM Serif Display", serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.05;
}
.agenda-home {
  padding: 104px 0;
  background: var(--sage);
}
.agenda-home__top {
  display: grid;
  grid-template-columns: 1.1fr 0.72fr;
  gap: 110px;
  align-items: end;
}
.agenda-home__top > div:last-child > p {
  max-width: 365px;
  font-size: 14px;
  line-height: 1.6;
}
.secondary-action {
  margin-top: 23px;
  background: transparent;
  border: 1px solid var(--ink);
  color: var(--ink);
}
.secondary-action:hover {
  background: var(--ink);
  color: var(--white);
}
.event-rail {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 50px;
  border-top: 1px solid rgba(16, 32, 53, 0.4);
}
.event-card {
  position: relative;
  padding: 20px 17px 22px 0;
  min-height: 194px;
  border-right: 1px solid rgba(16, 32, 53, 0.4);
  transition: background 0.2s;
}
.event-card:not(:first-child) {
  padding-left: 17px;
}
.event-card:hover {
  background: rgba(255, 253, 249, 0.48);
}
.event-date {
  display: flex;
  align-items: baseline;
  gap: 5px;
}
.event-date span {
  font-family: "DM Serif Display", serif;
  font-size: 44px;
  letter-spacing: -0.06em;
}
.event-date small,
.event-card > div:nth-child(2) p {
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.12em;
}
.event-card h3 {
  margin: 18px 0 8px;
  max-width: 200px;
  font-size: 14px;
  line-height: 1.35;
}
.event-card small {
  display: flex;
  align-items: center;
  gap: 4px;
  color: var(--muted);
  font-size: 10px;
}
.status {
  position: absolute;
  bottom: 19px;
  color: var(--muted);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.07em;
}
.status--hot {
  color: var(--coral);
}
.athlete-home__grid {
  display: grid;
  grid-template-columns: 0.68fr 1.05fr 0.82fr;
  gap: 30px;
}
.athlete-home__intro {
  padding-right: 20px;
}
.athlete-home__intro > p:not(.eyebrow) {
  margin: 20px 0 27px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}
.athlete-feature {
  background: #f0ded2;
}
.athlete-feature__visual {
  position: relative;
  aspect-ratio: 1.08;
  overflow: hidden;
}
.athlete-feature__visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.athlete-feature__visual span {
  position: absolute;
  right: 18px;
  top: 15px;
  color: var(--white);
  font-family: "DM Serif Display", serif;
  font-size: 65px;
  letter-spacing: -0.08em;
}
.athlete-feature__copy {
  padding: 20px 21px 24px;
}
.athlete-feature__copy p {
  color: var(--coral);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.12em;
}
.athlete-feature__copy h3 {
  margin: 9px 0 16px;
  font-family: "DM Serif Display", serif;
  font-size: 27px;
  font-weight: 400;
  line-height: 1.03;
}
.athlete-feature__copy a {
  font-size: 11px;
  font-weight: 800;
}
.athlete-list {
  border-top: 1px solid var(--ink);
}
.athlete-list__item {
  display: grid;
  grid-template-columns: 30px 1fr 18px;
  align-items: center;
  gap: 8px;
  padding: 17px 0;
  border-bottom: 1px solid var(--line);
}
.athlete-list__item > span {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.athlete-list__item p {
  color: #6b7180;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.athlete-list__item h3 {
  margin-top: 4px;
  font-family: "DM Serif Display", serif;
  font-size: 23px;
  font-weight: 400;
}
.athlete-list__item svg {
  color: var(--coral);
}
.sports-home {
  padding: 108px 0;
  background: var(--ink);
  color: var(--white);
}
.sports-home .text-link {
  border-color: var(--white);
}
.sports-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
}
.sport-tile {
  position: relative;
  min-height: 244px;
  padding: 18px;
  border: 1px solid rgba(255, 255, 255, 0.23);
  margin-right: -1px;
  overflow: hidden;
  transition:
    background 0.2s,
    transform 0.2s;
}
.sport-tile:hover {
  background: var(--coral);
  transform: translateY(-6px);
}
.sport-tile > span {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.sport-tile:hover > span,
.sport-tile:hover svg {
  color: var(--ink);
}
.sport-tile h3 {
  position: absolute;
  left: 18px;
  bottom: 54px;
  font-family: "DM Serif Display", serif;
  font-size: 25px;
  font-weight: 400;
}
.sport-tile p {
  position: absolute;
  left: 18px;
  right: 13px;
  bottom: 20px;
  color: #bbc4cd;
  font-size: 10px;
  line-height: 1.35;
}
.sport-tile:hover p {
  color: var(--ink);
}
.sport-tile svg {
  position: absolute;
  right: 16px;
  top: 18px;
  color: var(--coral);
}
.la28-banner {
  position: relative;
  background: var(--coral);
  color: var(--ink);
  overflow: hidden;
}
.la28-banner:after {
  content: "";
  position: absolute;
  z-index: 0;
  width: 440px;
  height: 440px;
  border: 52px solid rgba(255, 253, 249, 0.55);
  border-radius: 50%;
  right: -140px;
  top: -150px;
}
.la28-banner__inner {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 0.8fr 1.3fr 0.9fr 70px;
  gap: 35px;
  align-items: center;
  padding: 77px 0;
}
.la28-banner__year {
  font-family: "DM Serif Display", serif;
  font-size: 60px;
  letter-spacing: -0.08em;
}
.la28-banner__year span {
  color: var(--white);
}
.la28-banner h2 {
  margin-top: 8px;
  font-family: "DM Serif Display", serif;
  font-size: 43px;
  font-weight: 400;
  letter-spacing: -0.05em;
  line-height: 0.96;
}
.la28-banner__text {
  font-size: 12px;
  line-height: 1.6;
}
.round-arrow {
  width: 55px;
  height: 55px;
  display: grid;
  place-items: center;
  background: var(--ink);
  color: var(--white);
  border-radius: 50%;
  transition: transform 0.18s;
}
.round-arrow:hover {
  transform: rotate(13deg);
}
.newsletter-section {
  padding: 108px 0;
  background: var(--white);
}
.newsletter-grid {
  display: grid;
  grid-template-columns: 1.1fr 0.88fr 0.35fr;
  align-items: end;
  gap: 35px;
}
.newsletter-grid > div:nth-child(2) > p {
  margin-bottom: 21px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}
.newsletter-stat {
  display: grid;
  grid-template-columns: 28px 1fr;
  gap: 4px;
  align-items: center;
  color: var(--coral);
}
.newsletter-stat b {
  font-family: "DM Serif Display", serif;
  font-size: 62px;
  font-weight: 400;
  line-height: 0.8;
  letter-spacing: -0.07em;
}
.newsletter-stat span {
  grid-column: 1/-1;
  color: var(--ink);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.page-intro {
  padding: 84px 0 82px;
  border-bottom: 1px solid var(--line);
  background: var(--white);
}
.page-intro__grid {
  display: grid;
  grid-template-columns: 0.55fr 1.35fr 0.52fr;
  gap: 35px;
  align-items: end;
}
.section-kicker {
  display: flex;
  align-items: center;
  gap: 8px;
}
.kicker-line {
  display: block;
  width: 32px;
  border-top: 2px solid var(--coral);
}
.page-intro h1 {
  font-family: "DM Serif Display", serif;
  font-size: clamp(51px, 7vw, 88px);
  font-weight: 400;
  letter-spacing: -0.065em;
  line-height: 0.9;
}
.page-intro h1 + p {
  margin-top: 22px;
  max-width: 535px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.68;
}
.page-intro__aside {
  display: flex;
  align-items: center;
  gap: 11px;
  padding-bottom: 6px;
  color: var(--muted);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
}
.intro-stat {
  color: var(--coral);
  font-family: "DM Serif Display", serif;
  font-size: 61px;
  letter-spacing: -0.08em;
  line-height: 0.75;
}
.editorial-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-bottom: 45px;
}
.editorial-tabs button {
  border: 1px solid var(--line);
  background: transparent;
  padding: 8px 13px;
  font-size: 10px;
  font-weight: 800;
}
.editorial-tabs button.is-selected,
.editorial-tabs button:hover {
  border-color: var(--ink);
  background: var(--ink);
  color: var(--white);
}
.lead-news {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  background: #e4ddd3;
}
.lead-news__image {
  position: relative;
  min-height: 450px;
}
.lead-news__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.lead-news__image span {
  position: absolute;
  bottom: 15px;
  right: 19px;
  color: var(--white);
  font-family: "DM Serif Display", serif;
  font-size: 62px;
  letter-spacing: -0.08em;
}
.lead-news article {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  padding: 45px;
}
.lead-news h2 {
  margin-top: 10px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(40px, 4vw, 56px);
  font-weight: 400;
  letter-spacing: -0.055em;
  line-height: 0.96;
}
.lead-news article > p:not(.eyebrow) {
  margin-top: 19px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}
.article-meta {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 27px;
  color: var(--muted);
  font-size: 10px;
}
.article-meta a {
  margin-left: 8px;
  color: var(--ink);
  font-weight: 800;
}
.story-grid {
  display: grid;
  gap: 27px;
  margin-top: 57px;
}
.story-grid--three {
  grid-template-columns: repeat(3, 1fr);
}
.feature-quote {
  background: var(--ink);
  color: var(--white);
}
.feature-quote__grid {
  display: grid;
  grid-template-columns: 0.4fr 1.3fr;
  padding: 89px 0;
}
.quote-mark {
  color: var(--coral);
  font-family: "DM Serif Display", serif;
  font-size: 155px;
  line-height: 0.48;
}
.feature-quote h2 {
  max-width: 835px;
  color: var(--white);
}
.feature-quote h2 + p {
  max-width: 560px;
  margin: 23px 0;
  color: #bcc5cf;
  font-size: 13px;
  line-height: 1.7;
}
.feature-quote .text-link {
  border-color: var(--white);
}
.latest-list {
  border-top: 1px solid var(--ink);
}
.latest-list__item {
  display: grid;
  grid-template-columns: 42px 130px 1fr 96px 20px;
  gap: 18px;
  align-items: center;
  padding: 23px 0;
  border-bottom: 1px solid var(--line);
}
.latest-list__item > span {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.latest-list__item p,
.latest-list__item time {
  color: #6b7180;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
}
.latest-list__item h3 {
  font-family: "DM Serif Display", serif;
  font-size: 25px;
  font-weight: 400;
}
.latest-list__item svg {
  color: var(--coral);
}
.agenda-tools,
.athlete-tools {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 40px;
}
.agenda-month {
  display: flex;
  align-items: center;
  gap: 22px;
}
.agenda-month button {
  border: 0;
  background: transparent;
  padding: 0;
  font-family: "DM Serif Display", serif;
  font-size: 38px;
}
.agenda-month h2 {
  font-family: "DM Serif Display", serif;
  font-size: 49px;
  font-weight: 400;
  letter-spacing: -0.055em;
}
.agenda-month h2 span {
  color: var(--coral);
}
.agenda-filter,
.athlete-tools button {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 13px;
  border: 1px solid var(--ink);
  font-size: 10px;
  font-weight: 800;
}
.agenda-filter svg:last-child {
  margin-left: 22px;
}
.agenda-featured-events {
  border-top: 2px solid var(--ink);
}
.agenda-event {
  display: grid;
  grid-template-columns: 110px 160px 1fr 150px;
  gap: 18px;
  align-items: center;
  min-height: 115px;
  border-bottom: 1px solid var(--line);
  transition:
    padding 0.18s,
    background 0.18s;
}
.agenda-event:hover {
  padding-left: 16px;
  background: var(--white);
}
.agenda-event__date {
  display: flex;
  align-items: baseline;
  gap: 7px;
}
.agenda-event__date b {
  font-family: "DM Serif Display", serif;
  font-size: 47px;
  font-weight: 400;
  letter-spacing: -0.07em;
}
.agenda-event__date span,
.agenda-event__sport {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.1em;
}
.agenda-event__sport {
  display: flex;
  align-items: center;
  gap: 7px;
}
.sport-dot {
  width: 10px;
  height: 10px;
  background: var(--coral);
  border-radius: 50%;
}
.sport-dot--1 {
  background: #6aa66f;
}
.sport-dot--2 {
  background: #eeb24f;
}
.sport-dot--3 {
  background: #5aa7ce;
}
.agenda-event h3 {
  font-family: "DM Serif Display", serif;
  font-size: 27px;
  font-weight: 400;
}
.agenda-event p {
  display: flex;
  gap: 4px;
  align-items: center;
  margin-top: 7px;
  color: var(--muted);
  font-size: 10px;
}
.agenda-event__status {
  display: flex;
  justify-content: flex-end;
  gap: 14px;
  align-items: center;
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.agenda-advisory {
  background: var(--coral);
}
.advisory-inner {
  display: grid;
  grid-template-columns: 40px 1.3fr 1fr auto;
  gap: 22px;
  align-items: center;
  padding: 39px 0;
}
.advisory-inner h2 {
  margin-top: 7px;
  font-family: "DM Serif Display", serif;
  font-size: 35px;
  font-weight: 400;
  letter-spacing: -0.04em;
}
.advisory-inner > p {
  font-size: 12px;
  line-height: 1.55;
}
.advisory-inner a {
  border-bottom: 1px solid var(--ink);
  padding-bottom: 5px;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}
.season-header {
  display: grid;
  grid-template-columns: 1.1fr 0.7fr;
  align-items: end;
  gap: 100px;
  margin-bottom: 39px;
}
.season-header > p {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.6;
}
.next-events {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--line);
}
.next-events article {
  min-height: 282px;
  padding: 23px;
  background: var(--white);
}
.next-events article > p {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.1em;
}
.next-events article > span {
  display: block;
  margin-top: 24px;
  font-family: "DM Serif Display", serif;
  font-size: 45px;
  letter-spacing: -0.06em;
}
.next-events article small {
  display: block;
  margin-top: 5px;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}
.next-events h3 {
  margin-top: 14px;
  font-family: "DM Serif Display", serif;
  font-size: 25px;
  font-weight: 400;
  line-height: 1.03;
}
.next-events article div {
  display: flex;
  align-items: center;
  gap: 4px;
  margin-top: 13px;
  color: var(--muted);
  font-size: 10px;
}
.next-events em {
  display: block;
  margin-top: 18px;
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  line-height: 1.45;
}
.agenda-note {
  padding: 0 0 110px;
}
.agenda-note p,
.discipline-note p {
  max-width: 760px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.7;
}
.agenda-note b,
.discipline-note b {
  color: var(--ink);
}
.search-field {
  display: flex;
  align-items: center;
  gap: 11px;
  min-width: 275px;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 10px;
  color: #6b7180;
  font-size: 11px;
}
.athlete-spotlight {
  display: grid;
  grid-template-columns: 1.15fr 1fr 0.45fr;
  min-height: 460px;
  background: var(--sand);
}
.athlete-spotlight__image {
  position: relative;
}
.athlete-spotlight__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.vertical-label {
  position: absolute;
  left: 15px;
  top: 17px;
  color: var(--white);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.16em;
  writing-mode: vertical-rl;
}
.athlete-spotlight__copy {
  padding: 52px 43px;
  align-self: center;
}
.athlete-spotlight__copy h2 {
  margin-top: 12px;
  font-family: "DM Serif Display", serif;
  font-size: 61px;
  font-weight: 400;
  letter-spacing: -0.07em;
}
.athlete-spotlight__copy h3 {
  margin-top: 12px;
  font-family: "DM Serif Display", serif;
  font-size: 28px;
  font-weight: 400;
  line-height: 1.03;
}
.athlete-spotlight__copy > p:not(.eyebrow) {
  margin: 18px 0 24px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.65;
}
.athlete-spotlight__facts {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  border-left: 1px solid rgba(16, 32, 53, 0.2);
  padding: 18px;
}
.athlete-spotlight__facts > span {
  margin-bottom: auto;
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.athlete-spotlight__facts div {
  margin-top: 22px;
}
.athlete-spotlight__facts small {
  color: var(--muted);
  font-size: 8px;
  font-weight: 800;
  letter-spacing: 0.1em;
}
.athlete-spotlight__facts b {
  display: block;
  margin-top: 3px;
  font-family: "DM Serif Display", serif;
  font-size: 34px;
  font-weight: 400;
}
.athletes-directory {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 57px;
  border-top: 1px solid var(--ink);
}
.athlete-directory__item {
  display: grid;
  grid-template-columns: 36px 1fr auto;
  column-gap: 13px;
  padding: 20px 0;
  border-bottom: 1px solid var(--line);
}
.athlete-directory__item:nth-child(odd) {
  padding-right: 30px;
}
.athlete-directory__item:nth-child(even) {
  padding-left: 30px;
  border-left: 1px solid var(--line);
}
.athlete-directory__item > span {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.athlete-directory__item p,
.athlete-directory__item small {
  color: #6b7180;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.athlete-directory__item h3 {
  grid-column: 2;
  margin-top: 4px;
  font-family: "DM Serif Display", serif;
  font-size: 31px;
  font-weight: 400;
  letter-spacing: -0.04em;
}
.athlete-directory__item small {
  grid-column: 2;
  margin-top: 4px;
}
.athlete-directory__item em {
  grid-column: 2;
  margin-top: 10px;
  color: var(--muted);
  font-size: 11px;
  font-style: normal;
  line-height: 1.5;
}
.athlete-directory__item b {
  grid-column: 2;
  margin-top: 11px;
  color: var(--coral);
  font-size: 9px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.athlete-directory__item svg {
  grid-column: 3;
  grid-row: 1;
  color: var(--coral);
}
.follow-module {
  background: var(--sage);
  padding: 93px 0;
}
.follow-module > div {
  display: grid;
  grid-template-columns: 1.1fr 0.65fr 0.4fr;
  gap: 25px;
  align-items: end;
}
.follow-module h2 {
  margin-top: 10px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(42px, 4.5vw, 59px);
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.055em;
}
.follow-module p:not(.eyebrow) {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}
.follow-module a {
  justify-self: end;
  display: inline-flex;
  gap: 7px;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 5px;
  font-size: 10px;
  font-weight: 800;
}
.profile-hero {
  background: var(--ink);
  color: var(--white);
  padding: 35px 0 0;
}
.back-link {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  color: var(--sage);
  font-size: 10px;
  font-weight: 800;
}
.profile-hero__grid {
  display: grid;
  grid-template-columns: 0.9fr 1.1fr;
  gap: 40px;
  align-items: end;
  margin-top: 30px;
}
.profile-hero__copy {
  padding: 56px 0 76px;
}
.profile-hero__copy h1 {
  margin-top: 13px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(72px, 8vw, 116px);
  font-weight: 400;
  line-height: 0.78;
  letter-spacing: -0.08em;
}
.profile-intro {
  max-width: 420px;
  margin-top: 33px;
  color: #c0c8d0;
  font-size: 14px;
  line-height: 1.7;
}
.profile-actions {
  display: flex;
  gap: 18px;
  align-items: center;
  margin-top: 29px;
}
.profile-actions button {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  border: 0;
  background: transparent;
  color: var(--white);
  font-size: 10px;
  font-weight: 800;
}
.profile-actions a {
  display: inline-flex;
  gap: 7px;
  border-bottom: 1px solid var(--white);
  padding-bottom: 5px;
  font-size: 10px;
  font-weight: 800;
}
.profile-hero__image {
  position: relative;
  height: 520px;
  overflow: hidden;
}
.profile-hero__image:after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(0deg, rgba(16, 32, 53, 0.42), transparent);
}
.profile-hero__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.profile-number {
  position: absolute;
  z-index: 1;
  bottom: 19px;
  right: 20px;
  color: var(--white);
  font-family: "DM Serif Display", serif;
  font-size: 68px;
  letter-spacing: -0.08em;
}
.profile-facts {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  border-left: 1px solid var(--line);
}
.profile-facts div {
  padding: 26px 22px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}
.profile-facts small {
  display: block;
  color: #6b7180;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.1em;
}
.profile-facts b {
  display: block;
  margin-top: 6px;
  font-family: "DM Serif Display", serif;
  font-size: 23px;
  font-weight: 400;
}
.profile-main {
  display: grid;
  grid-template-columns: 1.12fr 0.55fr;
  gap: 150px;
  padding: 110px 0;
}
.profile-story h2 {
  margin: 11px 0 24px;
  max-width: 610px;
  font-family: "DM Serif Display", serif;
  font-size: 53px;
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.055em;
}
.profile-story p:not(.eyebrow) {
  max-width: 650px;
  margin-top: 16px;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.8;
}
.next-race {
  align-self: start;
  background: var(--sage);
  padding: 27px;
}
.next-race h3 {
  margin: 17px 0 10px;
  font-family: "DM Serif Display", serif;
  font-size: 29px;
  font-weight: 400;
  line-height: 1.02;
}
.next-race p:not(.eyebrow) {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}
.next-race a {
  display: inline-flex;
  gap: 6px;
  margin-top: 20px;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 4px;
  font-size: 10px;
  font-weight: 800;
}
.profile-timeline {
  background: var(--sand);
  padding: 79px 0;
}
.timeline-row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 38px;
}
.timeline-row article {
  min-height: 190px;
  border-left: 1px solid rgba(16, 32, 53, 0.32);
  padding: 0 22px;
}
.timeline-row article:first-child {
  padding-left: 0;
  border: 0;
}
.timeline-row span {
  color: var(--coral);
  font-family: "DM Serif Display", serif;
  font-size: 41px;
  letter-spacing: -0.06em;
}
.timeline-row h3 {
  margin: 18px 0 9px;
  font-family: "DM Serif Display", serif;
  font-size: 25px;
  font-weight: 400;
}
.timeline-row p {
  color: var(--muted);
  font-size: 11px;
  line-height: 1.58;
}
.related-profile {
  display: grid;
  grid-template-columns: 1fr 0.6fr;
  gap: 60px;
  padding: 105px 0;
}
.related-profile h2 {
  margin-top: 10px;
  max-width: 560px;
  font-family: "DM Serif Display", serif;
  font-size: 49px;
  font-weight: 400;
  line-height: 0.97;
  letter-spacing: -0.055em;
}
.related-profile div:last-child {
  align-self: end;
}
.related-profile div:last-child > p {
  margin-bottom: 20px;
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}
.sport-explorer__feature {
  display: grid;
  grid-template-columns: 1.18fr 0.82fr;
  background: var(--sage);
}
.sport-explorer__feature img {
  width: 100%;
  height: 440px;
  object-fit: cover;
}
.sport-explorer__feature div {
  align-self: center;
  padding: 45px;
}
.sport-explorer__feature h2 {
  margin: 11px 0 17px;
  font-family: "DM Serif Display", serif;
  font-size: 47px;
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.055em;
}
.sport-explorer__feature p:not(.eyebrow) {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.65;
}
.sport-explorer__feature a {
  display: inline-flex;
  gap: 8px;
  margin-top: 25px;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 5px;
  font-size: 10px;
  font-weight: 800;
}
.discipline-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 55px;
  border-top: 1px solid var(--ink);
}
.discipline-card {
  position: relative;
  min-height: 220px;
  padding: 17px;
  border-right: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
  transition: background 0.18s;
}
.discipline-card:nth-child(4n + 1) {
  border-left: 1px solid var(--line);
}
.discipline-card:hover {
  background: var(--ink);
  color: var(--white);
}
.discipline-card > span {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.discipline-card h3 {
  position: absolute;
  left: 17px;
  bottom: 58px;
  font-family: "DM Serif Display", serif;
  font-size: 29px;
  font-weight: 400;
}
.discipline-card p {
  position: absolute;
  left: 17px;
  right: 17px;
  bottom: 21px;
  color: var(--muted);
  font-size: 10px;
}
.discipline-card:hover p {
  color: var(--sage);
}
.discipline-card svg {
  position: absolute;
  top: 17px;
  right: 17px;
  color: var(--coral);
}
.discipline-card__bar {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 4px;
  width: 32%;
  background: var(--coral);
}
.bar-1 {
  background: #6aa66f;
  width: 48%;
}
.bar-2 {
  background: #eeb24f;
  width: 63%;
}
.bar-3 {
  background: #5aa7ce;
  width: 74%;
}
.bar-4 {
  background: #c7729b;
  width: 42%;
}
.bar-5 {
  background: #7f89c8;
  width: 57%;
}
.bar-6 {
  background: #e17844;
  width: 72%;
}
.bar-7 {
  background: #3e9a9b;
  width: 87%;
}
.explainer-section {
  background: var(--ink);
  color: var(--white);
}
.explainer-grid {
  display: grid;
  grid-template-columns: 1fr 0.9fr;
  gap: 95px;
  padding: 94px 0;
}
.explainer-grid h2 {
  margin-top: 10px;
  font-family: "DM Serif Display", serif;
  font-size: 50px;
  font-weight: 400;
  line-height: 0.98;
  letter-spacing: -0.055em;
}
.explainer-list {
  border-top: 1px solid rgba(255, 255, 255, 0.3);
}
.explainer-list article {
  display: flex;
  gap: 15px;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
}
.explainer-list svg {
  color: var(--coral);
  flex: 0 0 auto;
}
.explainer-list h3 {
  font-family: "DM Serif Display", serif;
  font-size: 25px;
  font-weight: 400;
}
.explainer-list p {
  margin-top: 4px;
  color: #bcc5cf;
  font-size: 11px;
  line-height: 1.5;
}
.discipline-note {
  padding-top: 0;
}
.la28-hero {
  position: relative;
  min-height: 670px;
  color: var(--white);
  overflow: hidden;
}
.la28-hero > img,
.la28-hero__overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.la28-hero > img {
  object-fit: cover;
}
.la28-hero__overlay {
  background: linear-gradient(
    90deg,
    rgba(9, 22, 41, 0.92),
    rgba(9, 22, 41, 0.38)
  );
}
.la28-hero__content {
  position: relative;
  z-index: 1;
  padding-top: 138px;
}
.la28-hero h1 {
  margin-top: 12px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(84px, 10vw, 135px);
  font-weight: 400;
  letter-spacing: -0.09em;
  line-height: 0.78;
}
.la28-hero__content > p:not(.eyebrow) {
  max-width: 430px;
  margin: 29px 0;
  color: #e3e9ed;
  font-size: 14px;
  line-height: 1.7;
}
.la28-count {
  position: absolute;
  z-index: 1;
  right: 5vw;
  bottom: 22px;
  color: rgba(255, 255, 255, 0.65);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.18em;
}
.la28-context {
  display: grid;
  grid-template-columns: 1.15fr 0.72fr;
  gap: 80px;
  padding: 112px 0;
}
.la28-context h2 {
  margin-top: 10px;
  font-family: "DM Serif Display", serif;
  font-size: 55px;
  font-weight: 400;
  letter-spacing: -0.055em;
  line-height: 0.95;
}
.la28-context > div:last-child > p {
  color: var(--muted);
  font-size: 14px;
  line-height: 1.75;
}
.context-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 26px;
}
.context-icons span {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  font-size: 10px;
  font-weight: 800;
}
.context-icons svg {
  color: var(--coral);
}
.timeline-section {
  background: var(--sand);
  padding: 80px 0;
}
.cycle-timeline {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 45px;
}
.cycle-timeline article {
  min-height: 270px;
  padding: 0 32px;
  border-left: 1px solid rgba(16, 32, 53, 0.3);
}
.cycle-timeline article:first-child {
  padding-left: 0;
  border-left: 0;
}
.cycle-timeline article span {
  color: var(--coral);
  font-family: "DM Serif Display", serif;
  font-size: 60px;
  letter-spacing: -0.07em;
}
.cycle-timeline article i {
  display: block;
  width: 12px;
  height: 12px;
  margin: 19px 0;
  border-radius: 50%;
  background: var(--coral);
  box-shadow: 0 0 0 8px rgba(255, 77, 61, 0.15);
}
.cycle-timeline h3 {
  font-family: "DM Serif Display", serif;
  font-size: 31px;
  font-weight: 400;
}
.cycle-timeline p {
  margin-top: 9px;
  color: var(--muted);
  font-size: 12px;
  line-height: 1.6;
}
.cycle-timeline a {
  display: inline-flex;
  gap: 7px;
  margin-top: 16px;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 4px;
  font-size: 10px;
  font-weight: 800;
}
.la28-program {
  display: grid;
  grid-template-columns: 1fr 0.85fr;
  gap: 77px;
  align-items: center;
  padding: 111px 0;
}
.la28-program__image {
  position: relative;
  height: 427px;
}
.la28-program__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.la28-program__image span {
  position: absolute;
  left: -18px;
  bottom: 16px;
  writing-mode: vertical-rl;
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.16em;
}
.la28-program h2 {
  margin: 10px 0 19px;
  font-family: "DM Serif Display", serif;
  font-size: 49px;
  font-weight: 400;
  line-height: 0.97;
  letter-spacing: -0.055em;
}
.la28-program p:not(.eyebrow) {
  color: var(--muted);
  font-size: 13px;
  line-height: 1.7;
}
.la28-program .text-link {
  margin-top: 23px;
}
.la28-cta {
  background: var(--coral);
}
.la28-cta > div {
  display: grid;
  grid-template-columns: 50px 1fr 0.7fr auto;
  gap: 20px;
  align-items: center;
  padding: 43px 0;
}
.la28-cta h2 {
  font-family: "DM Serif Display", serif;
  font-size: 35px;
  font-weight: 400;
  letter-spacing: -0.04em;
}
.la28-cta p {
  font-size: 11px;
}
.la28-cta a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-bottom: 1px solid var(--ink);
  padding-bottom: 4px;
  font-size: 10px;
  font-weight: 800;
  white-space: nowrap;
}
.sale-hero {
  background: var(--ink);
  color: var(--white);
  overflow: hidden;
}
.sale-hero__grid {
  display: grid;
  grid-template-columns: 1.1fr 0.8fr;
  min-height: 580px;
  gap: 80px;
  align-items: center;
}
.sale-hero h1 {
  margin-top: 13px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(60px, 7.2vw, 96px);
  font-weight: 400;
  letter-spacing: -0.075em;
  line-height: 0.86;
}
.sale-hero h1 em {
  color: var(--coral);
}
.sale-hero p:not(.eyebrow) {
  max-width: 510px;
  margin: 28px 0;
  color: #c4ccd3;
  font-size: 14px;
  line-height: 1.73;
}
.sale-hero p strong {
  color: var(--white);
}
.sale-hero small {
  display: block;
  margin-top: 13px;
  color: #9faab7;
  font-size: 10px;
}
.sale-hero__art {
  position: relative;
  height: 330px;
  display: grid;
  place-items: center;
}
.sale-hero__art:before {
  content: "";
  position: absolute;
  width: 320px;
  height: 320px;
  border: 45px solid var(--coral);
  border-radius: 50%;
}
.sale-hero__art img {
  position: relative;
  z-index: 2;
  width: 147px;
}
.sale-hero__art span {
  position: absolute;
  bottom: 13px;
  right: 12px;
  color: var(--sage);
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.15em;
  line-height: 1.4;
  text-align: right;
}
.sale-hero__art i {
  position: absolute;
  top: -25px;
  right: -20px;
  width: 160px;
  border-top: 1px solid rgba(255, 255, 255, 0.35);
  transform: rotate(-38deg);
}
.sale-intro {
  display: grid;
  grid-template-columns: 1.1fr 0.8fr;
  gap: 90px;
  padding: 112px 0;
}
.sale-intro h2 {
  margin-top: 10px;
  max-width: 605px;
  font-family: "DM Serif Display", serif;
  font-size: 57px;
  font-weight: 400;
  letter-spacing: -0.06em;
  line-height: 0.95;
}
.sale-intro > p {
  align-self: end;
  color: var(--muted);
  font-size: 14px;
  line-height: 1.78;
}
.sale-reasons {
  display: grid;
  grid-template-columns: 1fr 0.9fr;
  gap: 78px;
  align-items: center;
  padding-bottom: 112px;
}
.sale-reasons__image {
  height: 470px;
}
.sale-reasons__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.sale-reasons h2 {
  margin: 10px 0 27px;
  font-family: "DM Serif Display", serif;
  font-size: 49px;
  font-weight: 400;
  letter-spacing: -0.055em;
  line-height: 0.97;
}
.reason {
  display: grid;
  grid-template-columns: 30px 1fr 18px;
  gap: 12px;
  align-items: start;
  padding: 13px 0;
  border-top: 1px solid var(--line);
}
.reason:last-child {
  border-bottom: 1px solid var(--line);
}
.reason span {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.reason p {
  color: var(--muted);
  font-size: 12px;
  line-height: 1.5;
}
.reason svg {
  color: #6aa66f;
}
.sale-business {
  padding: 82px 0;
  background: var(--sage);
}
.sale-business__grid {
  display: grid;
  grid-template-columns: 1.25fr repeat(3, 0.72fr);
  gap: 1px;
  background: rgba(16, 32, 53, 0.25);
}
.sale-business__grid > div {
  min-height: 273px;
  padding: 25px;
  background: var(--sage);
}
.sale-business__grid > div:first-child {
  background: var(--ink);
  color: var(--white);
}
.sale-business h2 {
  margin-top: 10px;
  font-family: "DM Serif Display", serif;
  font-size: 47px;
  font-weight: 400;
  line-height: 0.96;
  letter-spacing: -0.055em;
}
.business-card span {
  color: var(--coral);
  font-size: 10px;
  font-weight: 800;
}
.business-card h3 {
  margin-top: 92px;
  font-family: "DM Serif Display", serif;
  font-size: 25px;
  font-weight: 400;
}
.business-card p {
  margin-top: 9px;
  color: var(--muted);
  font-size: 11px;
  line-height: 1.6;
}
.contact-panel {
  margin: 105px auto;
  padding: 56px;
  background: var(--coral);
}
.contact-panel h2 {
  max-width: 680px;
  margin: 9px 0 16px;
  font-family: "DM Serif Display", serif;
  font-size: 56px;
  font-weight: 400;
  letter-spacing: -0.06em;
  line-height: 0.94;
}
.contact-panel > p:not(.eyebrow) {
  max-width: 650px;
  font-size: 13px;
  line-height: 1.7;
}
.contact-panel > p a {
  text-decoration: underline;
  text-underline-offset: 3px;
  font-weight: 800;
}
.contact-panel__button {
  margin-top: 26px;
  background: var(--ink);
}
.not-found {
  padding: 160px 0;
  background: var(--ink);
  color: var(--white);
}
.not-found h1 {
  margin: 14px 0 20px;
  font-family: "DM Serif Display", serif;
  font-size: clamp(65px, 9vw, 115px);
  font-weight: 400;
  line-height: 0.8;
  letter-spacing: -0.08em;
}
.not-found p:not(.eyebrow) {
  max-width: 405px;
  color: #c0c8d0;
  font-size: 14px;
  line-height: 1.7;
}
.not-found a {
  display: inline-flex;
  gap: 8px;
  margin-top: 27px;
  border-bottom: 1px solid var(--white);
  padding-bottom: 5px;
  font-size: 10px;
  font-weight: 800;
}
.site-footer {
  background: var(--ink);
  color: var(--white);
  padding-top: 75px;
}
.footer-top {
  display: grid;
  grid-template-columns: 1.15fr 0.9fr;
  gap: 100px;
  padding-bottom: 61px;
}
.brand--footer .brand-name {
  font-size: 35px;
}
.footer-brand-block > p {
  max-width: 365px;
  margin-top: 21px;
  color: #bac4cf;
  font-size: 13px;
  line-height: 1.65;
}
.footer-email {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 23px;
  color: var(--coral);
  border-bottom: 1px solid var(--coral);
  padding-bottom: 4px;
  font-size: 11px;
  font-weight: 800;
}
.footer-links {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 55px;
}
.footer-label {
  color: var(--coral);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.15em;
}
.footer-links a {
  display: block;
  margin-top: 13px;
  color: var(--sage);
  font-size: 12px;
}
.footer-links a:hover {
  color: var(--coral);
}
.footer-bottom {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 19px 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  color: #9faab7;
  font-size: 9px;
}
.socials {
  display: flex;
  gap: 14px;
}
.socials a:hover {
  color: var(--coral);
}
@media (max-width: 1020px) {
  .desktop-nav {
    gap: 15px;
  }
  .pill-button {
    display: none;
  }
  .news-layout {
    grid-template-columns: 1.15fr 0.85fr;
  }
  .briefs-panel {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: 1fr repeat(3, 1fr);
    gap: 15px;
  }
  .brief-item {
    border-bottom: 0;
    padding: 13px 0 0;
  }
  .agenda-home__top {
    gap: 50px;
  }
  .sports-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .sport-tile {
    min-height: 196px;
  }
  .page-intro__grid {
    grid-template-columns: 0.45fr 1.35fr;
  }
  .page-intro__aside {
    display: none;
  }
  .athlete-home__grid {
    grid-template-columns: 0.7fr 1.1fr;
  }
  .athlete-list {
    grid-column: 1/-1;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
  }
  .advisory-inner {
    grid-template-columns: 35px 1fr auto;
  }
  .advisory-inner > p {
    display: none;
  }
  .sale-business__grid {
    grid-template-columns: 1fr repeat(3, 0.7fr);
  }
  .site-footer .footer-top {
    gap: 55px;
  }
}
@media (max-width: 720px) {
  .site-shell {
    width: min(100% - 34px, 1216px);
  }
  .sale-strip__inner {
    min-height: 42px;
    font-size: 10px;
  }
  .sale-strip__inner > span {
    max-width: none;
    line-height: 1.35;
    font-weight: 800;
  }
  .sale-strip__detail {
    display: none;
  }
  .sale-strip a {
    font-size: 10px;
  }
  .header-row {
    height: 65px;
  }
  .desktop-nav,
  .desktop-search {
    display: none;
  }
  .mobile-toggle {
    display: grid;
  }
  .brand {
    gap: 11px;
  }
  .brand-mark {
    width: 45px;
    height: 45px;
  }
  .brand-name {
    font-size: 39px;
  }
  .mobile-menu {
    inset: 107px 0 0;
    min-height: calc(100vh - 107px);
  }
  .home-hero {
    min-height: 625px;
  }
  .home-hero__image {
    object-position: 65% center;
  }
  .home-hero__shade {
    background: linear-gradient(
      90deg,
      rgba(9, 22, 41, 0.92),
      rgba(9, 22, 41, 0.58)
    );
  }
  .home-hero__content {
    padding-top: 98px;
  }
  .home-hero h1 {
    font-size: 59px;
  }
  .home-hero__content > p {
    max-width: 330px;
    font-size: 13px;
  }
  .hero-actions {
    flex-wrap: wrap;
  }
  .hero-bottom {
    grid-template-columns: 1fr 1fr;
    bottom: 17px;
    font-size: 8px;
  }
  .hero-bottom span:nth-child(2) {
    display: none;
  }
  .hero-scroll {
    grid-column: 2;
  }
  .hero-track-number {
    font-size: 176px;
    right: 6vw;
    bottom: 85px;
  }
  .ticker {
    grid-template-columns: 1fr auto;
    gap: 6px;
    padding: 13px 0;
  }
  .ticker p {
    grid-row: 2;
    grid-column: 1/-1;
    font-size: 10px;
  }
  .ticker a {
    font-size: 9px;
  }
  .section-space {
    padding: 75px 0;
  }
  .section-heading {
    align-items: flex-start;
    margin-bottom: 31px;
  }
  .section-heading h2,
  .agenda-home h2,
  .athlete-home h2,
  .newsletter-section h2,
  .feature-quote h2,
  .season-header h2 {
    font-size: 42px;
  }
  .section-heading .text-link {
    white-space: nowrap;
    font-size: 9px;
  }
  .news-layout {
    grid-template-columns: 1fr;
    gap: 25px;
  }
  .story-card--featured h3 {
    font-size: 30px;
  }
  .story-stack {
    grid-template-columns: 1fr 1fr;
    gap: 15px;
  }
  .story-stack .story-card {
    display: block;
  }
  .story-stack .story-image {
    aspect-ratio: 1.3;
    margin-bottom: 12px;
  }
  .briefs-panel {
    display: block;
  }
  .brief-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.23);
  }
  .agenda-home {
    padding: 75px 0;
  }
  .agenda-home__top {
    grid-template-columns: 1fr;
    gap: 23px;
  }
  .event-rail {
    grid-template-columns: 1fr 1fr;
  }
  .event-card {
    min-height: 174px;
  }
  .event-card:nth-child(2) {
    border-right: 0;
  }
  .event-card:nth-child(3),
  .event-card:nth-child(4) {
    border-top: 1px solid rgba(16, 32, 53, 0.4);
  }
  .event-card:nth-child(4) {
    border-right: 0;
  }
  .athlete-home__grid {
    grid-template-columns: 1fr;
  }
  .athlete-home__intro {
    padding-right: 0;
  }
  .athlete-list {
    grid-template-columns: 1fr 1fr;
  }
  .sports-home {
    padding: 75px 0;
  }
  .sports-grid {
    grid-template-columns: 1fr 1fr;
  }
  .sport-tile {
    min-height: 174px;
  }
  .la28-banner__inner {
    grid-template-columns: 1fr 50px;
    gap: 20px;
    padding: 54px 0;
  }
  .la28-banner__year,
  .la28-banner__text {
    display: none;
  }
  .la28-banner h2 {
    font-size: 39px;
  }
  .newsletter-section {
    padding: 75px 0;
  }
  .newsletter-grid {
    grid-template-columns: 1fr;
    gap: 26px;
  }
  .newsletter-stat {
    display: none;
  }
  .page-intro {
    padding: 59px 0 56px;
  }
  .page-intro__grid {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .page-intro h1 {
    font-size: 59px;
  }
  .page-intro h1 + p {
    font-size: 13px;
  }
  .lead-news {
    grid-template-columns: 1fr;
  }
  .lead-news__image {
    min-height: 285px;
  }
  .lead-news article {
    padding: 30px 25px;
  }
  .lead-news h2 {
    font-size: 43px;
  }
  .story-grid--three {
    grid-template-columns: 1fr;
  }
  .feature-quote__grid {
    grid-template-columns: 1fr;
    padding: 70px 0;
  }
  .quote-mark {
    font-size: 107px;
  }
  .feature-quote h2 {
    font-size: 43px;
  }
  .latest-list__item {
    grid-template-columns: 27px 1fr 18px;
    gap: 10px;
  }
  .latest-list__item p {
    grid-column: 2;
  }
  .latest-list__item h3 {
    grid-column: 2;
    grid-row: 2;
    font-size: 24px;
  }
  .latest-list__item time {
    display: none;
  }
  .latest-list__item svg {
    grid-column: 3;
    grid-row: 1/3;
  }
  .agenda-tools {
    align-items: flex-start;
    flex-direction: column;
  }
  .agenda-month h2 {
    font-size: 41px;
  }
  .agenda-event {
    grid-template-columns: 65px 1fr 22px;
    gap: 8px;
    min-height: 115px;
  }
  .agenda-event__sport {
    grid-column: 2;
    grid-row: 1;
  }
  .agenda-event__date {
    grid-row: 1/3;
  }
  .agenda-event h3 {
    font-size: 24px;
  }
  .agenda-event__status {
    grid-column: 3;
    grid-row: 1/3;
  }
  .agenda-event__status span {
    display: none;
  }
  .advisory-inner {
    grid-template-columns: 30px 1fr;
    padding: 32px 0;
  }
  .advisory-inner a {
    grid-column: 2;
    justify-self: start;
  }
  .advisory-inner h2 {
    font-size: 30px;
  }
  .season-header {
    grid-template-columns: 1fr;
    gap: 17px;
  }
  .next-events {
    grid-template-columns: 1fr;
  }
  .next-events article {
    min-height: 235px;
  }
  .agenda-note {
    padding-bottom: 75px;
  }
  .athlete-tools {
    margin-bottom: 25px;
  }
  .search-field {
    min-width: 0;
    flex: 1;
  }
  .athlete-spotlight {
    grid-template-columns: 1fr;
  }
  .athlete-spotlight__image {
    height: 290px;
  }
  .athlete-spotlight__copy {
    padding: 31px 25px;
  }
  .athlete-spotlight__facts {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    border-left: 0;
    border-top: 1px solid rgba(16, 32, 53, 0.18);
  }
  .athlete-spotlight__facts > span {
    margin: 0;
  }
  .athlete-spotlight__facts div {
    margin-top: 0;
  }
  .athletes-directory {
    grid-template-columns: 1fr;
    margin-top: 38px;
  }
  .athlete-directory__item:nth-child(odd),
  .athlete-directory__item:nth-child(even) {
    padding: 19px 0;
    border-left: 0;
  }
  .follow-module > div {
    grid-template-columns: 1fr;
  }
  .follow-module a {
    justify-self: start;
  }
  .profile-hero {
    padding-top: 26px;
  }
  .profile-hero__grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .profile-hero__copy {
    padding: 40px 0 45px;
  }
  .profile-hero__copy h1 {
    font-size: 83px;
  }
  .profile-hero__image {
    height: 310px;
  }
  .profile-facts {
    grid-template-columns: 1fr 1fr;
  }
  .profile-main {
    grid-template-columns: 1fr;
    gap: 38px;
    padding: 75px 0;
  }
  .profile-story h2 {
    font-size: 42px;
  }
  .timeline-row {
    grid-template-columns: 1fr 1fr;
    gap: 31px 0;
  }
  .timeline-row article,
  .timeline-row article:first-child {
    min-height: 160px;
    padding: 0 14px;
    border-left: 1px solid rgba(16, 32, 53, 0.32);
  }
  .timeline-row article:nth-child(odd) {
    padding-left: 0;
    border-left: 0;
  }
  .related-profile {
    grid-template-columns: 1fr;
    gap: 20px;
    padding: 75px 0;
  }
  .related-profile h2 {
    font-size: 42px;
  }
  .sport-explorer__feature {
    grid-template-columns: 1fr;
  }
  .sport-explorer__feature img {
    height: 270px;
  }
  .sport-explorer__feature div {
    padding: 30px 24px;
  }
  .sport-explorer__feature h2 {
    font-size: 41px;
  }
  .discipline-grid {
    grid-template-columns: 1fr 1fr;
    margin-top: 37px;
  }
  .discipline-card:nth-child(4n + 1) {
    border-left: 0;
  }
  .discipline-card:nth-child(odd) {
    border-left: 1px solid var(--line);
  }
  .discipline-card {
    min-height: 175px;
  }
  .explainer-grid {
    grid-template-columns: 1fr;
    gap: 35px;
    padding: 72px 0;
  }
  .explainer-grid h2 {
    font-size: 43px;
  }
  .la28-hero {
    min-height: 577px;
  }
  .la28-hero__content {
    padding-top: 105px;
  }
  .la28-hero h1 {
    font-size: 91px;
  }
  .la28-context {
    grid-template-columns: 1fr;
    gap: 33px;
    padding: 75px 0;
  }
  .la28-context h2 {
    font-size: 45px;
  }
  .cycle-timeline {
    grid-template-columns: 1fr;
    gap: 30px;
  }
  .cycle-timeline article,
  .cycle-timeline article:first-child {
    min-height: 0;
    padding: 0 0 0 20px;
    border-left: 1px solid rgba(16, 32, 53, 0.3);
  }
  .la28-program {
    grid-template-columns: 1fr;
    gap: 37px;
    padding: 75px 0;
  }
  .la28-program__image {
    height: 290px;
  }
  .la28-program h2 {
    font-size: 43px;
  }
  .la28-cta > div {
    grid-template-columns: 32px 1fr;
    padding: 35px 0;
  }
  .la28-cta h2 {
    font-size: 30px;
  }
  .la28-cta p,
  .la28-cta a {
    grid-column: 2;
  }
  .sale-hero__grid {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 77px 0 45px;
  }
  .sale-hero h1 {
    font-size: 68px;
  }
  .sale-hero__art {
    height: 250px;
  }
  .sale-hero__art:before {
    width: 235px;
    height: 235px;
    border-width: 34px;
  }
  .sale-hero__art img {
    width: 109px;
  }
  .sale-intro {
    grid-template-columns: 1fr;
    gap: 27px;
    padding: 75px 0;
  }
  .sale-intro h2 {
    font-size: 46px;
  }
  .sale-reasons {
    grid-template-columns: 1fr;
    gap: 37px;
    padding-bottom: 75px;
  }
  .sale-reasons__image {
    height: 270px;
  }
  .sale-reasons h2 {
    font-size: 42px;
  }
  .sale-business {
    padding: 0;
  }
  .sale-business__grid {
    grid-template-columns: 1fr;
  }
  .sale-business__grid > div {
    min-height: 200px;
  }
  .business-card h3 {
    margin-top: 40px;
  }
  .contact-panel {
    margin: 75px auto;
    padding: 35px 24px;
  }
  .contact-panel h2 {
    font-size: 43px;
  }
  .footer-top {
    grid-template-columns: 1fr;
    gap: 43px;
    padding-bottom: 43px;
  }
  .footer-links {
    gap: 25px;
  }
  .footer-bottom {
    align-items: flex-start;
    gap: 15px;
  }
  .not-found {
    padding: 110px 0;
  }
  .not-found h1 {
    font-size: 72px;
  }
}
