/* Responsive */
@media (max-width:1520px){
  .hdr__phone span{display:none}
  .hdr__in{gap:20px}
}
@media (max-width:1280px){
  .nav__link{padding:10px 8px;font-size:.85rem}
  .ftr__top{grid-template-columns:1.4fr 1fr 1fr 1fr;}
  .ftr__contact{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,auto) 1fr;align-items:center;gap:20px}
  .ftr__contact h3{grid-column:1/-1;margin:0}
  .ftr__contact ul{display:contents}
  .ftr__contact li{margin:0}
  .ftr__contact .btn{margin:0;justify-self:end}
}
@media (max-width:1240px){
  .nav,.hdr__phone{display:none}
  .burger{display:block}
  .hdr__cta{margin-left:auto}
  .hdr.is-menu{background:var(--navy);border-color:rgba(255,255,255,.1)}
  .hdr.is-menu :is(.brand,.burger){color:#fff}
  .hdr.is-menu .burger{border-color:rgba(255,255,255,.3)}
  .hdr.is-menu .btn{opacity:0;pointer-events:none}
  .bento__c--a,.bento__c--d{grid-column:span 6}.bento__c--b,.bento__c--c{grid-column:span 6}
  .cm__grid,.adv__grid{grid-template-columns:repeat(2,1fr)}
  .cons__grid{grid-template-columns:repeat(2,1fr)}
  .cons__c:nth-child(3){border-left:0}
  .cons__c:nth-child(n+3){border-top:1px solid var(--line)}
  .wmini__grid{grid-template-columns:repeat(2,1fr)}
  .git__bar{grid-template-columns:1fr 1fr;gap:20px}
}
@media (max-width:1024px){
  .hhero__grid,.phero__grid,.testi__grid,.why__grid,.types__grid,.consult__grid,.split,.what__grid,.low__grid,.refin__grid,.offer__grid,.spec__grid,.sheet__grid,.feat__grid,.mv2__grid,.edit__grid{grid-template-columns:1fr}
  .split--rev .split__media{order:0}
  .hhero__media{height:auto;aspect-ratio:4/3;min-height:0}
  .phero--split .phero__media{aspect-ratio:4/3;max-height:none}
  .trust{grid-template-columns:1fr 1fr}
  .trust__i:nth-child(3){padding-left:0;border-left:0}
  .trust__i:nth-child(n+3){border-top:1px solid rgba(255,255,255,.14)}
  .types__head,.why__sticky,.spec__aside,.sheet__media{position:static}
  .frame--why{max-width:560px}
  .git__head{grid-template-columns:1fr}
  .git__head .lead{justify-self:start}
  .rel__grid{grid-template-columns:1fr 1fr}
  .rel__grid>:nth-child(3){grid-column:1/-1}
  .rel__grid>:nth-child(3) .rel__media{aspect-ratio:21/9}
  .mv2__grid .frame--tall{aspect-ratio:16/10}
  .offer__aside .frame{max-width:none;aspect-ratio:16/9}
  .phero__wide{aspect-ratio:16/9}
  .ftr__top{grid-template-columns:1fr 1fr 1fr}
  .ftr__brand{grid-column:1/-1}
  .sec__head--row{grid-template-columns:1fr}
}
@media (max-width:768px){
  :root{--hdr:72px}
  .hdr.is-scrolled{--hdr:64px}
  .hdr .btn{display:none}
  .aud__grid{grid-template-columns:1fr}
  .aud+.aud{border-left:0;border-top:1px solid var(--line)}
  .aud{min-height:0;padding:32px 8px}
  .aud small{margin-top:28px}
  .idx--2{grid-template-columns:1fr}
  .idx--2 li:nth-child(2){border-top:0}
  .bento{grid-auto-rows:auto}
  .bento__c--a,.bento__c--b,.bento__c--c,.bento__c--d{grid-column:1/-1}
  .bento__c--img{min-height:520px}
  .steps{grid-template-columns:1fr;gap:48px}
  .steps__line{left:24px;right:auto;top:0;bottom:0;width:1px;height:auto}
  .steps__line::after{transform:scaleY(0);transform-origin:top}
  .steps.is-in .steps__line::after{transform:scaleY(1)}
  .step{padding-left:56px;padding-top:0}
  .step::before{left:19px;top:6px}
  .step__n{font-size:3.6rem;margin-bottom:16px}
  .cols2,.mv__grid,.low__blocks,.vs,.figs,.cc__grid,.spec__list,.tiles,.cm__grid,.adv__grid,.cons__grid{grid-template-columns:1fr}
  .cons__c+.cons__c{border-left:0;border-top:1px solid var(--line)}
  .vs__x{justify-self:center}
  .fig{padding:24px 0}
  .fig+.fig{padding-left:0;border-left:0;border-top:1px solid var(--line)}
  .reason{grid-template-columns:1fr;gap:12px;padding:36px 0}
  .reason__n{font-size:4rem}
  .form{grid-template-columns:1fr;padding:28px 22px 32px}
  .consult__panel{padding:36px 24px}
  .consult__grid{border-radius:var(--r)}
  .rel__grid{grid-template-columns:1fr}
  .rel__grid>:nth-child(3) .rel__media{aspect-ratio:3/2}
  .ftr__top{grid-template-columns:1fr 1fr}
  .ftr__contact{display:block}
  .ftr__contact ul{display:block}
  .ftr__contact li{margin-bottom:12px}
  .ftr__contact .btn{margin-top:16px}
  .git__bar{grid-template-columns:1fr;padding:22px}
  .git__bar .btn{justify-self:start}
  .map__frame{aspect-ratio:4/5}
  .map__card{left:12px;right:12px;bottom:12px;max-width:none}
  .sheet__r{grid-template-columns:1fr;gap:4px}
  .sheet__r dd{text-align:left}
  .wa-fab{bottom:84px;right:16px;width:48px;height:48px}
  .totop{right:16px;bottom:24px;width:48px;height:48px}
  .phero--full{min-height:max(560px,88svh)}
  .car{padding:32px 24px 28px;min-height:0}
  .clipframe{--cut:36px}
  .mq{padding:18px 0}
}
@media (max-width:600px){
  .wmini__grid{grid-template-columns:1fr}
  .wmini{min-height:0;gap:28px}
  .trust{grid-template-columns:1fr}
  .trust__i{padding:18px 0!important;border-left:0!important}
  .trust__i+.trust__i{border-top:1px solid rgba(255,255,255,.14)}
  .hhero__card{left:12px;right:12px;bottom:12px;max-width:none;padding:16px}
  .hhero__media{aspect-ratio:4/5}
  .hhero__mark{right:14px;width:40px}
  .hhero__mark .mark{width:40px;height:40px}
  .hero__acts{flex-direction:column;align-items:stretch}
  .hero__acts .btn{justify-content:space-between}
  .ctaband__acts .btn{width:100%;justify-content:space-between}
  .ftr__top{grid-template-columns:1fr}
  .ftr__bot{flex-direction:column;align-items:flex-start}
  .idx__row{grid-template-columns:36px 1fr 24px;padding:18px 4px}
  .idx__tag{display:none}
  .idx__row:hover{padding-left:12px}
  .why__row{grid-template-columns:48px 1fr;padding:28px 0}
  .why__n{font-size:2rem}
  .form__foot .btn{width:100%;justify-content:space-between}
  .op{grid-template-columns:44px 1fr}
  .op__n{display:none}
  .chip{left:12px;bottom:12px}
  .sheet__r--hi dd{font-size:1.35rem}
  .qa{margin-top:-24px}
}
@media (max-width:390px){
  .brand__word b{font-size:.9rem}
  .mark{width:34px;height:34px}
  .display--xl{font-size:3.1rem}
  .display{font-size:2.7rem}
}

/* Fix: comparison tables fit on phones instead of hiding columns behind a sideways scroll */
@media (max-width:600px){
  .tbl table{min-width:0}
  .tbl caption{padding:16px 14px 0}
  .tbl th,.tbl td{padding:14px 12px;font-size:.92rem;line-height:1.4}
  .tbl thead th{font-size:.68rem;letter-spacing:.04em}
  .tbl__hi{font-size:1rem!important}
}

/* Keep footer text clear of the floating chat / WhatsApp / back-to-top buttons */
.ftr__bot{padding-bottom:88px}
@media (max-width:600px){
  .ftr__credit{padding-right:64px}
  .ftr__bot{padding-bottom:96px}
}
