html {
    font-size: 100%;
}


:root {
    --e-price-table-header-background-color: linear-gradient(to bottom, #353535, #222222);

    --container-default-padding-left: 16px;
    --container-default-padding-right: 16px;
}

body {
    font-size: 20px;
    font-family: "Roboto", sans-serif;
    font-size: 20px; 
    color: #2B2826;
    font-weight: 400;
    margin: 0;
    line-height: 1.4;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 0;
    background-color: #fff;
    --e-global-color-text: #333333!important;
    --e-global-typography-text-font-family: "Inter"!important;
}

.otgs-development-site-front-end {display:none!important;}

@media (max-width: 600px) {
    body {
        font-size: 17px;
    }
}

::selection {}

html {
    overflow-y: scroll !important;
    /* scroll-behavior: smooth; */
}

a {
    color: currentColor;
}

a:hover {
    color: #073B21;
}





.pix-wrapper-header{
    display: flex;
    flex-direction: column;
    position: relative;
    z-index: 10000;
    margin: 0 auto;
    font-size: 20px;
    color: #fff;
    background: url(i/header-bg-2x.jpg) #2B2826 no-repeat center center/cover;
        box-shadow: 0px 5px 10px #2b282652;
}



/* HEADER LOGO */
.pix-wrapper-header div.pix-logo {

    position: absolute;
    z-index: 10;
    top: 1em;
    left: 2em;

    font-size: 1em;
}

.pix-wrapper-header a.logo {
    text-decoration: none;
    color: currentColor;
    position: relative;
    display: inline-block;
    vertical-align: top;
}

.pix-wrapper-header div.pix-logo img {
    vertical-align: top;
    width: 20em;
    border-radius: inherit;
}


@media (max-width:1400px) {

    .pix-wrapper-header div.pix-logo img {
        width: 18em;
    }
    .pix-wrapper-header div.pix-logo {
    top: 0.8em;
    left: 1em;
    }
}


@media (max-width: 1250px) {
    .pix-wrapper-header div.pix-logo img {
        width: 16em;
    }
}


@media (max-width: 1120px) {
    .pix-wrapper-header div.pix-logo img {
        width: 15em;
        
    }
}


@media (max-width: 1060px) {
    .pix-wrapper-header div.pix-logo {
        left: 0.7em;
    }
}


@media (max-width: 1000px) {
    .pix-wrapper-header div.pix-logo {
        top:0.5em;
    }
}



@media (max-width: 460px) {
    .pix-wrapper-header div.pix-logo img {
        width: 13em;
    }
}


@media (max-width: 380px) {
    .pix-wrapper-header div.pix-logo img {
        width: 11em;
    }
}



.pix-header-top {
    padding: 0;
    margin: 0;
}

.pix-header-top-inner {
    position: relative;
    z-index: 8;
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: flex-end;
    margin-left: auto;
    gap: 1em;
    padding:0px 20px;
}

.pix-header-top-inner .pix-header-top-bouton {
    line-height: 1;
    text-decoration: none;
    color: #000;
    font-weight: 600;
    font-size: 1em;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    gap: 0.4em;
    padding: 0.5em;
    background-color: #FBD085;
}
.pix-header-top-inner .pix-header-top-bouton img {
    width: 1.2em;
    height: 1.2em;
    object-fit: contain;
    vertical-align: top;
}

.pix-header-top-inner .pix-header-top-bouton:hover {
    background-color: #FBD085;
}


@media (max-width: 460px) {
    .pix-header-top-inner {
        padding: 0px 10px;
    }

}




.pix-header-bottom {
    max-width: 1920px;
    margin: 0 auto;
    width: 100%;
    position: relative;
    margin-top: auto;
    padding: 2em 0 2em 0;
}


@media (max-width:1400px) {
    .pix-header-bottom {
        padding: 1.7em 0 1.7em 0;
    }
}


@media (max-width: 1250px) {
    .pix-header-bottom {
        padding: 1.4em 0 1.4em 0;
    }
}

@media (max-width: 1000px) {
    .pix-header-bottom {
        padding: 1.4em 0 3.6em 0;
    }
}

@media (max-width: 460px) {
    .pix-header-bottom {
        padding: 2.1em 0 2em 0;
    }
}

@media (max-width: 380px) {
    .pix-header-bottom {
        padding: 1.3em 0 2em 0;
    }
}



.pix-wrapper-contenu {
    background-color: #fff;
    z-index: 0;
    position: relative;
}


div.pix-wrapper-contenu {
    padding-top: 80px;
    margin-bottom: 30px;
}

body.home div.pix-wrapper-contenu {
    margin-bottom: 0;
}


@media (max-width: 1170px) {
    div.pix-wrapper-contenu {
        padding-top: 50px;
    }
}
@media (max-width: 440px) {
    div.pix-wrapper-contenu {
        padding-top: 40px;
    }
}

body.pix-bandeau-fullwidth-loaded div.pix-wrapper-contenu {
    padding-top: 0px;
}

.page-content p a,
.page-content .pix-lien,
.page-content a.e-paragraph-link-base {
    color: #AA780E;
    text-decoration: underline;
    text-underline-offset: 5px;
    font-weight: 500!important;

    transition: text-underline-offset 0.2s ease 0s;
}
.page-content p a:hover,
.page-content .pix-lien:hover,
.page-content a.e-paragraph-link-base:hover {
    text-underline-offset: 3px;
}

h1,
h2,
h3,
h4,
h5,
h6 {}

h1.elementor-heading-title,
h1.wp-block-heading,
h1.pix-title,
h1.e-heading-base,
h2.pix-title,
div.pix-title h2 {
    position: relative;
    font-family: "Staatliches", sans-serif !important;
    text-transform: uppercase;
    color: #2B2826 !important;
    font-weight: 400!important;
    font-size: clamp(36px, 5vw, 60px);
    line-height: 1;
    margin-bottom: 0.2em;
}




h2.entry-title,
h2.wp-block-heading, 
h2.e-heading-base,
h2.elementor-heading-title {
    font-family: "Staatliches", sans-serif !important;
    font-size: calc(clamp(36px, 5vw, 60px) * 40 / 60);
    font-weight: 400!important;
    line-height: 1.1;
    margin-bottom: 0.2em;

    display: inline-block;
    color: #2B2826;
    text-transform: none;
}

h3.e-heading-base,
h3.elementor-heading-title {
    font-family: "Staatliches", sans-serif !important;
    font-size: calc(clamp(36px, 5vw, 60px) * 32 / 60);
    text-transform: none;
    font-weight: 400!important;
    color: #3B3632!important;
    line-height: 1.1;
}

h3 {
    margin-top: 20px;
    margin-bottom: 5px;
}



.pix-titre-news h1 {
    font-size: clamp(22px, 4vw, 34px);
    line-height: 1.1;
}




.elementor a {
    font-weight: 700;
}



h1 span.dl,
h2 span.dl {
    display: block;
    font-weight: 400;
    font-family: "Roboto", sans-serif;
    color: #AA780E;
    font-size: max(0.4em, 16px);
    text-transform: uppercase;
}

h1 span.fin,
h2 span.fin {
    font-weight: 200;
}


a.pix-backtotop {
    display: none;
    width: 38px;
    height: 38px;
    text-indent: -9999px;
    position: fixed;
    z-index: 9999999;
    left:50%;
    transform: translateX(-50%);
    bottom: 20px;
    border-radius: 0;
    background: url("i/arrow-up.svg") no-repeat center center, #FBD085;
    background-size: 20px 20px, 100% 100%;
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.27);
    transition: all 0.2s ease-in-out 0s;
}

