
    #lv-86801dde34c6 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* Liens du menu principal */
    #lv-86801dde34c6 .footer-nav-link {
        position: relative;
        display: inline-block;
        padding-bottom: 2px;
        transition: color 0.3s ease;
    }
    #lv-86801dde34c6 .footer-nav-link::after {
        content: '';
        position: absolute;
        width: 0;
        height: 1px;
        bottom: 0;
        left: 50%;
        background-color: #9d623d;
        transition: all 0.3s ease;
        transform: translateX(-50%);
    }
    #lv-86801dde34c6 .footer-nav-link:hover {
        color: #9d623d;
    }
    #lv-86801dde34c6 .footer-nav-link:hover::after {
        width: 100%;
    }

    /* Liens d'action (Réservations) */
    #lv-86801dde34c6 .footer-action-link {
        display: inline-block;
        border-bottom: 1px solid rgba(113, 53, 6, 0.3);
        padding-bottom: 4px;
        transition: all 0.3s ease;
    }
    #lv-86801dde34c6 .footer-action-link:hover {
        color: #9d623d;
        border-color: #9d623d;
        transform: translateY(-2px);
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-86801dde34c6 .footer-nav-link,#lv-86801dde34c6 
        .footer-nav-link::after,#lv-86801dde34c6 
        .footer-action-link,#lv-86801dde34c6 
        .tripadvisor-badge img {
            transition: none !important;
        }
    }


    #lv-5a82e23671ce { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* Liens du menu principal */
    #lv-5a82e23671ce .footer-nav-link {
        position: relative;
        display: inline-block;
        padding-bottom: 2px;
        transition: color 0.3s ease;
    }
    #lv-5a82e23671ce .footer-nav-link::after {
        content: '';
        position: absolute;
        width: 0;
        height: 1px;
        bottom: 0;
        left: 50%;
        background-color: #9d623d;
        transition: all 0.3s ease;
        transform: translateX(-50%);
    }
    #lv-5a82e23671ce .footer-nav-link:hover {
        color: #9d623d;
    }
    #lv-5a82e23671ce .footer-nav-link:hover::after {
        width: 100%;
    }

    /* Liens d'action (Réservations) */
    #lv-5a82e23671ce .footer-action-link {
        display: inline-block;
        border-bottom: 1px solid rgba(113, 53, 6, 0.3);
        padding-bottom: 4px;
        transition: all 0.3s ease;
    }
    #lv-5a82e23671ce .footer-action-link:hover {
        color: #9d623d;
        border-color: #9d623d;
        transform: translateY(-2px);
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-5a82e23671ce .footer-nav-link,#lv-5a82e23671ce 
        .footer-nav-link::after,#lv-5a82e23671ce 
        .footer-action-link,#lv-5a82e23671ce 
        .tripadvisor-badge img {
            transition: none !important;
        }
    }


    #lv-b46cfe6d9fd3 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* Liens du menu principal */
    #lv-b46cfe6d9fd3 .footer-nav-link {
        position: relative;
        display: inline-block;
        padding-bottom: 2px;
        transition: color 0.3s ease;
    }
    #lv-b46cfe6d9fd3 .footer-nav-link::after {
        content: '';
        position: absolute;
        width: 0;
        height: 1px;
        bottom: 0;
        left: 50%;
        background-color: #9d623d;
        transition: all 0.3s ease;
        transform: translateX(-50%);
    }
    #lv-b46cfe6d9fd3 .footer-nav-link:hover {
        color: #9d623d;
    }
    #lv-b46cfe6d9fd3 .footer-nav-link:hover::after {
        width: 100%;
    }

    /* Liens d'action (Réservations) */
    #lv-b46cfe6d9fd3 .footer-action-link {
        display: inline-block;
        border-bottom: 1px solid rgba(113, 53, 6, 0.3);
        padding-bottom: 4px;
        transition: all 0.3s ease;
    }
    #lv-b46cfe6d9fd3 .footer-action-link:hover {
        color: #9d623d;
        border-color: #9d623d;
        transform: translateY(-2px);
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-b46cfe6d9fd3 .footer-nav-link,#lv-b46cfe6d9fd3 
        .footer-nav-link::after,#lv-b46cfe6d9fd3 
        .footer-action-link,#lv-b46cfe6d9fd3 
        .tripadvisor-badge img {
            transition: none !important;
        }
    }


    #lv-1b2beaab170b {
      background-color: #fcf9f3;
      color: #713506;
      margin: 0;
    }

    #lv-1b2beaab170b .press-header-line {
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      height: 1px;
      background: rgba(113, 53, 6, 0.28);
      pointer-events: none;
      z-index: 0;
    }

    #lv-1b2beaab170b .header-safe {
      position: relative;
      z-index: 20;
    }

    #lv-1b2beaab170b .header-safe a,#lv-1b2beaab170b 
    .header-safe button {
      position: relative;
      z-index: 30;
      pointer-events: auto;
    }

    /* --- COLLAGE STYLE "NEGRESCO" (IMAGES ENTIÈRES) --- */
    #lv-1b2beaab170b .collage-container {
      position: relative;
      width: 100%;
      max-width: 1050px;
      margin: 0 auto;
      aspect-ratio: 2 / 1; /* Format large pour laisser de l'espace aux photos */
    }

    #lv-1b2beaab170b .collage-photo {
      position: absolute;
      display: block;
      box-shadow: 0 10px 40px -10px rgba(113, 53, 6, 0.15); /* Ombre douce et élégante */
      transition: transform 0.4s ease;
      will-change: transform;
      user-select: none;
      -webkit-user-drag: none;
      /* Ajout du style tirage photo */
      background-color: #ffffff;
      padding: 8px 8px 24px 8px;
    }

    #lv-1b2beaab170b .collage-photo img {
      width: 100%;
      height: auto; /* Permet à l'image de s'afficher en entier sans être coupée */
      display: block;
    }

    #lv-1b2beaab170b .collage-photo:hover {
      transform: scale(1.05) translateY(-5px) !important;
      z-index: 10 !important;
      box-shadow: 0 20px 50px -12px rgba(113, 53, 6, 0.30);
    }

    /* 
       Répartition mathématique (100% de largeur) sans superposition :
       Gauche: 0% à 26%
       Espace: 4%
       Centre: 30% à 68%
       Espace: 4%
       Droite: 72% à 100%
    */

    #lv-1b2beaab170b .img-left {
      top: 20%;
      left: 0%;
      width: 26%;
      transform: rotate(-3deg);
      z-index: 2;
    }

    #lv-1b2beaab170b .img-center {
      top: 0%;
      left: 30%;
      width: 38%;
      transform: rotate(2deg);
      z-index: 1;
    }

    #lv-1b2beaab170b .img-right {
      top: 35%;
      left: 72%;
      width: 28%;
      transform: rotate(-2deg);
      z-index: 3;
    }

    @media (max-width: 991px) {
      #lv-1b2beaab170b .collage-container {
        max-width: 760px;
        aspect-ratio: 16 / 12;
      }
    }

    @media (max-width: 767px) {
      /* Sur mobile, on désactive l'absolu pour un affichage propre en colonne */
      #lv-1b2beaab170b .collage-container {
        aspect-ratio: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 3rem;
        padding-bottom: 2rem;
      }
      #lv-1b2beaab170b .collage-photo {
        position: relative;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 85% !important;
      }
      #lv-1b2beaab170b .img-left { transform: rotate(-2deg); }
      #lv-1b2beaab170b .img-center { transform: rotate(2deg); }
      #lv-1b2beaab170b .img-right { transform: rotate(-2deg); }
    }
  

#lv-2245ee60793a {
    margin: 0;
    padding: 0;
    background-color: #fcf9f3;
}

/* ===================================================================== */
/* LETTRINE                                                              */
/* ===================================================================== */
#lv-2245ee60793a .drop-cap::first-letter {
    font-family: 'Great Vibes', cursive;
    font-size: 5.5rem;
    float: left;
    line-height: 0.85;
    margin-right: 0.5rem;
    color: #9d623d;
}

/* ===================================================================== */
/* CTA / LIENS                                                           */
/* ===================================================================== */
#lv-2245ee60793a .nav-links-village {
    text-align: center !important;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
}

#lv-2245ee60793a .nav-links-village .nav-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
}

@media (min-width: 768px) {
    #lv-2245ee60793a .nav-links-village .nav-col {
        flex-direction: row !important;
        justify-content: center !important;
        gap: 28px !important;
    }
}

#lv-2245ee60793a .nav-links-village .village-link {
    color: #713506 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    display: inline-block !important;
    position: relative !important;
    padding-bottom: 3px !important;
    white-space: nowrap !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 13px !important;
}

#lv-2245ee60793a .nav-links-village .village-link::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 0 !important;
    height: 1px !important;
    background: #9d623d !important;
    transition: width .28s ease !important;
}

#lv-2245ee60793a .nav-links-village .village-link:hover::after {
    width: 100% !important;
}

/* ===================================================================== */
/* ENCART INFORMATIONS                                                   */
/* ===================================================================== */
#lv-2245ee60793a .info-card {
    background-image:
        repeating-linear-gradient(
            0deg,
            transparent,
            transparent 39px,
            rgba(157,98,61,.08) 39px,
            rgba(157,98,61,.08) 40px
        );
    background-color: #ffffff;
    border: 1px solid rgba(113,53,6,.2);
}

/* ===================================================================== */
/* BOUTONS DE PARTAGE                                                    */
/* ===================================================================== */
#lv-2245ee60793a .share-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    border-radius: 50%;
    color: #9d623d;
    background-color: transparent;
    transition: all 0.25s ease;
}
#lv-2245ee60793a .share-btn:hover {
    color: #713506;
    background-color: rgba(157, 98, 61, 0.1);
    transform: translateY(-2px);
}
#lv-2245ee60793a .share-btn svg {
    width: 20px;
    height: 20px;
    display: block;
}

/* Keep hotel invitations readable on their dark background. */
#lv-2245ee60793a .bg-village-dark h2,#lv-2245ee60793a  .bg-village-dark a { color: #f5f0ea; }


    #lv-00cef55f8b78 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-00cef55f8b78 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    /* --- CADRE AFFICHE PREMIUM --- */
    #lv-00cef55f8b78 .premium-poster-frame {
        background: #ffffff;
        padding: 12px;
        border: 1px solid rgba(113, 53, 6, 0.2);
        box-shadow: 0 20px 40px -10px rgba(113, 53, 6, 0.10);
        border-radius: 4px;
        width: 100%;
        max-width: 480px;
        margin: 0 auto;
        position: relative;
        overflow: hidden;
    }
    
    #lv-00cef55f8b78 .premium-poster-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.4);
        pointer-events: none;
        z-index: 30;
    }


    #lv-1413f3f26d14 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- CADRE VIDÉO FENÊTRE EN ARCHE ÉPURÉE --- */
    #lv-1413f3f26d14 .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 140px 140px 0 0;
        border: 1px solid #713506;
        box-shadow: 0 25px 50px -12px rgba(113, 53, 6, 0.15);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        margin: 3rem auto;
        max-width: 380px;
        opacity: 0;
        transform: translateY(40px);
    }
    #lv-1413f3f26d14 .arched-video-frame.is-visible {
        opacity: 1;
        transform: translateY(0);
    }
    #lv-1413f3f26d14 .arched-video-frame:hover {
        transform: translateY(-8px);
        box-shadow: 0 30px 60px -15px rgba(113, 53, 6, 0.25);
    }
    #lv-1413f3f26d14 .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.6);
        border-radius: 132px 132px 0 0;
        pointer-events: none;
        z-index: 30;
    }
    #lv-1413f3f26d14 .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 130px 130px 0 0;
        overflow: hidden;
        background-color: #000;
    }
    #lv-1413f3f26d14 .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-1413f3f26d14 .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
    }
    #lv-1413f3f26d14 .glass-btn:hover {
        background: rgba(255, 255, 255, 0.9);
        color: #713506;
        transform: scale(1.1);
    }
    #lv-1413f3f26d14 .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-1413f3f26d14 .arched-video-frame:hover .video-controls {
        opacity: 1;
    }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-1413f3f26d14 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* Style éditorial pour l'encart d'information */
    #lv-1413f3f26d14 .info-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-1413f3f26d14 .arched-video-frame,#lv-1413f3f26d14 
        .glass-btn,#lv-1413f3f26d14 
        .video-controls,#lv-1413f3f26d14 
        .hover\:scale-105 {
            transition: none !important;
        }
    }

