/*
Theme Name: Twenty Twenty-Four Child
Theme URI: https://wordpress.org/themes/twentytwentyfour/
Template: twentytwentyfour
Author: the WordPress team
Author URI: https://wordpress.org
Description: Twenty Twenty-Four is designed to be flexible, versatile and applicable to any website. Its collection of templates and patterns tailor to different needs, such as presenting a business, blogging and writing or showcasing work. A multitude of possibilities open up with just a few adjustments to color and typography. Twenty Twenty-Four comes with style variations and full page designs to help speed up the site building process, is fully compatible with the site editor, and takes advantage of new design tools introduced in WordPress 6.4.
Tags: one-column,custom-colors,custom-menu,custom-logo,editor-style,featured-images,full-site-editing,block-patterns,rtl-language-support,sticky-post,threaded-comments,translation-ready,wide-blocks,block-styles,style-variations,accessibility-ready,blog,portfolio,news
Version: 1.4.1772808412
Updated: 2026-03-06 15:46:52

*/


/* Général */
    
    @media (max-width: 800px) {
    
:root {
  --wp--style--global--content-size: 100%;
  --wp--style--global--wide-size: 100%;
}
        
        .wp-block-group > :where(:not(.alignleft):not(.alignright):not(.alignfull)){
            max-width:100%;
        }
        
    }

    body.page{
        color: var(--wp--preset--color--gris-6);
        font-family:courier-prime, serif;
    }

     .home h1{
        font-size: clamp(28px, 2.8vw, 90px);
        font-weight: 100;
        font-family:swear-display, serif;
        color:#000;
    }
    .wp-site-blocks h1{
       font-size: clamp(24px, 3.2vw, 90px);
       font-weight: 100;
       font-family:swear-display, serif;
       color:#000;
    }

    .wp-site-blocks h2{
        font-family:"swear-display", serif;
        font-size: clamp(24px, 2.4vw, 80px);
        margin: clamp(15px, 1vw, 50px) 0 0 0;
        font-weight: 100;
        color:#000;
    }
    .wp-site-blocks h3, .block-editor-block-list__layout h3{
        font-weight: 600;
        font-family:swear-display, serif;
        text-transform:uppercase;
        font-size: clamp(20px, 1.2vw, 80px);
        color:var(--wp--preset--color--accent);
        margin:10px 0 6px;
        letter-spacing:0.1rem
    }
    
    .wp-site-blocks h4, .block-editor-block-list__layout h4{
        font-weight: 100;
        font-family:swear-display, serif;
        color:var(--wp--preset--color--gris-6);
        font-size: 15px;
        margin:10px 0 5px;
    }
    .wp-site-blocks :focus {
      outline-width: 0 !important;
    }



    
/* Boutons */


    .wp-block-button a, .wpcf7-submit{
        color:#000;
        border: 1px solid var(--wp--preset--color--accent);
        border-radius:0;
        background-color: transparent;
        transition:.3s;
        font-family:swear-text, serif;
        font-weight:400;
        font-size:16px;

        padding:8px 18px;
    }
    
    .wp-block-button a:hover, .wpcf7-submit:hover{
        color:var(--wp--preset--color--base);
        background-color: var(--wp--preset--color--accent);
        transition:.3s;
    }

    .wp-block-button a:focus{
        transition:0s;
    }

    
    header .wp-block-button a{
        border-color:var(--wp--preset--color--base);
        background-color: transparent;
        color:var(--wp--preset--color--base);
    }


/* Contact Form 7 */
    
    body.page form input{
        border: none;
        line-height: 2.3;
        width:100%;
    }

    body.page .wpcf7-submit{
        line-height:1;
    }

    body.page form p{
        font-size:14px;
    }
    
    body.page form p:nth-child(even){
        margin-bottom:12px;
        margin-top:0;
    }
    
    body.page form p:nth-child(odd){
        margin-bottom:2px;
        
    }
    body.page form p:nth-of-type(1){
        margin-top:0;
    }
    
    body.page form .wpcf7-submit{
        margin-top:20px;
        background:transparent;
        cursor:pointer;
        border:1px solid var(--wp--preset--color--accent)
    }
    
        body.page form .wpcf7-submit:hover{
        color:#fff;
        background:var(--wp--preset--color--accent)
    }
    
    body.page form textarea{
        width:100%;
        border: 0;
    }

    
    
    
