/*
 * Custom by valentinbourreau
 */



/*
 * Typographie
 */

h1 {
    font-size: 40px !important;
    line-height: 53px !important;
    font-weight: 800 !important;
    color: #272727 !important;
}

h2 {
    font-size: 35px !important;
    line-height: 44px !important;
    font-weight: 700 !important;
    color: #272727 !important;
}

h3  {
    font-size: 28px !important;
    line-height: 38px !important;
    font-weight: 700 !important;
    color: #797979 !important;
}

 
p {
    font-size: 16px !important;
    color: #797979 !important;
}

 @media screen and (max-width:992px) {

    h1 {
        font-size: 28px !important;
        line-height: 38px !important;
    }

    body.home h1 {
        font-size: 32px !important;
        line-height: 40px !important;
    }
    
    h2 {
        font-size: 24px !important;
        line-height: 34px !important;
    }
    
    h3 {
        font-size: 20px !important;
        line-height: 30px !important;
    }


    p {
        font-size: 13px !important;
    }

    li {
        font-size: 13px !important;
    }

    .container {
        padding: 0 10px;
    }
}

@media screen and (max-width:330px) {

    body.home h1 {
        font-size: 30px !important;
        line-height: 43px !important;
    }
}


/*
 * Global
 */

body {
    font-family: 'Montserrat', sans-serif;
    overflow-x: hidden;
}


/*
 * Menu
 */

.nibs-header svg g path { 
    fill:  #0074BC;
}

 .nibs-header {
    background-color: #E4F1F7;
}

.nibs-header .container {
    max-width: unset;
    padding: 0 50px 0 70px;
}

.mean-container .mean-nav {
    position: fixed;
    left: 0;
    float: none;
}

@media screen and (max-width:767px) {

    .nibs-header .container {
        padding: 0 10px;
    }

    .nibs-mid-wrap {
        padding: 20px 0 70px !important;
    }

    .mean-container a.meanmenu-reveal {
        border: none;
        right: 0 !important;
    }
}

.nibs-navigation {
    padding: 9px 30px;
    border-radius: 6px;
}
 
/* Home page */ 

body.home .nibs-header { 
    background-color: transparent;
}

body.home .nibs-header svg g path { 
    fill: white !important;
}

body.home .nibs-header a {
    color: white;
}

body.home .nibs-header li.active a {
    color: #E4F1F7;
    font-weight: 700;
}

body.home .nibs-header li.active a .nav-dots {
    background-color: #E4F1F7;
}

@media screen and (max-width:767px) {

    body.home .mean-container a.meanmenu-reveal {
        border-color: #FFFFFF;
    }

    body.home .mean-container a.meanmenu-reveal span, body.home .mean-container a.meanmenu-reveal span:before, body.home .mean-container a.meanmenu-reveal span:after {
        background: #FFFFFF;
    }

    body.home .nibs-header li.active a {
        color: #0074BC;
    }

}

/* Dropdown nav */

.dropdown-nav {
    text-transform: unset;
    box-shadow: 0 4px 15px rgba(0, 116, 188, 0.07);
    background: #E4F1F7;
    background-color: #E4F1F7;
    border-radius: 6px;
}

.dropdown-nav:before {
    border-bottom: 12px solid #E4F1F7;
}

body.home .dropdown-nav .menu-item .nav-text {
    color: #0074BC;
    transition: all .3s ease-in-out;
}

body.home .dropdown-nav .menu-item a:hover .nav-text {
    opacity: .5;
}


@media screen and (max-width:767px) {

    .mean-container .mean-nav > ul > li:hover > a, .mean-container .mean-nav ul li a:focus {
        color: #0074BC;
    }

    .mean-container .mean-nav ul li a.mean-expand:focus, .mean-container .mean-nav ul li a.mean-expand:hover {
        background-color: #0074BC;
    }

    body.home .dropdown-nav .menu-item .nav-text {
        color: #2b3344;
    }

}


/* Button contact */ 

.nibs-navigation .menu .menu-item:last-child .nav-link .nav-text {
     padding: 9px 30px;
     border-radius: 6px;
     border: 1px solid black;
     transition: all .5s ease-in-out;
}

.nibs-navigation .menu .menu-item:last-child .nav-link:hover .nav-text {
     border: 1px solid #0074BC;
     background-color: #0074BC;
     color: white;
}