a.pix-backtotop:hover {
    background-size: 24px 24px, 100% 100%;
}



.site-branding {
    max-width: initial;
    position: relative;
    z-index: 2;
    display: inline-block;
}



.pix-site-header {
    position: relative;
    z-index: 2000;
}

a.pix-bouton,
.elementor-button,
.e-button-base,
form.elementor-form button[type=submit] {
    font-family: "Staatliches", sans-serif;
    font-style: normal;
    text-shadow: none;
    display: inline-flex;
    align-items: center;
    gap: 0.2em;
    padding: 0.5em 0.8em!important;
    line-height: 1!important;
    color: #FBD085!important;
    border: none;
    text-align: center;
    font-size: 1em;
    font-weight: 400!important;
    text-decoration: none !important;
    text-transform: uppercase;
    transition: all 0.2s ease 0s;
    background-color: #2B2826!important;
    border-radius: 0!important;
    position: relative;
    
    transition: background-color 0.2s ease 0s;
}

a.pix-bouton[target="_blank"]::after,
.elementor-button[target="_blank"]::after,
.e-button-base[target="_blank"]::after {
    content: '';
    display: inline-block;
    width: 0.9em;
    height: 0.9em;
    background: url('i/arrow-external.svg') center center;
    background-size: contain;
    vertical-align: -3px;
    filter: brightness(0) saturate(100%) invert(83%) sepia(16%) saturate(1127%) hue-rotate(344deg) brightness(102%) contrast(97%);
}