/* Keep hotel invitations readable on their dark background. */
#lv-1413f3f26d14 .bg-village-dark h2,#lv-1413f3f26d14  .bg-village-dark a { color: #f5f0ea; }


    #lv-504180465d18 { margin: 0; padding: 0; background-color: #fcf9f3; }

    #lv-504180465d18 .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 140px 140px 0 0;
        border: 1px solid #713506;
        box-shadow: 0 25px 50px -12px rgba(113, 53, 6, 0.15);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
    }

    #lv-504180465d18 .arched-video-frame:hover {
        transform: translateY(-8px);
        box-shadow: 0 30px 60px -15px rgba(113, 53, 6, 0.25);
    }

    #lv-504180465d18 .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 8px;
        bottom: 8px;
        left: 8px;
        right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.6);
        border-radius: 132px 132px 0 0;
        pointer-events: none;
        z-index: 30;
    }

    #lv-504180465d18 .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 130px 130px 0 0;
        overflow: hidden;
        background-color: #000;
    }

    #lv-504180465d18 .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    #lv-504180465d18 .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
    }

    #lv-504180465d18 .glass-btn:hover {
        background: rgba(255, 255, 255, 0.9);
        color: #713506;
        transform: scale(1.08);
    }

    #lv-504180465d18 .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }

    #lv-504180465d18 .arched-video-frame:hover .video-controls {
        opacity: 1;
    }

    #lv-504180465d18 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    @media (max-width: 767px) {
        #lv-504180465d18 .drop-cap::first-letter {
            font-size: 4.3rem;
        }
    }


    #lv-43d114bf850c { margin: 0; padding: 0; }


  #lv-c4d32621e90d {
    scroll-behavior: smooth;
  }

  #lv-c4d32621e90d .lv-press-wrap {
    position: relative;
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    background: #fcf9f3;
    font-family: "Playfair Display", serif;
    overflow: visible;
  }

  #lv-c4d32621e90d .lv-press-line {
    position: absolute;
    left: 0;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    height: 1px;
    background: rgba(113, 53, 6, 0.28);
    pointer-events: none;
    z-index: 0;
  }

  #lv-c4d32621e90d .lv-header {
    position: relative;
    z-index: 60;
    background: #fcf9f3;
  }

  #lv-c4d32621e90d .lv-header-inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
  }

  #lv-c4d32621e90d .lv-header-left,#lv-c4d32621e90d 
  .lv-header-center,#lv-c4d32621e90d 
  .lv-header-right {
    position: relative;
    z-index: 3;
    background: #fcf9f3;
  }

  #lv-c4d32621e90d .lv-header-left {
    display: flex;
    align-items: center;
    gap: 12px;
    padding-right: 12px;
  }

  #lv-c4d32621e90d .lv-header-center {
    padding: 0 16px;
  }

  #lv-c4d32621e90d .lv-header-right {
    display: flex;
    align-items: center;
    gap: 20px;
    padding-left: 12px;
    font-family: "Lato", sans-serif;
    font-weight: 300;
    text-transform: uppercase;
    letter-spacing: 0.22em;
    font-size: 11px;
  }

  #lv-c4d32621e90d .lv-header-link,#lv-c4d32621e90d 
  .lv-social-link,#lv-c4d32621e90d 
  .lv-menu-summary {
    color: #713506;
    text-decoration: none;
    transition: color 0.25s ease;
  }

  #lv-c4d32621e90d .lv-header-link:hover,#lv-c4d32621e90d 
  .lv-social-link:hover,#lv-c4d32621e90d 
  .lv-menu-summary:hover {
    color: #9d623d;
  }

  #lv-c4d32621e90d .lv-socials {
    display: flex;
    align-items: center;
    gap: 10px;
  }

  #lv-c4d32621e90d .lv-logo {
    display: block;
    height: 230px;
    object-fit: contain;
  }

  #lv-c4d32621e90d .lv-menu-details {
    position: relative;
  }

  #lv-c4d32621e90d .lv-menu-summary {
    list-style: none;
    display: flex;
    align-items: center;
    cursor: pointer;
  }

  #lv-c4d32621e90d .lv-menu-summary::-webkit-details-marker {
    display: none;
  }

  #lv-c4d32621e90d .lv-menu-panel {
    display: none;
    position: absolute;
    top: calc(100% + 14px);
    left: 0;
    width: min(360px, calc(100vw - 32px));
    background: #fcf9f3;
    border: 1px solid rgba(157, 98, 61, 0.18);
    box-shadow: 0 18px 40px rgba(113, 53, 6, 0.12);
    z-index: 80;
  }

  #lv-c4d32621e90d .lv-menu-details[open] .lv-menu-panel {
    display: block;
  }

  #lv-c4d32621e90d .lv-menu-panel a {
    display: block;
    padding: 14px 32px;
    color: #713506;
    text-decoration: none;
    transition: background 0.25s ease, color 0.25s ease;
  }

  #lv-c4d32621e90d .lv-menu-panel a:hover {
    background: #f5f0ea;
    color: #9d623d;
  }

  #lv-c4d32621e90d .lv-hero {
    position: relative;
    width: 100%;
    min-height: 58vh;
    height: 58vh;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  #lv-c4d32621e90d .lv-hero-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }

  #lv-c4d32621e90d .lv-hero-bg img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

  #lv-c4d32621e90d .lv-hero-img-desktop {
    display: block;
    object-position: center 34%;
  }

  #lv-c4d32621e90d .lv-hero-img-mobile {
    display: none;
    object-position: center 20%;
  }

  #lv-c4d32621e90d .lv-hero-overlay {
    position: absolute;
    inset: 0;
    background: rgba(113, 53, 6, 0.38);
  }

  #lv-c4d32621e90d .lv-hero-content {
    position: relative;
    z-index: 2;
    text-align: center;
    padding: 20px;
  }

  #lv-c4d32621e90d .lv-hero-title {
    margin: 0 0 16px;
    font-family: "Great Vibes", cursive;
    font-weight: 400;
    line-height: 0.95;
    color: #ffffff;
    font-size: clamp(64px, 10vw, 150px);
    text-shadow: 0 8px 24px rgba(0, 0, 0, 0.25);
  }

  #lv-c4d32621e90d .lv-hero-subtitle {
    margin: 0;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    color: #f5f0ea;
    text-transform: uppercase;
    letter-spacing: 0.28em;
    font-size: clamp(11px, 1.2vw, 16px);
  }

  #lv-c4d32621e90d .lv-subnav {
    background: #713506;
    color: #f5f0ea;
    padding: 22px 16px;
    border-bottom: 1px solid rgba(157, 98, 61, 0.3);
    box-shadow: 0 8px 24px rgba(113, 53, 6, 0.12);
  }

  #lv-c4d32621e90d .lv-subnav ul {
    list-style: none;
    margin: 0 auto;
    padding: 0;
    max-width: 1100px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 24px 48px;
    font-family: "Lato", sans-serif;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    font-size: 12px;
  }

  #lv-c4d32621e90d .lv-subnav a {
    color: #f5f0ea;
    text-decoration: none;
    transition: color 0.25s ease;
  }

  #lv-c4d32621e90d .lv-subnav a:hover {
    color: #9d623d;
  }

  @media (min-width: 768px) {
    #lv-c4d32621e90d .lv-header-inner {
      padding: 20px 40px;
    }

    #lv-c4d32621e90d .lv-logo {
      height: 240px;
    }

    #lv-c4d32621e90d .lv-header-left {
      gap: 20px;
    }

    #lv-c4d32621e90d .lv-header-right {
      gap: 20px;
      font-size: 12px;
    }

    #lv-c4d32621e90d .lv-hero {
      min-height: 72vh;
      height: 72vh;
    }

    #lv-c4d32621e90d .lv-subnav ul {
      gap: 32px 64px;
      font-size: 13px;
    }
  }

  @media (min-width: 1024px) {
    #lv-c4d32621e90d .lv-header-inner {
      padding: 24px 56px;
    }

    #lv-c4d32621e90d .lv-logo {
      height: 288px;
    }
  }

  @media (min-width: 1280px) {
    #lv-c4d32621e90d .lv-logo {
      height: 320px;
    }

    #lv-c4d32621e90d .lv-hero {
      min-height: 76vh;
      height: 76vh;
    }
  }

  @media (max-width: 767px) {
    #lv-c4d32621e90d .lv-header-inner {
      padding: 7px 14px;
      gap: 4px;
    }

    #lv-c4d32621e90d .lv-header-left {
      flex: 0 0 auto;
      gap: 0;
      padding-right: 0;
    }

    #lv-c4d32621e90d .lv-header-center {
      flex: 1 1 auto;
      min-width: 0;
      display: flex;
      justify-content: center;
      padding: 0 0 0 6px;
    }

    #lv-c4d32621e90d .lv-header-right,#lv-c4d32621e90d 
    .lv-socials {
      display: none !important;
    }

    #lv-c4d32621e90d .lv-logo {
      height: 128px;
      max-width: 86vw;
    }

    #lv-c4d32621e90d .lv-menu-panel {
      left: 0;
      width: calc(100vw - 24px);
    }

    #lv-c4d32621e90d .lv-hero {
      min-height: 70vh;
      height: 70vh;
    }

    #lv-c4d32621e90d .lv-hero-img-desktop {
      display: none;
    }

    #lv-c4d32621e90d .lv-hero-img-mobile {
      display: block;
      object-fit: cover;
      object-position: center 20%;
    }

    #lv-c4d32621e90d .lv-hero-title {
      font-size: clamp(56px, 14vw, 90px);
      margin-bottom: 10px;
    }

    #lv-c4d32621e90d .lv-hero-subtitle {
      letter-spacing: 0.16em;
      font-size: 11px;
    }

    #lv-c4d32621e90d .lv-subnav {
      padding: 16px 12px;
    }

    #lv-c4d32621e90d .lv-subnav ul {
      gap: 16px 18px;
      letter-spacing: 0.12em;
      font-size: 10px;
    }
  }


    #lv-9b68755da18e { margin: 0; padding: 0; background-color: #fcf9f3; }
    
    /* Lettrine élégante pour le début du texte */
    #lv-9b68755da18e .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5rem;
        float: left;
        line-height: 0.8;
        margin-right: 0.5rem;
        color: #9d623d;
    }


    #lv-e68faa1710c3 { margin: 0; padding: 0; }

    /* --- FILTRE ÉLÉGANT SANS BUG DE COULEUR (PALACE STYLE) --- */
    #lv-e68faa1710c3 .village-img-wrapper {
        position: relative;
        overflow: hidden;
    }
    
    /* Calque de fusion cuivré signature (Archive) */
    #lv-e68faa1710c3 .village-img-wrapper::after {
        content: '';
        position: absolute;
        inset: 0;
        background-color: #9d623d; /* Cuivré */
        mix-blend-mode: color;
        opacity: 0.85;
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 10;
    }
    
    /* Voile de texture ancienne */
    #lv-e68faa1710c3 .village-img-wrapper::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.15); 
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 11;
    }
    
    /* Déclenchement au SURVOL de la souris OU au SCROLL (.is-visible) */
    #lv-e68faa1710c3 .group:hover .village-img-wrapper::after,#lv-e68faa1710c3 
    .group:hover .village-img-wrapper::before,#lv-e68faa1710c3 
    .group.is-visible .village-img-wrapper::after,#lv-e68faa1710c3 
    .group.is-visible .village-img-wrapper::before {
        opacity: 0;
    }

    /* Mouvement de l'image doux et luxueux */
    #lv-e68faa1710c3 .village-img {
        transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        will-change: transform;
    }
    
    /* Zoom au SURVOL ou au SCROLL */
    #lv-e68faa1710c3 .group:hover .village-img,#lv-e68faa1710c3 
    .group.is-visible .village-img {
        transform: scale(1.05);
    }


    #lv-58c2ec50de6e { margin: 0; padding: 0; }
    
    /* --- FILTRE ÉLÉGANT SANS BUG DE COULEUR (PALACE STYLE) --- */
    #lv-58c2ec50de6e .village-img-wrapper {
        position: relative;
        overflow: hidden;
    }
    
    /* Calque de fusion cuivré signature (Archive) */
    #lv-58c2ec50de6e .village-img-wrapper::after {
        content: '';
        position: absolute;
        inset: 0;
        background-color: #9d623d; /* Cuivré */
        mix-blend-mode: color;
        opacity: 0.85;
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 10;
    }
    
    /* Voile de texture ancienne */
    #lv-58c2ec50de6e .village-img-wrapper::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.15); 
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 11;
    }
    
    /* Déclenchement au SURVOL de la souris OU au SCROLL (.is-visible) */
    #lv-58c2ec50de6e .group:hover .village-img-wrapper::after,#lv-58c2ec50de6e 
    .group:hover .village-img-wrapper::before,#lv-58c2ec50de6e 
    .group.is-visible .village-img-wrapper::after,#lv-58c2ec50de6e 
    .group.is-visible .village-img-wrapper::before {
        opacity: 0;
    }

    /* Mouvement de l'image doux et luxueux */
    #lv-58c2ec50de6e .village-img {
        transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        will-change: transform;
    }
    
    /* Zoom au SURVOL ou au SCROLL */
    #lv-58c2ec50de6e .group:hover .village-img,#lv-58c2ec50de6e 
    .group.is-visible .village-img {
        transform: scale(1.05);
    }


    #lv-ff76e1ca2c29 { margin: 0; padding: 0; }

    /* --- CADRE VIDÉO FENÊTRE EN ARCHE ÉPURÉE --- */
    #lv-ff76e1ca2c29 .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 140px 140px 0 0;
        border: 1px solid #713506;
        box-shadow: 0 25px 50px -12px rgba(113, 53, 6, 0.15);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        opacity: 0;
        transform: translateY(40px); /* Pour l'animation d'apparition douce */
    }
    
    /* Animation déclenchée au scroll */
    #lv-ff76e1ca2c29 .arched-video-frame.is-visible {
        opacity: 1;
        transform: translateY(0);
    }

    #lv-ff76e1ca2c29 .arched-video-frame:hover {
        transform: translateY(-8px);
        box-shadow: 0 30px 60px -15px rgba(113, 53, 6, 0.25);
    }

    /* La bordure cuivrée interne très fine et chic */
    #lv-ff76e1ca2c29 .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.6); /* Accent cuivré léger */
        border-radius: 132px 132px 0 0;
        pointer-events: none;
        z-index: 30;
    }

    /* Masque intérieur */
    #lv-ff76e1ca2c29 .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 130px 130px 0 0;
        overflow: hidden;
        background-color: #000;
    }
    
    #lv-ff76e1ca2c29 .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
        transition: filter 0.5s ease;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-ff76e1ca2c29 .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
    }
    #lv-ff76e1ca2c29 .glass-btn:hover {
        background: rgba(255, 255, 255, 0.9);
        color: #713506; /* Devient marron foncé au survol */
        transform: scale(1.1);
    }

    /* Contrôles cachés par défaut pour épurer l'image, visibles au survol */
    #lv-ff76e1ca2c29 .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-ff76e1ca2c29 .arched-video-frame:hover .video-controls {
        opacity: 1;
    }


    #lv-529601aa87ab { margin: 0; padding: 0; }


    #lv-45dceeab4d7e { margin: 0; padding: 0; }
    
    /* --- FILTRE ÉLÉGANT SANS BUG DE COULEUR (PALACE STYLE) --- */
    #lv-45dceeab4d7e .village-img-wrapper {
        position: relative;
        overflow: hidden;
    }
    
    /* Calque de fusion cuivré signature (Archive) */
    #lv-45dceeab4d7e .village-img-wrapper::after {
        content: '';
        position: absolute;
        inset: 0;
        background-color: #9d623d; /* Cuivré */
        mix-blend-mode: color;
        opacity: 0.85;
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 10;
    }
    
    /* Voile de texture ancienne pour la profondeur */
    #lv-45dceeab4d7e .village-img-wrapper::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.15); 
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 11;
    }
    
    /* Déclenchement au SURVOL de la souris OU au SCROLL (.is-visible) */
    #lv-45dceeab4d7e .group:hover .village-img-wrapper::after,#lv-45dceeab4d7e 
    .group:hover .village-img-wrapper::before,#lv-45dceeab4d7e 
    .group.is-visible .village-img-wrapper::after,#lv-45dceeab4d7e 
    .group.is-visible .village-img-wrapper::before {
        opacity: 0;
    }

    /* Mouvement de l'image doux et luxueux */
    #lv-45dceeab4d7e .village-img {
        transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        will-change: transform;
    }
    
    /* Zoom au SURVOL ou au SCROLL */
    #lv-45dceeab4d7e .group:hover .village-img,#lv-45dceeab4d7e 
    .group.is-visible .village-img {
        transform: scale(1.05);
    }


    #lv-03c1fedde22a { margin: 0; padding: 0; }

    /* --- DESIGN ARCHE SOBRE ET ÉLÉGANT --- */
    #lv-03c1fedde22a .mini-arched-video {
        position: relative;
        background: #ffffff; /* Passe-partout blanc pur et sobre */
        padding: 8px; /* Finesse du cadre */
        border-radius: 120px 120px 0 0;
        border: 1px solid #713506; /* Ligne marron signature */
        box-shadow: 0 15px 30px -10px rgba(113, 53, 6, 0.10); /* Ombre très douce */
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        margin: 10px auto 0;
        max-width: 220px; 
        opacity: 0;
        transform: translateY(20px);
    }
    
    #lv-03c1fedde22a .mini-arched-video.is-visible {
        opacity: 1;
        transform: translateY(0);
    }

    #lv-03c1fedde22a .mini-arched-video:hover {
        transform: translateY(-6px);
        box-shadow: 0 20px 40px -12px rgba(113, 53, 6, 0.18);
    }

    /* Liseré cuivré intérieur très discret */
    #lv-03c1fedde22a .mini-arched-video::before {
        content: '';
        position: absolute;
        top: 6px; bottom: 6px; left: 6px; right: 6px;
        border: 1px solid rgba(157, 98, 61, 0.4);
        border-radius: 114px 114px 0 0;
        pointer-events: none;
        z-index: 30;
    }

    /* Masque de la vidéo */
    #lv-03c1fedde22a .mini-video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 112px 112px 0 0;
        overflow: hidden;
        background-color: #000;
    }
    
    #lv-03c1fedde22a .mini-video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    /* Voile sombre subtil en bas pour faire ressortir les boutons en verre au survol */
    #lv-03c1fedde22a .mini-video-mask::after {
        content: '';
        position: absolute;
        bottom: 0; left: 0; right: 0;
        height: 35%;
        background: linear-gradient(to top, rgba(0,0,0,0.6) 0%, transparent 100%);
        pointer-events: none;
        z-index: 20;
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-03c1fedde22a .mini-arched-video:hover .mini-video-mask::after {
        opacity: 1;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-03c1fedde22a .glass-btn-mini {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.5);
        color: #ffffff;
        transition: all 0.3s ease;
        padding: 8px;
        position: relative;
        z-index: 40;
    }
    #lv-03c1fedde22a .glass-btn-mini:hover {
        background: #ffffff;
        color: #713506;
        transform: scale(1.15);
    }

    #lv-03c1fedde22a .video-controls {
        opacity: 0;
        transform: translateY(10px);
        transition: all 0.5s ease;
    }
    #lv-03c1fedde22a .mini-arched-video:hover .video-controls {
        opacity: 1;
        transform: translateY(0);
    }


    #lv-a41c0fc2b7f1 { margin: 0; padding: 0; }

    #lv-a41c0fc2b7f1 .room-tabs-scroll {
        display: flex;
        gap: 14px;
        overflow-x: auto;
        overflow-y: hidden;
        white-space: nowrap;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        padding-bottom: 4px;
        justify-content: flex-start;
    }

    #lv-a41c0fc2b7f1 .room-tabs-scroll::-webkit-scrollbar {
        display: none;
    }

    #lv-a41c0fc2b7f1 .vh-gallery-shell {
        width: 100%;
    }

    #lv-a41c0fc2b7f1 .vh-gallery-main-wrap {
        position: relative;
        overflow: hidden;
        background: rgba(0, 0, 0, 0.08);
    }

    #lv-a41c0fc2b7f1 .vh-gallery-main-btn {
        width: 100%;
        border: 0;
        padding: 0;
        background: transparent;
        display: block;
        cursor: default;
    }

    #lv-a41c0fc2b7f1 .vh-gallery-main-image {
        width: 100%;
        height: 320px;
        object-fit: cover;
        display: block;
    }

    #lv-a41c0fc2b7f1 .vh-gallery-arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        z-index: 5;
        border: 0;
        background: rgba(255, 255, 255, 0.72);
        color: rgba(113, 53, 6, 0.82);
        width: 34px;
        height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        transition: background 0.2s ease, opacity 0.2s ease;
        box-shadow: 0 4px 14px rgba(0, 0, 0, 0.08);
        border-radius: 999px;
        backdrop-filter: blur(2px);
    }

    #lv-a41c0fc2b7f1 .vh-gallery-arrow:hover {
        background: rgba(255, 255, 255, 0.88);
    }

    #lv-a41c0fc2b7f1 .vh-gallery-arrow-left {
        left: 10px;
    }

    #lv-a41c0fc2b7f1 .vh-gallery-arrow-right {
        right: 10px;
    }

    #lv-a41c0fc2b7f1 .vh-gallery-counter {
        position: absolute;
        right: 12px;
        bottom: 12px;
        z-index: 5;
        background: rgba(0, 0, 0, 0.46);
        color: #ffffff;
        font-family: "Lato", sans-serif;
        font-size: 12px;
        letter-spacing: 0.08em;
        padding: 7px 10px;
    }

    #lv-a41c0fc2b7f1 .vh-gallery-thumbs {
        display: flex;
        gap: 10px;
        overflow-x: auto;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
        padding-top: 14px;
    }

    #lv-a41c0fc2b7f1 .vh-gallery-thumbs::-webkit-scrollbar {
        display: none;
    }

    #lv-a41c0fc2b7f1 .vh-thumb-btn {
        flex: 0 0 auto;
        width: 74px;
        height: 74px;
        border: 1px solid rgba(245, 240, 234, 0.18);
        overflow: hidden;
        opacity: 0.72;
        transition: opacity 0.25s ease, transform 0.25s ease, border-color 0.25s ease;
        background: transparent;
        padding: 0;
        cursor: pointer;
    }

    #lv-a41c0fc2b7f1 .vh-thumb-btn img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    #lv-a41c0fc2b7f1 .vh-thumb-btn.is-active {
        opacity: 1;
        border-color: #9d623d;
        transform: translateY(-1px);
    }

    #lv-a41c0fc2b7f1 .vh-thumb-btn:hover {
        opacity: 1;
    }

    @media (min-width: 768px) {
        #lv-a41c0fc2b7f1 .vh-gallery-main-image {
            height: 460px;
        }

        #lv-a41c0fc2b7f1 .vh-thumb-btn {
            width: 90px;
            height: 90px;
        }
    }

    @media (min-width: 1024px) {
        #lv-a41c0fc2b7f1 .vh-gallery-main-image {
            height: 520px;
        }

        #lv-a41c0fc2b7f1 .vh-gallery-arrow {
            opacity: 0;
        }

        #lv-a41c0fc2b7f1 .vh-gallery-main-wrap:hover .vh-gallery-arrow {
            opacity: 1;
        }
    }

    @media (max-width: 767px) {
        #lv-a41c0fc2b7f1 .vh-gallery-main-image {
            height: 320px;
        }

        #lv-a41c0fc2b7f1 .vh-gallery-arrow {
            opacity: 1;
            width: 32px;
            height: 32px;
        }
    }


    #lv-b6673ed595c7 { margin: 0; padding: 0; }


    #lv-09f213954d45 { margin: 0; padding: 0; }


    #lv-e4eeecc58faf { margin: 0; padding: 0; }


