/* Sao Băng V24 — giữ nguyên giao diện cũ, chỉ vá nhẹ cho mượt hơn
   Không đổi layout, màu chủ đạo hay phong cách hero cũ. */

/* Trình duyệt có thể bỏ qua layout của các phần dưới màn hình cho đến khi cuộn tới. */
#about,
#laguna-story,
#new-beach-gallery,
#delivery-hue,
#menu,
#experience,
#gallery,
#reviews,
#contact {
  content-visibility: auto;
  contain-intrinsic-size: 820px;
}

/* Giảm repaint nặng ở header/menu modal nhưng vẫn giữ cảm giác kính mờ. */
.site-header,
.modal-backdrop,
.quick-panel,
.service-hub-panel,
.menu-poster span,
.gallery-item span,
.experience-card .card-copy {
  backface-visibility: hidden;
  transform: translateZ(0);
}

/* Hero cũ vẫn giữ ảnh, màu, chữ. Chỉ bỏ Ken Burns/meteor chạy liên tục để đỡ giật. */
.laguna-slide,
.laguna-slide img,
.hero-period-image,
.meteor,
.meteor-star,
.fx-sun-orb,
.fx-sun-rays,
.fx-sun-sparkle,
.fx-dawn-glow,
.fx-sunset-glow,
.fx-night-sky,
.fx-cloud-bank,
.fx-rain-layer,
.fx-mist-layer,
.fx-storm-vignette,
.fx-lightning,
.hero-wave,
.hero-spark {
  animation-play-state: paused !important;
}
.laguna-slide img,
.hero-period-image {
  transform: scale(1.025) !important;
}

/* Mobile/Safari cũ: tắt blur quá nặng, giữ nền sáng và shadow nhẹ để không bị xấu. */
@media (max-width: 900px) {
  .site-header,
  .demo-nav.site-nav.open,
  .laguna-weather,
  .hero-date-weather,
  .booking-modal-card,
  .order-review-backdrop,
  .quick-panel,
  .service-hub-panel {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
  .meteor-field,
  .smart-weather-effects,
  .hero-spark,
  .hero-wave {
    display: none !important;
  }
  .btn:hover,
  .experience-card:hover img,
  .food-grid button:hover img {
    transform: none !important;
  }
}

/* Tôn trọng máy yếu / người dùng giảm chuyển động. */
html.performance-lite *, html.performance-lite *::before, html.performance-lite *::after {
  animation-duration: 0.001ms !important;
  animation-iteration-count: 1 !important;
  transition-duration: 0.001ms !important;
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    scroll-behavior: auto !important;
    transition-duration: 0.001ms !important;
  }
}

/* Nút chính rõ hơn một chút nhưng không đổi style. */
.nav-book,
.mobile-header-book,
.btn-primary,
.btn-order-cta {
  will-change: auto;
}

/* Ảnh bên dưới màn hình nhẹ hơn khi render. */
img[loading="lazy"] {
  content-visibility: auto;
}