.nibs-navigation .menu .menu-item:last-child.active .nav-link .nav-text {
    border: 1px solid #0074BC;
    background-color: #0074BC;
    color: white;
}

body.home .nibs-navigation .menu .menu-item:last-child .nav-link:hover .nav-text { 
    border: 1px solid #0074BC;
}

body.home .nibs-navigation .menu .menu-item:last-child .nav-link .nav-text { 
    border: 1px solid white; 
}

.nibs-navigation .menu .menu-item:last-child .nav-link .nav-text .nav-dots { 
    display: none;
}

.nibs-navigation .menu .menu-item:last-child .nav-link .nav-text {
    padding: 9px 30px;
    border-radius: 6px;
    border: 1px solid black;
}

.nibs-navigation .nav-text {
    font-size: 14px;
}


/* Full Container */

.nibs-mid-wrap {
    padding-top: 0;
}

.parent-pageid-34 .modula-items {
    border-radius: 8px;
    overflow: hidden;
}

@media screen and (max-width:767px) {

    .modula-items .modula-item:not(:first-child) {
        display: none;
    }
}

/*
 * Footer
 */

.footer {
    background-color: #E4F1F7;
}

.footer-wrap {
    padding: 60px 0 40px;
}

.footer .footer-widget {
    margin-bottom: 0;
}

.footer__left {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
}

.footer__left .textwidget p {
    padding-bottom: 0;
    font-size: 14px !important;
    font-weight: 500;
}

.footer__left .textwidget p:first-child {
    font-weight: 700;
}

.footer__center {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: center;
}

.footer__center p {
    text-align: center;
    padding-top: 8px;
    padding-bottom: 0;
}

.footer__center p a {
    color: #797979;
    font-weight: 600;
    font-size: 14px !important;
}

.footer__center p a:hover {
    opacity: 0.7;
}

.footer__center img {
    width: 120px;
}


.footer__right {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-end;
    column-gap: 12px;
}

.footer__right__content a {
    color: #0074BC;
    text-align: right;
}

.footer__right__paiement > p {
    text-align: right;
    padding-bottom: 5px;
    font-weight: 600;
    font-size: 14px !important;
}

.footer__right__paiement__layout {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    align-items: center;
    justify-items: center;

}

.footer__right__paiement__icon {
    height: 30px;
}

.footer__right__paiement__icon svg {
    height: 100%;
}

.footer__right__paiement__label p {
    text-align: center;
    font-size: 13px !important;
    line-height: 16px;
    padding-bottom: 0;
}


.footer__right__social-network {
    display: flex;
    margin-bottom: 12px;
}

.footer__right__social-network a {
    transition: opacity .3s ease-in-out;
    height: 20px;
    display: flex;
}

.footer__right__social-network a:hover {
    opacity: 0.7;
}

.footer__right__social-network a:not(:first-child) {
    border-left: 1.5px solid #5a5a5a;
}

.footer__right__social-network a:nth-child(odd) {
    padding-right: 15px;
}

.footer__right__social-network a:nth-child(even) {
    padding-left: 15px;
}

.footer__right__content a {
    padding-top: 15px;
    font-size: 15px;
}

@media screen and (max-width:767px) {

    .footer__right__paiement {
        padding-top: 20px;
    }

    .footer__right__paiement > p {
        text-align: center;
        padding-bottom: 10px;
    }

    .footer__left {
        align-items: center;
        text-align: center;
    }

    .footer__right {
        align-items: center;
    }

    .footer__right__content a {
        font-size: 12px;
    }
}

/*
 * Button
 */

 .rom-button {
    border: 1px solid #FFFFFF;
    color: white;
    background-color: transparent;
    padding: 8px 24px;
    border-radius: 3px;
    font-size: 15px;
    font-weight: 500;
    transition: .5s all ease-in-out;
}

.rom-button:hover {
    background-color: white;
    color: black;
}


/*
 * Headband
 */

.rom-headband {
    margin-top: -121px !important;
    height: 100vh;
}

.rom-headband > .elementor-container {
    display: flex;
    justify-content: flex-start;
    align-items: flex-end;
    height: 100%;
    width: 100%;
    padding-bottom: 150px;
}

@media screen and (max-width:768px) {

    .rom-headband > .elementor-container {
        width: 100%;
        padding-bottom: 30px;
    }
}


/*
 * Card
 */

/* Card lodging */ 

.rom-card {
    height: 371px;
    color: white;
}

.rom-card__container {
    width: 289px;
}

