.capability-commercial .media-detail{display:none!important}

@media (max-width: 720px) {
  html, body { overflow-x: hidden; }
  body { -webkit-text-size-adjust: 100%; padding-bottom: calc(88px + env(safe-area-inset-bottom)) !important; }
  .container { width: min(calc(100% - 28px), var(--max)); }

  .section { padding: 48px 0 !important; }
  .eyebrow { font-size: 10px !important; letter-spacing: .16em !important; margin-bottom: 8px !important; }
  .section-heading h2,
  .reviews-home h2,
  .reviews-page-hero h1,
  .page-hero h1,
  .section-title,
  .copy h2,
  .cta-band h2 { font-size: clamp(2rem, 9.8vw, 2.8rem) !important; line-height: 1.04 !important; letter-spacing: -.04em !important; }
  p { overflow-wrap: anywhere; }

  .hero-layout { padding: 32px 0 26px !important; }
  .hero-copy h1 { font-size: clamp(2.42rem, 11vw, 3.1rem) !important; line-height: 1.01 !important; }
  .hero-lead { max-width: 34rem; font-size: 14px !important; line-height: 1.55 !important; }
  .hero-actions { gap: 10px !important; }
  .hero-actions .button { min-height: 52px; border-radius: 10px; }

  .division-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 14px !important; }
  .division-card { min-height: 360px !important; border-radius: 16px !important; }
  .division-card img { width: 100% !important; height: 100% !important; object-fit: cover !important; }
  .division-card-content { padding: 22px !important; }
  .division-card h3 { font-size: 1.72rem !important; line-height: 1.06 !important; }
  .division-card p:not(.card-kicker) { font-size: 13px !important; line-height: 1.5 !important; }

  .reviews-home { padding: 48px 0 52px !important; }
  .reviews-home-head { display: block !important; margin-bottom: 24px !important; }
  .reviews-home-head > p { margin-top: 14px !important; font-size: 13px !important; line-height: 1.55 !important; }
  .review-summary { gap: 8px 10px !important; margin-top: 16px !important; }
  .review-summary .review-stars { font-size: 15px !important; }
  .review-summary strong { font-size: 12px !important; }
  .review-summary > span:last-child { width: 100%; font-size: 11px !important; }
  .home-review-grid { gap: 12px !important; width: 100% !important; overflow-x: scroll !important; overflow-y: hidden !important; padding: 2px 14px 8px 0; scroll-snap-type: none !important; scroll-behavior: auto !important; scrollbar-width: none !important; animation: none !important; transform: none !important; }
  .home-review-grid::-webkit-scrollbar { display: none !important; }
  .home-review-grid .review-card { flex: 0 0 70vw !important; width: 70vw !important; min-height: 280px !important; padding: 20px !important; scroll-snap-align: none !important; border-radius: 16px !important; }
  .review-card blockquote { font-size: 13.5px !important; line-height: 1.58 !important; margin: 14px 0 20px !important; }
  .review-card-footer { gap: 10px !important; }
  .google-mark { font-size: 9px !important; }
  .reviews-home-actions { display: grid !important; gap: 9px !important; margin-top: 24px !important; }
  .reviews-home-actions .button { width: 100% !important; }

  .reviews-page-hero { padding: 58px 0 48px !important; }
  .reviews-page-hero > .container > p:not(.eyebrow) { font-size: 14px !important; line-height: 1.55 !important; }
  .reviews-page { padding-top: 28px !important; }
  .reviews-toolbar { margin-bottom: 22px !important; }
  .review-filters { gap: 7px !important; }
  .review-filter { padding: 9px 13px !important; font-size: 11px !important; }
  .reviews-count { width: 100%; padding: 8px 0 0 !important; font-size: 10px !important; }
  .reviews-grid, .reviews-grid.filtered { grid-template-columns: 1fr !important; gap: 12px !important; }
  .reviews-page .review-card { min-height: 0 !important; padding: 21px !important; }
  .reviews-cta { margin-top: 38px !important; padding: 24px !important; border-radius: 16px !important; }
  .reviews-cta .button { width: 100%; }

  .seo-nav { min-height: 68px !important; gap: 8px !important; }
  .seo-logo img { width: 126px !important; height: 54px !important; }
  .seo-call { min-height: 42px !important; padding: 0 10px !important; font-size: 11px !important; border-radius: 9px !important; }
  .breadcrumbs { padding: 10px 0 !important; font-size: 11px !important; }
  .page-hero-inner { padding: 38px 0 !important; gap: 18px !important; }
  .page-hero .lead { font-size: 14px !important; line-height: 1.55 !important; }
  .hero-proof { padding: 17px !important; border-radius: 13px !important; }
  .hero-proof h2 { font-size: 18px !important; }
  .hero-proof li { font-size: 12px !important; line-height: 1.5 !important; }
  .content-grid, .split-highlight { gap: 22px !important; }
  .copy p { font-size: 14px !important; line-height: 1.62 !important; }
  .copy h3 { margin-top: 24px !important; font-size: 1.2rem !important; }
  .service-panel { border-radius: 14px !important; box-shadow: 0 14px 36px rgba(8,16,20,.10) !important; }
  .service-panel img { aspect-ratio: 4 / 3 !important; object-fit: cover !important; }
  .service-panel-body { padding: 18px !important; }
  .service-panel h2 { font-size: 1.3rem !important; }
  .service-catalog, .card-grid, .process { grid-template-columns: 1fr !important; gap: 11px !important; }
  .service-group, .info-card, .process article { padding: 20px !important; border-radius: 13px !important; }
  .split-highlight img { min-height: 220px !important; height: 240px !important; object-fit: cover !important; border-radius: 14px !important; }
  .highlight-card { padding: 22px !important; border-radius: 14px !important; }
  .faq-list details { padding: 15px 16px !important; }
  .faq-list summary { font-size: 14px !important; line-height: 1.4 !important; }
  .area-cloud { gap: 7px !important; }
  .area-cloud a, .area-cloud span { min-height: 38px !important; padding: 7px 11px !important; font-size: 11px !important; }
  .cta-band { padding: 48px 0 !important; }
  .cta-band p { font-size: 14px !important; line-height: 1.55 !important; }
  .seo-footer { padding: 38px 0 88px !important; }
  .seo-footer-grid { grid-template-columns: 1fr !important; gap: 22px !important; }

  .hero .open-request,
  .mobile-call { display: none !important; }
  .mobile-action-dock { position: fixed !important; left: 12px !important; right: 12px !important; bottom: calc(12px + env(safe-area-inset-bottom)) !important; z-index: 2147483647 !important; display: grid !important; grid-template-columns: minmax(0, 1fr) 116px !important; gap: 8px !important; width: auto !important; height: 50px !important; margin: 0 !important; padding: 0 !important; pointer-events: auto !important; transform: none !important; filter: none !important; isolation: auto !important; contain: none !important; }
  .mobile-action-dock[hidden] { display: none !important; }
  .mobile-request-trigger,
  .mobile-call-trigger { display: inline-flex !important; align-items: center !important; justify-content: center !important; height: 50px !important; min-height: 50px !important; margin: 0 !important; padding: 0 14px !important; border-radius: 12px !important; border: 1px solid rgba(255,255,255,.16) !important; font-family: "Barlow Condensed", sans-serif !important; font-size: 13px !important; font-weight: 800 !important; letter-spacing: .075em !important; line-height: 1 !important; text-transform: uppercase !important; text-decoration: none !important; white-space: nowrap !important; box-shadow: 0 12px 28px rgba(0,0,0,.32) !important; -webkit-appearance: none !important; appearance: none !important; }
  .mobile-request-trigger { background: #0b171b !important; color: #fff !important; }
  .mobile-call-trigger { background: linear-gradient(180deg, var(--gold-light), var(--gold)) !important; color: #111 !important; }
  .division-card,
  .division-card img,
  .capability-media,
  .capability-media img,
  .gallery-grid,
  .gallery-grid figure,
  .gallery-grid img { z-index: auto !important; transform: none !important; filter: none !important; will-change: auto !important; }

  .request-dialog { max-height: 94dvh !important; padding: 24px 16px calc(22px + env(safe-area-inset-bottom)) !important; border-radius: 18px 18px 0 0 !important; }
  .request-dialog h2, .request-dialog h1 { font-size: 2rem !important; line-height: 1.05 !important; }
  .request-form-grid { gap: 10px !important; }
  .request-form-grid input, .request-form-grid select, .request-form-grid textarea { font-size: 16px !important; }
}

@media (max-width: 390px) {
  .container { width: min(calc(100% - 24px), var(--max)); }
  .seo-logo img { width: 116px !important; }
  .seo-call { font-size: 10px !important; padding: 0 8px !important; }
  .hero-copy h1 { font-size: 2.3rem !important; }
  .home-review-grid .review-card { flex-basis: 72vw !important; width: 72vw !important; }
  .mobile-action-dock { grid-template-columns: minmax(0, 1fr) 108px !important; }
}
