/* Disposition colonne + séparation */
/* Pour menu page sections côte à côte */
.menu-section-side-by-side {
    display: flex;
    gap: 20px;
    margin-top: 40px;
    /* marge interne entre le titre et les sous-sections */
    flex-wrap: wrap;
}

.menu-column {
    flex: 1;
    min-width: 250px;
}

/* Séparateur vertical */
.vertical-separator {
    width: 2px;
    background-color: #ccc;
}

/* Eléments du menu alimentaire */
.menu-items,
.menu-section {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin-top: 15px;
}

/* Conteneur d’un plat */
.menu-item {
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    padding-bottom: 5px;
    border-bottom: 1px dashed #ddd;
}

/* Nom du plat */
.dish-name {
    font-weight: bold;
    font-size: 1.1em;
    margin-bottom: 3px;
}

/* Description */
.description {
    font-size: 0.95em;
    color: #555;
    margin-bottom: 5px;
    line-height: 1.2em;
}

/* Prix */
.price {
    font-weight: bold;
    align-self: flex-end;
}

/* Titres */
h2 {
    text-align: center;
    margin-bottom: 15px;
}

/* Section héros du menu */
.menu-hero {
    text-align: center;
    padding: 50px 10px;
}

.menu-main-title {
    text-align: center;
    margin: 40px 0 20px;
    font-size: 2em;
    font-weight: bold;
}

.menu-hero h1 {
    font-size: 2.5rem;

}

.menu-hero p {
    font-size: 1.1rem;
    color: #000;
}


.menu-section-side-by-side .menu-column .dish-name {
    font-size: 1rem;
    color: #222
}

.menu-section-side-by-side .menu-column .price {
    font-size: 1rem;
    color: #444
}

.menu-section .menu-items .dish-name {
    font-size: 1rem;
    color: #222
}

.menu-section .menu-items .price {
    font-size: 1rem;
    color: #444
}

.menu-section .menu-item .dish-name {

    font-size: 1rem;
    color: #222
}

.menu-section .menu-item .price {
    font-size: 1rem;
    color: #444
}