html,
body { max-width:100%; overflow-x:clip; }
img,video,svg { max-width:100%; }
h1,h2,h3,button { overflow-wrap:normal; word-break:normal; }
p,a { overflow-wrap:break-word; }
.room-sticky-cta { display:none; }

@media (max-width:767px) {
  main { width:100%; }
  .text-display-lg { font-size:clamp(2.5rem,12vw,3.4rem); line-height:1.05; }
  .text-headline-xl { font-size:clamp(2rem,9vw,2.6rem); line-height:1.15; }
  .site-mobile-menu .site-nav-link.text-amber-500 { background:rgba(245,158,11,.08); border-bottom:0; padding-bottom:.75rem; }
  .home-main>.home-hero { order:1; }
  .home-main>.home-featured { order:2; }
  .home-main>.home-bundle { order:2; }
  .home-main>.home-usps { order:3; }
  .home-main>.home-reviews { order:4; }
  .home-main>.home-steps { order:5; }
  .home-main>.home-newsletter { order:6; }
  .home-step-card { display:grid; grid-template-columns:3rem 1fr; column-gap:1rem; row-gap:.2rem; align-items:center; text-align:left; }
  .home-step-card>div:first-child { grid-row:1/3; font-size:1.75rem; text-align:center; }
  .home-step-card h4,.home-step-card p { margin:0; }
  .how-step-card { display:grid; grid-template-columns:2.75rem 1fr; gap:.25rem .85rem; align-items:center; }
  .how-step-card>div { display:contents; }
  .how-step-card>div>div:first-child { grid-row:1/3; margin:0; }
  .how-step-card h3,.how-step-card p { margin:0; }
  .coming-room-card { display:grid; grid-template-columns:3rem 1fr; justify-items:start; gap:.15rem 1rem; text-align:left; }
  .coming-room-card>div:first-child { grid-row:1/3; width:3rem; height:3rem; margin:0; }
  .coming-room-card h3,.coming-room-card p { margin:0; }
  .coming-room-card>div:last-child { display:none; }
  .room-sticky-cta { position:fixed; left:10px; right:10px; bottom:calc(10px + env(safe-area-inset-bottom)); z-index:45; display:grid; grid-template-columns:1fr auto; align-items:center; gap:12px; padding:10px 10px 10px 14px; border:1px solid rgba(233,193,118,.24); border-radius:14px; background:rgba(14,14,15,.96); box-shadow:0 18px 45px rgba(0,0,0,.52); backdrop-filter:blur(18px); }
  .room-sticky-cta strong,.room-sticky-cta small { display:block; }
  .room-sticky-cta strong { color:#f2eadb; font:600 .82rem/1.2 "Noto Serif",serif; }
  .room-sticky-cta small { margin-top:3px; color:#e9c176; font:700 .68rem/1 Manrope,sans-serif; }
  .room-sticky-cta button { min-height:44px; padding:0 16px; border-radius:10px; background:#e9c176; color:#261900; font:700 .72rem/1 Manrope,sans-serif; letter-spacing:.06em; text-transform:uppercase; }
  .room-product-page { padding-bottom:calc(82px + env(safe-area-inset-bottom)); }
}