.rom-card__image {
    cursor: pointer;
    transition: ease-in-out .3s all;
    border-radius: 8px;
}

.rom-card__image a {
    width: 100%;
}


.rom-card__image img {
    width: 100%;
    border-radius: 8px;
    height: 240px;
    object-fit: cover;
}

.rom-card__image:hover {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
    transform: translateY(-5px);
}

.rom-card > .elementor-widget-container {
    margin: 0 auto;
    width: 289px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    cursor: pointer;
    transition: ease-in-out .3s all;
}

.rom-card > .elementor-widget-container:hover {
    box-shadow: 0 5px 20px rgba(0, 0, 0, 0.2);
    transform: translateY(-5px);
}

.rom-card__incidator {
    display: flex;
}

.rom-card__incidator p {
    font-weight: 700;
}

.rom-card__incidator p:last-child {
    margin-left: 20px;
}

@media screen and (max-width:992px) {

    .rom-card {
       margin-bottom: 20px;
    }

    .rom-card > .elementor-widget-container {
        width: 100%;
    }
    
}

@media screen and (max-width:992px) {

    .rom-card {
       margin-bottom: 20px;
    }

    .rom-card > .elementor-widget-container {
        width: 100%;
    }
    
}

@media screen and (min-width:350px) and (max-width:767px) {

    .rom-card {
       margin-bottom: 20px;
    }

    .rom-card > .elementor-widget-container {
        width: 289px;
    }
    

}

/* Card Icon */ 

.card-icon {
    position: relative;
}

.card-icon p {
    margin: 0;
    padding: 0;
    margin-left: 40px;
}

.card-icon:before {
    content: '';
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
}

.card-eat > div.elementor-widget-container  {
    border-left-width: 50px !important;
}

.card-eat p {
    margin-left: 0 !important;
}

.card-eat:before {
    content: url('./../icons/eat.svg');
    left: 10px;
}

.card-baby:before {
    content: url('./../icons/baby.svg');
}

/* Card Price */

.card-price {
    background-color: #F2F2F2;
    border-radius: 8px;
    padding: 0 20px;
}

/* Card Info */

.card-info {
    background-color: #F2F2F2;
    border-radius: 8px;
    padding: 0 20px;
}

.card-info p {
    font-size: 13px !important;
    line-height: 17px;
}

/*
 * Form
 */

.rom-form label, .rom-form .wpcf7-validation-errors {
    color: #272727;
    font-family: 'Montserrat';
    width: 100%;
}

.rom-form .wpcf7-validation-errors {
    background-color: rgba(255,255,255,0.3);
    border: none;
    padding: 20px;
    border-radius: 6px;
    margin-left: 0;
}

.rom-form label input, .rom-form label textarea  {
    margin-top: 6px;
    background-color: rgba(255,255,255,0.8);
    border: none;
    border-radius: 6px;
    color: #272727;
    padding: 10px 12px;
    width: 100%;
}

.rom-form input[type="submit"] {
    background-color: #005D97;
    color: white;
    border: none;
    width: 100%;
    padding: 12px 24px;
    border-radius: 6px;
    font-weight: 500;
    transition: .5s all ease-in-out;
    border: 1px solid #005D97;
}

.rom-form input[type="submit"]:hover {
    background-color: white;
    color: #005D97;
}


/* Form home page */

@media screen and (max-width:767px) {
    .rom-form--home {
        display: none;
    }
}

.rom-form--home label {
    text-align: left;
    color: rgba(0,0,0,0.50);
}

.rom-form--home label input {
    background-color: white;
    color: #4D4D4D;
}


.rom-form--home > div {
    display: flex;
    flex-direction: row;
}

.rom-form.rom-form--home label:not(:first-child) {
    margin-left: 30px;
}

.rom-form.rom-form--home input[type="submit"] {
    width: 100%;
    background-color: #005D97;
    color: white;
    max-width: 280px;
    margin: 0 auto;
    font-size: 14px;
    margin-top: 12px;
}



/*
 * Gwolle - Livre d'or
 */


#gwolle_gb p.entry_saved {
    margin-top: 1rem;
}

#gwolle_gb_write_button {
    text-align: right;
}

#gwolle_gb_write_button input.button {
    border: 1px solid #797979;
    color: #797979;
    background-color: transparent;
    padding: 8px 24px;
    border-radius: 3px;
    font-size: 15px;
    font-weight: 500;
    transition: .5s all ease-in-out;
}

