/* ============================================================
   PERFORMANCE PATCHES — La Fleur Bistrô
   Aplicar APÓS os outros CSS do Webflow
   ============================================================ */

/* ── 1. FONT RENDERING ─────────────────────────────────── */
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/* ── 2. HERO — força WebP como background ──────────────── */
.se-ohero {
  background-image: url('../images/Design-sem-nome-1.webp');
}

/* Fallback para browsers sem suporte a WebP (raro hoje) */
@supports not (background-image: url('x.webp')) {
  .se-ohero {
    background-image: url('../images/Design-sem-nome-1.jpg');
  }
}

/* ── 3. CONTENT-VISIBILITY — defer render off-screen ───── */
/* Sections abaixo da dobra: browser adia layout/paint */
.se-odestaquevinhos,
.se-oavalia-o,
.se-ocontatos,
.rodap,
.copyright {
  content-visibility: auto;
  contain-intrinsic-size: 0 600px;
}

/* ── 4. MODAL PERFORMANCE ───────────────────────────────── */
/* Promove modal container para GPU layer antecipadamente */
.modal-container {
  will-change: transform;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

/* ── 5. SLIDER — hardware acceleration ─────────────────── */
.w-slider-mask {
  will-change: transform;
  backface-visibility: hidden;
}

/* ── 6. IMAGENS — evitar CLS ────────────────────────────── */
/* Reserva espaço para imagens enquanto carregam */
img {
  max-width: 100%;
  height: auto;
}

/* Blocos de imagem com aspect-ratio fixo (cardápio grid) */
.melhores-pratos---imagem,
.melhores-pratos---imagem-pra-baixo,
.melhores-pratos-3,
.image-7,
.image-8 {
  aspect-ratio: 1 / 1;
  object-fit: cover;
}

/* ── 7. LAZY LOADER STATE — slides com bg lazy ──────────── */
/* Estado inicial: slides off-screen sem background
   O lazy-loader.js vai restaurar quando entrar na viewport */
.se-oambiente .w-slide:not(:first-child),
.se-odestaquevinhos .w-slide {
  /* background-image será restaurado pelo JS */
}

/* Quando a seção recebe a classe .bg-loaded (via JS) */
.se-oambiente.bg-loaded .slide-8,
.se-oambiente.bg-loaded .slide-9 {
  /* background já foi restaurado via style inline pelo JS */
}

/* ── 8. PLACEHOLDER SVG ─────────────────────────────────── */
/* Garante que ícones no nav não causem shift */
.nav-menu img[src="placeholder.svg"] {
  display: block;
  overflow: hidden;
}

/* ── 9. LINK BLOCKS — prevent layout shift ──────────────── */
.w-nav-brand img {
  display: block;
}

/* ── 10. PRINT — remover trackers no print ──────────────── */
@media print {
  script, iframe, .modalcartaprov, .modalcard-pioprov {
    display: none !important;
  }
}
