@import url('https://fonts.googleapis.com/css2?family=Poppins:ital,wght@0,400;0,500;0,600;0,700;1,400&display=swap');
:root{--m21-navy:#0f2a44;--m21-blue:#1b8fc0;--m21-mag:#e5005b;--m21-yel:#ffc400;--m21-wa:#25D366;--m21-bg:#f4f7fb;--m21-line:#e3e9f0;--m21-r:16px;--m21-sh:0 6px 24px rgba(15,42,68,.07);--m21-sh2:0 18px 40px rgba(15,42,68,.16)}
html,body{overflow-x:hidden}
body.theme-top-store{background:var(--m21-bg)!important;font-family:'Poppins',sans-serif!important;color:#3b4d61}
body.theme-top-store h1,body.theme-top-store h2,body.theme-top-store h3,body.theme-top-store h4,.thunk-title,.product_title,.page-title{font-family:'Poppins',sans-serif!important;color:var(--m21-navy)}
body.theme-top-store img{max-width:100%;height:auto}
body.theme-top-store a{transition:color .2s,background .2s,transform .2s,box-shadow .2s}
::selection{background:var(--m21-mag);color:#fff}
#masthead .elementor-top-section{background:linear-gradient(115deg,#0f2a44 0%,#14507a 50%,#1b8fc0 100%)!important;box-shadow:0 6px 24px rgba(15,42,68,.25);position:relative}
#masthead .elementor-top-section:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,#00aeef 0 25%,#e5005b 25% 50%,#ffc400 50% 75%,#0f2a44 75%)}
#masthead .wpr-search-form-input{border-radius:40px 0 0 40px!important;border:0!important;padding-left:24px!important;font-family:'Poppins'!important;box-shadow:inset 0 0 0 2px rgba(255,255,255,.2)}
#masthead .wpr-search-form-submit{border-radius:0 40px 40px 0!important;background:var(--m21-mag)!important}
#masthead .wpr-search-form-submit:hover{background:var(--m21-yel)!important;color:var(--m21-navy)!important}
#masthead .wpr-nav-menu>li>a{border:0!important;outline:0!important;box-shadow:none!important;font-family:'Poppins'!important;font-weight:600!important;letter-spacing:.6px;padding:10px 18px!important;border-radius:40px;color:#fff!important}
#masthead .wpr-nav-menu>li>a:before,#masthead .wpr-nav-menu>li>a:after{display:none!important}
#masthead .wpr-nav-menu>li>a:hover,#masthead .wpr-nav-menu>li:hover>a,#masthead .wpr-nav-menu>li.current-menu-item>a{background:rgba(255,255,255,.16)!important;color:var(--m21-yel)!important}
#masthead .wpr-sub-menu{background:#fff!important;border-radius:14px!important;box-shadow:var(--m21-sh2)!important;padding:10px 0!important;min-width:250px!important;border:0!important;border-top:3px solid var(--m21-mag)!important;overflow:hidden}
#masthead .wpr-sub-menu a{color:var(--m21-navy)!important;background:transparent!important;font-family:'Poppins'!important;font-weight:500!important;font-size:14px!important;padding:11px 22px!important;border:0!important;text-transform:none!important}
#masthead .wpr-sub-menu a:hover{color:var(--m21-mag)!important;background:#fff0f6!important;padding-left:28px!important}
.thunk-heading{border:0!important;margin-bottom:14px!important}
.thunk-heading .thunk-title,.thunk-title{font-weight:700!important;font-size:20px!important;text-transform:none!important;position:relative;padding-left:16px!important;letter-spacing:0}
.thunk-heading .thunk-title:before{content:"";position:absolute;left:0;top:12%;height:76%;width:5px;border-radius:6px;background:linear-gradient(var(--m21-mag),var(--m21-yel))}
.thunk-product-wrap{padding:8px!important}
.thunk-product{background:#fff!important;border-radius:var(--m21-r)!important;box-shadow:var(--m21-sh)!important;overflow:hidden!important;border:1px solid var(--m21-line)!important;transition:transform .3s ease,box-shadow .3s ease!important;height:100%}
.thunk-product:hover{transform:translateY(-6px);box-shadow:var(--m21-sh2)!important;border-color:transparent!important}
.thunk-product-image{overflow:hidden;background:#eef4fa}
.thunk-product-image img{transition:transform .5s ease!important;width:100%;aspect-ratio:1/1;object-fit:cover}
.thunk-product:hover .thunk-product-image img{transform:scale(1.05)}
.thunk-product-content{padding:14px 14px 18px!important;text-align:center}
.thunk-product-content h2,.thunk-product-content .woocommerce-loop-product__title,.woocommerce-loop-product__title{font-family:'Poppins'!important;font-weight:600!important;font-size:15px!important;color:var(--m21-navy)!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;line-height:1.35!important;margin-bottom:6px!important}
.thunk-product .price,.woocommerce ul.products li.product .price{color:var(--m21-mag)!important;font-weight:700!important;font-size:16px!important;white-space:normal!important}
.m21-from{display:block;font-size:11px;font-weight:600;color:#8a9bb0;text-transform:uppercase;letter-spacing:1.2px;line-height:1.4}
.summary .price .m21-from{display:inline;font-size:13px;margin-right:6px}
#sidebar-primary .widget,#sidebar-primary .menu-category-list{background:#fff!important;border-radius:var(--m21-r)!important;box-shadow:var(--m21-sh)!important;border:1px solid var(--m21-line)!important;overflow:hidden}
#sidebar-primary .widget-title{font-family:'Poppins'!important;font-weight:700!important;color:var(--m21-navy)!important;border-bottom:2px solid var(--m21-line)!important;padding-bottom:10px!important}
#sidebar-primary .cat-toggle{background:linear-gradient(90deg,var(--m21-mag),#ff3d7f)!important;border-radius:0!important}
#sidebar-primary .menu-category-list li a:hover{color:var(--m21-mag)!important;padding-left:6px}
#sidebar-primary .widget_tag_cloud{display:none!important}
.single-product div.product .summary{background:#fff;border-radius:var(--m21-r);box-shadow:var(--m21-sh);border:1px solid var(--m21-line);padding:30px!important}
.single-product div.product .product_title{font-size:34px!important;font-weight:700!important;line-height:1.2!important;text-transform:none!important;text-align:left!important}
.single-product div.product .summary>.price{font-size:26px!important;color:var(--m21-mag)!important;font-weight:700!important}
.single-product div.product .summary h3{font-size:13px!important;margin:18px 0 8px!important;color:var(--m21-mag)!important;text-transform:uppercase;letter-spacing:1.5px;font-weight:700!important}
.single-product div.product .summary ul{list-style:none;padding:0!important;margin:0 0 10px!important}
.single-product div.product .summary ul li{position:relative;padding:5px 0 5px 24px;border-bottom:1px dashed var(--m21-line);font-size:14px}
.single-product div.product .summary ul li:before{content:"";position:absolute;left:4px;top:13px;width:8px;height:8px;border-radius:50%;background:var(--m21-blue)}
.single-product .woocommerce-product-gallery{border-radius:var(--m21-r);overflow:hidden;box-shadow:var(--m21-sh)}
.single-product .woocommerce-product-gallery img{border-radius:var(--m21-r)}
table.variations{margin:18px 0 6px!important;border:0!important}
table.variations th,table.variations td{border:0!important;padding:6px 0!important;vertical-align:middle!important;background:transparent!important}
table.variations th label,table.variations td.label label{font-weight:600!important;color:var(--m21-navy)!important;font-size:14px}
table.variations select{width:100%!important;max-width:100%!important;border:2px solid var(--m21-line)!important;border-radius:12px!important;padding:11px 14px!important;min-height:48px;font-family:'Poppins'!important;font-size:14px!important;background-color:#fff!important;color:var(--m21-navy)!important;cursor:pointer}
table.variations select:focus{border-color:var(--m21-blue)!important;outline:0;box-shadow:0 0 0 4px rgba(27,143,192,.12)}
.reset_variations{font-size:12px;color:#8a9bb0!important}
.woocommerce-variation-price .price{font-size:30px!important;color:var(--m21-mag)!important;font-weight:700!important;display:block;margin:6px 0 10px}
.single-product form.cart{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.single-product form.cart .quantity input{border-radius:12px!important}
.single_add_to_cart_button,.woocommerce .button.alt,.woocommerce a.checkout-button,#place_order,.woocommerce button.button{background:var(--m21-navy)!important;color:#fff!important;border-radius:40px!important;padding:14px 28px!important;font-family:'Poppins'!important;font-weight:600!important;text-transform:none!important;border:0!important;letter-spacing:.3px}
.single_add_to_cart_button:hover,.woocommerce .button.alt:hover,.woocommerce a.checkout-button:hover,#place_order:hover,.woocommerce button.button:hover{background:var(--m21-mag)!important;transform:translateY(-2px);box-shadow:0 10px 22px rgba(229,0,91,.3)}
#m21-wa-product,.cart-collaterals a[href^="https://wa.me/"],.woocommerce-order a[href^="https://wa.me/"]{display:inline-flex!important;align-items:center;justify-content:center;gap:10px;background:var(--m21-wa)!important;color:#fff!important;border-radius:40px!important;padding:14px 28px!important;font-family:'Poppins'!important;font-weight:600!important;box-shadow:0 10px 24px rgba(37,211,102,.35);text-decoration:none!important;animation:m21pulse 2.4s infinite}
#m21-wa-product:before,.cart-collaterals a[href^="https://wa.me/"]:before,.woocommerce-order a[href^="https://wa.me/"]:before{content:"";width:22px;height:22px;flex:0 0 22px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 2a10 10 0 0 0-8.6 15.1L2 22l5-1.3A10 10 0 1 0 12 2zm0 18.2a8.2 8.2 0 0 1-4.2-1.2l-.3-.2-3 .8.8-2.9-.2-.3A8.2 8.2 0 1 1 12 20.2zm4.5-6.1c-.2-.1-1.5-.7-1.7-.8-.2-.1-.4-.1-.6.1l-.8 1c-.1.2-.3.2-.5.1a6.7 6.7 0 0 1-3.3-2.9c-.3-.4.2-.4.7-1.3.1-.2 0-.3 0-.4l-.8-1.8c-.2-.5-.4-.4-.6-.4h-.5a1 1 0 0 0-.7.3 3 3 0 0 0-.9 2.2 5.2 5.2 0 0 0 1.1 2.7 11.8 11.8 0 0 0 4.5 4c1.7.7 2.3.8 3.2.6.5-.1 1.5-.6 1.7-1.2.2-.6.2-1.1.2-1.2-.1-.1-.3-.2-.5-.3z'/%3E%3C/svg%3E") no-repeat center/contain}
#m21-wa-product:hover,.cart-collaterals a[href^="https://wa.me/"]:hover,.woocommerce-order a[href^="https://wa.me/"]:hover{background:#1ebe5a!important;transform:translateY(-2px);animation:none}
@keyframes m21pulse{0%,100%{box-shadow:0 10px 24px rgba(37,211,102,.35)}50%{box-shadow:0 10px 30px rgba(37,211,102,.6),0 0 0 6px rgba(37,211,102,.12)}}
.woocommerce-products-header__title,.woocommerce .page-title{font-size:30px!important;font-weight:700!important}
.woocommerce-breadcrumb{font-size:13px!important;color:#8a9bb0!important}
.woocommerce-ordering select{border:2px solid var(--m21-line)!important;border-radius:40px!important;padding:8px 16px!important;font-family:'Poppins'!important;background:#fff!important}
.woocommerce table.shop_table{background:#fff!important;border-radius:var(--m21-r)!important;box-shadow:var(--m21-sh);border:1px solid var(--m21-line)!important;overflow:hidden;border-collapse:separate!important}
.woocommerce table.shop_table th{background:#f7fafd!important;color:var(--m21-navy)!important;font-weight:600!important}
.woocommerce .cart-collaterals .cart_totals{background:#fff;border-radius:var(--m21-r);box-shadow:var(--m21-sh);padding:22px;border:1px solid var(--m21-line)}
.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{background:#fff;border-radius:var(--m21-r);box-shadow:var(--m21-sh);padding:26px;border:1px solid var(--m21-line)}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container .select2-selection--single{border:2px solid var(--m21-line)!important;border-radius:12px!important;padding:12px 14px!important;min-height:48px;font-family:'Poppins'!important;background:#fff!important}
.woocommerce form .form-row input.input-text:focus,.woocommerce form .form-row textarea:focus{border-color:var(--m21-blue)!important;box-shadow:0 0 0 4px rgba(27,143,192,.12)}
.woocommerce form .form-row label{font-weight:600;color:var(--m21-navy)}
.woocommerce-info,.woocommerce-message{border-top-color:var(--m21-blue)!important;border-radius:12px;background:#fff!important;box-shadow:var(--m21-sh)}
footer .elementor-section,footer.site-footer{border-top:4px solid var(--m21-mag)}
@media (max-width:1024px){.single-product div.product .product_title{font-size:28px!important}}
@media (max-width:767px){
.thunk-product-content{padding:10px 8px 14px!important}
.thunk-product-content h2,.woocommerce-loop-product__title{font-size:13px!important}
.thunk-product .price{font-size:14px!important}
.single-product div.product .summary{padding:18px!important;margin-top:16px}
.single-product div.product .product_title{font-size:24px!important}
table.variations,table.variations tbody,table.variations tr,table.variations th,table.variations td{display:block!important;width:100%!important}
.single-product form.cart .single_add_to_cart_button,#m21-wa-product{width:100%!important}
.single-product form.cart>div[style]{width:100%}
.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{padding:16px}
.woocommerce table.shop_table_responsive tr td{padding:10px 12px!important}
#masthead .wpr-nav-menu>li>a{padding:10px 14px!important}
}
/* --- Ajustements en-tête --- */
#masthead .elementor-element-f3fa6ed{width:100%!important;max-width:100%!important}
#masthead .elementor-element-f3fa6ed .wpr-nav-menu{justify-content:center;flex-wrap:wrap}
#masthead .elementor-element-f3fa6ed .wpr-nav-menu>li>a{font-size:14px!important;padding:12px 20px!important}
#masthead .elementor-element-79857c3 .wpr-nav-menu{display:flex!important;flex-wrap:wrap;justify-content:center;gap:4px}
#masthead .elementor-element-79857c3 .wpr-nav-menu>li>a{font-size:13px!important;padding:7px 12px!important}
#masthead .elementor-top-section:after{height:3px}

/* --- Fiche produit ShopEngine --- */
.shopengine-single .elementor-element-6cd0cf0{background:#fff;border-radius:var(--m21-r);box-shadow:var(--m21-sh);border:1px solid var(--m21-line);padding:30px!important}
.shopengine-product-title .product-title{font-size:34px!important;font-weight:700!important;text-align:left!important;color:var(--m21-navy)!important;line-height:1.2!important}
.shopengine-product-price .price{color:var(--m21-mag)!important;font-weight:700!important;font-size:28px!important}
.shopengine-product-price .price .m21-from{display:inline;font-size:12px;margin-right:8px;vertical-align:middle}
.shopengine-product-description{font-size:14.5px;line-height:1.6;color:#4a5d73}
.shopengine-product-description h3{font-size:13px!important;margin:20px 0 8px!important;color:var(--m21-mag)!important;text-transform:uppercase;letter-spacing:1.5px;font-weight:700!important}
.shopengine-product-description ul{list-style:none!important;padding:0!important;margin:0 0 6px!important;background:#f7fafd;border-radius:12px;padding:6px 16px!important}
.shopengine-product-description ul li{position:relative;padding:7px 0 7px 22px;border-bottom:1px dashed var(--m21-line);margin:0!important}
.shopengine-product-description ul li:last-child{border-bottom:0}
.shopengine-product-description ul li:before{content:"";position:absolute;left:2px;top:15px;width:8px;height:8px;border-radius:50%;background:var(--m21-blue)}
.shopengine-single .variations select,.shopengine-swatches select{width:100%!important;border:2px solid var(--m21-line)!important;border-radius:12px!important;padding:11px 14px!important;min-height:48px;font-family:'Poppins'!important;background:#fff!important;color:var(--m21-navy)!important}
.woocommerce-variation-add-to-cart,.shopengine-single form.cart:not(.variations_form){display:flex!important;flex-wrap:wrap;align-items:center;gap:10px}
.woocommerce-variation-add-to-cart>div:has(#m21-wa-product),form.cart>div:has(#m21-wa-product){order:99;width:100%!important;margin-top:4px}
#m21-wa-product{margin:0!important}
.shopengine-single .quantity{border-radius:12px;overflow:hidden}
@media (max-width:767px){.shopengine-single .elementor-element-6cd0cf0{padding:18px!important}.shopengine-product-title .product-title{font-size:24px!important}#m21-wa-product{width:100%}}

.shopengine-single .elementor-element-6cd0cf0>.elementor-widget-shopengine-product-description{order:50;border-top:1px solid var(--m21-line);padding-top:8px;margin-top:8px}

form.cart .shopengine-comparison{display:none!important}

/* --- Mobile : en-tête & widgets --- */
@media (max-width:767px){
 #masthead .elementor-inner-section .elementor-container{flex-wrap:wrap!important}
 #masthead .elementor-inner-section .elementor-column{width:100%!important;max-width:100%!important}
 #masthead .elementor-inner-section .elementor-column .elementor-widget-wrap{justify-content:center}
 #masthead .wpr-search-form-input{min-width:0!important;flex:1 1 auto!important;width:100%!important}
 #masthead .wpr-search-form{display:flex!important;width:100%!important}
 #masthead .elementor-element-1da6eb3{max-width:100%!important;width:100%!important;flex:1 1 100%!important}
 #masthead .wpr-search-form-input-wrap{flex:1 1 auto!important;width:auto!important}
 .owl-carousel{overflow:hidden}
}

/* --- Accueil : grilles fixes à la place des carrousels --- */
.m21-hidden-owl{display:none!important}
.m21-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:6px 0 26px}
.m21-grid>*{width:auto!important;margin:0!important;float:none!important}
.m21-grid.m21-cats{grid-template-columns:repeat(4,minmax(0,1fr))}
.m21-grid.m21-list{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.m21-grid .thunk-category{background:#fff;border-radius:12px;box-shadow:var(--m21-sh);border:1px solid var(--m21-line);padding:12px;text-align:center;height:100%}
.m21-grid .thunk-category:hover{transform:translateY(-3px);box-shadow:var(--m21-sh2)}
.thunk-heading .thunk-slide-nav,.thunk-heading [class*=nav]{display:none!important}
@media (max-width:1024px){.m21-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.m21-grid,.m21-grid.m21-cats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.m21-grid.m21-list{grid-template-columns:1fr}}


/* --- Grand écran : menus bien visibles --- */
@media (min-width:768px){
 #masthead .elementor-element-79857c3{width:auto!important;max-width:none!important}
 #masthead .elementor-element-79857c3 .wpr-nav-menu{flex-wrap:nowrap!important;gap:6px;background:rgba(255,255,255,.10);border-radius:40px;padding:4px!important}
 #masthead .elementor-element-79857c3 .wpr-nav-menu>li>a{font-size:13px!important;padding:8px 12px!important;white-space:nowrap}
 #masthead .elementor-element-79857c3 .wpr-nav-menu-container{display:flex!important;justify-content:flex-end}
 #masthead .elementor-element-f3fa6ed .wpr-nav-menu-container{display:flex!important;justify-content:center!important}
 #masthead .elementor-element-f3fa6ed .wpr-nav-menu{display:inline-flex!important;flex-wrap:nowrap!important;gap:6px;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);border-radius:40px;padding:5px!important;margin:6px 0 10px!important}
 #masthead .elementor-element-f3fa6ed .wpr-nav-menu>li>a{font-size:15px!important;font-weight:700!important;letter-spacing:.8px;padding:12px 24px!important;white-space:nowrap}
 #masthead .elementor-element-f3fa6ed .wpr-nav-menu>li>a:hover,#masthead .elementor-element-f3fa6ed .wpr-nav-menu>li:hover>a{background:#fff!important;color:#e5005b!important}
 #masthead .elementor-element-f3fa6ed .wpr-sub-menu a{font-size:15px!important;padding:12px 24px!important}
}
