.elementor-8037 .elementor-element.elementor-element-422ed447{--display:flex;--min-height:90px;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--flex-wrap:nowrap;--margin-top:10px;--margin-bottom:10px;--margin-left:20px;--margin-right:20px;}.elementor-8037 .elementor-element.elementor-element-3bd732d5{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-8037 .elementor-element.elementor-element-73a414a1{width:100%;max-width:100%;}.elementor-8037 .elementor-element.elementor-element-31733637{--display:flex;--justify-content:flex-end;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:12px 12px;--row-gap:12px;--column-gap:12px;--flex-wrap:nowrap;}.elementor-8037 .elementor-element.elementor-element-2f802dce{width:auto;max-width:auto;}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-name a{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__product-price{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons .elementor-button{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--view-cart{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__footer-buttons a.elementor-button--checkout{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-woocommerce-menu-cart .woocommerce-mini-cart__empty-message{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-8037 .elementor-element.elementor-element-c15de15{width:auto;max-width:auto;--divider-style:solid;--subtotal-divider-style:solid;--elementor-remove-from-cart-button:none;--remove-from-cart-button:block;--cart-border-style:none;--cart-footer-layout:1fr 1fr;--products-max-height-sidecart:calc(100vh - 240px);--products-max-height-minicart:calc(100vh - 385px);}.elementor-8037 .elementor-element.elementor-element-c15de15 .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-8037 .elementor-element.elementor-element-6210f48e{--display:flex;--min-height:50px;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:20px 20px;--row-gap:20px;--column-gap:20px;}.elementor-8037 .elementor-element.elementor-element-27e44c25.elementor-element{--align-self:flex-start;}.elementor-widget-nav-menu .elementor-nav-menu .elementor-item{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item{color:var( --e-global-color-text );fill:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:hover,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.elementor-item-active,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item.highlighted,
					.elementor-widget-nav-menu .elementor-nav-menu--main .elementor-item:focus{color:var( --e-global-color-accent );fill:var( --e-global-color-accent );}.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:before,
					.elementor-widget-nav-menu .elementor-nav-menu--main:not(.e--pointer-framed) .elementor-item:after{background-color:var( --e-global-color-accent );}.elementor-widget-nav-menu .e--pointer-framed .elementor-item:before,
					.elementor-widget-nav-menu .e--pointer-framed .elementor-item:after{border-color:var( --e-global-color-accent );}.elementor-widget-nav-menu{--e-nav-menu-divider-color:var( --e-global-color-text );}.elementor-widget-nav-menu .elementor-nav-menu--dropdown .elementor-item, .elementor-widget-nav-menu .elementor-nav-menu--dropdown  .elementor-sub-item{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle{margin:0 auto;}.elementor-8037 .elementor-element.elementor-element-4b816ca{--display:flex;}@media(min-width:768px){.elementor-8037 .elementor-element.elementor-element-31733637{--content-width:300px;}.elementor-8037 .elementor-element.elementor-element-6210f48e{--content-width:1400px;}}@media(max-width:1024px){.elementor-8037 .elementor-element.elementor-element-422ed447{--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:8px 8px;--row-gap:8px;--column-gap:8px;--flex-wrap:nowrap;}.elementor-8037 .elementor-element.elementor-element-73a414a1{width:100%;max-width:100%;}.elementor-8037 .elementor-element.elementor-element-31733637{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:8px 8px;--row-gap:8px;--column-gap:8px;}.elementor-8037 .elementor-element.elementor-element-6210f48e{--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;}.elementor-8037 .elementor-element.elementor-element-340650fa{width:100%;max-width:100%;}}@media(max-width:767px){.elementor-8037 .elementor-element.elementor-element-422ed447{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:12px;--padding-right:0px;}.elementor-8037 .elementor-element.elementor-element-31733637{--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;}.elementor-8037 .elementor-element.elementor-element-31733637.e-con{--align-self:center;}}/* Start custom CSS for fibosearch, class: .elementor-element-73a414a1 *//* =========================================================
   FIBOSEARCH
   Le conteneur parent contrôle la largeur
========================================================= */

.elementor-8037 .elementor-element.elementor-element-73a414a1 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.elementor-8037 .elementor-element.elementor-element-73a414a1 .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.elementor-8037 .elementor-element.elementor-element-73a414a1 .dgwt-wcas-search-wrapp {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    box-sizing: border-box;
}

.elementor-8037 .elementor-element.elementor-element-73a414a1 .dgwt-wcas-search-input {
    width: 100% !important;
    min-width: 0 !important;

    min-height: 48px !important;
    border-radius: 999px !important;

    box-sizing: border-box;
}


/* Mobile */
@media (max-width: 767px) {

    .elementor-8037 .elementor-element.elementor-element-73a414a1 .dgwt-wcas-search-input {
        min-height: 44px !important;
        font-size: 15px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3bd732d5 *//* =========================================================
   CONTENEUR RECHERCHE — LARGEUR FLUIDE
========================================================= */

.elementor-8037 .elementor-element.elementor-element-3bd732d5 {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box;
}


/* Desktop large */
@media (min-width: 1400px) {

    .elementor-8037 .elementor-element.elementor-element-3bd732d5 {
        max-width: 800px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}


/* Desktop compact / iPad paysage */
@media (min-width: 1024px) and (max-width: 1399px) {

    .elementor-8037 .elementor-element.elementor-element-3bd732d5 {
        /*
         * 1399px => environ 672px
         * 1200px => environ 576px
         * 1100px => environ 528px
         * 1024px => environ 492px
         */
        max-width: clamp(480px, 48vw, 680px) !important;

        margin-left: auto !important;
        margin-right: auto !important;
    }
}


/* Tablette / mobile */
@media (max-width: 1023px) {

    .elementor-8037 .elementor-element.elementor-element-3bd732d5 {
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-2f802dce *//* =========================================================
   Bouton Mon Atelier
   Même gabarit que le bouton Panier
========================================================= */

.tcs-btn-account {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;

    padding: 12px 16px;
    min-height: 46px;
    box-sizing: border-box;

    background: linear-gradient(
        135deg,
        rgba(32,23,18,.95),
        rgba(18,13,11,.95)
    );

    border: 1px solid #b87333;
    border-bottom: 3px solid #8f5727;
    border-radius: 999px;

    color: #e2bd69;
    text-decoration: none;

    font-family: "Saira Extra Condensed", Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .6px;
    text-transform: uppercase;

    box-shadow: 0 6px 22px rgba(0,0,0,.35);

    transition:
        transform .25s ease,
        box-shadow .25s ease,
        border-color .25s ease,
        color .25s ease;
}

.tcs-btn-account:hover {
    color: #fff;
    text-decoration: none;
    border-color: #d59a5c;
    border-bottom-color: #8f5727;

    transform: translateY(1px);
    box-shadow: 0 3px 12px rgba(0,0,0,.45);
}

.tcs-btn-account-icon {
    font-size: 16px;
    line-height: 1;
}/* End custom CSS */
/* Start custom CSS for woocommerce-menu-cart, class: .elementor-element-c15de15 *//* =========================================================
   Bouton Panier
========================================================= */

.elementor-8037 .elementor-element.elementor-element-c15de15 .elementor-menu-cart__toggle_button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;

    padding: 12px 16px;
    min-height: 46px;
    box-sizing: border-box;

    border-radius: 999px;
    text-decoration: none;

    font-family: "Saira Extra Condensed", Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .6px;
    text-transform: uppercase;

    color: #23272b;
    background: linear-gradient(
        90deg,
        #b6753a 0%,
        #ffe164 80%
    );

    box-shadow: 0 6px 22px rgba(0,0,0,.35);
    border-bottom: 3px solid #c0843f;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

.elementor-8037 .elementor-element.elementor-element-c15de15 .elementor-menu-cart__toggle_button:hover {
    transform: translateY(1px);
    box-shadow: 0 3px 12px rgba(0,0,0,.45);
}

@media (max-width: 767px) {
    .elementor-8037 .elementor-element.elementor-element-c15de15 .elementor-menu-cart__toggle_button {
        padding: 9px 12px;
        min-height: 42px;
        font-size: 14px;
        gap: 6px;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-31733637 *//* =========================================================
   CONTENEUR MON ATELIER + PANIER
========================================================= */

.elementor-8037 .elementor-element.elementor-element-31733637,
.elementor-8037 .elementor-element.elementor-element-31733637 > .e-con-inner {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px;
}


/* Force les deux widgets à rester à leur largeur naturelle */
.elementor-8037 .elementor-element.elementor-element-31733637 .elementor-widget-html,
.elementor-8037 .elementor-element.elementor-element-31733637 .elementor-widget-woocommerce-menu-cart,
.elementor-8037 .elementor-element.elementor-element-31733637 .elementor-widget-menu-cart {
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
}


/* =========================================================
   DESKTOP COMPACT / TABLETTE LARGE
   1024px à 1399px
========================================================= */

@media (min-width: 1024px) and (max-width: 1399px) {

    .elementor-8037 .elementor-element.elementor-element-31733637,
    .elementor-8037 .elementor-element.elementor-element-31733637 > .e-con-inner {
        justify-content: flex-end !important;
        gap: 6px !important;
    }

    .tcs-btn-account {
        padding: 10px 13px !important;
        min-height: 42px !important;
        font-size: 15px !important;
        gap: 6px !important;
    }

    .tcs-btn-account-icon {
        font-size: 14px !important;
    }

    .elementor-8037 .elementor-element.elementor-element-31733637 .elementor-menu-cart__toggle_button {
        padding: 10px 13px !important;
        min-height: 42px !important;
        font-size: 15px !important;
    }
}


/* =========================================================
   TABLETTE / MOBILE
   1023px et -
========================================================= */

@media (max-width: 1023px) {

    .elementor-8037 .elementor-element.elementor-element-31733637 {
        width: 100% !important;
        max-width: 100% !important;
    }

    .elementor-8037 .elementor-element.elementor-element-31733637,
    .elementor-8037 .elementor-element.elementor-element-31733637 > .e-con-inner {
        justify-content: center !important;
        gap: 8px !important;
    }
}


/* =========================================================
   MOBILE
   767px et -
========================================================= */

@media (max-width: 767px) {

    .tcs-btn-account {
        padding: 9px 12px !important;
        min-height: 42px !important;
        font-size: 14px !important;
        gap: 6px !important;
    }

    .tcs-btn-account-icon {
        font-size: 14px !important;
    }

    .elementor-8037 .elementor-element.elementor-element-31733637 .elementor-menu-cart__toggle_button {
        padding: 9px 12px !important;
        min-height: 42px !important;
        font-size: 14px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-422ed447 *//* =========================================================
   CONTENEUR PRINCIPAL HEADER
========================================================= */

.elementor-8037 .elementor-element.elementor-element-422ed447 {
    width: 100%;
    max-width: 100%;
    margin: 0;
    box-sizing: border-box;

    background: #23272b;
    border-bottom: 1px solid rgba(182,117,58,.45);
    box-shadow: 0 6px 18px rgba(0,0,0,.18);
}

.elementor-8037 .elementor-element.elementor-element-422ed447 > .elementor-element {
    min-width: 0 !important;
}


/* =========================================================
   DESKTOP LARGE
   1400px et +
========================================================= */

@media (min-width: 1400px) {

    .elementor-8037 .elementor-element.elementor-element-422ed447 {
        display: grid !important;

        grid-template-columns:
            minmax(120px, 1fr)
            minmax(0, 800px)
            minmax(280px, 1fr);

        align-items: center;
        column-gap: 24px;
    }

    .elementor-8037 .elementor-element.elementor-element-422ed447 > .elementor-element:nth-child(1) {
        width: auto !important;
        min-width: 0 !important;
        justify-self: start;
    }

    .elementor-8037 .elementor-element.elementor-element-422ed447 > .elementor-element:nth-child(2) {
        width: 100% !important;
        max-width: 800px !important;
        min-width: 0 !important;
        justify-self: center;
    }

    .elementor-8037 .elementor-element.elementor-element-422ed447 > .elementor-element:nth-child(3) {
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        justify-self: end;
    }
}


/* =========================================================
   DESKTOP COMPACT / iPAD PAYSAGE
   1024px à 1399px
========================================================= */

@media (min-width: 1024px) and (max-width: 1399px) {

    .elementor-8037 .elementor-element.elementor-element-422ed447 {
        display: grid !important;

        grid-template-columns:
            90px
            minmax(0, 1fr)
            max-content;

        align-items: center;
        column-gap: 12px;

        width: 100% !important;
        max-width: 100% !important;

        padding: 8px 12px !important;
        box-sizing: border-box !important;
    }

    .elementor-8037 .elementor-element.elementor-element-422ed447 > .elementor-element:nth-child(1) {
        width: auto !important;
        min-width: 0 !important;
        justify-self: start;
    }

    .elementor-8037 .elementor-element.elementor-element-422ed447 > .elementor-element:nth-child(2) {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        justify-self: stretch;
    }

    .elementor-8037 .elementor-element.elementor-element-422ed447 > .elementor-element:nth-child(3) {
        width: auto !important;
        min-width: 0 !important;
        max-width: 100% !important;
        justify-self: end;
    }
}


/* =========================================================
   TABLETTE / MOBILE
   1023px et -
========================================================= */

@media (max-width: 1023px) {

    .elementor-8037 .elementor-element.elementor-element-422ed447 {
        display: flex !important;
        flex-direction: column !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;

        align-items: center;
        justify-content: center;

        box-sizing: border-box !important;
    }

    .elementor-8037 .elementor-element.elementor-element-422ed447 > .elementor-element {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
}/* End custom CSS */
/* Start custom CSS for woocommerce-breadcrumb, class: .elementor-element-27e44c25 */.elementor-8037 .elementor-element.elementor-element-27e44c25 {
    margin-left: 20px;
    margin-right: 24px;
    align-self: center;
    white-space: nowrap;
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-340650fa *//* =========================================================
   MENU PRINCIPAL
========================================================= */

.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--main .elementor-item {
    color: #f3eadf !important;
    font-family: "Saira Extra Condensed", Arial, sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: .6px;
    text-transform: uppercase;
    padding: 14px 12px;
}

.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--main .elementor-item:hover,
.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--main .elementor-item.elementor-item-active {
    color: #ffe164 !important;
}

.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--main .elementor-item::after {
    background-color: #b6753a !important;
    height: 2px;
}


/* =========================================================
   SOUS-MENUS — DESKTOP
========================================================= */

.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown {
    background: #23272b !important;
    border: 1px solid rgba(182,117,58,.45);
    border-radius: 10px;
    box-shadow: 0 10px 28px rgba(0,0,0,.35);
    overflow: hidden;
}

.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown .elementor-item {
    color: #f3eadf !important;
    background: transparent !important;

    font-family: "Saira Extra Condensed", Arial, sans-serif;
    font-size: 16px;
    font-weight: 600;

    padding: 12px 18px;
}

.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
    color: #ffe164 !important;
    background: rgba(182,117,58,.14) !important;
}

/* Évite que les liens visités deviennent gris */
.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown a,
.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown a:visited {
    color: #f3eadf !important;
}

.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown a:hover,
.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown a.elementor-item-active {
    color: #ffe164 !important;
    background: rgba(182,117,58,.14) !important;
}


/* =========================================================
   TABLETTE / MOBILE
========================================================= */

@media (max-width: 1024px) {

    /* Menu déroulé pleine largeur */
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown {
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;

        background: #1b1f22 !important;

        border: 0;
        border-top: 1px solid rgba(182,117,58,.35);
        border-radius: 0;

        box-shadow: none;
    }

    /* Liens du menu mobile */
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown .elementor-item {
        width: 100%;

        padding: 11px 20px !important;
        text-align: left;

        color: #f3eadf !important;
        background: transparent !important;
    }

    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown .elementor-item:hover,
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
        color: #ffe164 !important;
        background: rgba(182,117,58,.12) !important;
    }

    /* Hamburger / fermeture */
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle {
        color: #ffe164 !important;
        background: transparent !important;
    }

    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle i,
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle svg,
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle .e-font-icon-svg {
        color: #ffe164 !important;
        fill: #ffe164 !important;
        stroke: #ffe164 !important;
    }

    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle:hover {
        color: #b6753a !important;
    }

    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle:hover i,
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle:hover svg,
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle:hover .e-font-icon-svg {
        color: #b6753a !important;
        fill: #b6753a !important;
        stroke: #b6753a !important;
    }

    /* État ouvert / X */
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle.elementor-active,
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle.elementor-active i,
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle.elementor-active svg,
    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-menu-toggle.elementor-active .e-font-icon-svg {
        color: #ffe164 !important;
        fill: #ffe164 !important;
        stroke: #ffe164 !important;
    }
}

@media (max-width: 1024px) {

    .elementor-8037 .elementor-element.elementor-element-340650fa {
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
        margin: 0 !important;
        overflow-x: hidden !important;
    }

    .elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown .elementor-item {
        width: 100%;
        box-sizing: border-box;
    }
}
.elementor-8037 .elementor-element.elementor-element-340650fa,
.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;
}
.elementor-8037 .elementor-element.elementor-element-340650fa .elementor-nav-menu--dropdown {
    left: 0 !important;
    right: auto !important;
}

@media (min-width: 1025px) {
    .elementor-8037 .elementor-element.elementor-element-340650fa {
        width: auto !important;
        max-width: none !important;
        flex: 1 1 auto !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-6210f48e */.elementor-8037 .elementor-element.elementor-element-6210f48e {
    background: #1b1f22;
    border-bottom: 1px solid rgba(182,117,58,.35);
}
.elementor-8037 .elementor-element.elementor-element-6210f48e {
    align-items: center !important;
    min-height: 50px;
    padding-left: 10px;
    padding-right: 10px;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-f028c1d *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 1 : HERO
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero{
  --tcs-bg:#23272b;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#c9c3b8;

  padding:72px 0;
  color:var(--tcs-text);

  background:
    radial-gradient(
      circle at top right,
      rgba(255,225,100,.10),
      transparent 34%
    ),
    radial-gradient(
      circle at bottom left,
      rgba(182,117,58,.12),
      transparent 38%
    ),
    linear-gradient(
      135deg,
      #1d2125,
      #23272b
    );
}


/* ==========================================================
   Structure
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-content{
  width:min(1180px, calc(100% - 40px));
  margin:0 auto;

  display:grid;

  grid-template-columns:
    minmax(0,1.1fr)
    minmax(320px,.9fr);

  gap:46px;

  align-items:center;
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-text{
  min-width:0;
}


/* ==========================================================
   Eyebrow
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-eyebrow{
  margin:0 0 14px;

  color:var(--tcs-copper);

  font-size:.86rem;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.16em;
}


/* ==========================================================
   Titre
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero h1{
  margin:0 0 22px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:clamp(
    2.6rem,
    4.4vw,
    4.2rem
  );

  line-height:1.02;

  font-weight:700;

  text-transform:uppercase;
}


/* ==========================================================
   Texte
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-lead{
  margin:0 0 18px;

  color:var(--tcs-text);

  font-size:1.35rem;

  line-height:1.5;
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero p{
  color:var(--tcs-muted);

  line-height:1.7;
}


/* ==========================================================
   Boutons
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-actions{
  display:flex;

  flex-wrap:wrap;

  gap:12px;

  margin-top:28px;
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-btn{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  min-height:48px;

  padding:12px 20px;

  border-radius:999px;

  text-decoration:none !important;

  font-family:"Saira Extra Condensed",Arial,sans-serif;

  font-weight:800;

  text-transform:uppercase;

  letter-spacing:.06em;

  transition:
    transform .2s ease,
    box-shadow .2s ease,
    background .2s ease,
    border-color .2s ease;
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-btn:hover{
  transform:translateY(-2px);
}


/* Bouton principal */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-btn-primary{
  color:#23272b !important;

  background:
    linear-gradient(
      90deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );

  box-shadow:
    0 8px 24px
    rgba(182,117,58,.22);
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-btn-primary:hover{
  box-shadow:
    0 12px 30px
    rgba(255,225,100,.22);
}


/* Bouton secondaire */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-btn-secondary{
  color:var(--tcs-gold) !important;

  border:
    1px solid
    rgba(255,225,100,.5);

  background:
    rgba(255,225,100,.03);
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-btn-secondary:hover{
  background:
    rgba(255,225,100,.10);
}


/* ==========================================================
   Zone image
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-visual{
  min-width:0;
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-image{
  position:relative;

  min-height:380px;

  overflow:hidden;

  border:
    1px solid
    rgba(255,225,100,.18);

  border-radius:22px;

  background:#1d2125;

  box-shadow:
    0 18px 50px
    rgba(0,0,0,.30);
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-image img{
  display:block;

  width:100%;
  height:100%;

  min-height:380px;

  object-fit:cover;

  object-position:center;
}

.elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-image::after{
  content:"";

  position:absolute;
  inset:0;

  pointer-events:none;

  background:
    linear-gradient(
      135deg,
      rgba(35,39,43,.02),
      rgba(35,39,43,.10)
    );
}


/* ==========================================================
   Tablette
   ========================================================== */

@media (max-width:900px){

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-content{
    grid-template-columns:1fr;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-visual{
    order:-1;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-image,
  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-image img{
    min-height:280px;
  }
}


/* ==========================================================
   Mobile
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero{
    padding:44px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-content{
    width:calc(100% - 24px);

    gap:26px;
  }


  /* Texte entièrement centré */

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-text{
    text-align:center;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-eyebrow{
    text-align:center;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero h1{
    font-size:2.05rem;

    text-align:center;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-lead{
    max-width:100%;

    margin-left:auto;
    margin-right:auto;

    font-size:1.08rem;

    text-align:center;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero p{
    text-align:center;
  }


  /* Boutons */

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-actions{
    flex-direction:column;

    align-items:stretch;

    margin-top:24px;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-btn{
    width:100%;

    text-align:center;
  }


  /* Image */

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-image,
  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-image img{
    min-height:220px;
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero-content{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-hero h1{
    font-size:1.9rem;
  }

  .elementor-8037 .elementor-element.elementor-element-f028c1d .tcs-atelier-lead{
    font-size:1rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-ef2fbc6 *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 2 : INTRODUCTION / L'ATELIER
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro{
  --tcs-bg:#23272b;
  --tcs-bg-soft:#292e33;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#c9c3b8;

  position:relative;

  padding:78px 0;

  color:var(--tcs-text);

  background:
    radial-gradient(
      circle at bottom right,
      rgba(182,117,58,.08),
      transparent 36%
    ),
    linear-gradient(
      180deg,
      #23272b,
      #252a2f
    );

  overflow:hidden;
}


/* ==========================================================
   Conteneur
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-inner{
  width:min(1180px, calc(100% - 40px));

  margin:0 auto;

  display:grid;

  grid-template-columns:
    minmax(0,.95fr)
    minmax(380px,1.05fr);

  gap:72px;

  align-items:center;
}


/* ==========================================================
   Colonne texte
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-content{
  min-width:0;
  max-width:640px;
}

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-kicker{
  margin:0 0 12px;

  color:var(--tcs-copper);

  font-size:.84rem;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.17em;
}

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro h2{
  margin:0 0 24px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:clamp(
    1.9rem,
    3.2vw,
    2.8rem
  );

  line-height:1.12;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-lead{
  margin:0 0 22px;

  color:var(--tcs-text);

  font-size:1.12rem;

  line-height:1.72;
}

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-content > p:not(
  .tcs-atelier-intro-kicker
):not(
  .tcs-atelier-intro-lead
){
  margin:0 0 18px;

  color:var(--tcs-muted);

  font-size:1rem;

  line-height:1.75;
}


/* ==========================================================
   Cartes valeurs
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-values{
  display:flex;

  flex-direction:column;

  gap:18px;
}

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card{
  position:relative;

  display:grid;

  grid-template-columns:
    58px
    minmax(0,1fr);

  gap:20px;

  align-items:center;

  min-height:138px;

  padding:26px 28px;

  border:
    1px solid
    rgba(255,225,100,.16);

  border-radius:20px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.035),
      rgba(255,255,255,.012)
    );

  box-shadow:
    0 12px 34px
    rgba(0,0,0,.20);

  overflow:hidden;

  transition:
    transform .2s ease,
    border-color .2s ease,
    box-shadow .2s ease;
}

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:4px;
  height:100%;

  background:
    linear-gradient(
      180deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );
}


/* ==========================================================
   Numéro
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-icon{
  display:flex;

  align-items:center;
  justify-content:center;

  width:50px;
  height:50px;

  border:
    1px solid
    rgba(255,225,100,.26);

  border-radius:50%;

  color:var(--tcs-gold);

  background:
    rgba(255,225,100,.045);

  font-family:"Cinzel",serif;

  font-size:.85rem;

  font-weight:700;
}


/* ==========================================================
   Texte des cartes
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card h3{
  margin:0 0 8px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:1.08rem;

  line-height:1.35;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card p{
  margin:0;

  color:var(--tcs-muted);

  font-size:.95rem;

  line-height:1.65;
}


/* ==========================================================
   Hover desktop
   ========================================================== */

@media (hover:hover){

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card:hover{
    transform:translateX(4px);

    border-color:
      rgba(255,225,100,.28);

    box-shadow:
      0 16px 40px
      rgba(0,0,0,.26);
  }
}


/* ==========================================================
   Tablette
   ========================================================== */

@media (max-width:900px){

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro{
    padding:64px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-inner{
    width:min(
      100% - 32px,
      760px
    );

    grid-template-columns:1fr;

    gap:38px;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-content{
    max-width:none;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro h2 br{
    display:none;
  }
}


/* ==========================================================
   Mobile
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro{
    padding:50px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-inner{
    width:calc(100% - 24px);

    gap:30px;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro h2{
    margin-bottom:20px;

    font-size:1.65rem;

    line-height:1.22;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-lead{
    font-size:1.03rem;

    line-height:1.65;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-content > p:not(
    .tcs-atelier-intro-kicker
  ):not(
    .tcs-atelier-intro-lead
  ){
    font-size:.96rem;

    line-height:1.68;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card{
    grid-template-columns:
      44px
      minmax(0,1fr);

    gap:14px;

    min-height:auto;

    padding:20px 18px;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-icon{
    width:40px;
    height:40px;

    font-size:.75rem;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card h3{
    font-size:1rem;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card p{
    font-size:.92rem;
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-inner{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro h2{
    font-size:1.5rem;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-card{
    grid-template-columns:1fr;
  }

  .elementor-8037 .elementor-element.elementor-element-ef2fbc6 .tcs-atelier-intro-icon{
    margin-bottom:2px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-624e7bb *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 3 : PROCESSUS DE FABRICATION
   Desktop = grille
   Mobile = carrousel tactile
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process{
  --tcs-bg:#202428;
  --tcs-bg-card:#282d32;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#c9c3b8;

  position:relative;
  padding:78px 0;
  color:var(--tcs-text);

  background:
    radial-gradient(
      circle at top left,
      rgba(182,117,58,.09),
      transparent 34%
    ),
    radial-gradient(
      circle at bottom right,
      rgba(255,225,100,.05),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      #202428,
      #252a2e
    );

  overflow:hidden;
}


/* ==========================================================
   Conteneur
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-inner{
  width:min(1240px, calc(100% - 40px));
  margin:0 auto;
}


/* ==========================================================
   En-tête
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-heading{
  max-width:760px;
  margin:0 auto 38px;
  text-align:center;
}

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-kicker{
  margin:0 0 12px;
  color:var(--tcs-copper);
  font-size:.84rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.17em;
}

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process h2{
  margin:0 0 16px;
  color:var(--tcs-gold);
  font-family:"Cinzel",serif;
  font-size:clamp(2rem,3.7vw,3.1rem);
  line-height:1.12;
  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-intro{
  margin:0 auto;
  max-width:680px;
  color:var(--tcs-muted);
  font-size:1.03rem;
  line-height:1.7;
}


/* ==========================================================
   Grille desktop
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-grid{
  position:relative;

  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));

  gap:18px;
}


/* Ligne de liaison desktop */

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-grid::before{
  content:"";

  position:absolute;

  top:42px;
  left:8%;
  right:8%;

  height:1px;

  background:
    linear-gradient(
      90deg,
      rgba(182,117,58,.12),
      rgba(255,225,100,.30),
      rgba(182,117,58,.12)
    );

  z-index:0;
}


/* ==========================================================
   Cartes
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card{
  position:relative;
  z-index:1;

  min-width:0;

  padding:24px 18px 22px;

  border:
    1px solid
    rgba(255,225,100,.14);

  border-radius:20px;

  background:
    linear-gradient(
      180deg,
      rgba(255,255,255,.035),
      rgba(255,255,255,.012)
    ),
    var(--tcs-bg-card);

  box-shadow:
    0 14px 38px
    rgba(0,0,0,.22);

  overflow:hidden;

  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card::before{
  content:"";

  position:absolute;
  top:0;
  left:0;

  width:100%;
  height:3px;

  background:
    linear-gradient(
      90deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );
}


/* ==========================================================
   Numéro
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-number{
  position:relative;
  z-index:2;

  display:flex;
  align-items:center;
  justify-content:center;

  width:54px;
  height:54px;

  margin:0 auto 18px;

  border:
    1px solid
    rgba(255,225,100,.28);

  border-radius:50%;

  color:var(--tcs-gold);

  background:#282d32;

  font-family:"Cinzel",serif;
  font-size:.88rem;
  font-weight:700;

  box-shadow:
    0 0 0 8px
    rgba(32,36,40,.92);
}


/* ==========================================================
   Texte cartes
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card h3{
  margin:0 0 12px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:1.03rem;
  line-height:1.32;

  font-weight:700;

  text-align:center;
}

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card p{
  margin:0 0 10px;

  color:var(--tcs-muted);

  font-size:.91rem;
  line-height:1.58;

  text-align:center;
}

.elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card p:last-child{
  margin-bottom:0;
}


/* ==========================================================
   Hover desktop
   ========================================================== */

@media (hover:hover){

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card:hover{
    transform:translateY(-5px);

    border-color:
      rgba(255,225,100,.28);

    box-shadow:
      0 18px 46px
      rgba(0,0,0,.30);
  }
}


/* ==========================================================
   Tablette
   ========================================================== */

@media (max-width:1100px) and (min-width:768px){

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-grid{
    grid-template-columns:
      repeat(2,minmax(0,1fr));
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-grid::before{
    display:none;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card:last-child{
    grid-column:1 / -1;
    max-width:560px;
    width:100%;
    justify-self:center;
  }
}


/* ==========================================================
   Mobile : carrousel tactile
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process{
    padding:48px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-inner{
    width:100%;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-heading{
    width:calc(100% - 24px);
    margin:0 auto 28px;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process h2{
    font-size:1.68rem;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-intro{
    font-size:.98rem;
    line-height:1.68;
  }


  /* Défilement horizontal */

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-grid{
    display:flex;

    gap:14px;

    overflow-x:auto;
    overflow-y:hidden;

    padding:
      4px
      12px
      18px;

    scroll-snap-type:x mandatory;

    scroll-padding-left:12px;

    -webkit-overflow-scrolling:touch;

    scrollbar-width:none;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-grid::-webkit-scrollbar{
    display:none;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-grid::before{
    display:none;
  }


  /* Une carte légèrement plus petite que l'écran
     pour laisser apparaître la suivante */

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card,
  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card:last-child{
    flex:0 0 86%;

    width:auto;
    max-width:none;

    grid-column:auto;

    padding:22px 18px;

    scroll-snap-align:start;

    scroll-snap-stop:always;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-number{
    width:48px;
    height:48px;

    margin-bottom:16px;

    font-size:.78rem;

    box-shadow:
      0 0 0 6px
      rgba(32,36,40,.92);
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card h3{
    font-size:1rem;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card p{
    font-size:.92rem;
    line-height:1.58;
  }


  /* Petit indice visuel de swipe */

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-grid{
    mask-image:
      linear-gradient(
        to right,
        transparent 0,
        #000 12px,
        #000 calc(100% - 18px),
        transparent 100%
      );

    -webkit-mask-image:
      linear-gradient(
        to right,
        transparent 0,
        #000 12px,
        #000 calc(100% - 18px),
        transparent 100%
      );
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-heading{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process h2{
    font-size:1.5rem;
  }

  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card,
  .elementor-8037 .elementor-element.elementor-element-624e7bb .tcs-process-card:last-child{
    flex-basis:88%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e0abc1d *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 4 : PLUSIEURS UNIVERS
   Desktop = grille
   Mobile = carrousel tactile
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers{
  --tcs-bg:#23272b;
  --tcs-bg-card:#2b3035;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#d4cec2;

  position:relative;

  padding:78px 0;

  color:var(--tcs-text);

  background:
    radial-gradient(
      circle at top right,
      rgba(255,225,100,.07),
      transparent 30%
    ),
    radial-gradient(
      circle at bottom left,
      rgba(182,117,58,.08),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      #24292e,
      #22262a
    );

  overflow:hidden;
}


/* ==========================================================
   Conteneur
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-inner{
  width:min(1180px, calc(100% - 40px));
  margin:0 auto;
}


/* ==========================================================
   En-tête
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-heading{
  max-width:760px;
  margin:0 auto 40px;
  text-align:center;
}

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-kicker{
  margin:0 0 12px;

  color:var(--tcs-copper);

  font-size:.84rem;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.17em;
}

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers h2{
  margin:0 0 18px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:clamp(
    2rem,
    3.7vw,
    3rem
  );

  line-height:1.12;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-intro{
  margin:0 auto;

  max-width:700px;

  color:var(--tcs-muted);

  font-size:1.04rem;

  line-height:1.72;
}


/* ==========================================================
   Grille desktop
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-grid{
  display:grid;

  grid-template-columns:
    repeat(2, minmax(0,1fr));

  gap:20px;
}


/* ==========================================================
   Cartes
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card{
  position:relative;

  display:grid;

  grid-template-columns:
    64px
    minmax(0,1fr);

  gap:20px;

  align-items:center;

  min-height:172px;

  padding:24px 26px;

  border:
    1px solid
    rgba(255,225,100,.14);

  border-radius:22px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.035),
      rgba(255,255,255,.012)
    ),
    var(--tcs-bg-card);

  box-shadow:
    0 14px 40px
    rgba(0,0,0,.22);

  overflow:hidden;

  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease;
}

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card::before{
  content:"";

  position:absolute;

  left:0;
  top:0;

  width:4px;
  height:100%;

  background:
    linear-gradient(
      180deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );
}


/* ==========================================================
   Numéro
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card-number{
  display:flex;

  align-items:center;
  justify-content:center;

  width:58px;
  height:58px;

  border:
    1px solid
    rgba(255,225,100,.28);

  border-radius:50%;

  color:var(--tcs-gold);

  background:
    rgba(255,225,100,.045);

  font-family:"Cinzel",serif;

  font-size:.9rem;

  font-weight:700;
}


/* ==========================================================
   Texte
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card-content{
  min-width:0;
}

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card h3{
  margin:0 0 10px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:1.18rem;

  line-height:1.32;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card p{
  margin:0;

  color:var(--tcs-muted);

  font-size:.97rem;

  line-height:1.62;
}


/* ==========================================================
   Hover desktop
   ========================================================== */

@media (hover:hover){

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card:hover{
    transform:translateY(-4px);

    border-color:
      rgba(255,225,100,.28);

    box-shadow:
      0 18px 46px
      rgba(0,0,0,.30);
  }
}


/* ==========================================================
   Bouton
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-actions{
  display:flex;
  justify-content:center;

  margin-top:32px;
}

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-btn{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  min-height:48px;

  padding:12px 22px;

  border-radius:999px;

  color:#23272b !important;

  background:
    linear-gradient(
      90deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );

  box-shadow:
    0 8px 24px
    rgba(182,117,58,.22);

  text-decoration:none !important;

  font-family:"Saira Extra Condensed",Arial,sans-serif;

  font-weight:800;

  text-transform:uppercase;

  letter-spacing:.06em;

  transition:
    transform .2s ease,
    box-shadow .2s ease;
}

.elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-btn:hover{
  transform:translateY(-2px);

  box-shadow:
    0 12px 30px
    rgba(255,225,100,.22);
}


/* ==========================================================
   Tablette
   ========================================================== */

@media (max-width:900px) and (min-width:768px){

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers{
    padding:64px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-inner{
    width:min(
      100% - 32px,
      760px
    );
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-grid{
    grid-template-columns:1fr;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card{
    min-height:auto;
  }
}


/* ==========================================================
   Mobile : carrousel tactile
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers{
    padding:48px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-inner{
    width:100%;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-heading{
    width:calc(100% - 24px);

    margin:
      0 auto
      28px;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers h2{
    font-size:1.68rem;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-intro{
    font-size:.98rem;
    line-height:1.68;
  }


  /* Défilement horizontal */

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-grid{
    display:flex;

    gap:14px;

    overflow-x:auto;
    overflow-y:hidden;

    padding:
      4px
      12px
      18px;

    scroll-snap-type:x mandatory;

    scroll-padding-left:12px;

    -webkit-overflow-scrolling:touch;

    scrollbar-width:none;

    mask-image:
      linear-gradient(
        to right,
        transparent 0,
        #000 12px,
        #000 calc(100% - 18px),
        transparent 100%
      );

    -webkit-mask-image:
      linear-gradient(
        to right,
        transparent 0,
        #000 12px,
        #000 calc(100% - 18px),
        transparent 100%
      );
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-grid::-webkit-scrollbar{
    display:none;
  }


  /* Cartes */

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card{
    flex:0 0 86%;

    width:auto;

    min-height:210px;

    grid-template-columns:1fr;

    gap:14px;

    align-content:center;

    padding:22px 20px;

    border-radius:18px;

    scroll-snap-align:start;
    scroll-snap-stop:always;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card-number{
    width:44px;
    height:44px;

    margin:0 auto;

    font-size:.76rem;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card-content{
    text-align:center;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card h3{
    font-size:1.03rem;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card p{
    font-size:.92rem;
  }


  /* Bouton */

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-actions{
    width:calc(100% - 24px);

    margin:
      24px auto
      0;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-btn{
    width:100%;
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-heading{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers h2{
    font-size:1.5rem;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-card{
    flex-basis:88%;
  }

  .elementor-8037 .elementor-element.elementor-element-e0abc1d .tcs-univers-actions{
    width:calc(100% - 20px);
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4d7ec5f *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 5 : CRÉATEURS & LICENCES
   Desktop = 2 colonnes
   Mobile = compact
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences{
  --tcs-bg:#202428;
  --tcs-bg-soft:#292e33;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#d6d0c5;

  position:relative;

  padding:82px 0;

  color:var(--tcs-text);

  background:
    radial-gradient(
      circle at top left,
      rgba(182,117,58,.13),
      transparent 36%
    ),
    radial-gradient(
      circle at bottom right,
      rgba(255,225,100,.06),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      #1f2327,
      #252a2e
    );

  overflow:hidden;
}


/* ==========================================================
   Conteneur
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-inner{
  width:min(1180px, calc(100% - 40px));

  margin:0 auto;

  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(380px,.9fr);

  gap:70px;

  align-items:center;
}


/* ==========================================================
   Colonne principale
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-main{
  min-width:0;
  max-width:700px;
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-kicker{
  margin:0 0 12px;

  color:var(--tcs-copper);

  font-size:.84rem;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.17em;
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences h2{
  margin:0 0 24px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:clamp(
    1.95rem,
    3.4vw,
    2.9rem
  );

  line-height:1.13;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-lead{
  margin:0 0 22px;

  color:var(--tcs-text);

  font-size:1.12rem;

  line-height:1.72;
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-main > p:not(
  .tcs-licences-kicker
):not(
  .tcs-licences-lead
){
  margin:0 0 18px;

  color:var(--tcs-muted);

  font-size:1rem;

  line-height:1.75;
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-main strong{
  color:var(--tcs-gold);
  font-weight:700;
}


/* ==========================================================
   Panneau licences
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-panel{
  position:relative;

  padding:30px;

  border:
    1px solid
    rgba(255,225,100,.18);

  border-radius:24px;

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.045),
      rgba(255,255,255,.015)
    ),
    var(--tcs-bg-soft);

  box-shadow:
    0 18px 48px
    rgba(0,0,0,.26);

  overflow:hidden;
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-panel::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:4px;

  background:
    linear-gradient(
      90deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-panel-label{
  margin:0 0 22px;

  color:var(--tcs-copper);

  font-size:.78rem;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.18em;
}


/* ==========================================================
   Points
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-point{
  display:grid;

  grid-template-columns:
    48px
    minmax(0,1fr);

  gap:16px;

  align-items:start;

  padding:18px 0;

  border-bottom:
    1px solid
    rgba(255,255,255,.07);
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-point:first-of-type{
  padding-top:0;
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-point:last-of-type{
  border-bottom:0;
}


/* ==========================================================
   Numéro
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-number{
  display:flex;

  align-items:center;
  justify-content:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(255,225,100,.27);

  border-radius:50%;

  color:var(--tcs-gold);

  background:
    rgba(255,225,100,.045);

  font-family:"Cinzel",serif;

  font-size:.75rem;

  font-weight:700;
}


/* ==========================================================
   Texte des points
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-point h3{
  margin:0 0 7px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:1.05rem;

  line-height:1.35;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-point p{
  margin:0;

  color:var(--tcs-muted);

  font-size:.95rem;

  line-height:1.62;
}


/* ==========================================================
   Badge final
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-badge{
  width:fit-content;
  max-width:100%;

  margin:22px auto 0;

  padding:12px 18px;

  border:
    1px solid
    rgba(255,225,100,.25);

  border-radius:999px;

  color:var(--tcs-gold);

  background:
    linear-gradient(
      90deg,
      rgba(182,117,58,.13),
      rgba(255,225,100,.05)
    );

  font-size:.82rem;
  font-weight:800;

  line-height:1.4;

  text-align:center;

  text-transform:uppercase;

  letter-spacing:.05em;
}


/* ==========================================================
   Tablette
   ========================================================== */

@media (max-width:900px){

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences{
    padding:60px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-inner{
    width:min(
      100% - 32px,
      760px
    );

    grid-template-columns:1fr;

    gap:34px;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-main{
    max-width:none;
  }
}


/* ==========================================================
   Mobile compact
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences{
    padding:44px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-inner{
    width:calc(100% - 24px);

    gap:24px;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-kicker{
    margin-bottom:10px;

    font-size:.78rem;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences h2{
    margin-bottom:18px;

    font-size:1.5rem;

    line-height:1.18;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-lead{
    margin-bottom:16px;

    font-size:1rem;

    line-height:1.58;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-main > p:not(
    .tcs-licences-kicker
  ):not(
    .tcs-licences-lead
  ){
    margin-bottom:14px;

    font-size:.93rem;

    line-height:1.58;
  }


  /* Panneau plus compact */

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-panel{
    padding:20px 16px;

    border-radius:18px;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-panel-label{
    margin-bottom:14px;

    font-size:.72rem;
  }


  /* Points resserrés */

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-point{
    grid-template-columns:
      38px
      minmax(0,1fr);

    gap:12px;

    padding:14px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-number{
    width:34px;
    height:34px;

    font-size:.66rem;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-point h3{
    margin-bottom:5px;

    font-size:.95rem;

    line-height:1.3;
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-point p{
    font-size:.88rem;

    line-height:1.5;
  }


  /* Badge plus discret */

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-badge{
    width:100%;

    margin-top:16px;

    padding:10px 12px;

    border-radius:12px;

    font-size:.72rem;

    line-height:1.35;
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences-inner{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-4d7ec5f .tcs-licences h2{
    font-size:1.42rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e74a74e *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 6 : PETITES SÉRIES
   Desktop = 2 colonnes
   Mobile = compact
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries{
  --tcs-bg:#24292e;
  --tcs-bg-soft:#2b3035;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#d3cdc2;

  position:relative;

  padding:82px 0;

  color:var(--tcs-text);

  background:
    radial-gradient(
      circle at top right,
      rgba(255,225,100,.07),
      transparent 34%
    ),
    radial-gradient(
      circle at bottom left,
      rgba(182,117,58,.09),
      transparent 36%
    ),
    linear-gradient(
      180deg,
      #24292e,
      #22272b
    );

  overflow:hidden;
}


/* ==========================================================
   Conteneur
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-inner{
  width:min(1180px, calc(100% - 40px));

  margin:0 auto;

  display:grid;

  grid-template-columns:
    minmax(0,1fr)
    minmax(380px,.9fr);

  gap:70px;

  align-items:center;
}


/* ==========================================================
   Texte principal
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-main{
  min-width:0;
  max-width:700px;
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-kicker{
  margin:0 0 12px;

  color:var(--tcs-copper);

  font-size:.84rem;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.17em;
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries h2{
  margin:0 0 24px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:clamp(
    1.95rem,
    3.4vw,
    2.9rem
  );

  line-height:1.13;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-lead{
  margin:0 0 22px;

  color:var(--tcs-text);

  font-size:1.12rem;

  line-height:1.72;
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-main > p:not(
  .tcs-smallseries-kicker
):not(
  .tcs-smallseries-lead
){
  margin:0 0 18px;

  color:var(--tcs-muted);

  font-size:1rem;

  line-height:1.75;
}


/* ==========================================================
   Panneau de droite
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-panel{
  position:relative;

  padding:30px;

  border:
    1px solid
    rgba(255,225,100,.16);

  border-radius:24px;

  background:
    linear-gradient(
      145deg,
      rgba(255,255,255,.04),
      rgba(255,255,255,.015)
    ),
    var(--tcs-bg-soft);

  box-shadow:
    0 18px 48px
    rgba(0,0,0,.24);

  overflow:hidden;
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-panel::before{
  content:"";

  position:absolute;

  top:0;
  left:0;

  width:100%;
  height:4px;

  background:
    linear-gradient(
      90deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );
}


/* ==========================================================
   Points
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-point{
  display:grid;

  grid-template-columns:
    48px
    minmax(0,1fr);

  gap:16px;

  align-items:start;

  padding:18px 0;

  border-bottom:
    1px solid
    rgba(255,255,255,.07);
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-point:first-of-type{
  padding-top:0;
}


/* ==========================================================
   Numéro
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-number{
  display:flex;

  align-items:center;
  justify-content:center;

  width:42px;
  height:42px;

  border:
    1px solid
    rgba(255,225,100,.27);

  border-radius:50%;

  color:var(--tcs-gold);

  background:
    rgba(255,225,100,.045);

  font-family:"Cinzel",serif;

  font-size:.75rem;

  font-weight:700;
}


/* ==========================================================
   Texte points
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-point h3{
  margin:0 0 7px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:1.05rem;

  line-height:1.35;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-point p{
  margin:0;

  color:var(--tcs-muted);

  font-size:.95rem;

  line-height:1.62;
}


/* ==========================================================
   Encadré produit sur commande
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-note{
  margin-top:22px;

  padding:20px;

  border:
    1px solid
    rgba(255,225,100,.24);

  border-radius:18px;

  background:
    linear-gradient(
      90deg,
      rgba(182,117,58,.13),
      rgba(255,225,100,.05)
    );
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-note-label{
  margin:0 0 8px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:1rem;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-note p:last-child{
  margin:0;

  color:var(--tcs-muted);

  font-size:.95rem;

  line-height:1.62;
}


/* ==========================================================
   Tablette
   ========================================================== */

@media (max-width:900px){

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries{
    padding:60px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-inner{
    width:min(
      100% - 32px,
      760px
    );

    grid-template-columns:1fr;

    gap:34px;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-main{
    max-width:none;
  }
}


/* ==========================================================
   Mobile compact
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries{
    padding:44px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-inner{
    width:calc(100% - 24px);

    gap:24px;
  }


  /* Titre */

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-kicker{
    margin-bottom:10px;

    font-size:.78rem;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries h2{
    margin-bottom:18px;

    font-size:1.5rem;

    line-height:1.18;
  }


  /* Texte */

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-lead{
    margin-bottom:16px;

    font-size:1rem;

    line-height:1.58;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-main > p:not(
    .tcs-smallseries-kicker
  ):not(
    .tcs-smallseries-lead
  ){
    margin-bottom:14px;

    font-size:.93rem;

    line-height:1.58;
  }


  /* Panneau */

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-panel{
    padding:20px 16px;

    border-radius:18px;
  }


  /* Points */

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-point{
    grid-template-columns:
      38px
      minmax(0,1fr);

    gap:12px;

    padding:14px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-number{
    width:34px;
    height:34px;

    font-size:.66rem;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-point h3{
    margin-bottom:5px;

    font-size:.95rem;

    line-height:1.3;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-point p{
    font-size:.88rem;

    line-height:1.5;
  }


  /* Produit sur commande */

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-note{
    margin-top:16px;

    padding:15px;

    border-radius:14px;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-note-label{
    margin-bottom:6px;

    font-size:.92rem;

    line-height:1.3;
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-note p:last-child{
    font-size:.88rem;

    line-height:1.5;
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries-inner{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-e74a74e .tcs-smallseries h2{
    font-size:1.42rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-4a0d5b9 *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 7 : PERSONNALISATION / SUR MESURE
   Desktop = 2 colonnes
   Mobile = cartes en carrousel tactile compact
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom{
  --tcs-bg:#202428;
  --tcs-bg-soft:#2a2f34;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#d8d2c7;

  position:relative;
  padding:82px 0;
  color:var(--tcs-text);

  background:
    radial-gradient(
      circle at top left,
      rgba(255,225,100,.07),
      transparent 34%
    ),
    radial-gradient(
      circle at bottom right,
      rgba(182,117,58,.11),
      transparent 36%
    ),
    linear-gradient(
      135deg,
      #202428,
      #252a2e
    );

  overflow:hidden;
}


/* ==========================================================
   Conteneur
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-inner{
  width:min(1180px, calc(100% - 40px));
  margin:0 auto;

  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(380px,.9fr);

  gap:70px;
  align-items:center;
}


/* ==========================================================
   Texte principal
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-main{
  min-width:0;
  max-width:700px;
}

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-kicker{
  margin:0 0 12px;
  color:var(--tcs-copper);
  font-size:.84rem;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.17em;
}

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom h2{
  margin:0 0 24px;
  color:var(--tcs-gold);
  font-family:"Cinzel",serif;
  font-size:clamp(1.85rem,3.2vw,2.7rem);
  line-height:1.14;
  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-lead{
  margin:0 0 22px;
  color:var(--tcs-text);
  font-size:1.12rem;
  line-height:1.72;
}

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-main > p:not(
  .tcs-custom-kicker
):not(
  .tcs-custom-lead
){
  margin:0 0 18px;
  color:var(--tcs-muted);
  font-size:1rem;
  line-height:1.75;
}


/* ==========================================================
   Bouton
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-actions{
  margin-top:28px;
}

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;

  min-height:48px;
  padding:12px 22px;

  border-radius:999px;

  color:#23272b !important;

  background:
    linear-gradient(
      90deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );

  box-shadow:
    0 8px 24px
    rgba(182,117,58,.22);

  text-decoration:none !important;

  font-family:"Saira Extra Condensed",Arial,sans-serif;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;

  transition:
    transform .2s ease,
    box-shadow .2s ease;
}

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-btn:hover{
  transform:translateY(-2px);

  box-shadow:
    0 12px 30px
    rgba(255,225,100,.22);
}


/* ==========================================================
   Colonne cartes desktop
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-grid{
  display:flex;
  flex-direction:column;
  gap:16px;
}


/* ==========================================================
   Cartes
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card{
  position:relative;

  display:grid;
  grid-template-columns:52px minmax(0,1fr);

  gap:18px;
  align-items:center;

  padding:24px;

  border:
    1px solid
    rgba(255,225,100,.15);

  border-radius:20px;

  background:
    linear-gradient(
      135deg,
      rgba(255,255,255,.04),
      rgba(255,255,255,.012)
    ),
    var(--tcs-bg-soft);

  box-shadow:
    0 14px 38px
    rgba(0,0,0,.22);

  overflow:hidden;

  transition:
    transform .2s ease,
    border-color .2s ease,
    box-shadow .2s ease;
}

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card::before{
  content:"";
  position:absolute;

  left:0;
  top:0;

  width:4px;
  height:100%;

  background:
    linear-gradient(
      180deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );
}


/* ==========================================================
   Numéro
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-number{
  display:flex;
  align-items:center;
  justify-content:center;

  width:46px;
  height:46px;

  border:
    1px solid
    rgba(255,225,100,.27);

  border-radius:50%;

  color:var(--tcs-gold);

  background:
    rgba(255,225,100,.045);

  font-family:"Cinzel",serif;
  font-size:.75rem;
  font-weight:700;
}


/* ==========================================================
   Texte cartes
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card h3{
  margin:0 0 7px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;
  font-size:1.05rem;
  line-height:1.35;
  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card p{
  margin:0;

  color:var(--tcs-muted);

  font-size:.95rem;
  line-height:1.62;
}


/* ==========================================================
   Hover desktop
   ========================================================== */

@media (hover:hover){

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card:hover{
    transform:translateX(4px);

    border-color:
      rgba(255,225,100,.28);

    box-shadow:
      0 18px 44px
      rgba(0,0,0,.28);
  }
}


/* ==========================================================
   Tablette
   ========================================================== */

@media (max-width:900px) and (min-width:768px){

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom{
    padding:60px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-inner{
    width:min(100% - 32px,760px);

    grid-template-columns:1fr;

    gap:34px;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-main{
    max-width:none;
  }
}


/* ==========================================================
   Mobile
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom{
    padding:44px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-inner{
    width:100%;

    grid-template-columns:1fr;

    gap:22px;
  }


  /* Texte principal */

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-main{
    width:calc(100% - 24px);

    margin:0 auto;

    max-width:none;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-kicker{
    margin-bottom:10px;

    font-size:.78rem;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom h2{
    margin-bottom:18px;

    font-size:1.5rem;

    line-height:1.18;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-lead{
    margin-bottom:16px;

    font-size:1rem;

    line-height:1.58;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-main > p:not(
    .tcs-custom-kicker
  ):not(
    .tcs-custom-lead
  ){
    margin-bottom:14px;

    font-size:.93rem;

    line-height:1.58;
  }


  /* Bouton */

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-actions{
    margin-top:20px;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-btn{
    width:100%;
  }


  /* Carrousel tactile */

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-grid{
    display:flex;
    flex-direction:row;

    gap:14px;

    overflow-x:auto;
    overflow-y:hidden;

    padding:
      4px
      12px
      16px;

    scroll-snap-type:x mandatory;
    scroll-padding-left:12px;

    -webkit-overflow-scrolling:touch;

    scrollbar-width:none;

    mask-image:
      linear-gradient(
        to right,
        transparent 0,
        #000 12px,
        #000 calc(100% - 18px),
        transparent 100%
      );

    -webkit-mask-image:
      linear-gradient(
        to right,
        transparent 0,
        #000 12px,
        #000 calc(100% - 18px),
        transparent 100%
      );
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-grid::-webkit-scrollbar{
    display:none;
  }


  /* Cartes compactes */

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card{
    flex:0 0 86%;

    width:auto;

    min-height:160px;

    grid-template-columns:1fr;

    gap:10px;

    align-content:center;

    padding:18px 18px;

    border-radius:18px;

    text-align:center;

    scroll-snap-align:start;
    scroll-snap-stop:always;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-number{
    width:40px;
    height:40px;

    margin:0 auto;

    font-size:.68rem;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card h3{
    font-size:.98rem;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card p{
    font-size:.88rem;
    line-height:1.5;
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-main{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom h2{
    font-size:1.42rem;
  }

  .elementor-8037 .elementor-element.elementor-element-4a0d5b9 .tcs-custom-card{
    flex-basis:88%;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-570947d *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 8 : CARROUSEL COULISSES
   Desktop = 3 cartes
   Mobile = 1 carte compacte
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses{
  --tcs-bg:#23272b;
  --tcs-bg-soft:#2b3035;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#d4cec3;

  position:relative;

  padding:82px 0;

  color:var(--tcs-text);

  background:
    radial-gradient(
      circle at top right,
      rgba(182,117,58,.10),
      transparent 34%
    ),
    radial-gradient(
      circle at bottom left,
      rgba(255,225,100,.05),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      #23272b,
      #202428
    );

  overflow:hidden;
}


/* ==========================================================
   Conteneur
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-inner{
  width:min(1240px, calc(100% - 40px));
  margin:0 auto;
}


/* ==========================================================
   En-tête
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-heading{
  max-width:760px;
  margin:0 auto 42px;
  text-align:center;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-kicker{
  margin:0 0 12px;

  color:var(--tcs-copper);

  font-size:.84rem;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.17em;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses h2{
  margin:0 0 18px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:clamp(
    2rem,
    3.6vw,
    3rem
  );

  line-height:1.12;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-intro{
  margin:0 auto;

  max-width:700px;

  color:var(--tcs-muted);

  font-size:1.03rem;

  line-height:1.7;
}


/* ==========================================================
   Carrousel
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-carousel{
  position:relative;

  display:flex;

  align-items:center;

  gap:14px;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-viewport{
  width:100%;

  overflow:hidden;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-track{
  display:flex;

  gap:18px;

  transition:
    transform .45s
    cubic-bezier(.22,.61,.36,1);

  will-change:transform;
}


/* ==========================================================
   Slides
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-slide{
  flex:
    0 0
    calc(
      (100% - 36px)
      / 3
    );

  min-width:0;

  overflow:hidden;

  border:
    1px solid
    rgba(255,225,100,.15);

  border-radius:22px;

  background:
    var(--tcs-bg-soft);

  box-shadow:
    0 14px 40px
    rgba(0,0,0,.24);
}


/* ==========================================================
   Images
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-image{
  position:relative;

  aspect-ratio:4 / 3;

  overflow:hidden;

  background:#1d2125;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-image::after{
  content:"";

  position:absolute;

  inset:0;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      transparent 55%,
      rgba(35,39,43,.35)
    );
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-image img{
  display:block;

  width:100%;
  height:100%;

  object-fit:cover;

  transition:
    transform .45s ease;
}


/* ==========================================================
   Légendes
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-caption{
  padding:22px;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-caption h3{
  margin:0 0 9px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:1.06rem;

  line-height:1.35;

  font-weight:700;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-caption p{
  margin:0;

  color:var(--tcs-muted);

  font-size:.94rem;

  line-height:1.62;
}


/* ==========================================================
   Navigation
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-nav{
  flex:0 0 auto;

  display:flex;

  align-items:center;
  justify-content:center;

  width:46px;
  height:46px;

  padding:0;

  border:
    1px solid
    rgba(255,225,100,.28);

  border-radius:50%;

  color:var(--tcs-gold);

  background:
    rgba(43,48,53,.94);

  font-size:2rem;

  line-height:1;

  cursor:pointer;

  transition:
    background .2s ease,
    border-color .2s ease,
    transform .2s ease,
    opacity .2s ease;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-nav:hover:not(:disabled){
  transform:scale(1.05);

  border-color:
    rgba(255,225,100,.55);

  background:
    rgba(255,225,100,.08);
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-nav:disabled{
  opacity:.3;
  cursor:default;
}


/* ==========================================================
   Points
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-dots{
  display:flex;

  justify-content:center;

  flex-wrap:wrap;

  gap:8px;

  margin-top:24px;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-dots button{
  width:9px;
  height:9px;

  padding:0;

  border:0;

  border-radius:50%;

  background:
    rgba(255,255,255,.22);

  cursor:pointer;

  transition:
    width .2s ease,
    border-radius .2s ease,
    background .2s ease;
}

.elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-dots button.is-active{
  width:28px;

  border-radius:999px;

  background:
    linear-gradient(
      90deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );
}


/* ==========================================================
   Hover
   ========================================================== */

@media (hover:hover){

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-slide:hover img{
    transform:scale(1.035);
  }
}


/* ==========================================================
   Tablette
   ========================================================== */

@media (max-width:1024px){

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-slide{
    flex:
      0 0
      calc(
        (100% - 18px)
        / 2
      );
  }
}


/* ==========================================================
   Mobile compact
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses{
    padding:44px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-inner{
    width:calc(100% - 24px);
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-heading{
    margin-bottom:24px;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-kicker{
    margin-bottom:9px;

    font-size:.78rem;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses h2{
    margin-bottom:14px;

    font-size:1.5rem;

    line-height:1.18;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-intro{
    font-size:.93rem;

    line-height:1.58;
  }


  /* Carrousel */

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-carousel{
    gap:8px;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-slide{
    flex:0 0 100%;

    border-radius:18px;
  }


  /* Image moins haute */

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-image{
    aspect-ratio:16 / 10;
  }


  /* Légende compacte */

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-caption{
    padding:16px;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-caption h3{
    margin-bottom:6px;

    font-size:.98rem;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-caption p{
    font-size:.88rem;

    line-height:1.5;
  }


  /* Navigation */

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-nav{
    position:absolute;

    z-index:5;

    top:50%;

    width:36px;
    height:36px;

    transform:
      translateY(-50%);

    background:
      rgba(32,36,40,.88);

    font-size:1.6rem;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-nav:hover:not(:disabled){
    transform:
      translateY(-50%);
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-prev{
    left:8px;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-next{
    right:8px;
  }


  /* Points */

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-dots{
    gap:6px;

    margin-top:16px;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-dots button{
    width:8px;
    height:8px;
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-dots button.is-active{
    width:24px;
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses-inner{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-570947d .tcs-coulisses h2{
    font-size:1.42rem;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-036a758 *//* ==========================================================
   TheCraftSide - Page L'Atelier
   BLOC 9 : CTA FINAL
   Desktop = large
   Mobile = compact
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta{
  --tcs-bg:#202428;
  --tcs-copper:#b6753a;
  --tcs-gold:#ffe164;
  --tcs-text:#f5f2eb;
  --tcs-muted:#d5cfc4;

  position:relative;

  padding:82px 0;

  color:var(--tcs-text);

  text-align:center;

  background:
    radial-gradient(
      circle at center,
      rgba(255,225,100,.11),
      transparent 38%
    ),
    radial-gradient(
      circle at bottom left,
      rgba(182,117,58,.12),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      #1d2125,
      #252a2e
    );

  overflow:hidden;
}


/* ==========================================================
   Conteneur
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-inner{
  width:min(900px, calc(100% - 40px));
  margin:0 auto;
}


/* ==========================================================
   Petit titre
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-kicker{
  margin:0 0 12px;

  color:var(--tcs-copper);

  font-size:.84rem;
  font-weight:800;

  text-transform:uppercase;
  letter-spacing:.17em;
}


/* ==========================================================
   Titre principal
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta h2{
  margin:0 0 18px;

  color:var(--tcs-gold);

  font-family:"Cinzel",serif;

  font-size:clamp(
    1.9rem,
    3.6vw,
    2.9rem
  );

  line-height:1.12;

  font-weight:700;
}


/* ==========================================================
   Texte
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-text{
  max-width:700px;

  margin:0 auto;

  color:var(--tcs-muted);

  font-size:1.04rem;

  line-height:1.7;
}


/* ==========================================================
   Boutons
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-actions{
  display:flex;

  justify-content:center;
  flex-wrap:wrap;

  gap:14px;

  margin-top:26px;
}

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-btn{
  display:inline-flex;

  align-items:center;
  justify-content:center;

  min-height:50px;

  padding:13px 24px;

  border-radius:999px;

  text-decoration:none !important;

  font-family:"Saira Extra Condensed",Arial,sans-serif;

  font-size:1rem;

  font-weight:800;

  text-transform:uppercase;

  letter-spacing:.06em;

  transition:
    transform .2s ease,
    box-shadow .2s ease,
    background .2s ease,
    border-color .2s ease;
}

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-btn:hover{
  transform:translateY(-2px);
}


/* ==========================================================
   Bouton principal
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-btn-primary{
  color:#23272b !important;

  background:
    linear-gradient(
      90deg,
      var(--tcs-copper),
      var(--tcs-gold)
    );

  box-shadow:
    0 10px 28px
    rgba(182,117,58,.24);
}

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-btn-primary:hover{
  box-shadow:
    0 14px 34px
    rgba(255,225,100,.22);
}


/* ==========================================================
   Bouton secondaire
   ========================================================== */

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-btn-secondary{
  color:var(--tcs-gold) !important;

  border:
    1px solid
    rgba(255,225,100,.42);

  background:
    rgba(255,225,100,.03);
}

.elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-btn-secondary:hover{
  background:
    rgba(255,225,100,.09);

  border-color:
    rgba(255,225,100,.65);
}


/* ==========================================================
   Mobile compact
   ========================================================== */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta{
    padding:44px 0;
  }

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-inner{
    width:calc(100% - 24px);
  }

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-kicker{
    margin-bottom:9px;

    font-size:.78rem;
  }

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta h2{
    margin-bottom:14px;

    font-size:1.48rem;

    line-height:1.18;
  }

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-text{
    font-size:.93rem;

    line-height:1.58;
  }

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-actions{
    flex-direction:column;

    gap:10px;

    margin-top:22px;
  }

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-btn{
    width:100%;

    min-height:46px;

    padding:11px 18px;

    font-size:.95rem;
  }
}


/* ==========================================================
   Très petits écrans
   ========================================================== */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta-inner{
    width:calc(100% - 20px);
  }

  .elementor-8037 .elementor-element.elementor-element-036a758 .tcs-final-cta h2{
    font-size:1.4rem;
  }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-4b816ca *//* ==========================================================
   TheCraftSide - Page L'Atelier
   HARMONISATION DES ESPACEMENTS ENTRE BLOCS
   ========================================================== */

/* ----------------------------------------------------------
   Rythme vertical global
   ---------------------------------------------------------- */

.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-hero,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-intro,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-process,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-univers,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-licences,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-smallseries,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-custom,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-coulisses,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-final-cta{
  padding-top:72px;
  padding-bottom:72px;
}


/* ----------------------------------------------------------
   Premier bloc
   Un peu plus d'air pour le Hero
   ---------------------------------------------------------- */

.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-hero{
  padding-top:76px;
  padding-bottom:76px;
}


/* ----------------------------------------------------------
   Dernier bloc
   Un peu plus d'air pour conclure
   ---------------------------------------------------------- */

.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-final-cta{
  padding-top:76px;
  padding-bottom:76px;
}


/* ----------------------------------------------------------
   Évite les marges parasites Elementor
   ---------------------------------------------------------- */

.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-hero,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-intro,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-process,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-univers,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-licences,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-smallseries,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-custom,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-coulisses,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-final-cta{
  margin-top:0 !important;
  margin-bottom:0 !important;
}


/* ----------------------------------------------------------
   Titres / intros
   Rythme cohérent entre sections
   ---------------------------------------------------------- */

.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-process-heading,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-univers-heading,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-coulisses-heading{
  margin-bottom:36px;
}


/* ----------------------------------------------------------
   Espacement interne cohérent des colonnes
   ---------------------------------------------------------- */

.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-intro-inner,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-licences-inner,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-smallseries-inner,
.elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-custom-inner{
  gap:60px;
}


/* ----------------------------------------------------------
   Tablette
   ---------------------------------------------------------- */

@media (max-width:1024px){

  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-hero,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-intro,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-process,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-univers,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-licences,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-smallseries,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-custom,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-coulisses,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-final-cta{
    padding-top:60px;
    padding-bottom:60px;
  }

  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-intro-inner,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-licences-inner,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-smallseries-inner,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-custom-inner{
    gap:38px;
  }

  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-process-heading,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-univers-heading,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-coulisses-heading{
    margin-bottom:32px;
  }
}


/* ----------------------------------------------------------
   Mobile
   ---------------------------------------------------------- */

@media (max-width:767px){

  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-hero,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-intro,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-process,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-univers,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-licences,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-smallseries,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-custom,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-coulisses,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-final-cta{
    padding-top:48px;
    padding-bottom:48px;
  }

  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-intro-inner,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-licences-inner,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-smallseries-inner,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-custom-inner{
    gap:30px;
  }

  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-process-heading,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-univers-heading,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-coulisses-heading{
    margin-bottom:28px;
  }
}


/* ----------------------------------------------------------
   Très petits écrans
   ---------------------------------------------------------- */

@media (max-width:420px){

  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-hero,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-atelier-intro,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-process,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-univers,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-licences,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-smallseries,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-custom,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-coulisses,
  .elementor-8037 .elementor-element.elementor-element-4b816ca .tcs-final-cta{
    padding-top:42px;
    padding-bottom:42px;
  }
}/* End custom CSS */