#gwolle_gb_write_button input.button:hover {
    background-color: #797979;
    color: white;
}

#gwolle_gb_new_entry {
    padding: 30px 50px;
    background-color: #E4F1F7;
    border-radius: 8px;
}

#gwolle_gb_new_entry .gb-notice-dismiss {
    top: 20px;
    right: 20px;
}

#gwolle_gb_new_entry h3 {
    text-align: center;
    margin-bottom: 12px;
}

#gwolle_gb_new_entry > div {
    display: flex;
    flex-direction: column;
    align-items: center;
}

#gwolle_gb_new_entry .label {
    width: 50% !important;
}

#gwolle_gb_new_entry .label label.text-info {
    color: #272727 !important;
    font-family: 'Montserrat';
}

#gwolle_gb_submit {
    border: 1px solid #0074BC;
    background-color: #0074BC;
    color: white;
    padding: 10px 12px;
    width: 100%;
    transition: .5s all ease-in-out;
}

#gwolle_gb_submit:hover {
    background-color: white;
    color: #0074BC;
}

#gwolle_gb_new_entry input[type=text], #gwolle_gb_new_entry input[type=email], #gwolle_gb_new_entry input[type=url], #gwolle_gb_new_entry textarea {
    font-family: 'Montserrat';
    background-color: rgba(255,255,255,0.8);
    border: 1px solid white;
    border: none;
    border-radius: 8px;
    color: #272727;
    padding: 10px 12px;
    width: 100%;
} 

#gwolle-gb-total {
    display: none;
}

#gwolle_gb_entries {
    margin-top: 20px !important;
}

#gwolle_gb_entries .gb-entry {
    border: 1px solid #E4F1F7 !important;
    border-radius: 8px !important;
    max-width: 750px !important;
    padding: 20px 30px 20px 75px !important;
    font-size: 14px !important;
    position: relative;
    margin: 10px auto !important;
}

#gwolle_gb_entries .gb-entry::after {
    content: url("../icons/quote.svg");
    position: absolute;
    top: 30px;
    transform: translateY(-50%);
    left: 20px;
}

@media screen and (max-width:767px) {

    #gwolle_gb_write_button {
        text-align: center;
    }

    #gwolle_gb_new_entry {
        padding: 40px 20px 30px 20px;
    }

    #gwolle_gb_new_entry > div {
        align-items: flex-start;
    }
    
}



/*
 * Contact
 */

.contact-content p {
    margin-bottom: 0;
}

.contact-content {
    margin-bottom: 12px;
}


.contact-list {
    
}

.contact-list > div {
    position: relative;
    padding-left: 35px;
    margin-bottom: 6px;
}


.contact-list > div a {
    font-size: 14px;
    color: #797979;
}


.contact-list > div::before {
    width: 20px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}

.contact-list > div:nth-child(1)::before {
    content: url("../icons/mail.svg");
}

.contact-list > div:nth-child(2)::before {
    content: url("../icons/phone.svg");
}

.contact-list > div:nth-child(3)::before {
    content: url("../icons/mobile.svg");
}


/*
 * Overwrite lightbox
 */
 
.lightboxOverlay {
    background-color: #FFFFFF !important;
}

#lightbox.lightbox .lb-image {
    border-radius: 0 !important;
    border: none !important;
}

.lb-data .lb-close {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iIzAwMDAwMCIgZD0iTTEzLjQxLDEybDQuMy00LjI5YTEsMSwwLDEsMC0xLjQyLTEuNDJMMTIsMTAuNTksNy43MSw2LjI5QTEsMSwwLDAsMCw2LjI5LDcuNzFMMTAuNTksMTJsLTQuMyw0LjI5YTEsMSwwLDAsMCwwLDEuNDIsMSwxLDAsMCwwLDEuNDIsMEwxMiwxMy40MWw0LjI5LDQuM2ExLDEsMCwwLDAsMS40MiwwLDEsMSwwLDAsMCwwLTEuNDJaIi8+PC9zdmc+") !important;
    background-position: top right !important;
    background-repeat: no-repeat !important;
    background-size: 30px !important;
}