#lv-36e5db5dbe46 {
    margin: 0;
    padding: 0;
    background-color: #fcf9f3;
}


/* ===================================================================== */
/* LETTRINE                                                              */
/* ===================================================================== */

#lv-36e5db5dbe46 .drop-cap::first-letter {
    font-family: 'Great Vibes', cursive;
    font-size: 5.5rem;
    float: left;
    line-height: 0.85;
    margin-right: 0.5rem;
    color: #9d623d;
}


/* ===================================================================== */
/* CTA / LIENS                                                           */
/* ===================================================================== */

#lv-36e5db5dbe46 .nav-links-village {
    text-align: center !important;
    margin-top: 20px !important;
    margin-bottom: 20px !important;
    font-family: 'Poppins', sans-serif !important;
    font-size: 16px !important;
    line-height: 1.4 !important;
}


#lv-36e5db5dbe46 .nav-links-village .nav-col {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 12px !important;
}


@media (min-width: 768px) {

    #lv-36e5db5dbe46 .nav-links-village .nav-col {
        flex-direction: row !important;
        justify-content: center !important;
        gap: 28px !important;
    }

}


#lv-36e5db5dbe46 .nav-links-village .village-link {
    color: #713506 !important;
    text-decoration: none !important;
    font-weight: 500 !important;
    display: inline-block !important;
    position: relative !important;
    padding-bottom: 3px !important;
    white-space: nowrap !important;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-size: 13px !important;
}


#lv-36e5db5dbe46 .nav-links-village .village-link::after {
    content: "" !important;
    position: absolute !important;
    left: 0 !important;
    bottom: 0 !important;
    width: 0 !important;
    height: 1px !important;
    background: #9d623d !important;
    transition: width .28s ease !important;
}


#lv-36e5db5dbe46 .nav-links-village .village-link:hover::after {
    width: 100% !important;
}


/* ===================================================================== */
/* ENCART INFORMATIONS                                                   */
/* ===================================================================== */

#lv-36e5db5dbe46 .info-card {

    background-image:
        repeating-linear-gradient(
            0deg,
            transparent,
            transparent 39px,
            rgba(157,98,61,.08) 39px,
            rgba(157,98,61,.08) 40px
        );

    background-color: #ffffff;
    border: 1px solid rgba(113,53,6,.2);
}


/* Keep hotel invitations readable on their dark background. */
#lv-36e5db5dbe46 .bg-village-dark h2,#lv-36e5db5dbe46  .bg-village-dark a { color: #f5f0ea; }


    #lv-dd4ff477ae13 {
      background-color: #fcf9f3;
      color: #713506;
      margin: 0;
    }

    #lv-dd4ff477ae13 .press-header-line {
      position: absolute;
      left: 0;
      right: 0;
      top: 50%;
      transform: translateY(-50%);
      height: 1px;
      background: rgba(113, 53, 6, 0.28);
      pointer-events: none;
      z-index: 0;
    }

    #lv-dd4ff477ae13 .header-safe {
      position: relative;
      z-index: 20;
    }

    #lv-dd4ff477ae13 .header-safe a,#lv-dd4ff477ae13 
    .header-safe button {
      position: relative;
      z-index: 30;
      pointer-events: auto;
    }

    /* --- COLLAGE STYLE "NEGRESCO" (IMAGES ENTIÈRES) --- */
    #lv-dd4ff477ae13 .collage-container {
      position: relative;
      width: 100%;
      max-width: 1050px;
      margin: 0 auto;
      aspect-ratio: 2 / 1; /* Format large pour laisser de l'espace aux photos */
    }

    #lv-dd4ff477ae13 .collage-photo {
      position: absolute;
      display: block;
      box-shadow: 0 10px 40px -10px rgba(113, 53, 6, 0.15); /* Ombre douce et élégante */
      transition: transform 0.4s ease;
      will-change: transform;
      user-select: none;
      -webkit-user-drag: none;
      /* Ajout du style tirage photo */
      background-color: #ffffff;
      padding: 8px 8px 24px 8px;
    }

    #lv-dd4ff477ae13 .collage-photo img {
      width: 100%;
      height: auto; /* Permet à l'image de s'afficher en entier sans être coupée */
      display: block;
    }

    #lv-dd4ff477ae13 .collage-photo:hover {
      transform: scale(1.05) translateY(-5px) !important;
      z-index: 10 !important;
      box-shadow: 0 20px 50px -12px rgba(113, 53, 6, 0.30);
    }

    /* 
       Répartition mathématique (100% de largeur) sans superposition :
       Gauche: 0% à 26%
       Espace: 4%
       Centre: 30% à 68%
       Espace: 4%
       Droite: 72% à 100%
    */

    #lv-dd4ff477ae13 .img-left {
      top: 20%;
      left: 0%;
      width: 26%;
      transform: rotate(-3deg);
      z-index: 2;
    }

    #lv-dd4ff477ae13 .img-center {
      top: 0%;
      left: 30%;
      width: 38%;
      transform: rotate(2deg);
      z-index: 1;
    }

    #lv-dd4ff477ae13 .img-right {
      top: 35%;
      left: 72%;
      width: 28%;
      transform: rotate(-2deg);
      z-index: 3;
    }

    @media (max-width: 991px) {
      #lv-dd4ff477ae13 .collage-container {
        max-width: 760px;
        aspect-ratio: 16 / 12;
      }
    }

    @media (max-width: 767px) {
      /* Sur mobile, on désactive l'absolu pour un affichage propre en colonne */
      #lv-dd4ff477ae13 .collage-container {
        aspect-ratio: auto;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: 3rem;
        padding-bottom: 2rem;
      }
      #lv-dd4ff477ae13 .collage-photo {
        position: relative;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 85% !important;
      }
      #lv-dd4ff477ae13 .img-left { transform: rotate(-2deg); }
      #lv-dd4ff477ae13 .img-center { transform: rotate(2deg); }
      #lv-dd4ff477ae13 .img-right { transform: rotate(-2deg); }
    }
  

        #lv-f20a9231e017 { margin: 0; padding: 0; background-color: #fcf9f3; }
    

        #lv-784edf0e382b .press-pdf-modal {
            position: fixed;
            inset: 0;
            background: rgba(113, 53, 6, 0.55);
            display: none;
            align-items: center;
            justify-content: center;
            padding: 20px;
            z-index: 9999;
        }

        #lv-784edf0e382b .press-pdf-modal.is-open {
            display: flex;
        }

        #lv-784edf0e382b .press-pdf-box {
            position: relative;
            width: min(1180px, 100%);
            height: min(88vh, 920px);
            background: #ffffff;
            box-shadow: 0 20px 60px rgba(113, 53, 6, 0.18);
            overflow: hidden;
        }

        #lv-784edf0e382b .press-pdf-close {
            position: absolute;
            top: 14px;
            right: 14px;
            z-index: 20;
            width: 42px;
            height: 42px;
            border: 1px solid rgba(113, 53, 6, 0.18);
            background: rgba(255, 255, 255, 0.95);
            color: #713506;
            font-size: 24px;
            line-height: 1;
            cursor: pointer;
            transition: all 0.25s ease;
        }

        #lv-784edf0e382b .press-pdf-close:hover {
            background: #713506;
            color: #ffffff;
        }

        #lv-784edf0e382b .press-pdf-iframe {
            width: 100%;
            height: 100%;
            border: none;
            display: block;
        }

        @media (max-width: 767px) {
            #lv-784edf0e382b .press-pdf-modal {
                padding: 10px;
            }

            #lv-784edf0e382b .press-pdf-box {
                height: 88vh;
            }

            #lv-784edf0e382b .press-pdf-close {
                top: 10px;
                right: 10px;
                width: 38px;
                height: 38px;
                font-size: 22px;
            }
        }
    

    #lv-cfa9949dc2b7 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-cfa9949dc2b7 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    /* --- CADRE AFFICHE PREMIUM --- */
    #lv-cfa9949dc2b7 .premium-poster-frame {
        background: #ffffff;
        padding: 12px;
        border: 1px solid rgba(113, 53, 6, 0.2);
        box-shadow: 0 20px 40px -10px rgba(113, 53, 6, 0.10);
        border-radius: 4px;
        width: 100%;
        max-width: 480px;
        margin: 0 auto;
        position: relative;
        overflow: hidden;
    }
    
    #lv-cfa9949dc2b7 .premium-poster-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.4);
        pointer-events: none;
        z-index: 30;
    }

    /* --- LISTE PROGRAMMATION (Détails Accordéon) --- */
    #lv-cfa9949dc2b7 .prog-list details {
        border-bottom: 1px solid rgba(113, 53, 6, 0.15);
    }
    #lv-cfa9949dc2b7 .prog-list summary {
        list-style: none;
        cursor: pointer;
        padding: 16px 0;
        font-family: 'Lato', sans-serif;
        font-weight: 600;
        color: #713506;
        display: flex;
        justify-content: space-between;
        align-items: center;
        transition: color 0.3s ease;
    }
    #lv-cfa9949dc2b7 .prog-list summary::-webkit-details-marker {
        display: none;
    }
    #lv-cfa9949dc2b7 .prog-list summary:hover {
        color: #9d623d;
    }
    #lv-cfa9949dc2b7 .prog-list summary::after {
        content: '+';
        font-size: 1.5rem;
        font-weight: 300;
        transition: transform 0.3s ease;
    }
    #lv-cfa9949dc2b7 .prog-list details[open] summary::after {
        transform: rotate(45deg);
    }
    #lv-cfa9949dc2b7 .prog-list .prog-content {
        padding-bottom: 16px;
        color: rgba(113, 53, 6, 0.8);
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        line-height: 1.6;
    }
    #lv-cfa9949dc2b7 .prog-theme {
        display: inline-block;
        font-family: 'Great Vibes', cursive;
        color: #9d623d;
        font-size: 1.4rem;
        margin-top: 8px;
    }

#lv-cd953b738eda { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-cd953b738eda .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-cd953b738eda .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-cd953b738eda .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-cd953b738eda .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-cd953b738eda .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-cd953b738eda .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-cd953b738eda .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* --- CADRE VIDÉO FENÊTRE EN ARCHE ÉPURÉE --- */
    #lv-cd953b738eda .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 140px 140px 0 0;
        border: 1px solid rgba(113, 53, 6, 0.2);
        box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        margin: 0 auto;
    }
    #lv-cd953b738eda .arched-video-frame:hover {
        transform: translateY(-8px);
        box-shadow: 0 30px 60px -15px rgba(0, 0, 0, 0.4);
    }
    #lv-cd953b738eda .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.6);
        border-radius: 132px 132px 0 0;
        pointer-events: none;
        z-index: 30;
    }
    #lv-cd953b738eda .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 130px 130px 0 0;
        overflow: hidden;
        background-color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    #lv-cd953b738eda .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-cd953b738eda .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
    }
    #lv-cd953b738eda .glass-btn:hover {
        background: #ffffff;
        color: #713506;
        transform: scale(1.1);
    }
    #lv-cd953b738eda .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-cd953b738eda .arched-video-frame:hover .video-controls {
        opacity: 1;
    }

