/* responsive.css — breakpoint overrides (mobile gets its own composition) */
@media (max-width:1300px){.header-tools .btn--ghost.hide-sm{display:none}}
/* the header (logo + 6 links + account/language/theme/CTA) needs ~1140px: collapse to the hamburger below that */
@media (max-width:1140px){
  .main-nav,.hide-sm,.header-tools .lang-switch,.header-tools .theme-toggle{display:none}
  .nav-toggle{display:inline-flex}
  .brand img{height:40px}
  .header-row{min-height:68px}
}
@media (max-width:1100px){
  .svc-grid{grid-template-columns:repeat(2,1fr)}
  .steps,.why{grid-template-columns:repeat(2,1fr)}
  .footer-grid{grid-template-columns:1fr 1fr}
  .main-nav{gap:var(--sp-4)}
}
@media (max-width:900px){
  .hero{padding-block:var(--sp-7) var(--sp-8)}
  .hero-grid,.video-band .wrap,.split,.home-contact,.contact-layout{grid-template-columns:1fr}
  .showcase{max-width:420px}
  .float-chip--1{left:2%}.float-chip--2{right:2%}
  .contact-aside{position:static}
  .list-summary{grid-template-columns:1fr auto 28px;grid-template-areas:"n p c" "d d d"}
  .list-summary .list-name{grid-area:n}.list-summary .price{grid-area:p}.list-summary .chev{grid-area:c}.list-summary .list-desc{grid-area:d}
  .list-body{grid-template-columns:1fr}
  .list-media{order:-1}
  .section{padding-block:var(--sp-7)}
  .utility-bar .util-right{display:none}
}
@media (max-width:640px){
  .wrap{padding-inline:var(--sp-4)}
  .svc-grid,.steps,.why,.footer-grid,.form-grid{grid-template-columns:1fr}
  .hero-facts{grid-template-columns:1fr;gap:var(--sp-3)}
  .hero-fact{display:flex;gap:var(--sp-3);align-items:baseline;flex-wrap:wrap}
  .float-chip{font-size:var(--fs-100);padding:8px 12px}
  .float-chip--3{display:none}
  .btn-row .btn{flex:1 1 100%}
  .cta-band .wrap{flex-direction:column;align-items:flex-start}
  .form-card{padding:var(--sp-5)}
  .util-left{gap:var(--sp-4)}
  .util-left a:nth-child(2){display:none}
  .board{padding:var(--sp-4)}
  .board-name{font-size:var(--fs-200)}
  .footer-bottom{flex-direction:column}
  .list-summary{padding:var(--sp-4)}
  .list-body{padding:0 var(--sp-4) var(--sp-4)}
}
@media (max-width:360px){
  h1{font-size:2.3rem}
  .brand img{height:34px}
  .btn{padding-inline:var(--sp-4)}
}

/* prevent grid children from forcing horizontal overflow on narrow screens */
.split>*,.contact-layout>*,.home-contact>*,.hero-grid>*,.video-band .wrap>*,.list-summary>*,.list-body>*,.footer-grid>*{min-width:0}
.list-desc,.board-name,.info-item p,.info-item a{overflow-wrap:anywhere}
@media (max-width:900px){.list-summary{grid-template-columns:minmax(0,1fr) auto 28px}}

@media (max-width:420px){.mobile-cta .btn--sm{padding-inline:var(--sp-2);font-size:var(--fs-100)}}