.lb-nav a.lb-prev {
    background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTExLjQ2LDguMjlhMSwxLDAsMCwwLTEuNDIsMGwtMywzYTEsMSwwLDAsMCwwLDEuNDJsMywzYTEsMSwwLDAsMCwxLjQyLDAsMSwxLDAsMCwwLDAtMS40Mkw5LjE2LDEybDIuMy0yLjI5QTEsMSwwLDAsMCwxMS40Niw4LjI5Wk0xNC42NiwxMiwxNyw5LjcxYTEsMSwwLDAsMC0xLjQyLTEuNDJsLTMsM2ExLDEsMCwwLDAsMCwxLjQybDMsM2ExLDEsMCwwLDAsMS40MiwwLDEsMSwwLDAsMCwwLTEuNDJaIi8+PC9zdmc+") !important;
    background-position: left center !important;
    background-repeat: no-repeat !important;
    background-size: 80px !important;
}

.lb-nav a.lb-next {
    background-image:  url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNCAyNCI+PHBhdGggZmlsbD0iI0ZGRkZGRiIgZD0iTTguNDYsOC4yOUExLDEsMCwxLDAsNyw5LjcxTDkuMzQsMTIsNywxNC4yOWExLDEsMCwwLDAsMCwxLjQyLDEsMSwwLDAsMCwxLjQyLDBsMy0zYTEsMSwwLDAsMCwwLTEuNDJabTguNSwzLTMtM2ExLDEsMCwwLDAtMS40MiwxLjQyTDE0Ljg0LDEybC0yLjMsMi4yOWExLDEsMCwwLDAsMCwxLjQyLDEsMSwwLDAsMCwxLjQyLDBsMy0zQTEsMSwwLDAsMCwxNywxMS4yOVoiLz48L3N2Zz4=") !important; 
    background-position: right center !important;
    background-repeat: no-repeat !important;
    background-size: 80px !important;
}



/*
 * Page Hébergement
 */

.parent-pageid-34  {


}


.parent-pageid-34 h1 {
    font-size: 32px !important;
    line-height: 36px !important;
}

.parent-pageid-34 h2 {
    font-size: 28px !important;
    line-height: 32px !important;
}

.parent-pageid-34 h3 {
    font-size: 22px !important;
    line-height: 26px !important;
}

/*
 * Overwrite Eloha
 */

div.co-widget-p-link-gift-voucher {
    background: #ffc107 !important;
}

/*
 *  modula
 */



 @media screen and (max-width:768px) {

    .modula {
        position: relative;
    }
    
    .modula::after {
        position: absolute;
        bottom: 20px;
        width: 35px;
        height: 35px;
        right: 20px;
        z-index: 2;
        background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMzIuMzk1IDIzMi4zOTUiPjxwYXRoIGZpbGw9IiNGRkZGRkYiIGQ9Ik0xNzcuMTIxIDgzLjI1OGEyMi44MDcgMjIuODA3IDAgMDAtMTUuMzkzIDUuOTYyIDIyLjgwNSAyMi44MDUgMCAwMC0xNS4zOTMtNS45NjIgMjIuODMyIDIyLjgzMiAwIDAwLTE1LjQwNCA1Ljk2MyAyMi45NDUgMjIuOTQ1IDAgMDAtNS42NDUtMy43NmM3LjQ2Ny05LjE2MyAxMS44MjgtMjAuNzkyIDExLjgyOC0zMy4wOTVDMTM3LjExNSAyMy40OTEgMTEzLjYyNyAwIDg0Ljc1NiAwIDU1Ljg3OCAwIDMyLjM4MyAyMy40OTEgMzIuMzgzIDUyLjM2NmMwIDIwLjEwNSAxMS42NDkgMzguNCAyOS40NjkgNDcuMDg1djYzLjg3MWMwIDM4LjA4NiAzMC45ODggNjkuMDcyIDY5LjA3NyA2OS4wNzIgMzguMDkyIDAgNjkuMDgzLTMwLjk4NiA2OS4wODMtNjkuMDcyVjEwNi4xNWMwLTEyLjYyMy0xMC4yNjktMjIuODkyLTIyLjg5MS0yMi44OTJ6TTQ3LjM4MyA1Mi4zNjZDNDcuMzgzIDMxLjc2MiA2NC4xNDggMTUgODQuNzU2IDE1YzIwLjYgMCAzNy4zNTkgMTYuNzYyIDM3LjM1OSAzNy4zNjYgMCAxMS43MDItNS41MjkgMjIuNTQ5LTE0LjQ2NyAyOS41MTVWNTIuMzY2YzAtMTIuNjI4LTEwLjI3LTIyLjkwMi0yMi44OTMtMjIuOTAyLTEyLjYyOSAwLTIyLjkwNCAxMC4yNzQtMjIuOTA0IDIyLjkwMnYyOS41MTNjLTguOTM5LTYuOTY0LTE0LjQ2OC0xNy44MTEtMTQuNDY4LTI5LjUxM3ptMTM3LjYyOSAxMTAuOTU2YzAgMjkuODE1LTI0LjI2MiA1NC4wNzItNTQuMDgzIDU0LjA3Mi0yOS44MTggMC01NC4wNzctMjQuMjU3LTU0LjA3Ny01NC4wNzJWOTQuODg3YTcuMjM2IDcuMjM2IDAgMDAwLS43NTF2LTQxLjc3YzAtNC4zNTcgMy41NDYtNy45MDIgNy45MDQtNy45MDIgNC4zNTIgMCA3Ljg5MyAzLjU0NSA3Ljg5MyA3LjkwMnY3MC4yMzVhNy41IDcuNSAwIDAwMTUgMFYxMDYuMTVjMC00LjM1MiAzLjU0LTcuODkzIDcuODkxLTcuODkzczcuODkgMy41NDEgNy44OSA3Ljg5M3YxNi40NTFhNy41IDcuNSAwIDAwMTUgMFYxMDYuMTVjMC00LjM1MiAzLjU0Ny03Ljg5MyA3LjkwNy03Ljg5MyA0LjM1MiAwIDcuODkzIDMuNTQxIDcuODkzIDcuODkzdjE2LjQ1MWE3LjUgNy41IDAgMDAxNSAwVjEwNi4xNWMwLTQuMzUyIDMuNTQxLTcuODkzIDcuODkzLTcuODkzIDQuMzUxIDAgNy44OTEgMy41NDEgNy44OTEgNy44OTN2NTcuMTcyeiIvPjwvc3ZnPg==")
    }

}
/* Elloha - masquer le bandeau Carte cadeaux */
#ConstellationWidgetLinks .co-widget-p-link-gift-voucher,
#ConstellationWidgetLinks .co-widget-p-link-gift-voucher *{
  display: none !important;
}

