/* ---------------- RESPONSIVE ---------------- */
@media (max-width:1100px){
  .es-grid{grid-template-columns:repeat(3,1fr)}
  .wins-grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  :root{--gx:1.25rem}
  .hero-title,.plan-hero .hero-title,.next-sec .hero-title{font-size:min(2.6rem,8.6vw)}
  .wipe-title{font-size:min(3.5rem,9vw)}
  .wipe-sub{display:none}
  .cover .subtitle{font-size:1.1rem}
  .cover .hero-title{font-size:min(1.9rem,6.5vw)}
  .es-grid{grid-template-columns:1fr 1fr}
  .marquee{font-size:3.5rem}
  .lb-rail{display:none}
  .slide{height:auto;min-height:100dvh;padding:7.5rem var(--gx) 4rem}
  .lb-hero{height:100dvh;min-height:0;padding:0}
  .ms-grid{grid-template-columns:1fr;gap:2rem}
  .vc-vol,.vc-time{display:none}
  .slide-video .video-box{height:auto;width:100%;aspect-ratio:16/9}
  .ch-title{font-size:1.6rem}
  .kpis,.m-kpis .kpis{--cols:2!important}
  .case{grid-template-columns:1fr}
  .case-media{min-height:12rem}
  .case-body{padding:2rem}
  .split,.prod-grid,.talent-grid{grid-template-columns:1fr}
  .plan-landing{grid-template-columns:1fr;padding-top:6rem}
  .plan-page{padding-top:4.5rem;padding-bottom:3rem}
  .pnav{flex-direction:column;align-items:flex-start;gap:.75rem}
  .tabs{width:100%}
  .subnav{flex-wrap:wrap}.subnav .crumb{flex-basis:100%;margin-left:0}
  .stage{grid-template-columns:1fr;gap:1.5rem;padding:1.5rem 0 2rem}
  .stage-title{font-size:2.2rem}
  .cards{--cols:1!important}
  .people{grid-template-columns:1fr}
  .tl{grid-template-columns:1fr 1fr;row-gap:2rem}
  .pageno,.frame-bot{display:none}
  /* mobile shell: compact header, badge up top, nothing floats over content */
  .frame-top{padding:.6rem var(--gx);gap:.5rem}
  .frame-txt{display:none}
  .menu-btn{height:2.5rem;padding:0 .75rem;gap:.6rem;letter-spacing:.2em}
  .frame-top .logo-solo{width:4rem}
  .lb-hero .eyebrow{padding-top:3rem}
}
@media (max-width:560px){
  .es-grid,.wins-grid{grid-template-columns:1fr 1fr}
  .kpis,.m-kpis .kpis{--cols:1!important}
  .kpi .num{font-size:2rem}
  .case-res{grid-template-columns:1fr 1fr 1fr}
  .frame-bot .copy{display:none}
}
@media (prefers-reduced-motion:reduce){
  *{animation-duration:.01ms!important;transition-duration:.01ms!important}
}