a.pix-bouton[target="_blank"]:hover::after,
.elementor-button[target="_blank"]:hover::after,
.e-button-base[target="_blank"]:hover::after {
    filter: brightness(0) saturate(100%) invert(8%) sepia(2%) saturate(2978%) hue-rotate(341deg) brightness(96%) contrast(81%);
}


a.pix-bouton img,
.elementor-button img,
.e-button-base img,
form.elementor-form button[type=submit] img {
    width: 1.1em;
    height: 1.1em;
}


a.pix-bouton:hover,
.elementor-button:hover,
.e-button-base:hover,
form.elementor-form button[type=submit]:hover {
    background-color: #FBD085!important;
    color: #2B2826!important;
}

.elementor-button span  {
    font-weight: inherit!important;
    font-size: inherit!important;
}

form.elementor-form button[type=submit] span {
    font-weight: inherit!important;
}




.pix-deco-contenu {
    background: url('i/deco-contenu.svg') no-repeat bottom left 2%;
    background-size: max(20vw, 100px) auto;
}



@media (max-width: 767px) {
    a.pix-bouton,
    .elementor-button,
    form.elementor-form button[type=submit]{
        padding: 0.4em 0.7em 0.4em 0.7em;
        font-size: 1em;
        
    }
}



div.elementor-widget-container p:has(+ ul) {
    margin-bottom: 0px; /* Ajoute une marge uniquement si un <ul> suit */
  }

ul {
    margin-bottom: 10px;
}

ul>li {
    margin-bottom: 0px;
}


div.elementor-message-success {
    font-size: 16px;
    font-weight: bold;
    color: #106E3F;
}



.pswp {
    z-index: 150000;
}



#map iframe {
    vertical-align: top;
}



.grecaptcha-badge {
    visibility: hidden;
}

.no-shadow img {
    box-shadow: none;
}



form.elementor-form {}


p {
    margin-top: 0;
    margin-bottom: 10px;
}

.elementor-button[type="submit"] {
    text-transform: uppercase;
    font-weight: 400;
    background-color: transparent;
    color: #fff;
    line-height: 20px;
    padding: 15px 25px;
    border: 2px dashed #72927C;
    border-radius: 25px;
}

.elementor-button {
    padding: 13px 24px 10px 24px;
}

.elementor-button span {
    text-transform: uppercase;
    font-weight: 400;
    font-size: 15px;
}



form.elementor-form label.elementor-field-label {
    padding-bottom: 6px !important;
    font-family: "Staatliches", sans-serif;
    font-weight: 400;
    color: #2B2826;
}

.pix-nomarginbottom {
    margin-bottom: 0px !important;
}

.dialog-type-lightbox {
    z-index: 999999 !important;
}

.pix-wrapper-contenu ul.puce {
    margin: 0;
    padding: 0;
    margin-top: 5px;
    margin-bottom: 5px;
    padding-left: 14px;
}

.pix-wrapper-contenu ul.puce>li {
    list-style-type: none;
    background-image: url(i/puce.svg);
    background-repeat: no-repeat;
    padding-left: 18px;
    padding-right: 2px;
    background-position: 0px 12px;
    background-size: 10px;
    margin: 0px 0px 7px 0px;
    overflow: hidden;
}



.list-3-columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
}

.list-2-columns {
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
}



@media (max-width:800px) {
    .list-3-columns {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }
}

@media (max-width:490px) {

    .list-3-columns,
    .list-2-columns {
        -webkit-column-count: 1;
        -moz-column-count: 1;
        column-count: 1;
    }
}



ul.list-3-columns li,
ul.list-2-columns li {
    -webkit-column-break-inside: avoid;
    page-break-inside: avoid;
    break-inside: avoid;
}


.pix-contenu-top {
    padding-top: 30px;
}

.elementor-widget.elementor-widget.pix-contenu-bottom,
div.elementor-element.pix-contenu-bottom {
    margin-bottom: 50px;
}


