/* ================================
   SECTIONS GLOBALES
================================ */

section { 
  height: 100vh; 
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center; 
  flex-direction: column;
  padding: 2vw;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
  background-attachment: fixed; /* Desktop */
  font-size: 4vw; 
}

section:first-of-type { 
  text-transform: uppercase;
  font-size: 7vw;
}

section:first-of-type,
section.scene { 
  color: #fff;
  text-shadow: 0 0 5px rgba(0,0,0,0.4); 
}

section:nth-of-type(even) { 
  background: #000;
}

/* ================================
   IMAGES PAR PAGE (variables CSS)
================================ */

.page-standard {
  --img1: url('/img/intro.png');
  --img3: url('/img/scene.png');
  --img5: url('/img/final.png');
}

.page-photo {
  --img1: url('/img/introphoto.png');
  --img3: url('/img/scenephoto.png');
  --img5: url('/img/final.png');
}

/* Application des images */
section:nth-of-type(1) { background-image: var(--img1); }
section:nth-of-type(3) { background-image: var(--img3); }
section:nth-of-type(5) { background-image: var(--img5); }

/* ================================
   SECTION HORIZON (perspective)
================================ */

section.horizon {
  position: relative;
  height: 90vh;
  overflow: hidden;
  background: #000;
  color: #f8f8f8;
  perspective: 700px;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  padding-top: 5vh;
}

.horizon-content {
  width: 85%;
  text-align: center;
  transform: rotateX(25deg) scale(1.35);
  transform-origin: bottom;
  font-size: 1vw;
  line-height: 1.6;
  opacity: 0.95;
}

/* Effets lumineux désactivés */
section.horizon::before,
section.horizon::after {
  display: none;
}

.horizon-straight {
  transform: none !important;
  width: 100%;
  text-align: center;
}

/* ================================
   RESPONSIVE TABLETTE (≤ 992px)
================================ */

@media (max-width: 992px) {

  section {
    height: 70vh;
    padding: 6vw;
    background-attachment: scroll; /* Fix iPad */
  }

  .horizon-content {
    font-size: 2.5vw;
    transform: rotateX(15deg) scale(1.1);
  }
}

/* ================================
   RESPONSIVE MOBILE (≤ 576px)
================================ */

@media (max-width: 576px) {

  section {
    height: auto;
    min-height: auto;
    padding-top: 15vw;
    padding-bottom: 15vw;
    background-attachment: scroll; /* Fix iPhone */
  }

  section:first-of-type {
    font-size: 12vw;
  }

  .horizon-content {
    font-size: 4vw;
    transform: none;
  }
}

/* ================================
   NAVIGATION DORÉE MAT
================================ */

.navbar-dark .navbar-brand,
.navbar-dark .navbar-nav .nav-link {
    color: #b7a05e !important;    
    font-size: 1.7rem;
}

.navbar-dark .navbar-nav .nav-link:hover {
    color: #d8c48a !important;
}

.navbar-dark .navbar-toggler-icon {
    filter: invert(70%) sepia(40%) saturate(200%) hue-rotate(10deg);
}

/* ================================
   VIDÉO & ANIMATIONS
================================ */

video::-webkit-media-controls {
  display: none !important;
}

video {
  pointer-events: none;
}

.arrow-bounce {
  animation: bounce 1.2s ease-in-out infinite;
}

@keyframes bounce {
  0%, 100% { transform: translateY(0); }
  50%      { transform: translateY(8px); }
}

/* ================================
   PHOTO
================================ */
.page-photo .horizon-content {
    transform: none !important;
    font-size: 1.5vw; /* optionnel, pour un texte normal */
}
.carousel-control-prev-icon,
.carousel-control-next-icon {
    filter: invert(80%) sepia(60%) saturate(300%) hue-rotate(10deg);
}
/* SECTION GALERIE : neutralisation des règles globales */
.page-photo .gallery-section {
    height: auto !important;
    min-height: auto !important;
    display: block !important;
    font-size: 1rem !important;
    padding-top: 3rem;
    padding-bottom: 3rem;
    background-attachment: scroll !important;
}

.ColorTexte {
  color:#b7a05e !important;
}

