/* v36 mobile hero: visual, copy and controls each occupy a fixed vertical slot. */
@media (min-width: 701px) {
  .slide--nationwide-v28 > img,
  .slide--nationwide-v28.on > img {
    position: absolute;
    top: 112px !important;
    right: 0;
    left: 0 !important;
    width: 100% !important;
    height: calc(100% - 124px) !important;
    object-fit: contain !important;
    object-position: center !important;
    transform: none !important;
    transition: none !important;
  }
}

@media (max-width: 700px) {
  .hero-slider { height: 690px; min-height: 690px; overflow: hidden; background: #edf7ff; }
  /* The two-line navigation occupies 107px inside the hero. Light slides need no dark gradient. */
  .hero-slider .slide:not(.slide--award-v28):not(.slide--news-v35) { background: #edf7ff; }
  .hero-slider .slide:not(.slide--award-v28):not(.slide--news-v35)::after { display: none; }

  /* Complete originals sit beneath the navigation, not at the static-flow origin. */
  .hero-slider .slide:not(.slide--oxygenate-v28):not(.slide--nationwide-v28):not(.slide--award-v28):not(.slide--news-v35) > img {
    position: absolute; top: 132px; right: auto; left: 50%; width: calc(100% - 32px); height: 210px;
    object-fit: contain; object-position: center; transform: translateX(-50%) !important; transition: none !important;
  }
  .slide--oxygenate-v28 > img, .slide--oxygenate-v28.on > img {
    position: absolute; top: 132px; right: auto; left: 50%; width: min(78vw, 300px); height: 210px;
    object-fit: contain; object-position: center; transform: translateX(-50%) !important; transition: none !important;
  }
  .slide--nationwide-v28 > img, .slide--nationwide-v28.on > img {
    position: absolute; top: 124px; right: auto; left: 50%; width: calc(100% - 32px); height: 280px;
    object-fit: contain; object-position: center; mix-blend-mode: normal; transform: translateX(-50%) !important; transition: none !important;
  }
  .slide--nationwide-v28 .map-hub-v35 { display: none; }

  /* The mobile source is the complete 2025–2026 GIF, not a cropped desktop strip. */
  .slide--award-v28 .award-pair { position: absolute; top: 126px; right: auto; left: 50%; width: min(88vw, 380px); height: auto; overflow: visible; transform: translateX(-50%); }
  .slide--award-v28 .award-pair img { position: static; display: block; width: 100%; height: auto; max-height: none; object-fit: contain; object-position: center; transform: none !important; }

  /* Award copy uses the same protected lower slot while retaining the navy treatment. */
  .hero-slider:has(.slide--award-v28.on) .slide-copy { top: 370px; bottom: auto; width: calc(100% - 36px); gap: 8px; }
  .hero-slider:has(.slide--award-v28.on) .slide-copy #sTitle { font-size: clamp(25px, 7.4vw, 32px); line-height: 1.2; }
  .hero-slider:has(.slide--award-v28.on) .slide-copy .sub { padding: 8px 13px; font-size: 13px; line-height: 1.45; }
  .hero-slider:has(.slide--award-v28.on) .slide-copy .cta { margin-top: 2px; }
  .hero-slider:has(.slide--award-v28.on) .slide-copy .btn-white { min-width: min(342px, calc(100vw - 48px)); height: 46px; }
  .hero-slider:has(.slide--award-v28.on) .slide-copy .btn-outline,
  .hero-slider:has(.slide--award-v28.on) .slide-copy .kicker { display: none; }

  /* Light slides use brand-blue copy and a white detail pill; award stays on navy. */
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .slide-copy { top: 370px; bottom: auto; width: calc(100% - 36px); gap: 8px; }
  .hero-slider:has(.slide--nationwide-v28.on) .slide-copy { top: 430px !important; }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .slide-copy #sTitle { color: #10428e; font-size: clamp(25px, 7.4vw, 32px); line-height: 1.2; text-shadow: none; }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .slide-copy .sub { max-width: min(100%, 360px); padding: 8px 13px; border-color: #c8dcf4; background: rgba(255,255,255,.94); color: #315681; font-size: 13px; line-height: 1.45; }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .slide-copy .cta { margin-top: 2px; }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .slide-copy .btn-white { min-width: min(342px, calc(100vw - 48px)); height: 46px; }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .slide-copy .btn-outline,
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .slide-copy .kicker { display: none; }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .controls { color: #184c9d; }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .controls button { color: #184c9d; border-color: #9ab8df; background: #fff; }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .controls svg { stroke: #184c9d; fill: #184c9d; }
  .hero-slider .controls { bottom: 30px; }
  .hero-slider .scrollhint { display: none; }
}

/* Short handsets scroll rather than compressing three protected slots into each other. */
@media (max-width: 700px) and (max-height: 700px) { .hero-slider { height: 690px; min-height: 690px; } }
@media (max-width: 350px) {
  .slide--award-v28 .award-pair { width: min(84vw, 276px); }
  .hero-slider:has(.slide.on:not(.slide--award-v28):not(.slide--news-v35)) .slide-copy { width: calc(100% - 30px); }
}
