@media (max-width: 850px) {
  html { scroll-padding-top: 76px; }
  body { overflow-x: clip; }
  .header-inner { min-height: 68px; gap: 12px; }
  .header .container { min-width: 0; }
  .header .logo { max-width: calc(100% - 64px); }
  .nav.open { max-height: calc(100dvh - 68px); overflow-y: auto; overscroll-behavior: contain; padding-block: 14px 22px; }
  .nav.open .nav-link, .nav.open .nav-cta { min-height: 44px; display: flex; align-items: center; }
  .section, .bm-service-section { scroll-margin-top: 78px; }
  .about-layout, .service-line, .bm50-ref-grid { min-width: 0; }
  .about-layout > *, .service-line > *, .bm50-ref-grid > * { min-width: 0; }
}
@media (max-width: 600px) {
  html { -webkit-text-size-adjust: 100%; }
  body { width: 100%; }
  .container { width: min(100% - 36px, var(--max, 1200px)); margin-inline: auto; }
  main { min-width: 0; }
  main img, main video, main iframe { max-width: 100%; }
  main h1, main h2, main h3, main p, main a { overflow-wrap: break-word; }
  .page-hero { padding-block: 54px 60px; }
  .page-hero h1 { font-size: clamp(2.35rem, 10.5vw, 3.35rem); line-height: 1.09; letter-spacing: -.045em; }
  .page-hero p { max-width: 100%; line-height: 1.6; }
  .section { padding-block: 44px; }
  .section h2, .bm-service-section h2 { line-height: 1.16; }
  .bm20-hero { overflow: clip; }
  .bm20-hero .bm20-hero-copy, .bm20-hero .bm20-image-wrap { min-width: 0; }
  .bm20-actions { align-items: flex-start; }
  .bm20-actions a { max-width: 100%; }
  .bm50-services .bm74-editorial { grid-template-columns: minmax(0,1fr); }
  .bm74-service-item { grid-template-columns: 24px minmax(0,1fr) 18px; gap: 9px; }
  .bm74-service-copy strong { font-size: clamp(1.13rem, 5.2vw, 1.35rem); }
  .bm74-service-copy span { line-height: 1.55; }
  .bm72-overview-grid { grid-template-columns: minmax(0,1fr); }
  .bm72-overview-grid .bm-overview-card { min-height: 0; }
  .bm72-pricing-info > .price-card { min-width: 0; }
  .pricing-grid, .grid, .steps { grid-template-columns: minmax(0,1fr); }
  .price-card, .legal-panel, .legal-pane { min-width: 0; overflow-wrap: anywhere; }
  .about-layout, .service-line { grid-template-columns: minmax(0,1fr); gap: 24px; }
  .editorial-copy { font-size: 1rem; line-height: 1.7; }
  .footer { padding-top: 44px; }
  .footer > .container { grid-template-columns: minmax(0,1fr); gap: 26px; }
  .footer-links { min-width: 0; }
  .footer-bottom { gap: 10px; }
  .bm-language-floating { left: max(8px,env(safe-area-inset-left)); bottom: max(8px,env(safe-area-inset-bottom)); }
  .bm-sound-dock { right: max(8px,env(safe-area-inset-right)); bottom: calc(54px + env(safe-area-inset-bottom)); }
  .bm-privacy-control { right: max(8px,env(safe-area-inset-right)); bottom: max(8px,env(safe-area-inset-bottom)); }
  .bm-privacy-control button { max-width: min(66vw, 220px); white-space: normal; text-align: center; }
  input, select, textarea { max-width: 100%; font-size: 16px; }
}
@media (max-width: 380px) {
  .container { width: calc(100% - 28px); }
  .page-hero h1 { font-size: clamp(2rem, 10vw, 2.5rem); }
  .bm74-service-item { grid-template-columns: 21px minmax(0,1fr) 16px; gap: 7px; }
  .bm74-service-copy strong { font-size: 1.12rem; }
  .bm74-service-copy span { font-size: .85rem; }
  .bm-language-floating summary { font-size: .7rem; }
  .bm-privacy-control button { font-size: 10px; }
}
