@media (prefers-reduced-motion:reduce){
  *{scroll-behavior:auto!important;animation:none!important;transition:none!important}
  .reveal{opacity:1!important;transform:none!important}
}

@media(max-width:1020px){
  .menu{display:none}
  .mobile-toggle{display:flex}
  .nav-cta{display:none}
  .menu.mobile-open{display:flex;position:absolute;top:82px;left:20px;right:20px;background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);padding:18px;flex-direction:column;align-items:stretch}
  .hero-grid,.authority-grid,.story,.cta-box,.protection-grid{grid-template-columns:1fr}
  .hero-photo{min-height:570px}
  .grid3,.process,.numbers{grid-template-columns:1fr 1fr}
  .contact-strip-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 230px 230px}
  .gallery .g1{grid-column:1/3;grid-row:auto}
}

@media(max-width:700px){
  .container{width:min(100% - 28px,1180px)}
  section{padding:70px 0}
  .navin{height:72px}
  .brand-logo{width:205px}
  .menu.mobile-open{top:72px;left:14px;right:14px}
  .hero{padding:42px 0 35px}
  h1{font-size:46px}
  .lead{font-size:18px}
  .hero-photo{min-height:500px;border-radius:28px}
  .hero-card{left:14px;right:14px;bottom:14px}
  .trustline,.grid3,.process,.numbers,.faq{grid-template-columns:1fr}
  .authority-card{padding:22px}
  .gallery{grid-template-columns:1fr;grid-template-rows:repeat(3,260px)}
  .gallery .g1{grid-column:auto}
  .cta-box{padding:30px 20px;border-radius:28px}
  .footer-grid{grid-template-columns:1fr}
  .footer-logo{width:270px}
  .floating-wa{right:14px;bottom:14px}
}

@media(max-width:430px){
  .container{width:min(100% - 22px,1180px)}
  h1{font-size:41px}
  h2{font-size:36px}
  .brand-logo{width:182px}
  .hero-photo{min-height:450px}
  .btn{width:100%}
  .hero-actions{display:grid;grid-template-columns:1fr}
  .authority-card{flex-direction:column}
  .story-photo{min-height:450px}
  .contact-card{padding:18px}
  .footer-main{padding-top:50px}
}

@media(max-width:1020px){
  .certification-grid{grid-template-columns:1fr}
}

@media(max-width:700px){
  .certification{padding:58px 0}
  .cert-info{padding:26px 22px}
  .cert-image-card{padding:12px}
  .floating-call{display:grid}
}
