/* ── kill horizontal drag on every page ─────────── */
html,body{max-width:100%;overflow-x:hidden}
img,svg,video,iframe{max-width:100%;height:auto}

/* ── mobile hamburger ───────────────────────────── */
.acha-burger{display:none;background:none;border:0;padding:10px;margin:0;cursor:pointer;line-height:0}
.acha-burger span{display:block;width:22px;height:2px;background:currentColor;margin:4px 0;transition:transform .22s ease,opacity .22s ease}
.acha-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.acha-burger[aria-expanded="true"] span:nth-child(2){opacity:0}
.acha-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}

@media(max-width:860px){
  .acha-burger{display:block}

  /* every nav link hides except Home — overrides page CSS */
  header nav a:not(.nav-home){display:none!important}

  header nav{
    display:flex!important;align-items:center;gap:18px!important;
    flex:none;min-width:0;
  }
  header nav a.nav-home{display:inline-block!important;font-size:14px}

  /* open state: full-width vertical panel below the bar */
  body.acha-open header nav{
    position:absolute;top:100%;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:0!important;
    background:#fff;border-bottom:1px solid #E4E2DE;
    padding:8px 28px 22px;
  }
  body.acha-open header nav a{
    display:block!important;padding:15px 0;font-size:17px;
    border-bottom:1px solid #E4E2DE;text-align:left;
  }
  body.acha-open header nav a:last-child{border-bottom:none}
  body.acha-open header nav a.nav-cta{
    margin-top:16px;border-radius:999px;text-align:center;border-bottom:none;
  }
  body.acha-open{overflow:hidden}
}
@media(prefers-reduced-motion:reduce){.acha-burger span{transition:none}}

/* ── hide the site's original burger, keep ours ─── */
@media(max-width:860px){
  header button:not(.acha-burger),
  header [class*="burger"]:not(.acha-burger),
  header [class*="hamburger"]:not(.acha-burger),
  header [class*="menu-toggle"]:not(.acha-burger),
  header [class*="nav-toggle"]:not(.acha-burger),
  header [id*="menu-toggle"]:not(.acha-burger),
  header label[for*="menu"]{display:none!important}
}

/* ── let wide content wrap instead of getting clipped ─── */
@media(max-width:860px){
  section *, footer *, main *{min-width:0}
  section a, section span, section p, section div,
  footer a, footer span, footer p, footer div{
    overflow-wrap:anywhere;word-break:break-word;
  }
}

/* ── iframes need an explicit height; auto collapses them ─── */
iframe{height:auto}
iframe[src*="beatstars"]{
  width:100%!important;
  height:900px!important;
  min-height:900px;
  border:0;
  display:block;
}
@media(max-width:860px){
  iframe[src*="beatstars"]{height:1100px!important;min-height:1100px}
}
