@media (max-width:820px){
  .nav-inner{padding:16px 24px; flex-wrap:wrap;}
  .menu-toggle{display:block;}

  .main-navigation{
    position:absolute; top:82px; left:0; width:100%;
    background:#fff; border-top:1px solid var(--sand-200);
    display:none; box-shadow:0 10px 30px rgba(31,45,65,.12);
  }
  .main-navigation.active{display:block;}
  .main-navigation ul{flex-direction:column; align-items:flex-start; gap:0; padding:12px 0;}
  .main-navigation li{width:100%;}
  .main-navigation a{width:100%; padding:14px 24px; justify-content:space-between;}

  .sub-menu{
    position:static; display:none; border:none; border-radius:0;
    box-shadow:none; background:#f8fbfd; padding:0; min-width:100%;
  }
  .menu-item-has-children.open > .sub-menu{display:block;}
  .menu-item-has-children:hover > .sub-menu{display:none;}
  .menu-item-has-children.open:hover > .sub-menu{display:block;}
  .sub-menu a{padding:12px 42px; font-size:14px;}

  .page-header-banner h1,
  .hero-banner h1{font-size:1.7rem;}
  .page-header-banner{padding:52px 20px 48px;}
  .hero-banner{padding:56px 20px 48px;}
  .cta{padding:36px 24px;}
  .hero-banner .hero-grid{
    grid-template-columns:1fr;
  }
}

@media (max-width:520px){
  .footer-widgets .wrap{grid-template-columns:1fr;}
}