/* Keep hotel invitations readable on their dark background. */
#lv-cd953b738eda .bg-village-dark h2,#lv-cd953b738eda  .bg-village-dark a { color: #f5f0ea; }

#lv-ea40639001a7 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-ea40639001a7 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-ea40639001a7 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-ea40639001a7 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-ea40639001a7 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-ea40639001a7 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-ea40639001a7 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-ea40639001a7 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Style éditorial menu */
    #lv-ea40639001a7 .menu-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }
    
    /* Conteneur image signature */
    #lv-ea40639001a7 .village-img-wrapper {
        position: relative;
        overflow: hidden;
        border-radius: 2px;
    }

/* Keep hotel invitations readable on their dark background. */
#lv-ea40639001a7 .bg-village-dark h2,#lv-ea40639001a7  .bg-village-dark a { color: #f5f0ea; }

#lv-e988a9d9bfda { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-e988a9d9bfda .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-e988a9d9bfda .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-e988a9d9bfda .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-e988a9d9bfda .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-e988a9d9bfda .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-e988a9d9bfda .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #000 !important;
        transition: width .28s ease !important;
    }
    #lv-e988a9d9bfda .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Conteneur Facebook responsif */
    #lv-e988a9d9bfda .fb-embed-container {
        display: flex;
        justify-content: center;
        margin: 3rem 0;
        width: 100%;
        overflow: hidden;
    }
    #lv-e988a9d9bfda .fb-embed-container iframe {
        max-width: 100%;
        border-radius: 4px;
        box-shadow: 0 10px 30px -10px rgba(113, 53, 6, 0.15);
    }

/* Keep hotel invitations readable on their dark background. */
#lv-e988a9d9bfda .bg-village-dark h2,#lv-e988a9d9bfda  .bg-village-dark a { color: #f5f0ea; }

#lv-ca301500d887 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-ca301500d887 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-ca301500d887 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-ca301500d887 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-ca301500d887 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-ca301500d887 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-ca301500d887 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-ca301500d887 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Style éditorial menu */
    #lv-ca301500d887 .menu-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }
    
    /* Conteneur Facebook responsif pour éviter le débordement sur petit mobile */
    #lv-ca301500d887 .fb-embed-container {
        display: flex;
        justify-content: center;
        margin: 3rem 0;
        width: 100%;
        overflow: hidden;
    }
    #lv-ca301500d887 .fb-embed-container iframe {
        max-width: 100%;
        border-radius: 4px;
        box-shadow: 0 10px 30px -10px rgba(113, 53, 6, 0.15);
    }

/* Keep hotel invitations readable on their dark background. */
#lv-ca301500d887 .bg-village-dark h2,#lv-ca301500d887  .bg-village-dark a { color: #f5f0ea; }


    #lv-78deed0afd80 { scroll-behavior: smooth; }
    #lv-78deed0afd80 { margin: 0; padding: 0; background-color: #fcf9f3; color: #713506; }

    /* --- LETTRINE PREMIUM --- */
    #lv-78deed0afd80 .drop-cap-hotel::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    /* --- CADRE IMAGE (Type Tableau/Polaroïd) --- */
    #lv-78deed0afd80 .framed-image-container {
        width: 100%;
        max-width: 480px;
        margin: 0 auto;
        background: #ffffff;
        padding: 10px;
        border-radius: 4px;
        box-shadow: 0 20px 40px -10px rgba(113, 53, 6, 0.15);
    }
    #lv-78deed0afd80 .framed-image-inner {
        position: relative;
        width: 100%;
        overflow: hidden;
        border-radius: 2px;
    }
    #lv-78deed0afd80 .village-framed-img {
        width: 100%;
        display: block;
        transition: transform 0.8s ease;
    }

    /* Sur mobile : format d'origine de la photo (aucun rognage) */
    @media (max-width: 767px) {
        #lv-78deed0afd80 .framed-image-inner { aspect-ratio: auto; }
        #lv-78deed0afd80 .village-framed-img { height: auto; object-fit: contain; }
    }

    /* Sur PC : photo ajustée en format paysage */
    @media (min-width: 768px) {
        #lv-78deed0afd80 .framed-image-inner { aspect-ratio: 4 / 3; }
        #lv-78deed0afd80 .village-framed-img { height: 100%; object-fit: cover; }
    }

    #lv-78deed0afd80 .framed-image-container:hover .village-framed-img {
        transform: scale(1.05);
    }

    /* --- ÉCRIN WIDGET HOLIDU --- */
    #lv-78deed0afd80 .booking-card {
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.15);
        box-shadow: 0 25px 50px -12px rgba(113, 53, 6, 0.08);
        border-radius: 2px;
        padding: 16px;
    }

    /* Décoration section */
    #lv-78deed0afd80 .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem;
        opacity: 0.5;
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-78deed0afd80 { scroll-behavior: auto; }
        #lv-78deed0afd80 .village-framed-img {
            transition: none !important;
        }
    }


    #lv-9f6833c8e015 { margin: 0; padding: 0; background-color: #fcf9f3; color: #713506; }

    /* Décoration section */
    #lv-9f6833c8e015 .section-ornament {
        width: 40px; height: 1px; background-color: #9d623d; margin: 0 auto 2.5rem auto; opacity: 0.5;
    }

    /* --- STYLE DE LA SECTION CARTE --- */
    #lv-9f6833c8e015 .map-preview-btn {
        background: rgba(255, 255, 255, 0.85);
        backdrop-filter: blur(8px);
        border: 1px solid rgba(157, 98, 61, 0.4);
        color: #713506;
        transition: all 0.4s ease;
    }
    #lv-9f6833c8e015 .map-preview-btn:hover {
        background: #ffffff;
        transform: translateY(-2px) scale(1.05);
        box-shadow: 0 10px 25px -5px rgba(113, 53, 6, 0.2);
    }

    /* Modal Map Styles */
    #lv-9f6833c8e015 .lv-map-modal {
        position: fixed; inset: 0; background: rgba(113, 53, 6, 0.85);
        display: none; align-items: center; justify-content: center; z-index: 9999; padding: 18px;
        backdrop-filter: blur(5px);
    }
    #lv-9f6833c8e015 .lv-map-modal.lv-open { display: flex; animation: fadeIn 0.3s ease; }
    #lv-9f6833c8e015 .lv-map-modal-inner {
        width: min(1420px, 100%); height: min(860px, 92vh);
        background: #fcf9f3; border-radius: 4px; overflow: hidden;
        box-shadow: 0 25px 50px rgba(0,0,0,0.4); position: relative; display: flex; flex-direction: column;
        border: 1px solid rgba(157, 98, 61, 0.3);
    }
    
    #lv-9f6833c8e015 .lv-pin {
        width: 34px; height: 34px; border-radius: 999px; background: #ffffff;
        border: 2px solid #9d623d; box-shadow: 0 10px 18px rgba(113, 53, 6, 0.25);
        display: grid; place-items: center; transition: transform 0.3s ease;
    }
    #lv-9f6833c8e015 .lv-pin:hover { transform: scale(1.1); }
    #lv-9f6833c8e015 .lv-pin svg { width: 18px; height: 18px; fill: #9d623d; display: block; }
    #lv-9f6833c8e015 .lv-pin.main { background: #713506; border-color: #713506; }
    #lv-9f6833c8e015 .lv-pin.main svg { fill: #ffffff; }

    @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } }


    #lv-a750aa8784ea { margin: 0; padding: 0; }

    #lv-a750aa8784ea .hide-scroll {
        -ms-overflow-style: none;
        scrollbar-width: none;
    }
    #lv-a750aa8784ea .hide-scroll::-webkit-scrollbar {
        display: none;
    }

    #lv-a750aa8784ea .village-img-wrapper {
        position: relative;
        overflow: hidden;
        border-radius: 2px;
    }
    
    #lv-a750aa8784ea .village-img-wrapper::after {
        content: '';
        position: absolute;
        inset: 0;
        background-color: #9d623d;
        mix-blend-mode: color;
        opacity: 0.85;
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 10;
    }
    
    #lv-a750aa8784ea .village-img-wrapper::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.15); 
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 11;
    }
    
    #lv-a750aa8784ea .group:hover .village-img-wrapper::after,#lv-a750aa8784ea 
    .group:hover .village-img-wrapper::before {
        opacity: 0;
    }

    #lv-a750aa8784ea .village-img {
        transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        will-change: transform;
    }
    #lv-a750aa8784ea .group:hover .village-img {
        transform: scale(1.05);
    }

    #lv-a750aa8784ea .village-link-read {
        color: #713506;
        text-decoration: none;
        font-weight: 500;
        display: inline-block;
        position: relative;
        padding-bottom: 4px;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-size: 11px;
        font-family: 'Poppins', sans-serif;
        transition: color 0.3s ease;
        margin-top: auto;
    }
    #lv-a750aa8784ea .village-link-read::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 0;
        height: 1px;
        background: #9d623d;
        transition: width 0.4s ease;
    }
    #lv-a750aa8784ea .group:hover .village-link-read {
        color: #9d623d;
    }
    #lv-a750aa8784ea .group:hover .village-link-read::after {
        width: 100%;
    }

    /* Flèches visibles aussi sur mobile */
    #lv-a750aa8784ea .blog-carousel-arrows {
        display: flex;
        gap: 14px;
        align-items: center;
        justify-content: center;
        width: 100%;
    }

    @media (min-width: 768px) {
        #lv-a750aa8784ea .blog-carousel-arrows {
            width: auto;
            justify-content: flex-end;
        }
    }

    #lv-a750aa8784ea .blog-carousel-arrow {
        width: 44px;
        height: 44px;
        border-radius: 999px;
        border: 1px solid rgba(113, 53, 6, 0.28);
        background: rgba(252, 249, 243, 0.9);
        display: flex;
        align-items: center;
        justify-content: center;
        color: #713506;
        transition: all 0.3s ease;
        box-shadow: 0 6px 18px rgba(113, 53, 6, 0.08);
    }

    #lv-a750aa8784ea .blog-carousel-arrow:hover {
        background: #713506;
        color: #ffffff;
        border-color: #713506;
    }

    @media (max-width: 767px) {
        #lv-a750aa8784ea .blog-carousel-arrow {
            width: 42px;
            height: 42px;
            background: #ffffff;
            border-color: rgba(157, 98, 61, 0.45);
            box-shadow: 0 8px 20px rgba(113, 53, 6, 0.12);
        }
    }


    #lv-820f9052b072 { margin: 0; padding: 0; }

    /* --- FILTRE ÉLÉGANT SANS BUG DE COULEUR (PALACE STYLE) --- */
    #lv-820f9052b072 .village-img-wrapper {
        position: relative;
        overflow: hidden;
    }

    /* Calque de fusion cuivré signature (Archive) */
    #lv-820f9052b072 .village-img-wrapper::after {
        content: '';
        position: absolute;
        inset: 0;
        background-color: #9d623d; /* Cuivré */
        mix-blend-mode: color;
        opacity: 0.8;
        transition: opacity 0.7s ease;
        pointer-events: none;
        z-index: 10;
    }

    /* Voile de profondeur */
    #lv-820f9052b072 .village-img-wrapper::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.15); 
        transition: opacity 0.7s ease;
        pointer-events: none;
        z-index: 11;
    }

    /* Disparition nette des calques au survol */
    #lv-820f9052b072 .group:hover .village-img-wrapper::after,#lv-820f9052b072 
    .group:hover .village-img-wrapper::before {
        opacity: 0;
    }

    /* Mouvement de l'image (Plus lent pour le luxe) */
    #lv-820f9052b072 .village-img {
        transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
        will-change: transform;
    }
    #lv-820f9052b072 .group:hover .village-img {
        transform: translateY(-12px);
    }

    /* Soulignement Poppins animé */
    #lv-820f9052b072 .title-underline::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: -4px;
        width: 0;
        height: 1px;
        background: #713506;
        transition: width 0.4s ease;
    }
    #lv-820f9052b072 .group:hover .title-underline::after {
        width: 100%;
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-820f9052b072 .village-img,#lv-820f9052b072 
        .village-img-wrapper::after,#lv-820f9052b072 
        .village-img-wrapper::before,#lv-820f9052b072 
        .title-underline::after {
            transition: none !important;
        }
    }


    #lv-1ccfb89f166e { margin: 0; padding: 0; }

    /* Animation du lien itinéraire */
    #lv-1ccfb89f166e .btn-itineraire {
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }
    #lv-1ccfb89f166e .btn-itineraire:hover {
        letter-spacing: 0.2em;
        color: #713506;
    }

    /* Cadre de la carte : Ombre légère demandée */
    #lv-1ccfb89f166e .map-frame {
        position: relative;
        width: 100%;
        height: 500px;
        overflow: hidden;
        border-radius: 2px;
        /* Ombre plus diffuse et légère */
        box-shadow: 0 15px 45px -15px rgba(113, 53, 6, 0.12);
        border: 1px solid rgba(157, 98, 61, 0.08);
    }
    
    @media (min-width: 768px) {
        #lv-1ccfb89f166e .map-frame {
            height: 600px;
        }
    }

    /* Le filtre signature sur la carte */
    #lv-1ccfb89f166e .map-sepia-overlay {
        position: absolute;
        inset: 0;
        background: #f5f0ea;
        mix-blend-mode: multiply;
        opacity: 0.4;
        pointer-events: none;
        z-index: 5;
    }

    #lv-1ccfb89f166e .google-map-iframe {
        width: 100%;
        height: 100%;
        filter: grayscale(1) contrast(1.05) brightness(1);
        border: 0;
    }

    /* Décoration de fond subtile */
    #lv-1ccfb89f166e .bg-ornament {
        font-family: 'Playfair Display', serif;
        font-size: 15vw;
        color: rgba(113, 53, 6, 0.02);
        position: absolute;
        top: 10%;
        left: -5%;
        pointer-events: none;
        user-select: none;
        z-index: 0;
        white-space: nowrap;
    }


    #lv-4386b1248bec { margin: 0; padding: 0; background-color: #fcf9f3; }

    #lv-4386b1248bec .drop-cap-home::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    #lv-4386b1248bec .lv-ig-carousel {
        width: 100%;
        max-width: 500px;
        margin: 0 auto;
        background: #ffffff;
        padding: 8px;
        border-radius: 4px;
        box-shadow: 0 20px 40px -10px rgba(113, 53, 6, 0.15);
    }

    #lv-4386b1248bec .lv-ig-slides {
        position: relative;
        width: 100%;
        aspect-ratio: 1 / 1; 
        overflow: hidden;
        border-radius: 2px;
    }

    #lv-4386b1248bec .lv-ig-slide {
        position: absolute;
        inset: 0;
        opacity: 0;
        transition: opacity 0.6s ease-in-out;
        z-index: 1;
    }

    #lv-4386b1248bec .lv-ig-slide.lv-active {
        opacity: 1;
        z-index: 2;
    }

    #lv-4386b1248bec .lv-ig-slide img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    #lv-4386b1248bec .lv-ig-dots {
        position: absolute;
        bottom: 16px;
        left: 0;
        width: 100%;
        display: flex;
        justify-content: center;
        gap: 8px;
        z-index: 10;
    }

    #lv-4386b1248bec .lv-ig-dot {
        width: 6px;
        height: 6px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: rgba(255,255,255,0.5);
        cursor: pointer;
        transition: all 0.3s ease;
        box-shadow: 0 1px 2px rgba(0,0,0,0.2);
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-4386b1248bec .lv-ig-slide,#lv-4386b1248bec 
        .lv-ig-dot,#lv-4386b1248bec 
        .lv-ig-arrow {
            transition: none !important;
        }
    }

    #lv-4386b1248bec .lv-ig-dot.lv-active {
        width: 18px;
        border-radius: 10px;
        background: #ffffff;
    }

    /* Flèches plus discrètes */
    #lv-4386b1248bec .lv-ig-arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 28px;
        height: 28px;
        border-radius: 50%;
        background: rgba(252, 249, 243, 0.45);
        color: rgba(113, 53, 6, 0.75);
        border: 1px solid rgba(157, 98, 61, 0.25);
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        z-index: 10;
        user-select: none;
        box-shadow: none;
        opacity: 0.55;
        transition: all 0.25s ease;
    }

    #lv-4386b1248bec .lv-ig-arrow svg {
        width: 13px;
        height: 13px;
        stroke-width: 1.6;
    }

    #lv-4386b1248bec .lv-ig-arrow-left { left: 10px; }
    #lv-4386b1248bec .lv-ig-arrow-right { right: 10px; }

    #lv-4386b1248bec .lv-ig-arrow:hover { 
        background: rgba(252, 249, 243, 0.75);
        color: #713506;
        opacity: 0.9;
        transform: translateY(-50%) scale(1.04); 
    }

    #lv-4386b1248bec .nav-links-village {
        text-align: left !important;
        margin-top: 40px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 15px !important;
        line-height: 1.8 !important;
    }

    #lv-4386b1248bec .nav-links-village .nav-row {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: 20px !important;
        margin-bottom: 12px !important;
    }

    @media (max-width: 640px) {
        #lv-4386b1248bec .nav-links-village {
            text-align: center !important;
        }
        #lv-4386b1248bec .nav-links-village .nav-row {
            flex-direction: column !important;
            align-items: center !important;
            gap: 16px !important;
        }
    }

    #lv-4386b1248bec .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 4px !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }

    #lv-4386b1248bec .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .3s ease !important;
    }

    #lv-4386b1248bec .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }


    #lv-c11ba43e3783 { margin: 0; padding: 0; }

    /* --- STYLES DU CARROUSEL --- */
    #lv-c11ba43e3783 .lv-ig-carousel {
        width: 100%;
        margin: 0 auto;
    }
    #lv-c11ba43e3783 .lv-ig-slides {
        position: relative;
        width: 100%;
        aspect-ratio: 1 / 1; 
        overflow: hidden;
        border-radius: 2px;
    }
    #lv-c11ba43e3783 .lv-ig-slide {
        position: absolute;
        inset: 0;
        opacity: 0;
        transition: opacity 0.6s ease;
        z-index: 1;
    }
    #lv-c11ba43e3783 .lv-ig-slide.lv-active {
        opacity: 1;
        z-index: 2;
    }
    #lv-c11ba43e3783 .lv-ig-slide img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

 /* Navigation du Carrousel (Flèches discrètes) */