/* Logo sizing */
.nibs-logo{
  width: 120px;
  height: auto;
  display: block;
}

@media (max-width: 767px){
  .nibs-logo{
    width: 170px; /* adapte si besoin */
  }
}

/* =========================================================
   FIX HOME HEADER = même bandeau que les autres pages
   + logo responsive + hamburger visible + cache Carte cadeaux
   ========================================================= */

/* 1) Header identique partout (y compris HOME) */
body.home .nibs-header{
  background-color: #E4F1F7 !important; /* bleu clair */
}

/* annule les styles "home = transparent + blanc" existants */
body.home .nibs-header svg g path{
  fill: #0074BC !important;
}
body.home .nibs-header a{
  color: #2b3344 !important;
}
body.home .nibs-header li.active a{
  color: #0074BC !important;
}
body.home .nibs-header li.active a .nav-dots{
  background-color: #0074BC !important;
}

/* hamburger visible sur HOME (sinon il devient blanc sur fond clair) */
@media screen and (max-width:767px){
  body.home .mean-container a.meanmenu-reveal span,
  body.home .mean-container a.meanmenu-reveal span:before,
  body.home .mean-container a.meanmenu-reveal span:after{
    background: #0074BC !important;
  }
  body.home .mean-container a.meanmenu-reveal{
    border-color: transparent !important;
  }
}

/* 2) Le “bandeau” doit être au-dessus de l’image sur la home :
   tu as .rom-headband en margin-top négatif (-121px) => ça remonte sous le header */
body.home .rom-headband{
  margin-top: 0 !important;
}

/* 3) Taille du logo (desktop + mobile) */
.nibs-logo{
  width: 120px;
  height: auto;
  display: block;
}

@media screen and (max-width:767px){
  .nibs-logo{
    width: 160px; /* ajuste si tu veux un poil plus petit : 140px */
  }
}

/* 4) Menu un peu moins “loin” du logo */
.nibs-header .container{
  padding: 0 40px 0 40px !important; /* au lieu de 0 50 0 70 */
}

@media screen and (max-width:767px){
  .nibs-header .container{
    padding: 0 10px !important;
  }
}

