/*============================================================================================*/
/* Your custom styles below */
/*============================================================================================*/

/* ==========================================
   ÉTAT 1 : En haut de page (transparent)
   ========================================== */

header.fixed_header.headroom--top {
    background-color: rgba(255, 255, 255, 0);
    padding: 10px 0;
    box-shadow: none;
    transition: all 0.3s ease-in-out;
}

/* Logo grand */
header.fixed_header.headroom--top .logo_sticky {
    width: 175px;
    transition: all 0.3s ease-in-out;
}

header.fixed_header.headroom--top .logo_sticky img {
    /*max-height: 60px;*/
    transition: all 0.3s ease-in-out;
}

/* Container avec padding top */
header.fixed_header.headroom--top .container {
    padding-top: 40px !important;
    transition: all 0.3s ease-in-out;
}

/* Liens menu */
header.fixed_header.headroom--top nav ul li a {
    color: #EEEEEE;
    font-size: 18px;
    transition: all 0.3s ease-in-out;
}

/* Hamburger blanc */
header.fixed_header.headroom--top .hamburger__inner,
header.fixed_header.headroom--top .hamburger__inner::before,
header.fixed_header.headroom--top .hamburger__inner::after {
    background-color: #fff;
}


/* ==========================================
   ÉTAT 2 : Au scroll (header réduit + noir)
   ========================================== */

header.fixed_header.headroom--not-top {
    background-color: rgba(0,0,0,.8) !important;
    padding: 5px 0 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
    transition: all 0.3s ease-in-out;
    backdrop-filter: blur(10px);
}

/* ===== LOGO RÉDUIT ===== */
header.fixed_header.headroom--not-top .logo_sticky {
    width: 120px !important;
    transition: all 0.3s ease-in-out;
}

header.fixed_header.headroom--not-top .logo_sticky img {
    max-height: 50px !important;
    margin: 5px 0;
    transition: all 0.3s ease-in-out;
}

/* ===== CONTAINER SANS PADDING ===== */
header.fixed_header.headroom--not-top .container {
    padding-top: 5px !important;
    transition: all 0.3s ease-in-out;
}

/* ===== LIENS PLUS PETITS ===== */
header.fixed_header.headroom--not-top nav ul li a {
    color: #ffffff !important;
    font-size: 15px !important;
    transition: all 0.3s ease-in-out;
}

/* Soulignement blanc */
header.fixed_header.headroom--not-top nav ul li a.animated_link:before {
    background-color: #ffffff !important;
}

/* Hamburger blanc */
header.fixed_header.headroom--not-top .hamburger__inner,
header.fixed_header.headroom--not-top .hamburger__inner::before,
header.fixed_header.headroom--not-top .hamburger__inner::after {
    background-color: #ffffff !important;
}

/* ===== BOUTON PLUS PETIT ===== */
header.fixed_header.headroom--not-top a.btn_1 {
    color: #fff !important;
    padding: 10px 20px !important;
    font-size: 14px !important;
    transition: all 0.3s ease-in-out;
}





























/* ==========================================
   FANCYBOX MODAL CENTRÉ (pas plein écran)
   ========================================== */

/* Fond noir derrière */
.fancybox-bg {
    background: rgba(0, 0, 0, 0.85) !important;
}

/* Le conteneur principal centré */
.fancybox-container {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* La boîte d'image (le modal) */
.fancybox-stage {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Barre d'outils en haut */
.fancybox-toolbar {
    top: 20px !important;
    right: 20px !important;
}

.fancybox-button:hover {
    background: rgba(229, 181, 79, 0.3) !important; /* Or au survol */
}

/* Flèches navigation */
.fancybox-navigation .fancybox-arrow {
    width: 50px !important;
    height: 50px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border-radius: 50% !important;
}

.fancybox-navigation .fancybox-arrow:hover {
    background: rgba(229, 181, 79, 0.3) !important;
}

/* Compteur "1/10" */
.fancybox-infobar {
    top: 20px !important;
    left: 20px !important;
    font-family: 'Atkinson Hyperlegible', sans-serif !important;
    font-size: 14px !important;
    color: #fff !important;
    background: rgba(0, 0, 0, 0.5) !important;
    padding: 8px 16px !important;
    border-radius: 20px !important;
}

/* Caption (légende) */
.fancybox-caption {
    background: linear-gradient(to top, rgba(0,0,0,0.8), transparent) !important;
    font-family: 'Atkinson Hyperlegible', sans-serif !important;
    font-size: 16px !important;
    padding-bottom: 30px !important;
}




/* ==========================================
   EFFET BOÎTE/CARTE POUR LE MODAL
   ========================================== */

/* Conteneur de l'image avec fond */
.fancybox-slide--image .fancybox-content {
    background: #1a1a2e !important; /* Fond sombre autour de l'image */
    padding: 20px !important;
    border-radius: 16px !important;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.6) !important;
}

/* L'image à l'intérieur */
.fancybox-slide--image .fancybox-content img {
    border-radius: 8px !important;
}

/* Animation d'entrée */
.fancybox-slide--current {
    animation: modalPop 0.3s ease-out;
}

@keyframes modalPop {
    0% {
        transform: scale(0.8);
        opacity: 0;
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}


/* ===== Language switcher ===== */
.header-actions { display: flex; align-items: center; justify-content: flex-end; gap: 18px; }
.lang-switcher { display: flex; align-items: center; gap: 4px; }
.lang-switcher__item {
    font-family: 'Atkinson Hyperlegible', sans-serif;
    font-size: 13px; font-weight: 700; letter-spacing: .04em;
    color: #fff; text-decoration: none; padding: 5px 9px; border-radius: 16px;
    border: 1px solid transparent; transition: background .2s, color .2s;
}
.lang-switcher__item:hover { color: #d4af37; }
.lang-switcher__item.is-current { background: linear-gradient(135deg, #f4d03f, #d4af37 50%, #b27a47); color: #000; }
.lang-switcher__item[lang="ar"] { font-family: 'Tajawal', 'Atkinson Hyperlegible', sans-serif; font-size: 14px; }
.lang-switcher--mobile { display: none; }
.skip-link { position: absolute; top: 0; inset-inline-start: 8px; z-index: 1000000; background: #000; color: #fff; padding: 10px 16px; transform: translateY(-250%); }
.skip-link:focus { transform: translateY(8px); }
.hp-field { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); opacity: 0; pointer-events: none; }
.newsletter-form .msgbox { width: 100%; font-size: 13px; }
@media (max-width: 991px) {
    .lang-switcher--desktop { display: none !important; }
    .header-actions { display: none; }
    .main-menu.open .lang-switcher--mobile { display: flex; padding: 16px 24px; flex-wrap: wrap; }
}

/* ===== Page contact ===== */
.contact-info { padding: 8px 4px; color: #fff; }
.contact-info h3 { font-size: 22px; margin-bottom: 20px; }
.contact-info__item { margin-bottom: 22px; }
.contact-info__item h4 { font-size: 16px; font-weight: 700; color: #d4af37; margin-bottom: 6px; }
.contact-info__item p { margin: 0; line-height: 1.6; opacity: .9; }
.contact-info__item a { color: #f4d03f; }
.contact-section .booking-form label { display: block; margin-bottom: 6px; font-size: 14px; }
.faq2-trigger:focus-visible, .lang-switcher__item:focus-visible { outline: 2px solid #d4af37; outline-offset: 2px; }
.contact-info { text-align: start; }
.contact-info h3 { color: #fff; }
.contact-section + .faqs-2 .faqs2-grid { grid-template-columns: 1fr; max-width: 900px; margin-inline: auto; }