#lv-c11ba43e3783 .lv-ig-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.35);
    border: 1px solid rgba(255, 255, 255, 0.35);
    color: rgba(255, 255, 255, 0.85);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 10;
    user-select: none;
    box-shadow: none;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    transition: all 0.3s ease;
    opacity: 0.65;
}

#lv-c11ba43e3783 .lv-ig-arrow-left { left: 10px; }
#lv-c11ba43e3783 .lv-ig-arrow-right { right: 10px; }

#lv-c11ba43e3783 .lv-ig-arrow svg {
    width: 15px;
    height: 15px;
    stroke-width: 1.4;
}

#lv-c11ba43e3783 .lv-ig-arrow:hover {
    background: rgba(255, 255, 255, 0.55);
    color: #ffffff;
    opacity: 1;
    transform: translateY(-50%);
}

    /* --- STYLES DES LIENS DE NAVIGATION (Poppins - Adaptés pour fond clair) --- */
    #lv-c11ba43e3783 .nav-links-village {
        text-align: center !important;
        margin-top: 24px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 15px !important;
        line-height: 1.4 !important;
    }
    #lv-c11ba43e3783 .nav-links-village .village-link {
        color: #713506 !important; /* Texte Sombre */
        text-decoration: none !important;
        font-weight: 400 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 6px !important;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        font-size: 12px !important;
        transition: color 0.3s ease !important;
    }
    #lv-c11ba43e3783 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 50% !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important; /* Soulignement cuivré élégant */
        transition: width 0.3s ease, left 0.3s ease !important;
    }
    #lv-c11ba43e3783 .nav-links-village .village-link:hover {
        color: #9d623d !important;
    }
    #lv-c11ba43e3783 .nav-links-village .village-link:hover::after {
        width: 100% !important;
        left: 0 !important;
    }


    #lv-b0e7e7d7a8d6 { margin: 0; padding: 0; }

    /* --- FILTRE ÉLÉGANT (SANS BUG DE COULEUR AU SURVOL) --- */
    #lv-b0e7e7d7a8d6 .village-img-wrapper {
        position: relative;
        overflow: hidden;
    }
    
    #lv-b0e7e7d7a8d6 .village-img-wrapper::after {
        content: '';
        position: absolute;
        inset: 0;
        background-color: #9d623d; 
        mix-blend-mode: color;
        opacity: 0.8;
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 10;
    }
    
    #lv-b0e7e7d7a8d6 .village-img-wrapper::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.15); 
        transition: opacity 0.8s ease;
        pointer-events: none;
        z-index: 11;
    }
    
    #lv-b0e7e7d7a8d6 .group:hover .village-img-wrapper::after,#lv-b0e7e7d7a8d6 
    .group:hover .village-img-wrapper::before {
        opacity: 0;
    }

    #lv-b0e7e7d7a8d6 .village-img {
        transition: transform 0.8s ease;
        will-change: transform;
    }

    #lv-b0e7e7d7a8d6 .group:hover .village-img {
        transform: scale(1.05);
    }

    /* --- STYLES DU CARROUSEL --- */
    #lv-b0e7e7d7a8d6 .lv-ig-carousel {
        width: 100%;
        margin: 0 auto;
    }

    #lv-b0e7e7d7a8d6 .lv-ig-slides {
        position: relative;
        width: 100%;
        aspect-ratio: 4 / 5;
        overflow: hidden;
        border-radius: 2px;
    }

    #lv-b0e7e7d7a8d6 .lv-ig-slide {
        position: absolute;
        inset: 0;
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
        transition: opacity 0.6s ease, visibility 0.6s ease;
        z-index: 1;
    }

    #lv-b0e7e7d7a8d6 .lv-ig-slide.lv-active {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        z-index: 2;
    }

    #lv-b0e7e7d7a8d6 .lv-ig-slide img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
    }

    /* Slide vidéo Facebook */
    #lv-b0e7e7d7a8d6 .lv-video-slide {
        background: #000;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #lv-b0e7e7d7a8d6 .lv-video-slide iframe {
        width: 100%;
        height: 100%;
        border: none;
        overflow: hidden;
        display: block;
    }

    /* Navigation */
    #lv-b0e7e7d7a8d6 .lv-ig-dots {
        position: absolute;
        bottom: 14px;
        left: 0;
        width: 100%;
        display: flex;
        justify-content: center;
        gap: 6px;
        z-index: 20;
    }

    #lv-b0e7e7d7a8d6 .lv-ig-dot {
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: rgba(255,255,255,0.6);
        cursor: pointer;
        transition: all 0.25s ease;
    }

    #lv-b0e7e7d7a8d6 .lv-ig-dot.lv-active {
        width: 16px;
        border-radius: 999px;
        background: #ffffff;
    }

    #lv-b0e7e7d7a8d6 .lv-ig-arrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 32px;
        height: 32px;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.2);
        backdrop-filter: blur(4px);
        -webkit-backdrop-filter: blur(4px);
        border: 1px solid rgba(255, 255, 255, 0.3);
        color: #ffffff;
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        z-index: 30;
        font-size: 14px;
        transition: all 0.3s ease;
        opacity: 0;
    }

    #lv-b0e7e7d7a8d6 .group:hover .lv-ig-arrow { opacity: 1; }

    #lv-b0e7e7d7a8d6 .lv-ig-arrow-left { left: 8px; }
    #lv-b0e7e7d7a8d6 .lv-ig-arrow-right { right: 8px; }

    #lv-b0e7e7d7a8d6 .lv-ig-arrow:hover {
        background: #ffffff;
        color: #713506;
    }
    
    @media (max-width: 768px) {
        #lv-b0e7e7d7a8d6 .lv-ig-arrow { opacity: 0.9; }
    }


    #lv-b1bc89b1b497 { margin: 0; padding: 0; }
    
    /* Grande guillemet décorative en arrière-plan de la carte */
    #lv-b1bc89b1b497 .quote-bg::before {
        content: '"';
        position: absolute;
        top: -10px;
        left: 10px;
        font-family: 'Great Vibes', cursive;
        font-size: 8rem;
        color: rgba(157, 98, 61, 0.05); /* Cuivré très transparent */
        line-height: 1;
        z-index: 0;
        pointer-events: none;
    }

    /* --- STYLES DES LIENS DE NAVIGATION (Poppins) --- */
    #lv-b1bc89b1b497 .nav-links-village {
        text-align: center !important;
        margin-top: 24px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 15px !important;
        line-height: 1.4 !important;
    }
    #lv-b1bc89b1b497 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 4px !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-b1bc89b1b497 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #000 !important;
        transition: width .3s ease !important;
    }
    #lv-b1bc89b1b497 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }


    #lv-0a59827b680e { margin: 0; padding: 0; }

    /* --- BOUTONS LUXE (Lignes fines et animations douces) --- */
    #lv-0a59827b680e .btn-luxury {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 16px 42px;
        border: 1px solid rgba(113, 53, 6, 0.15); /* Bordure très fine et discrète */
        color: #713506;
        font-family: 'Poppins', sans-serif;
        font-size: 12px; /* Plus petit pour l'élégance */
        font-weight: 400;
        text-transform: uppercase;
        letter-spacing: 0.15em; /* Très espacé */
        text-decoration: none;
        background-color: transparent;
        overflow: hidden;
        transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        cursor: pointer;
    }

    /* Le fond qui monte subtilement au survol */
    #lv-0a59827b680e .btn-luxury::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.03); /* Voile à peine perceptible */
        transform: scaleY(0);
        transform-origin: bottom;
        transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        z-index: 0;
    }

    #lv-0a59827b680e .btn-luxury:hover {
        border-color: rgba(113, 53, 6, 0.6); /* La bordure s'affirme */
    }

    #lv-0a59827b680e .btn-luxury:hover::before {
        transform: scaleY(1);
    }

    /* Conteneur du texte pour rester au-dessus du fond animé */
    #lv-0a59827b680e .btn-luxury-text {
        position: relative;
        z-index: 1;
        display: flex;
        align-items: center;
    }

    /* L'icône flèche qui se décale */
    #lv-0a59827b680e .btn-luxury-arrow {
        margin-left: 12px;
        transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
    }

    #lv-0a59827b680e .btn-luxury:hover .btn-luxury-arrow {
        transform: translateX(6px);
    }

#lv-1d245c032596 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-1d245c032596 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-1d245c032596 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-1d245c032596 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-1d245c032596 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-1d245c032596 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-1d245c032596 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-1d245c032596 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* --- CADRE VIDÉO FENÊTRE EN ARCHE ÉPURÉE --- */
    #lv-1d245c032596 .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 140px 140px 0 0;
        border: 1px solid rgba(113, 53, 6, 0.2);
        box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        margin: 0 auto;
    }
    #lv-1d245c032596 .arched-video-frame:hover {
        transform: translateY(-8px);
        box-shadow: 0 30px 60px -15px rgba(0, 0, 0, 0.4);
    }
    #lv-1d245c032596 .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.6);
        border-radius: 132px 132px 0 0;
        pointer-events: none;
        z-index: 30;
    }
    #lv-1d245c032596 .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 130px 130px 0 0;
        overflow: hidden;
        background-color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    #lv-1d245c032596 .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-1d245c032596 .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
    }
    #lv-1d245c032596 .glass-btn:hover {
        background: #ffffff;
        color: #713506;
        transform: scale(1.1);
    }
    #lv-1d245c032596 .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-1d245c032596 .arched-video-frame:hover .video-controls {
        opacity: 1;
    }

    /* Style encart info */
    #lv-1d245c032596 .info-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }

    /* --- ENCADRÉ MAILLAGE INTERNE : PROGRAMME JAZZ AU CHÂTEAU --- */
    #lv-1d245c032596 .jazz-program-card {
        position: relative;
        overflow: hidden;
        background: linear-gradient(135deg, rgba(113, 53, 6, 0.98), rgba(157, 98, 61, 0.92));
        border: 1px solid rgba(245, 240, 234, 0.35);
        box-shadow: 0 22px 44px -18px rgba(64, 28, 4, 0.5);
    }
    #lv-1d245c032596 .jazz-program-card::before,#lv-1d245c032596 
    .jazz-program-card::after {
        content: '';
        position: absolute;
        border: 1px solid rgba(245, 240, 234, 0.28);
        border-radius: 999px;
        pointer-events: none;
    }
    #lv-1d245c032596 .jazz-program-card::before {
        width: 280px;
        height: 280px;
        top: -155px;
        right: -80px;
    }
    #lv-1d245c032596 .jazz-program-card::after {
        width: 180px;
        height: 180px;
        bottom: -120px;
        left: -60px;
    }
    #lv-1d245c032596 .program-link-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        background: #ffffff;
        color: #713506;
        text-decoration: none;
        font-family: 'Lato', sans-serif;
        font-size: 13px;
        font-weight: 600;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        padding: 15px 22px;
        transition: transform .28s ease, background-color .28s ease, color .28s ease;
    }
    #lv-1d245c032596 .program-link-btn:hover {
        transform: translateY(-3px);
        background: #f5f0ea;
        color: #713506;
    }

    /* --- VIDÉO YOUTUBE INTÉGRÉE AU DESIGN ÉDITORIAL --- */
    #lv-1d245c032596 .youtube-showcase {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 46px 46px 0 0;
        border: 1px solid rgba(113, 53, 6, 0.20);
        box-shadow: 0 25px 50px -14px rgba(0, 0, 0, 0.25);
        overflow: hidden;
        transition: transform .5s ease, box-shadow .5s ease;
    }
    #lv-1d245c032596 .youtube-showcase:hover {
        transform: translateY(-6px);
        box-shadow: 0 30px 60px -15px rgba(0, 0, 0, 0.35);
    }
    #lv-1d245c032596 .youtube-showcase::before {
        content: '';
        position: absolute;
        inset: 8px;
        border: 1px solid rgba(157, 98, 61, 0.55);
        border-radius: 38px 38px 0 0;
        pointer-events: none;
        z-index: 2;
    }
    #lv-1d245c032596 .youtube-ratio {
        position: relative;
        width: 100%;
        aspect-ratio: 16 / 9;
        overflow: hidden;
        border-radius: 34px 34px 0 0;
        background: #1d0c02;
    }
    #lv-1d245c032596 .youtube-ratio iframe {
        width: 100%;
        height: 100%;
        border: 0;
        display: block;
    }