/* =========================================
                  Header  
========================================= */
    
    header {
        position: fixed;
        top:0;
        height:150px;
        width: 100%;
        display:flex;
        align-items:start;
        padding-top:20px;
           transform: translateY(0);
    transition: transform 0.4s ease, top 0.4s ease-in-out, background-color 0s, width 0s;
        z-index: 99;
        font-size:16px;
        border-bottom:1px solid  transparent;
        
        background: transparent;
         
    }
    header p{
        font-size:10.5px;
        color:var(--wp--preset--color--base);
    }

    header .wp-block-navigation-item{
        color:var(--wp--preset--color--base);
    }
    
    header .wp-block-navigation-item a{
        text-decoration:none;
        border-bottom:2px solid transparent;
        transition: border-bottom .2s;
        letter-spacing: .5px;
    }
    header .current-menu-item a{
        border-bottom:2px solid var(--wp--preset--color--base);
    }
    
    header .wp-block-navigation-item a:hover{
      border-bottom:2px solid var(--wp--preset--color--base);
      transition: border-bottom .2s;
    }

    header .wp-block-navigation__responsive-container-open svg{
       fill:var(--wp--preset--color--base);
    }
    header .wp-block-group{
       width: 100%; 
    }
    header .wp-block-columns{
        display: flex;
    }
    
        header .wp-block-columns .wp-block-column:nth-of-type(1){
        flex-basis:30%;
    }
    
    header .wp-block-columns .wp-block-column:nth-of-type(2){
        display: flex;
        align-items: center;
        justify-content: center;
        flex-basis:30%;
    }
    
    header .wp-block-columns .wp-block-column:nth-of-type(2) .wp-block-group{
        gap:6px;
    }
        
        header .wp-block-columns .wp-block-column:nth-of-type(3){
        flex-basis:30%;
    }
    
    header .pll-switcher-select{
        background:none;
        border:none;
        font-size:14px;
        color:var(--wp--preset--color--base);
    }
    
    header .nav-mobile{
        display:none;
    }
    
    @media (max-width: 1099px) {
     header p{
            display:none
    }
    header .nav-mobile {
         display: flex;
           margin-block-start:0;
    }
    header .nav-left-desktop,
    header .nav-right-desktop{
            display: none;
    }
    }
    
       
    header.sticky {
        align-items:center;
        padding-top:0px;
        height:80px;
        background: var(--wp--preset--color--base);
        border-bottom: 1px solid var(--wp--preset--color--gris-2);
        transition: transform .4s ease, top .4s ease-in-out, background-color .4s ease-in-out .4s, border-bottom .4s ease-in-out .4s, width 0s;
        transform: translateY(0);
}

    header.sticky .custom-logo{
        filter: invert(100%);
        height:30px;
        width:auto;
}
    
    header.sticky{
       background:var(--wp--preset--color--base);
    
    }
    
    header.sticky .wp-block-columns{
        align-items: center !important;
    }
    
    header.sticky .wp-block-column{
        align-self: center !important;
    }
   
    header.sticky .wp-block-button a{
        color: var(--wp--preset--color--contrast);
        border-color:var(--wp--preset--color--contrast);
    }
    header.sticky p{
        color: var(--wp--preset--color--contrast) !important;
    }

    header.sticky .wp-block-button a:hover{
        color: var(--wp--preset--color--base) !important;
    }
    
    
    header.sticky .wp-block-navigation-item a:hover{
        border-color:var(--wp--preset--color--contrast);
    }
     
    header.sticky .pll-switcher-select{
        color:var(--wp--preset--color--contrast);
    }
    
    header.sticky .wp-block-navigation-item{
        color:var(--wp--preset--color--contrast);
    }

    header.sticky .current-menu-item a{ 
        border-bottom:2px solid var(--wp--preset--color--contrast);
    }

    header.sticky .wp-block-navigation__responsive-container-open svg{
       fill:var(--wp--preset--color--contrast);
    }
    
    #modal-2{
        height:100vh;
    }
    


    

    
    
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex;
  }
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: none;
  }
    
    @media (min-width: 1100px) {
  .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: none;
  }
          .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
    display: block;
  }
}
    
 

@media (max-width: 1099px) {
            header .widget_polylang{
        display:none;
        }
    }
    
    
    header .widget_polylang{
        display:none;
    }
    
    

