.elementor-8103 .elementor-element.elementor-element-3fe9eb69{--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-widget-theme-site-logo .widget-image-caption{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-8103 .elementor-element.elementor-element-2c1cde71.elementor-element{--align-self:center;--order:-99999 /* order start hack */;}.elementor-8103 .elementor-element.elementor-element-2c1cde71{text-align:start;}.elementor-8103 .elementor-element.elementor-element-2c1cde71 img{width:120px;}.elementor-8103 .elementor-element.elementor-element-73941c06{--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-8103 .elementor-element.elementor-element-1058f94{width:100%;max-width:100%;}.elementor-8103 .elementor-element.elementor-element-5a12a744{--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-8103 .elementor-element.elementor-element-49544e4f{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-8103 .elementor-element.elementor-element-228ce73b{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-8103 .elementor-element.elementor-element-228ce73b .widget_shopping_cart_content{--subtotal-divider-left-width:0;--subtotal-divider-right-width:0;}.elementor-8103 .elementor-element.elementor-element-111ea96f{--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-8103 .elementor-element.elementor-element-33490e88.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-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle{margin:0 auto;}.elementor-8103 .elementor-element.elementor-element-3c6d8e3c{--display:flex;}@media(min-width:768px){.elementor-8103 .elementor-element.elementor-element-5a12a744{--content-width:300px;}.elementor-8103 .elementor-element.elementor-element-111ea96f{--content-width:1400px;}}@media(max-width:1024px){.elementor-8103 .elementor-element.elementor-element-3fe9eb69{--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-8103 .elementor-element.elementor-element-2c1cde71 img{width:105px;}.elementor-8103 .elementor-element.elementor-element-1058f94{width:100%;max-width:100%;}.elementor-8103 .elementor-element.elementor-element-5a12a744{--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-8103 .elementor-element.elementor-element-111ea96f{--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-8103 .elementor-element.elementor-element-78b07325{width:100%;max-width:100%;}}@media(max-width:767px){.elementor-8103 .elementor-element.elementor-element-3fe9eb69{--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-8103 .elementor-element.elementor-element-2c1cde71 img{width:85px;}.elementor-8103 .elementor-element.elementor-element-5a12a744{--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-8103 .elementor-element.elementor-element-5a12a744.e-con{--align-self:center;}}/* Start custom CSS for fibosearch, class: .elementor-element-1058f94 *//* =========================================================
   FIBOSEARCH
   Le conteneur parent contrôle la largeur
========================================================= */

.elementor-8103 .elementor-element.elementor-element-1058f94 {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.elementor-8103 .elementor-element.elementor-element-1058f94 .elementor-widget-container {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
}

.elementor-8103 .elementor-element.elementor-element-1058f94 .dgwt-wcas-search-wrapp {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    box-sizing: border-box;
}

.elementor-8103 .elementor-element.elementor-element-1058f94 .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-8103 .elementor-element.elementor-element-1058f94 .dgwt-wcas-search-input {
        min-height: 44px !important;
        font-size: 15px !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-73941c06 *//* =========================================================
   CONTENEUR RECHERCHE — LARGEUR FLUIDE
========================================================= */

.elementor-8103 .elementor-element.elementor-element-73941c06 {
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box;
}


/* Desktop large */
@media (min-width: 1400px) {

    .elementor-8103 .elementor-element.elementor-element-73941c06 {
        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-8103 .elementor-element.elementor-element-73941c06 {
        /*
         * 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-8103 .elementor-element.elementor-element-73941c06 {
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-49544e4f *//* =========================================================
   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-228ce73b *//* =========================================================
   Bouton Panier
========================================================= */

.elementor-8103 .elementor-element.elementor-element-228ce73b .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-8103 .elementor-element.elementor-element-228ce73b .elementor-menu-cart__toggle_button:hover {
    transform: translateY(1px);
    box-shadow: 0 3px 12px rgba(0,0,0,.45);
}

@media (max-width: 767px) {
    .elementor-8103 .elementor-element.elementor-element-228ce73b .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-5a12a744 *//* =========================================================
   CONTENEUR MON ATELIER + PANIER
========================================================= */

.elementor-8103 .elementor-element.elementor-element-5a12a744,
.elementor-8103 .elementor-element.elementor-element-5a12a744 > .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-8103 .elementor-element.elementor-element-5a12a744 .elementor-widget-html,
.elementor-8103 .elementor-element.elementor-element-5a12a744 .elementor-widget-woocommerce-menu-cart,
.elementor-8103 .elementor-element.elementor-element-5a12a744 .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-8103 .elementor-element.elementor-element-5a12a744,
    .elementor-8103 .elementor-element.elementor-element-5a12a744 > .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-8103 .elementor-element.elementor-element-5a12a744 .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-8103 .elementor-element.elementor-element-5a12a744 {
        width: 100% !important;
        max-width: 100% !important;
    }

    .elementor-8103 .elementor-element.elementor-element-5a12a744,
    .elementor-8103 .elementor-element.elementor-element-5a12a744 > .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-8103 .elementor-element.elementor-element-5a12a744 .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-3fe9eb69 *//* =========================================================
   CONTENEUR PRINCIPAL HEADER
========================================================= */

.elementor-8103 .elementor-element.elementor-element-3fe9eb69 {
    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-8103 .elementor-element.elementor-element-3fe9eb69 > .elementor-element {
    min-width: 0 !important;
}


/* =========================================================
   DESKTOP LARGE
   1400px et +
========================================================= */

@media (min-width: 1400px) {

    .elementor-8103 .elementor-element.elementor-element-3fe9eb69 {
        display: grid !important;

        grid-template-columns:
            minmax(120px, 1fr)
            minmax(0, 800px)
            minmax(280px, 1fr);

        align-items: center;
        column-gap: 24px;
    }

    .elementor-8103 .elementor-element.elementor-element-3fe9eb69 > .elementor-element:nth-child(1) {
        width: auto !important;
        min-width: 0 !important;
        justify-self: start;
    }

    .elementor-8103 .elementor-element.elementor-element-3fe9eb69 > .elementor-element:nth-child(2) {
        width: 100% !important;
        max-width: 800px !important;
        min-width: 0 !important;
        justify-self: center;
    }

    .elementor-8103 .elementor-element.elementor-element-3fe9eb69 > .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-8103 .elementor-element.elementor-element-3fe9eb69 {
        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-8103 .elementor-element.elementor-element-3fe9eb69 > .elementor-element:nth-child(1) {
        width: auto !important;
        min-width: 0 !important;
        justify-self: start;
    }

    .elementor-8103 .elementor-element.elementor-element-3fe9eb69 > .elementor-element:nth-child(2) {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        justify-self: stretch;
    }

    .elementor-8103 .elementor-element.elementor-element-3fe9eb69 > .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-8103 .elementor-element.elementor-element-3fe9eb69 {
        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-8103 .elementor-element.elementor-element-3fe9eb69 > .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-33490e88 */.elementor-8103 .elementor-element.elementor-element-33490e88 {
    margin-left: 20px;
    margin-right: 24px;
    align-self: center;
    white-space: nowrap;
}/* End custom CSS */
/* Start custom CSS for nav-menu, class: .elementor-element-78b07325 *//* =========================================================
   MENU PRINCIPAL
========================================================= */

.elementor-8103 .elementor-element.elementor-element-78b07325 {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}


/* Liens principaux */
.elementor-8103 .elementor-element.elementor-element-78b07325 .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;

    white-space: nowrap;
}


/* Hover / actif */
.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--main .elementor-item:hover,
.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--main .elementor-item.elementor-item-active {
    color: #ffe164 !important;
}


/* Trait sous le lien */
.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--main .elementor-item::after {
    background-color: #b6753a !important;
    height: 2px;
}


/* =========================================================
   DESKTOP
   Ajustement fluide quand le menu devient long
========================================================= */

@media (min-width: 1025px) {

    .elementor-8103 .elementor-element.elementor-element-78b07325 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        flex: 1 1 auto !important;
    }

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--main {
        width: 100% !important;
        max-width: 100% !important;
    }

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--main > ul {
        display: flex !important;

        flex-direction: row !important;
        flex-wrap: nowrap !important;

        align-items: center !important;
        justify-content: center !important;

        width: 100% !important;
        max-width: 100% !important;

        gap: clamp(4px, .7vw, 14px) !important;
    }

    /*
     * Quand la largeur diminue :
     * - padding réduit progressivement
     * - typo réduite légèrement
     */
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--main .elementor-item {
        white-space: nowrap !important;

        padding-top: 14px !important;
        padding-bottom: 14px !important;

        padding-left: clamp(5px, .55vw, 10px) !important;
        padding-right: clamp(5px, .55vw, 10px) !important;

        font-size: clamp(14px, 1vw, 16px) !important;
    }
}


/* =========================================================
   SOUS-MENUS — DESKTOP
========================================================= */

.elementor-8103 .elementor-element.elementor-element-78b07325 .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;
}


/* Liens sous-menu */
.elementor-8103 .elementor-element.elementor-element-78b07325 .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;
}


/* Hover / actif sous-menu */
.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown .elementor-item:hover,
.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
    color: #ffe164 !important;
    background: rgba(182,117,58,.14) !important;
}


/* Empêche les liens visités de devenir gris */
.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown a,
.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown a:visited {
    color: #f3eadf !important;
}

.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown a:hover,
.elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown a.elementor-item-active {
    color: #ffe164 !important;
    background: rgba(182,117,58,.14) !important;
}


/* =========================================================
   TABLETTE / MOBILE
========================================================= */

@media (max-width: 1024px) {

    .elementor-8103 .elementor-element.elementor-element-78b07325 {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;

        box-sizing: border-box !important;
    }

    /* Menu déroulé */
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown {
        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;

        left: 0 !important;
        right: auto !important;

        box-sizing: border-box !important;
        overflow-x: hidden !important;

        background: #1b1f22 !important;

        border: 0;
        border-top: 1px solid rgba(182,117,58,.35);
        border-radius: 0;

        box-shadow: none;
    }

    /* Liens menu mobile */
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown .elementor-item {
        width: 100% !important;

        padding: 11px 20px !important;

        text-align: left;

        color: #f3eadf !important;
        background: transparent !important;

        box-sizing: border-box;
    }

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown .elementor-item:hover,
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown .elementor-item.elementor-item-active {
        color: #ffe164 !important;
        background: rgba(182,117,58,.12) !important;
    }


    /* =====================================================
       HAMBURGER / FERMETURE
    ===================================================== */

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle {
        color: #ffe164 !important;
        background: transparent !important;
    }

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle i,
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle svg,
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle .e-font-icon-svg {
        color: #ffe164 !important;
        fill: #ffe164 !important;
        stroke: #ffe164 !important;
    }

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle:hover {
        color: #b6753a !important;
    }

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle:hover i,
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle:hover svg,
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle:hover .e-font-icon-svg {
        color: #b6753a !important;
        fill: #b6753a !important;
        stroke: #b6753a !important;
    }

    /* État ouvert / X */
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle.elementor-active,
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle.elementor-active i,
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle.elementor-active svg,
    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-menu-toggle.elementor-active .e-font-icon-svg {
        color: #ffe164 !important;
        fill: #ffe164 !important;
        stroke: #ffe164 !important;
    }
}

@media (min-width: 1025px) {

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown {
        min-width: 280px !important;
        width: max-content !important;
        max-width: 340px !important;
    }

    .elementor-8103 .elementor-element.elementor-element-78b07325 .elementor-nav-menu--dropdown .elementor-item {
        white-space: nowrap !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-111ea96f *//* =========================================================
   BARRE BREADCRUMB + MENU
========================================================= */

.elementor-8103 .elementor-element.elementor-element-111ea96f {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;

    align-items: center !important;
    justify-content: flex-start !important;

    width: 100% !important;
    max-width: 100% !important;

    min-height: 50px;

    padding: 0 20px;

    gap: 24px;

    box-sizing: border-box;

    background: #1b1f22;
    border-bottom: 1px solid rgba(182,117,58,.35);
}


/* =========================================================
   BREADCRUMB
========================================================= */

.elementor-8103 .elementor-element.elementor-element-111ea96f > .elementor-element:nth-child(1) {
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: 260px !important;

    white-space: nowrap;
}


/* =========================================================
   MENU
========================================================= */

.elementor-8103 .elementor-element.elementor-element-111ea96f > .elementor-element:nth-child(2) {
    flex: 1 1 auto !important;

    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-40268d31 */.tcs-bestiaire-hero {
  position: relative;
  overflow: hidden;
  color: #f4f1ea;

  background:
    radial-gradient(
      circle at 82% 28%,
      rgba(182, 117, 58, 0.17),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      rgba(20, 23, 25, 0.92) 0%,
      rgba(35, 39, 43, 0.90) 55%,
      rgba(18, 20, 22, 0.92) 100%
    );
}

.tcs-bestiaire-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  background:
    linear-gradient(
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    ),
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.018) 1px,
      transparent 1px
    );

  background-size: 42px 42px;
  opacity: 0.18;
}

.tcs-bestiaire-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 120px;
  pointer-events: none;

  background:
    linear-gradient(
      180deg,
      transparent,
      rgba(10, 12, 14, 0.16)
    );
}

.tcs-bestiaire-hero__inner {
  position: relative;
  z-index: 1;

  width: min(1200px, calc(100% - 40px));
  min-height: 500px;

  margin: 0 auto;
  padding: 56px 0;

  display: grid;

  grid-template-columns:
    minmax(0, 1.25fr)
    minmax(300px, 0.75fr);

  gap: 48px;
  align-items: center;
}

.tcs-bestiaire-hero__content {
  max-width: 720px;
}

.tcs-bestiaire-hero__eyebrow {
  margin: 0 0 12px;

  color: #ffe164;

  font-size: 0.84rem;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tcs-bestiaire-hero h1 {
  margin: 0;
  max-width: 690px;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size:
    clamp(
      3rem,
      5.4vw,
      4.9rem
    );

  line-height: 0.94;
  font-weight: 800;

  letter-spacing: 0.01em;
  text-transform: uppercase;

  text-wrap: balance;

  color: #e0aa56;

  text-shadow:
    0 0 18px
    rgba(224, 170, 86, 0.17);
}

.tcs-bestiaire-hero__intro {
  max-width: 680px;

  margin: 26px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.86
    );

  font-size: 1.08rem;
  line-height: 1.72;
}

.tcs-bestiaire-hero__actions {
  display: flex;
  flex-wrap: wrap;

  gap: 14px;

  margin-top: 32px;
}

.tcs-bestiaire-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 48px;
  padding: 12px 20px;

  border-radius: 999px;

  text-decoration: none;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 1rem;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 0.05em;
  text-transform: uppercase;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease,
    color 0.2s ease;
}

.tcs-bestiaire-btn:hover {
  transform: translateY(-2px);
}

.tcs-bestiaire-btn:focus-visible {
  outline: 2px solid #ffe164;
  outline-offset: 3px;
}

.tcs-bestiaire-btn--primary {
  border: 1px solid transparent;

  color: #23272b;

  background:
    linear-gradient(
      90deg,
      #b6753a 0%,
      #ffe164 100%
    );

  box-shadow:
    0 10px 28px
    rgba(182, 117, 58, 0.22);
}

.tcs-bestiaire-btn--primary:hover {
  color: #23272b;

  background:
    linear-gradient(
      90deg,
      #c38345 0%,
      #ffe97a 100%
    );

  box-shadow:
    0 14px 34px
    rgba(182, 117, 58, 0.28);
}

.tcs-bestiaire-btn--secondary {
  border:
    1px solid
    rgba(255, 225, 100, 0.28);

  color: #f4f1ea;

  background:
    rgba(255, 255, 255, 0.025);
}

.tcs-bestiaire-btn--secondary:hover {
  border-color:
    rgba(255, 225, 100, 0.62);

  color: #ffe164;

  background:
    rgba(255, 225, 100, 0.055);
}


/* =========================
   VISUEL
   ========================= */

.tcs-bestiaire-hero__visual {
  display: flex;
  align-items: center;
  justify-content: center;
}

.tcs-bestiaire-hero__frame {
  position: relative;

  width: min(100%, 390px);
  aspect-ratio: 4 / 3;

  margin: 0;

  overflow: hidden;

  border:
    1px solid
    rgba(255, 225, 100, 0.22);

  border-radius: 24px;

  background: #151719;

  box-shadow:
    inset
    0
    0
    0
    1px
    rgba(255, 255, 255, 0.018),
    0
    18px
    55px
    rgba(0, 0, 0, 0.28);
}

.tcs-bestiaire-hero__frame
.tcs-bestiaire-hero__image {
  position: absolute !important;

  inset: 0 !important;

  display: block !important;

  width: 100% !important;
  max-width: none !important;

  height: 100% !important;
  max-height: none !important;

  margin: 0 !important;

  object-fit: cover;
  object-position: center;

  border: 0;

  transform: none;
}

.tcs-bestiaire-hero__frame::before {
  content: "";

  position: absolute;
  z-index: 1;

  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      180deg,
      transparent 45%,
      rgba(8, 10, 11, 0.12) 62%,
      rgba(8, 10, 11, 0.82) 100%
    );
}

.tcs-bestiaire-hero__caption {
  position: absolute;
  z-index: 2;

  left: 24px;
  right: 24px;
  bottom: 20px;

  margin: 0;

  color:
    rgba(
      244,
      241,
      234,
      0.92
    );

  font-size: 0.92rem;
  font-weight: 500;
  line-height: 1.45;

  text-align: center;

  text-shadow:
    0
    2px
    10px
    rgba(0, 0, 0, 0.85);
}


/* =========================
   TABLETTE
   ========================= */

@media (max-width: 900px) {

  .tcs-bestiaire-hero__inner {
    min-height: auto;

    padding: 52px 0;

    grid-template-columns: 1fr;

    gap: 38px;
  }

  .tcs-bestiaire-hero__content {
    max-width: 100%;
  }

  .tcs-bestiaire-hero h1 {
    max-width: 760px;

    font-size:
      clamp(
        3rem,
        9vw,
        4.6rem
      );
  }

  .tcs-bestiaire-hero__visual {
    justify-content: flex-start;
  }

  .tcs-bestiaire-hero__frame {
    width: 100%;
    max-width: 560px;

    aspect-ratio: 16 / 9;
  }

  .tcs-bestiaire-hero__caption {
    left: 18px;
    right: 18px;
    bottom: 16px;
  }
}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 600px) {

  .tcs-bestiaire-hero__inner {
    width:
      min(
        calc(100% - 28px),
        1200px
      );

    padding: 40px 0;

    gap: 30px;
  }

  .tcs-bestiaire-hero__eyebrow {
    margin-bottom: 10px;

    font-size: 0.76rem;
  }

  .tcs-bestiaire-hero h1 {
    width: 100%;
    max-width: 100%;

    font-size:
      clamp(
        2.35rem,
        11.5vw,
        3.15rem
      );

    line-height: 0.94;

    text-align: center;
    text-wrap: balance;
  }

  .tcs-bestiaire-hero__intro {
    margin-top: 24px;

    font-size: 1rem;
    line-height: 1.65;
  }

  .tcs-bestiaire-hero__actions {
    flex-direction: column;

    gap: 10px;

    margin-top: 28px;
  }

  .tcs-bestiaire-btn {
    width: 100%;

    min-height: 46px;

    padding: 12px 18px;
  }

  .tcs-bestiaire-hero__frame {
    width: 100%;
    max-width: none;

    aspect-ratio: 4 / 3;

    border-radius: 20px;
  }

  .tcs-bestiaire-hero__caption {
    left: 14px;
    right: 14px;
    bottom: 14px;

    font-size: 0.86rem;
  }
}


/* =========================
   ACCESSIBILITÉ
   ========================= */

@media (prefers-reduced-motion: reduce) {

  .tcs-bestiaire-btn {
    transition: none;
  }

  .tcs-bestiaire-btn:hover {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-772e20b0 */.tcs-bestiaire-explorer {
  position: relative;
  padding: 68px 20px 54px;
  color: #f4f1ea;

  background:
    radial-gradient(
      circle at 18% 10%,
      rgba(182, 117, 58, 0.08),
      transparent 32%
    ),
    linear-gradient(
      180deg,
      rgba(24, 27, 30, 0.98) 0%,
      rgba(31, 35, 39, 0.98) 100%
    );
}

.tcs-bestiaire-explorer::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;

  width: min(1200px, calc(100% - 40px));
  height: 1px;

  transform: translateX(-50%);

  background:
    linear-gradient(
      90deg,
      transparent 0%,
      rgba(182, 117, 58, 0.48) 25%,
      rgba(255, 225, 100, 0.62) 50%,
      rgba(182, 117, 58, 0.48) 75%,
      transparent 100%
    );
}

.tcs-bestiaire-explorer__inner {
  width: min(1200px, 100%);
  margin: 0 auto;
}

.tcs-bestiaire-explorer__intro {
  max-width: 760px;
  margin-bottom: 32px;
}

.tcs-bestiaire-explorer__eyebrow {
  margin: 0 0 10px;

  color: #ffe164;

  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tcs-bestiaire-explorer h2 {
  margin: 0;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size:
    clamp(
      2.2rem,
      4vw,
      3.6rem
    );

  line-height: 1;
  font-weight: 800;

  text-transform: uppercase;
  text-wrap: balance;

  color: #f4f1ea;
}

.tcs-bestiaire-explorer__text {
  max-width: 700px;
  margin: 18px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.78
    );

  font-size: 1.05rem;
  line-height: 1.7;
}

.tcs-bestiaire-explorer__nav {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
}

.tcs-bestiaire-explorer__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 44px;
  padding: 10px 20px;

  border:
    1px solid
    rgba(255, 225, 100, 0.22);

  border-radius: 999px;

  color:
    rgba(
      244,
      241,
      234,
      0.84
    );

  background:
    rgba(
      255,
      255,
      255,
      0.025
    );

  text-decoration: none;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 1rem;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 0.04em;
  text-transform: uppercase;

  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    background 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease;
}

.tcs-bestiaire-explorer__link:hover {
  transform: translateY(-2px);

  border-color:
    rgba(
      255,
      225,
      100,
      0.58
    );

  color: #ffe164;

  background:
    rgba(
      255,
      225,
      100,
      0.055
    );
}

.tcs-bestiaire-explorer__link:focus-visible {
  outline: 2px solid #ffe164;
  outline-offset: 3px;
}

.tcs-bestiaire-explorer__link--active {
  border-color: transparent;

  color: #23272b;

  background:
    linear-gradient(
      90deg,
      #b6753a 0%,
      #ffe164 100%
    );

  box-shadow:
    0 8px 22px
    rgba(
      182,
      117,
      58,
      0.20
    );
}

.tcs-bestiaire-explorer__link--active:hover {
  color: #23272b;

  background:
    linear-gradient(
      90deg,
      #c38345 0%,
      #ffe97a 100%
    );
}

@media (max-width: 900px) {

  .tcs-bestiaire-explorer {
    padding:
      58px
      20px
      46px;
  }

  .tcs-bestiaire-explorer__intro {
    margin-bottom: 28px;
  }

  .tcs-bestiaire-explorer h2 {
    font-size:
      clamp(
        2.1rem,
        6vw,
        3.2rem
      );
  }
}

@media (max-width: 600px) {

  .tcs-bestiaire-explorer {
    padding:
      48px
      14px
      40px;
  }

  .tcs-bestiaire-explorer::before {
    width:
      calc(
        100% - 28px
      );
  }

  .tcs-bestiaire-explorer__intro {
    margin-bottom: 24px;
  }

  .tcs-bestiaire-explorer__eyebrow {
    font-size: 0.74rem;
  }

  .tcs-bestiaire-explorer h2 {
    font-size:
      clamp(
        1.9rem,
        9vw,
        2.55rem
      );

    line-height: 1.02;
  }

  .tcs-bestiaire-explorer__text {
    margin-top: 16px;

    font-size: 1rem;
    line-height: 1.65;
  }

  .tcs-bestiaire-explorer__nav {
    flex-wrap: nowrap;
    gap: 10px;

    overflow-x: auto;
    overflow-y: hidden;

    padding:
      2px
      2px
      4px;

    -webkit-overflow-scrolling: touch;

    scrollbar-width: none;
  }

  .tcs-bestiaire-explorer__nav::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }

  .tcs-bestiaire-explorer__link {
    flex: 0 0 auto;

    min-height: 42px;

    padding:
      9px
      18px;
  }
}

@media (prefers-reduced-motion: reduce) {

  .tcs-bestiaire-explorer__link {
    transition: none;
  }

  .tcs-bestiaire-explorer__link:hover {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-14216dbd */.tcs-bestiaire-family {
  position: relative;
  padding: 72px 20px;
  color: #f4f1ea;

  background:
    radial-gradient(
      circle at 12% 0%,
      rgba(182, 117, 58, 0.09),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      rgba(22, 25, 28, 0.98) 0%,
      rgba(29, 33, 37, 0.98) 100%
    );
}

.tcs-bestiaire-family__inner {
  width: min(1200px, 100%);
  margin: 0 auto;
}

.tcs-bestiaire-family__header {
  display: grid;

  grid-template-columns:
    minmax(0, 0.9fr)
    minmax(0, 1.1fr);

  gap: 48px;
  align-items: end;

  margin-bottom: 38px;
}

.tcs-bestiaire-family__heading {
  max-width: 520px;
}

.tcs-bestiaire-family__eyebrow {
  margin: 0 0 10px;

  color: #ffe164;

  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tcs-bestiaire-family h2 {
  margin: 0;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size:
    clamp(
      2.4rem,
      4.5vw,
      4rem
    );

  line-height: 0.98;
  font-weight: 800;

  text-transform: uppercase;
  text-wrap: balance;

  color: #f4f1ea;
}

.tcs-bestiaire-family__intro {
  max-width: 620px;

  margin: 0;

  color:
    rgba(
      244,
      241,
      234,
      0.76
    );

  font-size: 1.04rem;
  line-height: 1.7;
}

.tcs-bestiaire-family__grid {
  display: grid;

  grid-template-columns:
    repeat(
      3,
      minmax(0, 1fr)
    );

  gap: 24px;
}


/* =========================
   CARTE
   ========================= */

.tcs-bestiaire-card {
  display: flex;
  flex-direction: column;

  min-width: 0;
  overflow: hidden;

  border:
    1px solid
    rgba(255, 225, 100, 0.16);

  border-radius: 24px;

  background:
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.025) 0%,
      rgba(255, 255, 255, 0.012) 100%
    ),
    rgba(17, 19, 21, 0.78);

  box-shadow:
    0
    16px
    42px
    rgba(0, 0, 0, 0.18);

  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.tcs-bestiaire-card:hover {
  transform: translateY(-4px);

  border-color:
    rgba(
      255,
      225,
      100,
      0.34
    );

  box-shadow:
    0
    22px
    54px
    rgba(0, 0, 0, 0.24);
}


/* =========================
   IMAGE
   ========================= */

.tcs-bestiaire-card__media {
  position: relative;
  display: block;

  aspect-ratio: 4 / 3;

  overflow: hidden;

  background: #151719;

  text-decoration: none;
}

.tcs-bestiaire-card__media::after {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      180deg,
      transparent 55%,
      rgba(8, 10, 11, 0.42) 100%
    );
}

.tcs-bestiaire-card__image {
  display: block;

  width: 100%;
  height: 100%;

  object-fit: cover;
  object-position: center;

  transition:
    transform 0.35s ease;
}

.tcs-bestiaire-card:hover
.tcs-bestiaire-card__image {
  transform: scale(1.035);
}

.tcs-bestiaire-card__family {
  position: absolute;
  z-index: 2;

  left: 16px;
  bottom: 14px;

  display: inline-flex;
  align-items: center;

  min-height: 30px;

  padding: 6px 12px;

  border:
    1px solid
    rgba(255, 225, 100, 0.24);

  border-radius: 999px;

  color: #ffe164;

  background:
    rgba(
      18,
      20,
      22,
      0.78
    );

  backdrop-filter:
    blur(6px);

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 0.05em;
  text-transform: uppercase;
}


/* =========================
   CONTENU
   ========================= */

.tcs-bestiaire-card__content {
  display: flex;
  flex-direction: column;

  flex: 1;

  padding: 22px;
}

.tcs-bestiaire-card__top {
  display: block;
}

.tcs-bestiaire-card__identity {
  min-width: 0;
}

.tcs-bestiaire-card h3 {
  margin: 0;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 2rem;
  line-height: 1;

  font-weight: 800;
  text-transform: uppercase;

  color: #f4f1ea;
}

.tcs-bestiaire-card__type {
  margin: 7px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.58
    );

  font-size: 0.92rem;
  line-height: 1.4;
}

.tcs-bestiaire-card__excerpt {
  margin: 18px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.76
    );

  font-size: 0.98rem;
  line-height: 1.65;
}

.tcs-bestiaire-card__cta {
  display: inline-flex;
  align-items: center;

  align-self: flex-start;

  gap: 8px;

  margin-top: auto;
  padding-top: 22px;

  color: #ffe164;

  text-decoration: none;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 1rem;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 0.04em;
  text-transform: uppercase;

  transition:
    color 0.2s ease,
    gap 0.2s ease;
}

.tcs-bestiaire-card__cta span {
  font-size: 1.1em;
}

.tcs-bestiaire-card__cta:hover {
  gap: 12px;
  color: #fff1a7;
}

.tcs-bestiaire-card__cta:focus-visible,
.tcs-bestiaire-card__media:focus-visible {
  outline: 2px solid #ffe164;
  outline-offset: 3px;
}


/* =========================
   TABLETTE
   ========================= */

@media (max-width: 980px) {

  .tcs-bestiaire-family {
    padding:
      62px
      20px;
  }

  .tcs-bestiaire-family__header {
    grid-template-columns: 1fr;

    gap: 18px;

    margin-bottom: 32px;
  }

  .tcs-bestiaire-family__intro {
    max-width: 760px;
  }

  .tcs-bestiaire-family__grid {
    grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );
  }
}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 640px) {

  .tcs-bestiaire-family {
    padding:
      48px
      14px;
  }

  .tcs-bestiaire-family__header {
    gap: 16px;
    margin-bottom: 24px;
  }

  .tcs-bestiaire-family__eyebrow {
    font-size: 0.74rem;
  }

  .tcs-bestiaire-family h2 {
    font-size:
      clamp(
        2rem,
        10.5vw,
        2.7rem
      );

    line-height: 0.98;
  }

  .tcs-bestiaire-family__intro {
    font-size: 1rem;
    line-height: 1.6;
  }

  .tcs-bestiaire-family__grid {
    grid-template-columns: 1fr;

    gap: 16px;
  }

  .tcs-bestiaire-card {
    border-radius: 18px;
  }

  .tcs-bestiaire-card__media {
    aspect-ratio: 3 / 2;
  }

  .tcs-bestiaire-card__family {
    left: 14px;
    bottom: 12px;

    min-height: 28px;

    padding:
      5px
      10px;

    font-size: 0.76rem;
  }

  .tcs-bestiaire-card__content {
    padding:
      18px
      18px
      19px;
  }

  .tcs-bestiaire-card h3 {
    font-size: 1.75rem;
  }

  .tcs-bestiaire-card__type {
    margin-top: 5px;

    font-size: 0.88rem;
  }

  .tcs-bestiaire-card__excerpt {
    margin-top: 14px;

    font-size: 0.94rem;
    line-height: 1.55;
  }

  .tcs-bestiaire-card__cta {
    padding-top: 17px;

    font-size: 0.96rem;
  }
}


/* =========================
   TRÈS PETIT MOBILE
   ========================= */

@media (max-width: 420px) {

  .tcs-bestiaire-family {
    padding:
      44px
      12px;
  }

  .tcs-bestiaire-family h2 {
    font-size:
      clamp(
        1.9rem,
        10vw,
        2.45rem
      );
  }

  .tcs-bestiaire-card__media {
    aspect-ratio: 16 / 10;
  }

  .tcs-bestiaire-card__content {
    padding:
      17px
      16px
      18px;
  }

  .tcs-bestiaire-card h3 {
    font-size: 1.65rem;
  }

  .tcs-bestiaire-card__excerpt {
    font-size: 0.92rem;
  }
}


/* =========================
   ACCESSIBILITÉ
   ========================= */

@media (prefers-reduced-motion: reduce) {

  .tcs-bestiaire-card,
  .tcs-bestiaire-card__image,
  .tcs-bestiaire-card__cta {
    transition: none;
  }

  .tcs-bestiaire-card:hover {
    transform: none;
  }

  .tcs-bestiaire-card:hover
  .tcs-bestiaire-card__image {
    transform: none;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-fcf7721 *//* =========================================================
   BLOC 4 — GRUMPII
   Base commune héritée du Bloc 3
   ========================================================= */

.tcs-bestiaire-family--grumpii {
  position: relative;

  padding:
    76px
    20px;

  color: #f4f1ea;

  background:
    radial-gradient(
      circle at 88% 8%,
      rgba(182, 117, 58, 0.11),
      transparent 32%
    ),
    radial-gradient(
      circle at 12% 70%,
      rgba(255, 225, 100, 0.035),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      rgba(27, 30, 33, 0.99) 0%,
      rgba(19, 22, 25, 0.99) 100%
    );
}


/* =========================
   SÉPARATION HAUTE
   ========================= */

.tcs-bestiaire-family--grumpii::before {
  content: "";

  position: absolute;

  top: 0;
  left: 50%;

  width:
    min(
      1200px,
      calc(100% - 40px)
    );

  height: 1px;

  transform:
    translateX(-50%);

  background:
    linear-gradient(
      90deg,
      transparent 0%,
      rgba(182, 117, 58, 0.30) 20%,
      rgba(255, 225, 100, 0.46) 50%,
      rgba(182, 117, 58, 0.30) 80%,
      transparent 100%
    );
}


/* =========================
   TITRAGE
   ========================= */

.tcs-bestiaire-family--grumpii
.tcs-bestiaire-family__eyebrow {
  color: #dba45d;
}

.tcs-bestiaire-family--grumpii
h2 {
  color: #f4f1ea;
}

.tcs-bestiaire-family--grumpii
.tcs-bestiaire-family__intro {
  color:
    rgba(
      244,
      241,
      234,
      0.76
    );
}


/* =========================
   CARTES
   ========================= */

.tcs-bestiaire-card--grumpii {
  border-color:
    rgba(
      182,
      117,
      58,
      0.20
    );

  background:
    linear-gradient(
      160deg,
      rgba(182, 117, 58, 0.055) 0%,
      rgba(255, 255, 255, 0.015) 42%,
      rgba(255, 255, 255, 0.008) 100%
    ),
    rgba(
      16,
      18,
      20,
      0.82
    );

  box-shadow:
    0
    16px
    44px
    rgba(
      0,
      0,
      0,
      0.20
    );
}

.tcs-bestiaire-card--grumpii:hover {
  border-color:
    rgba(
      255,
      225,
      100,
      0.34
    );

  box-shadow:
    0
    22px
    56px
    rgba(
      0,
      0,
      0,
      0.28
    );
}


/* =========================
   IMAGE
   ========================= */

.tcs-bestiaire-card--grumpii
.tcs-bestiaire-card__media {
  background: #121416;
}

.tcs-bestiaire-card--grumpii
.tcs-bestiaire-card__media::after {
  background:
    linear-gradient(
      180deg,
      transparent 48%,
      rgba(8, 10, 11, 0.12) 64%,
      rgba(8, 10, 11, 0.58) 100%
    );
}


/* =========================
   BADGE SÉRIE
   ========================= */

.tcs-bestiaire-card--grumpii
.tcs-bestiaire-card__family {
  border-color:
    rgba(
      255,
      225,
      100,
      0.26
    );

  color: #ffe164;

  background:
    rgba(
      24,
      20,
      16,
      0.82
    );

  box-shadow:
    inset
    0
    0
    0
    1px
    rgba(
      255,
      255,
      255,
      0.015
    );

  backdrop-filter:
    blur(6px);
}


/* =========================
   NOM / SÉRIE
   ========================= */

.tcs-bestiaire-card--grumpii
h3 {
  color: #f4f1ea;
}

.tcs-bestiaire-card--grumpii
.tcs-bestiaire-card__type {
  color:
    rgba(
      255,
      225,
      100,
      0.58
    );
}


/* =========================
   DESCRIPTION
   ========================= */

.tcs-bestiaire-card--grumpii
.tcs-bestiaire-card__excerpt {
  color:
    rgba(
      244,
      241,
      234,
      0.75
    );
}


/* =========================
   CTA
   ========================= */

.tcs-bestiaire-card--grumpii
.tcs-bestiaire-card__cta {
  color: #dba45d;
}

.tcs-bestiaire-card--grumpii
.tcs-bestiaire-card__cta:hover {
  color: #ffe164;
}


/* =========================
   TABLETTE
   ========================= */

@media (max-width: 980px) {

  .tcs-bestiaire-family--grumpii {
    padding:
      64px
      20px;
  }

}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 640px) {

  .tcs-bestiaire-family--grumpii {
    padding:
      50px
      14px;
  }

  .tcs-bestiaire-family--grumpii::before {
    width:
      calc(
        100% - 28px
      );
  }

  .tcs-bestiaire-card--grumpii
  .tcs-bestiaire-card__family {
    font-size: 0.76rem;
  }


  /* =========================
     CADRAGE DES IMAGES
     ========================= */

  .tcs-bestiaire-card--grumpii
  .tcs-bestiaire-card__media {
    aspect-ratio: 4 / 3;
  }

  /* Pollisaw */
  #grumpii
  .tcs-bestiaire-card:nth-child(1)
  .tcs-bestiaire-card__image {
    object-position: 50% 58%;
  }

  /* Nekomata */
  #grumpii
  .tcs-bestiaire-card:nth-child(2)
  .tcs-bestiaire-card__image {
    object-position: 50% 60%;
  }

}


/* =========================
   TRÈS PETIT MOBILE
   ========================= */

@media (max-width: 420px) {

  .tcs-bestiaire-family--grumpii {
    padding:
      46px
      12px;
  }

  .tcs-bestiaire-card--grumpii
  .tcs-bestiaire-card__media {
    aspect-ratio: 4 / 3;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-7bfbc89b */.tcs-bestiaire-guide {
  position: relative;
  padding: 76px 20px;
  color: #f4f1ea;

  background:
    radial-gradient(
      circle at 14% 12%,
      rgba(182, 117, 58, 0.08),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      rgba(24, 27, 30, 0.99) 0%,
      rgba(19, 22, 25, 0.99) 100%
    );
}

.tcs-bestiaire-guide::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;

  width: min(1200px, calc(100% - 40px));
  height: 1px;

  transform: translateX(-50%);

  background:
    linear-gradient(
      90deg,
      transparent 0%,
      rgba(182, 117, 58, 0.30) 20%,
      rgba(255, 225, 100, 0.50) 50%,
      rgba(182, 117, 58, 0.30) 80%,
      transparent 100%
    );
}

.tcs-bestiaire-guide__inner {
  width: min(1200px, 100%);
  margin: 0 auto;
}


/* =========================
   ENTÊTE
   ========================= */

.tcs-bestiaire-guide__header {
  max-width: 780px;
  margin-bottom: 38px;
}

.tcs-bestiaire-guide__eyebrow {
  margin: 0 0 10px;

  color: #ffe164;

  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tcs-bestiaire-guide h2 {
  margin: 0;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size:
    clamp(
      2.4rem,
      4.5vw,
      4rem
    );

  line-height: 0.98;
  font-weight: 800;

  text-transform: uppercase;
  text-wrap: balance;

  color: #f4f1ea;
}

.tcs-bestiaire-guide__intro {
  max-width: 720px;
  margin: 18px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.76
    );

  font-size: 1.04rem;
  line-height: 1.7;
}


/* =========================
   GRILLE
   ========================= */

.tcs-bestiaire-guide__grid {
  display: grid;

  grid-template-columns:
    repeat(
      5,
      minmax(0, 1fr)
    );

  gap: 18px;
}


/* =========================
   CARTE / DETAILS
   ========================= */

.tcs-bestiaire-guide__item {
  position: relative;
  min-width: 0;

  padding:
    22px
    20px
    24px;

  border:
    1px solid
    rgba(
      255,
      225,
      100,
      0.14
    );

  border-radius: 20px;

  background:
    linear-gradient(
      160deg,
      rgba(255, 255, 255, 0.025) 0%,
      rgba(182, 117, 58, 0.035) 100%
    ),
    rgba(
      17,
      19,
      21,
      0.74
    );

  box-shadow:
    0
    14px
    36px
    rgba(
      0,
      0,
      0,
      0.16
    );

  transition:
    transform 0.2s ease,
    border-color 0.2s ease,
    box-shadow 0.2s ease;
}

.tcs-bestiaire-guide__item:hover {
  transform: translateY(-3px);

  border-color:
    rgba(
      255,
      225,
      100,
      0.28
    );

  box-shadow:
    0
    18px
    44px
    rgba(
      0,
      0,
      0,
      0.22
    );
}


/* =========================
   SUMMARY
   ========================= */

.tcs-bestiaire-guide__summary {
  display: block;

  margin: 0;
  padding: 0;

  list-style: none;
}

.tcs-bestiaire-guide__summary::-webkit-details-marker {
  display: none;
}

.tcs-bestiaire-guide__summary::marker {
  display: none;
  content: "";
}


/* =========================
   DESKTOP / TABLETTE :
   PAS D’INTERACTION
   ========================= */

@media (min-width: 561px) {

  .tcs-bestiaire-guide__summary {
    pointer-events: none;
    cursor: default;
  }

  .tcs-bestiaire-guide__item {
    pointer-events: none;
  }

  .tcs-bestiaire-guide__item:hover {
    transform: none;
  }

  .tcs-bestiaire-guide__content {
    display: block !important;
  }

  .tcs-bestiaire-guide__toggle {
    display: none !important;
  }
}


/* =========================
   NUMÉRO
   ========================= */

.tcs-bestiaire-guide__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  width: 42px;
  height: 42px;

  margin-bottom: 18px;

  border:
    1px solid
    rgba(
      255,
      225,
      100,
      0.24
    );

  border-radius: 999px;

  color: #23272b;

  background:
    linear-gradient(
      135deg,
      #b6753a 0%,
      #ffe164 100%
    );

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 0.95rem;
  font-weight: 800;
  line-height: 1;

  letter-spacing: 0.04em;

  box-shadow:
    0
    8px
    20px
    rgba(
      182,
      117,
      58,
      0.16
    );
}


/* =========================
   TITRE
   ========================= */

.tcs-bestiaire-guide__title {
  display: block;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 1.45rem;
  line-height: 1;

  font-weight: 800;
  text-transform: uppercase;

  color: #f4f1ea;
}


/* =========================
   TOGGLE
   ========================= */

.tcs-bestiaire-guide__toggle {
  display: none;
}


/* =========================
   CONTENU
   ========================= */

.tcs-bestiaire-guide__content {
  display: block;
}

.tcs-bestiaire-guide__content p {
  margin: 12px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.72
    );

  font-size: 0.94rem;
  line-height: 1.58;
}


/* =========================
   TABLETTE LARGE
   ========================= */

@media (max-width: 1100px) {

  .tcs-bestiaire-guide__grid {
    grid-template-columns:
      repeat(
        3,
        minmax(0, 1fr)
      );
  }

}


/* =========================
   TABLETTE
   ========================= */

@media (max-width: 760px) {

  .tcs-bestiaire-guide {
    padding:
      62px
      20px;
  }

  .tcs-bestiaire-guide__header {
    margin-bottom: 30px;
  }

  .tcs-bestiaire-guide__grid {
    grid-template-columns:
      repeat(
        2,
        minmax(0, 1fr)
      );

    gap: 16px;
  }

}


/* =========================
   MOBILE — ACCORDÉON
   ========================= */

@media (max-width: 560px) {

  .tcs-bestiaire-guide {
    padding:
      50px
      14px;
  }

  .tcs-bestiaire-guide::before {
    width:
      calc(
        100% - 28px
      );
  }

  .tcs-bestiaire-guide__eyebrow {
    font-size: 0.74rem;
  }

  .tcs-bestiaire-guide h2 {
    font-size:
      clamp(
        2rem,
        10.5vw,
        2.8rem
      );
  }

  .tcs-bestiaire-guide__intro {
    margin-top: 16px;

    font-size: 1rem;
    line-height: 1.62;
  }

  .tcs-bestiaire-guide__grid {
    grid-template-columns: 1fr;
    gap: 10px;
  }

  .tcs-bestiaire-guide__item {
    padding:
      0
      16px;

    border-radius: 18px;
  }

  .tcs-bestiaire-guide__item:hover {
    transform: none;
  }


  /* =========================
     SUMMARY MOBILE
     ========================= */

  .tcs-bestiaire-guide__summary {
    display: grid;

    grid-template-columns:
      auto
      minmax(0, 1fr)
      auto;

    gap: 14px;

    align-items: center;

    min-height: 70px;

    cursor: pointer;
  }

  .tcs-bestiaire-guide__summary:focus-visible {
    outline: 2px solid #ffe164;
    outline-offset: 3px;
  }


  /* =========================
     NUMÉRO MOBILE
     ========================= */

  .tcs-bestiaire-guide__icon {
    width: 38px;
    height: 38px;

    margin-bottom: 0;

    font-size: 0.88rem;
  }


  /* =========================
     TITRE MOBILE
     ========================= */

  .tcs-bestiaire-guide__title {
    font-size: 1.25rem;
  }


  /* =========================
     + / -
     ========================= */

  .tcs-bestiaire-guide__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    width: 28px;
    height: 28px;

    color: #ffe164;

    font-family: Arial, sans-serif;

    font-size: 1.35rem;
    font-weight: 400;
    line-height: 1;

    transition:
      transform 0.2s ease;
  }

  .tcs-bestiaire-guide__item[open]
  .tcs-bestiaire-guide__toggle {
    transform: rotate(45deg);
  }


  /* =========================
     CONTENU MOBILE
     ========================= */

  .tcs-bestiaire-guide__content {
    display: none !important;

    padding:
      0
      0
      18px
      52px;
  }

  .tcs-bestiaire-guide__item[open]
  .tcs-bestiaire-guide__content {
    display: block !important;
  }

  .tcs-bestiaire-guide__content p {
    margin: 0;

    font-size: 0.92rem;
    line-height: 1.52;
  }

}


/* =========================
   ACCESSIBILITÉ
   ========================= */

@media (prefers-reduced-motion: reduce) {

  .tcs-bestiaire-guide__item,
  .tcs-bestiaire-guide__toggle {
    transition: none;
  }

  .tcs-bestiaire-guide__item:hover {
    transform: none;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-21512bba */.tcs-bestiaire-shop {
  position: relative;
  padding: 76px 20px;
  color: #f4f1ea;

  background:
    radial-gradient(
      circle at 85% 12%,
      rgba(182, 117, 58, 0.08),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      rgba(20, 23, 26, 0.99) 0%,
      rgba(27, 30, 34, 0.99) 100%
    );
}

.tcs-bestiaire-shop::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;

  width: min(1200px, calc(100% - 40px));
  height: 1px;

  transform: translateX(-50%);

  background:
    linear-gradient(
      90deg,
      transparent 0%,
      rgba(182, 117, 58, 0.30) 20%,
      rgba(255, 225, 100, 0.50) 50%,
      rgba(182, 117, 58, 0.30) 80%,
      transparent 100%
    );
}

.tcs-bestiaire-shop__inner {
  width: min(1200px, 100%);
  margin: 0 auto;
}


/* =========================
   ENTÊTE
   ========================= */

.tcs-bestiaire-shop__header {
  max-width: 820px;
  margin-bottom: 36px;
}

.tcs-bestiaire-shop__eyebrow {
  margin: 0 0 10px;

  color: #ffe164;

  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tcs-bestiaire-shop h2 {
  margin: 0;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size:
    clamp(
      2.4rem,
      4.5vw,
      4rem
    );

  line-height: 0.98;
  font-weight: 800;

  text-transform: uppercase;
  text-wrap: balance;

  color: #f4f1ea;
}

.tcs-bestiaire-shop__intro {
  max-width: 740px;
  margin: 18px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.76
    );

  font-size: 1.04rem;
  line-height: 1.7;
}


/* =========================
   GRILLE
   ========================= */

.tcs-bestiaire-shop__grid {
  display: grid;

  grid-template-columns:
    repeat(
      2,
      minmax(0, 1fr)
    );

  gap: 22px;
}


/* =========================
   CARTE
   ========================= */

.tcs-bestiaire-shop__card {
  position: relative;

  min-width: 0;
  overflow: hidden;

  border:
    1px solid
    rgba(
      255,
      225,
      100,
      0.16
    );

  border-radius: 24px;

  background:
    linear-gradient(
      145deg,
      rgba(182, 117, 58, 0.07) 0%,
      rgba(255, 255, 255, 0.018) 45%,
      rgba(255, 255, 255, 0.01) 100%
    ),
    rgba(
      16,
      18,
      20,
      0.80
    );

  box-shadow:
    0
    16px
    44px
    rgba(
      0,
      0,
      0,
      0.20
    );

  transition:
    transform 0.22s ease,
    border-color 0.22s ease,
    box-shadow 0.22s ease;
}

.tcs-bestiaire-shop__card:hover {
  transform: translateY(-4px);

  border-color:
    rgba(
      255,
      225,
      100,
      0.30
    );

  box-shadow:
    0
    22px
    54px
    rgba(
      0,
      0,
      0,
      0.26
    );
}

.tcs-bestiaire-shop__card::before {
  content: "";

  position: absolute;
  top: 0;
  left: 0;

  width: 4px;
  height: 100%;

  background:
    linear-gradient(
      180deg,
      #b6753a 0%,
      #ffe164 100%
    );

  opacity: 0.85;
}


/* =========================
   CONTENU CARTE
   ========================= */

.tcs-bestiaire-shop__card-content {
  display: flex;
  flex-direction: column;

  min-height: 100%;

  padding:
    28px
    28px
    30px
    30px;
}

.tcs-bestiaire-shop__label {
  margin: 0 0 8px;

  color: #dba45d;

  font-size: 0.76rem;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 0.10em;
  text-transform: uppercase;
}

.tcs-bestiaire-shop__card h3 {
  margin: 0;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size:
    clamp(
      2rem,
      3vw,
      2.8rem
    );

  line-height: 1;
  font-weight: 800;

  text-transform: uppercase;

  color: #f4f1ea;
}

.tcs-bestiaire-shop__text {
  margin: 16px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.72
    );

  font-size: 0.98rem;
  line-height: 1.62;
}

.tcs-bestiaire-shop__cta {
  display: inline-flex;
  align-items: center;

  align-self: flex-start;

  gap: 8px;

  margin-top: auto;
  padding-top: 24px;

  color: #ffe164;

  text-decoration: none;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 1rem;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 0.04em;
  text-transform: uppercase;

  transition:
    gap 0.2s ease,
    color 0.2s ease;
}

.tcs-bestiaire-shop__cta:hover {
  gap: 12px;
  color: #fff1a7;
}

.tcs-bestiaire-shop__cta:focus-visible {
  outline: 2px solid #ffe164;
  outline-offset: 3px;
}


/* =========================
   FOOTER / CTA GLOBAL
   ========================= */

.tcs-bestiaire-shop__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;

  gap: 22px;

  margin-top: 26px;
  padding: 22px 24px;

  border:
    1px solid
    rgba(
      255,
      225,
      100,
      0.12
    );

  border-radius: 20px;

  background:
    rgba(
      255,
      255,
      255,
      0.018
    );
}

.tcs-bestiaire-shop__footer p {
  margin: 0;

  color:
    rgba(
      244,
      241,
      234,
      0.74
    );

  font-size: 0.98rem;
  line-height: 1.55;
}

.tcs-bestiaire-shop__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  flex: 0 0 auto;

  min-height: 46px;
  padding: 11px 20px;

  border-radius: 999px;

  color: #23272b;

  background:
    linear-gradient(
      90deg,
      #b6753a 0%,
      #ffe164 100%
    );

  text-decoration: none;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 1rem;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 0.04em;
  text-transform: uppercase;

  box-shadow:
    0
    10px
    26px
    rgba(
      182,
      117,
      58,
      0.18
    );

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.tcs-bestiaire-shop__button:hover {
  transform: translateY(-2px);

  color: #23272b;

  box-shadow:
    0
    14px
    32px
    rgba(
      182,
      117,
      58,
      0.26
    );
}

.tcs-bestiaire-shop__button:focus-visible {
  outline: 2px solid #ffe164;
  outline-offset: 3px;
}


/* =========================
   TABLETTE
   ========================= */

@media (max-width: 820px) {

  .tcs-bestiaire-shop {
    padding:
      62px
      20px;
  }

  .tcs-bestiaire-shop__grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .tcs-bestiaire-shop__footer {
    align-items: flex-start;
    flex-direction: column;

    gap: 16px;
  }

}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 560px) {

  .tcs-bestiaire-shop {
    padding:
      50px
      14px;
  }

  .tcs-bestiaire-shop::before {
    width:
      calc(
        100% - 28px
      );
  }

  .tcs-bestiaire-shop__eyebrow {
    font-size: 0.74rem;
  }

  .tcs-bestiaire-shop h2 {
    font-size:
      clamp(
        2rem,
        10.5vw,
        2.8rem
      );
  }

  .tcs-bestiaire-shop__intro {
    margin-top: 16px;

    font-size: 1rem;
    line-height: 1.62;
  }

  .tcs-bestiaire-shop__card {
    border-radius: 20px;
  }

  .tcs-bestiaire-shop__card-content {
    padding:
      22px
      20px
      24px
      22px;
  }

  .tcs-bestiaire-shop__card h3 {
    font-size: 2rem;
  }

  .tcs-bestiaire-shop__text {
    margin-top: 13px;

    font-size: 0.94rem;
    line-height: 1.55;
  }

  .tcs-bestiaire-shop__cta {
    padding-top: 18px;

    font-size: 0.96rem;
  }

  .tcs-bestiaire-shop__footer {
    margin-top: 20px;

    padding:
      18px
      18px;

    border-radius: 18px;
  }

  .tcs-bestiaire-shop__footer p {
    font-size: 0.94rem;
  }

  .tcs-bestiaire-shop__button {
    width: 100%;

    min-height: 46px;
  }

}


/* =========================
   ACCESSIBILITÉ
   ========================= */

@media (prefers-reduced-motion: reduce) {

  .tcs-bestiaire-shop__card,
  .tcs-bestiaire-shop__cta,
  .tcs-bestiaire-shop__button {
    transition: none;
  }

  .tcs-bestiaire-shop__card:hover,
  .tcs-bestiaire-shop__button:hover {
    transform: none;
  }

}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-a5c63cc */.tcs-bestiaire-closing {
  position: relative;
  padding: 76px 20px;
  color: #f4f1ea;

  background:
    radial-gradient(
      circle at 82% 24%,
      rgba(182, 117, 58, 0.12),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      rgba(19, 22, 25, 0.99) 0%,
      rgba(14, 16, 18, 0.99) 100%
    );
}

.tcs-bestiaire-closing::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;

  width: min(1200px, calc(100% - 40px));
  height: 1px;

  transform: translateX(-50%);

  background:
    linear-gradient(
      90deg,
      transparent 0%,
      rgba(182, 117, 58, 0.30) 20%,
      rgba(255, 225, 100, 0.50) 50%,
      rgba(182, 117, 58, 0.30) 80%,
      transparent 100%
    );
}

.tcs-bestiaire-closing__inner {
  width: min(1200px, 100%);
  margin: 0 auto;

  display: grid;

  grid-template-columns:
    minmax(0, 1.25fr)
    minmax(240px, 0.75fr);

  gap: 48px;
  align-items: center;
}


/* =========================
   CONTENU
   ========================= */

.tcs-bestiaire-closing__content {
  max-width: 760px;
}

.tcs-bestiaire-closing__eyebrow {
  margin: 0 0 10px;

  color: #ffe164;

  font-size: 0.82rem;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.tcs-bestiaire-closing h2 {
  margin: 0;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size:
    clamp(
      2.5rem,
      4.7vw,
      4.2rem
    );

  line-height: 0.98;
  font-weight: 800;

  text-transform: uppercase;
  text-wrap: balance;

  color: #f4f1ea;
}

.tcs-bestiaire-closing__text {
  max-width: 700px;

  margin: 18px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.76
    );

  font-size: 1.04rem;
  line-height: 1.7;
}

.tcs-bestiaire-closing__actions {
  display: flex;
  flex-wrap: wrap;

  gap: 12px;

  margin-top: 28px;
}


/* =========================
   BOUTON
   ========================= */

.tcs-bestiaire-closing__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;

  min-height: 46px;
  padding: 11px 20px;

  border-radius: 999px;

  text-decoration: none;

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 1rem;
  font-weight: 700;
  line-height: 1;

  letter-spacing: 0.04em;
  text-transform: uppercase;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background 0.2s ease,
    color 0.2s ease;
}

.tcs-bestiaire-closing__button--primary {
  color: #23272b;

  background:
    linear-gradient(
      90deg,
      #b6753a 0%,
      #ffe164 100%
    );

  box-shadow:
    0
    10px
    28px
    rgba(
      182,
      117,
      58,
      0.20
    );
}

.tcs-bestiaire-closing__button--primary:hover {
  transform: translateY(-2px);

  color: #23272b;

  box-shadow:
    0
    14px
    34px
    rgba(
      182,
      117,
      58,
      0.28
    );
}

.tcs-bestiaire-closing__button:focus-visible {
  outline: 2px solid #ffe164;
  outline-offset: 3px;
}


/* =========================
   MARQUE / SCEAU
   ========================= */

.tcs-bestiaire-closing__mark {
  width: min(100%, 300px);
  aspect-ratio: 1 / 1;

  justify-self: end;

  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  text-align: center;

  border:
    1px solid
    rgba(
      255,
      225,
      100,
      0.18
    );

  border-radius: 50%;

  background:
    radial-gradient(
      circle,
      rgba(182, 117, 58, 0.10) 0%,
      rgba(255, 255, 255, 0.01) 58%,
      rgba(255, 255, 255, 0) 100%
    );

  box-shadow:
    inset
    0
    0
    0
    8px
    rgba(
      255,
      255,
      255,
      0.01
    ),
    0
    18px
    50px
    rgba(
      0,
      0,
      0,
      0.20
    );
}

.tcs-bestiaire-closing__symbol {
  display: block;

  color: #ffe164;

  font-size: 3rem;
  line-height: 1;

  text-shadow:
    0
    0
    18px
    rgba(
      255,
      225,
      100,
      0.18
    );
}

.tcs-bestiaire-closing__mark p {
  margin: 14px 0 0;

  color:
    rgba(
      244,
      241,
      234,
      0.68
    );

  font-family:
    "Saira Extra Condensed",
    Arial,
    sans-serif;

  font-size: 1rem;
  font-weight: 700;
  line-height: 1.2;

  letter-spacing: 0.08em;
  text-transform: uppercase;
}


/* =========================
   TABLETTE
   ========================= */

@media (max-width: 900px) {

  .tcs-bestiaire-closing {
    padding:
      60px
      20px;
  }

  .tcs-bestiaire-closing__inner {
    grid-template-columns: 1fr;

    gap: 26px;
  }

  .tcs-bestiaire-closing__mark {
    justify-self: start;

    width: 190px;
  }

  .tcs-bestiaire-closing__symbol {
    font-size: 2.3rem;
  }

  .tcs-bestiaire-closing__mark p {
    margin-top: 10px;

    font-size: 0.82rem;
  }

}


/* =========================
   MOBILE
   ========================= */

@media (max-width: 560px) {

  .tcs-bestiaire-closing {
    padding:
      48px
      14px;
  }

  .tcs-bestiaire-closing::before {
    width:
      calc(
        100% - 28px
      );
  }

  .tcs-bestiaire-closing__inner {
    gap: 22px;
  }

  .tcs-bestiaire-closing__eyebrow {
    font-size: 0.74rem;
  }

  .tcs-bestiaire-closing h2 {
    font-size:
      clamp(
        2rem,
        10.5vw,
        2.8rem
      );

    line-height: 0.98;
  }

  .tcs-bestiaire-closing__text {
    margin-top: 16px;

    font-size: 1rem;
    line-height: 1.62;
  }

  .tcs-bestiaire-closing__actions {
    margin-top: 22px;
  }

  .tcs-bestiaire-closing__button {
    width: 100%;
  }

  .tcs-bestiaire-closing__mark {
    width: 150px;

    justify-self: center;
  }

  .tcs-bestiaire-closing__symbol {
    font-size: 2rem;
  }

  .tcs-bestiaire-closing__mark p {
    margin-top: 8px;

    font-size: 0.74rem;
    letter-spacing: 0.06em;
  }

}


/* =========================
   TRÈS PETIT MOBILE
   ========================= */

@media (max-width: 420px) {

  .tcs-bestiaire-closing {
    padding:
      44px
      12px;
  }

  .tcs-bestiaire-closing__mark {
    width: 140px;
  }

  .tcs-bestiaire-closing__symbol {
    font-size: 1.9rem;
  }

}


/* =========================
   ACCESSIBILITÉ
   ========================= */

@media (prefers-reduced-motion: reduce) {

  .tcs-bestiaire-closing__button {
    transition: none;
  }

  .tcs-bestiaire-closing__button:hover {
    transform: none;
  }

}/* End custom CSS */