/* Keep hotel invitations readable on their dark background. */
#lv-1d245c032596 .bg-village-dark h2,#lv-1d245c032596  .bg-village-dark a { color: #f5f0ea; }


    #lv-e85295065c8d { margin: 0; padding: 0; background-color: #fcf9f3; }


    #lv-d2adbefe20aa { margin: 0; padding: 0; background-color: #fcf9f3; scroll-behavior: smooth; }

    /* --- BANDEAU DE NAVIGATION (Sur une seule ligne avec scroll horizontal) --- */
    #lv-d2adbefe20aa .carte-nav-wrapper {
        position: sticky;
        top: 0;
        z-index: 50;
        background-color: rgba(252, 249, 243, 0.95);
        backdrop-filter: blur(10px);
        border-bottom: 1px solid rgba(113, 53, 6, 0.15);
        margin-bottom: 40px;
    }

    #lv-d2adbefe20aa .carte-nav {
        max-width: 1200px;
        margin: 0 auto;
        padding: 16px 20px;
        display: flex;
        justify-content: flex-start; /* Alignement à gauche pour le scroll mobile */
        gap: 24px;
        flex-wrap: nowrap; /* Empêche le passage à la ligne */
        overflow-x: auto; /* Active le défilement horizontal */
        -webkit-overflow-scrolling: touch; /* Défilement fluide sur iOS */
        scrollbar-width: none; /* Cache la barre de scroll Firefox */
    }
    
    /* Centrer sur les grands écrans si l'espace le permet */
    @media (min-width: 1200px) {
        #lv-d2adbefe20aa .carte-nav { justify-content: center; }
    }

    /* Cache la barre de scroll Chrome/Safari */
    #lv-d2adbefe20aa .carte-nav::-webkit-scrollbar { 
        display: none; 
    }

    #lv-d2adbefe20aa .carte-nav-link {
        font-family: 'Poppins', sans-serif;
        font-size: 13px;
        letter-spacing: 0.15em;
        text-transform: uppercase;
        text-decoration: none;
        color: #713506;
        position: relative;
        padding-bottom: 6px;
        font-weight: 500;
        white-space: nowrap; /* Obligatoire pour garder le texte sur une ligne */
        transition: opacity 0.25s ease;
    }

    #lv-d2adbefe20aa .carte-nav-link:hover {
        opacity: 0.7;
    }

    #lv-d2adbefe20aa .carte-nav-link::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 0;
        width: 0%;
        height: 1px;
        background-color: #9d623d;
        transition: width 0.3s ease;
        transform: translateX(-50%);
    }

    #lv-d2adbefe20aa .carte-nav-link:hover::after {
        width: 100%;
    }

    /* Ornement décoratif pour le titre Midi */
    #lv-d2adbefe20aa .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }

    /* --- STYLE ÉDITORIAL MENU (Effet papier ligné) --- */
    #lv-d2adbefe20aa .menu-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }


    #lv-a19867ab302b { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES PLATS --- */
    #lv-a19867ab302b .dish-container {
        margin-bottom: 2rem;
        position: relative;
    }
    #lv-a19867ab302b .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-a19867ab302b .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.15rem;
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-a19867ab302b .dish-title { font-size: 1.3rem; }
    }
    #lv-a19867ab302b .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-a19867ab302b .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.1rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-a19867ab302b .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem; /* Espace sous le prix */
    }
    #lv-a19867ab302b .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.8rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* Décoration sous le titre de section */
    #lv-a19867ab302b .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }


    #lv-3409364f7bb9 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES PLATS --- */
    #lv-3409364f7bb9 .dish-container {
        margin-bottom: 2rem;
        position: relative;
    }
    #lv-3409364f7bb9 .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-3409364f7bb9 .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.15rem;
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-3409364f7bb9 .dish-title { font-size: 1.3rem; }
    }
    #lv-3409364f7bb9 .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-3409364f7bb9 .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.1rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-3409364f7bb9 .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem; /* Espace sous le prix */
    }
    #lv-3409364f7bb9 .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.8rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* Décoration sous le titre de section */
    #lv-3409364f7bb9 .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }


    #lv-4cb055bcf56b { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES PLATS --- */
    #lv-4cb055bcf56b .dish-container {
        margin-bottom: 2rem;
        position: relative;
    }
    #lv-4cb055bcf56b .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-4cb055bcf56b .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.15rem;
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-4cb055bcf56b .dish-title { font-size: 1.3rem; }
    }
    #lv-4cb055bcf56b .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-4cb055bcf56b .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.1rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-4cb055bcf56b .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem;
    }
    #lv-4cb055bcf56b .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.8rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* Décoration sous le titre de section */
    #lv-4cb055bcf56b .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }


    #lv-b804d4f6f17d { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES PLATS --- */
    #lv-b804d4f6f17d .dish-container {
        margin-bottom: 2rem;
        position: relative;
    }
    #lv-b804d4f6f17d .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-b804d4f6f17d .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.15rem;
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-b804d4f6f17d .dish-title { font-size: 1.3rem; }
    }
    #lv-b804d4f6f17d .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-b804d4f6f17d .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.1rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-b804d4f6f17d .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem;
    }
    #lv-b804d4f6f17d .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.8rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* Décoration sous le titre de section */
    #lv-b804d4f6f17d .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }


    #lv-0fbb41bdab83 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES PLATS --- */
    #lv-0fbb41bdab83 .dish-container {
        margin-bottom: 2rem;
        position: relative;
    }
    #lv-0fbb41bdab83 .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-0fbb41bdab83 .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.15rem;
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-0fbb41bdab83 .dish-title { font-size: 1.3rem; }
    }
    #lv-0fbb41bdab83 .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-0fbb41bdab83 .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.1rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-0fbb41bdab83 .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem;
    }
    #lv-0fbb41bdab83 .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.8rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* Décoration sous le titre de section */
    #lv-0fbb41bdab83 .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }


    #lv-7db686fe1362 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES PLATS --- */
    #lv-7db686fe1362 .dish-container {
        margin-bottom: 2rem;
        position: relative;
    }
    #lv-7db686fe1362 .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-7db686fe1362 .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.15rem;
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-7db686fe1362 .dish-title { font-size: 1.3rem; }
    }
    #lv-7db686fe1362 .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-7db686fe1362 .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.1rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-7db686fe1362 .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem;
    }
    #lv-7db686fe1362 .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.8rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* Décoration sous le titre de section */
    #lv-7db686fe1362 .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }


    #lv-d3a4073bebf8 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES PLATS --- */
    #lv-d3a4073bebf8 .dish-container {
        margin-bottom: 2rem;
        position: relative;
    }
    #lv-d3a4073bebf8 .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-d3a4073bebf8 .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.15rem;
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-d3a4073bebf8 .dish-title { font-size: 1.3rem; }
    }
    #lv-d3a4073bebf8 .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-d3a4073bebf8 .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.1rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-d3a4073bebf8 .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem;
    }
    #lv-d3a4073bebf8 .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.8rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* Décoration sous le titre de section */
    #lv-d3a4073bebf8 .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }


    #lv-00095b2fca4f { margin: 0; padding: 0; background-color: #fcf9f3; }


    #lv-a081e87230a4 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES PLATS --- */
    #lv-a081e87230a4 .dish-container {
        margin-bottom: 2rem;
        position: relative;
    }
    #lv-a081e87230a4 .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-a081e87230a4 .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.15rem;
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-a081e87230a4 .dish-title { font-size: 1.3rem; }
    }
    #lv-a081e87230a4 .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-a081e87230a4 .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.1rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-a081e87230a4 .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.95rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem;
    }
    #lv-a081e87230a4 .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.8rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* Décoration sous le titre de section */
    #lv-a081e87230a4 .section-ornament {
        width: 40px;
        height: 1px;
        background-color: #9d623d;
        margin: 0 auto 2.5rem auto;
        opacity: 0.5;
    }


    #lv-4eb36e143329 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- TYPOGRAPHIE DES BOISSONS --- */
    #lv-4eb36e143329 .dish-container {
        margin-bottom: 1.5rem;
        position: relative;
    }
    #lv-4eb36e143329 .dish-header {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        gap: 1rem;
        margin-bottom: 0.25rem;
    }
    #lv-4eb36e143329 .dish-title {
        font-family: 'Playfair Display', serif;
        font-size: 1.05rem; /* Légèrement plus petit pour les boissons */
        color: #713506;
        font-weight: 600;
        line-height: 1.3;
    }
    @media (min-width: 768px) {
        #lv-4eb36e143329 .dish-title { font-size: 1.15rem; }
    }
    #lv-4eb36e143329 .dish-dots {
        flex-grow: 1;
        border-bottom: 1px dotted rgba(113, 53, 6, 0.3);
        position: relative;
        top: -6px;
    }
    #lv-4eb36e143329 .dish-price {
        font-family: 'Poppins', sans-serif;
        font-size: 1.05rem;
        color: #9d623d;
        font-weight: 500;
        white-space: nowrap;
    }
    #lv-4eb36e143329 .dish-desc {
        font-family: 'Lato', sans-serif;
        font-size: 0.85rem;
        color: rgba(113, 53, 6, 0.85);
        line-height: 1.5;
        padding-right: 2rem;
    }
    #lv-4eb36e143329 .dish-en {
        font-family: 'Lato', sans-serif;
        font-size: 0.75rem;
        color: rgba(113, 53, 6, 0.45);
        font-style: italic;
        line-height: 1.4;
        margin-top: 0.2rem;
        padding-right: 2rem;
    }

    /* En-têtes de sous-catégories (Ex: Vins au verre, Spritz...) */
    #lv-4eb36e143329 .drinks-category {
        font-family: 'Playfair Display', serif;
        font-size: 1.3rem;
        color: #713506;
        border-bottom: 1px solid rgba(113, 53, 6, 0.15);
        padding-bottom: 0.5rem;
        margin-bottom: 1.5rem;
        margin-top: 2.5rem;
    }

    /* --- CTA BLOCK --- */
    #lv-4eb36e143329 .nav-links-village {
        text-align: center !important;
        margin-top: 40px !important;
        margin-bottom: 40px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 14px !important;
        line-height: 1.4 !important;
    }
    #lv-4eb36e143329 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 16px !important;
    }
    #lv-4eb36e143329 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 4px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-size: 13px !important;
        transition: color 0.3s ease !important;
    }
    #lv-4eb36e143329 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .3s ease !important;
    }
    #lv-4eb36e143329 .nav-links-village .village-link:hover { color: #9d623d !important; }
    #lv-4eb36e143329 .nav-links-village .village-link:hover::after { width: 100% !important; }


    #lv-ede6b904b8fa { margin: 0; padding: 0; }

    /* Animation du lien itinéraire */
    #lv-ede6b904b8fa .btn-itineraire {
        transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    }
    #lv-ede6b904b8fa .btn-itineraire:hover {
        letter-spacing: 0.2em;
        color: #713506;
    }

    /* Cadre de la carte : Ombre légère demandée */
    #lv-ede6b904b8fa .map-frame {
        position: relative;
        width: 100%;
        height: 500px;
        overflow: hidden;
        border-radius: 2px;
        /* Ombre plus diffuse et légère */
        box-shadow: 0 15px 45px -15px rgba(113, 53, 6, 0.12);
        border: 1px solid rgba(157, 98, 61, 0.08);
    }
    
    @media (min-width: 768px) {
        #lv-ede6b904b8fa .map-frame {
            height: 600px;
        }
    }

    /* Le filtre signature sur la carte */
    #lv-ede6b904b8fa .map-sepia-overlay {
        position: absolute;
        inset: 0;
        background: #f5f0ea;
        mix-blend-mode: multiply;
        opacity: 0.4;
        pointer-events: none;
        z-index: 5;
    }

    #lv-ede6b904b8fa .google-map-iframe {
        width: 100%;
        height: 100%;
        filter: grayscale(1) contrast(1.05) brightness(1);
        border: 0;
    }

    /* Décoration de fond subtile */
    #lv-ede6b904b8fa .bg-ornament {
        font-family: 'Playfair Display', serif;
        font-size: 15vw;
        color: rgba(113, 53, 6, 0.02);
        position: absolute;
        top: 10%;
        left: -5%;
        pointer-events: none;
        user-select: none;
        z-index: 0;
        white-space: nowrap;
    }


    #lv-6bf9f4904c56 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- SOUS-MENU DE NAVIGATION --- */
    #lv-6bf9f4904c56 .resto-subnav {
        max-width: 1100px;
        margin: 0 auto 20px;
        padding: 18px 20px 22px;
        display: flex;
        justify-content: center;
        gap: 46px;
        flex-wrap: wrap;
        border-bottom: 1px solid rgba(113, 53, 6, 0.15);
    }
    #lv-6bf9f4904c56 .resto-subnav-link {
        font-family: 'Poppins', sans-serif;
        font-size: 13px;
        letter-spacing: 0.2em;
        text-transform: uppercase;
        text-decoration: none;
        color: #713506;
        position: relative;
        padding-bottom: 6px;
        font-weight: 500;
        transition: opacity 0.25s ease;
    }
    #lv-6bf9f4904c56 .resto-subnav-link:hover {
        opacity: 0.7;
    }
    #lv-6bf9f4904c56 .resto-subnav-link::after {
        content: "";
        position: absolute;
        left: 50%;
        bottom: 0;
        width: 0%;
        height: 1px;
        background-color: #9d623d;
        transition: width 0.3s ease;
        transform: translateX(-50%);
    }
    #lv-6bf9f4904c56 .resto-subnav-link:hover::after {
        width: 100%;
    }
    @media (max-width: 700px) {
        #lv-6bf9f4904c56 .resto-subnav { gap: 22px; padding: 12px 10px; }
        #lv-6bf9f4904c56 .resto-subnav-link { font-size: 11px; }
    }

    /* --- LETTRINE PREMIUM --- */
    #lv-6bf9f4904c56 .drop-cap-resto::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    /* --- CADRE IMAGE (Type Tableau/Polaroïd) --- */
    #lv-6bf9f4904c56 .framed-image-container {
        width: 100%;
        max-width: 550px;
        margin: 0 auto;
        background: #ffffff;
        padding: 10px;
        border-radius: 4px;
        box-shadow: 0 20px 40px -10px rgba(113, 53, 6, 0.15);
    }
    #lv-6bf9f4904c56 .framed-image-inner {
        position: relative;
        width: 100%;
        overflow: hidden;
        border-radius: 2px;
    }
    #lv-6bf9f4904c56 .village-framed-img {
        width: 100%;
        display: block;
        transition: transform 0.8s ease;
    }
    
    /* Sur Mobile : Format d'origine de la photo (aucun rognage) */
    @media (max-width: 767px) {
        #lv-6bf9f4904c56 .framed-image-inner {
            aspect-ratio: auto;
        }
        #lv-6bf9f4904c56 .village-framed-img {
            height: auto;
            object-fit: contain;
        }
    }
    
    /* Sur PC : Photo allongée (format portrait 4:5) pour l'équilibre de la grille */
    @media (min-width: 768px) {
        #lv-6bf9f4904c56 .framed-image-inner {
            aspect-ratio: 4 / 5; 
        }
        #lv-6bf9f4904c56 .village-framed-img {
            height: 100%;
            object-fit: cover;
        }
    }

    #lv-6bf9f4904c56 .framed-image-container:hover .village-framed-img {
        transform: scale(1.05);
    }

    /* --- STYLES DES LIENS D'ACTION (CTA) --- */
    #lv-6bf9f4904c56 .nav-links-village {
        margin-top: 40px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 14px !important;
        line-height: 1.8 !important;
    }
    #lv-6bf9f4904c56 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        gap: 16px !important;
    }
    /* Sur desktop, aligné à gauche sous le texte. Sur mobile, centré. */
    #lv-6bf9f4904c56 .nav-links-village .nav-col { align-items: flex-start !important; }
    @media (max-width: 1023px) {
        #lv-6bf9f4904c56 .nav-links-village { text-align: center !important; }
        #lv-6bf9f4904c56 .nav-links-village .nav-col { align-items: center !important; }
    }

    #lv-6bf9f4904c56 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 4px !important;
        text-transform: uppercase;
        letter-spacing: 0.1em;
        font-size: 13px !important;
        transition: color 0.3s ease !important;
    }
    #lv-6bf9f4904c56 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .3s ease !important;
    }
    #lv-6bf9f4904c56 .nav-links-village .village-link:hover {
        color: #9d623d !important;
    }
    #lv-6bf9f4904c56 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }


    #lv-0797d1e260a6 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-0797d1e260a6 .drop-cap-chef::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.6rem;
        color: #9d623d;
    }

    /* --- CADRE VIDÉO FENÊTRE EN ARCHE (TAILLE RÉDUITE) --- */
    #lv-0797d1e260a6 .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 8px;
        border-radius: 120px 120px 0 0;
        border: 1px solid #713506;
        box-shadow: 0 15px 30px -10px rgba(113, 53, 6, 0.12);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        opacity: 0;
        transform: translateY(20px);
        
        /* Ajustements pour l'intégration dans la colonne */
        width: 100%;
        min-width: 170px;
        max-width: 220px;
        flex-shrink: 0;
    }
    
    #lv-0797d1e260a6 .arched-video-frame.is-visible {
        opacity: 1;
        transform: translateY(0);
    }

    #lv-0797d1e260a6 .arched-video-frame:hover {
        transform: translateY(-6px);
        box-shadow: 0 25px 40px -12px rgba(113, 53, 6, 0.20);
    }

    #lv-0797d1e260a6 .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 6px; bottom: 6px; left: 6px; right: 6px;
        border: 1px solid rgba(157, 98, 61, 0.5);
        border-radius: 114px 114px 0 0;
        pointer-events: none;
        z-index: 30;
    }

    #lv-0797d1e260a6 .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 112px 112px 0 0;
        overflow: hidden;
        background-color: #000;
    }
    
    #lv-0797d1e260a6 .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-0797d1e260a6 .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
        padding: 6px; /* Affiné pour les petits cadres */
    }
    #lv-0797d1e260a6 .glass-btn:hover {
        background: rgba(255, 255, 255, 0.95);
        color: #713506;
        transform: scale(1.1);
    }

    #lv-0797d1e260a6 .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-0797d1e260a6 .arched-video-frame:hover .video-controls {
        opacity: 1;
    }

    /* --- SCROLL HORIZONTAL INVISIBLE POUR MOBILE --- */
    #lv-0797d1e260a6 .hide-scrollbar::-webkit-scrollbar {
        display: none;
    }
    #lv-0797d1e260a6 .hide-scrollbar {
        -ms-overflow-style: none;
        scrollbar-width: none;
    }