@media (max-width:1099px) {
     header {
        position: fixed;
        height:100vh;
        }
    header.sticky {
        height:50px;
    }
        main > .entry-content{
        padding:0 20px;
        }

        header .wp-block-columns{
        gap: 3vw;      
        }
        header .wp-block-columns .wp-block-column{
            flex-basis:auto !important;
        }

        header .wp-block-columns .wp-block-column:nth-child(1){
        order:3;
        width: 20vw;
        }
    
        header .wp-block-columns .wp-block-column:nth-child(2){
        height: 25px !important;
        order:2;
        width: 30vw;
        }
    
        header .wp-block-columns .wp-block-column:nth-child(3){
        order:1;
        width: 20vw;
        }
            header .wp-block-columns .wp-block-column:nth-child(3) .wp-block-group{
            display:block;
        }
    
   
        header .wp-block-button a{
        font-size:12px;
        padding: 4px 10px
        }
     
        .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open {
  background-color: var(--wp--preset--color--base);
        }
    
       .wp-block-navigation__container{
        display: flex;
        flex-direction: column !important;
        
    }
    .wp-block-navigation__responsive-container-content{
        padding-top: calc(2rem + 24px) !important;
    }
    .wp-block-navigation__responsive-container {
  overflow: auto;
  padding: clamp(1rem,var(--wp--style--root--padding-top),20rem) clamp(1rem,var(--wp--style--root--padding-right),20rem) clamp(1rem,var(--wp--style--root--padding-bottom),20rem) clamp(1rem,var(--wp--style--root--padding-left),20rem) !important;
  z-index: 100000;
}
    .wp-block-navigation__container a{
        color:var(--wp--preset--color--contrast) !important;
    }
      
    header ul.wp-block-navigation__container {
        align-items: end !important;
        width: 100%;
        font-size:20px;
    }
    
        .wp-block-navigation__responsive-container{
        opacity:1  !important;
        margin-left:30vw !important;
        transform: translateX(100%) !important;
        transition: .4s !important;
    }
        .wp-block-navigation__responsive-container.is-menu-open{
        opacity:1  !important;
        animation: none !important;
        transform: translateX(0) !important;
        box-shadow: 0 0 80px black;
        transition: .4s !important;
    }
    
        
   
    }

@media (max-width:600px) {

    .wp-block-navigation__responsive-container{ 
       display:block !important;
    }  
  
    
    
}
    
  
    
    
    
/* =========================================
                  Blocs  
========================================= */
    

    .block-full-width{
        margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
        margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
        max-width: none;
    } 
    
    
     @media (max-width: 1100px) {
    
    .block-full-width {
        margin-left: -20px !important;
        margin-right: -20px !important;
    }
}
    
    
    
    
/* Home Super Slider */
    
    .home .home-carousel{
        gap:0;
        margin-block-start: 0;
    }
    .home .home-carousel.images .wp-block-wpspices-marquee-carousel-slide-group{
    animation: playmarquee var(--wpspices--marquee-carousel-anim-duration,15s) linear(1, 0) infinite;
  -webkit-animation: playmarquee var(--wpspices--marquee-carousel-anim-duration,15s) linear(1, 0) infinite;
        --wpspices--marquee-carousel-anim-duration: 90s;
    }

    
        .wp-block-wpspices-marquee-carousel:not(.alignfull) {
      width: auto;
        }
    
        .home .home-carousel::before{
        content:'';
        position:absolute;
        top:0;
        left:0;
        width:100%;
        height:500px;
        background: linear-gradient(180deg,rgba(0, 0, 0, 0.3) 20%, rgba(0, 0, 0, 0) 100%);;
            z-index:2;
    }
    .home .home-carousel h3{
    white-space:nowrap;
        color:#9E1919;
        font-family:swear-text;
        margin:20px 0
    }
    
    
    


    
/* Top banner image */

    .top-banner-pic{
        position:relative;

    }
    .top-banner-pic img{
        height: 20vw !important;
        min-height: 200px;
        object-fit: cover;
        
    }
    .top-banner-pic::before{
        content:'';
        position:absolute;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background: linear-gradient(0deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 100%);;
    }
    
     @media (max-width: 1100px) {
    
     .top-banner-pic {
        margin-left: -20px !important;
        margin-right: -20px !important;
    }
           
}
        
    
    /* Bloc Media et Texte */
    
    .wp-block-media-text{
        gap:5vw;
        
    }
    
    .wp-block-media-text__content{
        padding:0 !important;
    }
    
    
    
    
/* Carousels */
    
    
    .swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0!important;
}
    
