
@media (max-width:1100px){
  .mobile-submenu.mobile-submenu-categories{
    padding:10px 8px 8px !important;
    background:#f7f9f3 !important;
  }

  .mobile-category{
    margin:0 0 8px !important;
    border:1px solid rgba(111,154,64,.16) !important;
    border-radius:13px !important;
    background:#fff !important;
    overflow:hidden !important;
  }

  .mobile-category:last-child{ margin-bottom:0 !important; }

  .mobile-category-toggle{
    appearance:none !important;
    width:100% !important;
    min-height:48px !important;
    padding:0 14px !important;
    border:0 !important;
    background:#fff !important;
    color:#172033 !important;
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:12px !important;
    font:inherit !important;
    font-size:14px !important;
    font-weight:800 !important;
    text-align:left !important;
    cursor:pointer !important;
  }

  .mobile-category.open .mobile-category-toggle{
    color:#6f9a40 !important;
    background:#f7f9f3 !important;
  }

  .mobile-category-arrow{
    width:9px !important;
    height:9px !important;
    flex:0 0 9px !important;
    border-right:2px solid currentColor !important;
    border-bottom:2px solid currentColor !important;
    transform:rotate(45deg) translateY(-2px) !important;
    transition:transform .18s ease !important;
  }

  .mobile-category.open .mobile-category-arrow{
    transform:rotate(225deg) translate(-1px,-1px) !important;
  }

  .mobile-category-links{
    display:none !important;
    padding:2px 8px 9px !important;
    background:#f7f9f3 !important;
  }

  .mobile-category.open .mobile-category-links{
    display:block !important;
  }

  .mobile-category-links a{
    display:block !important;
    min-height:42px !important;
    padding:11px 10px !important;
    border-radius:9px !important;
    color:#253044 !important;
    font-size:13px !important;
    font-weight:600 !important;
    line-height:1.35 !important;
    text-decoration:none !important;
  }

  .mobile-category-links a:active,
  .mobile-category-links a.active{
    background:#eef4e8 !important;
    color:#5f8934 !important;
  }

  .mobile-nav-contact.mobile-nav-contact-compact{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:8px !important;
    margin-top:12px !important;
  }

  .mobile-nav-contact.mobile-nav-contact-compact a{
    min-height:48px !important;
    padding:0 12px !important;
    border-radius:12px !important;
    font-size:13px !important;
  }

  /* Sticky bottom CTA already covers phone + project request:
     keep menu footer short enough that navigation remains the focus. */
  .mobile-nav-cta{
    margin-top:10px !important;
  }
}

@media (max-width:390px){
  .mobile-nav-contact.mobile-nav-contact-compact{
    grid-template-columns:1fr !important;
  }
}