#lv-056b84595d24 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- STYLE DU MENU "CARTE" --- */
    #lv-056b84595d24 .menu-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.08) 39px, rgba(157, 98, 61, 0.08) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.15);
    }

    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-056b84595d24 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-056b84595d24 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-056b84595d24 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important;
        }
    }
    #lv-056b84595d24 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 400 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
        transition: color 0.3s ease;
    }
    #lv-056b84595d24 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #000 !important;
        transition: width .28s ease !important;
    }
    #lv-056b84595d24 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }
    #lv-056b84595d24 .nav-links-village .village-link:hover {
        color: #000 !important;
    }

    /* --- SLIDER INFINI (DESIGN "GALERIE D'ART") --- */
    #lv-056b84595d24 #lvSliderWrap {
        overflow: hidden;
        padding: 40px 0 60px 0; /* Plus d'espace pour les ombres */
        background: transparent;
        position: relative;
        /* Désactive le comportement par défaut de pull-to-refresh lors du drag tactile */
        touch-action: pan-y;
    }
    #lv-056b84595d24 #lvSliderTrack {
        display: flex;
        will-change: transform;
        cursor: grab;
    }
    #lv-056b84595d24 #lvSliderTrack:active {
        cursor: grabbing;
    }
    #lv-056b84595d24 .lvSlide {
        flex: 0 0 300px; /* Taille contrôlée */
        margin-right: 40px; /* Plus d'espacement entre les images */
        height: 420px;
        border-radius: 2px;
        background: #ffffff; /* Cadre blanc type polaroïd/tableau */
        padding: 8px; /* Épaisseur du cadre */
        box-shadow: 0 20px 40px -15px rgba(113, 53, 6, 0.2); /* Ombre douce et profonde */
        cursor: zoom-in;
        transition: transform 0.4s ease, box-shadow 0.4s ease;
        user-select: none;
    }
    #lv-056b84595d24 .lvSlide:hover {
        transform: translateY(-8px);
        box-shadow: 0 25px 50px -15px rgba(113, 53, 6, 0.3);
    }
    #lv-056b84595d24 .lvSlideInner {
        width: 100%;
        height: 100%;
        overflow: hidden;
        border-radius: 1px;
        pointer-events: none; /* Évite les comportements parasites au touch */
    }
    #lv-056b84595d24 .lvSlide img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        transition: transform 0.8s ease;
        pointer-events: none;
    }
    #lv-056b84595d24 .lvSlide:hover img {
        transform: scale(1.05); /* Zoom subtil au survol */
    }

    /* Flèches cuivrées fines et élégantes (inspirées du style Instagram discret) */
    #lv-056b84595d24 .lvArrow {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 28px;
        height: 28px;
        border-radius: 50%;
        background: rgba(252, 249, 243, 0.45);
        border: 1px solid rgba(157, 98, 61, 0.25);
        display: flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
        z-index: 10;
        user-select: none;
        -webkit-tap-highlight-color: transparent;
        box-shadow: none;
        opacity: 0.55;
        transition: all 0.25s ease;
    }
    #lv-056b84595d24 .lvArrow:hover {
        background: rgba(252, 249, 243, 0.75);
        color: #713506;
        opacity: 0.9;
        transform: translateY(-50%) scale(1.04);
    }
    #lv-056b84595d24 .lvArrow svg {
        width: 13px;
        height: 13px;
        stroke: currentColor;
        stroke-width: 1.6;
        fill: none;
        color: #713506;
        transition: color 0.3s ease;
    }
    #lv-056b84595d24 .lvArrow:hover svg {
        color: #713506;
    }
    #lv-056b84595d24 #lvPrev { left: 20px; }
    #lv-056b84595d24 #lvNext { right: 20px; }

    /* Lightbox */
    #lv-056b84595d24 #lvLightbox {
        position: fixed;
        inset: 0;
        background: rgba(0,0,0,.88);
        display: none;
        align-items: center;
        justify-content: center;
        padding: 24px;
        z-index: 9999;
        cursor: zoom-out;
    }
    #lv-056b84595d24 #lvLightbox.is-open { display: flex; }
    #lv-056b84595d24 #lvLightboxImg {
        max-width: min(1100px, 92vw);
        max-height: 92vh;
        border-radius: 2px;
        box-shadow: 0 20px 50px rgba(0,0,0,.5);
        cursor: default;
    }

    #lv-056b84595d24 .lvLightboxClose,#lv-056b84595d24 
    .lvLightboxNav {
        position: absolute;
        color: #f5f0ea;
        background: transparent;
        border: 0;
        cursor: pointer;
        z-index: 10000;
        opacity: 0.75;
        transition: opacity 0.25s ease, color 0.25s ease;
    }

    #lv-056b84595d24 .lvLightboxClose:hover,#lv-056b84595d24 
    .lvLightboxNav:hover {
        opacity: 1;
        color: #9d623d;
    }

    #lv-056b84595d24 .lvLightboxClose {
        top: 18px;
        right: 22px;
        font-size: 42px;
        line-height: 1;
    }

    #lv-056b84595d24 .lvLightboxNav {
        top: 50%;
        transform: translateY(-50%);
        font-size: 56px;
        line-height: 1;
        padding: 12px;
    }

    #lv-056b84595d24 #lvLightboxPrev { left: 18px; }
    #lv-056b84595d24 #lvLightboxNext { right: 18px; }

    @media (max-width: 800px) {
        #lv-056b84595d24 .lvSlide { flex: 0 0 260px; height: 360px; margin-right: 20px; }
        #lv-056b84595d24 #lvPrev { left: 10px; }
        #lv-056b84595d24 #lvNext { right: 10px; }
        #lv-056b84595d24 .lvLightboxNav { font-size: 42px; }
    }


    #lv-a3e03e94e4e9 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- FILTRE ÉLÉGANT SANS BUG DE COULEUR (PALACE STYLE) --- */
    #lv-a3e03e94e4e9 .village-img-wrapper {
        position: relative;
        overflow: hidden;
        background-color: #713506; 
    }
    
    /* Calque de fusion cuivré signature (Archive) */
    #lv-a3e03e94e4e9 .village-img-wrapper::after {
        content: '';
        position: absolute;
        inset: 0;
        background-color: #9d623d; 
        mix-blend-mode: color;
        opacity: 0.85;
        transition: opacity 1.8s cubic-bezier(0.25, 1, 0.5, 1); /* Transition lente et luxueuse */
        pointer-events: none;
        z-index: 10;
    }
    
    /* Voile de profondeur */
    #lv-a3e03e94e4e9 .village-img-wrapper::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.15); 
        transition: opacity 1.8s cubic-bezier(0.25, 1, 0.5, 1);
        pointer-events: none;
        z-index: 11;
    }
    
    /* Transition d'apparition progressive au scroll (Staggering) */
    #lv-a3e03e94e4e9 .scroll-anim-trigger.is-visible:nth-child(1) .village-img-wrapper::after,#lv-a3e03e94e4e9 
    .scroll-anim-trigger.is-visible:nth-child(1) .village-img-wrapper::before {
        opacity: 0;
        transition-delay: 0.3s; /* La première commence après 300ms */
    }

    #lv-a3e03e94e4e9 .scroll-anim-trigger.is-visible:nth-child(2) .village-img-wrapper::after,#lv-a3e03e94e4e9 
    .scroll-anim-trigger.is-visible:nth-child(2) .village-img-wrapper::before {
        opacity: 0;
        transition-delay: 0.8s; /* La deuxième commence après 800ms */
    }

    #lv-a3e03e94e4e9 .scroll-anim-trigger.is-visible:nth-child(3) .village-img-wrapper::after,#lv-a3e03e94e4e9 
    .scroll-anim-trigger.is-visible:nth-child(3) .village-img-wrapper::before {
        opacity: 0;
        transition-delay: 1.3s; /* La troisième commence après 1.3s */
    }

    /* Au survol souris, la réaction est instantanée (0.4s) sans délai pour l'interactivité */
    #lv-a3e03e94e4e9 .group:hover .village-img-wrapper::after,#lv-a3e03e94e4e9 
    .group:hover .village-img-wrapper::before {
        opacity: 0 !important;
        transition: opacity 0.4s ease-in-out !important;
        transition-delay: 0s !important;
    }

    #lv-a3e03e94e4e9 .village-img {
        transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
        will-change: transform;
    }
    
    #lv-a3e03e94e4e9 .group:hover .village-img,#lv-a3e03e94e4e9 
    .group.is-visible .village-img {
        transform: scale(1.05);
    }


    #lv-66473e75fc51 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- CADRE VIDÉO FENÊTRE EN ARCHE ÉPURÉE --- */
    #lv-66473e75fc51 .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 140px 140px 0 0;
        border: 1px solid #713506;
        box-shadow: 0 25px 50px -12px rgba(113, 53, 6, 0.15);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        opacity: 0;
        transform: translateY(40px);
    }
    #lv-66473e75fc51 .arched-video-frame.is-visible {
        opacity: 1;
        transform: translateY(0);
    }
    #lv-66473e75fc51 .arched-video-frame:hover {
        transform: translateY(-8px);
        box-shadow: 0 30px 60px -15px rgba(113, 53, 6, 0.25);
    }
    #lv-66473e75fc51 .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.6);
        border-radius: 132px 132px 0 0;
        pointer-events: none;
        z-index: 30;
    }
    #lv-66473e75fc51 .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 130px 130px 0 0;
        overflow: hidden;
        background-color: #000;
    }
    #lv-66473e75fc51 .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-66473e75fc51 .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
    }
    #lv-66473e75fc51 .glass-btn:hover {
        background: rgba(255, 255, 255, 0.9);
        color: #713506;
        transform: scale(1.1);
    }
    #lv-66473e75fc51 .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-66473e75fc51 .arched-video-frame:hover .video-controls {
        opacity: 1;
    }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-66473e75fc51 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

#lv-c0612f3715b6 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-c0612f3715b6 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-c0612f3715b6 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-c0612f3715b6 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-c0612f3715b6 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-c0612f3715b6 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-c0612f3715b6 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #000 !important;
        transition: width .28s ease !important;
    }
    #lv-c0612f3715b6 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Conteneur Reel Facebook responsif et élégant */
    #lv-c0612f3715b6 .reel-embed-container {
        background: #ffffff;
        padding: 8px;
        border: 1px solid rgba(113, 53, 6, 0.1);
        border-radius: 4px;
        box-shadow: 0 15px 35px -10px rgba(113, 53, 6, 0.15);
        display: inline-flex;
        transition: transform 0.4s ease;
    }
    #lv-c0612f3715b6 .reel-embed-container:hover {
        transform: translateY(-5px);
    }

/* Keep hotel invitations readable on their dark background. */
#lv-c0612f3715b6 .bg-village-dark h2,#lv-c0612f3715b6  .bg-village-dark a { color: #f5f0ea; }

#lv-8004462f0b4b { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-8004462f0b4b .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-8004462f0b4b .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-8004462f0b4b .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-8004462f0b4b .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-8004462f0b4b .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-8004462f0b4b .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-8004462f0b4b .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Style éditorial menu */
    #lv-8004462f0b4b .menu-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }
    
    /* Conteneur Facebook responsif */
    #lv-8004462f0b4b .fb-embed-container {
        display: flex;
        justify-content: center;
        margin: 3rem 0;
        width: 100%;
        overflow: hidden;
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-8004462f0b4b .nav-links-village .village-link::after {
            transition: none !important;
        }
    }

/* Keep hotel invitations readable on their dark background. */
#lv-8004462f0b4b .bg-village-dark h2,#lv-8004462f0b4b  .bg-village-dark a { color: #f5f0ea; }


    #lv-cb2289967286 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- CADRE VIDÉO FENÊTRE EN ARCHE ÉPURÉE --- */
    #lv-cb2289967286 .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 140px 140px 0 0;
        border: 1px solid #713506;
        box-shadow: 0 25px 50px -12px rgba(113, 53, 6, 0.15);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        opacity: 0;
        transform: translateY(40px);
    }
    #lv-cb2289967286 .arched-video-frame.is-visible {
        opacity: 1;
        transform: translateY(0);
    }
    #lv-cb2289967286 .arched-video-frame:hover {
        transform: translateY(-8px);
        box-shadow: 0 30px 60px -15px rgba(113, 53, 6, 0.25);
    }
    #lv-cb2289967286 .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.6);
        border-radius: 132px 132px 0 0;
        pointer-events: none;
        z-index: 30;
    }
    #lv-cb2289967286 .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 130px 130px 0 0;
        overflow: hidden;
        background-color: #000;
    }
    #lv-cb2289967286 .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-cb2289967286 .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
    }
    #lv-cb2289967286 .glass-btn:hover {
        background: rgba(255, 255, 255, 0.9);
        color: #713506;
        transform: scale(1.1);
    }
    #lv-cb2289967286 .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-cb2289967286 .arched-video-frame:hover .video-controls {
        opacity: 1;
    }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-cb2289967286 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

#lv-a85b8d83a980 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-a85b8d83a980 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-a85b8d83a980 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-a85b8d83a980 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-a85b8d83a980 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-a85b8d83a980 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-a85b8d83a980 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-a85b8d83a980 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Style éditorial pour les listes */
    #lv-a85b8d83a980 .program-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-a85b8d83a980 .nav-links-village .village-link::after,#lv-a85b8d83a980 
        .hover\:scale-105 {
            transition: none !important;
        }
    }

/* Keep hotel invitations readable on their dark background. */
#lv-a85b8d83a980 .bg-village-dark h2,#lv-a85b8d83a980  .bg-village-dark a { color: #f5f0ea; }

