/*
 Theme Name: BeTheme Child
 Theme URI: https://muffingroup.com/betheme/
 Description: Child theme for BeTheme
 Author: Muffin Group
 Template: betheme
 Version: 1.0.0
 Text Domain: betheme-child
*/



/* Your CSS code goes here
-------------------------------------- */

@media only screen and (max-width: 768px) {
#Top_bar #logo img.logo-mobile {height: 40px; width: auto;}
.mobile-sticky #Top_bar.is-sticky #logo img.logo-mobile-sticky {height: 20px; width: auto;}
}


/* Suppression du footer sur certaines pages */
.page-id-3231 .mfn-footer .footer_copy {display: none;}



/* Suppression des légendes sous les photos */
.elementor-slideshow__title {display: none;}


/* Modification du Caption des albums de la page GALERIES */
.page-id-1444 .widget-image-caption {font-size: 20px; font-weight: 800; color: #575757; }

@media only screen and (max-width: 768px) {
    .footer-copyright {text-align: justify;}
    .amelia-v2-booking {max-width: 100%;}
}


.error-404-page {padding-top: 100px;}
.error-404-page .btn-link {color: #b79a23; border:1px solid #b79a23; padding: 10px; }

@media only screen and (max-width: 768px) {
    .error-404-page h1 {font-size: 1.5rem; }
    .error-404-page {padding: 110px 30px 20px; }
}



/* Ajout d'une bordure gris clair aux images lighbox de la galerie Paris */
.page-id-2322 .elementor-lightbox .elementor-lightbox-image {border: 1px solid #8F8F8F; }

/* Suppression du Header et du Footer sur certaines page pour IJDA */
.page-id-11275 .mfn-footer .footer_copy, .page-id-11275 .header-main-wrap  {display: none; }





/* —————————————————————————————————————————————
   A. Plein écran paysage mobile (base fournie + fixes)
   ————————————————————————————————————————————— */
@media (orientation: landscape) and (max-width: 1024px) {

  /* Supprimer marges et paddings internes */
  .elementor-lightbox,
  .elementor-lightbox-wrapper,
  .elementor-lightbox-image-container,
  .elementor-lightbox-image {
    margin: 0 !important;
    padding: 0 !important;
    height: 100vh !important;
    max-height: 100vh !important;
  }

  /* L’image s’adapte exactement à la taille de l’écran */
  .elementor-lightbox-image {
    object-fit: cover !important; /* ou 'contain' si tu veux tout voir sans crop */
    object-position: center center !important;
    background: #000 !important;
    display: block !important;
  }

  /* Arrière-plan noir plein écran */
  .elementor-lightbox { background-color: #000 !important; }

  /* Supprimer les marges de la fenêtre de dialogue Elementor */
  .elementor-lightbox .dialog-widget-content { padding: 0 !important; }

  /* Repositionner le bouton de fermeture */
  .elementor-lightbox .dialog-close-button {
    position: fixed !important;
    top: 10px !important;
    right: 10px !important;
    z-index: 9999 !important;
    background: rgba(0,0,0,0.4);
    color: #fff;
    border-radius: 50%;
  }

  /* Supprimer les légendes si elles gênent */
  .elementor-lightbox .elementor-lightbox-caption { display: none !important; }
}

/* —————————————————————————————————————————————
   B. Fluidité & perfs (Swiper + PhotoSwipe)
   ————————————————————————————————————————————— */
.elementor-lightbox .swiper,
.elementor-lightbox .swiper-wrapper,
.elementor-lightbox .swiper-slide,
.pswp,
.pswp__container,
.pswp__item,
.pswp__img {
  will-change: transform, opacity;
  backface-visibility: hidden;
}

/* Courbe “ciné” sur translations Swiper */
.elementor-lightbox .swiper-wrapper {
  transition-timing-function: cubic-bezier(.22, .61, .36, 1) !important;
}

/* PhotoSwipe : transitions d’ouverture/fermeture plus douces (si variables prises en compte) */
.pswp {
  /* fallback pour gestuelle iOS */
  overscroll-behavior: contain;
}
.pswp__container {
  transition-timing-function: cubic-bezier(.22, .61, .36, 1);
}

/* —————————————————————————————————————————————
   C. Zoom subtil ULTRA-SMOOTH côté mobile (PhotoSwipe)
   (transition GPU + rAF, plus fluide que keyframes)
   ————————————————————————————————————————————— */
.pswp__item .pswp__img {
  transform-origin: center center;
  transform: scale(1);
  transition: transform .72s cubic-bezier(.22,.61,.36,1), opacity .38s ease-out;
}
.pswp__item .pswp__img.pp-zoom {
  transform: scale(1.000); /* ajuste 1.012–1.02 selon goût */
  opacity: 1;
}

/* —————————————————————————————————————————————
   D. Accessibilité : animations réduites si demandé
   ————————————————————————————————————————————— */
@media (prefers-reduced-motion: reduce){
  .elementor-lightbox .swiper-wrapper,
  .elementor-lightbox .swiper-slide,
  .pswp,
  .pswp__container,
  .pswp__item .pswp__img {
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
  }
}






/* ---------------------------------------------------
   🌟 PHOTOPREST — Typographie & Style global (Gibson)
   --------------------------------------------------- */

/* 1️⃣ Base globale */
body {
  font-family: "Gibson", sans-serif;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.7;
  color: #222;
  background-color: #fff;
  letter-spacing: 0.2px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* 2️⃣ Titres */
h1, h2, h3, h4, h5, h6 {
  font-family: "Gibson", sans-serif;
  font-weight: 600;
  color: #000;
  line-height: 1.3;
  margin-bottom: 0.6em;
  letter-spacing: 0.3px;
}

/* Taille des titres */
h1 { font-size: 2.6rem; }
h2 { font-size: 2rem; }
h3 { font-size: 1.6rem; }
h4 { font-size: 1.3rem; }

/* Accent doré sur certains titres */
h1 strong, h2 strong, h3 strong, h4 strong {
  color: #b79a23;
  font-weight: 700;
}

/* 3️⃣ Paragraphes et liens */
p {
  margin-bottom: 1.2em;
}

a {
  color: #b79a23;
  text-decoration: none;
  transition: all 0.3s ease;
}
a:hover {
  color: #000;
  text-decoration: underline;
}

/* 4️⃣ Boutons (Elementor, BeTheme, etc.) */
button,
.elementor-button,
a.button,
input[type="submit"] {
  font-family: "Gibson", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
  padding: 12px 28px;
  border-radius: 5px;
  border: 1px solid #b79a23;
  background-color: #b79a23;
  color: #fff;
  transition: all 0.3s ease;
}

button:hover,
.elementor-button:hover,
a.button:hover,
input[type="submit"]:hover {
  background-color: #fff;
  color: #b79a23;
}

/* 5️⃣ Menu principal */
#Top_bar .menu > li > a {
  font-family: "Gibson", sans-serif;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #000;
  transition: color 0.3s ease;
}

#Top_bar .menu > li > a:hover {
  color: #b79a23;
}

/* 6️⃣ Footer */
#Footer, .footer_copy {
  background-color: #000;
  color: #ccc;
  font-family: "Gibson", sans-serif;
  font-weight: 400;
}
#Footer a, .footer_copy a {
  color: #b79a23;
}
#Footer a:hover {
  color: #fff;
}

/* 7️⃣ Formulaires */
input, textarea, select {
  font-family: "Gibson", sans-serif;
  font-size: 16px;
  color: #222;
  border: 1px solid #ddd;
  border-radius: 5px;
  padding: 10px 14px;
  transition: border-color 0.3s ease;
}
input:focus, textarea:focus, select:focus {
  border-color: #b79a23;
  outline: none;
}

/* 8️⃣ Responsive titres sur mobile */
@media (max-width: 768px) {
  h1 { font-size: 2rem; }
  h2 { font-size: 1.6rem; }
  h3 { font-size: 1.3rem; }
}