/**
 * Theme Name: Astra Child
 * Template:   astra
 * Version:    2.0.0
 * Description: Multivers.pt — CSS centralisé
 */

@import url('https://fonts.googleapis.com/css2?family=DM+Sans:ital,opsz,wght@0,9..40,300;0,9..40,400;0,9..40,500;0,9..40,600;0,9..40,700&family=DM+Serif+Display&display=swap');

:root {
  --navy:      #1B2A4A;
  --navy-l:    #243558;
  --navy-dark: #111D33;
  --accent:    #2563EB;
  --red:       #D32F2F;
  --green:     #16A34A;
  --white:     #FFFFFF;
  --off-white: #F8F9FB;
  --g100:      #F1F3F7;
  --g200:      #E2E6EF;
  --g400:      #9BA5B9;
  --g600:      #5A6478;
  --g800:      #2D3448;
  --text:      #1A202C;
  --r:   10px;
  --rl:  16px;
  --sh-sm: 0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.06);
  --sh-md: 0 4px 16px rgba(0,0,0,.10);
  --sh-lg: 0 12px 40px rgba(0,0,0,.14);
  --t: 0.22s cubic-bezier(.4,0,.2,1);
}

body { font-family: 'DM Sans', system-ui, sans-serif !important; font-size: 15px; color: var(--text); -webkit-font-smoothing: antialiased; }
::-webkit-scrollbar { width: 6px; }
::-webkit-scrollbar-track { background: var(--g100); }
::-webkit-scrollbar-thumb { background: var(--g400); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: var(--navy); }

