@media (max-width: 1180px) {
  .mega-grid { grid-template-columns: repeat(3,1fr); gap: 18px; }
  .mega-image { height: 104px; }
  .nav-links { gap: 0; }
  .nav-link { padding: 0 7px; font-size: .82rem; }
  .brand { min-width: 160px; }
  .brand img { width: 165px; max-height: 62px; }
  .main-nav { gap: 15px; }
  .quote-panel__inner { grid-template-columns: 1fr; }
  .quote-intro { padding: 30px 34px; }
  .quote-form { grid-template-columns: repeat(3,1fr); }
}
@media (max-width: 1024px) {
  .section { padding: 80px 0; }
  .utility, .nav-links, .nav-actions .btn { display: none; }
  .main-nav { min-height: 72px; justify-content: space-between; }
  .mobile-toggle { position: relative; display: grid; }
  .nav-links.is-open { position: fixed; z-index: 1200; top: 72px; right: 0; bottom: 0; display: block; width: min(430px,100%); padding: 20px; overflow-y: auto; background: #fff; box-shadow: var(--shadow); }
  .nav-item { display: block; border-bottom: 1px solid var(--border-color); }
  .nav-link { width: 100%; height: auto; justify-content: space-between; padding: 17px 4px; font-size: 1rem; }
  .products-nav-control { width: 100%; }
  .products-link { flex: 1; width: auto; justify-content: flex-start; }
  .products-toggle { width: 52px; height: auto; flex: 0 0 52px; }
  .mega-menu { position: static; width: 100%; max-height: 0; padding: 0; visibility: visible; opacity: 1; overflow: hidden; border: 0; box-shadow: none; transform: none; transition: max-height .4s ease; }
  .nav-item.is-open .mega-menu { max-height: 1600px; transform: none; }
  .mega-grid { grid-template-columns: 1fr; gap: 0; padding: 0 0 16px; }
  .mega-column { padding: 10px 8px 14px; }
  .mega-column .mega-image { display: none; }
  .mega-column h3 { margin-bottom: 7px; font-size: 1rem; }
  .mega-column .mega-title { font-size: 1rem; }
  .mega-column a { padding: 6px 0; }
  .hero,.hero-slider,.hero-slide { min-height: 680px; }
  .hero-slide__content { width: 70%; }
  .hero-slide h1 { font-size: clamp(2.8rem,7vw,5.1rem); }
  .quote-form { grid-template-columns: repeat(2,1fr); }
  .intro-grid,.editorial,.map-layout,.contact-layout { grid-template-columns: 1fr; gap: 45px; }
  .media-frame { min-height: 460px; }
  .industry-grid,.product-grid { grid-template-columns: repeat(2,1fr); }
  .process-grid { grid-template-columns: repeat(2,1fr); }
  .sustain-copy { padding: 45px; }
  .footer-main { grid-template-columns: repeat(2,1fr); }
  .mobile-quote { display: inline-flex; }
  .whatsapp-float { bottom: 78px; }
}
@media (max-width: 768px) {
  .container { width: min(calc(100% - 32px), var(--container)); }
  .section { padding: 64px 0; }
  .section--compact { padding: 52px 0; }
  .section-head { display: block; margin-bottom: 32px; }
  .section-head p { margin-top: 16px; }
  .hero,.hero-slider,.hero-slide { min-height: 710px; }
  .hero-slide { align-items: end; }
  .hero-slide__media::after { background: linear-gradient(0deg, rgba(246,242,233,.98) 0%, rgba(246,242,233,.88) 52%, rgba(246,242,233,.04) 100%); }
  .hero-slide__media img { height: 55%; object-position: center top; }
  .hero-slide__content { width: 100%; padding: 310px 0 100px; }
  .hero-slide h1 { font-size: clamp(2.6rem,12vw,4.2rem); }
  .hero-slide p { font-size: 1rem; }
  .slider-controls { bottom: 40px; left: 16px; }
  .quote-panel { margin-top: 0; }
  .quote-panel__inner { border-radius: 0; }
  .quote-intro { padding: 28px 16px; }
  .quote-form { grid-template-columns: 1fr; padding: 26px 16px; }
  .field--wide { grid-column: auto; }
  .category-grid,.split-feature,.info-grid { grid-template-columns: 1fr; }
  .category-card { min-height: 390px; }
  .editorial-points { grid-template-columns: 1fr; }
  .industry-grid,.product-grid { grid-template-columns: 1fr; }
  .process-grid { grid-template-columns: 1fr; }
  .process-step { border-top: 1px solid #626569; }
  .sustain-grid { grid-template-columns: 1fr; }
  .sustain-copy { padding: 35px 25px; border-radius: var(--radius-lg) var(--radius-lg) 0 0; }
  .sustain-media { min-height: 350px; border-radius: 0 0 var(--radius-lg) var(--radius-lg); }
  .sustain-list { grid-template-columns: 1fr; }
  .catalog-inner { display: block; }
  .catalog-inner .hero-actions { margin-top: 24px; }
  .page-hero { min-height: 440px; }
  .page-hero__content { padding: 110px 0 50px; }
  .contact-form { grid-template-columns: 1fr; padding: 24px; }
  .contact-form .field--full { grid-column: auto; }
  .footer-main { grid-template-columns: 1fr; gap: 35px; padding: 60px 0 40px; }
  .footer-bottom { display: block; }
  .footer-legal { margin-top: 12px; }
}
@media (max-width: 430px) {
  h2 { font-size: 2.35rem; }
  .hero-actions .btn { width: 100%; }
  .capabilities { grid-template-columns: 1fr; }
  .category-card__body,.feature-card__body { padding: 24px; }
  .feature-card__image { height: 300px; }
  .map-layout { gap: 30px; }
  .product-card__meta { grid-template-columns: 1fr; }
  .product-card__actions .btn { flex: 1; }
  .mobile-quote { min-height: 46px; padding: 9px 16px; font-size: .82rem; }
  .whatsapp-float { right: 16px; width: 48px; height: 48px; }
  .whatsapp-float::after { display: none; }
}

/* Mobile menu must stay above homepage hero slider */
.nav-links.is-open {
  z-index: 100001 !important;
}


/* Mobile drawer scroll/freeze fix */
@media (max-width:1024px){
  .site-header,
  .site-header.is-sticky{
    z-index:100200 !important;
  }
  .nav-actions{
    position:relative;
    z-index:100230;
  }
  .mobile-toggle{
    width:56px;
    height:56px;
    flex:0 0 56px;
  }
  .nav-links.is-open{
    position:fixed !important;
    left:0;
    right:0;
    bottom:auto;
    width:100%;
    max-width:none;
    height:calc(100dvh - var(--ren-mobile-menu-top, 88px));
    max-height:calc(100dvh - var(--ren-mobile-menu-top, 88px));
    top:var(--ren-mobile-menu-top, 88px) !important;
    z-index:100150 !important;
    display:block !important;
    padding:18px 22px max(28px, env(safe-area-inset-bottom));
    overflow-y:auto;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    background:rgba(255,255,255,.98);
    box-shadow:0 24px 55px rgba(31,34,36,.16);
  }
  body.menu-open{
    overflow:hidden;
    touch-action:none;
  }
  body.menu-open .nav-links.is-open{
    touch-action:auto;
  }
}


/* Mobile drawer final fix */
@media (max-width:1024px){
  .nav-actions{
    position:relative;
    z-index:2147483002 !important;
  }
  .nav-links{
    display:none !important;
  }
  .nav-links.is-open{
    display:block !important;
    position:fixed !important;
    z-index:2147483001 !important;
    left:0 !important;
    right:0 !important;
    top:var(--ren-mobile-menu-top, 88px) !important;
    bottom:0 !important;
    width:100% !important;
    max-width:none !important;
    height:auto !important;
    max-height:none !important;
    padding:18px 22px max(32px, env(safe-area-inset-bottom)) !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    background:rgba(255,255,255,.985) !important;
    box-shadow:0 28px 70px rgba(31,34,36,.18);
    transform:none !important;
    opacity:1 !important;
    visibility:visible !important;
  }
  body.menu-open{
    overflow:hidden !important;
  }
  body.menu-open .hero,
  body.menu-open .hero-slider,
  body.menu-open .hero-slide{
    pointer-events:none;
  }
  body.menu-open .site-header{
    pointer-events:auto;
  }
}


/* Mobile fixed drawer follows fixed header */
@media (max-width:1024px){
  .nav-links.is-open{
    top:var(--ren-mobile-header-height, 96px) !important;
    height:calc(100dvh - var(--ren-mobile-header-height, 96px)) !important;
    max-height:calc(100dvh - var(--ren-mobile-header-height, 96px)) !important;
  }
}