body.single-post .elementor-post-navigation .post-navigation__next--label,
body.single-post .elementor-post-navigation .post-navigation__prev--label {
    text-transform: none;
    font-weight: 400;
    font-size: 15px;
}


.pix-noshadow {
    box-shadow: none !important;
}


.pix-wrapper-custom-gallery {
    clear: both;
}

.pix-custom-gallery {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

.pix-gallery-item {
    padding: 20px;
    width: 33.33%;
    text-align: center;
}

.pix-gallery-item img {
    box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.5) !important;
}

@media (max-width:980px) {
    .pix-gallery-item {
        padding: 15px;
        width: 50%;
    }
}

@media (max-width:540px) {
    .pix-gallery-item {
        padding: 10px;
        width: 100%;
    }
}



div.pix-right { float:right; padding-left:24px; max-width: 100%;}
div.pix-left { float:left; padding-right:24px;max-width: 100%;}

div.pix-right-responsive {float:right; padding-left:24px;max-width:100%;}
div.pix-left-responsive {float:left; padding-right:24px;max-width:100%;}


.pix-right-responsive, .pix-xl-right-responsive, .pix-s-right-responsive {
    box-shadow: 2px 2px 10px rgba(0,0,0,0.5) !important;
    margin:0;float:right; margin-left:16px;max-width:100%;
}
.pix-left-responsive, .pix-xl-left-responsive {
    box-shadow: 2px 2px 10px rgba(0,0,0,0.5) !important;
    margin:0;float:left; margin-right:16px;max-width:100%;
}


@media (max-width:1060px) {
    .pix-s-right-responsive {
        margin:0;float:none;width:auto;padding:0;text-align: center;
        display: block;
        margin: auto;margin-bottom:20px;
    }
}



@media (max-width:800px) {
    .pix-xl-right-responsive, .pix-xl-left-responsive {
        margin:0;float:none;width:auto;padding:0;text-align: center;
        display: block;
        margin: auto;margin-bottom:20px;
    }
}





@media (max-width:560px) {
    .pix-right-responsive, .pix-left-responsive {
        margin:0;float:none;width:auto;padding:0;text-align: center;
        display: block;
        margin: auto;margin-bottom:20px;
    }
}

@media (max-width:560px) {
    div.pix-right-responsive {float:none;width:auto;padding:0;padding-bottom:20px;text-align: center;}
    div.pix-left-responsive {float:none;width:auto;padding:0;padding-bottom:20px;text-align: center;}
}


.pix-wrapper-custom-gallery {
    clear:both;
}       
.pix-custom-gallery {
    display: flex;
    flex-wrap: wrap;
    align-items:center;
}
.pix-gallery-item {
    padding:20px;
    width: 33.33%;
    text-align: center;
}

.pix-gallery-item img {
    box-shadow: 2px 2px 10px rgba(0,0,0,0.5) !important;
}

@media (max-width:980px) {
    .pix-gallery-item {
        padding:15px;
        width: 50%;
    }
}

@media (max-width:540px) {
    .pix-gallery-item {
        padding:10px;
        width: 100%;
    }
}       



.pix-article-breadcrumb {
    font-size: 0.8em;
    color: #5A5858;
}
.pix-article-breadcrumb a {
    color: #5A5858;
    text-decoration: none;
}
.pix-article-breadcrumb .sep {
    margin: 0 4px;
}


.pix-slogan {
    padding: 20px!important;
    background: #CCDCD4!important;
}


.page-content .pix-fond-bois {
    background: #2B2826 url('i/savoirfaire-bg-2x.jpg') center center;
    padding: 20px;
    color: #fff;
    background-size: cover;
    background-repeat: no-repeat;
}
.page-content .pix-fond-bois .e-heading-base {
    color: #fff;
}



.wrapper-photo-ronde {
    display: flex !important;
    flex-direction: column;
    align-items: center;
}

.wrapper-photo-ronde img {
    width: 300px;
    height: 300px;
    border-radius: 50%;
    object-fit: cover;
    display: block;
}

.wrapper-photo-ronde h2, .wrapper-photo-ronde h3 {
    text-align: center;
    margin-top: 15px !important; /* ajuste l'espacement */
}