/* Chambres > Carousel classique */
    

    .room-slider .swiper{
        margin-bottom:2rem !important;
    }
    .room-slider .cb-slide::before{
        content:'';
        position:absolute;
        top:0;
        left:0;
        width:100%;
        height:100%;
        background: linear-gradient(180deg,rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 0.4) 100%);;
    }
        
    
    .room-slider .swiper-button-prev{
        left:10px  !important;
    }
    .room-slider .swiper-button-next{
        right:10px  !important;
    }
    
    
    .room-slider .cb-button-next, .room-slider .cb-button-prev {
        color:var(--wp--preset--color--base);
        opacity:0.7;
        text-shadow: 1px 1px 10px #0003,                         -1px -1px 10px #0003,                        1px -1px 10px #0003,
                    -1px 1px 10px #0003;
        transition:.2s;
    }
        .room-slider .cb-button-next:hover, .room-slider .cb-button-prev:hover {
        color:var(--wp--preset--color--base);
        opacity:1;
        transition:.2s;
    }

    .room-slider img{
        width:100%;
        height:20vw !important;
        object-fit:cover;
        
    }
    .room-slider.big-room img{
        height:40vw !important;
    }
    
    .room-slider .cb-pagination.swiper-pagination-horizontal{
        bottom: 15px;
    }
    .room-slider .swiper-pagination-bullet{
        background:var(--wp--preset--color--base) !important;
    }
    .room-slider .cb-pagination .cb-pagination-bullet {
        opacity:0.5
    }
         
      
    @media (max-width: 1100px) {
   
    .room-slider img{
        height:30vw !important;
    }
        
     
    }
    @media (max-width: 781px) {
   
    .room-slider.big-room img{
        height:50vw !important;
    }
    .room-slider img{
        height:50vw !important;
    }
        
     
    }


    
    
/* Carousel multiple avec full-link */
    

    
    @media (max-width: 1100px) {
    .carousel-multiple .cb-button-next,
    .carousel-multiple .cb-button-prev{
        display:none;
    }
    }

/* Carousel > Bloc Bannière full-link */
    
    .wp-block-cover.full-link{
        min-height: 0;
        padding: 0;
    }
    .wp-block-cover.full-link .wp-block-group{
        gap:5px !important;
    }
     .wp-block-cover.full-link img{
        scale:1;
        transition:.4s ease-in-out;
    }
    .wp-block-cover.full-link:hover img{
        scale:1.1;
        transition:.4s ease-in-out;
    }
    
    .full-link a:after {
        display:block;
        position:absolute;
        left:0;
        top:0;
        width:100%;
        height:100%;
        content:'';
    }
    .full-link .wp-block-cover__inner-container{
        display:flex;
        height: 26vw;
        justify-content: space-between;
        flex-direction: column;
        min-height:250px;
    }
    .full-link .wp-block-cover__inner-container > *{
        margin:20px !important;
    
    }
    
     @media (max-width: 768px) {
    .full-link .wp-block-cover__inner-container{
         height: 60vw;
    }
    }
    
    
    
    

/* Bloc Bannière parallax */
    
    .wp-block-cover.has-parallax{
            margin-right: calc(var(--wp--style--root--padding-right) * -1) !important;
    margin-left: calc(var(--wp--style--root--padding-left) * -1) !important;
            max-width: none;
    }
        @media (max-width: 1100px) {
    
    .home .wp-block-cover.has-parallax {
        margin-left: -20px !important;
        margin-right: -20px !important;
    }
}
    
    
    /* Liste des plats */
    
    
    .product-list > .wp-block-column > .wp-block-group{
        align-items: end;
        display: inline-flex;
        position: relative;
        width: 100%;
        background-image: radial-gradient(var(--wp--preset--color--gris-5) 1px, transparent 0px);
        background-size: 6px 6px;
        background-repeat: repeat-x;
        background-position: left bottom;
        line-height:1;
        gap: 0;
        font-size:16px;
        margin-top:0px;
        margin-bottom:0.7rem;
        
    }
    
    .product-list h3{
        margin-top:0;
    }
     .product-list > .wp-block-column > .wp-block-group > .wp-block-group{
         display: table;
         width: 100%;
         margin:0 !important;
         max-width: 100%;
       
         
    }
    
    .intitule-legende .wp-block-group{
         font-size:0;
    }
    
    .intitule-legende p{
        font-size:16px;
    }
    
      .product-list > .wp-block-column > .wp-block-group > .wp-block-group > p{
         display: inline;
         color:var(--wp--preset--color--contrast);
         background:var(--wp--preset--color--base);
         min-width: fit-content !important;
         line-height: 1.15;
         
    }
    
           
    
    
          .product-list > .wp-block-column > .wp-block-group > .wp-block-group > p:nth-child(2){
        
        
              padding-left:10px;

    }
    

    
    .product-list .wp-block-group figure{
        line-height:1;
        background:var(--wp--preset--color--base);
        padding-right:4px;
        margin: 0 !important;
        width:20px;
        align-items: start;
    }
    
    .product-list > .wp-block-column > .wp-block-group > p {
         min-width: fit-content !important;
         color:var(--wp--preset--color--accent);
         font-size:16px;
         font-family:swear-display, serif;
        margin:0 !important;
        background:var(--wp--preset--color--base);
        line-height: 1.15;
    }
    
    
     @media (max-width: 780px){
    
    .product-list{
        gap:0
    }
    }
    
    
    
    
       /* Border déco */
    
    
    .border-deco {
     border: 15px solid transparent; /* invisible space */
     outline: 1px solid var(--wp--preset--color--accent);
     outline-offset: -10px; /* first box */
     background: linear-gradient(var(--wp--preset--color--accent) 0 0) top,
          linear-gradient(var(--wp--preset--color--accent) 0 0) left, linear-gradient(var(--wp--preset--color--accent) 0 0) bottom,
          linear-gradient(var(--wp--preset--color--accent) 0 0) right;
     background-size: 200% 1px, 1px 200%; /* second box */
     background-origin: padding-box;
     background-repeat: no-repeat;
}
    
    
 .border-frame{
    padding: 10px;
    border: 1px solid var(--wp--preset--color--accent);
    border-radius: 100%;
 }
    
    
    
    
     /* Contact Map */
    
