/* Rebate landing — mobile (iPhone UA @ 430, flow layout) */
@media (max-width: 980px) {
  body:has(.page-rebate) {
    --header-h: 89px;
  }

  body:has(.page-rebate) .site-brand__logo {
    width: 80px;
    height: 78px;
  }

  body:has(.page-rebate) .site-brand__name {
    display: block;
    left: 72px;
    top: 28px;
    font-size: 22px;
  }

  body:has(.page-rebate) .site-header__inner {
    max-width: 320px;
    padding-inline: 0;
    margin-inline: auto;
  }

  body:has(.page-rebate) .site-nav__burger {
    right: 0;
  }

  .page-rebate {
    height: auto !important;
    background: #000;
  }

  .page-rebate__mobile {
    background: #000;
    color: #fff;
  }

  .page-rebate__mobile .site-container {
    width: 100%;
    max-width: 430px;
    margin-inline: auto;
    padding-inline: var(--mobile-gutter);
    box-sizing: border-box;
  }

  /* Hero — full-width bg, fixed mobile height per source (~344px) */
  .rb-hero {
    position: relative;
    width: 100%;
    height: 344px;
    overflow: hidden;
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
  }

  .rb-hero__bg {
    grid-area: 1 / 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    z-index: 0;
  }

  .rb-hero__stage {
    grid-area: 1 / 1;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 20px var(--mobile-gutter) 16px;
    box-sizing: border-box;
  }

  .rb-hero__logo {
    display: block;
    width: 280px;
    max-width: 100%;
    height: 148px;
    object-fit: contain;
    margin-bottom: 10px;
  }

  .rb-hero__nav {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    width: 100%;
    max-width: 280px;
  }

  .rb-hero__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 120px;
    min-height: 42px;
    padding: 8px 12px;
    font-family: var(--font-light);
    font-size: 10px;
    font-weight: 700;
    line-height: normal;
    letter-spacing: normal;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    box-sizing: border-box;
    border-radius: 50px;
  }

  .rb-hero__btn--gold {
    background: rgb(212, 168, 11);
    color: #fff;
    border: none;
  }

  .rb-hero__btn--outline {
    width: 240px;
    background: #000;
    color: rgb(212, 168, 11);
    border: 1px solid rgb(212, 168, 11);
    border-radius: 0;
    font-family: var(--font-roman);
    font-weight: 400;
    letter-spacing: 1.6px;
    text-transform: none;
  }

  /* Intro — source mobile: title 25/35, body 12/16.8 */
  .rb-intro {
    padding: 20px 0 0;
  }

  .rb-intro__title {
    margin: 0 0 10px;
    color: rgb(212, 168, 11);
    font-family: var(--font-light);
    font-size: 25px;
    font-weight: 700;
    line-height: 35px;
    letter-spacing: normal;
    text-transform: none;
  }

  .rb-intro__copy {
    margin: 0 0 8px;
    color: #fff;
    font-family: var(--font-light);
    font-size: 12px;
    font-weight: 400;
    line-height: 16.8px;
    letter-spacing: normal;
    text-transform: none;
  }

  .rb-intro__copy:last-child {
    margin-bottom: 0;
  }

  /* Content sections — source mobile: headings 17/22.1, body 12/15.6–16.8 */
  .rb-determined,
  .rb-serve {
    padding: 10px 0 0;
  }

  .rb-section__title {
    margin: 0 0 8px;
    color: rgb(212, 168, 11);
    font-family: var(--font-light);
    font-size: 17px;
    font-weight: 700;
    line-height: 22.1px;
    letter-spacing: 0.17px;
    text-transform: none;
  }

  .rb-section__copy {
    margin: 0 0 8px;
    color: #fff;
    font-family: var(--font-light);
    font-size: 12px;
    font-weight: 400;
    line-height: 15.6px;
    letter-spacing: normal;
    text-transform: none;
  }

  .rb-serve .rb-section__copy {
    line-height: 16.8px;
  }

  .rb-section__copy:last-child {
    margin-bottom: 0;
  }

  /* CTA */
  .rb-cta {
    padding: 10px 0 12px;
  }

  .rb-cta__prompt {
    margin: 0 0 10px;
    color: rgb(212, 168, 11);
    font-family: var(--font-light);
    font-size: 16px;
    font-weight: 400;
    line-height: 22.4px;
    letter-spacing: normal;
    text-transform: none;
  }

  .rb-cta__btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 240px;
    max-width: 100%;
    min-height: 42px;
    padding: 8px 16px;
    background: rgb(174, 136, 0);
    color: #fff;
    font-family: var(--font-light);
    font-size: 10px;
    font-weight: 400;
    line-height: normal;
    letter-spacing: 1.6px;
    text-align: center;
    text-decoration: none;
    text-transform: none;
    box-sizing: border-box;
  }

  /* Bottom image — full bleed (source 280×181 in column; full-width per spec) */
  .rb-photo {
    width: 100%;
    padding-bottom: 0;
  }

  .rb-photo__img {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 280 / 181;
    object-fit: cover;
  }
}