.wrapper-ratel {
    padding:80px 20px;
    background: linear-gradient(-45deg, #2B2826 0%, #3B3733 100%);
    margin-bottom:76px;
}

.boxed-ratel {
    color:#fff;
    max-width: 1580px;
    margin:auto;
    display: flex;
    gap:20px;
    align-items: center;
}

.boxed-ratel strong {font-size:26px;}


.boxed-ratel > div {
    flex: 1 1 0;
    min-width: 0;
    text-align: center;
}

a.bouton-or {
    margin-top:6px;
}

a.bouton-or {
    border: 2px solid #FBD085;
    color: #FBD085;
    background: transparent;
}


a.bouton-or:hover {
    border: 2px solid #FBD085 !important;
    color: #2B2826 !important;
    background: #FBD085 !important;
}



@media (max-width:1540px) {
    .boxed-ratel {flex-wrap:wrap;gap:0px;}
    .boxed-ratel > div:nth-child(1) {
        flex: 0 0 66%;
        max-width: 66%;
    }
    .boxed-ratel > div:nth-child(3) {
        flex: 0 0 34%;
        max-width: 34%;
    }
    .boxed-ratel > div:nth-child(2) {
        order: -1;
        flex: 0 0 100%;
        max-width: 100%;
    }
}




@media (max-width:770px) {
    .boxed-ratel {
        gap:40px;
    }
 .boxed-ratel > div:nth-child(1), .boxed-ratel > div:nth-child(3), .boxed-ratel > div:nth-child(2) {
        flex: 0 0 100%;
        max-width: 100%;
    }

}


/* Badge sticky "Fabrique en France" */
.wrapper-fabrique-en-france {
    position: fixed;
    right: 0;
    top: 170px;
    transform: translateY(-50%) rotate(
270deg);
    transform-origin: bottom right;
    z-index: 999999;
    pointer-events: none;
}

.fabrique-en-france {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    gap: 5px;
    background: #ffffff;
    color: #1f1f1f;
    border-radius: 10px 10px 0 0;
    box-shadow: -2px 8px 20px rgba(0, 0, 0, 0.2);
    padding: 8px 10px;
    font-family: "Roboto", sans-serif;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.fabrique-en-france img {
    width: 30px;
    height: 15px;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.1);
}

@media (max-width: 1000px) {
    .fabrique-en-france {
        font-size: 16px;
        padding: 6px 8px;
    }
}

/* ── pix-vertical-hero ── */
.pix-vertical-hero {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    background-color: #2B2826;
    overflow: hidden;
    min-height: 440px;
    padding: 20px 0 20px 20px; 
}

.pix-vertical-hero__image {
    flex: 1 1 auto;
    overflow: hidden;
}

.pix-vertical-hero__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.pix-vertical-hero__label {
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #2B2826;
    padding: 0 1em;
}

.pix-vertical-hero__label span {
    display: block;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    color: #FBD085;
    font-size: clamp(20px, 4vw, 60px);
    font-weight: 400;
    text-transform: uppercase;
    line-height: 1;
    white-space: nowrap;
    font-family: "Staatliches", sans-serif;
}

@media (max-width: 500px) {
    .pix-vertical-hero {
        min-height: 300px;
        padding: 10px 0 10px 10px;
    }
}




.pix-bande-outils {
    position: relative;
}

.pix-bande-outils::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 50%;
    height: 100%;
    background: url('i/bg-bande-outils.webp') no-repeat center center/cover;

    mask-image: linear-gradient(to right, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
    -webkit-mask-image: linear-gradient(to right, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
}

@media 
(-webkit-min-device-pixel-ratio: 1.5), 
(min-resolution: 144dpi) {
    .pix-bande-outils::before {
        background-image: url('i/bg-bande-outils-2x.webp');
    }
}

@media (max-width: 800px) {
    .pix-bande-outils::before {
        top: auto;
        bottom: 0;
        width: 100%;
        height: 50%;
        mask-image: linear-gradient(to top, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
        -webkit-mask-image: linear-gradient(to top, rgba(255, 255, 255, 0.5) 0%, rgba(255, 255, 255, 0) 100%);
    }
}

.footer-entite {
    text-align: center;
    font-size: 16px;
    padding: 5px 5px;
    font-style: italic;
    margin-top: 20px;
    border: 1px solid #706760;
    max-width: 250px;
    margin: 20px auto;}

.footer-entite a {
    color:#FBD085;
}
.footer-entite a:hover {
    text-decoration: underline;
}