/* Reset & Setup Lenis */
*, *::before, *::after { box-sizing: border-box; }
html, body { max-width: 100%; overflow-x: hidden; }
html.lenis, html.lenis body { height: auto; width: 100vw; }
.lenis.lenis-smooth { scroll-behavior: auto !important; }
.lenis.lenis-smooth [data-lenis-prevent] { overscroll-behavior: contain; }
.lenis.lenis-stopped { overflow: hidden; }
.lenis.lenis-smooth iframe { pointer-events: none; }

body { font-family: 'Poppins', sans-serif; background-color: #111; overflow-x: hidden; }

/* Textura Granulada Discreta */
body::before {
  content: '';
  position: fixed; inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
  pointer-events: none; z-index: 9999; opacity: 0.25;
}

/* Nav Glassmorphism */
.nav-glass {
  background: rgba(10,10,10,0.7);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border-bottom: 1px solid rgba(255,255,255,0.05);
}

/* Estilização Base */
.divider-flame { display: flex; align-items: center; gap: 12px; color: #F5A623; }
.divider-flame::before, .divider-flame::after {
  content: ''; flex: 1; height: 1px;
  background: linear-gradient(to right, transparent, #F5A623, transparent);
}

.card-hover:hover { transform: translateY(-4px); }

/* Performance para animações GSAP */
.gsap-reveal, .gsap-stagger, .parallax-img, .parallax-h-left, .parallax-h-right, .pizza-img-container { will-change: transform, opacity; }

/* ══════════════════════════════════════════
   MENU LATERAL MOBILE (DRAWER)
   ══════════════════════════════════════════ */

/* Trava o scroll do body (funciona junto com o Lenis, que usa .lenis-stopped) */
body.menu-open {
  overflow: hidden;
}

.drawer-overlay {
  will-change: opacity;
}

.drawer-overlay.is-visible {
  opacity: 1;
  visibility: visible;
}

.drawer-panel {
  will-change: transform;
  box-shadow: -10px 0 40px rgba(0,0,0,0.5);
}

.drawer-panel.is-open {
  transform: translateX(0);
}

.drawer-link:last-child {
  border-bottom: none;
}

@media (prefers-reduced-motion: reduce) {
  .drawer-overlay,
  .drawer-panel {
    transition: none;
  }
}