/**
 * Landing overrides – perf mobile, scroll, viewport, overflow.
 * Chargé après /landing/css/index.css. Aucun changement visuel (sections, textes, images, couleurs).
 */

/* --- Viewport stable (iOS / Android) : 100vh → 100dvh/100svh --- */
html {
  min-height: 100vh;
  min-height: 100dvh;
  min-height: 100svh;
}

body {
  min-height: 100vh;
  min-height: 100dvh;
  min-height: 100svh;
  padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right);
  padding-top: env(safe-area-inset-top);
  padding-bottom: env(safe-area-inset-bottom);
}

/* Override des utilitaires Tailwind du bundle qui utilisent 100vh */
.min-h-screen {
  min-height: 100vh;
  min-height: 100dvh;
  min-height: 100svh;
}

.max-h-screen {
  max-height: 100vh;
  max-height: 100dvh;
  max-height: 100svh;
}

/* Pas de .h-screen dans le bundle ; on couvre au cas où */
.h-screen {
  height: 100vh;
  height: 100dvh;
  height: 100svh;
}

/* --- Scroll : pas de smooth-scroll global (jank mobile) ; respect reduced-motion --- */
html {
  scroll-behavior: auto;
}

/* --- Sticky nav avec blur : désactiver backdrop-filter sur mobile (lag) --- */
@media (max-width: 767px) {
  .glass-nav {
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background-color: rgba(255, 255, 255, 0.97);
  }
}

/* --- Containment #root : zéro overflow horizontal, rendu fluide --- */
#root {
  max-width: 100%;
  min-width: 0;
  overflow-x: clip;
  contain: layout style;
}

/* --- Sections hors viewport : content-visibility pour scroll fluide --- */
.section-padding {
  content-visibility: auto;
  contain-intrinsic-size: auto 500px;
}

/* --- Mobile : container et sections --- */
@media (max-width: 639px) {
  .container-klozd {
    padding-left: max(1rem, env(safe-area-inset-left));
    padding-right: max(1rem, env(safe-area-inset-right));
  }
  .section-padding {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}

@media (min-width: 640px) {
  .container-klozd {
    padding-left: max(1.5rem, env(safe-area-inset-left));
    padding-right: max(1.5rem, env(safe-area-inset-right));
  }
}
