/* Menu principal Maison Saint Martin */
#site-header .menu-item a {
    text-decoration: none !important; /* supprime le soulignement */
    border-radius: 50px !important;   /* arrondi oblong */
    padding: 10px 20px !important;    /* espace autour du texte */
    color: #000000 !important;        /* gris taupe */
    transition: background 0.3s, color 0.3s !important;
    font-family: 'Montserrat', 'Playfair Display', serif !important;
    font-weight: 600 !important;
}

/* Hover des liens */
#site-header .menu-item a:hover {
    background-color: #E6DCCB !important; /* beige chaud */
    color: #8B5E3C !important;           /* marron bois */
}

/* Bouton "Réserver" */
#site-header .menu-item a.reserver { 
    background-color: #C2A278 !important; /* doré mat */
    color: #ffffff !important; 
    font-weight: 500 !important;
}

#site-header .menu-item a.reserver:hover {
    background-color: #8B5E3C !important; /* marron bois */
    color: #ffffff !important;
}
@media (max-width: 768px) {
    .site-header .menu-toggle, 
    .site-header .mobile-navigation {
        display: none !important;
    }
}
@media (max-width: 768px) {
    .elementor-nav-menu a {
        color: #4A463F !important;
        font-weight: 500 !important;
        padding: 6px 10px !important;
        border-radius: 20px;
    }
    .elementor-nav-menu a:hover {
        background-color: #E6DCCB !important;
        color: #5C452B !important;
    }
}
@media (max-width: 1024px) {
    .site-header .menu-toggle, 
    .site-header .mobile-navigation, 
    .ast-mobile-header-wrap, 
    .elementor-menu-toggle {
        display: none !important;
    }
}
/* Masquer complètement l'ancien menu mobile */
@media (max-width: 1024px) {
    .elementor-menu-toggle, 
    .elementor-nav-menu--dropdown {
        display: none !important;
    }
}

/* Forcer l'affichage du nouveau menu horizontal Elementor */
@media (max-width: 1024px) {
    header.elementor-location-header {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}

selector {
    border-radius: 15px;
    overflow: hidden; /* utile si le conteneur contient des images ou fonds */
}

.section-paris {
  display: none; /* cache toutes les sections */
}
/* Rendre le texte en gras quand l'accordéon est ouvert */
.elementor-accordion-item.active .elementor-tab-title,
.elementor-accordion-item.elementor-active .elementor-tab-title {
    font-weight: bold;
}
/* ------------------------------
   1. Arrondir tous les blocs principaux
--------------------------------*/
.elementor-widget-container,
.elementor-column,
img,
.btn,
.menu-card,
.section {
    border-radius: 25px; /* coins doux */
    overflow: hidden;
}

/* ------------------------------
   2. Boutons plus généreux et oblongs
--------------------------------*/
.btn, 
.elementor-button {
    padding: 15px 40px;
    border-radius: 30px;
    transition: all 0.3s ease;
}

.btn:hover, 
.elementor-button:hover {
    transform: scale(1.05);
    box-shadow: 0 5px 15px rgba(0,0,0,0.15);
}

/* ------------------------------
   3. Images oblongues / arrondies
--------------------------------*/
img {
    border-radius: 20px;
    object-fit: cover;
}

/* Pour les galeries et cartes de plats */
.menu-card img, 
.gallery img {
    border-radius: 30px;
}

/* ------------------------------
   4. Sections avec fond chaleureux
--------------------------------*/
.section {
    background-color: #fdf6f0; /* beige pastel chaud */
    padding: 40px 20px;
    margin-bottom: 30px;
}

/* Ombres douces pour effet flottant */
.elementor-column, 
.menu-card {
    box-shadow: 0 10px 20px rgba(0,0,0,0.08);
}

/* ------------------------------
   5. Titres et sous-titres
--------------------------------*/
h1, h2, h3, .elementor-heading-title {
    font-family: 'Playfair Display', serif; /* élégante et chaleureuse */
}

h1 {
    font-size: 48px;
    margin-bottom: 15px;
}

h2 {
    font-size: 32px;
    margin-bottom: 10px;
}

.subtitle {
    font-family: 'Lato', sans-serif; /* complément plus fin */
    font-size: 18px;
    color: #555;
    margin-bottom: 25px;
}

/* ------------------------------
   6. Cartes “Parcours client” (Matin / Midi / Soir)
--------------------------------*/
.menu-card {
    padding: 20px;
    text-align: center;
    border-radius: 25px;
    transition: all 0.3s ease;
}

.menu-card:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 15px 25px rgba(0,0,0,0.12);
}

/* ------------------------------
   7. Séparateurs arrondis / icônes
--------------------------------*/
.separator {
    height: 8px;
    width: 80px;
    background-color: #d8bfae;
    border-radius: 10px;
    margin: 30px auto;
}

/* Sections arrondies */
.section-oblong {
    border-radius: 25px;
    background-color: #fdf6f0;
    padding: 40px 20px;
    box-shadow: 0 10px 20px rgba(0,0,0,0.08);
}

/* Cartes menu arrondies */
.carte-menu {
    border-radius: 25px;
    padding: 20px;
    text-align: center;
    box-shadow: 0 10px 20px rgba(0,0,0,0.08);
    transition: all 0.3s ease;
}

.carte-menu:hover {
    transform: translateY(-5px) scale(1.02);
    box-shadow: 0 15px 25px rgba(0,0,0,0.12);
}

/* Boutons arrondis */
.btn-oblong {
    padding: 15px 40px;
    border-radius: 30px;
    transition: all 0.3s ease;
}

.btn-oblong:hover {
    transform: scale(1.05);
    box-shadow: 0 5px 15px rgba(0,0,0,0.15);
}

/* Images arrondies dans cartes ou galerie */
.carte-menu img,
img.section-oblong {
    border-radius: 25px;
    object-fit: cover;
}

.video-oblong iframe,
.video-oblong video {
    border-radius: 25px;       /* coins arrondis */
    overflow: hidden;
    width: 100%;              /* pleine largeur du bloc */
    max-width: 100%;          
    height: auto;             /* ajuste la hauteur */
}

.video-oblong {
    border-radius: 25px;          /* coins arrondis */
    overflow: hidden;             /* clippe les bords de la vidéo */
    box-shadow: 0 10px 20px rgba(0,0,0,0.1);
    max-width: 100%;
}

.video-oblong iframe,
.video-oblong video {
    width: 100%;
    height: auto;
    display: block;
}
.elementor-section:last-of-type {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}
main.site-main {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}