/* HEADER */
.ast-above-header-wrap, .ast-above-header, .ast-above-header-bar { background: var(--navy) !important; border-bottom: none !important; min-height: 36px !important; }
.ast-above-header-bar * { color: #CBD5E1 !important; font-size: 12.5px !important; font-weight: 400 !important; }
#masthead, .site-header, .main-header-bar { background: var(--white) !important; border-bottom: 1px solid var(--g200) !important; box-shadow: none !important; padding: 14px 0 !important; }
.site-title a, .ast-site-title-wrap a { font-family: 'DM Serif Display', serif !important; font-size: 26px !important; color: var(--navy-dark) !important; }
.search-form input[type="search"], .fibo-search-wrapper input, .ast-woo-header-search-wrap input { border: 1.5px solid var(--g200) !important; border-radius: 50px !important; background: var(--g100) !important; font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; padding: 10px 20px !important; }
.search-form input[type="search"]:focus, .fibo-search-wrapper input:focus { border-color: var(--accent) !important; box-shadow: 0 0 0 3px rgba(37,99,235,.12) !important; background: var(--white) !important; outline: none !important; }
.ast-woo-header-cart-count, .ast-cart-menu-wrap .count { background: var(--accent) !important; color: var(--white) !important; font-size: 10px !important; font-weight: 700 !important; border-radius: 50% !important; }

/* NAVIGATION */
#site-navigation, .main-navigation, .ast-nav-menu-wrap, nav.ast-flex, .ast-nav-menu-wrap .main-header-bar-navigation { background: var(--navy) !important; }
.main-navigation ul, .ast-nav-menu { background: var(--navy) !important; }
.main-navigation ul li a, .ast-nav-menu > li > a { color: rgba(255,255,255,.85) !important; font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; font-weight: 500 !important; padding: 14px 18px !important; border-radius: 6px !important; transition: color var(--t), background var(--t) !important; }
.main-navigation ul li a:hover, .ast-nav-menu > li > a:hover, .main-navigation ul li.current-menu-item > a, .ast-nav-menu > li.current-menu-item > a { color: var(--white) !important; background: rgba(255,255,255,.1) !important; }
.main-navigation .sub-menu, .ast-nav-menu .sub-menu { background: var(--white) !important; border: 1px solid var(--g200) !important; border-radius: var(--r) !important; box-shadow: var(--sh-lg) !important; padding: 6px !important; }
.main-navigation .sub-menu li a, .ast-nav-menu .sub-menu li a { color: var(--g800) !important; font-size: 13.5px !important; padding: 8px 14px !important; border-radius: 6px !important; }
.main-navigation .sub-menu li a:hover { color: var(--accent) !important; background: var(--g100) !important; }

/* FOOTER */
.mv-footer { background: var(--navy-dark) !important; color: #94A3B8 !important; font-family: 'DM Sans', sans-serif !important; }
.mv-footer-main { max-width: 1200px !important; margin: 0 auto !important; padding: 64px 40px 48px !important; }
.mv-footer-grid { display: grid !important; grid-template-columns: 1.4fr 1fr 1fr 1fr !important; gap: 48px !important; }
.mv-footer-logo-link { display: inline-block !important; margin-bottom: 16px !important; }
.mv-footer-logo { height: 40px !important; width: auto !important; object-fit: contain !important; filter: brightness(0) invert(1) !important; opacity: .9 !important; }
.mv-footer-tagline { font-size: 13.5px !important; color: #64748B !important; line-height: 1.7 !important; margin: 0 0 20px !important; max-width: 240px !important; }
.mv-footer-badges { display: flex !important; flex-direction: column !important; gap: 8px !important; margin-bottom: 24px !important; }
.mv-badge { font-size: 12px !important; color: #64748B !important; font-weight: 500 !important; }
.mv-footer-social { display: flex !important; gap: 10px !important; }
.mv-social-link { display: flex !important; align-items: center !important; justify-content: center !important; width: 36px !important; height: 36px !important; border-radius: 8px !important; background: rgba(255,255,255,.06) !important; color: #94A3B8 !important; transition: all var(--t) !important; border: 1px solid rgba(255,255,255,.08) !important; }
.mv-social-link:hover { background: var(--accent) !important; color: var(--white) !important; border-color: var(--accent) !important; transform: translateY(-2px) !important; }
.mv-footer-heading { font-family: 'DM Sans', sans-serif !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; color: #475569 !important; margin: 0 0 18px !important; padding-bottom: 12px !important; border-bottom: 1px solid rgba(255,255,255,.06) !important; }
.mv-footer-links { list-style: none !important; margin: 0 !important; padding: 0 !important; display: flex !important; flex-direction: column !important; gap: 10px !important; }
.mv-footer-links li { margin: 0 !important; padding: 0 !important; }
.mv-footer-links a { font-size: 13.5px !important; color: #94A3B8 !important; text-decoration: none !important; transition: color var(--t) !important; font-family: 'DM Sans', sans-serif !important; display: inline-flex !important; align-items: center !important; gap: 6px !important; }
.mv-footer-links a::before { content: "" !important; display: inline-block !important; width: 4px !important; height: 4px !important; border-radius: 50% !important; background: #334155 !important; flex-shrink: 0 !important; transition: background var(--t) !important; }
.mv-footer-links a:hover { color: var(--white) !important; }
.mv-footer-links a:hover::before { background: var(--accent) !important; }
.mv-footer-contact-info { margin-top: 20px !important; padding-top: 16px !important; border-top: 1px solid rgba(255,255,255,.06) !important; display: flex !important; flex-direction: column !important; gap: 6px !important; }
.mv-footer-contact-info p { font-size: 13px !important; color: #64748B !important; margin: 0 !important; }
.mv-footer-contact-info a { color: #94A3B8 !important; text-decoration: none !important; }
.mv-footer-contact-info a:hover { color: var(--white) !important; }
.mv-footer-trust { margin-top: 24px !important; padding-top: 20px !important; border-top: 1px solid rgba(255,255,255,.06) !important; }
.mv-footer-trust-title { font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; color: #475569 !important; margin: 0 0 12px !important; }
.mv-footer-payment-row { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.mv-pay-badge { font-size: 11px; font-weight: 600; padding: 3px 8px; border-radius: 4px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.08); color: #CBD5E1; }
.mv-footer-bottom { border-top: 1px solid rgba(255,255,255,.06) !important; background: rgba(0,0,0,.15) !important; }
.mv-footer-bottom-inner { max-width: 1200px !important; margin: 0 auto !important; padding: 18px 40px !important; display: flex !important; align-items: center !important; justify-content: space-between !important; gap: 24px !important; flex-wrap: wrap !important; }
.mv-footer-copy { font-size: 12px !important; color: #334155 !important; margin: 0 !important; line-height: 1.6 !important; }
.mv-footer-copy strong { color: #475569 !important; font-weight: 600 !important; }
.mv-footer-bottom-links { display: flex !important; gap: 20px !important; }
.mv-footer-bottom-links a { font-size: 12px !important; color: #334155 !important; text-decoration: none !important; transition: color var(--t) !important; }
.mv-footer-bottom-links a:hover { color: #94A3B8 !important; }
@media (max-width: 1024px) { .mv-footer-grid { grid-template-columns: 1fr 1fr !important; gap: 40px !important; } .mv-footer-brand { grid-column: 1 / -1 !important; } .mv-footer-tagline { max-width: 100% !important; } }
@media (max-width: 640px) { .mv-footer-main { padding: 48px 24px 32px !important; } .mv-footer-grid { grid-template-columns: 1fr !important; gap: 32px !important; } .mv-footer-bottom-inner { flex-direction: column !important; text-align: center !important; padding: 16px 24px !important; } .mv-footer-bottom-links { justify-content: center !important; } }

/* GLOBAL WOO */
.woocommerce span.onsale { background: var(--accent) !important; color: var(--white) !important; font-family: 'DM Sans', sans-serif !important; font-size: 11px !important; font-weight: 700 !important; border-radius: 6px !important; padding: 4px 10px !important; min-height: unset !important; min-width: unset !important; line-height: 1.5 !important; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span, ul.page-numbers li a, ul.page-numbers li span { border: none !important; box-shadow: none !important; border-radius: 8px !important; color: var(--g800) !important; font-weight: 500 !important; font-size: 13px !important; }
.woocommerce nav.woocommerce-pagination ul li a:hover, ul.page-numbers li a:hover { background: var(--g100) !important; color: var(--navy) !important; border: none !important; }
.woocommerce nav.woocommerce-pagination ul li span.current, ul.page-numbers li span.current { background: var(--navy) !important; color: var(--white) !important; border: none !important; border-radius: 8px !important; }
.woocommerce-breadcrumb, .ast-breadcrumbs-wrapper { font-size: 12.5px !important; color: var(--g400) !important; padding: 12px 0 !important; }
.woocommerce-breadcrumb a { color: var(--g600) !important; }
.woocommerce-breadcrumb a:hover { color: var(--accent) !important; }
.woocommerce-message { border-top: 3px solid var(--green) !important; background: #F0FDF4 !important; border-radius: 0 0 var(--r) var(--r) !important; font-family: 'DM Sans', sans-serif !important; }
.woocommerce-info { border-top: 3px solid var(--accent) !important; background: #EFF6FF !important; font-family: 'DM Sans', sans-serif !important; }
.woocommerce-error { border-top: 3px solid var(--red) !important; background: #FEF2F2 !important; font-family: 'DM Sans', sans-serif !important; }

/* BOUTIQUE */
body.woocommerce .widget-title, body.woocommerce .widgettitle, body.post-type-archive-product .widget-title, body.tax-product_cat .widget-title { font-family: 'DM Sans', sans-serif !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; color: var(--g400) !important; border-bottom: 1px solid var(--g200) !important; padding-bottom: 10px !important; margin-bottom: 14px !important; }
body.woocommerce .woocommerce .woocommerce-ordering select { border: 1.5px solid var(--g200) !important; border-radius: var(--r) !important; font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; padding: 8px 14px !important; }
body.woocommerce .woocommerce-result-count { font-size: 13px !important; color: var(--g400) !important; }

body.woocommerce .woocommerce ul.products li.product,
body.post-type-archive-product .woocommerce ul.products li.product,
body.tax-product_cat .woocommerce ul.products li.product { background: var(--white) !important; border: 1px solid var(--g200) !important; border-radius: var(--rl) !important; padding: 16px !important; box-shadow: var(--sh-sm) !important; transition: box-shadow var(--t), transform var(--t), border-color var(--t) !important; overflow: hidden !important; }
body.woocommerce .woocommerce ul.products li.product:hover,
body.post-type-archive-product .woocommerce ul.products li.product:hover,
body.tax-product_cat .woocommerce ul.products li.product:hover { box-shadow: var(--sh-lg) !important; transform: translateY(-4px) !important; border-color: #CBD5E1 !important; }

body.woocommerce .woocommerce-loop-product__title,
body.post-type-archive-product .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce-loop-product__title { font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; color: var(--g800) !important; line-height: 1.4 !important; margin-top: 8px !important; min-height: 70px !important; }

body.woocommerce .woocommerce ul.products li.product h2 a,
body.woocommerce .woocommerce ul.products li.product h3 a,
body.post-type-archive-product .woocommerce ul.products li.product h2 a,
body.post-type-archive-product .woocommerce ul.products li.product h3 a { color: var(--g800) !important; font-family: 'DM Sans', sans-serif !important; }

body.woocommerce .woocommerce ul.products li.product .price,
body.post-type-archive-product .woocommerce ul.products li.product .price { font-family: 'DM Sans', sans-serif !important; font-weight: 700 !important; font-size: 18px !important; color: var(--navy-dark) !important; }
body.woocommerce .woocommerce ul.products li.product .price del { color: var(--g400) !important; font-weight: 400 !important; font-size: 13px !important; }
body.woocommerce .woocommerce ul.products li.product .price ins { color: var(--accent) !important; text-decoration: none !important; font-weight: 700 !important; }

body.woocommerce .woocommerce a.button.add_to_cart_button,
body.post-type-archive-product .woocommerce a.button.add_to_cart_button,
body.tax-product_cat .woocommerce a.button.add_to_cart_button { background: var(--navy) !important; color: var(--white) !important; border-radius: var(--r) !important; font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; padding: 9px 18px !important; width: 100% !important; text-align: center !important; margin-top: 8px !important; display: block !important; transition: all var(--t) !important; border: none !important; cursor: pointer !important; }
body.woocommerce .woocommerce a.button.add_to_cart_button:hover,
body.post-type-archive-product .woocommerce a.button.add_to_cart_button:hover { background: var(--accent) !important; transform: translateY(-1px) !important; box-shadow: 0 4px 12px rgba(37,99,235,.3) !important; }

/* FICHE PRODUIT */
/* Titre */
body.single-product .product_title { font-family: 'DM Sans', sans-serif !important; font-size: 24px !important; font-weight: 700 !important; color: var(--navy-dark) !important; letter-spacing: -0.02em !important; margin-bottom: 12px !important; line-height: 1.3 !important; }

/* Prix */
body.single-product .woocommerce div.product .price { font-size: 28px !important; font-weight: 800 !important; color: var(--red) !important; margin-bottom: 16px !important; }
body.single-product .woocommerce div.product .price del { font-size: 17px !important; color: var(--g400) !important; font-weight: 400 !important; margin-right: 8px !important; }

/* Formulaire ATC */
body.single-product .woocommerce div.product form.cart { display: flex !important; flex-wrap: wrap !important; gap: 12px !important; align-items: center !important; margin-top: 16px !important; }
body.single-product .woocommerce div.product .quantity input,
body.single-product .woocommerce .quantity input.qty { width: 72px !important; height: 48px !important; font-size: 16px !important; text-align: center !important; border: 1.5px solid var(--g200) !important; border-radius: 8px !important; font-family: 'DM Sans', sans-serif !important; font-weight: 600 !important; }
body.single-product .woocommerce div.product .single_add_to_cart_button { flex: 1 !important; min-width: 180px !important; background: var(--navy) !important; color: var(--white) !important; font-family: 'DM Sans', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; padding: 13px 28px !important; border-radius: 10px !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; box-shadow: 0 4px 14px rgba(27,42,74,.3) !important; transition: all var(--t) !important; border: none !important; cursor: pointer !important; }
body.single-product .woocommerce div.product .single_add_to_cart_button:hover { background: var(--accent) !important; transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(37,99,235,.35) !important; }

/* GALERIE — plus compacte */
body.single-product .woocommerce div.product .woocommerce-product-gallery { border-radius: var(--rl) !important; border: 1px solid var(--g200) !important; overflow: hidden !important; max-width: 100% !important; }
body.single-product .woocommerce-product-gallery__image img { max-height: 420px !important; width: 100% !important; object-fit: contain !important; background: var(--g100) !important; }
body.single-product .flex-control-thumbs { display: flex !important; flex-wrap: wrap !important; gap: 6px !important; padding: 8px !important; background: var(--g100) !important; margin: 0 !important; list-style: none !important; }
body.single-product .flex-control-thumbs li { width: calc(16.66% - 6px) !important; flex-shrink: 0 !important; }
body.single-product .flex-control-thumbs li img { width: 100% !important; height: 64px !important; object-fit: contain !important; border-radius: 6px !important; border: 2px solid transparent !important; background: var(--white) !important; cursor: pointer !important; transition: border-color var(--t) !important; padding: 4px !important; }
body.single-product .flex-control-thumbs li img.flex-active,
body.single-product .flex-control-thumbs li img:hover { border-color: var(--accent) !important; }

/* DESCRIPTION COURTE — tronquée */
body.single-product .woocommerce div.product .woocommerce-product-details__short-description { background: var(--g100) !important; padding: 16px !important; border-radius: 10px !important; font-size: 14px !important; line-height: 1.65 !important; margin: 16px 0 !important; }
body.single-product .woocommerce-product-details__short-description.mv-truncated { max-height: 120px !important; overflow: hidden !important; position: relative !important; }
body.single-product .woocommerce-product-details__short-description.mv-truncated::after { content: "" !important; position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important; height: 48px !important; background: linear-gradient(to bottom, transparent, var(--g100)) !important; pointer-events: none !important; }
body.single-product .woocommerce-product-details__short-description.mv-expanded { max-height: none !important; }
body.single-product .woocommerce-product-details__short-description.mv-expanded::after { display: none !important; }

/* BOUTON VER MAIS */
.mv-readmore-btn { display: block !important; width: 100% !important; margin-top: 6px !important; background: none !important; border: 1.5px solid var(--g200) !important; border-radius: 8px !important; color: var(--g600) !important; font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; padding: 8px 16px !important; cursor: pointer !important; text-align: center !important; transition: all var(--t) !important; }
.mv-readmore-btn:hover { border-color: var(--accent) !important; color: var(--accent) !important; background: rgba(37,99,235,.04) !important; }

/* DESCRIPTION LONGUE (onglet) */
.mv-long-desc-inner.mv-long-truncated { max-height: 280px !important; overflow: hidden !important; position: relative !important; }
.mv-long-desc-inner.mv-long-truncated::after { content: "" !important; position: absolute !important; bottom: 0 !important; left: 0 !important; right: 0 !important; height: 80px !important; background: linear-gradient(to bottom, transparent, var(--off-white)) !important; pointer-events: none !important; }
.mv-long-desc-inner.mv-long-expanded { max-height: none !important; }
.mv-long-desc-inner.mv-long-expanded::after { display: none !important; }
.mv-readmore-long { margin-top: 12px !important; }

/* MÉTA PRODUIT */
body.single-product .woocommerce div.product .product_meta { display: flex !important; flex-wrap: wrap !important; gap: 12px 24px !important; margin: 16px 0 !important; padding: 14px 0 !important; border-top: 1px solid var(--g200) !important; border-bottom: 1px solid var(--g200) !important; font-size: 13px !important; color: var(--g600) !important; }
body.single-product .woocommerce div.product .product_meta > span { flex: 1 1 auto !important; min-width: 120px !important; }
body.single-product .woocommerce div.product .product_meta a { color: var(--accent) !important; }

/* ONGLETS */
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs { border-bottom: 2px solid var(--g200) !important; padding: 0 !important; background: none !important; }
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li { background: none !important; border: none !important; border-radius: 0 !important; margin: 0 !important; }
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a { font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; color: var(--g600) !important; padding: 12px 20px !important; border-bottom: 2px solid transparent !important; margin-bottom: -2px !important; }
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
body.single-product .woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color: var(--navy) !important; border-bottom-color: var(--navy) !important; }
body.single-product .woocommerce div.product .woocommerce-tabs .panel { border: 1px solid var(--g200) !important; border-radius: 0 var(--r) var(--r) var(--r) !important; padding: 24px !important; background: var(--off-white) !important; }

/* Mise en forme du contenu de description longue */
body.single-product .woocommerce-Tabs-panel--description h2,
body.single-product .woocommerce-Tabs-panel--description h3 { font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; font-weight: 700 !important; color: var(--navy) !important; margin: 16px 0 6px !important; text-transform: uppercase !important; letter-spacing: 0.06em !important; }
body.single-product .woocommerce-Tabs-panel--description p { font-size: 14px !important; line-height: 1.7 !important; color: var(--g800) !important; margin-bottom: 10px !important; }
body.single-product .woocommerce-Tabs-panel--description ul,
body.single-product .woocommerce-Tabs-panel--description ol { padding-left: 20px !important; margin-bottom: 12px !important; }
body.single-product .woocommerce-Tabs-panel--description li { font-size: 14px !important; line-height: 1.65 !important; color: var(--g800) !important; margin-bottom: 4px !important; }

/* PRODUITS LIÉS */
body.single-product .related.products { margin: 40px 0 24px !important; padding: 24px !important; background: var(--g100) !important; border-radius: 12px !important; border-top: 3px solid var(--navy) !important; }
body.single-product .related.products h2 { color: var(--navy) !important; font-size: 18px !important; font-weight: 800 !important; text-align: center !important; margin-bottom: 20px !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; }
body.single-product .related.products ul.products { display: grid !important; grid-template-columns: repeat(5, 1fr) !important; gap: 14px !important; }
body.single-product .related.products ul.products li.product { display: flex !important; flex-direction: column !important; min-height: 300px !important; }
body.single-product .related.products ul.products li.product img { height: 140px !important; object-fit: contain !important; padding: 8px !important; }
body.single-product .related.products ul.products li.product .woocommerce-loop-product__title { font-size: 12px !important; text-align: center !important; min-height: 50px !important; padding: 6px 8px !important; }
body.single-product .related.products ul.products li.product .price { text-align: center !important; font-size: 15px !important; color: var(--red) !important; padding: 0 8px 6px !important; }
body.single-product .related.products ul.products li.product .button { margin: auto 8px 10px !important; width: calc(100% - 16px) !important; background: var(--navy) !important; color: white !important; font-size: 12px !important; font-weight: 700 !important; padding: 8px 0 !important; border-radius: 7px !important; text-align: center !important; display: block !important; border: none !important; cursor: pointer !important; }
body.single-product .related.products ul.products li.product .button:hover { background: var(--accent) !important; }

/* TRUST BADGES — masqués (remplacés par micro-ligne) */
.mv-trust-badges { display: none !important; }

/* MICRO-LIGNE livraison/retour sous le bouton ATC */
.mv-delivery-line { display: flex !important; align-items: center !important; justify-content: center !important; gap: 16px !important; margin: 10px 0 4px !important; font-family: 'DM Sans', sans-serif !important; font-size: 12px !important; font-weight: 500 !important; color: var(--g400) !important; }
.mv-delivery-line span { display: flex !important; align-items: center !important; gap: 5px !important; }

/* BLOC PAIEMENT ASTRA — style épuré */
body.single-product fieldset.ast-single-product-payments { border: 1px solid var(--g200) !important; border-radius: 10px !important; padding: 14px 20px !important; margin: 16px 0 !important; background: var(--white) !important; }
body.single-product fieldset.ast-single-product-payments legend { font-family: 'DM Sans', sans-serif !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; color: var(--g400) !important; padding: 0 8px !important; }
body.single-product fieldset.ast-single-product-payments ul { display: flex !important; align-items: center !important; justify-content: center !important; gap: 12px !important; flex-wrap: wrap !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
body.single-product fieldset.ast-single-product-payments ul li { margin: 0 !important; padding: 0 !important; }
body.single-product fieldset.ast-single-product-payments ul li img { height: 28px !important; width: auto !important; object-fit: contain !important; opacity: 0.85 !important; transition: opacity var(--t) !important; }
body.single-product fieldset.ast-single-product-payments ul li img:hover { opacity: 1 !important; }

/* MÉTA PRODUIT — compacte, une seule ligne */
body.single-product .woocommerce div.product .product_meta { display: flex !important; flex-wrap: wrap !important; gap: 0 24px !important; margin: 12px 0 8px !important; padding: 0 !important; border: none !important; font-size: 12px !important; color: var(--g400) !important; }
body.single-product .woocommerce div.product .product_meta > span { flex: none !important; min-width: unset !important; }
body.single-product .woocommerce div.product .product_meta a { color: var(--g600) !important; text-decoration: none !important; }
body.single-product .woocommerce div.product .product_meta a:hover { color: var(--accent) !important; }

/* STOCK masqué */
body.single-product .woocommerce div.product .stock { display: none !important; }

/* Bloc paiement plugin Multibanco ifthenpay — masqué (redondant) */
.ifthenpay_logos_container, .ifthenpay-payment-icons-container,
.ifthen_wc_product_logos, .ifthenpay_secure_payment,
.ifthen-logos-wrap, div[class*="ifthenpay"][class*="logo"],
div[class*="ifthen"][class*="secure"] { display: none !important; }

/* STICKY ADD-TO-CART */
#mv-sticky-cart { position: fixed !important; bottom: 0 !important; left: 0 !important; right: 0 !important; z-index: 9998 !important; background: var(--white) !important; border-top: 1px solid var(--g200) !important; box-shadow: 0 -4px 20px rgba(0,0,0,.10) !important; padding: 12px 20px !important; transform: translateY(100%) !important; transition: transform 0.28s cubic-bezier(.4,0,.2,1) !important; }
#mv-sticky-cart.mv-sticky-visible { transform: translateY(0) !important; }
.mv-sticky-inner { max-width: 700px !important; margin: 0 auto !important; display: flex !important; align-items: center !important; gap: 16px !important; }
.mv-sticky-title { font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; color: var(--navy) !important; flex: 1 !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
.mv-sticky-btn { background: var(--navy) !important; color: var(--white) !important; font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; font-weight: 700 !important; border: none !important; border-radius: 8px !important; padding: 11px 24px !important; cursor: pointer !important; white-space: nowrap !important; transition: background var(--t) !important; }
.mv-sticky-btn:hover { background: var(--accent) !important; }

/* PANIER */
body.woocommerce-cart .woocommerce { display: flex !important; flex-wrap: wrap !important; align-items: flex-start !important; gap: 32px !important; }
body.woocommerce-cart .woocommerce::before, body.woocommerce-cart .woocommerce::after { display: none !important; }
body.woocommerce-cart .woocommerce form.woocommerce-cart-form { flex: 1 1 0 !important; min-width: 0 !important; float: none !important; }
body.woocommerce-cart .woocommerce .cart-collaterals { flex: 0 0 360px !important; width: 360px !important; float: none !important; position: sticky !important; top: 24px !important; }
body.woocommerce-cart .cart-collaterals .cart_totals { float: none !important; width: 100% !important; }
body.woocommerce-cart h1.entry-title { font-size: 26px !important; font-weight: 700 !important; color: var(--navy) !important; border-left: 4px solid var(--accent) !important; padding-left: 14px !important; margin-bottom: 24px !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart { border: none !important; border-collapse: separate !important; border-spacing: 0 10px !important; background: transparent !important; width: 100% !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart thead th { background: transparent !important; border: none !important; border-bottom: 2px solid var(--g200) !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; color: var(--g400) !important; padding: 0 16px 14px !important; vertical-align: middle !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart tbody tr.cart_item { background: var(--white) !important; box-shadow: var(--sh-sm) !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart tbody tr.cart_item:hover { box-shadow: var(--sh-md) !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart tbody tr.cart_item td { border: none !important; padding: 16px !important; vertical-align: middle !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart tbody tr.cart_item td:first-child { border-radius: var(--r) 0 0 var(--r) !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart tbody tr.cart_item td:last-child { border-radius: 0 var(--r) var(--r) 0 !important; text-align: right !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-remove { width: 40px !important; text-align: center !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-remove a.remove { display: inline-flex !important; align-items: center !important; justify-content: center !important; width: 28px !important; height: 28px !important; border-radius: 50% !important; background: var(--g100) !important; color: var(--g400) !important; font-size: 16px !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-remove a.remove:hover { background: #FEE2E2 !important; color: #EF4444 !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-thumbnail { width: 90px !important; text-align: center !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-thumbnail img { width: 70px !important; height: 70px !important; object-fit: contain !important; border-radius: 8px !important; border: 1px solid var(--g200) !important; padding: 6px !important; background: var(--g100) !important; display: block !important; margin: 0 auto !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-name a { font-size: 14px !important; font-weight: 600 !important; color: var(--navy) !important; line-height: 1.4 !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-name a:hover { color: var(--accent) !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-price { text-align: center !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-price .woocommerce-Price-amount { font-size: 14px !important; font-weight: 500 !important; color: var(--g600) !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-quantity { text-align: center !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-quantity .qty { border: 1.5px solid var(--g200) !important; border-radius: 8px !important; font-weight: 600 !important; font-size: 14px !important; height: 40px !important; width: 60px !important; text-align: center !important; background: var(--white) !important; display: inline-block !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-subtotal { text-align: right !important; }
body.woocommerce-cart .woocommerce table.shop_table.cart .product-subtotal .woocommerce-Price-amount { font-size: 16px !important; font-weight: 700 !important; color: var(--navy) !important; }
body.woocommerce-cart .woocommerce-cart-form td.actions { background: transparent !important; border: none !important; padding: 12px 0 0 !important; text-align: right !important; }
body.woocommerce-cart .woocommerce-cart-form td.actions .coupon { display: none !important; }
body.woocommerce-cart .woocommerce-cart-form td.actions button[name="update_cart"] { background: transparent !important; color: var(--g600) !important; border: 1.5px solid var(--g200) !important; border-radius: 8px !important; font-size: 13px !important; font-weight: 600 !important; padding: 9px 18px !important; cursor: pointer !important; font-family: 'DM Sans', sans-serif !important; }
body.woocommerce-cart .woocommerce-cart-form td.actions button[name="update_cart"]:hover { background: var(--g100) !important; color: var(--navy) !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals { background: var(--white) !important; border: 1px solid var(--g200) !important; border-radius: var(--rl) !important; padding: 24px !important; box-shadow: var(--sh-md) !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals > h2 { font-size: 16px !important; font-weight: 700 !important; color: var(--navy) !important; margin-bottom: 16px !important; padding-bottom: 14px !important; border-bottom: 1px solid var(--g200) !important; font-family: 'DM Sans', sans-serif !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table { border: none !important; width: 100% !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table tr, body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table th, body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table td { border: none !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table th, body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table td { padding: 10px 0 !important; font-size: 14px !important; border-bottom: 1px solid var(--g100) !important; font-family: 'DM Sans', sans-serif !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table th { font-weight: 500 !important; color: var(--g600) !important; width: 50% !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table td { text-align: right !important; font-weight: 600 !important; color: var(--g800) !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table .shipping, body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table tr.shipping { display: table-row !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table .shipping th, body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table .shipping td { display: table-cell !important; padding: 10px 0 !important; border-bottom: 1px solid var(--g100) !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table .shipping td { color: var(--green) !important; font-weight: 600 !important; text-align: right !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table .shipping td ul { list-style: none !important; margin: 0 !important; padding: 0 !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table .shipping td ul li label { color: var(--green) !important; font-weight: 600 !important; font-size: 13px !important; }
body.woocommerce-cart .woocommerce-shipping-destination, body.woocommerce-cart .woocommerce-shipping-calculator, body.woocommerce-cart .shipping-calculator-button, body.woocommerce-cart .shipping-calculator-form { display: none !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table tr.order-total th, body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table tr.order-total td { font-size: 17px !important; font-weight: 800 !important; color: var(--navy) !important; border-bottom: none !important; padding-top: 14px !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals table tr.order-total td .woocommerce-Price-amount { font-size: 22px !important; font-weight: 800 !important; color: var(--navy) !important; }
.multivers-coupon-wrapper { margin-bottom: 16px !important; padding: 12px 0 8px !important; border-top: 1px solid var(--g200) !important; }
.multivers-coupon-wrapper label { display: block !important; font-size: 11px !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.08em !important; color: var(--g400) !important; margin-bottom: 8px !important; font-family: 'DM Sans', sans-serif !important; }
.multivers-coupon-inner { display: flex !important; gap: 8px !important; }
.multivers-coupon-inner input[type="text"] { flex: 1 !important; border: 1.5px solid var(--g200) !important; border-radius: 8px !important; padding: 10px 14px !important; font-size: 13px !important; background: var(--g100) !important; color: var(--text) !important; font-family: 'DM Sans', sans-serif !important; }
.multivers-coupon-inner button { background: var(--navy) !important; color: var(--white) !important; border: none !important; border-radius: 8px !important; padding: 10px 16px !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; cursor: pointer !important; white-space: nowrap !important; font-family: 'DM Sans', sans-serif !important; }
.multivers-coupon-inner button:hover { background: var(--accent) !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout { margin-top: 16px !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout a.checkout-button { display: block !important; width: 100% !important; background: var(--navy) !important; color: var(--white) !important; text-align: center !important; font-size: 15px !important; font-weight: 700 !important; padding: 15px 28px !important; border-radius: var(--r) !important; border: none !important; letter-spacing: 0.02em !important; box-shadow: 0 4px 14px rgba(27,42,74,.25) !important; font-family: 'DM Sans', sans-serif !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout a.checkout-button:hover { background: var(--accent) !important; transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(37,99,235,.3) !important; }
body.woocommerce-cart .woocommerce .cart-collaterals .cart_totals .wc-proceed-to-checkout::after { content: "🔒 Pagamento 100% seguro"; display: block !important; text-align: center !important; font-size: 12px !important; color: var(--g400) !important; margin-top: 10px !important; font-weight: 500 !important; }
.multivers-payment-icons { display: flex !important; align-items: center !important; justify-content: center !important; gap: 12px !important; padding: 12px 0 4px !important; margin-top: 8px !important; flex-wrap: wrap !important; border-top: 1px solid var(--g200) !important; }
.multivers-payment-icons img { height: 26px !important; width: auto !important; object-fit: contain !important; opacity: 0.85 !important; }
.multivers-payment-icons img:hover { opacity: 1 !important; }
body.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message { position: fixed !important; bottom: 24px !important; right: 24px !important; top: auto !important; left: auto !important; width: auto !important; max-width: 320px !important; z-index: 9999 !important; border-radius: 10px !important; border-top: none !important; background: var(--navy) !important; color: var(--white) !important; font-size: 14px !important; font-weight: 600 !important; padding: 14px 20px !important; box-shadow: 0 8px 24px rgba(0,0,0,.2) !important; animation: slideInNotice 0.3s ease, fadeOutNotice 0.5s ease 3s forwards !important; }
body.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message .button.wc-forward { display: none !important; }
body.woocommerce-cart .woocommerce-notices-wrapper .woocommerce-message::before { content: "✓ " !important; font-weight: 800 !important; color: #4ADE80 !important; }
body.woocommerce-cart .cart-empty, body.woocommerce-cart .woocommerce-info { position: static !important; background: #EFF6FF !important; color: var(--navy) !important; border-top: 3px solid var(--accent) !important; border-radius: 8px !important; animation: none !important; }
@keyframes slideInNotice { from { transform: translateY(20px); opacity: 0; } to { transform: translateY(0); opacity: 1; } }
@keyframes fadeOutNotice { from { opacity: 1; } to { opacity: 0; pointer-events: none; } }

/* CHECKOUT */
body.woocommerce-checkout .woocommerce-form-coupon-toggle, body.woocommerce-checkout .checkout_coupon { display: none !important; }
body.woocommerce-checkout #customer_details { width: 55% !important; float: left !important; padding-right: 32px !important; }
body.woocommerce-checkout #order_review_heading, body.woocommerce-checkout #order_review { width: 40% !important; float: right !important; }
body.woocommerce-checkout h3, body.woocommerce-checkout #order_review_heading { font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; font-weight: 700 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; color: var(--g400) !important; border-bottom: 2px solid var(--g200) !important; border-left: none !important; border-top: none !important; border-right: none !important; padding: 0 0 12px !important; margin-bottom: 20px !important; background: none !important; }
body.woocommerce-checkout .form-row label { font-family: 'DM Sans', sans-serif !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; color: var(--g600) !important; margin-bottom: 6px !important; display: block !important; }
body.woocommerce-checkout .form-row input[type="text"], body.woocommerce-checkout .form-row input[type="email"], body.woocommerce-checkout .form-row input[type="tel"], body.woocommerce-checkout .form-row input[type="password"], body.woocommerce-checkout .form-row select, body.woocommerce-checkout .form-row textarea { font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; color: var(--text) !important; border: 1.5px solid var(--g200) !important; border-radius: 10px !important; padding: 12px 16px !important; height: auto !important; width: 100% !important; background: var(--white) !important; box-shadow: none !important; }
body.woocommerce-checkout .form-row input:focus, body.woocommerce-checkout .form-row select:focus, body.woocommerce-checkout .form-row textarea:focus { border-color: var(--accent) !important; box-shadow: 0 0 0 3px rgba(37,99,235,.12) !important; outline: none !important; }
body.woocommerce-checkout .form-row .optional { font-size: 11px !important; color: var(--g400) !important; font-weight: 400 !important; text-transform: none !important; }
body.woocommerce-checkout #ship-to-different-address { background: var(--g100) !important; border-radius: 10px !important; padding: 14px 18px !important; margin: 20px 0 !important; border: 1.5px solid var(--g200) !important; }
body.woocommerce-checkout #ship-to-different-address label { font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; color: var(--g800) !important; text-transform: none !important; letter-spacing: 0 !important; cursor: pointer !important; }
body.woocommerce-checkout #order_review { background: var(--white) !important; border: 1px solid var(--g200) !important; border-radius: var(--rl) !important; padding: 24px !important; box-shadow: var(--sh-md) !important; }
body.woocommerce-checkout #order_review table.shop_table { border: none !important; border-collapse: collapse !important; width: 100% !important; }
body.woocommerce-checkout #order_review table.shop_table thead th { font-family: 'DM Sans', sans-serif !important; font-size: 11px !important; font-weight: 700 !important; letter-spacing: 0.08em !important; text-transform: uppercase !important; color: var(--g400) !important; background: transparent !important; border: none !important; border-bottom: 2px solid var(--g200) !important; padding: 0 0 12px !important; }
body.woocommerce-checkout #order_review table.shop_table tbody tr td { font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; color: var(--g800) !important; border: none !important; border-bottom: 1px solid var(--g100) !important; padding: 12px 0 !important; vertical-align: middle !important; }
body.woocommerce-checkout #order_review table .product-name { font-weight: 600 !important; color: var(--navy) !important; }
body.woocommerce-checkout #order_review table .product-name .product-quantity { color: var(--g400) !important; font-weight: 400 !important; font-size: 12px !important; }
body.woocommerce-checkout #order_review table tfoot tr th, body.woocommerce-checkout #order_review table tfoot tr td { font-family: 'DM Sans', sans-serif !important; border: none !important; border-top: 1px solid var(--g100) !important; padding: 10px 0 !important; font-size: 14px !important; color: var(--g600) !important; }
body.woocommerce-checkout #order_review table tfoot tr th { font-weight: 500 !important; }
body.woocommerce-checkout #order_review table tfoot tr td { text-align: right !important; font-weight: 600 !important; color: var(--g800) !important; }
body.woocommerce-checkout #order_review table tfoot .order-shipping td { color: var(--green) !important; }
body.woocommerce-checkout #order_review table tfoot .order-total th, body.woocommerce-checkout #order_review table tfoot .order-total td { font-size: 18px !important; font-weight: 800 !important; color: var(--navy-dark) !important; border-top: 2px solid var(--g200) !important; padding-top: 14px !important; }
body.woocommerce-checkout #order_review table tfoot .order-total td .woocommerce-Price-amount { font-size: 22px !important; font-weight: 800 !important; color: var(--navy-dark) !important; }
body.woocommerce-checkout #payment { background: var(--g100) !important; border-radius: 12px !important; border: 1.5px solid var(--g200) !important; padding: 20px !important; margin-top: 20px !important; }
body.woocommerce-checkout #payment ul.payment_methods { border-bottom: 1px solid var(--g200) !important; margin-bottom: 16px !important; padding-bottom: 16px !important; }
body.woocommerce-checkout #payment ul.payment_methods li { padding: 10px 0 !important; border: none !important; font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; font-weight: 500 !important; color: var(--g800) !important; }
body.woocommerce-checkout #payment ul.payment_methods li label { font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; font-weight: 600 !important; color: var(--navy) !important; cursor: pointer !important; text-transform: none !important; letter-spacing: 0 !important; }
body.woocommerce-checkout #payment .payment_box { background: var(--white) !important; border-radius: 8px !important; border: 1px solid var(--g200) !important; padding: 12px 16px !important; font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; color: var(--g600) !important; margin-top: 8px !important; }
body.woocommerce-checkout #payment #place_order { display: block !important; width: 100% !important; background: var(--navy) !important; color: var(--white) !important; font-family: 'DM Sans', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; letter-spacing: 0.05em !important; text-transform: uppercase !important; padding: 16px 28px !important; border-radius: 10px !important; border: none !important; cursor: pointer !important; box-shadow: 0 4px 14px rgba(27,42,74,.3) !important; margin-top: 16px !important; }
body.woocommerce-checkout #payment #place_order:hover { background: var(--accent) !important; transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(37,99,235,.35) !important; }
body.woocommerce-checkout #payment .place-order::after { content: "🔒 Pagamento 100% seguro"; display: block !important; text-align: center !important; font-family: 'DM Sans', sans-serif !important; font-size: 12px !important; color: var(--g400) !important; margin-top: 10px !important; font-weight: 500 !important; }

/* MINI CART */
.ast-mini-cart-wrap h2, .widget_shopping_cart_content h2, .woocommerce-mini-cart__title { font-family: 'DM Sans', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; color: var(--navy) !important; }
.woocommerce ul.cart_list li, .woocommerce-mini-cart li, .widget_shopping_cart_content .cart_list li { display: block !important; overflow: hidden !important; padding: 12px 0 !important; border-bottom: 1px solid var(--g100) !important; margin: 0 !important; list-style: none !important; }
.woocommerce ul.cart_list li img, .woocommerce-mini-cart li img, .widget_shopping_cart_content .cart_list li img { float: left !important; width: 56px !important; height: 56px !important; min-width: 56px !important; object-fit: contain !important; border-radius: 6px !important; border: 1px solid var(--g200) !important; padding: 4px !important; background: var(--g100) !important; margin-right: 12px !important; margin-top: 2px !important; display: block !important; }
.woocommerce ul.cart_list li a:not(.remove_from_cart_button), .woocommerce-mini-cart li a:not(.remove_from_cart_button), .widget_shopping_cart_content .cart_list li a:not(.remove) { display: block !important; margin-left: 68px !important; font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; font-weight: 600 !important; color: var(--navy) !important; line-height: 1.4 !important; padding: 0 !important; }
.woocommerce ul.cart_list li a:not(.remove_from_cart_button):hover { color: var(--accent) !important; }
.woocommerce ul.cart_list li .quantity, .woocommerce-mini-cart .quantity, .widget_shopping_cart_content .cart_list li .quantity { display: block !important; margin-left: 68px !important; color: var(--g400) !important; font-size: 13px !important; margin-top: 4px !important; font-family: 'DM Sans', sans-serif !important; }
.woocommerce ul.cart_list li .quantity .woocommerce-Price-amount, .widget_shopping_cart_content .cart_list li .woocommerce-Price-amount { color: var(--navy) !important; font-weight: 700 !important; font-size: 14px !important; }
.woocommerce ul.cart_list li .remove_from_cart_button, .woocommerce-mini-cart li .remove_from_cart_button { float: right !important; color: var(--g400) !important; font-size: 16px !important; line-height: 1 !important; margin-top: 4px !important; background: none !important; border: none !important; }
.woocommerce ul.cart_list li .remove_from_cart_button:hover { color: #EF4444 !important; }
.woocommerce-mini-cart__total, .widget_shopping_cart .total { font-family: 'DM Sans', sans-serif !important; border-top: 1px solid var(--g200) !important; padding: 14px 0 !important; margin-top: 8px !important; color: var(--navy) !important; }
.woocommerce-mini-cart__total .woocommerce-Price-amount, .widget_shopping_cart .total .woocommerce-Price-amount { color: var(--navy) !important; font-size: 18px !important; font-weight: 800 !important; }
.woocommerce-mini-cart__buttons, .widget_shopping_cart_content .buttons { display: flex !important; flex-direction: column !important; gap: 8px !important; padding-top: 4px !important; }
.woocommerce-mini-cart__buttons a, .widget_shopping_cart_content .buttons a { font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; font-weight: 700 !important; border-radius: 8px !important; padding: 12px 20px !important; text-align: center !important; border: none !important; display: block !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; }
.woocommerce-mini-cart__buttons a:not(.checkout), .widget_shopping_cart_content .buttons a:not(.checkout) { background: var(--g100) !important; color: var(--navy) !important; border: 1.5px solid var(--g200) !important; }
.woocommerce-mini-cart__buttons a:not(.checkout):hover { background: var(--g200) !important; }
.woocommerce-mini-cart__buttons a.checkout, .widget_shopping_cart_content .buttons a.checkout { background: var(--navy) !important; color: var(--white) !important; box-shadow: 0 4px 12px rgba(27,42,74,.25) !important; }
.woocommerce-mini-cart__buttons a.checkout:hover { background: var(--accent) !important; transform: translateY(-1px) !important; }
.ast-mini-cart-wrap span, .ast-mini-cart-wrap p, .ast-mini-cart-wrap h2, .ast-mini-cart-wrap .woocommerce-mini-cart__total, .ast-mini-cart-wrap .woocommerce-mini-cart__total *, .ast-cart-menu-wrap span, .ast-cart-menu-wrap p, .ast-cart-menu-wrap h2 { color: var(--navy) !important; }

/* MON COMPTE */
.woocommerce-MyAccount-navigation { background: var(--navy) !important; border-radius: 12px !important; padding: 16px !important; }
.woocommerce-MyAccount-navigation ul li a { color: rgba(255,255,255,.8) !important; font-weight: 600 !important; padding: 10px 16px !important; border-radius: 8px !important; display: block !important; font-family: 'DM Sans', sans-serif !important; }
.woocommerce-MyAccount-navigation ul li.is-active a, .woocommerce-MyAccount-navigation ul li a:hover { background: var(--accent) !important; color: var(--white) !important; }

/* PAGE CONTACT */
.page-id-3614 .entry-content, .page-id-3614 .ast-container { padding: 0 !important; max-width: 100% !important; }
.mv-contact-hero { background: linear-gradient(135deg, var(--navy-dark) 0%, var(--navy) 60%, #1e3a6e 100%) !important; padding: 72px 40px 80px !important; position: relative !important; overflow: hidden !important; }
.mv-contact-hero::before { content: "" !important; position: absolute !important; top: -80px !important; right: -80px !important; width: 400px !important; height: 400px !important; background: radial-gradient(circle, rgba(37,99,235,.18) 0%, transparent 70%) !important; border-radius: 50% !important; }
.mv-contact-hero-inner { max-width: 720px !important; margin: 0 auto !important; text-align: center !important; position: relative !important; z-index: 1 !important; }
.mv-contact-eyebrow { display: inline-block !important; background: rgba(37,99,235,.2) !important; color: #93C5FD !important; font-family: 'DM Sans', sans-serif !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: 0.12em !important; text-transform: uppercase !important; padding: 6px 16px !important; border-radius: 50px !important; border: 1px solid rgba(37,99,235,.35) !important; margin-bottom: 20px !important; }
.mv-contact-hero h1 { font-family: 'DM Serif Display', serif !important; font-size: 42px !important; font-weight: 400 !important; color: var(--white) !important; margin: 0 0 16px !important; line-height: 1.2 !important; }
.mv-contact-hero p { font-family: 'DM Sans', sans-serif !important; font-size: 17px !important; color: #94A3B8 !important; max-width: 500px !important; margin: 0 auto !important; line-height: 1.7 !important; }

.mv-contact-body { display: grid !important; grid-template-columns: 300px 1fr !important; gap: 48px !important; max-width: 1100px !important; margin: 0 auto !important; padding: 60px 40px !important; align-items: start !important; }

.mv-contact-sidebar { display: flex !important; flex-direction: column !important; gap: 16px !important; }
.mv-contact-card { display: flex !important; align-items: flex-start !important; gap: 16px !important; background: var(--white) !important; border: 1px solid var(--g200) !important; border-radius: var(--rl) !important; padding: 20px !important; box-shadow: var(--sh-sm) !important; transition: box-shadow var(--t), transform var(--t) !important; }
.mv-contact-card:hover { box-shadow: var(--sh-md) !important; transform: translateY(-2px) !important; }
.mv-contact-card-icon { font-size: 22px !important; line-height: 1 !important; margin-top: 2px !important; flex-shrink: 0 !important; }
.mv-contact-card-text strong { display: block !important; font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; font-weight: 700 !important; color: var(--navy) !important; margin-bottom: 4px !important; }
.mv-contact-card-text p { font-family: 'DM Sans', sans-serif !important; font-size: 13.5px !important; color: var(--g600) !important; margin: 0 !important; line-height: 1.5 !important; }

.mv-contact-form-wrap { background: var(--white) !important; border: 1px solid var(--g200) !important; border-radius: var(--rl) !important; padding: 40px !important; box-shadow: var(--sh-md) !important; }
.mv-contact-form-header { margin-bottom: 28px !important; padding-bottom: 24px !important; border-bottom: 1px solid var(--g200) !important; }
.mv-contact-form-header h2 { font-family: 'DM Sans', sans-serif !important; font-size: 22px !important; font-weight: 700 !important; color: var(--navy) !important; margin: 0 0 8px !important; }
.mv-contact-form-header p { font-size: 14px !important; color: var(--g600) !important; margin: 0 !important; }

.page-id-3614 .wpcf7 p { margin-bottom: 18px !important; }
.page-id-3614 .wpcf7 label { font-family: 'DM Sans', sans-serif !important; font-size: 12px !important; font-weight: 700 !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; color: var(--g600) !important; margin-bottom: 6px !important; display: block !important; }
.page-id-3614 .wpcf7 input[type="text"],
.page-id-3614 .wpcf7 input[type="email"],
.page-id-3614 .wpcf7 input[type="tel"],
.page-id-3614 .wpcf7 textarea { width: 100% !important; font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; color: var(--text) !important; border: 1.5px solid var(--g200) !important; border-radius: 10px !important; padding: 12px 16px !important; background: var(--white) !important; transition: border-color var(--t), box-shadow var(--t) !important; outline: none !important; box-sizing: border-box !important; }
.page-id-3614 .wpcf7 input:focus,
.page-id-3614 .wpcf7 textarea:focus { border-color: var(--accent) !important; box-shadow: 0 0 0 3px rgba(37,99,235,.12) !important; }
.page-id-3614 .wpcf7 textarea { min-height: 140px !important; resize: vertical !important; }
.page-id-3614 .wpcf7 input[type="file"] { font-family: 'DM Sans', sans-serif !important; font-size: 13px !important; color: var(--g600) !important; border: 1.5px dashed var(--g200) !important; border-radius: 10px !important; padding: 12px 16px !important; width: 100% !important; background: var(--g100) !important; cursor: pointer !important; }
.page-id-3614 .wpcf7 .wpcf7-list-item label { text-transform: none !important; letter-spacing: 0 !important; font-size: 13px !important; font-weight: 500 !important; color: var(--g600) !important; cursor: pointer !important; }
.page-id-3614 .wpcf7 input[type="submit"] { background: var(--navy) !important; color: var(--white) !important; font-family: 'DM Sans', sans-serif !important; font-size: 15px !important; font-weight: 700 !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; padding: 14px 36px !important; border: none !important; border-radius: 10px !important; cursor: pointer !important; width: 100% !important; box-shadow: 0 4px 14px rgba(27,42,74,.25) !important; transition: all var(--t) !important; }
.page-id-3614 .wpcf7 input[type="submit"]:hover { background: var(--accent) !important; transform: translateY(-2px) !important; box-shadow: 0 8px 24px rgba(37,99,235,.3) !important; }
.page-id-3614 .wpcf7-response-output { border-radius: 8px !important; font-family: 'DM Sans', sans-serif !important; font-size: 14px !important; margin-top: 16px !important; padding: 12px 16px !important; }

@media (max-width: 900px) { .mv-contact-body { grid-template-columns: 1fr !important; padding: 40px 24px !important; gap: 32px !important; } .mv-contact-hero { padding: 48px 24px 56px !important; } .mv-contact-hero h1 { font-size: 32px !important; } }
@media (max-width: 600px) { .mv-contact-form-wrap { padding: 24px !important; } .mv-contact-hero h1 { font-size: 26px !important; } }

/* RESPONSIVE */
@media (max-width: 1200px) { body.single-product .related.products ul.products { grid-template-columns: repeat(4, 1fr) !important; } }
@media (max-width: 1024px) { body.single-product .related.products ul.products { grid-template-columns: repeat(3, 1fr) !important; } }
@media (max-width: 900px) {
  body.woocommerce-cart .woocommerce { flex-direction: column !important; }
  body.woocommerce-cart .woocommerce .cart-collaterals { flex: none !important; width: 100% !important; position: static !important; }
  body.woocommerce-cart .woocommerce form.woocommerce-cart-form { width: 100% !important; }
  body.woocommerce-checkout #customer_details { width: 100% !important; float: none !important; padding-right: 0 !important; }
  body.woocommerce-checkout #order_review_heading, body.woocommerce-checkout #order_review { width: 100% !important; float: none !important; }
}
@media (max-width: 768px) {
  .main-navigation ul li a, .ast-nav-menu > li > a { padding: 12px 14px !important; font-size: 13px !important; }
  body.single-product .product_title { font-size: 22px !important; }
  body.single-product .woocommerce div.product .single_add_to_cart_button { width: 100% !important; min-width: auto !important; }
  body.single-product .related.products ul.products { grid-template-columns: repeat(2, 1fr) !important; }
  body.woocommerce-cart .woocommerce table.shop_table.cart thead { display: none !important; }
  body.woocommerce-cart .woocommerce table.shop_table.cart tbody tr.cart_item td { display: block !important; width: 100% !important; }
  body.woocommerce-cart .woocommerce table.shop_table.cart tbody tr.cart_item td:first-child { border-radius: var(--r) var(--r) 0 0 !important; }
  body.woocommerce-cart .woocommerce table.shop_table.cart tbody tr.cart_item td:last-child { border-radius: 0 0 var(--r) var(--r) !important; text-align: left !important; }
}
@media (max-width: 480px) {
  body.woocommerce .woocommerce ul.products li.product { padding: 12px !important; }
  body.single-product .related.products ul.products { grid-template-columns: 1fr !important; }
}
