/**
 * home-split.css
 * Mise en page spéciale de l'accueil : panneau de lecture vitré sur les 50 %
 * de gauche, scène Three.js totalement dégagée sur les 50 % de droite.
 * Chargé uniquement par index.html, après responsive.css.
 */

body.page-cinema {
  --accueil-panneau: 50vw;
  --accueil-verre: rgba(18, 20, 21, 0.64);
  --accueil-verre-dense: rgba(18, 20, 21, 0.78);
  --accueil-bordure: rgba(246, 244, 240, 0.12);
  overflow-x: clip;
}

/* Le canvas reste fixe et parfaitement net sur toute la fenêtre. */
body.page-cinema .toile-cinema {
  z-index: 0;
  pointer-events: none;
}

body.page-cinema .toile-cinema canvas {
  filter: none !important;
  opacity: 1 !important;
}

body.page-cinema main,
body.page-cinema .pied-page,
body.page-cinema .entete,
body.page-cinema .bouton-rappel-flottant {
  position: relative;
  z-index: 1;
}

@media (min-width: 981px) {
  /* Aucun fond ni blur ne doit couvrir la moitié droite. */
  body.page-cinema .hero,
  body.page-cinema .section--cinema,
  body.page-cinema .pied-page {
    position: relative;
    isolation: isolate;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: 0 !important;
  }

  /* Panneau liquide / verre limité aux 50 % de gauche. */
  body.page-cinema .hero::before,
  body.page-cinema .section--cinema::before,
  body.page-cinema .pied-page::before {
    content: "";
    position: absolute;
    inset: 0 auto 0 0;
    width: var(--accueil-panneau);
    z-index: -1;
    pointer-events: none;
    background:
      linear-gradient(135deg, rgba(255,255,255,0.055), transparent 38%),
      linear-gradient(180deg, var(--accueil-verre-dense), var(--accueil-verre));
    border-right: 1px solid var(--accueil-bordure);
    box-shadow: 22px 0 70px rgba(0, 0, 0, 0.18);
    backdrop-filter: blur(18px) saturate(135%);
    -webkit-backdrop-filter: blur(18px) saturate(135%);
  }

  /* Le voile du hero ne dépasse plus la moitié gauche. */
  body.page-cinema .hero__voile {
    inset: 0 auto 0 0 !important;
    width: var(--accueil-panneau);
    background: linear-gradient(180deg, rgba(18,20,21,0.12), rgba(18,20,21,0.44)) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  /* Tous les contenus de lecture sont rangés dans la colonne gauche. */
  body.page-cinema .hero__contenu,
  body.page-cinema .section--cinema > .conteneur,
  body.page-cinema .pied-page > .conteneur {
    box-sizing: border-box;
    width: var(--accueil-panneau) !important;
    max-width: var(--accueil-panneau) !important;
    margin-left: 0 !important;
    margin-right: auto !important;
    padding-left: clamp(26px, 4vw, 72px) !important;
    padding-right: clamp(26px, 4vw, 72px) !important;
  }

  body.page-cinema .hero {
    min-height: 100svh;
  }

  body.page-cinema .section--cinema {
    min-height: 92svh;
    display: flex;
    align-items: center;
    padding-block: clamp(72px, 9vh, 128px);
  }

  body.page-cinema .section--cinema > .conteneur {
    position: relative;
    z-index: 1;
  }

  /* La photo de secours disparaît : la zone droite est réservée à la 3D. */
  body.page-cinema [data-visuel-3d] {
    display: none !important;
  }

  body.page-cinema .presentation__grille,
  body.page-cinema .expertises-liste,
  body.page-cinema .raisons-grille,
  body.page-cinema .grille--auto,
  body.page-cinema .pied-page__grille {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  body.page-cinema .presentation__grille {
    gap: 0 !important;
  }

  body.page-cinema .expertises-liste {
    border-top-color: rgba(255,255,255,0.12);
  }

  body.page-cinema .expertise-item {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    padding-inline: 0 !important;
  }

  body.page-cinema .expertise-item:last-child {
    border-bottom: 0;
  }

  body.page-cinema .grille--auto,
  body.page-cinema .raisons-grille {
    gap: var(--espace-md) !important;
  }

  body.page-cinema .ligne--centre,
  body.page-cinema .cta__actions {
    justify-content: flex-start !important;
  }

  body.page-cinema .cta,
  body.page-cinema .entete-section--centre {
    text-align: left !important;
  }

  body.page-cinema .cta__titre,
  body.page-cinema .cta__texte {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.page-cinema .zone-liste {
    flex-direction: column;
    align-items: flex-start;
  }

  body.page-cinema .hero__titre {
    max-width: 10ch;
  }

  body.page-cinema .hero__soustitre {
    max-width: 40ch;
  }

  /* L'indication de scroll et le bouton flottant restent dans la zone lisible. */
  body.page-cinema .hero__defiler {
    left: calc(var(--accueil-panneau) - 54px) !important;
    right: auto !important;
  }

  body.page-cinema .bouton-rappel-flottant {
    left: clamp(22px, 3vw, 52px) !important;
    right: auto !important;
  }

  /* En-tête : pas de blur plein écran. La scène reste nette à droite. */
  body.page-cinema .entete,
  body.page-cinema .entete[data-solide="true"],
  body.page-cinema .entete[data-solide="false"] {
    background: linear-gradient(90deg, rgba(18,20,21,0.76) 0 50%, rgba(18,20,21,0) 50% 100%) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    box-shadow: none !important;
  }

  body.page-cinema .pied-page {
    padding-block: var(--espace-xl);
  }

  body.page-cinema .pied-page__grille {
    gap: var(--espace-lg);
  }
}

/* Tablette et mobile : priorité à la lisibilité, panneau pleine largeur. */
@media (max-width: 980px) {
  body.page-cinema {
    --accueil-panneau: 100vw;
  }

  body.page-cinema .toile-cinema canvas {
    opacity: 0.52 !important;
  }

  body.page-cinema .hero,
  body.page-cinema .section--cinema,
  body.page-cinema .pied-page {
    background: rgba(18, 20, 21, 0.66) !important;
    backdrop-filter: blur(12px) saturate(125%);
    -webkit-backdrop-filter: blur(12px) saturate(125%);
  }

  body.page-cinema .hero__voile {
    background: linear-gradient(180deg, rgba(18,20,21,0.18), rgba(18,20,21,0.62)) !important;
  }
}

@media (prefers-reduced-transparency: reduce) {
  body.page-cinema .hero::before,
  body.page-cinema .section--cinema::before,
  body.page-cinema .pied-page::before {
    background: rgba(18, 20, 21, 0.94);
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}
