/* Phone layouts: keep the story moving sideways, with native scrolling. */
.mobile-benefit-nav { display:none; }

@media (max-width:600px) {
  .section-pad { padding-top:34px; padding-bottom:38px; }
  .section-top { margin-bottom:26px; padding-bottom:12px; }

  /* Bring the promise and primary action closer to Vee. */
  .hero-scene { min-height:0; }
  .hero-character { height:355px; top:-22px; }
  .hero-side-copy { padding:350px 25px 70px; }
  .hero-side-copy h2 { font-size:40px; }
  .hero-side-copy p { margin-top:13px; margin-bottom:17px; }
  .hero-deal { top:215px; }
  .character-name { top:328px; }
  .hero-explore { bottom:20px; }

  .wall-heading-wrap { min-height:0; padding:34px var(--pad) 32px; }
  .wall-editorial .eyebrow { margin-bottom:16px; }
  .wall-editorial p { max-width:calc(100% - 72px); margin-top:16px; }
  .wall-icon { position:absolute; top:auto; right:var(--pad); bottom:30px; left:auto; margin:0; width:56px; height:56px; transform:none; rotate:0deg; animation:none; }
  .compare-art .scene-icon { transform:none; rotate:0deg; animation:none; }
  .sw-bottom { padding-top:15px; gap:13px; }
  .sw-help { margin-top:14px; }

  /* All three chapters share one short swipe viewport. */
  .journey-header { padding-top:24px; padding-bottom:12px; gap:12px; }
  .journey-nav button { min-height:44px; padding:9px 0; }
  .journey.is-native .journey-track { height:600px; }
  .journey-panel { padding:24px var(--pad) 20px; gap:10px; }
  .journey-kicker { margin-bottom:12px; }
  .journey-copy h3 { font-size:clamp(48px,15vw,76px); margin-bottom:13px; }
  .journey-copy p { font-size:12px; line-height:1.6; }
  .journey-art { min-height:0; }
  .browse-art { padding:20px 15px 15px; }
  .journey-product { max-width:258px; width:92%; padding:13px; }
  .journey-product > img { height:145px; padding:6px 0; }
  .journey-product-info > strong { font-size:12px; }
  .journey-product-info b { font-size:24px; }
  .journey-nudge { margin-top:12px; padding:10px 8px; font-size:7px; }
  .journey-product > .scene-note { margin-top:10px; }
  .scene-icon { width:58px; height:58px; }
  .journey-prices { top:18px; }
  .journey-prices > span { padding:9px; }
  .journey-prices b { font-size:21px; }
  .compare-art .journey-vee { height:100%; width:85%; bottom:-5px; }
  .journey-decide .journey-copy h3 { font-size:clamp(43px,13.8vw,67px); margin-bottom:10px; }
  .journey-saving { margin-bottom:9px; }
  .journey-saving > strong { font-size:54px; }
  .journey-decide .button { margin-top:13px; }
  .decide-art .journey-vee { height:111%; bottom:-10px; }
  .found-stamp { top:10%; }
  .journey-footer { padding-top:12px; padding-bottom:12px; }

  /* Coupons and alerts are cards, not two more full-height sections. */
  .extras { overflow:hidden; }
  .extras .display { margin-bottom:24px; }
  .mobile-benefit-nav { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:17px; }
  .mobile-benefit-nav button { min-height:44px; padding:10px 12px; border:1px solid var(--ink); border-radius:0; background:transparent; color:var(--ink); font:700 11px/1.3 Manrope,sans-serif; text-align:left; display:flex; align-items:center; gap:10px; }
  .mobile-benefit-nav button > span { font:8px Plex,monospace; }
  .mobile-benefit-nav button[aria-current="true"] { background:var(--ink); color:var(--paper); }
  .mobile-benefit-hint { grid-column:1/-1; display:flex; justify-content:space-between; align-items:center; font:8px/1.5 Plex,monospace; letter-spacing:.02em; text-transform:uppercase; color:var(--muted); }
  .mobile-benefit-hint > b { font-weight:400; color:var(--ink); }
  .extras-grid.is-mobile-carousel { position:relative; display:flex; align-items:stretch; gap:14px; margin:0 calc(-1 * var(--pad)); padding:0 var(--pad) 13px; overflow-x:auto; overflow-y:hidden; scroll-snap-type:x mandatory; scroll-padding-inline:var(--pad); scrollbar-width:none; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; }
  .extras-grid.is-mobile-carousel::-webkit-scrollbar { display:none; }
  .extras-grid.is-mobile-carousel > article,
  .extras-grid.is-mobile-carousel > article + article { flex:0 0 calc(100% - 24px); min-width:0; border:1px solid var(--line); padding:18px; scroll-snap-align:start; background:#e9e8e1; }
  .extras-grid.is-mobile-carousel > article::before { content:""; position:absolute; inset:0 0 auto; height:3px; background:var(--red); }
  .extras-grid.is-mobile-carousel > article:last-child { margin-right:24px; }
  .extras-grid.is-mobile-carousel .feature-top { min-height:30px; }
  .extras-grid.is-mobile-carousel .feature-top .mono { font-size:7px; }
  .extras-grid.is-mobile-carousel .feature-top > .bold-arrow { width:24px; height:24px; }
  .extras-grid.is-mobile-carousel .feature-emblem { width:64px; height:64px; top:67px; right:20px; }
  .extras-grid.is-mobile-carousel .coupon-ticket { width:calc(100% - 12px); max-width:290px; margin:28px auto 29px; padding:16px 18px 14px; }
  .extras-grid.is-mobile-carousel .coupon-ticket > strong { font-size:96px; }
  .extras-grid.is-mobile-carousel .coupon-ticket > strong > span { font-size:72px; }
  .extras-grid.is-mobile-carousel .coupon-ticket > .mono { font-size:6px; }
  .extras-grid.is-mobile-carousel .coupon-ticket-bottom { padding-top:7px; }
  .extras-grid.is-mobile-carousel .coupon-ticket-bottom button { min-height:44px; }
  .extras-grid.is-mobile-carousel .coupon-ticket-bottom > .mono { font-size:14px; }
  .extras-grid.is-mobile-carousel .price-drop-art { height:260px; margin:0; }
  .extras-grid.is-mobile-carousel .old-price { font-size:57px; }
  .extras-grid.is-mobile-carousel .price-drop-art strong { font-size:91px; }
  .extras-grid.is-mobile-carousel .price-drop-art > .drop-arrow { width:60px; height:60px; }
  .extras-grid.is-mobile-carousel h3 { font-size:clamp(32px,9.3vw,45px); }
  .extras-grid.is-mobile-carousel p { font-size:12px; line-height:1.65; }
  .extras-grid.is-mobile-carousel .text-button { min-height:44px; font-size:11px; }
  .extras-grid.is-mobile-carousel .alert-preview { margin-top:17px; padding:12px; gap:9px; }
  .extras-grid.is-mobile-carousel .alert-preview strong { font-size:11px; }
  .extras-grid.is-mobile-carousel .alert-preview p { font-size:10px; }
  .extras-grid.is-mobile-carousel .alert-icon { width:28px; height:28px; }
  .extras-grid.is-mobile-carousel > article.is-visible { opacity:1; transform:none; }

  .history-head { margin-bottom:23px; }
  .history-stat { margin-top:20px; }
  .coverage-content { gap:20px; }
  .retailers { margin-top:24px; }
  .faq-layout { gap:25px; }
  .faq summary { min-height:60px; padding-top:18px; padding-bottom:18px; }
  .closing { min-height:660px; padding-top:34px; }
  .closing-character { height:340px; width:94%; right:-3%; bottom:-38px; }
  .closing-disc { width:100%; bottom:-25%; }
}

@media (max-width:360px) {
  .journey.is-native .journey-track { height:600px; }
  .journey-product > img { height:128px; }
  .journey-copy p { font-size:11px; }
  .extras-grid.is-mobile-carousel > article,
  .extras-grid.is-mobile-carousel > article + article { padding:15px; }
  .extras-grid.is-mobile-carousel .coupon-ticket { padding:14px; }
  .extras-grid.is-mobile-carousel .coupon-ticket > strong { font-size:85px; }
  .extras-grid.is-mobile-carousel .coupon-ticket > strong > span { font-size:65px; }
  .mobile-benefit-nav button { font-size:10px; padding:10px; gap:8px; }
}

@media (prefers-reduced-motion:reduce) {
  .extras-grid.is-mobile-carousel { scroll-behavior:auto; }
}
