.campaign-page .site-nav { position: fixed; }

.campaign-hero {
  padding: calc(var(--nav-h) + 44px) 0 38px;
  border-bottom: 1px solid var(--line);
}
.campaign-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(300px, .55fr);
  gap: clamp(36px, 7vw, 92px);
  align-items: end;
}
.campaign-hero h1 {
  max-width: 900px;
  margin: 12px 0 0;
  font-size: clamp(54px, 7.1vw, 98px);
  font-weight: 780;
  letter-spacing: -.075em;
  line-height: .86;
  text-transform: uppercase;
}
.campaign-hero h1 em { color: var(--red); font-style: normal; }
.campaign-hero__side { display: grid; gap: 20px; }
.campaign-hero__side > p { margin: 0; color: var(--muted); font-size: clamp(16px, 1.45vw, 19px); line-height: 1.45; }

.campaign-proof {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  margin-top: 32px;
  border: 1px solid var(--line);
}
.campaign-proof article { min-height: 82px; padding: 14px 18px; border-right: 1px solid var(--line); }
.campaign-proof article:last-child { border-right: 0; }
.campaign-proof strong { display: block; color: var(--red); font-size: 35px; letter-spacing: -.055em; line-height: .9; }
.campaign-proof span { display: block; margin-top: 8px; color: var(--faint); font-size: 8px; letter-spacing: .07em; text-transform: uppercase; }

.campaign-section { padding: 40px 0; border-bottom: 1px solid var(--line); scroll-margin-top: var(--nav-h); }
.campaign-section--light { background: var(--cream); color: var(--black); }
.campaign-section--light .eyebrow { color: rgba(9, 9, 10, .58); }
.campaign-section__head { display: flex; justify-content: space-between; gap: 32px; align-items: end; margin-bottom: 18px; }
.campaign-section__head h2 { max-width: 880px; margin: 7px 0 0; font-size: clamp(35px, 4.4vw, 58px); letter-spacing: -.06em; line-height: .92; }
.campaign-section__head > p { max-width: 420px; margin: 0; color: var(--muted); font-size: 14px; }
.campaign-section--light .campaign-section__head > p { color: rgba(9, 9, 10, .58); }

.campaign-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr);
  height: 280px;
  overflow: hidden;
  border: 1px solid var(--line);
  background: var(--panel);
  cursor: pointer;
}
.campaign-feature__media { position: relative; height: 280px; overflow: hidden; background: #111; }
.campaign-feature__media img { width: 100%; height: 100%; object-fit: cover; transition: filter .25s, transform .35s var(--ease); }
.campaign-feature:hover img { filter: brightness(.82); transform: scale(1.012); }
.campaign-feature__copy { display: flex; flex-direction: column; justify-content: flex-end; padding: 24px; }
.campaign-feature__copy h3 { margin: 9px 0 0; font-size: clamp(27px, 3vw, 40px); letter-spacing: -.05em; line-height: .96; }

.campaign-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}
.campaign-grid .video-card {
  min-width: 0;
  background: var(--panel);
  color: white;
}
.campaign-grid .video-card__media img { width: 100%; height: 100%; object-fit: cover; transition: filter .25s, transform .35s var(--ease); }
.campaign-grid .video-card:hover img { filter: brightness(.82); transform: scale(1.012); }
.campaign-grid .video-card__cap { display: block; min-height: 70px; padding: 11px 13px; }
.campaign-grid .video-card__cap b { display: block; font-size: 14px; line-height: 1.2; }
.campaign-grid .video-card__cap span { display: block; margin-top: 6px; font-size: 8px; text-align: left; }
.campaign-page .video-card__play { top: 12px; right: 12px; width: 42px; height: 42px; font-size: 13px; }

.campaign-ugc-grid .video-card { background: var(--panel); color: #fff; }
.campaign-ugc-grid .video-card__media img { width: 100%; height: 100%; object-fit: cover; transition: filter .25s, transform .35s var(--ease); }
.campaign-ugc-grid .video-card:hover img { filter: brightness(.82); transform: scale(1.012); }
.campaign-ugc-grid .video-card__cap { min-height: 82px; padding: 14px 15px; }
.campaign-ugc-grid .video-card__cap b { font-size: 14px; line-height: 1.2; }
.campaign-ugc-grid .video-card__cap span { margin-top: 7px; font-size: 8px; }

.campaign-scope { display: grid; grid-template-columns: repeat(4, 1fr); border: 1px solid var(--line); }
.campaign-scope span { padding: 18px; border-right: 1px solid var(--line); font-size: 10px; letter-spacing: .07em; text-align: center; text-transform: uppercase; }
.campaign-scope span:last-child { border-right: 0; }

.campaign-start { padding: 72px 0; scroll-margin-top: var(--nav-h); }
.campaign-start__grid { display: grid; grid-template-columns: minmax(280px, .6fr) minmax(620px, 1.4fr); gap: 48px; align-items: start; }
.campaign-start__copy h2 { margin: 8px 0 0; font-size: clamp(38px, 4.8vw, 62px); letter-spacing: -.06em; line-height: .92; }
.campaign-start .lead-form { padding: clamp(28px, 3.4vw, 44px); }
.campaign-start .lead-form__heading { display: grid; gap: 9px; margin-bottom: 26px; }
.campaign-start .lead-form__heading b { font-size: clamp(27px, 2.8vw, 38px); }
.campaign-start .lead-form__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px 14px; }
.campaign-start .lead-form__wide { grid-column: 1 / -1; }
.campaign-start .lead-form input,
.campaign-start .lead-form textarea { padding: 14px 15px; }
.campaign-start .lead-form input { min-height: 52px; height: 52px; }
.campaign-start .lead-form textarea { min-height: 142px; height: 142px; }
.campaign-start .lead-form__submit { min-height: 54px; margin-top: 20px; }
.campaign-start .lead-form__status { min-height: 18px; margin-top: 8px; }

@media (max-width: 900px) {
  .campaign-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .campaign-hero__grid,
  .campaign-start__grid { grid-template-columns: 1fr; }
  .campaign-hero__side { max-width: 680px; }
  .campaign-feature { height: auto; grid-template-columns: 1fr; }
  .campaign-feature__media { height: auto; aspect-ratio: 16 / 9; }
  .campaign-feature__copy { min-height: 150px; }
  .campaign-start .lead-form__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .campaign-start .lead-form__wide { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
  .campaign-hero { padding-top: calc(var(--nav-h) + 28px); }
  .campaign-hero h1 { font-size: clamp(49px, 14vw, 66px); }
  .campaign-proof article { min-height: 88px; padding: 12px 9px; }
  .campaign-proof strong { font-size: 29px; }
  .campaign-proof span { font-size: 7px; letter-spacing: .04em; }
  .campaign-section { padding: 30px 0; }
  .campaign-section__head { display: block; }
  .campaign-section__head h2 { font-size: 38px; }
  .campaign-section__head > p { display: none; }
  .campaign-grid { grid-template-columns: 1fr; }
  .campaign-start .lead-form__grid { grid-template-columns: 1fr; }
  .campaign-start .lead-form__wide { grid-column: auto; }
  .campaign-start .lead-form textarea { min-height: 128px; height: 128px; }
  .campaign-scope { grid-template-columns: repeat(2, 1fr); }
  .campaign-scope span:nth-child(2) { border-right: 0; }
  .campaign-scope span:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
  .campaign-start { padding: 30px 0; }
}
