#main-menu .phone {
    border: 1px solid white;
}
.accueil .page-header,
.builderjs-layout .page-header {
    height: 650px;
}
.builderjs-layout h2 {
    font-size: 35px;
}
.accueil .page-header .container-custom,
.builderjs-layout .page-header .container-custom {
    position       : relative;
    height         : 100%;
    display        : flex;
    flex-direction : column;
    justify-content: flex-end;
    padding        : 0 9rem;
    z-index        : 2;
    max-width      : 100%;
}
.accueil .content,
.builderjs-layout .content {
    background   : white;
    padding      : 1.5rem;
    width        : 648px;
    height       : auto;
    border-radius: 15px;
    text-align   : center;
    margin-bottom: -7rem;
    max-width    : 100%;
}
h1 {
    font-size    : 60px;
    line-height  : 1;
    margin-bottom: 1.5rem;
    color        : var(--color-1);
}
h2 {
    font-size    : 60px;
    line-height  : 0.8;
    margin-bottom: 1.5rem;
    color        : var(--color-1);
}
.accueil h2 {
    font-size: 69px;
}
.sous-titre p,
.widget-header p {
    font-size  : 22px;
    font-weight: 500;
    font-style : italic;
    color      : var(--color-1);
    line-height: 1.1;
}
.widget-header h2 {
    margin-bottom: 2rem;
}
.accueil .content p {
    font-weight: 500;
    color      : var(--color-1);
}
body {
    background: var(--bg-light);
}
.radius {
    border-radius: 15px;
}
.entete p {
    font-size: 27px;
    color    : var(--color-1);
}
p {
    line-height: 1.2;
    font-weight: 300;
    font-size  : 17px;
}
.split-container {
    display        : flex;
    flex-direction : column;
    justify-content: center;
}
.centered {
    display        : flex;
    flex-direction : column;
    justify-content: center;
}
.tables {
    width: 400px;
}
.trait {
    height       : 9px;
    width        : 86px;
    background   : var(--color-1-alt);
    border-radius: 3px;
    margin-bottom: 1rem;
}
.trait-fin {
    height       : 2px;
    width        : 50px;
    background   : var(--color-1-alt);
    border-radius: 3px;
}
.atouts .trait {
    margin: 0 auto;
}
.atouts h3 {
    font-weight: 600;
    font-style : italic;
    font-size  : 25px;
    color      : var(--color-1);
    line-height: 1;
}
.atouts p {
    font-weight: 500;
    font-style : italic;
    font-size  : 22px;
    color      : var(--color-1);
}
.zi-1 {
    z-index: 1;
}
.s-letter {
    position : absolute;
    left     : 0;
    bottom   : -10%;
    z-index  : 0;
    max-width: 100%;
}
.s-footer {
    position : absolute;
    left     : 0;
    bottom   : 0;
    z-index  : 0;
    width    : 400px;
    max-width: 100%;
}
footer {
    padding: 3rem 0;
}
.phone {
    justify-content: center;
}
.encart {
    background   : white;
    padding      : 1.5rem;
    border-radius: 15px;
    margin       : 1rem 0 2.5rem -7rem;
    width        : 558px;
    z-index      : 2;
}
.encart .sous-titre p {
    font-weight: 500;
    font-size  : 16px;
}
.mySwiper {
    overflow: hidden;
}
.builderjs-layout .img-absolute,
.img-absolute {
    position: absolute;
    right   : 0;
    top     : 0;
    z-index : 0;
}
.medium p {
    font-weight   : 500;
    font-size     : 16px;
    color         : var(--color-1);
    text-transform: uppercase;
}
.atouts-bis p {
    font-size: 16px;
}
.liste-chambre {
    gap: 12px;
}
.liste-chambre .btn {
    font-size: 14px;
    padding  : 2px 5px 0;
}
.accordion {
    --bs-accordion-bg: transparent;
}
.accordion-button {
    background-color: transparent;
    border          : none;
    box-shadow      : none;
    padding         : 0.6rem 0.6rem 0.6rem 40px;
    /* pour laisser la place du + */
    position        : relative;
    font-family     : var(--text-font);
}
.accordion-item:last-of-type {
    border-bottom-right-radius: 0;
    border-bottom-left-radius : 0;
}
.accordion-item .accordion-title {
    font-size  : 22px;
    font-weight: 500;
    color      : var(--dark);
    font-family: var(--text-font);
    line-height: 1.1;
    margin-top : 5px;
}
.plats {
    background: white;
}
.plats .content-global {
    padding: 1.2rem;
}
.plats .category-title {
    text-transform: uppercase;
    font-weight   : 500;
    font-size     : 30px;
    color         : var(--color-1);
    margin-bottom : 0.5rem;
}
.data-item__title {
    font-weight: 700;
    font-size  : 20px;
    color      : var(--color-1);
}
.data-item__content_short {
    font-weight: 300;
    font-size  : 18px;
    line-height: 1.2;
    color      : var(--color-1);
}
.plats .widgets-list-content {
    margin-bottom: 1rem;
}
.plats .widgets-list-item:last-child .widgets-list-content {
    margin-bottom: 0;
}
.plats .meal-line {
    position       : relative;
    display        : flex;
    justify-content: space-between;
    align-items    : center;
    margin-bottom  : 5px;
}
.plats .main-title {
    padding-right   : 10px;
    z-index         : 2;
    background-color: white;
    display         : flex;
    justify-content : space-between;
    align-items     : center;
}
.plats .meal-line:before {
    content   : '';
    width     : 100%;
    height    : 1px;
    background: black;
    position  : absolute;
    right     : 0;
    z-index   : 0;
}
.plats .price {
    padding-left    : 10px;
    z-index         : 2;
    background-color: white;
    font-size       : 22px;
    white-space     : nowrap;
    color           : var(--color-1);
}
.accordion-body {
    padding    : 0 1rem 1rem;
    line-height: 1.2;
}
.accordion-button:focus {
    box-shadow: none;
}
.accordion-button:not(.collapsed) {
    background-color: transparent;
}
.accordion-button:not(.collapsed) .accordion-title {
    color: var(--dark);
}
.accordion-button::after {
    content: none;
}
/* Le + par défaut */
.accordion-button .acc-icon {
    position       : absolute;
    left           : 10px;
    top            : 50%;
    transform      : translateY(-50%);
    font-size      : 15px;
    border         : 1px solid black;
    width          : 28px;
    height         : 28px;
    display        : flex;
    align-items    : center;
    justify-content: center;
}
.accordion-title {
    padding-left: 1rem;
}
/* FORCER l’affichage du + */
.accordion-button .acc-icon:before {
    content    : "\2b";
    font-family: "Font Awesome 7 Pro";
    font-weight: 300;
}
/* Quand l’accordion est ouvert → devient – */
.accordion-button:not(.collapsed) .acc-icon:before {
    content: "\2212";
}
/* Lignes de séparation élégantes comme ton screenshot */
.accordion-item {
    border       : none;
    border-bottom: 1px solid black;
}
.table > :not(caption) > * > * {
    border-bottom-width: 0;
    padding            : 0.5rem 1rem;
}
.modules-list-item {
    border-radius: 15px;
    overflow     : hidden;
}
.modules-list-item .data-item__title {
    font-size  : 30px;
    color      : var(--color-1);
    font-weight: 600;
}
.modules-list-item .data-item__content_short {
    font-size    : 18px;
    color        : var(--color-1);
    font-weight  : 600;
    font-style   : italic;
    line-height  : 1.2;
    margin-bottom: 10px;
}
.page-sub-title {
    font-weight: 500;
    color      : var(--color-1);
}
.page-header img.decor {
    width     : auto;
    height    : auto;
    object-fit: unset;
    position  : absolute;
    right     : 0;
    top       : 50%;
    left      : unset;
    transform : translateY(-50%);
}
.data-item__category {
    font-size : 14px;
    font-style: italic;
}
.page-header .content {
    background   : white;
    padding      : 1.5rem;
    border-radius: 15px;
    width        : 750px;
    max-width    : 100%;
}
.voyage table {
    --bs-body-bg: transparent!important;
}
.activites-index .card-footer a {
    text-decoration: underline;
}
.activites-index .card-footer a:hover {
    text-decoration: none;
}
#content ul li {
    font-weight  : 300;
    font-size    : 18px;
    line-height  : 1.2;
    margin-bottom: 0.5rem;
}
.page-header img.header-img {
    height     : auto;
    object-fit : unset;
    left       : unset;
    top        : unset;
    transform  : unset;
    position   : relative;
    width      : 300px;
    min-height : unset;
    margin-left: auto;
}
.galeries-index img {
    border-radius: 20px;
}
.img-absolute img {
    width: 550px;
}
@media(max-width:1699px) {
    .img-absolute img {
        width: 400px;
    }
}
@media(max-width:1399px) {
    .accueil .page-header,
    .builderjs-layout .page-header {
        height: 450px;
    }
    h1 {
        font-size: 55px;
    }
    h2 {
        font-size: 58px;
    }
    .entete p {
        font-size: 24px;
    }
    .sous-titre p {
        font-size: 20px;
    }
    .accueil .content,
    .builderjs-layout .content {
        margin-bottom: -3rem;
    }
    .tables {
        width: 284px;
    }
}
@media(max-width:1299px) {
    .accueil h2 {
        font-size: 58px;
    }
}
@media(max-width:1199px) {
    .accueil .page-header .container-custom {
        padding: 0 4rem;
    }
    .atouts-bis .feature-img svg {
        width : 80px;
        height: auto;
    }
    h1 {
        font-size: 49px;
    }
    .accueil h2 {
        font-size: 54px;
    }
    .page-header .content {
        width: 550px;
    }
}
form .text-danger {
    display: none;
}
.form-label {
    display: none;
}
@media(max-width:991px) {
    footer {
        padding: 0 0 2rem;
    }
    .encart {
        margin   : 0 auto 2rem;
        max-width: 100%;
    }
    .img-absolute {
        display: none;
    }
    .page-header .content {
        width: 505px;
    }
    .page-header img.header-img {
        width: 208px;
    }
    .header .split-container-fluid {
        height: 400px;
    }
    .chaise {
        width : 250px;
        margin: 0 auto;
    }
    .accordion-item .accordion-title {
        font-size: 18px;
    }
    .data-item__title {
        font-size: 17px;
    }
}
.form-select:focus {
    box-shadow: none;
}
.form-select {
    border-radius: 0;
}
@media(max-width:767px) {
    .page-header img {
        position: relative;
    }
    .accueil .page-header {
        height: auto;
    }
    .feature svg {
        width : 78px;
        height: auto;
    }
    .page-header img.header-img {
        display: none;
    }
    .page-header {
        height        : auto;
        padding-bottom: 2rem;
    }
    h1 {
        font-size: 45px;
    }
    .feature {
        margin-bottom: 0.5rem;
    }
    .accueil .page-header .content {
        padding: 2.5rem 0;
    }
    .accueil .content,
    .builderjs-layout .content {
        margin-bottom: 0;
    }
    .accueil .page-header .container-custom {
        padding: 0 2rem;
    }
    h2 {
        font-size: 50px;
    }
}
@media(max-width:575px) {
    h2 {
        font-size: 40px;
    }
    .atouts h3 {
        font-size: 22px;
    }
    .header .split-container-fluid {
        height: 260px;
    }
    .atouts-bis .feature {
        margin-bottom: 1.4rem;
    }
    .atouts p {
        font-size: 18px;
    }
    h1 {
        font-size: 45px;
    }
    .entete p {
        font-size: 20px;
    }
    .atouts-bis .feature-img svg {
        width: 50px;
    }
}
.modules-activites .split-container-fluid img {
    width     : 100%;
    height    : 100%;
    object-fit: cover;
}
#content .category-list li a {
    padding    : 6px 8px 2px;
    font-weight: 400;
}
.mentions h3 {
    margin-top: 1.5rem;
}
@media(max-width:767px) {
    .page-header,
    .page-header .container {
        flex-direction: column;
    }
    .accueil h2 {
        font-size: 45px;
    }
    .btn-lg {
        padding  : 3px 10px 2px;
        font-size: 17px;
    }
}
#rsvit_btn {
    justify-content          : center;
    align-items              : center;
    transform                : initial;
    padding                  : 10px 20px;
    border-top-left-radius   : 5px;
    border-bottom-left-radius: 5px;
    background-color         : #F49E4C;
    color                    : #fff;
    border                   : 0;
    top                      : 335px;
    bottom                   : initial;
    cursor                   : pointer;
    right                    : 0;
    position                 : fixed;
    z-index                  : 999999;
    display                  : none;
}
#iframeReservitBestPriceWidget {
    margin     : auto;
    border     : none;
    max-width  : initial;
    text-align : center;
    width      : 100%;
    height     : 100%;
    padding-top: 5px;
}
#btn_bed_ico {
    font-size    : 21px;
    border       : 1px solid;
    border-radius: 3px;
    padding      : 3px;
    margin-right : 6px;
    width        : 35px;
}
#rsvit_btn > span {
    font-weight: normal;
}
#ReservitBestPriceWidgetbox {
    border          : 0;
    position        : relative;
    z-index         : 999998;
    background-color: transparent;
    text-align      : center;
    overflow        : hidden;
    width           : 250px;
    height          : 100%;
}
#ReservitBestPriceWidget {
    position  : fixed;
    top       : 50%;
    display   : none;
    text-align: center;
    width     : 250px;
    height    : 450px;
    right     : 0;
    transform : translateX(0);
    transform : translateY(-50%);
    left      : initial;
    z-index   : 9999;
}
#box_btn_close {
    font-size : 14px;
    color     : black;
    transition: transform 0.5s ease;
    margin    : auto;
}
#box_btn_close:hover {
    -webkit-transform: rotate(-45deg);
    -ms-transform    : rotate(-45deg);
    -moz-transform   : rotate(-45deg);
    -o-transform     : rotate(-45deg);
    transform        : rotate(-45deg);
}
#box_btn {
    -webkit-box-sizing: border-box;
    -moz-box-sizing   : border-box;
    box-sizing        : border-box;
    position          : absolute;
    vertical-align    : middle;
    top               : -5px;
    left              : -5px;
    width             : 25px;
    height            : 25px;
    border-radius     : 50%;
    padding-top       : 3px;
    text-align        : center;
    cursor            : pointer;
    background-color  : white;
    z-index           : 1000000;
}
/* DEBUT RESPONSIVE */
@media (max-width: 790px) {
    #rsvit_btn {
        width                    : 92%;
        left                     : 4%;
        bottom                   : 0;
        top                      : initial;
        border-bottom-left-radius: 0;
        border-top-right-radius  : 5px;
        background-color         : rgba(244,158,76,0.9);
    }
    #ReservitBestPriceWidget {
        left       : 50%;
        right      : initial;
        margin-left: -125px;
    }
}
@media screen and (max-width:450px) and (orientation:portrait) {
    #ReservitBestPriceWidget {
        width : 250px;
        height: 90%;
    }
}
@media screen and (max-width:750px) and (orientation:landscape) {
    #ReservitBestPriceWidget {
        width : 250px;
        height: 90%;
    }
}
/* FIN RESPONSIVE */