#lv-d30773ef3e19 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-d30773ef3e19 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-d30773ef3e19 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-d30773ef3e19 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-d30773ef3e19 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-d30773ef3e19 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-d30773ef3e19 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-d30773ef3e19 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Style éditorial encart */
    #lv-d30773ef3e19 .info-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.08) 39px, rgba(157, 98, 61, 0.08) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }

    /* --- PASSERELLE ÉDITORIALE : JAZZ AU CHÂTEAU --- */
    #lv-d30773ef3e19 .jazz-weekly-note {
        max-width: 760px;
        margin: -8px auto 48px;
        padding: 20px 0 21px;
        text-align: center;
        border-top: 1px solid rgba(113, 53, 6, 0.16);
        border-bottom: 1px solid rgba(113, 53, 6, 0.16);
    }
    #lv-d30773ef3e19 .jazz-weekly-note .jazz-weekly-label {
        margin: 0 0 7px;
        color: #9d623d;
        font-family: 'Poppins', sans-serif;
        font-size: 10px;
        font-weight: 500;
        letter-spacing: 0.18em;
        line-height: 1.2;
        text-transform: uppercase;
    }
    #lv-d30773ef3e19 .jazz-weekly-note .jazz-weekly-copy {
        margin: 0;
        color: rgba(113, 53, 6, 0.78);
        font-family: 'Lato', sans-serif;
        font-size: 14px;
        line-height: 1.6;
    }
    #lv-d30773ef3e19 .jazz-weekly-note a {
        color: #713506;
        font-family: 'Playfair Display', serif;
        font-size: 16px;
        font-style: italic;
        text-decoration: none;
        border-bottom: 1px solid rgba(157, 98, 61, 0.58);
        padding-bottom: 2px;
        transition: color .25s ease, border-color .25s ease;
    }
    #lv-d30773ef3e19 .jazz-weekly-note a:hover {
        color: #9d623d;
        border-color: #9d623d;
    }

    /* --- CADRE VISUEL DE L'OPENING SESSION --- */
    #lv-d30773ef3e19 .poster-frame {
        background: #ffffff;
        padding: 10px;
        border: 1px solid rgba(113, 53, 6, 0.15);
        box-shadow: 0 18px 35px -12px rgba(113, 53, 6, 0.18);
        transform: rotate(2deg);
        transition: transform 0.4s ease, box-shadow 0.4s ease;
        max-width: 230px;
        margin: 0 auto;
    }
    #lv-d30773ef3e19 .poster-frame:hover {
        transform: rotate(0deg) translateY(-5px);
        box-shadow: 0 24px 42px -14px rgba(113, 53, 6, 0.24);
    }
    #lv-d30773ef3e19 .poster-filter {
        filter: sepia(22%) contrast(1.04) opacity(0.94) grayscale(8%);
    }
    
    /* --- CADRE VIDÉO FENÊTRE EN ARCHE ÉPURÉE --- */
    #lv-d30773ef3e19 .arched-video-frame {
        position: relative;
        background: #ffffff;
        padding: 10px;
        border-radius: 140px 140px 0 0;
        border: 1px solid rgba(113, 53, 6, 0.2);
        box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
        overflow: hidden;
        transition: transform 0.5s ease, box-shadow 0.5s ease;
        margin: 0 auto;
        max-width: 320px;
    }
    #lv-d30773ef3e19 .arched-video-frame:hover {
        transform: translateY(-8px);
        box-shadow: 0 30px 60px -15px rgba(0, 0, 0, 0.4);
    }
    #lv-d30773ef3e19 .arched-video-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.6);
        border-radius: 132px 132px 0 0;
        pointer-events: none;
        z-index: 30;
    }
    #lv-d30773ef3e19 .video-mask {
        position: relative;
        width: 100%;
        aspect-ratio: 9/16;
        border-radius: 130px 130px 0 0;
        overflow: hidden;
        background-color: #000000;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    #lv-d30773ef3e19 .video-mask video {
        width: 100%;
        height: 100%;
        object-fit: cover;
        display: block;
        z-index: 10;
        position: relative;
    }

    /* --- BOUTONS PREMIUM (GLASSMORPHISM) --- */
    #lv-d30773ef3e19 .glass-btn {
        background: rgba(255, 255, 255, 0.25);
        backdrop-filter: blur(8px);
        -webkit-backdrop-filter: blur(8px);
        border: 1px solid rgba(255, 255, 255, 0.4);
        color: #ffffff;
        transition: all 0.3s ease;
    }
    #lv-d30773ef3e19 .glass-btn:hover {
        background: #ffffff;
        color: #713506;
        transform: scale(1.1);
    }
    #lv-d30773ef3e19 .video-controls {
        opacity: 0;
        transition: opacity 0.4s ease;
    }
    #lv-d30773ef3e19 .arched-video-frame:hover .video-controls {
        opacity: 1;
    }

/* Keep hotel invitations readable on their dark background. */
#lv-d30773ef3e19 .bg-village-dark h2,#lv-d30773ef3e19  .bg-village-dark a { color: #f5f0ea; }


    #lv-7150e8dad0b6 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-7150e8dad0b6 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    /* --- CADRE PHOTO PREMIUM (Pour remplacer Facebook) --- */
    #lv-7150e8dad0b6 .premium-photo-frame {
        background: #ffffff;
        padding: 12px;
        border: 1px solid rgba(113, 53, 6, 0.2);
        box-shadow: 0 20px 40px -10px rgba(113, 53, 6, 0.10);
        border-radius: 4px;
        width: 100%;
        max-width: 520px;
        margin: 0 auto;
        position: relative;
        overflow: hidden;
    }
    
    #lv-7150e8dad0b6 .premium-photo-frame::before {
        content: '';
        position: absolute;
        top: 8px; bottom: 8px; left: 8px; right: 8px;
        border: 1px solid rgba(157, 98, 61, 0.4);
        pointer-events: none;
        z-index: 30;
    }

#lv-cdc2f7142cd7 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-cdc2f7142cd7 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* Conteneur Facebook responsif */
    #lv-cdc2f7142cd7 .fb-embed-container {
        display: flex;
        justify-content: center;
        margin: 3rem 0;
        width: 100%;
        overflow: hidden;
    }

    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-cdc2f7142cd7 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-cdc2f7142cd7 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-cdc2f7142cd7 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-cdc2f7142cd7 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-cdc2f7142cd7 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-cdc2f7142cd7 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

/* Keep hotel invitations readable on their dark background. */
#lv-cdc2f7142cd7 .bg-village-dark h2,#lv-cdc2f7142cd7  .bg-village-dark a { color: #f5f0ea; }


    #lv-bd5bd3149989 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-bd5bd3149989 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    /* --- CADRE EDITORIAL (Style Papier) --- */
    #lv-bd5bd3149989 .notebook-card {
        background-color: #ffffff;
        background-image: repeating-linear-gradient(0deg, transparent, transparent 35px, rgba(157, 98, 61, 0.08) 35px, rgba(157, 98, 61, 0.08) 36px);
        border: 1px solid rgba(113, 53, 6, 0.15);
        box-shadow: 0 15px 35px -10px rgba(113, 53, 6, 0.08);
    }

    /* --- BOUTONS LUXE (CTA FINAUX) --- */
    #lv-bd5bd3149989 .btn-luxury {
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 16px 36px;
        border: 1px solid rgba(113, 53, 6, 0.15);
        color: #713506;
        font-family: 'Poppins', sans-serif;
        font-size: 11px;
        font-weight: 500;
        text-transform: uppercase;
        letter-spacing: 0.15em;
        text-decoration: none;
        background-color: #ffffff;
        overflow: hidden;
        transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        cursor: pointer;
        box-shadow: 0 10px 20px -5px rgba(113, 53, 6, 0.08);
    }
    #lv-bd5bd3149989 .btn-luxury::before {
        content: '';
        position: absolute;
        inset: 0;
        background-color: rgba(113, 53, 6, 0.04);
        transform: scaleY(0);
        transform-origin: bottom;
        transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1);
        z-index: 0;
    }
    #lv-bd5bd3149989 .btn-luxury:hover {
        border-color: rgba(113, 53, 6, 0.6);
        box-shadow: 0 15px 30px -5px rgba(113, 53, 6, 0.15);
        transform: translateY(-2px);
    }
    #lv-bd5bd3149989 .btn-luxury:hover::before { transform: scaleY(1); }
    #lv-bd5bd3149989 .btn-luxury-text { position: relative; z-index: 1; display: flex; align-items: center; }
    #lv-bd5bd3149989 .btn-luxury-arrow { margin-left: 12px; transition: transform 0.5s cubic-bezier(0.4, 0, 0.2, 1); }
    #lv-bd5bd3149989 .btn-luxury:hover .btn-luxury-arrow { transform: translateX(6px); }
    
    /* --- FILTRE CUIVRÉ SIGNATURE --- */
    #lv-bd5bd3149989 .village-img-wrapper {
        position: relative;
        overflow: hidden;
        background-color: #713506;
    }
    /* Calque Cuivré */
    #lv-bd5bd3149989 .village-img-wrapper::after {
        content: ''; position: absolute; inset: 0;
        background-color: #9d623d; mix-blend-mode: color; opacity: 0.85; 
        transition: opacity 0.6s ease; pointer-events: none; z-index: 10;
    }
    /* Calque Profondeur */
    #lv-bd5bd3149989 .village-img-wrapper::before {
        content: ''; position: absolute; inset: 0;
        background-color: rgba(113, 53, 6, 0.15); 
        transition: opacity 0.6s ease; pointer-events: none; z-index: 11;
    }
    /* Estompage du filtre uniquement au Survol */
    #lv-bd5bd3149989 .group:hover .village-img-wrapper::after,#lv-bd5bd3149989  
    .group:hover .village-img-wrapper::before { 
        opacity: 0; 
    }

    /* Mouvement lent luxueux */
    #lv-bd5bd3149989 .village-img { 
        transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1); 
        will-change: transform; 
    }
    #lv-bd5bd3149989 .group:hover .village-img { 
        transform: scale(1.05); 
    }


#lv-b53078b59817 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-b53078b59817 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-b53078b59817 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-b53078b59817 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-b53078b59817 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-b53078b59817 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-b53078b59817 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #000 !important;
        transition: width .28s ease !important;
    }
    #lv-b53078b59817 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Style éditorial menu */
    #lv-b53078b59817 .menu-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }
    
    /* Conteneur vidéo responsif */
    #lv-b53078b59817 .video-embed-container {
        display: flex;
        justify-content: center;
        margin: 3rem 0;
        width: 100%;
    }

    @media (prefers-reduced-motion: reduce) {
        #lv-b53078b59817 .nav-links-village .village-link::after {
            transition: none !important;
        }
    }

/* Keep hotel invitations readable on their dark background. */
#lv-b53078b59817 .bg-village-dark h2,#lv-b53078b59817  .bg-village-dark a { color: #f5f0ea; }


    #lv-8b1defdf69fe { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-8b1defdf69fe .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }

    /* --- IMAGE ENCADRÉE TYPE MENU (Cliquable) --- */
    #lv-8b1defdf69fe .menu-presentation-frame {
        background: #ffffff;
        padding: 12px;
        border: 1px solid rgba(113, 53, 6, 0.15);
        box-shadow: 0 25px 50px -12px rgba(113, 53, 6, 0.12);
        transition: transform 0.4s ease, box-shadow 0.4s ease;
        border-radius: 2px;
        width: 100%;
        position: relative;
        display: block;
        text-decoration: none;
    }
    #lv-8b1defdf69fe .menu-presentation-frame:hover {
        transform: translateY(-5px);
        box-shadow: 0 30px 60px -15px rgba(113, 53, 6, 0.20);
    }
    #lv-8b1defdf69fe .menu-image-inner {
        position: relative;
        width: 100%;
        overflow: hidden;
        border: 1px solid rgba(157, 98, 61, 0.3);
    }
    #lv-8b1defdf69fe .menu-image-inner img {
        width: 100%;
        display: block;
        transition: transform 0.8s ease;
    }
    #lv-8b1defdf69fe .menu-presentation-frame:hover .menu-image-inner img {
        transform: scale(1.03);
    }

#lv-98666c11f5a2 { margin: 0; padding: 0; background-color: #fcf9f3; }

    /* --- LETTRINE (Drop Cap) --- */
    #lv-98666c11f5a2 .drop-cap::first-letter {
        font-family: 'Great Vibes', cursive;
        font-size: 5.5rem;
        float: left;
        line-height: 0.85;
        margin-right: 0.5rem;
        color: #9d623d;
    }
    
    /* --- STYLES OBLIGATOIRES POUR LE BLOC DE LIENS (CTA) --- */
    #lv-98666c11f5a2 .nav-links-village {
        text-align: center !important;
        margin-top: 20px !important;
        margin-bottom: 20px !important;
        font-family: 'Poppins', sans-serif !important;
        font-size: 16px !important;
        line-height: 1.4 !important;
    }
    #lv-98666c11f5a2 .nav-links-village .nav-col {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
        gap: 12px !important;
    }
    @media (min-width: 768px) {
        #lv-98666c11f5a2 .nav-links-village .nav-col {
            flex-direction: row !important;
            justify-content: center !important;
            gap: 28px !important; 
        }
    }
    #lv-98666c11f5a2 .nav-links-village .village-link {
        color: #713506 !important;
        text-decoration: none !important;
        font-weight: 500 !important;
        display: inline-block !important;
        position: relative !important;
        padding-bottom: 3px !important;
        white-space: nowrap !important;
        text-transform: uppercase;
        letter-spacing: 0.05em;
        font-size: 13px !important;
    }
    #lv-98666c11f5a2 .nav-links-village .village-link::after {
        content: "" !important;
        position: absolute !important;
        left: 0 !important;
        bottom: 0 !important;
        width: 0 !important;
        height: 1px !important;
        background: #9d623d !important;
        transition: width .28s ease !important;
    }
    #lv-98666c11f5a2 .nav-links-village .village-link:hover::after {
        width: 100% !important;
    }

    /* Cadre d'image immersif */
    #lv-98666c11f5a2 .village-img-wrapper {
        position: relative;
        overflow: hidden;
        border-radius: 2px;
    }
    
    /* Image encadrée type Polaroïd */
    #lv-98666c11f5a2 .framed-image-container {
        width: 100%;
        max-width: 480px;
        margin: 0 auto;
        background: #ffffff;
        padding: 10px;
        border-radius: 4px;
        box-shadow: 0 20px 40px -10px rgba(113, 53, 6, 0.15);
        transition: transform 0.4s ease, box-shadow 0.4s ease;
    }
    #lv-98666c11f5a2 .framed-image-container:hover {
        transform: translateY(-5px);
        box-shadow: 0 25px 50px -12px rgba(113, 53, 6, 0.20);
    }
    #lv-98666c11f5a2 .framed-image-inner {
        position: relative;
        width: 100%;
        overflow: hidden;
        border-radius: 2px;
    }
    #lv-98666c11f5a2 .village-framed-img {
        width: 100%;
        display: block;
        transition: transform 0.8s ease;
    }
    #lv-98666c11f5a2 .framed-image-container:hover .village-framed-img {
        transform: scale(1.02);
    }

    /* Style éditorial menu */
    #lv-98666c11f5a2 .menu-card {
        background-image: repeating-linear-gradient(0deg, transparent, transparent 39px, rgba(157, 98, 61, 0.1) 39px, rgba(157, 98, 61, 0.1) 40px);
        background-color: #ffffff;
        border: 1px solid rgba(113, 53, 6, 0.2);
    }

/* Keep hotel invitations readable on their dark background. */
#lv-98666c11f5a2 .bg-village-dark h2,#lv-98666c11f5a2  .bg-village-dark a { color: #f5f0ea; }