@media (min-width: 801px){
    .contact-map{
    max-width: var(--wp--style--global--content-size);
        max-width: 80%;
    }
    
}
    
    
    
    /* Border déco */
    
    .specs-room td{
        border-right:none;
        border-left:none;
       padding:8px 0;
        
    }
    .specs-room tr > td:first-of-type {
        border-right: 20px solid var(--wp--preset--color--base);
    }
    
    
    /* Bloc Insta */
    
    .sbi_header_link{
    justify-content: center;
    display: flex;
    }
    
    .sbi_header_text{
    display:inline-flex;
    }
        
    
/* =========================================
                  Footer  
========================================= */
    
    footer{
        margin: 8vw 2vw;
    }
    
    footer li a{
        font-family:courier-prime, serif;
    }
    
    footer .wp-block-social-links, .wp-block-social-links.has-normal-icon-size {
  font-size: 24px;
}
    footer .wp-block-social-links .wp-social-link span:not(.screen-reader-text) {
  font-size: 14.4px;
}
    
    
    footer ul{
        gap:5px !important;
    }
    footer h3{
        text-transform:uppercase;
        font-size:14px !important;
        color:var(--wp--preset--color--contrast) !important;
    }
    
    footer .citation p:first-child{
        font-family:swear-display, serif;
        line-height: 1.2;
    }

    
     @media (min-width: 781px){
     footer .wp-block-group > .wp-block-columns:first-of-type > .wp-block-column:first-of-type{

         margin-right: 6vw;
    }
    }
    
    @media (max-width: 781px){
        
     footer .wp-block-column > .wp-block-columns .wp-block-column:first-of-type li, footer .wp-block-column > .wp-block-columns .wp-block-column:nth-of-type(2) li{
        width:100%;
        justify-content: center;
    }
        footer ul{
        width: 100%;
        justify-content: center;
    }
        footer h3, footer p{
            text-align: center !important;
         
        }
        
             footer .wp-block-group > .wp-block-columns > .wp-block-column:first-of-type{

         margin-right: 0;
    }
    
         footer .wp-block-group > .wp-block-columns:first-of-type > .wp-block-column:first-of-type figure{
             width:60vw !important;
             margin:auto;
    }
        footer .wp-block-group{
            justify-content: center;
        }
        
        footer ul.wp-block-social-links {
            align-items: center;

    }
}
    
       footer time{
        margin-right: 5px !important;
        display: inherit;
        
    }
            footer .copyright, footer .copyright time{
            gap:10px;
            font-size:11px;
            line-height:1;
                letter-spacing:0.03rem;
             text-transform:uppercase;
   }
   footer .copyright .wp-block-group{
       gap:0;
       
   }
    
    footer .wp-block-group > .wp-block-columns > .wp-block-column:first-of-type figure:first-of-type{
      
        margin-bottom: 20px;
    }
    
    footer .wp-block-social-links{
        margin-inline-end: 0em !important;
        margin-top:2px;
    }
    
    footer .wp-social-link a{
        line-height: 1;
    }
    
    footer > div > div:nth-of-type(2){
       font-weight: 100;
       font-family:swear-display, serif;
        
    }
    footer > div > div:nth-of-type(2) > div .wp-block-group {
        gap:0 !important;
        
        
    }