/* Palm mobile — Atlas densify trees 2026-09-14 v2 */
@media (max-width: 860px) {
  a.skip-link {
    min-height: 44px !important;
    padding: 0.7rem 1rem !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  header.site-header a.lockup {
    min-height: 44px !important;
    padding-block: 0.4rem !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  header.site-header nav a,
  header.site-header a:not(.lockup) {
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 0.55rem 0.65rem !important;
    display: inline-flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
  /* flyer door links — were ~16px despite min-height on inline anchors */
  ul.doors a,
  section.flyer a,
  aside#interest a,
  main a {
    min-height: 44px !important;
    padding: 0.55rem 0.5rem !important;
    display: inline-flex !important;
    align-items: center !important;
    box-sizing: border-box !important;
  }
  footer a,
  .site-footer a {
    min-height: 44px !important;
    padding: 0.5rem 0.4rem !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  #taba-cookie-banner a,
  #cookie-consent-banner a {
    min-height: 44px !important;
    padding: 0.45rem 0.35rem !important;
    display: inline-flex !important;
    align-items: center !important;
  }
  button,
  [role="button"],
  .btn {
    min-height: 44px !important;
    min-width: 44px !important;
  }
}

/* Palm soft-lean plot-from-live 2026-09-15 — short nav + suite-card min-width; rail overflow */
@media (max-width: 860px) {
  html, body {
    max-width: 100% !important;
    overflow-x: hidden !important;
  }
  .nav-desktop a,
  .nav-desktop summary,
  .nav-drop__menu a,
  .nav-mobile summary,
  header.site-header summary {
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 0.55rem 0.65rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }
  a.suite-card,
  .suite-card,
  main a.suite-card,
  .suite-rail a,
  .shop-rail a,
  .magnet-door a,
  .magnet-door__grid a,
  .shop-door a,
  main a {
    min-height: 44px !important;
    min-width: 44px !important;
    box-sizing: border-box !important;
  }
  a.suite-card,
  .suite-card {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .suite-rail,
  .shop-rail,
  ul.suite,
  .magnet-door__grid,
  .family-grid,
  .shop-door {
    max-width: 100% !important;
    overflow-x: auto !important;
    box-sizing: border-box !important;
  }
  img, svg, video {
    max-width: 100% !important;
    height: auto !important;
  }
}

/* Palm soft-lean plot-from-live 2026-09-15 v8 — footer-nav short labels + bed rail overflow */
@media (max-width: 860px) {
  footer a,
  .site-footer a,
  nav.footer-nav a,
  .footer-nav a,
  .footer-inner a,
  .legal-assoc a,
  .legal-mail a,
  .inline-links a {
    min-height: 44px !important;
    min-width: 44px !important;
    padding: 0.5rem 0.55rem !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    flex-shrink: 0 !important;
  }
  .footer-nav,
  nav.footer-nav,
  .footer-inner,
  .inline-links {
    flex-wrap: wrap !important;
    max-width: 100% !important;
  }
  /* bed suite rail was ~43–72px over */
  .suite,
  ul.suite,
  .suite-rail,
  .shop-rail,
  .magnet-door,
  .magnet-door__grid,
  .panel,
  .panel__media,
  .hero,
  .hero__overlay,
  .slot-photo,
  .band-souvenir,
  .wrist-ruler {
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  .suite-card img,
  .slot-photo img,
  .panel__media img,
  .hero__media img,
  .slot-photo--hero {
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
  }
}

/* Palm soft-lean plot-from-live 2026-09-15 v9 — bed lockup width shoved Menu past 390 */
@media (max-width: 860px) {
  header.site-header {
    gap: 0.45rem !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }
  header.site-header > a.lockup {
    min-width: 0 !important;
    flex: 1 1 auto !important;
    max-width: calc(100% - 11.5rem) !important;
    overflow: hidden !important;
  }
  header.site-header .lockup__text {
    min-width: 0 !important;
    overflow: hidden !important;
  }
  header.site-header .lockup__text-primary,
  header.site-header .lockup__text-secondary {
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
  details.nav-mobile {
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }
  details.nav-mobile > summary {
    min-width: 44px !important;
    max-width: 5.25rem !important;
    padding-inline: 0.55rem !important;
    box-sizing: border-box !important;
  }
  .nav-mobile__sheet {
    left: max(0.75rem, env(safe-area-inset-left)) !important;
    right: max(0.75rem, env(safe-area-inset-right)) !important;
    width: auto !important;
    max-width: none !important;
    box-sizing: border-box !important;
  }
}

/* Palm AUDIT merch → flowerdrop 2026-09-16 — Sean FAIL classes, CSS only */
@media (max-width: 860px) {
  header.site-header {
    flex-wrap: nowrap !important;
    overflow: visible !important;
  }
  details.nav-mobile {
    flex: 0 0 auto !important;
    margin-left: auto !important;
    z-index: 6 !important;
  }
  details.nav-mobile > summary {
    flex: 0 0 auto !important;
  }
  .nav-mobile__sheet {
    top: calc(100% + 0.2rem) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 0 !important;
    padding: 0.3rem 0.35rem !important;
    text-align: left !important;
    z-index: 7 !important;
  }
  .nav-mobile__sheet a,
  .nav-mobile__sheet .nav-drop,
  .nav-mobile__sheet .nav-drop summary,
  .nav-mobile__group {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    text-align: left !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0.4rem 0.55rem !important;
  }
  .nav-mobile__sheet .nav-drop {
    display: block !important;
    position: static !important;
  }
  .nav-mobile__sheet .nav-drop__menu {
    position: static !important;
    left: auto !important;
    right: auto !important;
    min-width: 0 !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 0 0.55rem !important;
    gap: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
  }
  .nav-mobile__sheet .nav-drop__menu a {
    justify-content: flex-start !important;
    text-align: left !important;
  }
  .nav-mobile__sheet a.cta-character {
    justify-content: flex-start !important;
    margin-left: 0 !important;
  }

  .hero__mascot,
  .hero--plaque .hero__mascot {
    overflow: visible !important;
    height: min(11rem, 38vw) !important;
    max-height: 11rem !important;
    width: auto !important;
  }
  .hero__mascot img,
  .hero__mascot svg,
  .hero img.slot-photo--mascot {
    width: auto !important;
    max-width: none !important;
    height: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
  }

  .topic-card,
  .topic-door,
  .home-story {
    position: relative !important;
    overflow: visible !important;
  }
  .topic-card::before,
  .topic-door::before,
  .home-story::before,
  .topic-card__caption::before {
    content: none !important;
    display: none !important;
  }
  .topic-card__title,
  .topic-door__title,
  .home-story h2,
  .topic-card h2,
  .topic-door h2 {
    position: static !important;
    float: none !important;
    transform: none !important;
    font-size: 1.15rem !important;
    line-height: 1.25 !important;
    margin: 0 0 0.3rem !important;
    max-width: 100% !important;
  }
  .topic-card__text,
  .topic-door__text,
  .home-story p {
    position: static !important;
    float: none !important;
    transform: none !important;
    grid-column: auto !important;
    font-size: 0.95rem !important;
    line-height: 1.4 !important;
    margin: 0 !important;
  }
  .topic-card__caption {
    position: static !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0.35rem !important;
  }
}

@media (max-width: 860px) {
  /* Palm re-Crit 2026-09-15 merch-rack — hero overlay×mascot clip=0 (.hero + .hero--plaque) */
  .hero,
  .hero--plaque {
    min-height: 15.25rem !important;
    max-height: none !important;
  }
  .hero .hero__overlay,
  .hero--plaque .hero__overlay {
    z-index: 3 !important;
    width: min(13.75rem, calc(100% - 7.5rem)) !important;
    max-width: calc(100% - 7.5rem) !important;
    padding-right: 0.85rem !important;
    box-sizing: border-box !important;
  }
  .hero .hero__mascot,
  .hero--plaque .hero__mascot {
    left: auto !important;
    right: 0.35rem !important;
    bottom: 0.3rem !important;
    transform: none !important;
    height: auto !important;
    max-height: 5.5rem !important;
    width: auto !important;
    max-width: 5.75rem !important;
    z-index: 2 !important;
  }
  .hero .hero__mascot img,
  .hero .hero__mascot svg,
  .hero--plaque .hero__mascot img,
  .hero--plaque .hero__mascot svg {
    height: auto !important;
    max-height: 5.5rem !important;
    width: auto !important;
    max-width: 100% !important;
    object-fit: contain !important;
  }
}