/* 5) Supprimer "Carte cadeaux" (Eloha / Constellation) */
div.co-widget-p-link-gift-voucher,
#ConstellationWidgetLinks .co-widget-p-link-gift-voucher,
#ConstellationWidgetLinks .co-widget-p-link-gift-voucher *{
  display: none !important;
}

/* =========================================
   HEADER FIXE sans couper le haut des pages
   ========================================= */

:root{
  --rom-header-h: 160px;   /* desktop */
  --rom-header-h-m: 150px;  /* mobile */
}

/* 1) Header fixe */
.nibs-header{
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999 !important;
}

/* Admin bar WP */
body.admin-bar .nibs-header{ top: 32px !important; }
@media (max-width:782px){
  body.admin-bar .nibs-header{ top: 46px !important; }
}

/* 2) On décale le CONTENU (pas le body) */
#page,
.site,
.site-content,
#content,
.content-area,
.nibs-mid-wrap{
  padding-top: var(--rom-header-h);
}

/* 3) Mobile */
@media (max-width:767px){
  #page,
  .site,
  .site-content,
  #content,
  .content-area,
  .nibs-mid-wrap{
    padding-top: var(--rom-header-h-m);
  }
}

/* 4) Home : on ne veut pas de double compensation sur ton bandeau */
body.home .rom-headband{
  margin-top: 0 !important;
}

/* 5) Hamburger visible */
.mean-container a.meanmenu-reveal span,
.mean-container a.meanmenu-reveal span:before,
.mean-container a.meanmenu-reveal span:after{
  background: #0074BC !important;
}
/* =========================================
   HEADER : taille OK + menu centré
   (remplace l'ancien bloc header)
   ========================================= */

/* Hauteurs */
:root{
  --header-h: 110px;        /* hauteur desktop */
  --logo-h: 90px;           /* hauteur logo desktop */
  --header-h-m: 88px;       /* hauteur mobile */
  --logo-h-m: 56px;         /* hauteur logo mobile */
}

/* 1) Header fixe */
.nibs-header{
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 9999 !important;

  height: var(--header-h) !important;
  display: flex !important;
  align-items: center !important;
}

/* Admin bar WP */
body.admin-bar .nibs-header{ top: 32px !important; }
@media (max-width:782px){
  body.admin-bar .nibs-header{ top: 46px !important; }
}

/* 2) Container : 3 zones (logo / menu / bouton) */
.nibs-header .container{
  height: var(--header-h) !important;
  display: grid !important;
  grid-template-columns: auto 1fr auto !important;
  align-items: center !important;

  /* ajuste l'air à gauche/droite */
  padding: 0 50px 0 70px !important;
}

/* 3) Logo : taille */
.nibs-brand img,
.nibs-logo{
  max-height: var(--logo-h) !important;
  width: auto !important;
  height: auto !important;
  display: block;
}

/* 4) Menu : centré */
.nibs-navigation{
  justify-self: center !important;  /* centre dans la colonne du milieu */
  padding: 0 !important;
  margin: 0 !important;
}
.nibs-navigation .menu{
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 24px;                         /* espace entre les items */
}

/* 5) Décalage du site = hauteur header */
body{
  padding-top: var(--header-h) !important;
}

/* 6) Hamburger visible */
.mean-container a.meanmenu-reveal span,
.mean-container a.meanmenu-reveal span:before,
.mean-container a.meanmenu-reveal span:after{
  background: #0074BC !important;
}

/* MOBILE */
@media (max-width:767px){
  .nibs-header{ height: var(--header-h-m) !important; }
  .nibs-header .container{
    height: var(--header-h-m) !important;
    padding: 0 12px !important;
    grid-template-columns: auto 1fr auto !important;
  }
  body{ padding-top: var(--header-h-m) !important; }
  .nibs-brand img,
  .nibs-logo{ max-height: var(--logo-h-m) !important; }
}
/* =========================================
   Logo + header : plus gros mais propre
   ========================================= */

/* Logo : un peu plus grand, sans déborder */
.nibs-brand img,
.nibs-logo{
  height: 80px !important;   /* augmente si besoin : 76 / 80 */
  width: auto !important;
  max-height: none !important;
  transform: none !important;
}

/* Header : on réduit la hauteur globale */
.nibs-header{
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

/* Mobile */
@media (max-width:767px){
  .nibs-brand img,
  .nibs-logo{
    height: 56px !important; /* augmente si besoin : 60 */
  }
  .nibs-header{
    padding-top: 10px !important;
    padding-bottom: 10px !important;
  }
}