/* ============================================================
   Econovape theme — design tokens & components
   ============================================================ */
:root{
  --ev-navy:#0a1f3d;
  --ev-navy-2:#0f2a4f;
  --ev-teal:#00b3a6;
  --ev-teal-2:#19c9bb;
  --ev-green:#3ecf8e;
  --ev-orange:#ff6b1a;
  --ev-bg:#ffffff;
  --ev-bg-2:#f6f8fa;
  --ev-bg-3:#eef2f6;
  --ev-text:#0a1f3d;
  --ev-muted:#5b6b7e;
  --ev-line:#e6ebf1;
  --ev-shadow:0 6px 24px rgba(10,31,61,.08);
  --ev-radius:14px;
  --ev-radius-sm:10px;
  --ev-container:1280px;
  --ev-font:'Plus Jakarta Sans',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{font-family:var(--ev-font);color:var(--ev-text);background:var(--ev-bg);line-height:1.5;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--ev-teal);text-decoration:none}
a:hover{color:var(--ev-navy)}
.ev-container{max-width:var(--ev-container);margin:0 auto;padding:0 20px}

/* ---- ICON GUARDS (bulletproof against third-party svg{width:100%} rules) ---- */
svg.ev-icon{width:18px!important;height:18px!important;max-width:18px!important;max-height:18px!important;flex:none!important;display:inline-block!important;vertical-align:middle;fill:currentColor}
.ev-topbar__icon,.ev-tool__icon,.ev-header-cart__icon,.ev-reassurance__icon,.ev-newsletter__icon,.ev-footer__contact .ev-icon,.ev-nav__burger,.ev-search button{flex:none}
.ev-topbar__icon svg,.ev-tool__icon svg,.ev-header-cart__icon svg,.ev-reassurance__icon svg,.ev-newsletter__icon svg,.ev-nav__burger svg,.ev-search button svg{width:18px!important;height:18px!important}
.ev-reassurance__icon svg,.ev-newsletter__icon svg{width:22px!important;height:22px!important;max-width:22px!important;max-height:22px!important}
.ev-nav__burger svg{width:24px!important;height:24px!important;max-width:24px!important;max-height:24px!important}

.ev-accent{color:var(--ev-teal)}
.ev-muted{color:var(--ev-muted)}
.ev-mt-xl{margin-top:48px}
.screen-reader-text,.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:9999}

/* Buttons */
.ev-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 20px;border-radius:10px;font-weight:600;font-size:14px;border:1px solid transparent;cursor:pointer;transition:all .2s;line-height:1;text-decoration:none}
.ev-btn--primary{background:var(--ev-teal);color:#fff}
.ev-btn--primary:hover{background:var(--ev-navy);color:#fff}
.ev-btn--ghost{background:transparent;color:var(--ev-navy);border-color:var(--ev-line)}
.ev-btn--ghost:hover{border-color:var(--ev-teal);color:var(--ev-teal)}
.ev-btn--white{background:#fff;color:var(--ev-navy)}
.ev-btn--sm{padding:8px 14px;font-size:13px}
.ev-link{color:var(--ev-teal);font-weight:600;display:inline-flex;align-items:center;gap:6px}

/* Top bar */
.ev-topbar{background:var(--ev-bg-2);border-bottom:1px solid var(--ev-line);font-size:13px}
.ev-topbar__inner{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 20px;flex-wrap:wrap}
.ev-topbar__promises{list-style:none;margin:0;padding:0;display:flex;gap:28px;flex-wrap:wrap}
.ev-topbar__promises li{display:flex;align-items:center;gap:10px}
.ev-topbar__icon{color:var(--ev-teal);display:inline-flex}
.ev-topbar__text{display:flex;flex-direction:column;line-height:1.2}
.ev-topbar__text strong{font-weight:700;color:var(--ev-navy)}
.ev-topbar__text span{color:var(--ev-muted);font-size:12px}
.ev-topbar__placeholder{color:var(--ev-muted);font-style:italic;font-size:12px}

/* Header */
.ev-header{background:#fff;padding:18px 0}
.ev-header__inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:32px;align-items:center}
.ev-header__inner>*{min-width:0}
.ev-logo{display:inline-block;font-weight:800;font-size:28px;letter-spacing:-.5px;line-height:1;text-decoration:none}
.ev-logo__econo{color:var(--ev-teal)}
.ev-logo__vape{color:var(--ev-navy)}
.custom-logo-link img{max-height:60px;width:auto}
.ev-search{display:flex;background:#fff;border:1.5px solid var(--ev-line);border-radius:50px;overflow:hidden;max-width:560px;margin:0 auto;width:100%}
.ev-search input{flex:1;border:0;padding:12px 20px;font-size:14px;background:transparent;outline:none;font-family:inherit}
.ev-search button{background:var(--ev-teal);color:#fff;border:0;padding:0 22px;cursor:pointer}
.ev-search button:hover{background:var(--ev-navy)}
.ev-header__tools{display:flex;gap:24px;align-items:center}
.ev-tool,.ev-header-cart{display:flex;align-items:center;gap:10px;color:var(--ev-navy);text-decoration:none}
.ev-tool__icon,.ev-header-cart__icon{width:34px;height:34px;min-width:34px;min-height:34px;flex:none;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--ev-bg-2);color:var(--ev-navy);position:relative}
.ev-tool__label,.ev-header-cart__label{display:flex;flex-direction:column;line-height:1.2;font-size:13px}
.ev-tool__label strong,.ev-header-cart__label strong{font-weight:700}
.ev-tool__label span,.ev-header-cart__label span{color:var(--ev-muted);font-size:11px}
.ev-header-cart__count{position:absolute;top:-4px;right:-4px;background:var(--ev-teal);color:#fff;font-size:10px;width:18px;height:18px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700}

/* Nav */
.ev-nav{background:var(--ev-navy);color:#fff}
.ev-nav__inner{display:flex;align-items:center;gap:8px;min-height:54px}
.ev-nav__burger{display:none;background:transparent;border:0;color:#fff;padding:10px;cursor:pointer}
.ev-menu{list-style:none;margin:0;padding:0;display:flex;gap:8px;flex:1}
.ev-menu-item--top{position:relative}
.ev-menu-link{display:flex;align-items:center;gap:6px;color:#fff;padding:14px 20px;font-weight:700;font-size:14px;text-transform:uppercase;letter-spacing:.3px;text-decoration:none}
.ev-menu-link:hover{color:var(--ev-teal-2)}
.ev-menu-item--highlight .ev-menu-link{color:var(--ev-orange)}
.ev-menu-caret{width:14px;height:14px}
.ev-mega-panel,.ev-sub-menu{list-style:none;margin:0;padding:0}
.ev-menu-item--top:hover>.ev-sub-menu,.ev-menu-item--top:focus-within>.ev-sub-menu{display:block}
.ev-sub-menu{display:none;position:absolute;top:100%;left:0;background:#fff;color:var(--ev-text);min-width:240px;border-radius:0 0 var(--ev-radius) var(--ev-radius);box-shadow:var(--ev-shadow);padding:8px 0;z-index:50}
.ev-sub-menu .ev-menu-link{color:var(--ev-text);text-transform:none;padding:10px 18px;font-weight:500}
.ev-sub-menu .ev-menu-link:hover{background:var(--ev-bg-2);color:var(--ev-teal)}
.ev-menu-item--mega{position:static}
.ev-menu-item--mega>.ev-mega-panel{display:none;position:absolute;left:0;right:0;top:100%;background:#fff;color:var(--ev-text);box-shadow:var(--ev-shadow);border-radius:0 0 var(--ev-radius) var(--ev-radius);padding:30px;z-index:50}
.ev-menu-item--mega:hover>.ev-mega-panel{display:grid;grid-template-columns:repeat(5,1fr);gap:24px}
.ev-mega-col>.ev-menu-link{font-weight:700;color:var(--ev-navy);text-transform:uppercase;font-size:13px;padding:0 0 8px}
.ev-mega-col .ev-sub-menu{position:static;display:block;box-shadow:none;padding:0}

/* Hero */
.ev-hero{padding:24px 0}
.ev-hero__viewport{position:relative;background:linear-gradient(135deg,#e6f4ff,#d1efee);border-radius:20px;overflow:hidden;box-shadow:var(--ev-shadow)}
.ev-hero__track{list-style:none;margin:0;padding:0;position:relative;min-height:420px}
.ev-hero__slide{display:none;grid-template-columns:1.1fr 1fr;align-items:center;gap:32px;padding:48px;background-size:cover;background-position:center;min-height:420px}
.ev-hero__slide.is-active{display:grid}
.ev-hero__eyebrow{display:inline-block;background:var(--ev-orange);color:#fff;padding:4px 12px;border-radius:99px;font-size:12px;font-weight:700;text-transform:uppercase;margin-bottom:14px}
.ev-hero__title{font-size:clamp(28px,4vw,52px);line-height:1.05;font-weight:800;margin:0 0 16px;color:var(--ev-navy)}
.ev-hero__text{font-size:17px;color:var(--ev-navy);max-width:480px;margin:0 0 24px}
.ev-hero__ctas{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.ev-hero__chips{list-style:none;display:flex;gap:8px;padding:0;margin:0;flex-wrap:wrap}
.ev-hero__chips li{background:#fff;border:1px solid var(--ev-line);border-radius:99px;padding:6px 12px;font-size:12px;color:var(--ev-navy);display:flex;align-items:center;gap:6px}
.ev-hero__visual{display:flex;justify-content:center;align-items:center;position:relative;min-height:300px}
.ev-hero__visual img{max-height:380px;width:auto}
.ev-hero__placeholder{width:100%;height:300px;background:radial-gradient(circle at 70% 50%,rgba(0,179,166,.2),transparent);position:relative}
.ev-hero__badge{position:absolute;top:20px;right:20px;background:#fff;border-radius:50%;width:120px;height:120px;display:flex;flex-direction:column;align-items:center;justify-content:center;box-shadow:var(--ev-shadow);font-size:11px;text-transform:uppercase;color:var(--ev-teal);font-weight:700}
.ev-hero__badge strong{font-size:32px;color:var(--ev-navy);line-height:1}
.ev-hero__nav{position:absolute;top:50%;transform:translateY(-50%);background:#fff;border:0;width:42px;height:42px;border-radius:50%;cursor:pointer;font-size:24px;color:var(--ev-navy);box-shadow:var(--ev-shadow);z-index:5}
.ev-hero__nav--prev{left:16px}
.ev-hero__nav--next{right:16px}
.ev-hero__dots{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);list-style:none;display:flex;gap:6px;padding:0;margin:0;z-index:5}
.ev-hero__dots button{width:10px;height:10px;border-radius:50%;background:rgba(10,31,61,.3);border:0;cursor:pointer;padding:0}
.ev-hero__dots button.is-active{background:var(--ev-navy);width:24px;border-radius:5px}

/* Categories tiles */
.ev-cats{padding:24px 0}
.ev-cats__grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.ev-cat-tile{background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:18px;text-align:center;transition:all .2s}
.ev-cat-tile:hover{border-color:var(--ev-teal);box-shadow:var(--ev-shadow);transform:translateY(-2px)}
.ev-cat-tile__img{height:80px;background:linear-gradient(135deg,var(--ev-bg-2),var(--ev-bg-3));border-radius:var(--ev-radius-sm);margin-bottom:12px}
.ev-cat-tile h3{font-size:13px;font-weight:700;text-transform:uppercase;margin:0 0 12px;color:var(--ev-navy)}

/* Reassurance */
.ev-reassurance{background:var(--ev-bg-2);padding:18px 0;margin:24px 0;border-top:1px solid var(--ev-line);border-bottom:1px solid var(--ev-line)}
.ev-reassurance ul{list-style:none;padding:0;margin:0;display:flex;justify-content:space-around;gap:20px;flex-wrap:wrap}
.ev-reassurance li{display:flex;align-items:center;gap:12px}
.ev-reassurance__icon{color:var(--ev-teal);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center}
.ev-reassurance__text{display:flex;flex-direction:column;line-height:1.2;font-size:13px}
.ev-reassurance__text strong{font-weight:700;color:var(--ev-navy);text-transform:uppercase;font-size:12px}
.ev-reassurance__text span{color:var(--ev-muted);font-size:12px}

/* Sections */
.ev-section{padding:40px 0}
.ev-section__head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:24px;gap:16px;flex-wrap:wrap}
.ev-section__head h2{font-size:22px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;margin:0;color:var(--ev-navy)}

/* Product cards (custom & WC compatible) */
.ev-products,ul.products{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.ev-products.columns-6,ul.products.columns-6{grid-template-columns:repeat(6,1fr)}
ul.products.columns-4{grid-template-columns:repeat(4,1fr)}
ul.products.columns-3{grid-template-columns:repeat(3,1fr)}
.ev-product-card,ul.products li.product{background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:14px;position:relative;list-style:none;transition:all .2s}
.ev-product-card:hover,ul.products li.product:hover{border-color:var(--ev-teal);box-shadow:var(--ev-shadow)}
.ev-product-card__img,ul.products li.product img{height:160px;width:100%;object-fit:contain;background:var(--ev-bg-2);border-radius:var(--ev-radius-sm);margin-bottom:12px}
.ev-product-card__title,ul.products li.product .woocommerce-loop-product__title{font-size:14px;font-weight:600;margin:0 0 6px;color:var(--ev-navy);line-height:1.3;min-height:36px}
.ev-rating,.star-rating{color:#ffb800;font-size:12px;margin-bottom:8px}
.ev-rating span{color:var(--ev-muted);margin-left:4px}
.ev-price,.price{font-size:16px;font-weight:800;color:var(--ev-navy);margin-bottom:8px}
.price del{color:var(--ev-muted);font-weight:400;font-size:13px;margin-right:4px}
.price ins{text-decoration:none;color:#e63946}
.ev-add-cart,ul.products li.product .button{position:absolute;bottom:14px;right:14px;background:var(--ev-teal);color:#fff;border:0;width:36px;height:36px;border-radius:8px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}
ul.products li.product .button{position:static;width:auto;padding:8px 14px;font-size:13px;font-weight:600}
.ev-card__wishlist{position:absolute;top:12px;right:12px;z-index:2}
.ev-wishlist{background:#fff;border:1px solid var(--ev-line);width:32px;height:32px;border-radius:50%;cursor:pointer;color:var(--ev-muted);display:inline-flex;align-items:center;justify-content:center}
.ev-wishlist:hover,.ev-wishlist.is-active{color:#e63946;border-color:#e63946}
.ev-badge{position:absolute;top:12px;left:12px;padding:4px 10px;border-radius:6px;font-size:11px;font-weight:700;color:#fff;text-transform:uppercase;z-index:2}
.ev-badge--top{background:var(--ev-teal)}
.ev-badge--promo{background:var(--ev-orange)}
span.onsale{background:var(--ev-orange);color:#fff;border-radius:6px;padding:4px 10px;font-weight:700;font-size:11px;text-transform:uppercase;position:absolute;top:12px;left:12px;z-index:2;min-height:0;min-width:0;line-height:1.4}

/* Promo band */
.ev-promo-band{padding:24px 0}
.ev-promo-band__inner{background:linear-gradient(135deg,var(--ev-navy),var(--ev-navy-2));color:#fff;border-radius:var(--ev-radius);padding:28px 32px;display:flex;justify-content:space-between;align-items:center;gap:24px;text-decoration:none}
.ev-promo-band__copy{display:flex;flex-direction:column;gap:4px}
.ev-promo-band__eyebrow{color:var(--ev-orange);font-weight:800;text-transform:uppercase;font-size:13px;letter-spacing:.5px}
.ev-promo-band__title{font-size:32px;font-weight:800;color:#fff}
.ev-promo-band__sub{color:rgba(255,255,255,.8);font-size:14px}

/* Newsletter */
.ev-newsletter{background:#fff;padding:32px 0;border-top:1px solid var(--ev-line)}
.ev-newsletter__inner{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.ev-newsletter__intro{display:flex;align-items:center;gap:14px}
.ev-newsletter__icon{width:40px;height:40px;border-radius:50%;background:var(--ev-bg-2);color:var(--ev-teal);display:inline-flex;align-items:center;justify-content:center}
.ev-newsletter__intro strong{display:block;font-weight:800;color:var(--ev-navy)}
.ev-newsletter__intro p{margin:0;color:var(--ev-muted);font-size:13px}
.ev-newsletter__form{display:flex;flex:1;max-width:480px;border:1px solid var(--ev-line);border-radius:50px;overflow:hidden}
.ev-newsletter__form input{flex:1;border:0;padding:12px 20px;font:inherit;outline:none;background:transparent}
.ev-newsletter__form .ev-btn{border-radius:0;padding:12px 24px}
.ev-newsletter__social{display:flex;align-items:center;gap:10px;color:var(--ev-muted);font-size:13px}
.ev-social{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:14px;text-decoration:none}
.ev-social--fb{background:#1877f2}.ev-social--ig{background:#e4405f}.ev-social--tt{background:#000}.ev-social--yt{background:#ff0000}

/* Footer */
.ev-footer{background:var(--ev-navy);color:#fff;padding:48px 0 0;margin-top:40px}
.ev-footer__grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr) 1.2fr;gap:32px;padding-bottom:32px}
.ev-footer__brand .ev-logo__vape{color:#fff}
.ev-footer__tagline{font-weight:600;margin:12px 0 6px;color:#fff}
.ev-footer__about{color:rgba(255,255,255,.7);font-size:13px;margin:0 0 16px}
.ev-footer__contact{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;font-size:13px;color:rgba(255,255,255,.85)}
.ev-footer__contact a{color:#fff}
.ev-footer__contact li{display:flex;align-items:flex-start;gap:8px}
.ev-footer__contact .ev-icon{color:var(--ev-teal-2)}
.ev-footer h4{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.5px;margin:0 0 14px;font-weight:800}
.ev-footer__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}
.ev-footer__list a{color:rgba(255,255,255,.75);font-size:13px}
.ev-footer__list a:hover{color:var(--ev-teal-2)}
.ev-payments{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.ev-pay{background:#fff;color:var(--ev-navy);border-radius:6px;padding:6px 10px;font-weight:800;font-size:11px;letter-spacing:.5px}
.ev-footer__bottom{border-top:1px solid rgba(255,255,255,.1);padding:18px 0;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:rgba(255,255,255,.6);gap:16px;flex-wrap:wrap}
.ev-pill-18{background:var(--ev-orange);color:#fff;padding:2px 8px;border-radius:99px;font-weight:800;margin-left:6px}

/* Pages */
.ev-shop-wrap{display:grid;grid-template-columns:260px 1fr;gap:32px;padding:24px 20px;max-width:var(--ev-container);margin:0 auto}
.ev-shop-wrap .ev-main--full,.ev-main--full{grid-column:1/-1}
.ev-shop-sidebar{background:#fff}
.ev-widget{background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:18px;margin-bottom:16px}
.ev-widget__title{font-size:14px;font-weight:800;margin:0 0 12px;color:var(--ev-navy);text-transform:uppercase}
.ev-page-head{padding:24px 0}
.ev-page-title{font-size:clamp(28px,4vw,40px);font-weight:800;margin:0 0 8px;color:var(--ev-navy)}
.ev-page-intro{color:var(--ev-muted);max-width:760px;font-size:15px}
.ev-meta{color:var(--ev-muted);font-size:13px;margin:0}
.ev-prose{font-size:15px;line-height:1.7;color:var(--ev-text)}
.ev-prose h2{font-size:22px;color:var(--ev-navy);margin:32px 0 12px;font-weight:800}
.ev-prose h3{font-size:17px;color:var(--ev-navy);margin:24px 0 10px;font-weight:700}
.ev-prose p{margin:0 0 12px}
.ev-prose ul,.ev-prose ol{margin:0 0 16px 20px}
.ev-prose a{color:var(--ev-teal);text-decoration:underline}

/* Breadcrumb */
.ev-breadcrumb{padding:14px 0;font-size:13px;color:var(--ev-muted)}
.ev-breadcrumb a{color:var(--ev-muted)}
.ev-breadcrumb a:hover{color:var(--ev-teal)}

/* Editorial */
.ev-editorial{padding:24px 20px}
.ev-editorial__grid{display:grid;grid-template-columns:260px 1fr;gap:32px;margin-top:24px}
.ev-toc{background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:18px;position:sticky;top:20px}
.ev-toc__title{margin:0 0 12px;font-size:14px;text-transform:uppercase;color:var(--ev-navy);font-weight:800}
.ev-toc ol{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;font-size:13px}
.ev-toc a{color:var(--ev-text);display:flex;gap:8px}
.ev-toc__num{color:var(--ev-teal);font-weight:700;min-width:18px}
.ev-editorial__article{background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:32px}
.ev-editorial__help{background:var(--ev-bg-2);border-radius:var(--ev-radius);padding:20px;margin-top:24px}
.ev-editorial__help-inner{display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.ev-editorial__help-icon{width:44px;height:44px;border-radius:50%;background:#fff;color:var(--ev-teal);display:inline-flex;align-items:center;justify-content:center}
.ev-editorial__help-inner > div{flex:1;min-width:200px}
.ev-editorial__help-inner strong{display:block;color:var(--ev-navy)}
.ev-editorial__help-inner p{margin:0;color:var(--ev-muted);font-size:13px}

/* Contact */
.ev-contact{padding:24px 20px}
.ev-contact__grid{display:grid;grid-template-columns:320px 1fr;gap:32px;margin-top:24px}
.ev-contact__aside{background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:24px;height:fit-content}
.ev-contact__aside h2{margin:0 0 16px;font-size:18px;color:var(--ev-navy)}
.ev-contact__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}
.ev-contact__list li{display:flex;gap:12px;align-items:flex-start}
.ev-contact__icon{width:36px;height:36px;border-radius:50%;background:var(--ev-bg-2);color:var(--ev-teal);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.ev-contact__list strong{display:block;color:var(--ev-navy);font-size:13px}
.ev-contact__list a,.ev-contact__list span{color:var(--ev-muted);font-size:13px}
.ev-contact__hours{margin-top:20px;padding-top:20px;border-top:1px solid var(--ev-line);font-size:13px;color:var(--ev-muted)}
.ev-contact__hours strong{color:var(--ev-navy);display:block;margin-bottom:4px}
.ev-contact__main{background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:32px}
.ev-contact__main h2{font-size:20px;color:var(--ev-navy);margin:24px 0 16px}
.ev-contact__main h2:first-child{margin-top:0}

/* Form */
.ev-form{display:flex;flex-direction:column;gap:14px}
.ev-form__row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ev-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:600;color:var(--ev-navy)}
.ev-form input,.ev-form textarea{border:1px solid var(--ev-line);border-radius:8px;padding:12px;font:inherit;outline:none;font-weight:400}
.ev-form input:focus,.ev-form textarea:focus{border-color:var(--ev-teal)}
.ev-form button{align-self:flex-start;margin-top:8px}

/* FAQ */
.ev-faq{display:flex;flex-direction:column;gap:8px}
.ev-faq details{background:var(--ev-bg-2);border-radius:8px;padding:14px 18px;cursor:pointer}
.ev-faq summary{font-weight:600;color:var(--ev-navy);list-style:none}
.ev-faq summary::-webkit-details-marker{display:none}
.ev-faq summary::after{content:'+';float:right;color:var(--ev-teal);font-weight:700;font-size:18px}
.ev-faq details[open] summary::after{content:'−'}
.ev-faq p{margin:10px 0 0;color:var(--ev-muted);font-size:14px}

/* Single product */
.ev-single-product{padding:24px 20px}
.ev-product__layout{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:32px}
.ev-product__photo-note{font-size:12px;color:var(--ev-muted);margin-top:10px}
.summary .price{font-size:32px;color:var(--ev-navy);font-weight:800}
.summary .product_title{font-size:28px;color:var(--ev-navy);font-weight:800;margin:0 0 12px}
.ev-product__reassurance{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;background:var(--ev-bg-2);border-radius:var(--ev-radius);padding:18px}
.ev-product__reassurance li{display:flex;flex-direction:column;align-items:flex-start;gap:4px;font-size:12px}
.ev-product__reassurance .ev-icon{color:var(--ev-teal)}
.ev-product__reassurance strong{color:var(--ev-navy);font-size:13px}
.ev-product__reassurance span{color:var(--ev-muted)}
.ev-product__advice{background:linear-gradient(135deg,#fff,#f6f8fa);border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:20px;margin-top:20px;border-left:4px solid var(--ev-teal)}
.ev-product__advice-mark{display:block;color:var(--ev-orange);font-size:12px;font-weight:700;margin-bottom:8px;text-transform:uppercase}
.ev-product__advice-mark strong{color:var(--ev-navy)}
.ev-product__advice p{margin:0;color:var(--ev-text);font-size:14px;line-height:1.6}
.woocommerce-tabs{margin-top:32px}
.woocommerce-tabs ul.tabs{list-style:none;padding:0;margin:0 0 20px;display:flex;gap:24px;border-bottom:1px solid var(--ev-line)}
.woocommerce-tabs ul.tabs li a{color:var(--ev-muted);text-decoration:none;padding:12px 0;display:inline-block;font-weight:600}
.woocommerce-tabs ul.tabs li.active a{color:var(--ev-teal);border-bottom:2px solid var(--ev-teal)}

/* Cart / Checkout / Account — base WC styling overrides */
.woocommerce table.shop_table{border:1px solid var(--ev-line);border-radius:var(--ev-radius);overflow:hidden;border-collapse:separate;border-spacing:0;width:100%;background:#fff}
.woocommerce table.shop_table th{background:var(--ev-bg-2);color:var(--ev-navy);padding:14px;text-align:left;font-size:13px;text-transform:uppercase}
.woocommerce table.shop_table td{padding:14px;border-top:1px solid var(--ev-line)}
.woocommerce .cart_totals h2,.woocommerce-checkout h3{color:var(--ev-navy);font-weight:800}
.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);overflow:hidden}
.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--ev-line)}
.woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.woocommerce-MyAccount-navigation li a{display:block;padding:12px 18px;color:var(--ev-text);font-weight:600;text-decoration:none}
.woocommerce-MyAccount-navigation li.is-active a,.woocommerce-MyAccount-navigation li a:hover{background:var(--ev-teal);color:#fff}
/* My Account — neutral wrapper. The .ev-account block (templates/myaccount/my-account.php)
 * carries the dashboard grid. Reset native WooCommerce account grid here. */
.ev-account-wrap{padding:0;max-width:none;width:100%;margin:0}
.ev-account-wrap .ev-main{width:100%;max-width:none;padding:0}
.woocommerce-account .ev-container.ev-shop-wrap,
.woocommerce-account .ev-account-wrap{display:block;max-width:var(--ev-container);width:100%;margin:0 auto;padding:0 20px 48px}
.woocommerce-account .ev-main,
.woocommerce-account .ev-main--full,
.woocommerce-account article.ev-page,
.woocommerce-account .ev-prose,
.woocommerce-account .woocommerce{display:block;width:100%;max-width:none;padding:0;margin:0}
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content{float:none!important;width:auto!important;max-width:none!important;margin:0;min-width:0}
.woocommerce-account .ev-page-head{padding:32px 0 18px}
.woocommerce-account .ev-page-title{margin:0;color:var(--ev-navy);font-size:clamp(30px,4vw,42px)}
.ev-page-wrap{padding:32px 0}
.woocommerce #respond input#submit,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--ev-teal);color:#fff;border-radius:8px;padding:12px 22px;font-weight:600;border:0;font-family:inherit}
.woocommerce #respond input#submit:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--ev-navy);color:#fff}
.woocommerce-message,.woocommerce-info{background:var(--ev-bg-2);border-left:4px solid var(--ev-teal);padding:14px 18px;border-radius:var(--ev-radius-sm);margin-bottom:16px}
.woocommerce-error{background:#fdecea;border-left:4px solid #e63946;padding:14px 18px;border-radius:var(--ev-radius-sm);margin-bottom:16px}

/* Cart page custom */
.ev-cart-page{padding:24px 20px}

/* 404 */
.ev-404{padding:80px 0;text-align:center}
.ev-404__inner{max-width:560px;margin:0 auto}
.ev-404__code{font-size:120px;font-weight:800;color:var(--ev-teal);line-height:1;display:block}
.ev-404__title{font-size:32px;color:var(--ev-navy);margin:8px 0 16px}

/* Maintenance */
.ev-maintenance{font-family:var(--ev-font);background:linear-gradient(135deg,var(--ev-navy),var(--ev-navy-2));color:#fff;min-height:100vh;display:grid;place-items:center;padding:40px}
.ev-maintenance__inner{max-width:560px;text-align:center}
.ev-maintenance__logo{margin-bottom:24px}
.ev-maintenance__logo .ev-logo__vape,.ev-maintenance .ev-logo__vape{color:#fff}
.ev-maintenance h1{font-size:36px;margin:0 0 16px}
.ev-maintenance__contact{margin-top:24px;color:rgba(255,255,255,.7)}
.ev-maintenance__contact a{color:var(--ev-teal-2)}

/* Posts list */
.ev-posts{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.ev-post-card{background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);padding:18px}
.ev-post-card__title{margin:0 0 8px;font-size:18px}
.ev-post-card__title a{color:var(--ev-navy)}
.ev-post-card__excerpt{color:var(--ev-muted);font-size:14px}

/* Responsive */
@media (max-width:1100px){
  .ev-cats__grid{grid-template-columns:repeat(3,1fr)}
  .ev-products.columns-6{grid-template-columns:repeat(3,1fr)}
  .ev-footer__grid{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width:900px){
  .ev-header__inner{grid-template-columns:1fr auto;gap:16px}
  .ev-search{order:3;grid-column:1/-1}
  .ev-tool__label{display:none}
  .ev-header-cart__label{display:none}
  .ev-hero__slide{grid-template-columns:1fr;text-align:center;padding:32px 20px}
  .ev-hero__visual{min-height:200px}
  .ev-shop-wrap{grid-template-columns:1fr}
  .ev-shop-sidebar{order:2}
  .ev-editorial__grid,.ev-contact__grid{grid-template-columns:1fr}
  .ev-toc{position:static}
  .ev-product__layout{grid-template-columns:1fr;gap:24px}
  .woocommerce-account .woocommerce{display:block}
  .ev-products,ul.products{grid-template-columns:repeat(2,1fr)!important}
  .ev-cats__grid{grid-template-columns:repeat(2,1fr)}
  .ev-footer__grid{grid-template-columns:1fr 1fr;gap:24px}
  .ev-nav__burger{display:inline-flex}
  .ev-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--ev-navy);flex-direction:column;padding:8px;z-index:100}
  .ev-menu.is-open{display:flex}
  .ev-menu-item--mega:hover>.ev-mega-panel{display:none}
  .ev-nav{position:relative}
}
@media (max-width:560px){
  .ev-products,ul.products{grid-template-columns:1fr!important}
  .ev-footer__grid{grid-template-columns:1fr}
  .ev-promo-band__inner{flex-direction:column;text-align:center}
  .ev-form__row{grid-template-columns:1fr}
  .ev-topbar__promises li:nth-child(n+3){display:none}
}

/* ============================================================
   v1.0.3 — Corrections (cat thumbs / product grid / promo / footer)
   ============================================================ */

/* Category tiles — real image with object-fit cover */
.ev-cat-tile{padding:0;overflow:hidden}
.ev-cat-tile__link{display:flex;flex-direction:column;align-items:stretch;gap:0;text-decoration:none;color:inherit;height:100%;padding:14px;text-align:center}
.ev-cat-tile__img{position:relative;width:100%;aspect-ratio:4/3;height:auto;min-height:120px;background:linear-gradient(135deg,var(--ev-bg-2),var(--ev-bg-3));border-radius:var(--ev-radius-sm);overflow:hidden;margin:0 0 14px}
.ev-cat-tile__img img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:cover;display:block;transition:transform .3s ease}
.ev-cat-tile:hover .ev-cat-tile__img img{transform:scale(1.04)}
.ev-cat-tile__img.is-empty::after{content:"";position:absolute;inset:30%;border-radius:50%;background:radial-gradient(circle,rgba(0,179,166,.18),transparent 70%)}
.ev-cat-tile h3{font-size:13px;font-weight:700;text-transform:uppercase;margin:0 0 12px;color:var(--ev-navy)}
.ev-cat-tile .ev-btn{align-self:center;margin-top:auto}

/* Top sales — clean grid, equal heights */
.ev-products--grid{display:grid;gap:18px;align-items:stretch}
.ev-products--grid.columns-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1024px){.ev-products--grid.columns-4{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.ev-products--grid.columns-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
.ev-products--grid .ev-product-card{display:flex;flex-direction:column;padding:16px;height:100%;position:relative;background:#fff;border:1px solid var(--ev-line);border-radius:var(--ev-radius);transition:all .2s}
.ev-products--grid .ev-product-card:hover{border-color:var(--ev-teal);box-shadow:var(--ev-shadow);transform:translateY(-2px)}
.ev-product-card__media{display:block;width:100%;aspect-ratio:1/1;background:var(--ev-bg-2);border-radius:var(--ev-radius-sm);overflow:hidden;margin-bottom:12px;position:relative}
.ev-product-card__media img,.ev-product-card__media .ev-product-card__img{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain;display:block;padding:10px;background:transparent;margin:0}
.ev-product-card__img.is-empty{padding:0;background:linear-gradient(135deg,var(--ev-bg-2),var(--ev-bg-3))}
.ev-products--grid .ev-product-card__title{font-size:14px;font-weight:700;color:var(--ev-navy);margin:0 0 8px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:38px}
.ev-products--grid .ev-product-card__title a{color:inherit;text-decoration:none}
.ev-product-card__meta{display:flex;flex-direction:column;gap:6px;margin-top:auto;margin-bottom:12px}
.ev-product-card__meta .ev-rating,.ev-product-card__meta .star-rating{margin:0}
.ev-product-card__meta .ev-price,.ev-product-card__meta .price{margin:0;font-size:18px;font-weight:800;color:var(--ev-navy)}
.ev-product-card__cta{display:flex;width:100%}
.ev-product-card__cta .button,.ev-product-card__cta .added_to_cart{display:inline-flex;align-items:center;justify-content:center;width:100%;padding:10px 14px;background:var(--ev-teal);color:#fff!important;border:0;border-radius:8px;font-weight:700;font-size:13px;text-transform:uppercase;letter-spacing:.3px;text-decoration:none;cursor:pointer;transition:background .2s}
.ev-product-card__cta .button:hover{background:var(--ev-navy)}

/* Promo band — image + bg image support */
.ev-promo-band__inner{position:relative;overflow:hidden;background-size:cover;background-position:center}
.ev-promo-band__media{flex:0 0 auto;max-width:240px}
.ev-promo-band__media img{width:100%;height:auto;max-height:160px;object-fit:contain;display:block}
.ev-promo-band__cta{flex-shrink:0}

/* ---------- Footer redesign — light main + dark bottom bar ---------- */
.ev-footer--light{background:transparent;color:var(--ev-text);padding:0;margin-top:40px}
.ev-footer--light .ev-footer__main{background:#fff;border-top:1px solid var(--ev-line);padding:48px 0 32px}
.ev-footer--light .ev-footer__brand .ev-logo__vape{color:var(--ev-navy)}
.ev-footer--light .ev-footer__tagline{color:var(--ev-navy)}
.ev-footer--light .ev-footer__about,
.ev-footer--light .ev-footer__contact{color:var(--ev-muted)}
.ev-footer--light .ev-footer__contact a{color:var(--ev-navy)}
.ev-footer--light .ev-footer__contact .ev-icon{color:var(--ev-teal)}
.ev-footer--light h4{color:var(--ev-navy)}
.ev-footer--light .ev-footer__list a{color:var(--ev-muted)}
.ev-footer--light .ev-footer__list a:hover{color:var(--ev-teal)}
.ev-footer--light .ev-pay{background:var(--ev-bg-2);color:var(--ev-navy);border:1px solid var(--ev-line)}
.ev-footer__payments-img{max-width:100%;height:auto;max-height:54px;width:auto;display:block}

.ev-footer__bottom-bar{background:var(--ev-navy);color:rgba(255,255,255,.85)}
.ev-footer__bottom-bar .ev-footer__bottom{border-top:0;padding:18px 20px;display:flex;justify-content:space-between;align-items:center;font-size:12px;color:rgba(255,255,255,.75);gap:16px;flex-wrap:wrap}
.ev-footer__bottom-bar .ev-footer__warning .ev-pill-18{background:var(--ev-orange);color:#fff}

/* Newsletter — WPForms friendly */
.ev-newsletter__form-wrap{flex:1;max-width:520px;min-width:240px}
.ev-newsletter__form-wrap .wpforms-container,
.ev-newsletter__form-wrap form{margin:0!important}
.ev-newsletter__form-wrap input[type="email"],
.ev-newsletter__form-wrap input[type="text"]{border:1px solid var(--ev-line);border-radius:8px;padding:12px 14px;font:inherit;width:100%;outline:none}
.ev-newsletter__form-wrap input[type="submit"],
.ev-newsletter__form-wrap button[type="submit"]{background:var(--ev-teal);color:#fff;border:0;border-radius:8px;padding:12px 22px;font-weight:700;cursor:pointer}
.ev-newsletter__form-wrap input[type="submit"]:hover,
.ev-newsletter__form-wrap button[type="submit"]:hover{background:var(--ev-navy)}
.ev-newsletter__placeholder{margin:0;color:var(--ev-muted);font-size:13px;font-style:italic}

/* Responsive guards */
@media(max-width:1024px){
  .ev-cats__grid{grid-template-columns:repeat(3,1fr)}
  .ev-footer__grid{grid-template-columns:1fr 1fr 1fr}
}
@media(max-width:720px){
  .ev-cats__grid{grid-template-columns:repeat(2,1fr)}
  .ev-footer__grid{grid-template-columns:1fr 1fr}
  .ev-promo-band__inner{flex-direction:column;text-align:center}
  .ev-promo-band__media{max-width:180px}
  .ev-hero__slide{grid-template-columns:1fr;padding:28px}
  .ev-header__inner{grid-template-columns:1fr;gap:14px}
  .ev-header__tools{justify-content:space-between}
}
@media(max-width:480px){
  .ev-footer__grid{grid-template-columns:1fr}
}

/* ============================================================ */
/* MEGA MENUS v1.1 — Customizer-driven premium panels           */
/* ============================================================ */
.ev-menu-item--mega{position:static}
.ev-menu-item--mega>.ev-mega,
.ev-menu-item--mega>.ev-mega-panel{display:none}
.ev-menu-item--mega.is-open>.ev-mega,
.ev-menu-item--mega.is-open>.ev-mega-panel,
.ev-menu-item--mega:hover>.ev-mega,
.ev-menu-item--mega:focus-within>.ev-mega{display:block}

.ev-menu-item--mega>.ev-menu-link{position:relative}
.ev-menu-item--mega.is-open>.ev-menu-link::after,
.ev-menu-item--mega:hover>.ev-menu-link::after{
  content:"";position:absolute;left:8px;right:8px;bottom:0;height:3px;background:var(--ev-teal,#00b3a6);border-radius:3px 3px 0 0;
}
.ev-menu-item--highlight .ev-menu-link{color:var(--ev-orange,#ff6b1a)!important}
.ev-menu-link__icon{width:16px;height:16px;flex:none}

/* Container — full-width below nav */
.ev-mega{
  position:absolute;left:0;right:0;top:100%;
  background:#fff;color:#0f172a;
  box-shadow:0 24px 48px -16px rgba(10,31,61,.18),0 4px 12px rgba(10,31,61,.06);
  border-top:1px solid rgba(10,31,61,.06);
  border-radius:0 0 14px 14px;
  z-index:60;
  animation:evMegaIn .18s ease-out;
}
@keyframes evMegaIn{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}
.ev-mega__inner{max-width:1320px;margin:0 auto;padding:28px 32px 24px;display:flex;flex-direction:column;gap:24px}

/* --- Standard layout: cols + promo --- */
.ev-mega__grid{display:grid;grid-template-columns:1fr 320px;gap:32px;align-items:start}
.ev-mega__cols{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:24px}
.ev-mega__col{min-width:0}
.ev-mega__col-head{display:flex;align-items:center;gap:8px;color:var(--ev-navy,#0a1f3d);font-weight:800;text-transform:uppercase;font-size:12px;letter-spacing:.6px;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(10,31,61,.08)}
.ev-mega__col-head svg{color:var(--ev-teal,#00b3a6)}
.ev-mega__links{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.ev-mega__links a{display:block;padding:6px 0;color:#374151;font-size:14px;text-decoration:none;border-radius:6px;transition:color .15s, padding .15s}
.ev-mega__links a:hover{color:var(--ev-teal,#00b3a6);padding-left:6px}
.ev-mega__col-cta{display:inline-flex;align-items:center;gap:6px;margin-top:14px;padding:10px 14px;border:1px solid rgba(10,31,61,.12);border-radius:10px;color:var(--ev-navy,#0a1f3d);font-size:13px;font-weight:600;text-decoration:none;background:#fff;width:fit-content}
.ev-mega__col-cta:hover{border-color:var(--ev-teal,#00b3a6);color:var(--ev-teal,#00b3a6)}

/* --- Promo right block --- */
.ev-mega__promo{
  position:relative;border-radius:16px;overflow:hidden;min-height:280px;
  background:linear-gradient(135deg,var(--ev-navy,#0a1f3d) 0%,#143057 100%);
  background-size:cover;background-position:center;color:#fff;
  display:flex;align-items:flex-end;
}
.ev-mega__promo::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,31,61,.05) 0%,rgba(10,31,61,.7) 80%);pointer-events:none}
.ev-mega__promo-body{position:relative;z-index:1;padding:24px;display:flex;flex-direction:column;gap:8px}
.ev-mega__promo-eye{font-size:12px;letter-spacing:.6px;text-transform:uppercase;color:var(--ev-orange,#ff6b1a);font-weight:700}
.ev-mega__promo-title{font-size:28px;line-height:1.1;font-weight:800;color:var(--ev-teal-2,#3ee6d6);max-width:240px}
.ev-mega__promo-body p{margin:0;font-size:14px;color:rgba(255,255,255,.88);max-width:280px}
.ev-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:10px;font-weight:700;font-size:14px;text-decoration:none;transition:transform .15s, box-shadow .15s}
.ev-btn--accent{background:var(--ev-orange,#ff6b1a);color:#fff;align-self:flex-start;margin-top:8px}
.ev-btn--accent:hover{transform:translateY(-1px);box-shadow:0 8px 18px -8px rgba(255,107,26,.6)}
.ev-btn--ghost{background:#fff;color:var(--ev-navy,#0a1f3d);border:1px solid rgba(10,31,61,.12)}
.ev-btn--ghost:hover{border-color:var(--ev-teal,#00b3a6);color:var(--ev-teal,#00b3a6)}

/* --- Section title chip --- */
.ev-mega__section-title{display:flex;align-items:center;margin:6px 0 12px}
.ev-mega__section-title span{display:inline-block;padding:6px 14px;background:#e6fbf8;color:var(--ev-teal,#00b3a6);border-radius:999px;font-weight:800;font-size:11px;text-transform:uppercase;letter-spacing:.6px}

/* --- Featured cards row --- */
.ev-mega__featured{border-top:1px solid rgba(10,31,61,.08);padding-top:18px}
.ev-mega__cards{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.ev-mega-card{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid rgba(10,31,61,.08);border-radius:14px;background:#fff;text-decoration:none;color:inherit;transition:border-color .15s, transform .15s, box-shadow .15s}
.ev-mega-card:hover{border-color:var(--ev-teal,#00b3a6);transform:translateY(-1px);box-shadow:0 8px 20px -10px rgba(10,31,61,.18)}
.ev-mega-card__img{width:56px;height:56px;flex:none;border-radius:10px;background:#f8fafc;display:grid;place-items:center;overflow:hidden}
.ev-mega-card__img img{width:100%;height:100%;object-fit:cover}
.ev-mega-card__body{display:flex;flex-direction:column;flex:1;min-width:0}
.ev-mega-card__body strong{font-size:14px;color:var(--ev-navy,#0a1f3d)}
.ev-mega-card__sub{font-size:12px;color:#64748b}
.ev-mega-card__price{font-size:13px;font-weight:700;color:var(--ev-orange,#ff6b1a);margin-top:4px}
.ev-mega-card__arrow{color:#cbd5e1;font-size:20px;line-height:1}

/* --- Brands row --- */
.ev-mega__brands{border-top:1px solid rgba(10,31,61,.08);padding-top:18px}
.ev-mega__brands-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center}
.ev-mega-brand{display:inline-flex;align-items:center;justify-content:center;min-width:120px;height:48px;padding:8px 16px;border-radius:10px;text-decoration:none;color:var(--ev-navy,#0a1f3d);font-weight:700;font-size:14px;transition:background .15s}
.ev-mega-brand:hover{background:#f1f5f9}
.ev-mega-brand img{max-height:28px;max-width:120px;width:auto;height:auto;object-fit:contain}
.ev-mega-brand--cta{margin-left:auto;border:1px solid rgba(10,31,61,.12);font-size:13px}

/* --- BONS PLANS layout --- */
.ev-mega__bp{display:grid;grid-template-columns:1.1fr 1fr .9fr 1fr 1.3fr;gap:20px;align-items:start}
.ev-mega__bp-col{min-width:0;display:flex;flex-direction:column;gap:10px}
.ev-mega__empty{font-size:12px;color:#94a3b8;font-style:italic;margin:0}

.ev-mega-promo-card{position:relative;display:flex;align-items:center;gap:10px;padding:10px;border:1px solid rgba(10,31,61,.08);border-radius:12px;text-decoration:none;color:inherit;background:#fff}
.ev-mega-promo-card:hover{border-color:var(--ev-orange,#ff6b1a)}
.ev-mega-promo-card__img{width:54px;height:54px;flex:none;border-radius:8px;overflow:hidden;background:#f8fafc;display:grid;place-items:center}
.ev-mega-promo-card__img img{width:100%;height:100%;object-fit:cover}
.ev-mega-promo-card__body{display:flex;flex-direction:column;min-width:0;flex:1}
.ev-mega-promo-card__body strong{font-size:13px;color:var(--ev-navy,#0a1f3d);line-height:1.25}
.ev-mega-promo-card__prices{display:flex;gap:8px;align-items:baseline;margin-top:4px}
.ev-mega-promo-card__prices del{color:#94a3b8;font-size:12px}
.ev-mega-promo-card__prices b{color:var(--ev-orange,#ff6b1a);font-weight:800;font-size:14px}
.ev-mega-badge{position:absolute;top:6px;left:6px;background:var(--ev-orange,#ff6b1a);color:#fff;font-size:10px;font-weight:800;padding:3px 6px;border-radius:6px}

.ev-mega-pack{display:flex;gap:10px;border:1px solid rgba(10,31,61,.08);border-radius:14px;background:linear-gradient(180deg,#f8fafc 0%,#fff 100%);padding:14px;margin-bottom:10px}
.ev-mega-pack__body{flex:1;display:flex;flex-direction:column;gap:6px}
.ev-mega-pack__body strong{font-size:15px;color:var(--ev-navy,#0a1f3d)}
.ev-mega-pack__body p{margin:0;font-size:12px;color:#475569}
.ev-mega-pack__price{color:var(--ev-orange,#ff6b1a);font-weight:800}
.ev-mega-pack__img{width:80px;flex:none}
.ev-mega-pack__img img{width:100%;height:auto;object-fit:contain}

.ev-mega-dest{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.ev-mega-dest a{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;text-decoration:none;color:inherit}
.ev-mega-dest a:hover{background:#f8fafc}
.ev-mega-dest__img{width:38px;height:38px;flex:none;border-radius:8px;background:#f1f5f9;display:grid;place-items:center;overflow:hidden}
.ev-mega-dest__img img{width:100%;height:100%;object-fit:cover}
.ev-mega-dest__txt{flex:1;display:flex;flex-direction:column;line-height:1.2}
.ev-mega-dest__txt strong{font-size:13px;color:var(--ev-navy,#0a1f3d)}
.ev-mega-dest__disc{color:var(--ev-orange,#ff6b1a);font-weight:700;font-size:12px}

.ev-mega-tops{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;counter-reset:none}
.ev-mega-tops a{display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;text-decoration:none;color:inherit}
.ev-mega-tops a:hover{background:#f8fafc}
.ev-mega-tops__rank{width:24px;height:24px;border-radius:6px;background:var(--ev-navy,#0a1f3d);color:#fff;font-weight:800;display:grid;place-items:center;font-size:12px;flex:none}
.ev-mega-tops__img{width:42px;height:42px;flex:none;border-radius:8px;background:#f1f5f9;overflow:hidden}
.ev-mega-tops__img img{width:100%;height:100%;object-fit:cover}
.ev-mega-tops__body{display:flex;flex-direction:column;min-width:0;flex:1}
.ev-mega-tops__body strong{font-size:13px;color:var(--ev-navy,#0a1f3d);line-height:1.2}
.ev-mega-tops__body span{font-size:12px;color:var(--ev-orange,#ff6b1a);font-weight:700}

.ev-mega__bp-col--brands{position:relative}
.ev-mega-pmbrands{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ev-mega-pmbrand{display:flex;align-items:center;justify-content:center;height:46px;padding:6px;border:1px solid rgba(10,31,61,.08);border-radius:10px;text-decoration:none;color:var(--ev-navy,#0a1f3d);font-weight:700;font-size:12px;background:#fff}
.ev-mega-pmbrand:hover{border-color:var(--ev-teal,#00b3a6)}
.ev-mega-pmbrand img{max-height:24px;max-width:100%;object-fit:contain}
.ev-mega-pmbrands__cta{margin-top:10px;text-align:center;justify-content:center}

.ev-mega__bp-col--brands .ev-mega__promo{margin-top:14px;min-height:200px}

.ev-mega-reass{list-style:none;margin:0;padding:18px 0 0;border-top:1px solid rgba(10,31,61,.08);display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.ev-mega-reass li{display:flex;align-items:center;gap:10px;font-size:12px;color:#475569}
.ev-mega-reass__icon{width:36px;height:36px;border-radius:50%;background:#e6fbf8;display:grid;place-items:center;color:var(--ev-teal,#00b3a6);flex:none}
.ev-mega-reass__txt{display:flex;flex-direction:column;line-height:1.25}
.ev-mega-reass__txt strong{color:var(--ev-navy,#0a1f3d);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.3px}

/* Simple panel (legacy / WP children) */
.ev-mega-panel--simple{background:#fff;color:#0f172a;list-style:none;margin:0;padding:14px;border-radius:0 0 12px 12px;box-shadow:0 12px 24px -12px rgba(10,31,61,.18);min-width:240px;position:absolute;top:100%;left:0}

/* Tablet */
@media (max-width:1100px){
  .ev-mega__grid{grid-template-columns:1fr}
  .ev-mega__cols{grid-template-columns:repeat(3,1fr)}
  .ev-mega__cards{grid-template-columns:repeat(2,1fr)}
  .ev-mega__bp{grid-template-columns:repeat(2,1fr)}
  .ev-mega-reass{grid-template-columns:repeat(2,1fr)}
  .ev-mega-pmbrands{grid-template-columns:repeat(4,1fr)}
}

/* Mobile: panel becomes inline accordion */
@media (max-width:880px){
  .ev-menu-item--mega{position:relative}
  .ev-mega{position:static;box-shadow:none;border-radius:0;background:#f8fafc}
  .ev-mega__inner{padding:16px}
  .ev-mega__cols{grid-template-columns:1fr;gap:14px}
  .ev-mega__cards,.ev-mega__bp{grid-template-columns:1fr}
  .ev-mega-reass{grid-template-columns:1fr}
  .ev-mega__brands-row{justify-content:flex-start}
  .ev-mega__promo{min-height:160px}
  .ev-menu-item--mega:hover>.ev-mega{display:none}
  .ev-menu-item--mega.is-open>.ev-mega{display:block}
}

/* ===== Bonsplans megamenu — simplified 3-column layout ===== */
.ev-mega__bp--simple{display:grid;grid-template-columns:1fr 1fr 320px;gap:24px;align-items:start}
.ev-mega__bp--simple .ev-mega__bp-col{min-width:0}
.ev-mega__bp-col--promo{padding:0}
.ev-mega-prod-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
.ev-mega-prod{display:flex;gap:10px;align-items:center;padding:8px;border-radius:10px;border:1px solid #eef1f5;background:#fff;text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s}
.ev-mega-prod:hover{border-color:#0aa39b;box-shadow:0 4px 14px rgba(10,163,155,.12)}
.ev-mega-prod__media{position:relative;flex:0 0 56px;width:56px;height:56px;border-radius:8px;background:#f6f8fa;display:flex;align-items:center;justify-content:center;overflow:hidden}
.ev-mega-prod__media img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.ev-mega-prod__badge{position:absolute;top:-6px;left:-6px;background:#e63946;color:#fff;font-size:10px;font-weight:700;padding:2px 5px;border-radius:6px;line-height:1}
.ev-mega-prod__body{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.ev-mega-prod__title{font-size:12px;font-weight:600;color:#0a1f3b;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ev-mega-prod__price{font-size:12px;font-weight:700;color:#0aa39b}
.ev-mega-prod__price del{color:#9aa3ad;font-weight:500;margin-right:4px;font-size:11px}
@media (max-width:1100px){.ev-mega__bp--simple{grid-template-columns:1fr 1fr}.ev-mega__bp-col--promo{grid-column:1/-1}}
@media (max-width:720px){.ev-mega__bp--simple{grid-template-columns:1fr}.ev-mega-prod-grid{grid-template-columns:1fr 1fr}}

/* ===========================================================
 * Mon compte — Tableau de bord premium Econovape (v1.4.1)
 * =========================================================== */
/* Outer page container — large, centered, breaks out of any parent */
.ev-account{max-width:1320px;width:100%;margin:0 auto;padding:8px 0 64px;box-sizing:border-box}
.ev-account__header{margin:0 0 24px}
.ev-account__title{margin:0;color:var(--ev-navy);font-size:34px;font-weight:800;letter-spacing:-.01em}
.woocommerce-account .ev-account,
.woocommerce-account .ev-account-layout,
.woocommerce-account .account-layout{width:100%;max-width:1320px}
.ev-account__layout,.account-layout,.ev-account-layout{display:grid!important;grid-template-columns:260px minmax(0,1fr)!important;gap:24px;align-items:start;max-width:1320px;margin:0 auto}
.ev-account__sidebar{display:flex;flex-direction:column;gap:18px;min-width:0}
.ev-account__content,.woocommerce-account .ev-account-content{min-width:0;width:100%;display:block}
.ev-account__content > :first-child{margin-top:0}

/* Sidebar nav refresh */
.ev-account-nav ul,.woocommerce-MyAccount-navigation ul{list-style:none;padding:0;margin:0;background:#fff;border:1px solid var(--ev-line);border-radius:16px;overflow:hidden;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.ev-account-nav li,.woocommerce-MyAccount-navigation li{border-bottom:1px solid var(--ev-line)}
.ev-account-nav li:last-child,.woocommerce-MyAccount-navigation li:last-child{border-bottom:0}
.ev-account-nav li a,.woocommerce-MyAccount-navigation li a{padding:14px 18px;display:flex;align-items:center;gap:12px;color:var(--ev-text);font-weight:600;text-decoration:none;transition:background .15s,color .15s}
.ev-account-nav li.is-active a,.ev-account-nav li a:hover,.woocommerce-MyAccount-navigation li.is-active a,.woocommerce-MyAccount-navigation li a:hover{background:var(--ev-teal);color:#fff}
.ev-account-nav__icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;color:currentColor;flex-shrink:0}
.ev-account-nav__label{flex:1;min-width:0}

/* Help block + side trust */
.ev-account-sidebar-widgets{display:flex;flex-direction:column;gap:18px}
.ev-acc-help{margin-top:18px;background:#fff;border:1px solid var(--ev-line);border-radius:16px;padding:20px;text-align:center;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.ev-acc-help--has-image{display:grid;grid-template-columns:minmax(0,1fr) 92px;gap:16px;align-items:center;text-align:left}
.ev-acc-help__img{display:block;margin:0 auto 10px;max-width:120px;height:auto}
.ev-acc-help--has-image .ev-acc-help__img{width:92px;height:92px;max-width:none;object-fit:cover;border-radius:14px;margin:0 0 0 auto}
.ev-acc-help--has-image strong,.ev-acc-help--has-image p,.ev-acc-help--has-image .ev-acc-btn{grid-column:1}
.ev-acc-help--has-image .ev-acc-help__img{grid-column:2;grid-row:1 / span 3}
.ev-acc-help strong{display:block;color:var(--ev-navy);font-size:16px;margin-bottom:6px}
.ev-acc-help p{font-size:13px;color:var(--ev-muted);margin:0 0 14px}
.ev-acc-side-trust{margin-top:18px;background:#fff;border:1px solid var(--ev-line);border-radius:16px;padding:14px 18px;display:flex;flex-direction:column;gap:14px}
.ev-acc-side-trust > div{display:flex;align-items:center;gap:12px}
.ev-acc-side-trust .ev-icon{color:var(--ev-teal);width:22px;height:22px}
.ev-acc-side-trust strong{display:block;color:var(--ev-navy);font-size:13px}
.ev-acc-side-trust small{color:var(--ev-muted);font-size:12px}

/* Dashboard layout */
.ev-acc-dashboard,.ev-account-dashboard{display:flex;flex-direction:column;gap:20px;width:100%;min-width:0}
.ev-acc-card{background:#fff;border:1px solid var(--ev-line);border-radius:18px;padding:24px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.ev-acc-card__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}
.ev-acc-card__head h3{margin:0;color:var(--ev-navy);font-size:18px;font-weight:800}
.ev-acc-link{color:var(--ev-teal);font-weight:600;font-size:13px;text-decoration:none}
.ev-acc-link:hover{text-decoration:underline}
.ev-acc-card__footer{margin-top:16px;text-align:center}
.ev-acc-empty{color:var(--ev-muted);font-size:14px;margin:8px 0 0}

.ev-acc-btn{display:inline-flex;align-items:center;justify-content:center;background:var(--ev-teal);color:#fff !important;border-radius:10px;padding:12px 22px;font-weight:600;text-decoration:none;border:0;font-family:inherit;transition:background .2s}
.ev-acc-btn:hover{background:var(--ev-navy)}
.ev-acc-btn--ghost{background:#fff;color:var(--ev-teal) !important;border:1px solid var(--ev-teal)}
.ev-acc-btn--ghost:hover{background:var(--ev-teal);color:#fff !important}

/* Welcome card */
.ev-acc-welcome{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;background:linear-gradient(135deg,#fff,#f5fbfa)}
.ev-acc-welcome__hello{margin:0 0 6px;color:var(--ev-navy);font-size:30px;font-weight:800}
.ev-acc-welcome__hello span{color:var(--ev-teal)}
.ev-acc-welcome__text{color:var(--ev-muted);margin:0;max-width:520px;font-size:15px;line-height:1.5}
.ev-acc-welcome__loyalty{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding-left:24px;border-left:1px solid var(--ev-line)}
.ev-acc-welcome__loyalty-label{color:var(--ev-muted);font-size:12px}
.ev-acc-welcome__loyalty-status{color:var(--ev-teal);font-size:18px;font-weight:800}
.ev-acc-welcome__loyalty-points{color:var(--ev-muted);font-size:12px}

/* Two-column grid */
.ev-acc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}
.ev-acc-col{display:flex;flex-direction:column;gap:20px;min-width:0}
.ev-acc-orders,.ev-acc-loyalty,.ev-acc-addresses,.ev-acc-wishlist{min-width:0}
.ev-acc-welcome{position:relative;overflow:hidden}
.ev-acc-welcome--has-image{grid-template-columns:1fr auto auto}
.ev-acc-welcome__img{max-height:140px;width:auto;display:block;border-radius:12px;justify-self:end}
.ev-acc-advice--no-image{grid-template-columns:1fr}

/* Orders */
.ev-acc-orders__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.ev-acc-order__link{display:block;padding:12px 14px;border:1px solid var(--ev-line);border-radius:12px;text-decoration:none;color:var(--ev-text);transition:border-color .2s,background .2s}
.ev-acc-order__link:hover{border-color:var(--ev-teal);background:#f5fbfa}
.ev-acc-order__head{display:flex;justify-content:space-between;align-items:center;gap:12px}
.ev-acc-order__num{color:var(--ev-navy);font-weight:700;font-size:14px}
.ev-acc-order__status{font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;background:#e7f7f1;color:#0c8a5e;text-transform:capitalize}
.ev-acc-order__status--processing,.ev-acc-order__status--on-hold{background:#fff4e0;color:#a26500}
.ev-acc-order__status--cancelled,.ev-acc-order__status--failed,.ev-acc-order__status--refunded{background:#fdecea;color:#b3261e}
.ev-acc-order__meta{display:flex;justify-content:space-between;align-items:center;margin-top:6px;font-size:13px;color:var(--ev-muted)}
.ev-acc-order__total{color:var(--ev-navy);font-weight:700}
.ev-acc-order__sub{font-size:12px;color:var(--ev-muted);margin-top:2px}

/* Loyalty */
.ev-acc-loyalty__row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}
.ev-acc-loyalty__row--soon{grid-template-columns:1fr}
.ev-acc-loyalty__points,.ev-acc-loyalty__status{background:#f5fbfa;border:1px solid #d8efe9;border-radius:12px;padding:14px}
.ev-acc-loyalty__points small,.ev-acc-loyalty__status small{display:block;color:var(--ev-muted);font-size:12px;margin-bottom:4px}
.ev-acc-loyalty__points strong{display:block;color:var(--ev-navy);font-size:28px;font-weight:800;line-height:1.1}
.ev-acc-loyalty__points strong span{font-size:14px;color:var(--ev-teal);margin-left:4px}
.ev-acc-loyalty__equiv{display:block;color:var(--ev-muted);font-size:12px;margin-top:4px}
.ev-acc-loyalty__status strong{display:block;color:var(--ev-teal);font-size:18px;font-weight:800}
.ev-acc-loyalty__perks{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.ev-acc-loyalty__perks li{background:#fafbfc;border:1px solid var(--ev-line);border-radius:10px;padding:12px;text-align:center;font-size:12px;color:var(--ev-muted)}
.ev-acc-loyalty__perks li span{display:block;font-size:20px;margin-bottom:4px}
.ev-acc-loyalty__perks li strong{display:block;color:var(--ev-navy);font-size:13px;margin-bottom:2px}

/* Addresses */
.ev-acc-addresses__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ev-acc-address{border:1px solid var(--ev-line);border-radius:12px;padding:14px}
.ev-acc-address__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.ev-acc-address__head strong{color:var(--ev-navy);font-size:14px}
.ev-acc-address__badge{font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--ev-bg-2);color:var(--ev-muted)}
.ev-acc-address address{font-style:normal;color:var(--ev-text);font-size:14px;line-height:1.5;margin:0}

/* Wishlist */
.ev-acc-wishlist__grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ev-acc-wishlist__item{border:1px solid var(--ev-line);border-radius:12px;padding:12px;display:flex;flex-direction:column;gap:8px;background:#fff}
.ev-acc-wishlist__media{display:block;background:#f5fbfa;border-radius:10px;overflow:hidden;aspect-ratio:1/1}
.ev-acc-wishlist__media img{width:100%;height:100%;object-fit:cover}
.ev-acc-wishlist__name{color:var(--ev-navy);font-weight:600;font-size:13px;text-decoration:none;line-height:1.3}
.ev-acc-wishlist__name:hover{color:var(--ev-teal)}
.ev-acc-wishlist__row{display:flex;justify-content:space-between;align-items:center;margin-top:auto}
.ev-acc-wishlist__price{color:var(--ev-navy);font-weight:700;font-size:14px}
.ev-acc-wishlist__price del{color:var(--ev-muted);font-weight:400;margin-right:4px;font-size:12px}
.ev-acc-wishlist__cart{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--ev-teal);color:#fff;border-radius:8px;text-decoration:none}
.ev-acc-wishlist__cart:hover{background:var(--ev-navy);color:#fff}

/* Trust strip in account */
.ev-acc-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;background:#fff;border:1px solid var(--ev-line);border-radius:18px;padding:18px 24px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.ev-acc-trust > div{display:flex;align-items:center;gap:12px}
.ev-acc-trust .ev-icon{color:var(--ev-teal);width:24px;height:24px}
.ev-acc-trust strong{display:block;color:var(--ev-navy);font-size:13px}
.ev-acc-trust small{color:var(--ev-muted);font-size:12px}

/* Advice banner */
.ev-acc-advice{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:24px;align-items:stretch;background:linear-gradient(135deg,var(--ev-navy),var(--ev-navy-2,#102a43));color:#fff;border-radius:18px;padding:28px;min-height:220px;overflow:hidden}
.ev-acc-advice h3{margin:0 0 6px;font-size:22px;font-weight:800;color:#fff}
.ev-acc-advice p{margin:0 0 14px;color:rgba(255,255,255,.8);font-size:14px}
.ev-acc-advice .ev-acc-btn{background:var(--ev-teal);color:#fff !important}
.ev-acc-advice__text{display:flex;flex-direction:column;justify-content:center;min-width:0}
.ev-acc-advice__media{position:relative;align-self:stretch;height:100%;min-height:164px;border-radius:16px;overflow:hidden;background:rgba(255,255,255,.08)}
.ev-acc-advice__img{width:100%;height:100%;display:block;object-fit:cover}

/* Legacy orders table */
.ev-acc-legacy{overflow-x:auto}
.ev-acc-legacy__table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--ev-line);border-radius:12px;overflow:hidden}
.ev-acc-legacy__table th{background:var(--ev-bg-2);color:var(--ev-navy);text-align:left;padding:12px;font-size:13px;text-transform:uppercase;letter-spacing:.03em}
.ev-acc-legacy__table td{padding:12px;border-top:1px solid var(--ev-line);font-size:14px;color:var(--ev-text)}
.ev-acc-legacy__details summary{cursor:pointer;color:var(--ev-teal);font-weight:600;font-size:13px}
.ev-acc-legacy__details > div{margin-top:8px;color:var(--ev-muted);font-size:13px}

/* Promotions archive */
.ev-promotions-page .ev-main{min-width:0}
.ev-shop-head{padding:24px 0 20px}
.ev-shop-head .ev-page-title{margin-bottom:8px}
.ev-shop-head .ev-page-intro{margin:0;max-width:760px}
.ev-mega__section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}
.ev-mega__section-link{font-size:12px;font-weight:700;color:var(--ev-teal);text-transform:uppercase;letter-spacing:.04em}
.ev-mega__section-link:hover{color:var(--ev-navy)}

/* Responsive */
@media (max-width:1100px){
	.ev-acc-grid{grid-template-columns:1fr}
	.ev-acc-wishlist__grid{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:960px){
	.ev-account__layout{grid-template-columns:1fr;gap:20px}
	.ev-account__sidebar{order:2}
	.ev-account-sidebar-widgets{gap:14px}
	.ev-acc-help,.ev-acc-help--has-image{margin-top:0}
	.ev-acc-help--has-image{grid-template-columns:1fr}
	.ev-acc-help--has-image .ev-acc-help__img{grid-column:auto;grid-row:auto;width:84px;height:84px;margin:0 auto 12px}
	.ev-acc-welcome{grid-template-columns:1fr}
	.ev-acc-welcome__loyalty{align-items:flex-start;padding-left:0;padding-top:14px;border-left:0;border-top:1px solid var(--ev-line)}
	.ev-acc-trust{grid-template-columns:repeat(2,1fr)}
	.ev-acc-advice{grid-template-columns:1fr}
	.ev-acc-advice__media{min-height:180px}
	.ev-acc-loyalty__perks{grid-template-columns:1fr}
	.ev-acc-addresses__grid{grid-template-columns:1fr}
	.ev-acc-wishlist__grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:520px){
	.ev-acc-card{padding:18px}
	.ev-account{padding-bottom:40px}
	.ev-acc-welcome__hello{font-size:24px}
	.ev-acc-loyalty__row{grid-template-columns:1fr}
	.ev-acc-trust{grid-template-columns:1fr}
	.ev-acc-card__head{align-items:flex-start;flex-direction:column}
	.ev-acc-order__head,.ev-acc-order__meta{flex-direction:column;align-items:flex-start}
	.ev-acc-wishlist__grid{grid-template-columns:1fr}
}

/* =========================================================
   PERSONNALISATIONS ECONOVAPE — CSS INTÉGRÉ
   Réglages conservés depuis le CSS additionnel.
   À ne pas supprimer lors des prochaines mises à jour.
========================================================= */


/* =========================================================
   1. BANDEAU PROMO HOMEPAGE
========================================================= */
.ev-promo-band__inner.has-bg {
  background-image:
    linear-gradient(90deg, rgba(10,31,61,.55) 0%, rgba(10,31,61,.25) 28%, rgba(10,31,61,0) 52%),
    url("/wp-content/uploads/2026/05/bandeau-econovape-promo3-scaled.png") !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}


/* =========================================================
   2. ESPACEMENTS NEWSLETTER / FOOTER / SECTIONS
========================================================= */
.ev-newsletter {
  padding-bottom: 8px !important;
  margin-bottom: 0 !important;
}

.ev-footer.ev-footer--light {
  margin-top: 0 !important;
  padding-top: 20px !important;
}

.ev-reassurance {
  margin-bottom: 12px !important;
  padding-bottom: 10px !important;
}

.ev-section {
  margin-top: 12px !important;
  padding-top: 12px !important;
}


/* =========================================================
   3. COULEURS FOOTER
========================================================= */
.ev-footer--light,
.ev-footer--light p,
.ev-footer--light li,
.ev-footer--light a {
  color: #1a2f4d !important;
}

.ev-footer--light .ev-footer__title,
.ev-footer--light strong,
.ev-footer--light h2,
.ev-footer--light h3,
.ev-footer--light h4 {
  color: #081a33 !important;
}


/* =========================================================
   4. TOP VENTES : 6 PRODUITS MAX SUR UNE LIGNE
========================================================= */
.ev-products {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

.ev-products > li.ev-product-card:nth-child(n+7) {
  display: none !important;
}


/* =========================================================
   5. CARTES PRODUITS + WISHLIST
========================================================= */
.ev-product-card {
  position: relative !important;
}

.ev-card__wishlist {
  position: absolute !important;
  top: 226px !important;
  right: 18px !important;
  z-index: 20 !important;
  margin: 0 !important;
}

.ev-product-card__meta {
  padding-right: 42px !important;
}

.ev-card__wishlist a {
  font-size: 0 !important;
  line-height: 0 !important;
  text-decoration: none !important;
}

.ev-card__wishlist a::before {
  content: none !important;
  display: none !important;
}

.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added),
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added) svg,
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added) .yith-wcwl-icon-svg {
  color: #12b8b0 !important;
}

.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added) svg path,
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added) .yith-wcwl-icon-svg path,
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added) path[fill="currentColor"] {
  fill: transparent !important;
  stroke: #12b8b0 !important;
  stroke-width: 2 !important;
  color: #12b8b0 !important;
}

.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added):hover svg path,
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button:not(.yith-wcwl-add-to-wishlist-button--added):hover path[fill="currentColor"] {
  fill: transparent !important;
  stroke: #0fa39c !important;
  color: #0fa39c !important;
}

.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--added,
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--added svg,
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--added .yith-wcwl-icon-svg {
  color: #e53935 !important;
}

.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--added svg path,
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--added .yith-wcwl-icon-svg path,
.ev-card__wishlist a.yith-wcwl-add-to-wishlist-button.yith-wcwl-add-to-wishlist-button--added path[fill="currentColor"] {
  fill: #e53935 !important;
  stroke: #e53935 !important;
  stroke-width: 2 !important;
  color: #e53935 !important;
}


/* =========================================================
   6. OUVERTURE ET CENTRAGE DES MÉGAMENUS
========================================================= */
.ev-nav,
.ev-nav .ev-container,
.ev-nav__inner,
#ev-primary-menu,
.ev-menu,
.ev-menu-item {
  overflow: visible !important;
}

.ev-nav,
.ev-nav .ev-container,
.ev-nav__inner,
#primary-menu,
.ev-menu {
  position: relative !important;
}

.ev-menu > .ev-menu-item--mega {
  position: static !important;
}

.ev-menu > .ev-menu-item--mega > .ev-mega {
  display: none !important;
  position: absolute !important;
  top: 100% !important;
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
  width: min(1320px, calc(100vw - 40px)) !important;
  max-width: 1320px !important;
  margin: 0 !important;
  z-index: 9999 !important;
}

.ev-menu > .ev-menu-item--mega:hover > .ev-mega,
.ev-menu > .ev-menu-item--mega:focus-within > .ev-mega {
  display: block !important;
}

.ev-menu-item--mega > .ev-mega-panel,
.ev-menu-item--mega > ul.ev-mega-panel {
  display: none !important;
}

.ev-menu > .ev-menu-item--mega > .ev-mega > .ev-mega__inner {
  width: 100% !important;
  max-width: 100% !important;
}

.ev-mega--cigarettes,
.ev-mega--eliquides,
.ev-mega--diy,
.ev-mega--resistances,
.ev-mega--accessoires,
.ev-mega--bonsplans {
  left: 50% !important;
  right: auto !important;
  transform: translateX(-50%) !important;
}


/* =========================================================
   7. FINITIONS VISUELLES DES MÉGAMENUS
========================================================= */
.ev-mega__grid {
  align-items: start !important;
  column-gap: 28px !important;
}

.ev-mega__col {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  min-width: 0 !important;
  position: relative !important;
  padding-right: 18px !important;
}

.ev-mega__col:not(:last-child)::after {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  width: 1px !important;
  height: 100% !important;
  background: rgba(10, 31, 61, 0.08) !important;
}

.ev-mega__col-head {
  min-height: 54px !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin-bottom: 14px !important;
  padding-bottom: 10px !important;
  border-bottom: 1px solid rgba(10, 31, 61, 0.08) !important;
}

.ev-mega__col-head strong,
.ev-mega__col-head span,
.ev-mega__col-title {
  line-height: 1.2 !important;
}

.ev-mega__links {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  flex: 1 1 auto !important;
}

.ev-mega__links li {
  margin: 0 !important;
}

.ev-mega__links a {
  min-height: 24px !important;
  display: flex !important;
  align-items: center !important;
}

.ev-mega__col-cta,
.ev-mega__cta,
.ev-mega__col-footer {
  margin-top: auto !important;
  padding-top: 18px !important;
}

.ev-mega .ev-button,
.ev-mega a.ev-button,
.ev-mega .ev-btn,
.ev-mega a[class*="cta"],
.ev-mega a[class*="button"],
.ev-mega__col .ev-mega__button,
.ev-mega__col .ev-mega__cta a,
.ev-mega__col a.ev-mega__all {
  min-height: 54px !important;
  width: 100% !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  padding: 0 18px !important;
  border-radius: 14px !important;
  box-sizing: border-box !important;
  white-space: normal !important;
  line-height: 1.25 !important;
}

.ev-mega--cigarettes .ev-mega__grid,
.ev-mega--eliquides .ev-mega__grid,
.ev-mega--diy .ev-mega__grid,
.ev-mega--resistances .ev-mega__grid,
.ev-mega--accessoires .ev-mega__grid {
  grid-auto-rows: 1fr !important;
}


/* =========================================================
   8. MÉGAMENU BONS PLANS — ESPACER LA RÉASSURANCE DU BOUTON
========================================================= */
.ev-mega--bonsplans .ev-mega__reassurance,
.ev-mega--bonsplans .ev-reassurance,
.ev-mega--bonsplans [class*="reassurance"] {
  margin-top: 34px !important;
  padding-top: 22px !important;
}

.ev-mega--bonsplans .ev-mega__promo,
.ev-mega--bonsplans .ev-mega__promo-card,
.ev-mega--bonsplans aside {
  margin-bottom: 26px !important;
}


/* =========================================================
   9. HERO CAROUSEL — DÉCALER LE TEXTE POUR ÉVITER LES FLÈCHES
========================================================= */
.ev-hero__content,
.ev-hero__text,
.ev-hero__copy {
  padding-left: 52px !important;
}

@media (min-width: 1024px) {
  .ev-hero__content,
  .ev-hero__text,
  .ev-hero__copy {
    padding-left: 70px !important;
  }
}

@media (max-width: 768px) {
  .ev-hero__content,
  .ev-hero__text,
  .ev-hero__copy {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
}


/* =========================================================
   10. HERO CAROUSEL — ALIGNER LE SOUS-TEXTE AVEC LE TITRE
========================================================= */
.ev-hero__content,
.ev-hero__text,
.ev-hero__copy {
  text-align: left !important;
}

.ev-hero__content h1,
.ev-hero__content h2,
.ev-hero__content p,
.ev-hero__text h1,
.ev-hero__text h2,
.ev-hero__text p,
.ev-hero__copy h1,
.ev-hero__copy h2,
.ev-hero__copy p {
  text-align: left !important;
  margin-left: 0 !important;
}

.ev-hero__content p,
.ev-hero__text p,
.ev-hero__copy p {
  max-width: 520px !important;
  margin-right: auto !important;
}

.ev-hero__actions,
.ev-hero__buttons,
.ev-hero__cta {
  justify-content: flex-start !important;
  margin-left: 0 !important;
}


/* =========================================================
   11. HERO CAROUSEL — MASQUER LE BLOC VISUEL PRINCIPAL VIDE
========================================================= */
.ev-hero__visual,
.ev-hero__media,
.ev-hero__figure {
  display: none !important;
}


/* =========================================================
   MEGAMENU — DESCENDRE LE TEXTE DU BLOC PROMO SANS BOUGER L'IMAGE
========================================================= */
.ev-mega__promo {
  overflow: visible !important;
}

.ev-mega__promo .ev-mega__promo-body {
  transform: translateY(90px) !important;
  position: relative !important;
  z-index: 5 !important;
}


/* =========================================================
   13. MEGAMENU CIGARETTES — MARQUES POPULAIRES
   Titre au-dessus, logos + bouton sur la même ligne.
========================================================= */
.ev-mega--cigarettes .ev-mega__brands {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 24px 34px !important;
}

.ev-mega--cigarettes .ev-mega__brands .ev-mega__section-title {
  flex: 0 0 100% !important;
  width: 100% !important;
  margin: 0 0 2px 0 !important;
}

.ev-mega--cigarettes .ev-mega__brands .ev-mega-brand:not(.ev-mega-brand--cta) {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.ev-mega--cigarettes .ev-mega__brands .ev-mega-brand:not(.ev-mega-brand--cta) img {
  max-height: 30px !important;
  width: auto !important;
  object-fit: contain !important;
}

.ev-mega--cigarettes .ev-mega__brands .ev-mega-brand--cta {
  margin-left: auto !important;
  width: auto !important;
  min-width: 230px !important;
  max-width: 260px !important;
  min-height: 48px !important;
  padding: 0 22px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  white-space: nowrap !important;
}

/* =========================================================
   CORRECTION COMPTE — IMAGE CONSEIL EN FOND PLEIN BLOC
   L'image ne doit pas agrandir le bloc : elle couvre le bloc.
========================================================= */
.ev-acc-advice{
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  min-height: 220px !important;
  max-height: 220px !important;
  overflow: hidden !important;
  padding: 28px !important;
  box-sizing: border-box !important;
}

.ev-acc-advice--has-image{
  background: var(--ev-navy) !important;
}

.ev-acc-advice--has-image .ev-acc-advice__media{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  border-radius: inherit !important;
  overflow: hidden !important;
  z-index: 0 !important;
  background: transparent !important;
}

.ev-acc-advice--has-image .ev-acc-advice__img{
  width: 100% !important;
  height: 100% !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.ev-acc-advice--has-image::after{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(8,26,51,.92) 0%, rgba(8,26,51,.72) 42%, rgba(8,26,51,.18) 100%) !important;
  pointer-events: none !important;
}

.ev-acc-advice__text{
  position: relative !important;
  z-index: 2 !important;
  max-width: 520px !important;
}

.ev-acc-advice--no-image{
  max-height: none !important;
}

/* =========================================================
   FIX COMPTE CLIENT — FAVORIS COMPACTS + CONSEIL IMAGE FOND
========================================================= */

/* Mes favoris : cartes compactes pour afficher 3 produits visibles proprement */
.woocommerce-account .ev-acc-wishlist__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

/* Limite visuelle : maximum 6 favoris dans le bloc */
.woocommerce-account .ev-acc-wishlist__item:nth-child(n+7) {
  display: none !important;
}

.woocommerce-account .ev-acc-wishlist__item {
  padding: 10px !important;
  border-radius: 14px !important;
  min-width: 0 !important;
}

.woocommerce-account .ev-acc-wishlist__media {
  aspect-ratio: 1 / 1 !important;
  border-radius: 12px !important;
  max-height: 118px !important;
}

.woocommerce-account .ev-acc-wishlist__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 6px !important;
  box-sizing: border-box !important;
}

.woocommerce-account .ev-acc-wishlist__name {
  font-size: 12px !important;
  line-height: 1.25 !important;
  min-height: 32px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.woocommerce-account .ev-acc-wishlist__price {
  font-size: 13px !important;
}

.woocommerce-account .ev-acc-wishlist__cart {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
}

/* Bloc conseil : hauteur stable */
.woocommerce-account .ev-acc-advice {
  position: relative !important;
  overflow: hidden !important;
  min-height: 150px !important;
  height: 150px !important;
  display: flex !important;
  align-items: center !important;
  padding: 26px 30px !important;
  box-sizing: border-box !important;
  border-radius: 18px !important;
}

/* Si l'image est présente, elle devient un vrai fond plein bloc */
.woocommerce-account .ev-acc-advice__image,
.woocommerce-account .ev-acc-advice__img,
.woocommerce-account .ev-acc-advice picture,
.woocommerce-account .ev-acc-advice figure {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

.woocommerce-account .ev-acc-advice__image img,
.woocommerce-account .ev-acc-advice__img img,
.woocommerce-account .ev-acc-advice picture img,
.woocommerce-account .ev-acc-advice figure img,
.woocommerce-account .ev-acc-advice > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  max-width: none !important;
  max-height: none !important;
  z-index: 0 !important;
}

/* Voile lisible uniquement au-dessus d'une image */
.woocommerce-account .ev-acc-advice:has(img)::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(10,31,61,.86) 0%, rgba(10,31,61,.62) 45%, rgba(10,31,61,.18) 100%) !important;
}

/* Texte au-dessus du fond */
.woocommerce-account .ev-acc-advice__content,
.woocommerce-account .ev-acc-advice > div:not(.ev-acc-advice__image):not(.ev-acc-advice__img),
.woocommerce-account .ev-acc-advice h3,
.woocommerce-account .ev-acc-advice p,
.woocommerce-account .ev-acc-advice a {
  position: relative !important;
  z-index: 2 !important;
}

/* Sécurité : l'image ne doit jamais créer une colonne qui agrandit le bloc */
.woocommerce-account .ev-acc-advice {
  grid-template-columns: none !important;
}

@media (max-width: 900px) {
  .woocommerce-account .ev-acc-wishlist__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  .woocommerce-account .ev-acc-wishlist__grid {
    grid-template-columns: 1fr !important;
  }

  .woocommerce-account .ev-acc-advice {
    height: auto !important;
    min-height: 170px !important;
  }
}

/* =========================================================
   ECONOVAPE — FIX PRIORITAIRE MON COMPTE
   Favoris compacts + image conseil plein bloc
========================================================= */

/* -------- Mes favoris : jusqu'à 3 visibles par ligne, 6 max -------- */
body.woocommerce-account .ev-acc-wishlist .ev-acc-wishlist__grid,
body.woocommerce-account .ev-acc-wishlist__grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch !important;
}

body.woocommerce-account .ev-acc-wishlist__item:nth-child(n+7) {
  display: none !important;
}

body.woocommerce-account .ev-acc-wishlist__item {
  padding: 9px !important;
  border-radius: 14px !important;
  gap: 7px !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
}

body.woocommerce-account .ev-acc-wishlist__media {
  aspect-ratio: 1 / 1 !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: 112px !important;
  border-radius: 12px !important;
}

body.woocommerce-account .ev-acc-wishlist__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 6px !important;
  box-sizing: border-box !important;
}

body.woocommerce-account .ev-acc-wishlist__name {
  font-size: 12px !important;
  line-height: 1.22 !important;
  min-height: 30px !important;
  max-height: 30px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

body.woocommerce-account .ev-acc-wishlist__price {
  font-size: 13px !important;
  line-height: 1.2 !important;
}

body.woocommerce-account .ev-acc-wishlist__row {
  gap: 8px !important;
}

body.woocommerce-account .ev-acc-wishlist__cart {
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border-radius: 8px !important;
}

/* -------- Bloc conseil : image en fond plein bloc, bloc stable -------- */
body.woocommerce-account .ev-acc-advice {
  position: relative !important;
  overflow: hidden !important;
  height: 190px !important;
  min-height: 190px !important;
  max-height: 190px !important;
  display: flex !important;
  align-items: center !important;
  grid-template-columns: none !important;
  gap: 0 !important;
  padding: 28px 32px !important;
  box-sizing: border-box !important;
  border-radius: 18px !important;
  background: #0b2a4a !important;
}

/* La zone média ne doit plus être une colonne */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__media {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: transparent !important;
  z-index: 0 !important;
  pointer-events: none !important;
}

body.woocommerce-account .ev-acc-advice .ev-acc-advice__img,
body.woocommerce-account .ev-acc-advice .ev-acc-advice__media img,
body.woocommerce-account .ev-acc-advice > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  display: block !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 18px !important;
  z-index: 0 !important;
}

/* Voile sombre pour que le texte reste lisible */
body.woocommerce-account .ev-acc-advice.ev-acc-advice--has-image::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(8,26,51,.92) 0%, rgba(8,26,51,.68) 42%, rgba(8,26,51,.12) 100%) !important;
  pointer-events: none !important;
}

/* Le texte passe au-dessus du fond */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__text {
  position: relative !important;
  z-index: 2 !important;
  max-width: 360px !important;
  min-width: 0 !important;
}

body.woocommerce-account .ev-acc-advice h3,
body.woocommerce-account .ev-acc-advice p,
body.woocommerce-account .ev-acc-advice a {
  position: relative !important;
  z-index: 2 !important;
}

@media (max-width: 900px) {
  body.woocommerce-account .ev-acc-wishlist .ev-acc-wishlist__grid,
  body.woocommerce-account .ev-acc-wishlist__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  body.woocommerce-account .ev-acc-wishlist .ev-acc-wishlist__grid,
  body.woocommerce-account .ev-acc-wishlist__grid {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-account .ev-acc-advice {
    height: auto !important;
    max-height: none !important;
    min-height: 180px !important;
  }
}

/* =========================================================
   ECONOVAPE — FIX FINAL MON COMPTE
   Texte conseil plus large + icône panier favoris visible
========================================================= */

/* Bloc conseil : élargir la zone texte pour éviter les retours à la ligne trop courts */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__text {
  max-width: 520px !important;
  width: 52% !important;
}

body.woocommerce-account .ev-acc-advice h3 {
  max-width: 420px !important;
  line-height: 1.18 !important;
}

body.woocommerce-account .ev-acc-advice p {
  max-width: 480px !important;
  line-height: 1.45 !important;
}

/* Favoris : rendre l'icône panier visible sur le bouton turquoise */
body.woocommerce-account .ev-acc-wishlist__cart,
body.woocommerce-account .ev-acc-wishlist__cart *,
body.woocommerce-account .ev-acc-wishlist__cart svg,
body.woocommerce-account .ev-acc-wishlist__cart svg path,
body.woocommerce-account .ev-acc-wishlist__cart i,
body.woocommerce-account .ev-acc-wishlist__cart::before {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
}

/* Si le bouton panier est vide, afficher un pictogramme panier propre */
body.woocommerce-account .ev-acc-wishlist__cart:empty::before,
body.woocommerce-account .ev-acc-wishlist__cart:not(:has(svg)):not(:has(i))::before {
  content: "🛒" !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-size: 15px !important;
  line-height: 1 !important;
  color: #ffffff !important;
}

/* Responsive : sur mobile, texte plus large */
@media (max-width: 700px) {
  body.woocommerce-account .ev-acc-advice .ev-acc-advice__text {
    width: 100% !important;
    max-width: 100% !important;
  }
}


/* =========================================================
   PAGE CONTACT — Refonte premium (v1.4.6)
========================================================= */
.ev-contactpage{padding:32px 0 56px;background:var(--ev-bg, #f6f8fb);}
.ev-contactpage .ev-container{max-width:1320px;margin:0 auto;padding:0 20px;}
.ev-contactpage__head{margin:8px 0 28px;}
.ev-contactpage__title{font-size:clamp(32px,4vw,46px);font-weight:800;color:var(--ev-navy,#0a1f3d);margin:0 0 12px;letter-spacing:-.5px;}
.ev-contactpage__intro{color:var(--ev-muted,#5a6b85);font-size:15px;line-height:1.6;max-width:620px;margin:0;}

.ev-contactpage__grid{display:grid;grid-template-columns:360px 1fr;gap:28px;align-items:start;margin-bottom:48px;}
.ev-contactpage__card{background:#fff;border:1px solid var(--ev-line,#e6ebf2);border-radius:18px;box-shadow:0 4px 24px rgba(10,31,61,.05);padding:28px 28px;}
.ev-contactpage__card-title{font-size:20px;font-weight:700;color:var(--ev-navy,#0a1f3d);margin:0 0 22px;}

/* Coordonnées list */
.ev-contact-info{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:22px;}
.ev-contact-info__item{display:flex;gap:14px;align-items:flex-start;}
.ev-contact-info__icon{width:36px;height:36px;border-radius:10px;background:rgba(18,184,176,.08);color:var(--ev-teal,#12b8b0);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;}
.ev-contact-info__icon .ev-icon{width:18px;height:18px;}
.ev-contact-info__body{display:flex;flex-direction:column;gap:4px;min-width:0;}
.ev-contact-info__label{font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--ev-navy,#0a1f3d);text-transform:uppercase;}
.ev-contact-info__value{font-size:14px;color:var(--ev-navy,#0a1f3d);text-decoration:none;line-height:1.5;}
.ev-contact-info__value--link{color:var(--ev-teal,#12b8b0);font-weight:600;}
.ev-contact-info__value--link:hover{color:var(--ev-navy,#0a1f3d);}
.ev-contact-info__sub{font-size:13px;color:var(--ev-muted,#5a6b85);line-height:1.5;}

/* Socials */
.ev-contact-social{display:flex;gap:10px;margin-top:6px;flex-wrap:wrap;}
.ev-contact-social__link{width:38px;height:38px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;text-decoration:none;transition:transform .15s ease, box-shadow .15s ease;}
.ev-contact-social__link:hover{transform:translateY(-2px);box-shadow:0 6px 16px rgba(10,31,61,.18);}
.ev-contact-social__link--facebook{background:#1877f2;}
.ev-contact-social__link--instagram{background:linear-gradient(135deg,#f58529 0%,#dd2a7b 50%,#8134af 100%);}
.ev-contact-social__link--tiktok{background:#000;}
.ev-contact-social__link--youtube{background:#ff0000;}

/* Form */
.ev-contactpage__form-intro{color:var(--ev-muted,#5a6b85);font-size:14px;margin:-12px 0 18px;}
.ev-contactpage__form-body .wpforms-container,
.ev-contactpage__form-body .wpforms-form{margin:0;}
.ev-contactpage__form-body input[type="text"],
.ev-contactpage__form-body input[type="email"],
.ev-contactpage__form-body input[type="url"],
.ev-contactpage__form-body input[type="tel"],
.ev-contactpage__form-body select,
.ev-contactpage__form-body textarea{
  width:100%;border:1px solid var(--ev-line,#e6ebf2);border-radius:10px;padding:12px 14px;font-size:14px;color:var(--ev-navy,#0a1f3d);background:#fff;transition:border-color .15s ease, box-shadow .15s ease;
}
.ev-contactpage__form-body input:focus,
.ev-contactpage__form-body select:focus,
.ev-contactpage__form-body textarea:focus{outline:none;border-color:var(--ev-teal,#12b8b0);box-shadow:0 0 0 3px rgba(18,184,176,.15);}
.ev-contactpage__form-body label{font-size:13px;font-weight:600;color:var(--ev-navy,#0a1f3d);}
.ev-contactpage__form-body .wpforms-submit,
.ev-contactpage__form-body button[type="submit"],
.ev-contactpage__form-body input[type="submit"]{
  background:linear-gradient(90deg,var(--ev-teal,#12b8b0) 0%,#0fa39c 100%);color:#fff !important;border:none;border-radius:10px;padding:14px 28px;font-weight:700;font-size:14px;letter-spacing:.04em;cursor:pointer;text-transform:uppercase;transition:transform .15s ease, box-shadow .15s ease;
}
.ev-contactpage__form-body .wpforms-submit:hover,
.ev-contactpage__form-body button[type="submit"]:hover,
.ev-contactpage__form-body input[type="submit"]:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(18,184,176,.3);}
.ev-contactpage__form-empty{padding:28px;border:2px dashed var(--ev-line,#e6ebf2);border-radius:12px;text-align:center;color:var(--ev-muted,#5a6b85);font-size:14px;}

/* FAQ section */
.ev-contactpage__faq{margin:48px 0;}
.ev-contactpage__faq-head{text-align:center;margin-bottom:28px;}
.ev-contactpage__faq-title{font-size:clamp(24px,3vw,32px);font-weight:800;color:var(--ev-navy,#0a1f3d);margin:0 0 8px;}
.ev-contactpage__faq-sub{color:var(--ev-muted,#5a6b85);font-size:15px;margin:0;}
.ev-contactpage__faq-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;}
.ev-faq-card{background:#fff;border:1px solid var(--ev-line,#e6ebf2);border-radius:16px;padding:26px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px;box-shadow:0 4px 18px rgba(10,31,61,.04);transition:transform .2s ease, box-shadow .2s ease;}
.ev-faq-card:hover{transform:translateY(-4px);box-shadow:0 10px 28px rgba(10,31,61,.1);}
.ev-faq-card__icon{width:46px;height:46px;border-radius:12px;background:rgba(18,184,176,.1);color:var(--ev-teal,#12b8b0);display:inline-flex;align-items:center;justify-content:center;margin-bottom:6px;}
.ev-faq-card__icon .ev-icon{width:22px;height:22px;}
.ev-faq-card__title{font-size:16px;font-weight:700;color:var(--ev-navy,#0a1f3d);margin:0;}
.ev-faq-card__text{color:var(--ev-muted,#5a6b85);font-size:13.5px;line-height:1.5;margin:0;}
.ev-faq-card__cta{margin-top:auto;padding-top:8px;color:var(--ev-teal,#12b8b0);font-weight:600;font-size:13px;text-decoration:none;}
.ev-faq-card__cta:hover{color:#0fa39c;}
.ev-faq-card__cta--static{cursor:default;color:var(--ev-muted,#5a6b85);}

/* Bottom banner */
.ev-contactpage__banner{
  margin-top:24px;border-radius:18px;padding:28px 36px;color:#fff;
  background:linear-gradient(90deg,#0a1f3d 0%,#12b8b0 100%);
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
  box-shadow:0 8px 28px rgba(10,31,61,.18);
}
.ev-contactpage__banner-text{min-width:0;flex:1 1 320px;}
.ev-contactpage__banner-title{font-size:22px;font-weight:800;margin:0 0 6px;color:#fff;}
.ev-contactpage__banner-sub{margin:0;color:rgba(255,255,255,.85);font-size:14.5px;}
.ev-contactpage__banner-btn{
  background:#fff !important;color:var(--ev-navy,#0a1f3d) !important;border:none;border-radius:10px;
  padding:14px 26px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;font-size:13px;
  text-decoration:none;display:inline-flex;align-items:center;justify-content:center;
  transition:transform .15s ease, box-shadow .15s ease;
}
.ev-contactpage__banner-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(0,0,0,.18);}

/* Responsive */
@media (max-width: 980px){
  .ev-contactpage__grid{grid-template-columns:1fr;}
  .ev-contactpage__faq-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width: 600px){
  .ev-contactpage{padding:20px 0 40px;}
  .ev-contactpage__card{padding:22px 20px;}
  .ev-contactpage__faq-grid{grid-template-columns:1fr;}
  .ev-contactpage__banner{padding:24px;text-align:center;justify-content:center;}
  .ev-contactpage__banner-text{flex:1 1 100%;}
  .ev-contactpage__banner-btn{width:100%;}
}


/* =========================================================
   PAGE PANIER — ECONOVAPE v1.4.7
========================================================= */
.ev-cart{max-width:1320px;margin:0 auto;padding:24px 20px 60px;color:#0a1f3d;}
.ev-cart__header{display:flex;align-items:baseline;gap:14px;margin:8px 0 20px;}
.ev-cart__title{font-size:34px;font-weight:800;margin:0;letter-spacing:-.01em;}
.ev-cart__count{display:inline-flex;align-items:center;height:28px;padding:0 12px;border:1px solid rgba(10,31,61,.15);border-radius:999px;font-size:13px;color:#0a1f3d;background:#fff;}
.ev-cart__grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start;}
.ev-cart__main{display:flex;flex-direction:column;gap:20px;min-width:0;}
.ev-cart-card{background:#fff;border:1px solid rgba(10,31,61,.08);border-radius:18px;padding:20px 22px;box-shadow:0 1px 2px rgba(10,31,61,.04);}
.ev-cart-card__title{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;margin:0 0 14px;color:#0a1f3d;text-transform:uppercase;letter-spacing:.05em;}
.ev-cart-card__title svg{color:#12b8b0;}

/* Items */
.ev-cart-items{padding:0;}
.ev-cart-items__head,
.ev-cart-item{display:grid;grid-template-columns:minmax(0,2.4fr) 110px 140px 110px 40px;gap:16px;align-items:center;padding:16px 22px;}
.ev-cart-items__head{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#6b7a8f;border-bottom:1px solid rgba(10,31,61,.06);padding-top:18px;padding-bottom:14px;}
.ev-cart-items__body .ev-cart-item + .ev-cart-item{border-top:1px solid rgba(10,31,61,.06);}
.ev-cart-item__product{display:flex;gap:14px;align-items:center;min-width:0;}
.ev-cart-item__thumb img{width:78px;height:78px;object-fit:contain;border-radius:12px;background:#f6f8fb;}
.ev-cart-item__info{min-width:0;}
.ev-cart-item__name a{color:#0a1f3d;text-decoration:none;font-weight:700;font-size:15px;}
.ev-cart-item__name a:hover{color:#12b8b0;}
.ev-cart-item__meta{font-size:13px;color:#5b6a82;margin-top:4px;}
.ev-cart-item__meta dl,.ev-cart-item__meta p{margin:2px 0;}
.ev-cart-item__stock{margin:6px 0 0;font-size:12px;color:#0fa39c;}
.ev-cart-item__stock--out{color:#c53030;}
.ev-cart-item__price,.ev-cart-item__total{font-weight:600;color:#0a1f3d;}
.ev-cart-item__qty .quantity{display:inline-flex;align-items:center;border:1px solid rgba(10,31,61,.15);border-radius:10px;overflow:hidden;background:#fff;}
.ev-cart-item__qty input.qty{width:48px;border:0;text-align:center;height:36px;background:transparent;color:#0a1f3d;font-weight:600;}
.ev-cart-item__remove-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;color:#6b7a8f;text-decoration:none;font-size:20px;line-height:1;}
.ev-cart-item__remove-btn:hover{background:#fdecec;color:#c53030;}
.ev-cart-items__actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 22px 18px;border-top:1px solid rgba(10,31,61,.06);}
.ev-cart-back{display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid rgba(10,31,61,.15);border-radius:12px;color:#0a1f3d;text-decoration:none;font-weight:600;font-size:14px;background:#fff;}
.ev-cart-back:hover{border-color:#12b8b0;color:#12b8b0;}
.ev-cart-update{background:transparent;border:0;color:#5b6a82;font-size:13px;cursor:pointer;text-decoration:underline;}
.ev-cart-update:hover{color:#0a1f3d;}

/* Row 3: coupon, shipping, help */
.ev-cart__row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px;}
.ev-cart-coupon__field{display:flex;gap:8px;}
.ev-cart-coupon__field input{flex:1;height:44px;border:1px solid rgba(10,31,61,.15);border-radius:12px;padding:0 14px;font-size:14px;color:#0a1f3d;background:#fff;}
.ev-cart-coupon__field input:focus{outline:none;border-color:#12b8b0;box-shadow:0 0 0 3px rgba(18,184,176,.18);}
.ev-cart-coupon__applied{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.ev-cart-coupon__applied li{display:inline-flex;align-items:center;gap:8px;background:#eafaf8;color:#0a6f6a;border-radius:999px;padding:6px 12px;font-size:13px;}
.ev-cart-coupon__remove{color:#0a6f6a;text-decoration:underline;font-size:12px;}

.ev-cart-shipping__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;}
.ev-cart-shipping__list li{display:flex;align-items:center;gap:10px;font-size:14px;color:#0a1f3d;}
.ev-cart-shipping__icon{display:inline-flex;color:#12b8b0;}
.ev-cart-shipping__name{flex:1;}
.ev-cart-shipping__cost{font-weight:600;}
.ev-cart-shipping__hint{color:#12b8b0;font-size:13px;}

.ev-cart-help{display:flex;gap:14px;align-items:center;}
.ev-cart-help--no-image{display:block;}
.ev-cart-help__media{flex:0 0 92px;width:92px;height:92px;border-radius:14px;overflow:hidden;background:#f6f8fb;}
.ev-cart-help__media img{width:100%;height:100%;object-fit:cover;display:block;}
.ev-cart-help__body{flex:1;min-width:0;}
.ev-cart-help__text{margin:0 0 12px;font-size:13px;color:#5b6a82;}
.ev-cart-help__note{display:block;margin-top:8px;color:#6b7a8f;font-size:12px;}

/* Buttons */
.ev-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 18px;height:44px;border-radius:12px;font-weight:700;font-size:14px;text-decoration:none;border:0;cursor:pointer;transition:all .15s ease;}
.ev-btn--primary{background:#12b8b0;color:#fff;}
.ev-btn--primary:hover{background:#0fa39c;}
.ev-btn--dark{background:#0a1f3d;color:#fff;}
.ev-btn--dark:hover{background:#152e57;}
.ev-btn--ghost{background:#fff;color:#0a1f3d;border:1px solid rgba(10,31,61,.15);}
.ev-btn--ghost:hover{border-color:#12b8b0;color:#12b8b0;}

/* Summary */
.ev-cart__aside{position:sticky;top:90px;}
.ev-cart-summary__title{margin:0 0 14px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:#0a1f3d;font-weight:700;}
.ev-cart-summary__lines{display:flex;flex-direction:column;gap:12px;padding-bottom:14px;border-bottom:1px solid rgba(10,31,61,.08);}
.ev-cart-summary__line{display:flex;justify-content:space-between;gap:12px;font-size:14px;color:#0a1f3d;}
.ev-cart-summary__line small{display:block;color:#6b7a8f;font-size:11px;}
.ev-cart-summary__line--discount strong{color:#c53030;}
.ev-cart-summary__line--tax{color:#6b7a8f;font-size:13px;}
.ev-cart-summary__free{color:#0fa39c;}
.ev-cart-summary__total{display:flex;justify-content:space-between;align-items:baseline;padding:14px 0 4px;font-weight:800;font-size:18px;}
.ev-cart-summary__total strong{font-size:22px;}
.ev-cart-summary__savings{margin:0 0 14px;font-size:13px;color:#0fa39c;}
.ev-cart-summary__checkout{width:100%;height:50px;font-size:15px;}

/* Cross-sells */
.ev-cart-xsell{margin-top:36px;}
.ev-cart-xsell__title{font-size:14px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#0a1f3d;margin:0 0 16px;}
.ev-cart-xsell__grid.ev-products{grid-template-columns:repeat(5,minmax(0,1fr)) !important;gap:16px !important;}

/* Reassurance */
.ev-cart-reass{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:28px;background:#fff;border:1px solid rgba(10,31,61,.08);border-radius:18px;padding:18px 22px;}
.ev-cart-reass__item{display:flex;align-items:center;gap:12px;}
.ev-cart-reass__icon{display:inline-flex;color:#12b8b0;}
.ev-cart-reass__item strong{display:block;font-size:13px;color:#0a1f3d;}
.ev-cart-reass__item span{display:block;font-size:12px;color:#6b7a8f;}

/* Responsive */
@media (max-width:1024px){
  .ev-cart__grid{grid-template-columns:1fr;}
  .ev-cart__aside{position:static;}
  .ev-cart__row3{grid-template-columns:1fr 1fr;}
  .ev-cart-xsell__grid.ev-products{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
  .ev-cart-reass{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:768px){
  .ev-cart__row3{grid-template-columns:1fr;}
  .ev-cart-items__head{display:none;}
  .ev-cart-item{grid-template-columns:1fr;gap:8px;padding:16px;}
  .ev-cart-item__price::before,.ev-cart-item__qty::before,.ev-cart-item__total::before{content:attr(data-label);display:inline-block;color:#6b7a8f;font-size:12px;text-transform:uppercase;margin-right:8px;}
  .ev-cart-item__remove{justify-self:end;margin-top:-32px;}
  .ev-cart-xsell__grid.ev-products{grid-template-columns:repeat(2,minmax(0,1fr)) !important;}
  .ev-cart-reass{grid-template-columns:1fr;}
  .ev-cart__title{font-size:26px;}
}

/* =========================================================
   PAGE PANIER — FIX VISUEL PREMIUM v1.4.7
   Corrige largeur, proportions, cartes panier et recommandations.
========================================================= */

/* Conteneur plus large et vraie structure premium */
body.woocommerce-cart .ev-cart {
  width: 100% !important;
  max-width: 1280px !important;
  margin: 0 auto !important;
  padding: 28px 24px 70px !important;
  box-sizing: border-box !important;
}

body.woocommerce-cart .ev-cart__header {
  margin: 8px 0 26px !important;
}

body.woocommerce-cart .ev-cart__title {
  font-size: 38px !important;
  line-height: 1.08 !important;
}

body.woocommerce-cart .ev-cart__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 340px !important;
  gap: 26px !important;
  align-items: start !important;
}

body.woocommerce-cart .ev-cart-card {
  border-radius: 18px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  box-shadow: 0 10px 28px rgba(10,31,61,.045) !important;
  background: #fff !important;
}

/* Lignes produits du panier */
body.woocommerce-cart .ev-cart-items__head,
body.woocommerce-cart .ev-cart-item {
  grid-template-columns: minmax(280px, 1.9fr) 100px 120px 100px 34px !important;
  gap: 18px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

body.woocommerce-cart .ev-cart-item {
  min-height: 112px !important;
}

body.woocommerce-cart .ev-cart-item__thumb img {
  width: 88px !important;
  height: 88px !important;
  object-fit: contain !important;
  border-radius: 14px !important;
  background: #f7f9fc !important;
}

body.woocommerce-cart .ev-cart-item__name a {
  font-size: 15.5px !important;
  line-height: 1.28 !important;
}

body.woocommerce-cart .ev-cart-item__meta,
body.woocommerce-cart .ev-cart-item__stock {
  font-size: 12.5px !important;
}

/* Récapitulatif */
body.woocommerce-cart .ev-cart__aside {
  position: sticky !important;
  top: 96px !important;
}

body.woocommerce-cart .ev-cart-summary {
  padding: 24px !important;
  border-radius: 20px !important;
}

body.woocommerce-cart .ev-cart-summary__title {
  font-size: 16px !important;
  margin-bottom: 20px !important;
}

body.woocommerce-cart .ev-cart-summary__line {
  font-size: 14.5px !important;
  padding: 2px 0 !important;
}

body.woocommerce-cart .ev-cart-summary__total {
  padding-top: 20px !important;
  margin-top: 6px !important;
  font-size: 18px !important;
}

body.woocommerce-cart .ev-cart-summary__total strong {
  font-size: 28px !important;
  color: #12b8b0 !important;
}

body.woocommerce-cart .ev-cart-summary__checkout {
  min-height: 56px !important;
  border-radius: 14px !important;
  font-size: 15px !important;
  margin-top: 14px !important;
}

/* Blocs sous panier */
body.woocommerce-cart .ev-cart__row3 {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 18px !important;
}

body.woocommerce-cart .ev-cart__row3 .ev-cart-card {
  min-height: 168px !important;
  padding: 20px !important;
}

body.woocommerce-cart .ev-cart-card__title {
  font-size: 14px !important;
  line-height: 1.25 !important;
}

body.woocommerce-cart .ev-cart-coupon__field {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
}

body.woocommerce-cart .ev-cart-coupon__field input {
  min-width: 0 !important;
}

body.woocommerce-cart .ev-cart-help {
  position: relative !important;
  overflow: hidden !important;
}

body.woocommerce-cart .ev-cart-help__media {
  width: 112px !important;
  height: 112px !important;
  flex-basis: 112px !important;
}

body.woocommerce-cart .ev-cart-help__body {
  min-width: 0 !important;
}

/* Section Vous aimerez aussi */
body.woocommerce-cart .ev-cart-xsell {
  margin-top: 34px !important;
  width: 100% !important;
  clear: both !important;
}

body.woocommerce-cart .ev-cart-xsell__title {
  font-size: 17px !important;
  letter-spacing: .05em !important;
  margin-bottom: 18px !important;
}

/* Neutralise le CSS global .ev-products qui écrasait les cartes */
body.woocommerce-cart .ev-cart-xsell ul.products,
body.woocommerce-cart .ev-cart-xsell ul.ev-products,
body.woocommerce-cart .ev-cart-xsell__grid.ev-products {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 20px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Cartes produits recommandés lisibles */
body.woocommerce-cart .ev-cart-xsell ul.products li.product,
body.woocommerce-cart .ev-cart-xsell ul.products li.ev-product-card,
body.woocommerce-cart .ev-cart-xsell ul.ev-products > li,
body.woocommerce-cart .ev-cart-xsell__grid > li {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  min-height: 310px !important;
  padding: 14px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(10,31,61,.045) !important;
  position: relative !important;
  box-sizing: border-box !important;
}

/* Image recommandation */
body.woocommerce-cart .ev-cart-xsell li.product img,
body.woocommerce-cart .ev-cart-xsell li.ev-product-card img,
body.woocommerce-cart .ev-cart-xsell .ev-product-card__image img,
body.woocommerce-cart .ev-cart-xsell .woocommerce-loop-product__link img {
  width: 100% !important;
  height: 150px !important;
  max-height: 150px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto 12px !important;
  border-radius: 12px !important;
}

/* Texte produit recommandé */
body.woocommerce-cart .ev-cart-xsell .woocommerce-loop-product__title,
body.woocommerce-cart .ev-cart-xsell .ev-product-card__title,
body.woocommerce-cart .ev-cart-xsell li.product h2,
body.woocommerce-cart .ev-cart-xsell li.product h3 {
  font-size: 13.5px !important;
  line-height: 1.28 !important;
  min-height: 36px !important;
  max-height: 38px !important;
  overflow: hidden !important;
  margin: 0 0 8px !important;
  color: #0a1f3d !important;
  font-weight: 700 !important;
}

/* Prix recommandé */
body.woocommerce-cart .ev-cart-xsell .price,
body.woocommerce-cart .ev-cart-xsell .ev-product-card__price {
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #0a1f3d !important;
  margin-top: auto !important;
  margin-bottom: 10px !important;
}

/* Bouton ajouter au panier recommandé */
body.woocommerce-cart .ev-cart-xsell a.button,
body.woocommerce-cart .ev-cart-xsell .add_to_cart_button,
body.woocommerce-cart .ev-cart-xsell .ev-product-card__button {
  width: 100% !important;
  min-height: 40px !important;
  border-radius: 11px !important;
  padding: 0 12px !important;
  font-size: 12.5px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #12b8b0 !important;
  color: #fff !important;
  text-align: center !important;
}

/* Wishlist dans recommandations */
body.woocommerce-cart .ev-cart-xsell .ev-card__wishlist {
  top: 136px !important;
  right: 18px !important;
}

/* Réassurance */
body.woocommerce-cart .ev-cart-reass {
  margin-top: 34px !important;
  padding: 20px 24px !important;
}

/* Responsive */
@media (max-width: 1180px) {
  body.woocommerce-cart .ev-cart__grid {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .ev-cart__aside {
    position: static !important;
  }

  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products,
  body.woocommerce-cart .ev-cart-xsell__grid.ev-products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  body.woocommerce-cart .ev-cart__row3 {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products,
  body.woocommerce-cart .ev-cart-xsell__grid.ev-products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.woocommerce-cart .ev-cart-reass {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 620px) {
  body.woocommerce-cart .ev-cart {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.woocommerce-cart .ev-cart-item {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products,
  body.woocommerce-cart .ev-cart-xsell__grid.ev-products,
  body.woocommerce-cart .ev-cart-reass {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   ECONOVAPE — FIX PANIER / COMPTE / CONTACT v2
   6 recommandations, boutons propres, images blocs.
========================================================= */

/* -----------------------------
   PANIER — Récapitulatif
----------------------------- */

/* Supprimer le bouton WooCommerce par défaut en double si un hook l'ajoute quand même */
body.woocommerce-cart .ev-cart-summary .checkout-button:not(.ev-cart-summary__checkout),
body.woocommerce-cart .ev-cart-summary .wc-proceed-to-checkout,
body.woocommerce-cart .ev-cart-summary .button.checkout {
  display: none !important;
}

body.woocommerce-cart .ev-cart-summary__checkout,
body.woocommerce-cart .ev-cart-summary a.ev-cart-summary__checkout,
body.woocommerce-cart .ev-cart-summary .ev-btn--primary {
  background: #12b8b0 !important;
  color: #ffffff !important;
  border: 0 !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

body.woocommerce-cart .ev-cart-summary__checkout *,
body.woocommerce-cart .ev-cart-summary__checkout span {
  color: #ffffff !important;
  opacity: 1 !important;
}

body.woocommerce-cart .ev-cart-summary__checkout:hover {
  background: #0fa39c !important;
  color: #ffffff !important;
}

body.woocommerce-cart .ev-cart-summary__total strong {
  color: #12b8b0 !important;
}

/* -----------------------------
   PANIER — Code promo plus premium
----------------------------- */

body.woocommerce-cart .ev-cart-coupon {
  padding: 22px !important;
}

body.woocommerce-cart .ev-cart-coupon__field {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 118px !important;
  gap: 10px !important;
  align-items: center !important;
}

body.woocommerce-cart .ev-cart-coupon__field input {
  height: 48px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(10,31,61,.13) !important;
  background: #fff !important;
  font-size: 13px !important;
}

body.woocommerce-cart .ev-cart-coupon__field .ev-btn,
body.woocommerce-cart .ev-cart-coupon__field button {
  height: 48px !important;
  border-radius: 12px !important;
  background: #0a1f3d !important;
  color: #fff !important;
  font-size: 13px !important;
  padding: 0 14px !important;
}

/* -----------------------------
   PANIER — Bloc Besoin d'aide : image au-dessus, pas sur le côté
----------------------------- */

body.woocommerce-cart .ev-cart-help {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 14px !important;
  text-align: left !important;
  min-height: 230px !important;
}

body.woocommerce-cart .ev-cart-help__media {
  width: 100% !important;
  height: 128px !important;
  flex: 0 0 128px !important;
  border-radius: 14px !important;
  overflow: hidden !important;
  margin: 0 !important;
}

body.woocommerce-cart .ev-cart-help__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

body.woocommerce-cart .ev-cart-help__body {
  width: 100% !important;
  min-width: 0 !important;
}

body.woocommerce-cart .ev-cart-help .ev-cart-card__title {
  margin-bottom: 8px !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
}

body.woocommerce-cart .ev-cart-help__text {
  font-size: 13px !important;
  line-height: 1.45 !important;
  margin-bottom: 12px !important;
}

body.woocommerce-cart .ev-cart-help .ev-btn {
  width: 100% !important;
  height: 42px !important;
  color: #0a1f3d !important;
}

/* -----------------------------
   PANIER — Vous aimerez aussi : 6 produits sur la même ligne desktop
----------------------------- */

body.woocommerce-cart .ev-cart-xsell {
  margin-top: 36px !important;
  overflow: visible !important;
}

body.woocommerce-cart .ev-cart-xsell__title {
  margin-bottom: 20px !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
}

body.woocommerce-cart .ev-cart-xsell ul.products,
body.woocommerce-cart .ev-cart-xsell ul.ev-products,
body.woocommerce-cart .ev-cart-xsell__grid.ev-products {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-cart .ev-cart-xsell ul.products > li,
body.woocommerce-cart .ev-cart-xsell ul.ev-products > li,
body.woocommerce-cart .ev-cart-xsell__grid > li {
  min-height: 300px !important;
  padding: 13px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(10,31,61,.045) !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
}

body.woocommerce-cart .ev-cart-xsell li.product img,
body.woocommerce-cart .ev-cart-xsell .ev-product-card__image img,
body.woocommerce-cart .ev-cart-xsell .woocommerce-loop-product__link img {
  width: 100% !important;
  height: 135px !important;
  max-height: 135px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 auto 12px !important;
  border-radius: 12px !important;
  background: #f7f9fc !important;
}

body.woocommerce-cart .ev-cart-xsell .woocommerce-loop-product__title,
body.woocommerce-cart .ev-cart-xsell .ev-product-card__title,
body.woocommerce-cart .ev-cart-xsell li.product h2,
body.woocommerce-cart .ev-cart-xsell li.product h3 {
  font-size: 13px !important;
  line-height: 1.28 !important;
  min-height: 34px !important;
  max-height: 34px !important;
  overflow: hidden !important;
  margin: 0 0 8px !important;
  color: #0a1f3d !important;
  font-weight: 800 !important;
}

body.woocommerce-cart .ev-cart-xsell .price,
body.woocommerce-cart .ev-cart-xsell .ev-product-card__price {
  font-size: 15px !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
  margin-top: auto !important;
  margin-bottom: 10px !important;
}

body.woocommerce-cart .ev-cart-xsell .price del {
  color: #97a3b6 !important;
  font-size: 12px !important;
  margin-right: 4px !important;
}

body.woocommerce-cart .ev-cart-xsell .price ins {
  color: #e53935 !important;
  text-decoration: none !important;
}

body.woocommerce-cart .ev-cart-xsell a.button,
body.woocommerce-cart .ev-cart-xsell .add_to_cart_button,
body.woocommerce-cart .ev-cart-xsell .ev-product-card__button {
  width: 100% !important;
  min-height: 42px !important;
  border-radius: 12px !important;
  padding: 0 10px !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #12b8b0 !important;
  color: #fff !important;
  text-align: center !important;
  margin-top: auto !important;
}

body.woocommerce-cart .ev-cart-xsell .ev-card__wishlist {
  top: 128px !important;
  right: 18px !important;
}

/* -----------------------------
   COMPTE — Besoin d'un conseil personnalisé : image vraiment plein bloc
----------------------------- */

body.woocommerce-account .ev-acc-advice {
  position: relative !important;
  overflow: hidden !important;
  min-height: 190px !important;
  height: 190px !important;
  border-radius: 18px !important;
  background: #0a1f3d !important;
}

body.woocommerce-account .ev-acc-advice .ev-acc-advice__media,
body.woocommerce-account .ev-acc-advice .ev-acc-advice__image,
body.woocommerce-account .ev-acc-advice figure,
body.woocommerce-account .ev-acc-advice picture {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  z-index: 0 !important;
}

body.woocommerce-account .ev-acc-advice .ev-acc-advice__media img,
body.woocommerce-account .ev-acc-advice .ev-acc-advice__image img,
body.woocommerce-account .ev-acc-advice figure img,
body.woocommerce-account .ev-acc-advice picture img,
body.woocommerce-account .ev-acc-advice > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  max-width: none !important;
  max-height: none !important;
  z-index: 0 !important;
}

body.woocommerce-account .ev-acc-advice::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(8,26,51,.88) 0%, rgba(8,26,51,.62) 42%, rgba(8,26,51,.08) 100%) !important;
  pointer-events: none !important;
}

body.woocommerce-account .ev-acc-advice .ev-acc-advice__text,
body.woocommerce-account .ev-acc-advice h3,
body.woocommerce-account .ev-acc-advice p,
body.woocommerce-account .ev-acc-advice a {
  position: relative !important;
  z-index: 2 !important;
}

/* -----------------------------
   CONTACT — Bandeau final : enlever voile/couleur devant image
----------------------------- */

body .ev-contactpage__banner.has-bg,
body .ev-contactpage__banner--has-image,
body .ev-contactpage__banner[style*="background-image"] {
  background-color: transparent !important;
  background-blend-mode: normal !important;
}

body .ev-contactpage__banner.has-bg::before,
body .ev-contactpage__banner--has-image::before,
body .ev-contactpage__banner[style*="background-image"]::before {
  display: none !important;
  content: none !important;
  background: transparent !important;
}

body .ev-contactpage__banner img {
  opacity: 1 !important;
  filter: none !important;
}

/* Responsive */
@media (max-width: 1280px) {
  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products,
  body.woocommerce-cart .ev-cart-xsell__grid.ev-products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 900px) {
  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products,
  body.woocommerce-cart .ev-cart-xsell__grid.ev-products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 520px) {
  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products,
  body.woocommerce-cart .ev-cart-xsell__grid.ev-products {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   ECONOVAPE — FIX MON COMPTE BLOCS AIDE + CONSEIL
   Sidebar aide propre + bandeau conseil image à droite.
========================================================= */

/* =========================================================
   1. MON COMPTE — BLOC "BESOIN D'AIDE ?" SIDEBAR
========================================================= */

body.woocommerce-account .ev-acc-help,
body.woocommerce-account .ev-account-help,
body.woocommerce-account .ev-account-sidebar-help,
body.woocommerce-account .ev-acc-sidebar-help {
  position: relative !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 92px !important;
  grid-template-areas:
    "title image"
    "text image"
    "button image" !important;
  gap: 10px 14px !important;
  align-items: center !important;
  min-height: 170px !important;
  padding: 22px 18px !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  box-shadow: 0 8px 22px rgba(10,31,61,.045) !important;
  box-sizing: border-box !important;
}

/* Titre */
body.woocommerce-account .ev-acc-help h3,
body.woocommerce-account .ev-account-help h3,
body.woocommerce-account .ev-account-sidebar-help h3,
body.woocommerce-account .ev-acc-sidebar-help h3 {
  grid-area: title !important;
  margin: 0 !important;
  color: #0a1f3d !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  max-width: 130px !important;
}

/* Texte */
body.woocommerce-account .ev-acc-help p,
body.woocommerce-account .ev-account-help p,
body.woocommerce-account .ev-account-sidebar-help p,
body.woocommerce-account .ev-acc-sidebar-help p {
  grid-area: text !important;
  margin: 0 !important;
  color: #42526b !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
  max-width: 135px !important;
}

/* Bouton */
body.woocommerce-account .ev-acc-help a,
body.woocommerce-account .ev-account-help a,
body.woocommerce-account .ev-account-sidebar-help a,
body.woocommerce-account .ev-acc-sidebar-help a {
  grid-area: button !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: 135px !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  border-radius: 12px !important;
  border: 1px solid #12b8b0 !important;
  background: #ffffff !important;
  color: #0a9f98 !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  text-decoration: none !important;
}

/* Image mascotte à droite, proprement cadrée */
body.woocommerce-account .ev-acc-help img,
body.woocommerce-account .ev-account-help img,
body.woocommerce-account .ev-account-sidebar-help img,
body.woocommerce-account .ev-acc-sidebar-help img,
body.woocommerce-account .ev-acc-help__image,
body.woocommerce-account .ev-account-help__image,
body.woocommerce-account .ev-acc-help__media,
body.woocommerce-account .ev-account-help__media {
  grid-area: image !important;
  align-self: end !important;
  justify-self: end !important;
  width: 92px !important;
  height: 112px !important;
  max-width: 92px !important;
  max-height: 112px !important;
  object-fit: contain !important;
  object-position: bottom right !important;
  border-radius: 0 !important;
  margin: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Cas où l'image est dans un conteneur */
body.woocommerce-account .ev-acc-help__image img,
body.woocommerce-account .ev-account-help__image img,
body.woocommerce-account .ev-acc-help__media img,
body.woocommerce-account .ev-account-help__media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: bottom right !important;
}

/* =========================================================
   2. MON COMPTE — BANDEAU "BESOIN D'UN CONSEIL PERSONNALISÉ ?"
========================================================= */

body.woocommerce-account .ev-acc-advice {
  position: relative !important;
  overflow: hidden !important;
  display: grid !important;
  grid-template-columns: minmax(0, 42%) minmax(0, 58%) !important;
  align-items: stretch !important;
  gap: 0 !important;
  height: 190px !important;
  min-height: 190px !important;
  max-height: 190px !important;
  padding: 0 !important;
  border-radius: 18px !important;
  background: #0a1f3d !important;
  box-sizing: border-box !important;
}

/* Zone texte à gauche */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__text,
body.woocommerce-account .ev-acc-advice__content {
  position: relative !important;
  z-index: 3 !important;
  grid-column: 1 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  padding: 28px 32px !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

body.woocommerce-account .ev-acc-advice h3 {
  position: relative !important;
  z-index: 3 !important;
  max-width: 100% !important;
  margin: 0 0 10px !important;
  color: #ffffff !important;
  font-size: 24px !important;
  line-height: 1.12 !important;
  font-weight: 900 !important;
}

body.woocommerce-account .ev-acc-advice p {
  position: relative !important;
  z-index: 3 !important;
  max-width: 100% !important;
  margin: 0 0 18px !important;
  color: rgba(255,255,255,.92) !important;
  font-size: 14.5px !important;
  line-height: 1.45 !important;
}

body.woocommerce-account .ev-acc-advice a,
body.woocommerce-account .ev-acc-advice .ev-btn {
  position: relative !important;
  z-index: 3 !important;
  width: auto !important;
  min-width: 220px !important;
  min-height: 50px !important;
  padding: 0 24px !important;
  border-radius: 12px !important;
  background: #12b8b0 !important;
  color: #ffffff !important;
  border: 0 !important;
  font-weight: 900 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* Zone image à droite : remplit toute la moitié droite */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__media,
body.woocommerce-account .ev-acc-advice .ev-acc-advice__image,
body.woocommerce-account .ev-acc-advice figure,
body.woocommerce-account .ev-acc-advice picture {
  position: relative !important;
  z-index: 1 !important;
  grid-column: 2 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 190px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  align-self: stretch !important;
  justify-self: stretch !important;
}

/* Image si elle est dans un conteneur */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__media img,
body.woocommerce-account .ev-acc-advice .ev-acc-advice__image img,
body.woocommerce-account .ev-acc-advice figure img,
body.woocommerce-account .ev-acc-advice picture img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center right !important;
  display: block !important;
}

/* Image si elle est enfant direct du bandeau */
body.woocommerce-account .ev-acc-advice > img {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  left: 42% !important;
  width: 58% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center right !important;
  z-index: 1 !important;
}

/* Dégradé uniquement pour la liaison texte/image, pas un gros voile sur toute l'image */
body.woocommerce-account .ev-acc-advice::before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  left: 34% !important;
  width: 26% !important;
  z-index: 2 !important;
  background: linear-gradient(90deg, #0a1f3d 0%, rgba(10,31,61,.82) 45%, rgba(10,31,61,0) 100%) !important;
  pointer-events: none !important;
}

/* Annule les anciennes règles qui mettaient l'image en fond complet */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__media,
body.woocommerce-account .ev-acc-advice .ev-acc-advice__image {
  inset: auto !important;
}

/* =========================================================
   3. RESPONSIVE MON COMPTE
========================================================= */

@media (max-width: 900px) {
  body.woocommerce-account .ev-acc-advice {
    grid-template-columns: 1fr !important;
    height: auto !important;
    max-height: none !important;
    min-height: 220px !important;
  }

  body.woocommerce-account .ev-acc-advice .ev-acc-advice__text,
  body.woocommerce-account .ev-acc-advice__content {
    grid-column: 1 !important;
    padding: 28px !important;
    background: linear-gradient(90deg, rgba(10,31,61,.88), rgba(10,31,61,.55)) !important;
  }

  body.woocommerce-account .ev-acc-advice .ev-acc-advice__media,
  body.woocommerce-account .ev-acc-advice .ev-acc-advice__image,
  body.woocommerce-account .ev-acc-advice > img {
    position: absolute !important;
    inset: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }

  body.woocommerce-account .ev-acc-advice::before {
    display: none !important;
  }
}

@media (max-width: 520px) {
  body.woocommerce-account .ev-acc-help,
  body.woocommerce-account .ev-account-help,
  body.woocommerce-account .ev-account-sidebar-help,
  body.woocommerce-account .ev-acc-sidebar-help {
    grid-template-columns: 1fr !important;
    grid-template-areas:
      "title"
      "text"
      "image"
      "button" !important;
  }

  body.woocommerce-account .ev-acc-help img,
  body.woocommerce-account .ev-account-help img,
  body.woocommerce-account .ev-account-sidebar-help img,
  body.woocommerce-account .ev-acc-sidebar-help img {
    justify-self: center !important;
  }
}

/* =========================================================
   ECONOVAPE — FIX FINAL MON COMPTE
   Besoin d'aide image dans le bloc + Conseil image plein bloc.
========================================================= */

/* =========================================================
   1. BLOC SIDEBAR "BESOIN D'AIDE ?"
   L'image n'est plus une colonne : elle devient un visuel intégré
   dans le fond du bloc, derrière / sur la zone texte.
========================================================= */

body.woocommerce-account .ev-acc-help,
body.woocommerce-account .ev-account-help,
body.woocommerce-account .ev-account-sidebar-help,
body.woocommerce-account .ev-acc-sidebar-help {
  position: relative !important;
  overflow: hidden !important;
  display: block !important;
  min-height: 190px !important;
  padding: 22px 18px !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  box-shadow: 0 8px 22px rgba(10,31,61,.045) !important;
  box-sizing: border-box !important;
}

/* Image du bloc aide : placée dans le bloc, derrière le contenu, à droite/bas */
body.woocommerce-account .ev-acc-help img,
body.woocommerce-account .ev-account-help img,
body.woocommerce-account .ev-account-sidebar-help img,
body.woocommerce-account .ev-acc-sidebar-help img,
body.woocommerce-account .ev-acc-help__image,
body.woocommerce-account .ev-account-help__image,
body.woocommerce-account .ev-acc-help__media,
body.woocommerce-account .ev-account-help__media {
  position: absolute !important;
  right: 8px !important;
  bottom: 6px !important;
  width: 118px !important;
  height: 132px !important;
  max-width: 118px !important;
  max-height: 132px !important;
  object-fit: contain !important;
  object-position: right bottom !important;
  margin: 0 !important;
  border-radius: 0 !important;
  z-index: 1 !important;
  pointer-events: none !important;
}

/* Si l'image est dans un conteneur */
body.woocommerce-account .ev-acc-help__image img,
body.woocommerce-account .ev-account-help__image img,
body.woocommerce-account .ev-acc-help__media img,
body.woocommerce-account .ev-account-help__media img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  object-position: right bottom !important;
}

/* Texte au-dessus de l'image */
body.woocommerce-account .ev-acc-help h3,
body.woocommerce-account .ev-account-help h3,
body.woocommerce-account .ev-account-sidebar-help h3,
body.woocommerce-account .ev-acc-sidebar-help h3 {
  position: relative !important;
  z-index: 3 !important;
  max-width: 150px !important;
  margin: 0 0 14px !important;
  color: #0a1f3d !important;
  font-size: 18px !important;
  line-height: 1.22 !important;
  font-weight: 900 !important;
}

body.woocommerce-account .ev-acc-help p,
body.woocommerce-account .ev-account-help p,
body.woocommerce-account .ev-account-sidebar-help p,
body.woocommerce-account .ev-acc-sidebar-help p {
  position: relative !important;
  z-index: 3 !important;
  max-width: 145px !important;
  margin: 0 0 16px !important;
  color: #42526b !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

body.woocommerce-account .ev-acc-help a,
body.woocommerce-account .ev-account-help a,
body.woocommerce-account .ev-account-sidebar-help a,
body.woocommerce-account .ev-acc-sidebar-help a {
  position: relative !important;
  z-index: 4 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: 142px !important;
  min-height: 42px !important;
  padding: 0 14px !important;
  border-radius: 12px !important;
  border: 1px solid #12b8b0 !important;
  background: #ffffff !important;
  color: #0a9f98 !important;
  font-weight: 800 !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  text-decoration: none !important;
}

/* =========================================================
   2. BANDEAU "BESOIN D'UN CONSEIL PERSONNALISÉ ?"
   L'image remplit tout le bloc complet.
========================================================= */

body.woocommerce-account .ev-acc-advice {
  position: relative !important;
  overflow: hidden !important;
  display: block !important;
  height: 210px !important;
  min-height: 210px !important;
  max-height: 210px !important;
  padding: 0 !important;
  border-radius: 18px !important;
  background: #0a1f3d !important;
  box-sizing: border-box !important;
}

/* Image en fond plein bloc */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__media,
body.woocommerce-account .ev-acc-advice .ev-acc-advice__image,
body.woocommerce-account .ev-acc-advice figure,
body.woocommerce-account .ev-acc-advice picture {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  z-index: 0 !important;
}

body.woocommerce-account .ev-acc-advice .ev-acc-advice__media img,
body.woocommerce-account .ev-acc-advice .ev-acc-advice__image img,
body.woocommerce-account .ev-acc-advice figure img,
body.woocommerce-account .ev-acc-advice picture img,
body.woocommerce-account .ev-acc-advice > img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  z-index: 0 !important;
}

/* Voile seulement pour lisibilité du texte, pas de découpage en deux */
body.woocommerce-account .ev-acc-advice::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(8,26,51,.92) 0%, rgba(8,26,51,.68) 38%, rgba(8,26,51,.20) 72%, rgba(8,26,51,.04) 100%) !important;
  pointer-events: none !important;
}

/* Zone texte sur le fond image */
body.woocommerce-account .ev-acc-advice .ev-acc-advice__text,
body.woocommerce-account .ev-acc-advice__content {
  position: relative !important;
  z-index: 3 !important;
  width: 46% !important;
  max-width: 460px !important;
  min-width: 0 !important;
  height: 100% !important;
  padding: 30px 34px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  box-sizing: border-box !important;
}

body.woocommerce-account .ev-acc-advice h3 {
  position: relative !important;
  z-index: 3 !important;
  max-width: 100% !important;
  margin: 0 0 10px !important;
  color: #ffffff !important;
  font-size: 25px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body.woocommerce-account .ev-acc-advice p {
  position: relative !important;
  z-index: 3 !important;
  max-width: 100% !important;
  margin: 0 0 18px !important;
  color: rgba(255,255,255,.94) !important;
  font-size: 14.5px !important;
  line-height: 1.45 !important;
}

body.woocommerce-account .ev-acc-advice a,
body.woocommerce-account .ev-acc-advice .ev-btn {
  position: relative !important;
  z-index: 3 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 220px !important;
  min-height: 50px !important;
  padding: 0 24px !important;
  border-radius: 12px !important;
  background: #12b8b0 !important;
  color: #ffffff !important;
  border: 0 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

/* Sécurité : annule les anciennes grilles/colonnes */
body.woocommerce-account .ev-acc-advice {
  grid-template-columns: none !important;
  gap: 0 !important;
}

@media (max-width: 900px) {
  body.woocommerce-account .ev-acc-advice {
    height: auto !important;
    min-height: 220px !important;
    max-height: none !important;
  }

  body.woocommerce-account .ev-acc-advice .ev-acc-advice__text,
  body.woocommerce-account .ev-acc-advice__content {
    width: 100% !important;
    max-width: 100% !important;
    min-height: 220px !important;
  }
}

/* =========================================================
   PAGE CONTACT — BANDEAU FINAL STRUCTURE IMAGE <IMG>
   Correctif définitif : l'image du Customizer est une balise img,
   plus un background mélangé à un gradient inline.
========================================================= */

body .ev-contactpage__banner {
  position: relative !important;
  overflow: hidden !important;
  min-height: 150px !important;
  border-radius: 18px !important;
  padding: 32px 40px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 24px !important;
  background: linear-gradient(90deg, #0a1f3d 0%, #12b8b0 100%) !important;
  box-shadow: 0 14px 35px rgba(10,31,61,.12) !important;
}

body .ev-contactpage__banner.ev-contactpage__banner--has-image {
  background: #0a1f3d !important;
}

body .ev-contactpage__banner-bg {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  z-index: 0 !important;
  opacity: 1 !important;
  filter: none !important;
  border-radius: 18px !important;
}

/* On neutralise tous les pseudo-éléments qui pouvaient blanchir/cacher l'image */
body .ev-contactpage__banner::before,
body .ev-contactpage__banner::after,
body .ev-contactpage__banner-text::before,
body .ev-contactpage__banner-text::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
}

/* Aucun pavé gris devant le texte */
body .ev-contactpage__banner-text {
  position: relative !important;
  z-index: 2 !important;
  background: transparent !important;
  background-color: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  max-width: 560px !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}

body .ev-contactpage__banner-title,
body .ev-contactpage__banner-sub {
  position: relative !important;
  z-index: 2 !important;
  color: #ffffff !important;
  text-shadow: 0 2px 10px rgba(0,0,0,.65) !important;
}

body .ev-contactpage__banner-title {
  font-size: 22px !important;
  font-weight: 900 !important;
  margin: 0 0 6px !important;
}

body .ev-contactpage__banner-sub {
  margin: 0 !important;
  font-size: 14.5px !important;
}

body .ev-contactpage__banner-btn {
  position: relative !important;
  z-index: 2 !important;
  background: #ffffff !important;
  color: #0a1f3d !important;
  border: none !important;
  box-shadow: none !important;
  flex: 0 0 auto !important;
}

@media (max-width: 768px) {
  body .ev-contactpage__banner {
    flex-direction: column !important;
    align-items: flex-start !important;
    min-height: 180px !important;
    padding: 28px 24px !important;
  }

  body .ev-contactpage__banner-btn {
    width: 100% !important;
  }
}

/* =========================================================
   PANIER — HARD FIX VOUS AIMEREZ AUSSI 6 SUR UNE LIGNE
========================================================= */

/* Le conteneur panier doit permettre la pleine largeur */
body.woocommerce-cart .ev-cart {
  max-width: 1320px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Section recommandations pleine largeur */
body.woocommerce-cart .ev-cart-xsell.ev-cart-xsell--fullwidth,
body.woocommerce-cart section.ev-cart-xsell {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  max-width: 1320px !important;
  clear: both !important;
}

/* Si elle est encore enfermée dans une colonne, on la décale à la largeur du panier */
body.woocommerce-cart .ev-cart__main > .ev-cart-xsell {
  width: calc(100vw - 80px) !important;
  max-width: 1320px !important;
}

/* Grille 6 colonnes */
body.woocommerce-cart .ev-cart-xsell__grid,
body.woocommerce-cart .ev-cart-xsell ul.products,
body.woocommerce-cart .ev-cart-xsell ul.ev-products {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* Neutraliser les règles WooCommerce */
body.woocommerce-cart .ev-cart-xsell__grid > li,
body.woocommerce-cart .ev-cart-xsell ul.products > li.product,
body.woocommerce-cart .ev-cart-xsell ul.ev-products > li.product,
body.woocommerce-cart .ev-cart-xsell li.ev-product-card {
  float: none !important;
  clear: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  box-sizing: border-box !important;
}

/* 6 produits max */
body.woocommerce-cart .ev-cart-xsell__grid > li:nth-child(n+7) {
  display: none !important;
}

/* Responsive */
@media (max-width: 1280px) {
  body.woocommerce-cart .ev-cart__main > .ev-cart-xsell {
    width: 100% !important;
  }

  body.woocommerce-cart .ev-cart-xsell__grid,
  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px) {
  body.woocommerce-cart .ev-cart-xsell__grid,
  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 480px) {
  body.woocommerce-cart .ev-cart-xsell__grid,
  body.woocommerce-cart .ev-cart-xsell ul.products,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   PANIER — PAIEMENTS + RÉASSURANCE SOUS RÉCAPITULATIF
========================================================= */

body.woocommerce-cart .ev-cart__aside {
  display: flex !important;
  flex-direction: column !important;
  gap: 16px !important;
}

body.woocommerce-cart .ev-cart-payment-card {
  width: 100% !important;
  min-height: 112px !important;
  padding: 18px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 22px rgba(10,31,61,.045) !important;
  box-sizing: border-box !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.woocommerce-cart .ev-cart-payment-card img {
  display: block !important;
  max-width: 230px !important;
  width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
}

body.woocommerce-cart .ev-cart__aside .ev-cart-reass.ev-cart-reass--sidebar {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 22px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 22px rgba(10,31,61,.045) !important;
  box-sizing: border-box !important;
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 18px !important;
  grid-column: auto !important;
}

body.woocommerce-cart .ev-cart__aside .ev-cart-reass.ev-cart-reass--sidebar .ev-cart-reass__item {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 12px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

body.woocommerce-cart .ev-cart__aside .ev-cart-reass.ev-cart-reass--sidebar .ev-cart-reass__icon {
  flex: 0 0 24px !important;
  width: 24px !important;
  height: 24px !important;
  color: #12b8b0 !important;
  margin-top: 2px !important;
}

body.woocommerce-cart .ev-cart__aside .ev-cart-reass.ev-cart-reass--sidebar strong {
  display: block !important;
  color: #0a1f3d !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  line-height: 1.25 !important;
  margin: 0 0 3px !important;
}

body.woocommerce-cart .ev-cart__aside .ev-cart-reass.ev-cart-reass--sidebar span {
  display: block !important;
  color: #5a6b85 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

/* Ancien bloc réassurance pleine largeur : sécurité */
body.woocommerce-cart .ev-cart > .ev-cart-reass:not(.ev-cart-reass--sidebar) {
  display: none !important;
}

/* Correction fausse colonne WooCommerce dans la grille suggestions */
body.woocommerce-cart .ev-cart-xsell ul.products::before,
body.woocommerce-cart .ev-cart-xsell ul.products::after,
body.woocommerce-cart .ev-cart-xsell ul.ev-products::before,
body.woocommerce-cart .ev-cart-xsell ul.ev-products::after,
body.woocommerce-cart .ev-cart-xsell .ev-cart-xsell__grid::before,
body.woocommerce-cart .ev-cart-xsell .ev-cart-xsell__grid::after {
  content: none !important;
  display: none !important;
}

body.woocommerce-cart .ev-cart-xsell ul.products.ev-cart-xsell__grid,
body.woocommerce-cart .ev-cart-xsell ul.ev-products.ev-cart-xsell__grid,
body.woocommerce-cart .ev-cart-xsell .ev-cart-xsell__grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 18px !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

@media (max-width: 980px) {
  body.woocommerce-cart .ev-cart-payment-card {
    min-height: 90px !important;
  }

  body.woocommerce-cart .ev-cart-payment-card img {
    max-width: 190px !important;
  }
}


/* =========================================================
   PANIER — CODE PROMO INTÉGRÉ AU RÉCAPITULATIF
========================================================= */

/* La rangée sous le panier n'a plus que Livraison + Aide */
body.woocommerce-cart .ev-cart__row3 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

/* Si un ancien bloc code promo subsiste par cache, on le masque à gauche */
body.woocommerce-cart .ev-cart__row3 .ev-cart-coupon {
  display: none !important;
}

/* Bloc code promo dans le récapitulatif */
body.woocommerce-cart .ev-cart-summary__coupon {
  margin: 18px 0 18px !important;
  padding: 16px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  border-radius: 16px !important;
  background: #f8fbfd !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-title {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 0 12px !important;
  color: #0a1f3d !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-title svg {
  width: 18px !important;
  height: 18px !important;
  color: #12b8b0 !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-field {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: center !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-field input {
  width: 100% !important;
  min-width: 0 !important;
  height: 46px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(10,31,61,.12) !important;
  background: #ffffff !important;
  padding: 0 12px !important;
  font-size: 13px !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-field button {
  height: 46px !important;
  border-radius: 12px !important;
  padding: 0 16px !important;
  background: #0a1f3d !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-applied {
  margin: 12px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-applied li {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  padding: 8px 10px !important;
  border-radius: 10px !important;
  background: rgba(18,184,176,.08) !important;
  font-size: 12px !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-applied .ev-cart-coupon__code {
  color: #0a1f3d !important;
  font-weight: 900 !important;
}

body.woocommerce-cart .ev-cart-summary__coupon-applied .ev-cart-coupon__remove {
  color: #12b8b0 !important;
  font-weight: 800 !important;
}

@media (max-width: 760px) {
  body.woocommerce-cart .ev-cart__row3 {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .ev-cart-summary__coupon-field {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .ev-cart-summary__coupon-field button {
    width: 100% !important;
  }
}

/* =========================================================
   PANIER — ZOOM IMAGE BESOIN D'AIDE SANS AGRANDIR LE BLOC
   Fallback CSS ; un JS prioritaire dans functions.php applique aussi ce réglage.
========================================================= */

body.woocommerce-cart .ev-cart-help.ev-cart-help--has-image .ev-cart-help__media {
  background-size: 145% auto !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* =========================================================
   ECONOVAPE — v1.4.9 PAGE VALIDATION DE COMMANDE (CHECKOUT)
   ========================================================= */
.ev-checkout { max-width:1240px; margin:0 auto; padding:24px 16px 48px; color:#0a1f3d; }

/* Steps */
.ev-checkout .ev-steps { display:flex; gap:8px; align-items:center; justify-content:center;
  list-style:none; padding:8px 0 22px; margin:0; flex-wrap:wrap; }
.ev-checkout .ev-steps li { display:flex; align-items:center; gap:8px; padding:6px 14px;
  font-size:14px; color:#6b7a90; font-weight:500; position:relative; }
.ev-checkout .ev-steps li + li::before { content:""; width:32px; height:1px;
  background:#d8dee8; margin-right:6px; display:inline-block; }
.ev-checkout .ev-steps__num { width:24px; height:24px; border-radius:50%;
  background:#eef1f6; color:#6b7a90; display:inline-flex; align-items:center;
  justify-content:center; font-size:12px; font-weight:700; }
.ev-checkout .ev-steps li.is-active { color:#12b8b0; font-weight:700; }
.ev-checkout .ev-steps li.is-active .ev-steps__num { background:#12b8b0; color:#fff; }

/* Header */
.ev-checkout__header { margin:6px 0 22px; }
.ev-checkout__title { font-size:32px; line-height:1.15; margin:0 0 6px;
  font-style:italic; font-weight:800; color:#0a1f3d; letter-spacing:-.5px; }
.ev-checkout__subtitle { margin:0; color:#6b7a90; font-size:15px; }

/* Layout */
.ev-checkout__grid { display:grid; grid-template-columns:1fr; gap:24px; align-items:start; }
@media (min-width: 980px) {
  .ev-checkout__grid { grid-template-columns:minmax(0,1.55fr) minmax(320px,1fr); gap:28px; }
  .ev-checkout__aside { position:sticky; top:24px; }
}

/* Cards */
.ev-checkout__card { background:#fff; border:1px solid #e6ebf2; border-radius:14px;
  padding:20px 22px; margin-bottom:18px; box-shadow:0 2px 6px rgba(10,31,61,.04); }
.ev-checkout__card-head { display:flex; justify-content:space-between; align-items:center;
  margin-bottom:14px; }
.ev-checkout__card-head h2 { margin:0; font-size:16px; color:#0a1f3d; font-weight:700; }

.ev-checkout__addresses { display:grid; grid-template-columns:1fr; gap:18px; }
@media (min-width: 720px) { .ev-checkout__addresses { grid-template-columns:1fr 1fr; } }
.ev-checkout__address h3 { font-size:14px; text-transform:uppercase; letter-spacing:.4px;
  color:#0a1f3d; margin:0 0 10px; }

/* Force WC inputs to clean style */
.ev-checkout .form-row input.input-text,
.ev-checkout .form-row textarea,
.ev-checkout .form-row .select2-selection--single,
.ev-checkout .form-row select { width:100%; min-height:42px; padding:10px 12px;
  border:1px solid #d8dee8; border-radius:10px; background:#fff; font-size:14px; }
.ev-checkout .form-row label { font-size:13px; color:#3b4a63; font-weight:500; }
.ev-checkout .form-row { margin-bottom:12px; }

/* Order review (shipping / payment) — keep WC behaviour, restyle visually */
.ev-checkout #order_review { display:flex; flex-direction:column; gap:14px; }
.ev-checkout .shop_table { width:100%; border-collapse:separate; border-spacing:0; }
.ev-checkout .shop_table th, .ev-checkout .shop_table td {
  padding:10px 4px; font-size:14px; border-bottom:1px solid #eef1f6; text-align:left; }
.ev-checkout .shop_table tfoot th { font-weight:600; color:#0a1f3d; }
.ev-checkout .order-total .amount { color:#12b8b0; font-size:20px; font-weight:800; }

.ev-checkout #payment { background:transparent; border:0; padding:0; }
.ev-checkout #payment ul.payment_methods { list-style:none; padding:0; margin:0;
  display:flex; flex-direction:column; gap:10px; }
.ev-checkout #payment ul.payment_methods li { background:#fff; border:1px solid #e6ebf2;
  border-radius:12px; padding:12px 14px; transition:border-color .15s, box-shadow .15s; }
.ev-checkout #payment ul.payment_methods li:has(input:checked),
.ev-checkout #payment ul.payment_methods li.ev-active {
  border-color:#12b8b0; box-shadow:0 0 0 1px #12b8b0 inset; }
.ev-checkout #payment ul.payment_methods label { font-weight:600; color:#0a1f3d;
  display:inline-flex; align-items:center; gap:8px; }
.ev-checkout #payment .payment_box { background:#f7f9fc; border-radius:10px;
  padding:10px 12px; margin-top:8px; font-size:13px; color:#3b4a63; }

/* Shipping methods radios */
.ev-checkout #shipping_method { list-style:none; padding:0; margin:0;
  display:flex; flex-direction:column; gap:10px; }
.ev-checkout #shipping_method li { background:#fff; border:1px solid #e6ebf2;
  border-radius:12px; padding:12px 14px; }
.ev-checkout #shipping_method li:has(input:checked) {
  border-color:#12b8b0; box-shadow:0 0 0 1px #12b8b0 inset; }

/* Place order button — turquoise, full width, lock icon */
.ev-checkout #place_order,
.ev-checkout button#place_order {
  width:100%; background:#12b8b0 !important; color:#fff !important;
  border:0 !important; border-radius:12px !important; padding:16px 20px !important;
  font-size:16px !important; font-weight:700 !important; letter-spacing:.2px;
  display:inline-flex; align-items:center; justify-content:center; gap:10px;
  box-shadow:0 8px 22px rgba(18,184,176,.28); cursor:pointer;
  transition:transform .12s, box-shadow .15s, background .15s; }
.ev-checkout #place_order:hover { background:#0fa39c !important;
  transform:translateY(-1px); box-shadow:0 10px 26px rgba(18,184,176,.34); }
.ev-checkout #place_order::before { content:"";
  width:18px; height:18px; flex:0 0 18px;
  background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'><rect x='4' y='11' width='16' height='10' rx='2'/><path d='M8 11V7a4 4 0 0 1 8 0v4'/></svg>") center/contain no-repeat; }

.ev-checkout .woocommerce-terms-and-conditions-wrapper,
.ev-checkout .woocommerce-privacy-policy-text { font-size:12px; color:#6b7a90;
  margin-top:10px; }

/* Payments image under button */
.ev-checkout__payments { margin-top:14px; text-align:center; }
.ev-checkout__payments img { max-width:240px; height:auto; opacity:.9; }

/* Help block */
.ev-checkout__help { background:#fff; border:1px solid #e6ebf2; border-radius:14px;
  padding:18px; display:flex; gap:14px; align-items:flex-start;
  box-shadow:0 2px 6px rgba(10,31,61,.04); margin-top:14px; }
.ev-checkout__help-img { flex:0 0 96px; width:96px; height:96px; border-radius:12px;
  overflow:hidden; background:#f3f5f9; }
.ev-checkout__help-img img { width:100%; height:100%; object-fit:cover; display:block; }
.ev-checkout__help-body { flex:1; min-width:0; }
.ev-checkout__help-title { margin:0 0 4px; font-size:16px; color:#0a1f3d; font-weight:700; }
.ev-checkout__help-text { margin:0 0 10px; font-size:14px; color:#3b4a63; }
.ev-checkout__help-adv { list-style:none; padding:0; margin:0 0 12px;
  display:flex; flex-direction:column; gap:6px; font-size:13px; color:#3b4a63; }
.ev-checkout__help-adv li { display:flex; align-items:center; gap:8px; }
.ev-checkout__help-tick { color:#12b8b0; display:inline-flex; }
.ev-checkout__help-tick svg { width:18px; height:18px; }
.ev-checkout__help-btn { display:inline-block; padding:9px 16px; border-radius:10px;
  border:1px solid #d8dee8; color:#0a1f3d; font-weight:600; font-size:14px;
  text-decoration:none; transition:border-color .15s, color .15s; }
.ev-checkout__help-btn:hover { border-color:#12b8b0; color:#12b8b0; }

/* Reassurance band */
.ev-checkout__reass { display:grid; grid-template-columns:1fr; gap:12px;
  background:#fff; border:1px solid #e6ebf2; border-radius:14px; padding:18px 20px;
  margin-top:24px; box-shadow:0 2px 6px rgba(10,31,61,.04); }
@media (min-width:720px) { .ev-checkout__reass { grid-template-columns:repeat(4,1fr); } }
.ev-checkout__reass-item { display:flex; gap:12px; align-items:center; min-width:0; }
.ev-checkout__reass-icon { flex:0 0 36px; width:36px; height:36px; border-radius:50%;
  background:#eef9f8; color:#12b8b0; display:inline-flex; align-items:center;
  justify-content:center; }
.ev-checkout__reass-item strong { display:block; font-size:14px; color:#0a1f3d; }
.ev-checkout__reass-item span { display:block; font-size:12px; color:#6b7a90; }

/* Mobile polish */
@media (max-width: 720px) {
  .ev-checkout { padding:16px 12px 32px; }
  .ev-checkout__title { font-size:24px; }
  .ev-checkout__card { padding:16px; }
  .ev-checkout__help { flex-direction:column; align-items:stretch; }
  .ev-checkout__help-img { width:100%; height:140px; flex-basis:auto; }
  .ev-checkout .ev-steps li { padding:4px 8px; font-size:13px; }
  .ev-checkout .ev-steps li + li::before { width:18px; }
}


/* =========================================================
   v1.4.9.1 — PAGE VALIDATION DE COMMANDE PREMIUM REDESIGN
========================================================= */

body.woocommerce-checkout .ev-page-head,
body.woocommerce-checkout .ev-page-header,
body.woocommerce-checkout header.ev-page-head,
body.woocommerce-checkout header.ev-page-header,
body.woocommerce-checkout .entry-title {
  display: none !important;
}

body.woocommerce-checkout .ev-checkout {
  max-width: 1320px !important;
  width: calc(100% - 48px) !important;
  margin: 0 auto !important;
  padding: 30px 0 46px !important;
  color: #0a1f3d !important;
}

body.woocommerce-checkout .ev-checkout * {
  box-sizing: border-box !important;
}

body.woocommerce-checkout .ev-steps {
  margin: 0 auto 34px !important;
  max-width: 860px !important;
}

body.woocommerce-checkout .ev-steps ol {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  align-items: center !important;
}

body.woocommerce-checkout .ev-steps li {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  font-weight: 800 !important;
  color: #5a6b85 !important;
  font-size: 15px !important;
}

body.woocommerce-checkout .ev-steps li:not(:last-child)::after {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  left: calc(50% + 62px) !important;
  width: calc(100% - 80px) !important;
  height: 2px !important;
  background: #dbe3ee !important;
  transform: translateY(-50%) !important;
}

body.woocommerce-checkout .ev-steps__icon {
  width: 42px !important;
  height: 42px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ffffff !important;
  border: 1px solid rgba(10,31,61,.12) !important;
  color: #0a1f3d !important;
  box-shadow: 0 6px 18px rgba(10,31,61,.06) !important;
  position: relative !important;
  z-index: 2 !important;
}

body.woocommerce-checkout .ev-steps__icon svg {
  width: 21px !important;
  height: 21px !important;
}

body.woocommerce-checkout .ev-steps li.is-active,
body.woocommerce-checkout .ev-steps li.is-done {
  color: #0a1f3d !important;
}

body.woocommerce-checkout .ev-steps li.is-active .ev-steps__icon {
  background: #12b8b0 !important;
  color: #ffffff !important;
  border-color: #12b8b0 !important;
}

body.woocommerce-checkout .ev-checkout__header {
  margin-bottom: 24px !important;
}

body.woocommerce-checkout .ev-checkout__title {
  margin: 0 0 8px !important;
  font-size: clamp(36px, 4.3vw, 54px) !important;
  line-height: 1.03 !important;
  font-weight: 950 !important;
  letter-spacing: -0.035em !important;
  color: #071b36 !important;
}

body.woocommerce-checkout .ev-checkout__subtitle {
  margin: 0 !important;
  color: #4f6078 !important;
  font-size: 18px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout .ev-checkout__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.56fr) 430px !important;
  gap: 36px !important;
  align-items: start !important;
}

body.woocommerce-checkout .ev-checkout__main {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  min-width: 0 !important;
}

body.woocommerce-checkout .ev-checkout__aside {
  position: sticky !important;
  top: 18px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
  min-width: 0 !important;
}

body.woocommerce-checkout .ev-checkout__card,
body.woocommerce-checkout .ev-checkout__help,
body.woocommerce-checkout .ev-checkout__reass {
  background: #ffffff !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  border-radius: 20px !important;
  box-shadow: 0 12px 34px rgba(10,31,61,.055) !important;
}

body.woocommerce-checkout .ev-checkout__card {
  padding: 26px 28px !important;
}

body.woocommerce-checkout .ev-checkout__card-head {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin-bottom: 20px !important;
}

body.woocommerce-checkout .ev-checkout__card-head h2 {
  margin: 0 !important;
  color: #071b36 !important;
  font-size: 22px !important;
  line-height: 1.18 !important;
  font-weight: 900 !important;
  letter-spacing: -0.015em !important;
}

body.woocommerce-checkout .ev-checkout__step-num {
  width: 32px !important;
  height: 32px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #0a1f3d !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  flex: 0 0 auto !important;
}

/* Champs WooCommerce : plus grands et premium */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px 18px !important;
}

body.woocommerce-checkout .form-row {
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}

body.woocommerce-checkout .form-row-wide,
body.woocommerce-checkout #billing_address_1_field,
body.woocommerce-checkout #billing_address_2_field,
body.woocommerce-checkout #shipping_address_1_field,
body.woocommerce-checkout #shipping_address_2_field,
body.woocommerce-checkout #order_comments_field,
body.woocommerce-checkout .woocommerce-additional-fields {
  grid-column: 1 / -1 !important;
}

body.woocommerce-checkout label {
  color: #0a1f3d !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  margin-bottom: 7px !important;
  display: block !important;
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select,
body.woocommerce-checkout .select2-container .select2-selection--single {
  width: 100% !important;
  min-height: 48px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: #0a1f3d !important;
  padding: 0 14px !important;
  font-size: 15px !important;
  box-shadow: none !important;
}

body.woocommerce-checkout textarea {
  min-height: 92px !important;
  padding-top: 12px !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__rendered {
  line-height: 48px !important;
  padding-left: 0 !important;
}

body.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow {
  height: 48px !important;
}

/* Cartes livraison/paiement explicatives */
body.woocommerce-checkout .ev-checkout__muted,
body.woocommerce-checkout .ev-checkout__payment-note {
  margin: 0 !important;
  padding: 18px 20px !important;
  border: 1px dashed rgba(18,184,176,.45) !important;
  border-radius: 14px !important;
  background: rgba(18,184,176,.06) !important;
  color: #40526b !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout .ev-checkout__secure {
  margin-left: auto !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  color: #5a6b85 !important;
  font-size: 13px !important;
  font-weight: 800 !important;
}

/* Récapitulatif */
body.woocommerce-checkout .ev-checkout__summary {
  padding: 24px !important;
}

body.woocommerce-checkout .ev-checkout__summary .ev-checkout__card-head {
  margin-bottom: 16px !important;
}

body.woocommerce-checkout #order_review {
  font-size: 15px !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  border: 0 !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
  border: 0 !important;
  border-bottom: 1px solid rgba(10,31,61,.08) !important;
  padding: 13px 0 !important;
  vertical-align: middle !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table thead th {
  color: #5a6b85 !important;
  font-size: 12px !important;
  text-transform: uppercase !important;
  letter-spacing: .04em !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name {
  color: #0a1f3d !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-total,
body.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
  text-align: right !important;
  font-weight: 850 !important;
  color: #0a1f3d !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td {
  border-bottom: 0 !important;
  padding-top: 20px !important;
  font-size: 18px !important;
}

body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total strong,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .woocommerce-Price-amount {
  color: #12b8b0 !important;
  font-size: 28px !important;
  font-weight: 950 !important;
}

/* Livraison dans review */
body.woocommerce-checkout #shipping_method {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: grid !important;
  gap: 10px !important;
}

body.woocommerce-checkout #shipping_method li {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 13px 14px !important;
  border: 1px solid rgba(10,31,61,.12) !important;
  border-radius: 14px !important;
  background: #fff !important;
}

body.woocommerce-checkout #shipping_method li:has(input:checked) {
  border-color: #12b8b0 !important;
  background: rgba(18,184,176,.06) !important;
}

/* Paiements WooCommerce */
body.woocommerce-checkout #payment {
  margin-top: 18px !important;
  background: transparent !important;
  border-radius: 0 !important;
}

body.woocommerce-checkout #payment ul.payment_methods {
  margin: 0 0 16px !important;
  padding: 0 !important;
  border: 0 !important;
  display: grid !important;
  gap: 10px !important;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  list-style: none !important;
  padding: 14px 14px !important;
  border: 1px solid rgba(10,31,61,.12) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
}

body.woocommerce-checkout #payment ul.payment_methods li:has(input:checked) {
  border-color: #12b8b0 !important;
  box-shadow: 0 0 0 1px rgba(18,184,176,.25) inset !important;
  background: rgba(18,184,176,.04) !important;
}

body.woocommerce-checkout #payment ul.payment_methods label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  font-size: 15px !important;
}

body.woocommerce-checkout #payment div.payment_box {
  margin: 14px 0 0 !important;
  padding: 16px !important;
  border-radius: 12px !important;
  background: #f6f9fc !important;
  color: #40526b !important;
  font-size: 13px !important;
}

body.woocommerce-checkout #payment div.payment_box::before {
  display: none !important;
}

body.woocommerce-checkout .place-order {
  padding: 0 !important;
  margin: 0 !important;
}

body.woocommerce-checkout #place_order,
body.woocommerce-checkout button#place_order,
body.woocommerce-checkout .woocommerce #payment #place_order {
  width: 100% !important;
  min-height: 56px !important;
  border-radius: 14px !important;
  border: none !important;
  background: #12b8b0 !important;
  color: #ffffff !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  box-shadow: 0 16px 32px rgba(18,184,176,.24) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body.woocommerce-checkout #place_order:hover {
  transform: translateY(-1px) !important;
}

/* Paiements image */
body.woocommerce-checkout .ev-checkout__payments {
  margin-top: 16px !important;
  padding: 16px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  display: flex !important;
  justify-content: center !important;
}

body.woocommerce-checkout .ev-checkout__payments img {
  max-width: 220px !important;
  width: 100% !important;
  height: auto !important;
}

/* Bloc aide */
body.woocommerce-checkout .ev-checkout__help {
  display: grid !important;
  grid-template-columns: 145px minmax(0, 1fr) !important;
  gap: 18px !important;
  padding: 18px !important;
  overflow: hidden !important;
  align-items: center !important;
}

body.woocommerce-checkout .ev-checkout__help-img {
  width: 145px !important;
  height: 170px !important;
  border-radius: 18px !important;
  overflow: hidden !important;
  background: #eaf8f7 !important;
}

body.woocommerce-checkout .ev-checkout__help-img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

body.woocommerce-checkout .ev-checkout__help-title {
  margin: 0 0 6px !important;
  font-size: 21px !important;
  color: #071b36 !important;
  font-weight: 950 !important;
}

body.woocommerce-checkout .ev-checkout__help-text {
  margin: 0 0 12px !important;
  color: #40526b !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout .ev-checkout__help-adv {
  margin: 0 0 14px !important;
  padding: 0 !important;
  list-style: none !important;
  display: grid !important;
  gap: 8px !important;
  color: #40526b !important;
  font-size: 13px !important;
}

body.woocommerce-checkout .ev-checkout__help-adv li {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
}

body.woocommerce-checkout .ev-checkout__help-tick {
  color: #12b8b0 !important;
  display: inline-flex !important;
}

body.woocommerce-checkout .ev-checkout__help-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(10,31,61,.20) !important;
  color: #0a1f3d !important;
  background: #ffffff !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

/* Réassurance bas */
body.woocommerce-checkout .ev-checkout__reass {
  margin-top: 28px !important;
  padding: 18px 22px !important;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

body.woocommerce-checkout .ev-checkout__reass-item {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-width: 0 !important;
}

body.woocommerce-checkout .ev-checkout__reass-icon {
  width: 38px !important;
  height: 38px !important;
  border-radius: 12px !important;
  background: #f2fbfa !important;
  color: #0a1f3d !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
}

body.woocommerce-checkout .ev-checkout__reass-icon svg {
  width: 21px !important;
  height: 21px !important;
}

body.woocommerce-checkout .ev-checkout__reass-item strong {
  display: block !important;
  color: #0a1f3d !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  margin-bottom: 2px !important;
}

body.woocommerce-checkout .ev-checkout__reass-item span {
  display: block !important;
  color: #5a6b85 !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
}

/* Notices */
body.woocommerce-checkout .woocommerce-NoticeGroup,
body.woocommerce-checkout .woocommerce-notices-wrapper {
  margin-bottom: 18px !important;
}

body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-message,
body.woocommerce-checkout .woocommerce-error {
  border-radius: 14px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  background: #ffffff !important;
  box-shadow: 0 8px 22px rgba(10,31,61,.05) !important;
  color: #0a1f3d !important;
}

/* Responsive */
@media (max-width: 1180px) {
  body.woocommerce-checkout .ev-checkout__grid {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-checkout .ev-checkout__aside {
    position: static !important;
  }
}

@media (max-width: 760px) {
  body.woocommerce-checkout .ev-checkout {
    width: calc(100% - 28px) !important;
    padding-top: 18px !important;
  }

  body.woocommerce-checkout .ev-steps ol {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.woocommerce-checkout .ev-steps li:not(:last-child)::after {
    display: none !important;
  }

  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-checkout .ev-checkout__card {
    padding: 20px !important;
  }

  body.woocommerce-checkout .ev-checkout__help {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-checkout .ev-checkout__help-img {
    width: 100% !important;
    height: 190px !important;
  }

  body.woocommerce-checkout .ev-checkout__reass {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   v1.4.9.2 — CHECKOUT : VRAIS MODES LIVRAISON / PAIEMENT
========================================================= */

/* Retirer le fil d'étapes checkout */
body.woocommerce-checkout .ev-steps {
  display: none !important;
}

/* Page plus compacte en haut */
body.woocommerce-checkout .ev-checkout {
  padding-top: 14px !important;
}

body.woocommerce-checkout .ev-checkout__header {
  margin-bottom: 22px !important;
}

/* Cartes moins hautes et plus lisibles */
body.woocommerce-checkout .ev-checkout__main {
  gap: 16px !important;
}

body.woocommerce-checkout .ev-checkout__card {
  padding: 22px 26px !important;
  border-radius: 18px !important;
}

body.woocommerce-checkout .ev-checkout__card-head {
  margin-bottom: 16px !important;
  align-items: center !important;
}

body.woocommerce-checkout .ev-checkout__card-head h2 {
  font-size: 22px !important;
}

/* Adresse : champs plus compacts */
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
  gap: 12px 16px !important;
}

body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select,
body.woocommerce-checkout .select2-container .select2-selection--single {
  min-height: 44px !important;
  font-size: 14px !important;
}

body.woocommerce-checkout textarea {
  min-height: 78px !important;
}

/* Le bloc "Adresse de livraison différente" ne doit pas ressembler à "Informations complémentaires" */
body.woocommerce-checkout .ev-checkout__address-card--shipping .woocommerce-additional-fields {
  display: none !important;
}

body.woocommerce-checkout .ev-checkout__address-card--shipping #ship-to-different-address {
  margin: 0 !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(18,184,176,.35) !important;
  border-radius: 14px !important;
  background: rgba(18,184,176,.06) !important;
}

body.woocommerce-checkout .ev-checkout__address-card--shipping #ship-to-different-address label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
  cursor: pointer !important;
}

body.woocommerce-checkout .ev-checkout__address-card--shipping .shipping_address {
  margin-top: 16px !important;
}

/* Masquer les textes placeholders une fois Woo déplacé */
body.woocommerce-checkout .ev-checkout__shipping-slot.has-native .ev-checkout__muted,
body.woocommerce-checkout .ev-checkout__payment-slot.has-native .ev-checkout__muted {
  display: none !important;
}

/* Vrais modes de livraison WooCommerce dans la carte livraison */
body.woocommerce-checkout .ev-checkout__shipping-slot #shipping_method,
body.woocommerce-checkout .ev-checkout__shipping-slot ul#shipping_method {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-checkout .ev-checkout__shipping-slot #shipping_method li {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(10,31,61,.12) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  color: #0a1f3d !important;
}

body.woocommerce-checkout .ev-checkout__shipping-slot #shipping_method li:has(input:checked) {
  border-color: #12b8b0 !important;
  background: rgba(18,184,176,.07) !important;
  box-shadow: 0 0 0 1px rgba(18,184,176,.18) inset !important;
}

body.woocommerce-checkout .ev-checkout__shipping-slot #shipping_method input {
  flex: 0 0 auto !important;
}

body.woocommerce-checkout .ev-checkout__shipping-slot #shipping_method label {
  margin: 0 !important;
  font-size: 15px !important;
  font-weight: 850 !important;
  color: #0a1f3d !important;
  cursor: pointer !important;
}

/* Éviter le doublon visuel dans le tableau récap lorsque les méthodes sont déplacées */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr.woocommerce-shipping-totals.shipping td #shipping_method {
  display: none !important;
}

/* Vrais moyens de paiement WooCommerce dans la carte paiement */
body.woocommerce-checkout .ev-checkout__payment-slot #payment {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}

body.woocommerce-checkout .ev-checkout__payment-slot #payment ul.payment_methods,
body.woocommerce-checkout .ev-checkout__payment-slot ul.payment_methods {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  display: grid !important;
  gap: 12px !important;
}

body.woocommerce-checkout .ev-checkout__payment-slot #payment ul.payment_methods li,
body.woocommerce-checkout .ev-checkout__payment-slot ul.payment_methods li {
  list-style: none !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(10,31,61,.12) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
}

body.woocommerce-checkout .ev-checkout__payment-slot ul.payment_methods li:has(input:checked) {
  border-color: #12b8b0 !important;
  background: rgba(18,184,176,.06) !important;
  box-shadow: 0 0 0 1px rgba(18,184,176,.18) inset !important;
}

body.woocommerce-checkout .ev-checkout__payment-slot ul.payment_methods label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  margin: 0 !important;
  color: #0a1f3d !important;
  font-size: 15px !important;
  font-weight: 900 !important;
}

body.woocommerce-checkout .ev-checkout__payment-slot ul.payment_methods img {
  max-height: 28px !important;
  width: auto !important;
  margin-left: 8px !important;
}

body.woocommerce-checkout .ev-checkout__payment-slot div.payment_box {
  margin: 14px 0 0 !important;
  padding: 16px !important;
  border-radius: 12px !important;
  background: #f6f9fc !important;
  color: #40526b !important;
}

/* Le bouton reste utilisable dans le bloc payment déplacé */
body.woocommerce-checkout .ev-checkout__payment-slot .place-order {
  margin-top: 18px !important;
}

/* Si le plugin laisse un conteneur paiement vide dans le récap, on l'évite */
body.woocommerce-checkout .ev-checkout__summary #payment:empty {
  display: none !important;
}

/* Récapitulatif à droite plus stable */
body.woocommerce-checkout .ev-checkout__aside {
  top: 16px !important;
}

body.woocommerce-checkout .ev-checkout__summary {
  padding: 24px !important;
}

/* Responsive */
@media (max-width: 760px) {
  body.woocommerce-checkout .ev-checkout__card {
    padding: 18px !important;
  }

  body.woocommerce-checkout .ev-checkout__card-head h2 {
    font-size: 19px !important;
  }
}


/* =========================================================
   v1.4.9.3 — CHECKOUT : FACTURATION DIFFÉRENTE DANS BLOC 1
========================================================= */

/* Supprimer définitivement l'ancienne carte vide si elle existe encore en cache */
body.woocommerce-checkout .ev-checkout__address-card--shipping {
  display: none !important;
}

/* Rendre le bloc adresse plus compact */
body.woocommerce-checkout .ev-checkout__address-card {
  padding: 20px 26px !important;
}

body.woocommerce-checkout .ev-checkout__address-card .ev-checkout__card-head {
  margin-bottom: 14px !important;
}

/* Champs adresse plus compacts */
body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 14px !important;
  align-items: end !important;
}

body.woocommerce-checkout .ev-checkout__address-card .form-row {
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout .ev-checkout__address-card input.input-text,
body.woocommerce-checkout .ev-checkout__address-card select,
body.woocommerce-checkout .ev-checkout__address-card .select2-container .select2-selection--single {
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 12px !important;
  font-size: 14px !important;
  border-radius: 10px !important;
}

body.woocommerce-checkout .ev-checkout__address-card label {
  margin-bottom: 5px !important;
  font-size: 12.5px !important;
  line-height: 1.2 !important;
}

/* Éviter les champs inutilement pleine largeur */
body.woocommerce-checkout .ev-checkout__address-card #billing_country_field,
body.woocommerce-checkout .ev-checkout__address-card #billing_address_1_field,
body.woocommerce-checkout .ev-checkout__address-card #billing_address_2_field,
body.woocommerce-checkout .ev-checkout__address-card #billing_email_field,
body.woocommerce-checkout .ev-checkout__address-card #billing_phone_field,
body.woocommerce-checkout .ev-checkout__address-card #billing_postcode_field,
body.woocommerce-checkout .ev-checkout__address-card #billing_city_field {
  grid-column: auto !important;
}

/* Titre WooCommerce plus discret */
body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields h3 {
  margin: 0 0 12px !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
}

/* Bouton intégré dans le bloc 1 */
body.woocommerce-checkout .ev-checkout__billing-different {
  grid-column: 1 / -1 !important;
  margin-top: 16px !important;
}

body.woocommerce-checkout .ev-checkout__billing-toggle {
  width: 100% !important;
  min-height: 48px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(18,184,176,.38) !important;
  border-radius: 14px !important;
  background: rgba(18,184,176,.06) !important;
  color: #0a1f3d !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  text-align: left !important;
}

body.woocommerce-checkout .ev-checkout__billing-toggle:hover {
  background: rgba(18,184,176,.10) !important;
}

body.woocommerce-checkout .ev-checkout__billing-toggle-icon {
  width: 24px !important;
  height: 24px !important;
  border-radius: 999px !important;
  background: #12b8b0 !important;
  color: #ffffff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  font-weight: 900 !important;
  flex: 0 0 auto !important;
}

/* Panneau ouvert */
body.woocommerce-checkout .ev-checkout__billing-panel {
  margin-top: 14px !important;
  padding: 16px !important;
  border: 1px solid rgba(10,31,61,.10) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
}

body.woocommerce-checkout .ev-checkout__billing-help {
  margin: 0 0 12px !important;
  color: #5a6b85 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* Dans le panneau, on affiche les champs WooCommerce proprement */
body.woocommerce-checkout .ev-checkout__billing-panel .shipping_address {
  margin: 0 !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-shipping-fields__field-wrapper,
body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-additional-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 14px !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel .form-row-wide,
body.woocommerce-checkout .ev-checkout__billing-panel #shipping_address_1_field,
body.woocommerce-checkout .ev-checkout__billing-panel #shipping_address_2_field,
body.woocommerce-checkout .ev-checkout__billing-panel #order_comments_field {
  grid-column: 1 / -1 !important;
}

/* Masquer le checkbox Woo natif, car notre bouton le pilote */
body.woocommerce-checkout .ev-checkout__billing-panel #ship-to-different-address {
  display: none !important;
}

/* Garder les notes de commande discrètes si elles apparaissent dans ce panneau */
body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-additional-fields h3 {
  font-size: 15px !important;
  margin: 14px 0 10px !important;
}

@media (max-width: 768px) {
  body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields__field-wrapper,
  body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-additional-fields__field-wrapper {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   v1.4.9.4 — CHECKOUT : NOTES DE COMMANDE SÉPARÉES
========================================================= */

/* Notes de commande : bloc séparé */
body.woocommerce-checkout .ev-checkout__notes-card {
  padding: 20px 26px !important;
}

body.woocommerce-checkout .ev-checkout__notes-card .ev-checkout__card-head {
  margin-bottom: 14px !important;
}

body.woocommerce-checkout .ev-checkout__notes-card .ev-checkout__card-head h2 {
  font-size: 22px !important;
}

body.woocommerce-checkout .ev-checkout__notes-fields {
  display: block !important;
}

body.woocommerce-checkout .ev-checkout__notes-fields .form-row {
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout .ev-checkout__notes-fields textarea {
  min-height: 96px !important;
  height: 96px !important;
  resize: vertical !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  padding: 12px 14px !important;
}

/* Le champ Notes ne doit plus apparaître dans le panneau adresse différente */
body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-additional-fields,
body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-additional-fields__field-wrapper,
body.woocommerce-checkout .ev-checkout__billing-panel #order_comments_field {
  display: none !important;
}

/* Le panneau du bouton doit être réservé à l'adresse différente native WooCommerce */
body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-shipping-fields {
  margin: 0 !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-shipping-fields h3 {
  margin: 0 0 12px !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
}

/* Champs adresse différente plus compacts */
body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-shipping-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 14px !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel .form-row {
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel input.input-text,
body.woocommerce-checkout .ev-checkout__billing-panel select,
body.woocommerce-checkout .ev-checkout__billing-panel .select2-container .select2-selection--single {
  min-height: 40px !important;
  height: 40px !important;
  font-size: 14px !important;
  border-radius: 10px !important;
}

@media (max-width: 768px) {
  body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-shipping-fields__field-wrapper {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   v1.4.9.5 — CHECKOUT : LIVRAISON + FACTURATION DIFFÉRENTE
========================================================= */

/* Titre interne WooCommerce : le bloc principal est utilisé comme adresse de livraison */
body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields > h3 {
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 0 12px !important;
}

body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields > h3::after {
  content: "DÉTAILS DE LIVRAISON" !important;
  display: block !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
}

/* Le bouton intégré doit ouvrir de vrais champs */
body.woocommerce-checkout .ev-checkout__billing-panel[hidden] {
  display: none !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel:not([hidden]) {
  display: block !important;
}

/* Quand le panneau est ouvert, forcer l'affichage des champs natifs WooCommerce */
body.woocommerce-checkout .ev-checkout__billing-panel:not([hidden]) .shipping_address,
body.woocommerce-checkout .ev-checkout__billing-panel:not([hidden]) .woocommerce-shipping-fields,
body.woocommerce-checkout .ev-checkout__billing-panel:not([hidden]) .woocommerce-shipping-fields__field-wrapper {
  display: block !important;
}

/* Grille propre des champs dans le panneau */
body.woocommerce-checkout .ev-checkout__billing-panel:not([hidden]) .woocommerce-shipping-fields__field-wrapper {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 14px !important;
}

/* Titre du panneau : on indique clairement que ce sont les infos de facturation */
body.woocommerce-checkout .ev-checkout__billing-panel .woocommerce-shipping-fields > h3,
body.woocommerce-checkout .ev-checkout__billing-panel #ship-to-different-address {
  display: none !important;
}

/* Ajouter un titre propre dans le panneau via CSS */
body.woocommerce-checkout .ev-checkout__billing-panel::before {
  content: "Informations de facturation" !important;
  display: block !important;
  margin: 0 0 12px !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
}

/* Champs compacts dans le panneau */
body.woocommerce-checkout .ev-checkout__billing-panel .form-row {
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel input.input-text,
body.woocommerce-checkout .ev-checkout__billing-panel select,
body.woocommerce-checkout .ev-checkout__billing-panel .select2-container .select2-selection--single {
  min-height: 40px !important;
  height: 40px !important;
  font-size: 14px !important;
  border-radius: 10px !important;
}

/* Le pays WooCommerce est parfois fixe si la boutique ne vend/livre qu'en France */
body.woocommerce-checkout #billing_country_field,
body.woocommerce-checkout #shipping_country_field {
  min-width: 0 !important;
}

body.woocommerce-checkout #billing_country_field strong,
body.woocommerce-checkout #shipping_country_field strong {
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 12px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  background: #f8fafc !important;
  color: #0a1f3d !important;
  font-size: 14px !important;
}

/* Adresse principale plus lisible et compacte */
body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields__field-wrapper {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 14px !important;
}

body.woocommerce-checkout .ev-checkout__address-card #billing_address_1_field,
body.woocommerce-checkout .ev-checkout__address-card #billing_address_2_field,
body.woocommerce-checkout .ev-checkout__address-card #billing_email_field {
  grid-column: auto !important;
}

/* Le bouton ne doit pas ouvrir un panneau vide */
body.woocommerce-checkout .ev-checkout__billing-help {
  margin-bottom: 14px !important;
}

/* Mobile */
@media (max-width: 768px) {
  body.woocommerce-checkout .ev-checkout__billing-panel:not([hidden]) .woocommerce-shipping-fields__field-wrapper,
  body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields__field-wrapper {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   v1.4.9.6 — CHECKOUT : CHAMPS FACTURATION DIFFÉRENTE
========================================================= */

/* Éviter le doublon DÉTAILS DE LIVRAISON */
body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields > h3 {
  font-size: 0 !important;
  line-height: 0 !important;
  margin: 0 0 12px !important;
}

body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields > h3::after {
  content: "DÉTAILS DE LIVRAISON" !important;
  display: block !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
}

/* Si un autre CSS/JS a déjà remplacé le texte du h3, on ne veut pas voir deux lignes */
body.woocommerce-checkout .ev-checkout__address-card .woocommerce-billing-fields > h3:not(:empty) {
  color: transparent !important;
}

/* Panneau facturation différente */
body.woocommerce-checkout .ev-checkout__billing-panel[hidden] {
  display: none !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel:not([hidden]) {
  display: block !important;
}

/* La zone doit afficher de vrais champs à remplir */
body.woocommerce-checkout .ev-checkout__billing-clone {
  margin-top: 14px !important;
}

body.woocommerce-checkout .ev-checkout__billing-clone-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px 14px !important;
}

body.woocommerce-checkout .ev-checkout__billing-clone .form-row {
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-checkout .ev-checkout__billing-clone label {
  margin-bottom: 5px !important;
  font-size: 12.5px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #0a1f3d !important;
}

body.woocommerce-checkout .ev-checkout__billing-clone input.input-text {
  width: 100% !important;
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 12px !important;
  font-size: 14px !important;
  border-radius: 10px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  background: #ffffff !important;
  color: #0a1f3d !important;
}

/* Le texte d'aide reste propre */
body.woocommerce-checkout .ev-checkout__billing-help {
  margin: 0 0 12px !important;
  color: #5a6b85 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* Les vrais champs WooCommerce de facturation restent dans le formulaire, mais invisibles seulement quand on utilise le clone */
body.woocommerce-checkout .ev-checkout__billing-different.is-open ~ .woocommerce-shipping-fields {
  display: none !important;
}

/* Pays/région : WooCommerce peut le bloquer si boutique limitée à la France */
body.woocommerce-checkout #billing_country_field strong,
body.woocommerce-checkout #shipping_country_field strong {
  min-height: 40px !important;
  height: 40px !important;
  padding: 0 12px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 10px !important;
  display: flex !important;
  align-items: center !important;
  background: #f8fafc !important;
  color: #0a1f3d !important;
  font-size: 14px !important;
}

@media (max-width: 768px) {
  body.woocommerce-checkout .ev-checkout__billing-clone-grid {
    grid-template-columns: 1fr !important;
  }
}


/* =========================================================
   v1.4.9.7 — CHECKOUT : LOGIQUE LIVRAISON / FACTURATION RÉELLE
========================================================= */

/* On masque les vrais champs billing WooCommerce, mais ils restent dans le formulaire et sont synchronisés */
body.woocommerce-checkout .ev-checkout__native-billing-hidden {
  position: absolute !important;
  left: -99999px !important;
  top: auto !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

/* Le bloc principal est maintenant la vraie adresse de livraison shipping_* */
body.woocommerce-checkout .ev-shipping-fields-main > h3 {
  margin: 0 0 12px !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
  text-transform: uppercase !important;
}

body.woocommerce-checkout .ev-shipping-fields-main__wrapper,
body.woocommerce-checkout .ev-checkout__billing-clone-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(310px, 1fr)) !important;
  gap: 12px 18px !important;
  align-items: end !important;
}

/* Champs livraison + facturation différente : même design */
body.woocommerce-checkout .ev-shipping-fields-main__wrapper .form-row,
body.woocommerce-checkout .ev-checkout__billing-clone .form-row {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  grid-column: auto !important;
}

body.woocommerce-checkout .ev-shipping-fields-main__wrapper input.input-text,
body.woocommerce-checkout .ev-shipping-fields-main__wrapper select,
body.woocommerce-checkout .ev-shipping-fields-main__wrapper .select2-container,
body.woocommerce-checkout .ev-shipping-fields-main__wrapper .select2-selection--single,
body.woocommerce-checkout .ev-checkout__billing-clone input.input-text,
body.woocommerce-checkout .ev-checkout__billing-clone select,
body.woocommerce-checkout .ev-checkout__billing-clone .select2-container,
body.woocommerce-checkout .ev-checkout__billing-clone .select2-selection--single {
  width: 100% !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: 44px !important;
  min-height: 44px !important;
  padding: 0 14px !important;
  font-size: 14.5px !important;
  border-radius: 11px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  background: #ffffff !important;
  color: #0a1f3d !important;
  box-shadow: none !important;
}

body.woocommerce-checkout .ev-shipping-fields-main__wrapper label,
body.woocommerce-checkout .ev-checkout__billing-clone label {
  margin-bottom: 6px !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #0a1f3d !important;
}

/* Pays fixe si WooCommerce est limité à la France */
body.woocommerce-checkout .ev-shipping-fields-main__wrapper #shipping_country_field strong,
body.woocommerce-checkout .ev-checkout__native-billing-hidden #billing_country_field strong {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  height: 44px !important;
  padding: 0 14px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 11px !important;
  display: flex !important;
  align-items: center !important;
  background: #ffffff !important;
  color: #0a1f3d !important;
  font-size: 14.5px !important;
}

/* Panneau facturation différente */
body.woocommerce-checkout .ev-checkout__billing-panel[hidden] {
  display: none !important;
}

body.woocommerce-checkout .ev-checkout__billing-panel:not([hidden]) {
  display: block !important;
}

body.woocommerce-checkout .ev-checkout__billing-help {
  max-width: 720px !important;
  margin: 0 0 14px !important;
  color: #5a6b85 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

/* Responsive */
@media (max-width: 900px) {
  body.woocommerce-checkout .ev-shipping-fields-main__wrapper,
  body.woocommerce-checkout .ev-checkout__billing-clone-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   ECONOVAPE — PAGE BOUTIQUE (v1.5.0)
========================================================= */
.ev-shop-page { padding: 18px 0 36px; }

/* HERO */
.ev-shop-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
  gap: 24px;
  align-items: stretch;
  margin: 8px 0 18px;
}
.ev-shop-hero__left { display: flex; flex-direction: column; justify-content: center; padding: 8px 4px; }
.ev-shop-hero__title { font-size: clamp(28px, 3.4vw, 44px); font-weight: 800; color: #0b2a4a; margin: 0 0 10px; line-height: 1.05; }
.ev-shop-hero__intro { color: #4b5b6e; font-size: 15px; line-height: 1.55; max-width: 480px; }
.ev-shop-hero__intro p { margin: 0; }

.ev-shop-hero__right {
  position: relative;
  border-radius: 18px;
  overflow: hidden;
  background: linear-gradient(135deg, #14b8b0 0%, #0e9a92 100%);
  min-height: 200px;
  padding: 28px 32px;
  display: flex;
  align-items: center;
  color: #fff;
}
.ev-shop-hero__right::before {
  content: ""; position: absolute; inset: 0;
  background-image: radial-gradient(circle at 70% 30%, rgba(255,255,255,.08) 0 30%, transparent 31%),
                    radial-gradient(circle at 20% 80%, rgba(255,255,255,.05) 0 25%, transparent 26%);
}
.ev-shop-hero__content { position: relative; z-index: 2; max-width: 60%; }
.ev-shop-hero__eyebrow { display: block; font-size: 13px; font-weight: 600; opacity: .92; margin-bottom: 6px; }
.ev-shop-hero__bigtitle { font-size: clamp(20px, 2vw, 26px); font-weight: 800; line-height: 1.15; margin: 0 0 14px; }
.ev-shop-hero__btn {
  display: inline-flex; align-items: center; gap: 8px;
  background: rgba(255,255,255,.15); color: #fff; border: 1px solid rgba(255,255,255,.45);
  padding: 10px 18px; border-radius: 10px; font-weight: 600; font-size: 14px; text-decoration: none;
  backdrop-filter: blur(4px); transition: background .2s;
}
.ev-shop-hero__btn:hover { background: rgba(255,255,255,.28); }
.ev-shop-hero__image {
  position: absolute; right: 12px; bottom: 0; height: 105%;
  max-height: 260px; width: auto; object-fit: contain; z-index: 1;
  pointer-events: none;
}
.ev-shop-hero__right.is-no-image .ev-shop-hero__content { max-width: 100%; }

/* AVANTAGES */
.ev-shop-adv {
  background: #fff; border: 1px solid #e6ebf1; border-radius: 14px;
  padding: 14px 20px; margin: 0 0 22px;
}
.ev-shop-adv ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.ev-shop-adv li { display: flex; align-items: center; gap: 12px; min-width: 0; }
.ev-shop-adv__icon {
  display: inline-flex; align-items: center; justify-content: center;
  width: 38px; height: 38px; border-radius: 10px;
  background: #e6f7f5; color: #12b8b0; flex-shrink: 0;
}
.ev-shop-adv__icon .ev-icon { width: 20px; height: 20px; }
.ev-shop-adv__txt { display: flex; flex-direction: column; min-width: 0; }
.ev-shop-adv__txt strong { color: #0b2a4a; font-size: 14px; font-weight: 700; }
.ev-shop-adv__txt span { color: #6b7b8e; font-size: 12.5px; }

/* GRID layout */
.ev-shop-grid {
  display: grid;
  grid-template-columns: 260px minmax(0, 1fr);
  gap: 22px;
  align-items: start;
}

.ev-shop-filters-toggle {
  display: none;
  align-items: center; gap: 8px;
  background: #fff; border: 1px solid #d8dee7;
  border-radius: 10px; padding: 10px 14px; font-weight: 600; color: #0b2a4a;
  margin-bottom: 14px; cursor: pointer;
}

/* FILTERS */
.ev-shop-filters {
  background: #fff; border: 1px solid #e6ebf1; border-radius: 16px;
  padding: 18px; position: sticky; top: 16px;
}
.ev-shop-filters__head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 14px; padding-bottom: 12px; border-bottom: 1px solid #eef2f6; }
.ev-shop-filters__title { font-size: 14px; font-weight: 700; color: #0b2a4a; margin: 0; text-transform: none; }
.ev-shop-filters__reset { font-size: 12.5px; color: #12b8b0; text-decoration: none; font-weight: 600; }
.ev-shop-filters__reset:hover { text-decoration: underline; }

.ev-shop-filter { border-bottom: 1px solid #eef2f6; padding: 10px 0; }
.ev-shop-filter:last-child { border-bottom: 0; }
.ev-shop-filter > summary {
  list-style: none; cursor: pointer;
  font-size: 12.5px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase;
  color: #0b2a4a; padding: 6px 0; display: flex; justify-content: space-between; align-items: center;
}
.ev-shop-filter > summary::-webkit-details-marker { display: none; }
.ev-shop-filter > summary::after {
  content: "▾"; font-size: 12px; color: #6b7b8e; transition: transform .2s;
}
.ev-shop-filter[open] > summary::after { transform: rotate(180deg); }
.ev-shop-filter ul { list-style: none; margin: 6px 0 4px; padding: 0; max-height: 240px; overflow-y: auto; }
.ev-shop-filter li { padding: 4px 0; }
.ev-shop-filter li a {
  display: flex; justify-content: space-between; align-items: center;
  text-decoration: none; color: #4b5b6e; font-size: 13px; padding: 4px 6px; border-radius: 6px;
}
.ev-shop-filter li a:hover, .ev-shop-filter li a.is-active { background: #f1f5f9; color: #0b2a4a; }
.ev-shop-filter li a span { color: #98a4b3; font-size: 12px; }

.ev-filter-check { display: flex; align-items: center; gap: 8px; padding: 4px 0; cursor: pointer; font-size: 13px; color: #4b5b6e; }
.ev-filter-check input { accent-color: #12b8b0; cursor: pointer; }
.ev-filter-check__label { flex: 1; }
.ev-filter-check__count { color: #98a4b3; font-size: 12px; }
.ev-filter-check.is-active .ev-filter-check__label { color: #0b2a4a; font-weight: 600; }

/* TOOLBAR */
.ev-shop-toolbar {
  display: flex; justify-content: space-between; align-items: center;
  background: #fff; border: 1px solid #e6ebf1; border-radius: 12px;
  padding: 10px 16px; margin-bottom: 16px; gap: 12px; flex-wrap: wrap;
}
.ev-shop-toolbar .woocommerce-result-count { margin: 0; color: #4b5b6e; font-size: 14px; }
.ev-shop-toolbar .woocommerce-ordering { margin: 0; }
.ev-shop-toolbar .woocommerce-ordering select {
  border: 1px solid #d8dee7; border-radius: 8px; padding: 8px 30px 8px 12px;
  font-size: 13.5px; color: #0b2a4a; background-color: #fff; cursor: pointer;
}

/* PRODUCTS GRID — override Woo */
.ev-shop-main ul.products {
  display: grid !important;
  grid-template-columns: repeat(var(--ev-shop-cols, 5), minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 0 !important; padding: 0 !important; list-style: none;
}
.ev-shop-main ul.products::before, .ev-shop-main ul.products::after { display: none !important; }
.ev-shop-main ul.products li.product {
  width: auto !important; margin: 0 !important; float: none !important;
  background: #fff; border: 1px solid #e6ebf1; border-radius: 14px;
  padding: 12px; position: relative; display: flex; flex-direction: column;
  transition: box-shadow .2s, transform .2s;
}
.ev-shop-main ul.products li.product:hover { box-shadow: 0 8px 20px rgba(11,42,74,.08); transform: translateY(-2px); }
.ev-shop-main ul.products li.product img {
  width: 100%; height: 150px; object-fit: contain; margin: 6px 0 10px; background: #fafbfd; border-radius: 10px;
}
.ev-shop-main ul.products li.product .woocommerce-loop-product__title {
  font-size: 13.5px !important; color: #0b2a4a !important; font-weight: 700 !important;
  padding: 0 !important; margin: 4px 0 6px !important; line-height: 1.3;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 35px;
}
.ev-shop-main ul.products li.product .price {
  color: #0b2a4a !important; font-weight: 800 !important; font-size: 15px !important; margin: 0; display: flex; align-items: center; gap: 6px;
}
.ev-shop-main ul.products li.product .price del { color: #98a4b3; font-weight: 500; font-size: 12.5px; opacity: .85; }
.ev-shop-main ul.products li.product .price ins { background: transparent; color: #ef4444 !important; text-decoration: none; }

/* Bottom row : prix + bouton panier */
.ev-shop-main ul.products li.product .button,
.ev-shop-main ul.products li.product a.add_to_cart_button,
.ev-shop-main ul.products li.product .added_to_cart {
  position: absolute; right: 12px; bottom: 12px;
  width: 36px; height: 36px; padding: 0 !important;
  background: #12b8b0 !important; color: #fff !important;
  border-radius: 10px; display: inline-flex !important; align-items: center; justify-content: center;
  font-size: 0 !important; line-height: 0 !important;
  border: 0; box-shadow: 0 2px 6px rgba(18,184,176,.3);
}
.ev-shop-main ul.products li.product .button::before,
.ev-shop-main ul.products li.product a.add_to_cart_button::before {
  content: ""; display: block; width: 18px; height: 18px;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M3 4h2l2 12h12l2-8H7'/><circle cx='9' cy='20' r='2'/><circle cx='18' cy='20' r='2'/></svg>") center/contain no-repeat;
}
.ev-shop-main ul.products li.product .added_to_cart { font-size: 0 !important; }

/* Bottom price row alignment */
.ev-shop-main ul.products li.product .price { padding-right: 44px; }

/* Star rating */
.ev-shop-main ul.products li.product .star-rating {
  margin: 4px 0 6px !important; font-size: 12px;
}

/* Card badges */
.ev-card__badges {
  position: absolute; top: 12px; left: 12px; z-index: 3;
  display: flex; flex-direction: column; gap: 4px; align-items: flex-start;
}
.ev-badge {
  display: inline-block; padding: 4px 10px; border-radius: 999px;
  font-size: 10.5px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
  color: #fff;
}
.ev-badge--top   { background: #12b8b0; }
.ev-badge--promo { background: #ef6a2a; }

.ev-card__wishlist {
  position: absolute; top: 10px; right: 10px; z-index: 3;
}
.ev-card__wishlist .ev-wishlist {
  width: 32px; height: 32px; border-radius: 50%;
  background: #fff; border: 1px solid #e6ebf1; color: #98a4b3;
  display: inline-flex; align-items: center; justify-content: center; cursor: pointer;
  transition: color .2s, background .2s;
}
.ev-card__wishlist .ev-wishlist:hover,
.ev-card__wishlist .ev-wishlist.is-active { color: #ef4444; background: #fff5f5; }

/* PAGINATION */
.ev-shop-main .woocommerce-pagination { margin: 26px 0 0; text-align: center; }
.ev-shop-main .woocommerce-pagination ul.page-numbers {
  display: inline-flex; gap: 6px; border: 0; padding: 0;
}
.ev-shop-main .woocommerce-pagination ul.page-numbers li { border: 0; }
.ev-shop-main .woocommerce-pagination ul.page-numbers a,
.ev-shop-main .woocommerce-pagination ul.page-numbers span {
  width: 36px; height: 36px; border-radius: 8px;
  display: inline-flex; align-items: center; justify-content: center;
  background: #fff; border: 1px solid #e6ebf1; color: #0b2a4a; font-weight: 600; font-size: 14px;
  text-decoration: none;
}
.ev-shop-main .woocommerce-pagination ul.page-numbers a:hover { border-color: #12b8b0; color: #12b8b0; }
.ev-shop-main .woocommerce-pagination ul.page-numbers .current { background: #12b8b0; border-color: #12b8b0; color: #fff; }

/* Force columns variable */
.ev-shop-main ul.products { --ev-shop-cols: 5; }

/* TABLET */
@media (max-width: 1100px) {
  .ev-shop-grid { grid-template-columns: 220px minmax(0, 1fr); }
  .ev-shop-main ul.products { --ev-shop-cols: 3 !important; grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
  .ev-shop-hero { grid-template-columns: 1fr; }
  .ev-shop-hero__right { min-height: 180px; }
}

/* MOBILE */
@media (max-width: 780px) {
  .ev-shop-grid { grid-template-columns: 1fr; }
  .ev-shop-filters-toggle { display: inline-flex; }
  .ev-shop-filters {
    position: fixed; inset: 0; z-index: 999; border-radius: 0;
    transform: translateX(-100%); transition: transform .25s; overflow-y: auto; padding-top: 60px;
  }
  .ev-shop-grid.is-filters-open .ev-shop-filters { transform: translateX(0); }
  .ev-shop-main ul.products { --ev-shop-cols: 2 !important; grid-template-columns: repeat(2, minmax(0,1fr)) !important; gap: 10px !important; }
  .ev-shop-main ul.products li.product img { height: 130px; }
  .ev-shop-adv ul { grid-template-columns: 1fr; gap: 10px; }
  .ev-shop-hero__image { max-height: 160px; }
  .ev-shop-hero__content { max-width: 100%; }
  .ev-shop-toolbar { font-size: 13px; }
}


/* =========================================================
   ECONOVAPE v1.5.2 — Correction description boutique front
========================================================= */

body.woocommerce-shop .ev-shop-hero__intro,
body.post-type-archive-product .ev-shop-hero__intro,
body.tax-product_cat .ev-shop-hero__intro,
body.tax-product_tag .ev-shop-hero__intro,
body[class*="tax-pa_"] .ev-shop-hero__intro {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #4b5b6e !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
  max-width: 520px !important;
  margin-top: 0 !important;
}

body.woocommerce-shop .ev-shop-hero__intro p,
body.post-type-archive-product .ev-shop-hero__intro p,
body.tax-product_cat .ev-shop-hero__intro p,
body.tax-product_tag .ev-shop-hero__intro p,
body[class*="tax-pa_"] .ev-shop-hero__intro p {
  margin: 0 !important;
}


/* =========================================================
   ECONOVAPE v1.5.3 — Boutique : reset filtres + image hero cover
========================================================= */

/* Le bandeau image doit toujours être rempli par l'image, peu importe son format */
body.woocommerce-shop .ev-shop-hero__right,
body.post-type-archive-product .ev-shop-hero__right,
body.tax-product_cat .ev-shop-hero__right,
body.tax-product_tag .ev-shop-hero__right,
body[class*="tax-pa_"] .ev-shop-hero__right {
  position: relative !important;
  overflow: hidden !important;
  min-height: 200px !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* L'image uploadée remplit toute la zone */
body.woocommerce-shop .ev-shop-hero__image,
body.post-type-archive-product .ev-shop-hero__image,
body.tax-product_cat .ev-shop-hero__image,
body.tax-product_tag .ev-shop-hero__image,
body[class*="tax-pa_"] .ev-shop-hero__image {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  min-width: 100% !important;
  min-height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
  z-index: 0 !important;
}

/* Le texte reste au-dessus de l'image */
body.woocommerce-shop .ev-shop-hero__content,
body.post-type-archive-product .ev-shop-hero__content,
body.tax-product_cat .ev-shop-hero__content,
body.tax-product_tag .ev-shop-hero__content,
body[class*="tax-pa_"] .ev-shop-hero__content {
  position: relative !important;
  z-index: 2 !important;
}

/* Voile léger pour garder le texte lisible sans masquer l'image */
body.woocommerce-shop .ev-shop-hero__right::after,
body.post-type-archive-product .ev-shop-hero__right::after,
body.tax-product_cat .ev-shop-hero__right::after,
body.tax-product_tag .ev-shop-hero__right::after,
body[class*="tax-pa_"] .ev-shop-hero__right::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  z-index: 1 !important;
  background: linear-gradient(90deg, rgba(8,26,51,.22), rgba(8,26,51,.04) 55%, rgba(8,26,51,0)) !important;
  pointer-events: none !important;
}

/* Le bouton Réinitialiser doit rester clairement cliquable */
body.woocommerce-shop .ev-shop-filters__reset,
body.post-type-archive-product .ev-shop-filters__reset,
body.tax-product_cat .ev-shop-filters__reset,
body.tax-product_tag .ev-shop-filters__reset,
body[class*="tax-pa_"] .ev-shop-filters__reset {
  cursor: pointer !important;
  position: relative !important;
  z-index: 3 !important;
}


/* =========================================================
   ECONOVAPE v1.5.4 — Reset filtres forcé
========================================================= */
body .ev-shop-filters__reset {
  cursor: pointer !important;
}


/* =========================================================
   ECONOVAPE v1.5.6 — Reset filtres sûr vers tous les produits
========================================================= */
body .ev-shop-filters__reset {
  cursor: pointer !important;
}


/* =========================================================
   ECONOVAPE v1.5.8 — Cartes produits premium forcées
========================================================= */

body.woocommerce-shop ul.products,
body.post-type-archive-product ul.products,
body.tax-product_cat ul.products,
body.tax-product_tag ul.products,
body[class*="tax-pa_"] ul.products {
  align-items: stretch !important;
}

body.woocommerce-shop ul.products li.product.ev-card-premium,
body.post-type-archive-product ul.products li.product.ev-card-premium,
body.tax-product_cat ul.products li.product.ev-card-premium,
body.tax-product_tag ul.products li.product.ev-card-premium,
body[class*="tax-pa_"] ul.products li.product.ev-card-premium {
  list-style: none !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 100% !important;
  padding: 12px !important;
  border: 1px solid rgba(10,31,61,.12) !important;
  border-radius: 14px !important;
  background: #ffffff !important;
  box-shadow: 0 8px 20px rgba(10,31,61,.04) !important;
  overflow: hidden !important;
  position: relative !important;
}

.ev-card-premium__media {
  position: relative !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  border-radius: 12px !important;
  background: #f6f8fa !important;
}

.ev-card-premium__image-link,
.ev-card-premium__image,
.ev-card-premium__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}

.ev-card-premium__image,
.ev-card-premium__media img {
  object-fit: cover !important;
  object-position: center !important;
  margin: 0 !important;
}

.ev-card-premium__heart {
  position: absolute !important;
  right: 10px !important;
  bottom: 10px !important;
  z-index: 5 !important;
  width: 38px !important;
  height: 38px !important;
}

.ev-card-premium__heart .ev-wishlist,
.ev-card-premium__heart a,
.ev-card-premium__heart button,
.ev-card-premium__heart .yith-wcwl-add-to-wishlist-button {
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  min-height: 38px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(10,31,61,.18) !important;
  background: #ffffff !important;
  color: #12b8b0 !important;
  box-shadow: 0 8px 18px rgba(10,31,61,.14) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  margin: 0 !important;
  font-size: 0 !important;
  line-height: 0 !important;
  text-decoration: none !important;
}

.ev-card-premium__heart svg {
  width: 20px !important;
  height: 20px !important;
}

.ev-card-premium__badge {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  z-index: 4 !important;
  height: 26px !important;
  display: inline-flex !important;
  align-items: center !important;
  padding: 0 10px !important;
  border-radius: 999px !important;
  background: #ff6b1a !important;
  color: #ffffff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.ev-card-premium__body {
  flex: 1 1 auto !important;
  display: flex !important;
  flex-direction: column !important;
  padding-top: 12px !important;
}

.ev-card-premium__title {
  min-height: 42px !important;
  color: #0a1f3d !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  margin: 0 0 6px !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
}

.ev-card-premium__cat {
  min-height: 18px !important;
  color: #5b6b7e !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  margin-bottom: 6px !important;
}

.ev-card-premium__rating {
  min-height: 20px !important;
  margin-bottom: 5px !important;
}

.ev-card-premium__rating .star-rating {
  margin: 0 !important;
  font-size: 12px !important;
  color: #ff6b1a !important;
}

.ev-card-premium__price {
  min-height: 28px !important;
  margin-bottom: 8px !important;
  color: #0a1f3d !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
}

.ev-card-premium__price del {
  color: #9aa6b5 !important;
  opacity: .85 !important;
  font-weight: 700 !important;
}

.ev-card-premium__price ins {
  color: #ff3b1f !important;
  text-decoration: none !important;
}

.ev-card-premium__select-wrap {
  margin: 0 0 8px !important;
}

.ev-card-premium__select {
  width: 100% !important;
  height: 38px !important;
  border: 1px solid rgba(10,31,61,.18) !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #0a1f3d !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  padding: 0 10px !important;
}

.ev-card-premium__qty {
  margin-top: auto !important;
  display: grid !important;
  grid-template-columns: 42px 1fr 42px !important;
  height: 42px !important;
  border-radius: 8px !important;
  overflow: hidden !important;
  border: 1px solid rgba(18,184,176,.22) !important;
  background: #ffffff !important;
}

.ev-card-premium__qty-btn {
  border: 0 !important;
  background: #0a1f3d !important;
  color: #ffffff !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
  padding: 0 !important;
}

.ev-card-premium__qty-input {
  width: 100% !important;
  min-width: 0 !important;
  border: 0 !important;
  background: #fff !important;
  color: #0a1f3d !important;
  text-align: center !important;
  font-size: 14px !important;
  font-weight: 800 !important;
  padding: 0 !important;
  -moz-appearance: textfield !important;
}

.ev-card-premium__qty-input::-webkit-inner-spin-button,
.ev-card-premium__qty-input::-webkit-outer-spin-button {
  -webkit-appearance: none !important;
  margin: 0 !important;
}

.ev-card-premium__add,
body.woocommerce-shop a.ev-card-premium__add,
body.post-type-archive-product a.ev-card-premium__add,
body.tax-product_cat a.ev-card-premium__add,
body[class*="tax-pa_"] a.ev-card-premium__add {
  margin-top: 8px !important;
  height: 44px !important;
  min-height: 44px !important;
  width: 100% !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #12b8b0 !important;
  color: #ffffff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 0 10px !important;
  box-shadow: 0 10px 20px rgba(18,184,176,.22) !important;
  text-decoration: none !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-align: center !important;
}

.ev-card-premium__add:hover {
  background: #0a1f3d !important;
  color: #ffffff !important;
}

.ev-card-premium__add strong {
  color: #ffffff !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

/* Hide old theme/plugin fragments if they accidentally get injected into premium cards */
.ev-card-premium .ev-card__wishlist,
.ev-card-premium .variations_form,
.ev-card-premium .ev-product-card__meta,
.ev-card-premium .added_to_cart,
.ev-card-premium .button:not(.ev-card-premium__add) {
  display: none !important;
}

@media (max-width: 760px) {
  .ev-card-premium__title {
    font-size: 13px !important;
  }

  .ev-card-premium__qty {
    grid-template-columns: 36px 1fr 36px !important;
  }
}



/* =========================================================
   ECONOVAPE v1.5.9 — Corrections cartes produits premium
========================================================= */

.ev-card-premium__add .screen-reader-text,
.ev-card-premium__price .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.ev-card-premium__add {
  overflow: hidden !important;
  white-space: nowrap !important;
  font-size: 12.5px !important;
  gap: 5px !important;
}

.ev-card-premium__add span,
.ev-card-premium__add strong {
  display: inline-flex !important;
  align-items: center !important;
  min-width: 0 !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.ev-card-premium__add strong {
  flex: 0 0 auto !important;
}

.ev-card-premium__select {
  cursor: pointer !important;
  text-overflow: ellipsis !important;
}

.ev-card-premium__qty-btn {
  pointer-events: auto !important;
  user-select: none !important;
  touch-action: manipulation !important;
  position: relative !important;
  z-index: 2 !important;
}

.ev-card-premium__qty-input {
  pointer-events: auto !important;
}




/* =========================================================
   ECONOVAPE v1.6.0 — Corrections panier + cartes variables
========================================================= */

/* Panier : miniatures toutes au même format */
body.woocommerce-cart .ev-cart-item img,
body.woocommerce-cart .ev-cart-items img,
body.woocommerce-cart .shop_table.cart img,
body.woocommerce-cart .woocommerce-cart-form img,
body.woocommerce-cart td.product-thumbnail img {
  width: 78px !important;
  height: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 10px !important;
  display: block !important;
}

/* Cartes boutique : rendre les + / - toujours cliquables */
.ev-card-premium__qty,
.ev-card-premium__qty-btn,
.ev-card-premium__qty-input {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 4 !important;
}

.ev-card-premium__qty-btn {
  cursor: pointer !important;
  user-select: none !important;
  touch-action: manipulation !important;
}

/* Nettoyage des textes accessibles WooCommerce dans les prix */
.ev-card-premium__add .screen-reader-text,
.ev-card-premium__price .screen-reader-text {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Bouton add propre, pas de superposition */
.ev-card-premium__add {
  overflow: hidden !important;
  white-space: nowrap !important;
  gap: 5px !important;
}

.ev-card-premium__add span,
.ev-card-premium__add strong {
  display: inline-flex !important;
  align-items: center !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

.ev-card-premium__add strong {
  flex: 0 0 auto !important;
}

.ev-card-premium__select {
  cursor: pointer !important;
}



/* =========================================================
   ECONOVAPE v1.6.2 — Correction panier : stock normal + miniatures carrées
========================================================= */

/* Annule l'effet des anciennes règles trop larges sur toutes les images du panier */
body.woocommerce-cart .woocommerce-cart-form img,
body.woocommerce-cart .ev-cart img,
body.woocommerce-cart .ev-cart-items img {
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  border-radius: 0 !important;
  object-fit: initial !important;
}

/* Miniature produit uniquement */
body.woocommerce-cart .ev-cart-item__media img,
body.woocommerce-cart .ev-cart-item__thumb img,
body.woocommerce-cart .ev-cart-product__image img,
body.woocommerce-cart td.product-thumbnail img,
body.woocommerce-cart .product-thumbnail img {
  width: 78px !important;
  height: 78px !important;
  min-width: 78px !important;
  max-width: 78px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 10px !important;
  display: block !important;
}

/* Le check vert stock, quelle que soit sa classe, doit redevenir petit */
body.woocommerce-cart .ev-cart-item .stock,
body.woocommerce-cart .ev-cart-item .in-stock,
body.woocommerce-cart .ev-cart-item [class*="stock"],
body.woocommerce-cart .ev-cart-item [class*="Stock"] {
  font-size: 12px !important;
  line-height: 1.2 !important;
  color: #12a36b !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 4px !important;
  width: auto !important;
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: none !important;
  max-height: none !important;
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
}

/* Si le check est un élément visuel, on le réduit fortement */
body.woocommerce-cart .ev-cart-item .stock::before,
body.woocommerce-cart .ev-cart-item .in-stock::before,
body.woocommerce-cart .ev-cart-item [class*="stock"]::before,
body.woocommerce-cart .ev-cart-item [class*="Stock"]::before {
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  max-width: 13px !important;
  font-size: 13px !important;
  line-height: 13px !important;
  border-radius: 0 !important;
  background-size: contain !important;
}

/* Si le check est une image ou svg */
body.woocommerce-cart .ev-cart-item .stock img,
body.woocommerce-cart .ev-cart-item .in-stock img,
body.woocommerce-cart .ev-cart-item [class*="stock"] img,
body.woocommerce-cart .ev-cart-item [class*="Stock"] img,
body.woocommerce-cart .ev-cart-item .stock svg,
body.woocommerce-cart .ev-cart-item .in-stock svg,
body.woocommerce-cart .ev-cart-item [class*="stock"] svg,
body.woocommerce-cart .ev-cart-item [class*="Stock"] svg {
  width: 13px !important;
  height: 13px !important;
  min-width: 13px !important;
  max-width: 13px !important;
  border-radius: 0 !important;
  object-fit: contain !important;
}

/* Boutons quantité cartes produits */
.ev-card-premium__qty-btn {
  cursor: pointer !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 30 !important;
}


/* =========================================================
   ECONOVAPE v1.6.3 — Boutons quantité cartes cliquables
========================================================= */
.ev-card-premium__qty,
.ev-card-premium__qty-btn,
.ev-card-premium__qty-input {
  pointer-events: auto !important;
}

.ev-card-premium__qty {
  position: relative !important;
  z-index: 50 !important;
}

.ev-card-premium__qty-btn {
  position: relative !important;
  z-index: 60 !important;
  cursor: pointer !important;
  user-select: none !important;
  touch-action: manipulation !important;
}


/* =========================================================
   ECONOVAPE v1.6.4 — Quantité cartes : aucun clic bloqué
========================================================= */

.ev-card-premium__qty {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 100 !important;
}

.ev-card-premium__qty-btn {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 110 !important;
  cursor: pointer !important;
  user-select: none !important;
  touch-action: manipulation !important;
}

.ev-card-premium__qty-input {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 105 !important;
}


/* =========================================================
   ECONOVAPE v1.6.5 — Diagnostic quantité cartes
========================================================= */

/* La zone quantité passe au-dessus de tout */
.ev-card-premium,
.ev-card-premium__body {
  position: relative !important;
}

.ev-card-premium__qty {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 9999 !important;
  isolation: isolate !important;
}

.ev-card-premium__qty-btn,
.ev-card-premium__qty-input {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 10000 !important;
}

.ev-card-premium__qty::after {
  content: "" !important;
  position: absolute !important;
  inset: -3px !important;
  z-index: -1 !important;
  pointer-events: none !important;
}

/* Feedback visuel temporaire quand le clic est bien capté */
.ev-card-premium.ev-qty-clicked .ev-card-premium__qty {
  outline: 2px solid #12b8b0 !important;
  outline-offset: 2px !important;
}


/* =========================================================
   ECONOVAPE v1.6.6 — Correction classe carte + quantité
========================================================= */

.ev-card-premium__qty {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 100 !important;
}

.ev-card-premium__qty-btn {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 110 !important;
  cursor: pointer !important;
  user-select: none !important;
  touch-action: manipulation !important;
}

.ev-card-premium__qty-input {
  pointer-events: auto !important;
  position: relative !important;
  z-index: 105 !important;
}

.ev-card-premium.ev-qty-clicked .ev-card-premium__qty {
  outline: none !important;
}


/* =========================================================
   ECONOVAPE v1.6.7 — Cartes produits : correction superposition boutons
========================================================= */

/* La carte doit laisser assez de place au select + quantité + bouton */
body.woocommerce-shop ul.products li.product.ev-card-premium,
body.post-type-archive-product ul.products li.product.ev-card-premium,
body.tax-product_cat ul.products li.product.ev-card-premium,
body.tax-product_tag ul.products li.product.ev-card-premium,
body[class*="tax-pa_"] ul.products li.product.ev-card-premium {
  min-height: 405px !important;
  overflow: hidden !important;
}

/* Le contenu de carte est une vraie colonne */
.ev-card-premium__body {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  position: relative !important;
}

/* Prix et select restent dans le flux normal */
.ev-card-premium__price,
.ev-card-premium__select-wrap {
  position: relative !important;
  z-index: 1 !important;
}

/* La quantité n'est jamais en absolute et ne doit pas recouvrir le bouton */
.ev-card-premium__qty {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;

  width: 100% !important;
  max-width: 100% !important;
  margin: 8px 0 0 0 !important;

  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) 42px !important;
  height: 42px !important;
  min-height: 42px !important;

  z-index: 2 !important;
  clear: both !important;
}

/* Le bouton Ajouter passe clairement SOUS la quantité */
.ev-card-premium__add,
body.woocommerce-shop a.ev-card-premium__add,
body.post-type-archive-product a.ev-card-premium__add,
body.tax-product_cat a.ev-card-premium__add,
body.tax-product_tag a.ev-card-premium__add,
body[class*="tax-pa_"] a.ev-card-premium__add {
  position: relative !important;
  inset: auto !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;

  display: flex !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;

  height: 44px !important;
  min-height: 44px !important;
  margin: 8px 0 0 0 !important;
  padding: 0 12px !important;

  z-index: 1 !important;
  clear: both !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}

/* Aucun ancien bouton panier flottant ne doit revenir par-dessus */
.ev-card-premium .ev-card__cart,
.ev-card-premium .ev-product-card__cart,
.ev-card-premium .ev-add-to-cart-icon,
.ev-card-premium a.add_to_cart_button:not(.ev-card-premium__add),
.ev-card-premium button.add_to_cart_button:not(.ev-card-premium__add) {
  display: none !important;
}

/* Évite que le bouton turquoise remonte derrière la quantité */
.ev-card-premium__qty + .ev-card-premium__add {
  margin-top: 8px !important;
}

/* Si une ancienne règle force le bouton à flotter */
.ev-card-premium__add.button {
  float: none !important;
}

/* Mobile / petites cartes : on garde l’empilement propre */
@media (max-width: 900px) {
  body.woocommerce-shop ul.products li.product.ev-card-premium,
  body.post-type-archive-product ul.products li.product.ev-card-premium,
  body.tax-product_cat ul.products li.product.ev-card-premium,
  body.tax-product_tag ul.products li.product.ev-card-premium,
  body[class*="tax-pa_"] ul.products li.product.ev-card-premium {
    min-height: 420px !important;
  }
}


/* =========================================================
   ECONOVAPE v1.6.8 — Cartes produits : afficher Ajouter + prix
========================================================= */

/* L'ancien style panier injecte une icône sur le bouton : on la retire */
.ev-card-premium__add::before,
.ev-card-premium__add::after,
.ev-card-premium__add .ev-icon,
.ev-card-premium__add svg,
.ev-card-premium__add i {
  content: none !important;
  display: none !important;
}

/* Le bouton doit afficher le texte, pas seulement l’icône panier */
.ev-card-premium__add,
body.woocommerce-shop a.ev-card-premium__add,
body.post-type-archive-product a.ev-card-premium__add,
body.tax-product_cat a.ev-card-premium__add,
body.tax-product_tag a.ev-card-premium__add,
body[class*="tax-pa_"] a.ev-card-premium__add {
  font-size: 13px !important;
  line-height: 1 !important;
  color: #ffffff !important;
  text-indent: 0 !important;
  letter-spacing: normal !important;
  text-transform: none !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 7px !important;

  height: 44px !important;
  min-height: 44px !important;
  padding: 0 10px !important;

  overflow: hidden !important;
  white-space: nowrap !important;
}

/* Texte Ajouter visible */
.ev-card-premium__add span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  clip: auto !important;
  text-indent: 0 !important;
  overflow: visible !important;
}

/* Prix visible à côté de Ajouter */
.ev-card-premium__add strong,
.ev-card-premium__add .ev-card-premium__add-price {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #ffffff !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  max-width: 82px !important;
  clip: auto !important;
  text-indent: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

/* Sur les cartes étroites, on garde un bouton propre */
@media (max-width: 1100px) {
  .ev-card-premium__add span,
  .ev-card-premium__add strong,
  .ev-card-premium__add .ev-card-premium__add-price {
    font-size: 12px !important;
  }
}

/* =========================================================
   ECONOVAPE — FICHE PRODUIT v1.6.9
   Layout premium 2 colonnes, conversion-first.
========================================================= */

.ev-product-v2 { max-width: 1280px; margin: 0 auto; padding: 16px 24px 60px; box-sizing: border-box; }
.ev-product-v2__layout { display: grid; grid-template-columns: minmax(0,1.05fr) minmax(0,1fr); gap: 48px; align-items: start; }

/* ---- Galerie (gauche) ---- */
.ev-product-v2__media { min-width: 0; }
.ev-product-v2__gallery { background: #fff; border: 1px solid rgba(10,31,61,.08); border-radius: 22px; padding: 16px; box-shadow: 0 12px 30px rgba(10,31,61,.05); position: relative; }
.ev-product-v2__gallery .woocommerce-product-gallery { width: 100% !important; float: none !important; opacity: 1 !important; display: grid !important; grid-template-columns: 92px 1fr; gap: 14px; }
.ev-product-v2__gallery .woocommerce-product-gallery__image img { border-radius: 14px; background: #fff; }
.ev-product-v2__gallery .flex-control-thumbs { display: flex !important; flex-direction: column; gap: 10px; padding: 0; margin: 0; list-style: none; order: -1; }
.ev-product-v2__gallery .flex-control-thumbs li { width: 100% !important; margin: 0 !important; }
.ev-product-v2__gallery .flex-control-thumbs img { width: 100% !important; height: auto; aspect-ratio: 1/1; object-fit: contain; border: 1px solid rgba(10,31,61,.08); border-radius: 12px; padding: 4px; background: #fff; cursor: pointer; opacity: .75; transition: all .2s; }
.ev-product-v2__gallery .flex-control-thumbs img:hover,
.ev-product-v2__gallery .flex-control-thumbs img.flex-active { opacity: 1; border-color: #12b8b0; box-shadow: 0 0 0 2px rgba(18,184,176,.15); }
.ev-product-v2__gallery .woocommerce-product-gallery__trigger { right: 18px !important; bottom: 18px !important; top: auto !important; background: #fff !important; border: 1px solid rgba(10,31,61,.1); border-radius: 50%; width: 38px; height: 38px; display: inline-flex; align-items: center; justify-content: center; box-shadow: 0 6px 18px rgba(10,31,61,.1); }
.ev-product-v2__media-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 14px; padding: 0 6px; }
.ev-product-v2__photo-note { display: inline-flex; align-items: center; gap: 6px; color: #6b7a90; font-size: 13px; margin: 0; }
.ev-product-v2__brand { font-size: 13px; font-weight: 700; letter-spacing: .04em; color: #0a1f3d; margin: 0; }

/* ---- Infos (droite) ---- */
.ev-product-v2__summary { min-width: 0; padding: 6px 0 0; }
.ev-product-v2__badge-row { margin-bottom: 14px; }
.ev-product-badge { display: inline-block; font-size: 12px; font-weight: 800; letter-spacing: .05em; padding: 6px 12px; border-radius: 8px; color: #fff; text-transform: uppercase; }
.ev-product-badge--top   { background: #12b8b0; }
.ev-product-badge--sale  { background: #e63946; }
.ev-product-badge--new   { background: #4f46e5; }
.ev-product-badge--stock { background: #1f9d55; }

.ev-product-v2__title { font-size: 34px; line-height: 1.12; font-weight: 800; color: #0a1f3d; margin: 0 0 12px; }

.ev-product-v2__rating { display: flex; align-items: center; gap: 8px; font-size: 14px; color: #6b7a90; margin-bottom: 18px; }
.ev-product-v2__rating .star-rating { color: #f7b500; font-size: 16px; }
.ev-product-v2__rating-count { color: #6b7a90; text-decoration: none; }
.ev-product-v2__rating-count:hover { color: #12b8b0; }

.ev-product-v2__price-row { display: flex; align-items: center; gap: 14px; margin-top: 4px; }
.ev-product-v2__price { font-size: 34px; font-weight: 800; color: #0a1f3d; }
.ev-product-v2__price .price { font-size: inherit; color: inherit; }
.ev-product-v2__price del { font-size: 18px; color: #98a2b3; font-weight: 500; margin-left: 8px; }
.ev-product-v2__price ins { text-decoration: none; color: #0a1f3d; }
.ev-product-v2__discount { background: #e63946; color: #fff; font-weight: 800; font-size: 14px; padding: 6px 10px; border-radius: 8px; }
.ev-product-v2__price-tax { font-size: 12px; color: #98a2b3; margin: 4px 0 8px; text-transform: uppercase; letter-spacing: .04em; }
.ev-product-v2__installments { display: inline-flex; align-items: center; gap: 8px; background: #f4f6fa; color: #0a1f3d; font-size: 13px; padding: 6px 12px; border-radius: 999px; margin: 0 0 14px; }
.ev-product-v2__installments .amount { font-weight: 700; }

.ev-product-v2__stock { font-size: 14px; font-weight: 600; margin: 12px 0 22px; display: inline-flex; align-items: center; gap: 6px; }
.ev-product-v2__stock--in  { color: #1f9d55; }
.ev-product-v2__stock--out { color: #e63946; }

/* Variations */
.ev-product-v2__form .variations { margin: 0 0 18px; border: 0; }
.ev-product-v2__form .variations,
.ev-product-v2__form .variations tr,
.ev-product-v2__form .variations td,
.ev-product-v2__form .variations th { display: block; width: 100%; padding: 0; }
.ev-product-v2__form .variations tr { display: grid; grid-template-columns: 1fr; gap: 8px; margin-bottom: 14px; }
.ev-product-v2__form .variations label { font-weight: 700; font-size: 13px; color: #0a1f3d; text-transform: capitalize; }
.ev-product-v2__form .variations select { width: 100%; padding: 10px 14px; border: 1px solid rgba(10,31,61,.15); border-radius: 10px; background: #fff; font-size: 14px; }
.ev-product-v2__form .reset_variations { font-size: 12px; color: #6b7a90; margin-left: 8px; }

/* Quantité + bouton */
.ev-product-v2__form form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; margin: 0; }
.ev-product-v2__form form.cart .quantity { display: inline-flex; align-items: stretch; border: 1px solid rgba(10,31,61,.15); border-radius: 12px; overflow: hidden; height: 56px; }
.ev-product-v2__form form.cart .quantity .qty { width: 56px; height: 56px; border: 0; text-align: center; font-size: 16px; font-weight: 700; background: #fff; -moz-appearance: textfield; }
.ev-product-v2__form form.cart .quantity .qty::-webkit-outer-spin-button,
.ev-product-v2__form form.cart .quantity .qty::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.ev-product-v2__form form.cart .quantity::before,
.ev-product-v2__form form.cart .quantity::after { content: ""; width: 38px; display: flex; align-items: center; justify-content: center; cursor: pointer; background: #f4f6fa; color: #0a1f3d; font-size: 20px; font-weight: 700; user-select: none; }
.ev-product-v2__form form.cart .quantity::before { content: "−"; order: -1; }
.ev-product-v2__form form.cart .quantity::after { content: "+"; }
.ev-product-v2__form form.cart .single_add_to_cart_button,
.ev-product-v2__form form.cart button.single_add_to_cart_button { flex: 1; min-width: 240px; height: 56px; background: #12b8b0; color: #fff !important; border: 0; border-radius: 12px; font-weight: 800; font-size: 15px; letter-spacing: .03em; text-transform: uppercase; cursor: pointer; transition: background .2s; display: inline-flex; align-items: center; justify-content: center; gap: 10px; }
.ev-product-v2__form form.cart .single_add_to_cart_button:hover { background: #0fa39c; }
.ev-product-v2__form form.cart .single_add_to_cart_button::before { content: ""; width: 18px; height: 18px; background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'><path d='M3 4h2l2 12h12l2-8H7'/><circle cx='9' cy='20' r='2'/><circle cx='18' cy='20' r='2'/></svg>") no-repeat center / contain; }

.ev-product-v2__wishlist-wrap { display: inline-flex; align-items: center; gap: 8px; height: 56px; padding: 0 18px; border: 1px solid rgba(10,31,61,.15); border-radius: 12px; background: #fff; cursor: pointer; }
.ev-product-v2__wishlist-wrap .ev-wishlist { background: transparent; border: 0; padding: 0; cursor: pointer; color: #0a1f3d; }
.ev-product-v2__wishlist-wrap .ev-wishlist svg { width: 20px; height: 20px; }
.ev-product-v2__wishlist-label { font-weight: 700; font-size: 13px; color: #0a1f3d; text-transform: uppercase; letter-spacing: .03em; }

/* Réassurance */
.ev-product-v2__reassurance { list-style: none; padding: 0; margin: 24px 0 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; }
.ev-product-v2__reassurance li { display: flex; align-items: center; gap: 10px; padding: 12px; border-radius: 12px; background: #f7f9fc; }
.ev-product-v2__reassurance svg { color: #12b8b0; width: 24px; height: 24px; flex-shrink: 0; }
.ev-product-v2__reassurance strong { display: block; font-size: 13px; font-weight: 700; color: #0a1f3d; line-height: 1.2; }
.ev-product-v2__reassurance em { font-style: normal; font-size: 12px; color: #6b7a90; line-height: 1.3; }

.product_meta { font-size: 12px; color: #6b7a90; margin-top: 18px; padding-top: 16px; border-top: 1px solid rgba(10,31,61,.08); }
.product_meta > span { display: block; margin-bottom: 4px; }

/* ---- Bloc conseil Econovape ---- */
.ev-product-v2__advice { display: grid; grid-template-columns: 180px 1fr; gap: 22px; align-items: center; background: #fff; border: 1px solid rgba(10,31,61,.10); border-radius: 18px; padding: 22px 28px; margin: 36px 0; box-shadow: 0 10px 26px rgba(10,31,61,.05); }
.ev-product-v2__advice:not(.ev-product-v2__advice--has-image) { grid-template-columns: 1fr; }
.ev-product-v2__advice-media img { width: 100%; max-width: 180px; height: auto; display: block; }
.ev-product-v2__advice-title { font-size: 18px; font-weight: 800; color: #0a1f3d; margin: 0 0 8px; letter-spacing: .04em; }
.ev-product-v2__advice-text { font-size: 14.5px; color: #4a5568; line-height: 1.55; margin: 0; }

/* ---- Onglets ---- */
.ev-product-v2__details .woocommerce-tabs { margin-top: 24px; }
.ev-product-v2__details .woocommerce-tabs ul.tabs { list-style: none; padding: 0 !important; margin: 0 0 24px !important; display: flex; flex-wrap: wrap; gap: 6px; border-bottom: 1px solid rgba(10,31,61,.1); }
.ev-product-v2__details .woocommerce-tabs ul.tabs::before,
.ev-product-v2__details .woocommerce-tabs ul.tabs::after { display: none !important; }
.ev-product-v2__details .woocommerce-tabs ul.tabs li { background: transparent !important; border: 0 !important; border-radius: 0 !important; padding: 0 !important; margin: 0 !important; }
.ev-product-v2__details .woocommerce-tabs ul.tabs li a { display: inline-block; padding: 14px 20px; font-weight: 700; font-size: 13px; color: #6b7a90; text-decoration: none; text-transform: uppercase; letter-spacing: .05em; border-bottom: 3px solid transparent; transition: all .2s; }
.ev-product-v2__details .woocommerce-tabs ul.tabs li a:hover { color: #0a1f3d; }
.ev-product-v2__details .woocommerce-tabs ul.tabs li.active a { color: #12b8b0; border-bottom-color: #12b8b0; }
.ev-product-v2__details .woocommerce-Tabs-panel { padding: 8px 0 12px; }
.ev-product-v2__details .woocommerce-Tabs-panel h2 { display: none; }
.ev-product-v2__details .shop_attributes { width: 100%; border-collapse: collapse; }
.ev-product-v2__details .shop_attributes th,
.ev-product-v2__details .shop_attributes td { padding: 12px 14px; border: 0 !important; border-bottom: 1px solid rgba(10,31,61,.08) !important; font-size: 14px; text-align: left; background: transparent !important; }
.ev-product-v2__details .shop_attributes th { font-weight: 700; color: #0a1f3d; width: 240px; }
.ev-product-v2__details .shop_attributes td { color: #4a5568; }

/* Onglet produits associés */
.ev-product-related__head { display: flex; justify-content: space-between; align-items: baseline; margin-bottom: 18px; gap: 16px; }
.ev-product-related__title { font-size: 22px; font-weight: 800; color: #0a1f3d; margin: 0; }
.ev-product-related__link { color: #12b8b0; font-weight: 700; font-size: 14px; text-decoration: none; }
.ev-product-related__link:hover { text-decoration: underline; }
.ev-product-related__grid { display: grid !important; grid-template-columns: repeat(6, minmax(0, 1fr)) !important; gap: 16px !important; padding: 0 !important; margin: 0 !important; list-style: none !important; }
.ev-product-related__grid::before,
.ev-product-related__grid::after { display: none !important; }
.ev-product-related__grid > li { width: auto !important; margin: 0 !important; float: none !important; clear: none !important; }

/* ---- Responsive ---- */
@media (max-width: 1100px) {
	.ev-product-related__grid { grid-template-columns: repeat(4, minmax(0,1fr)) !important; }
}
@media (max-width: 960px) {
	.ev-product-v2__layout { grid-template-columns: 1fr; gap: 28px; }
	.ev-product-v2__title { font-size: 28px; }
	.ev-product-v2__price { font-size: 28px; }
	.ev-product-v2__advice { grid-template-columns: 1fr; text-align: center; padding: 22px; }
	.ev-product-v2__advice-media img { margin: 0 auto; max-width: 140px; }
	.ev-product-related__grid { grid-template-columns: repeat(3, minmax(0,1fr)) !important; }
}
@media (max-width: 700px) {
	.ev-product-v2 { padding: 12px 16px 50px; }
	.ev-product-v2__gallery .woocommerce-product-gallery { grid-template-columns: 1fr; }
	.ev-product-v2__gallery .flex-control-thumbs { flex-direction: row; overflow-x: auto; }
	.ev-product-v2__gallery .flex-control-thumbs li { flex: 0 0 70px; }
	.ev-product-v2__form form.cart { flex-direction: column; }
	.ev-product-v2__form form.cart .quantity,
	.ev-product-v2__form form.cart .single_add_to_cart_button,
	.ev-product-v2__wishlist-wrap { width: 100%; }
	.ev-product-v2__wishlist-wrap { justify-content: center; }
	.ev-product-v2__reassurance { grid-template-columns: 1fr; }
	.ev-product-related__grid { grid-template-columns: repeat(2, minmax(0,1fr)) !important; }
	.ev-product-v2__details .woocommerce-tabs ul.tabs { overflow-x: auto; flex-wrap: nowrap; }
	.ev-product-v2__details .woocommerce-tabs ul.tabs li a { white-space: nowrap; padding: 12px 14px; }
}


/* =========================================================
   ECONOVAPE v1.7.0 — Fiche produit reprise proprement
   Objectif : vrai layout premium, image grande, conseils éditables,
   produits associés visibles et quantité fonctionnelle.
========================================================= */

body.single-product .ev-container.ev-single-product {
  max-width: none !important;
  width: 100% !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.single-product .ev-single-product .ev-main,
body.single-product .ev-main--full {
  width: 100% !important;
}

body.single-product .ev-product-v2 {
  max-width: 1320px !important;
  width: 100% !important;
  margin: 0 auto !important;
  padding: 24px 28px 70px !important;
  box-sizing: border-box !important;
}

body.single-product .ev-product-v2__layout {
  display: grid !important;
  grid-template-columns: minmax(560px, 1.08fr) minmax(420px, .92fr) !important;
  gap: 56px !important;
  align-items: start !important;
}

/* Galerie : grande image lisible, pas miniature perdue dans un grand bloc */
body.single-product .ev-product-v2__gallery {
  min-height: 620px !important;
  padding: 16px !important;
  border-radius: 22px !important;
  background: #fff !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery {
  display: grid !important;
  grid-template-columns: 92px minmax(0, 1fr) !important;
  gap: 16px !important;
  width: 100% !important;
  float: none !important;
  opacity: 1 !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__wrapper {
  grid-column: 2 !important;
  margin: 0 !important;
  width: 100% !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image,
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image a {
  width: 100% !important;
  min-height: 585px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff !important;
  border-radius: 16px !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image img,
body.single-product .ev-product-v2__gallery img.wp-post-image {
  width: 100% !important;
  height: 585px !important;
  max-height: 585px !important;
  object-fit: contain !important;
  object-position: center center !important;
  border-radius: 16px !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs {
  grid-column: 1 !important;
  grid-row: 1 !important;
  order: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
  max-height: 585px !important;
  overflow: auto !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs li {
  width: 86px !important;
  min-width: 86px !important;
  margin: 0 !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs img {
  width: 86px !important;
  height: 86px !important;
  object-fit: contain !important;
  padding: 6px !important;
  border-radius: 12px !important;
  background: #fff !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__trigger {
  right: 24px !important;
  bottom: 24px !important;
  top: auto !important;
  z-index: 20 !important;
}

/* Colonne infos plus proche de la maquette */
body.single-product .ev-product-v2__summary {
  padding-top: 4px !important;
  max-width: 520px !important;
}

body.single-product .ev-product-v2__title {
  font-size: 36px !important;
  line-height: 1.08 !important;
  margin-bottom: 12px !important;
}

body.single-product .ev-product-v2__price,
body.single-product .ev-product-v2__price .price {
  font-size: 40px !important;
  line-height: 1.1 !important;
}

body.single-product .ev-product-v2__stock {
  background: rgba(18,184,176,.10) !important;
  color: #078d76 !important;
  padding: 14px 18px !important;
  border-radius: 12px !important;
  margin: 16px 0 22px !important;
  font-weight: 800 !important;
}

/* Variations / selects plus propres */
body.single-product .ev-product-v2__form .variations tr {
  margin-bottom: 12px !important;
}

body.single-product .ev-product-v2__form .variations select {
  height: 42px !important;
  max-width: 260px !important;
  font-weight: 700 !important;
}

/* Quantité : vrais boutons JS, plus de pseudo-éléments non cliquables */
body.single-product .ev-product-v2__form form.cart .quantity {
  display: inline-grid !important;
  grid-template-columns: 44px 58px 44px !important;
  align-items: center !important;
  height: 48px !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  background: #fff !important;
}

body.single-product .ev-product-v2__form form.cart .quantity::before,
body.single-product .ev-product-v2__form form.cart .quantity::after {
  content: none !important;
  display: none !important;
}

body.single-product .ev-product-v2__qty-btn {
  width: 44px !important;
  height: 48px !important;
  border: 0 !important;
  background: #f4f6fa !important;
  color: #0a1f3d !important;
  font-size: 20px !important;
  font-weight: 900 !important;
  cursor: pointer !important;
}

body.single-product .ev-product-v2__form form.cart .quantity .qty {
  width: 58px !important;
  height: 48px !important;
  font-size: 16px !important;
}

body.single-product .ev-product-v2__form form.cart {
  gap: 14px !important;
  align-items: center !important;
}

body.single-product .ev-product-v2__form form.cart .single_add_to_cart_button,
body.single-product .ev-product-v2__form form.cart button.single_add_to_cart_button {
  height: 56px !important;
  min-width: 280px !important;
  max-width: 360px !important;
  border-radius: 12px !important;
  box-shadow: 0 14px 28px rgba(18,184,176,.24) !important;
}

body.single-product .ev-product-v2__wishlist-wrap {
  min-width: 260px !important;
  justify-content: center !important;
}

/* Réassurance alignée comme sur la maquette */
body.single-product .ev-product-v2__reassurance {
  margin-top: 22px !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 14px !important;
}

/* Conseil Econovape : image plus grande et texte vraiment éditable */
body.single-product .ev-product-v2__advice {
  max-width: 980px !important;
  margin: 34px 0 42px auto !important;
  display: grid !important;
  grid-template-columns: 240px 1fr !important;
  gap: 26px !important;
  align-items: center !important;
  padding: 26px 34px !important;
  border: 1px solid rgba(18,184,176,.30) !important;
  border-left: 5px solid #12b8b0 !important;
  border-radius: 20px !important;
  background: linear-gradient(90deg, rgba(18,184,176,.08), #fff 45%) !important;
}

body.single-product .ev-product-v2__advice-media img {
  width: 220px !important;
  max-width: 220px !important;
  height: 220px !important;
  object-fit: cover !important;
  object-position: center !important;
  border-radius: 0 !important;
}

body.single-product .ev-product-v2__advice-title {
  font-size: 18px !important;
  color: #0a1f3d !important;
  text-transform: uppercase !important;
}

body.single-product .ev-product-v2__advice-title::before {
  content: "✦";
  color: #12b8b0;
  margin-right: 10px;
}

body.single-product .ev-product-v2__advice-text {
  font-size: 15.5px !important;
  line-height: 1.65 !important;
  color: #2d3a4f !important;
}

/* Onglets : uniquement description / caractéristiques / avis */
body.single-product .ev-product-v2__details {
  clear: both !important;
  margin-top: 20px !important;
}

body.single-product .ev-product-v2__details .tabs li#tab-title-ev_related,
body.single-product .ev-product-v2__details #tab-ev_related {
  display: none !important;
}

/* Produits associés visibles directement en bas, pas dans un onglet */
body.single-product .ev-product-v2__related-visible {
  margin-top: 34px !important;
  padding-top: 16px !important;
}

body.single-product .ev-product-v2__related-visible .ev-product-related__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  margin-bottom: 18px !important;
}

body.single-product .ev-product-v2__related-visible .ev-product-related__title {
  font-size: 24px !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
  text-transform: uppercase !important;
}

body.single-product .ev-product-v2__related-visible .ev-product-related__grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0,1fr)) !important;
  gap: 18px !important;
}

@media (max-width: 1180px) {
  body.single-product .ev-product-v2__layout {
    grid-template-columns: 1fr !important;
  }
  body.single-product .ev-product-v2__summary {
    max-width: 100% !important;
  }
  body.single-product .ev-product-v2__advice {
    margin-left: 0 !important;
    max-width: 100% !important;
  }
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid {
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  }
}

@media (max-width: 760px) {
  body.single-product .ev-product-v2 {
    padding: 16px 14px 50px !important;
  }
  body.single-product .ev-product-v2__gallery {
    min-height: auto !important;
  }
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery {
    grid-template-columns: 1fr !important;
  }
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__wrapper {
    grid-column: 1 !important;
  }
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image a,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image img,
  body.single-product .ev-product-v2__gallery img.wp-post-image {
    min-height: 330px !important;
    height: 330px !important;
    max-height: 330px !important;
  }
  body.single-product .ev-product-v2__gallery .flex-control-thumbs {
    grid-column: 1 !important;
    grid-row: auto !important;
    flex-direction: row !important;
    max-height: none !important;
  }
  body.single-product .ev-product-v2__advice {
    grid-template-columns: 1fr !important;
    text-align: left !important;
  }
  body.single-product .ev-product-v2__advice-media img {
    width: 160px !important;
    height: 160px !important;
  }
  body.single-product .ev-product-v2__reassurance,
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
}

@media (max-width: 520px) {
  body.single-product .ev-product-v2__reassurance,
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid {
    grid-template-columns: 1fr !important;
  }
  body.single-product .ev-product-v2__form form.cart .single_add_to_cart_button,
  body.single-product .ev-product-v2__wishlist-wrap {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
  }
}


/* =========================================================
   ECONOVAPE v1.7.1 — Finalisation fiche produit uniquement
   Ajustements ciblés : galerie stable, conseil dans la colonne infos,
   quantité native renforcée, produits associés hors onglets.
========================================================= */
body.single-product .ev-product-v2 {
  max-width: 1320px !important;
  padding-top: 26px !important;
}

body.single-product .ev-product-v2__layout {
  grid-template-columns: minmax(560px, 1.08fr) minmax(440px, .92fr) !important;
  gap: 52px !important;
}

body.single-product .ev-product-v2__gallery {
  border: 1px solid rgba(10,31,61,.10) !important;
  box-shadow: 0 18px 42px rgba(10,31,61,.055) !important;
}

body.single-product .ev-product-v2__gallery.ev-product-v2__gallery--single .woocommerce-product-gallery,
body.single-product .ev-product-v2__gallery:not(:has(.flex-control-thumbs)) .woocommerce-product-gallery {
  grid-template-columns: 1fr !important;
}

body.single-product .ev-product-v2__gallery.ev-product-v2__gallery--single .woocommerce-product-gallery__wrapper,
body.single-product .ev-product-v2__gallery:not(:has(.flex-control-thumbs)) .woocommerce-product-gallery__wrapper {
  grid-column: 1 !important;
}

body.single-product .ev-product-v2__gallery.ev-product-v2__gallery--single .woocommerce-product-gallery__image,
body.single-product .ev-product-v2__gallery.ev-product-v2__gallery--single .woocommerce-product-gallery__image a {
  min-height: 585px !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__wrapper {
  min-width: 0 !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image img,
body.single-product .ev-product-v2__gallery img.wp-post-image {
  object-fit: contain !important;
  object-position: center center !important;
}

body.single-product .ev-product-v2__photo-note svg {
  color: #8b98aa !important;
}

body.single-product .ev-product-v2__summary {
  max-width: 560px !important;
}

body.single-product .ev-product-v2__price-row {
  align-items: baseline !important;
}

body.single-product .ev-product-v2__form form.cart {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
}

body.single-product .ev-product-v2__form form.cart .quantity.ev-qty-ready {
  display: inline-grid !important;
  grid-template-columns: 44px 58px 44px !important;
}

body.single-product .ev-product-v2__form form.cart .quantity input.qty {
  order: 2 !important;
  border-left: 1px solid rgba(10,31,61,.08) !important;
  border-right: 1px solid rgba(10,31,61,.08) !important;
}

body.single-product .ev-product-v2__qty-minus { order: 1 !important; }
body.single-product .ev-product-v2__qty-plus { order: 3 !important; }

body.single-product .ev-product-v2__form form.cart .single_add_to_cart_button,
body.single-product .ev-product-v2__form form.cart button.single_add_to_cart_button {
  background: linear-gradient(135deg, #12b8b0 0%, #069a9a 100%) !important;
  box-shadow: 0 15px 28px rgba(18,184,176,.28) !important;
}

body.single-product .ev-product-v2__form form.cart .single_add_to_cart_button.disabled,
body.single-product .ev-product-v2__form form.cart .single_add_to_cart_button.wc-variation-selection-needed,
body.single-product .ev-product-v2__form form.cart .single_add_to_cart_button:disabled {
  opacity: .55 !important;
  cursor: not-allowed !important;
  box-shadow: none !important;
}

body.single-product .ev-product-v2__reassurance {
  margin-bottom: 22px !important;
}

body.single-product .ev-product-v2__summary .product_meta {
  margin: 8px 0 0 !important;
  font-size: 12px !important;
  color: #8b98aa !important;
}

body.single-product .ev-product-v2__summary .ev-product-v2__advice {
  width: 100% !important;
  max-width: 100% !important;
  margin: 26px 0 0 !important;
  grid-template-columns: 170px 1fr !important;
  gap: 22px !important;
  padding: 22px 24px !important;
  border-left: 0 !important;
  border-color: rgba(18,184,176,.25) !important;
  border-radius: 20px !important;
  box-shadow: 0 16px 34px rgba(10,31,61,.06) !important;
  background: linear-gradient(135deg, rgba(18,184,176,.08), #fff 55%) !important;
}

body.single-product .ev-product-v2__summary .ev-product-v2__advice-media img {
  width: 170px !important;
  max-width: 170px !important;
  height: 170px !important;
  object-fit: contain !important;
}

body.single-product .ev-product-v2__summary .ev-product-v2__advice-title {
  margin-bottom: 8px !important;
  font-size: 18px !important;
  font-weight: 950 !important;
}

body.single-product .ev-product-v2__details .woocommerce-tabs ul.tabs {
  border-bottom: 1px solid rgba(10,31,61,.12) !important;
}

body.single-product .ev-product-v2__details .woocommerce-tabs ul.tabs li a {
  text-transform: uppercase !important;
  font-weight: 850 !important;
  letter-spacing: .02em !important;
}

body.single-product .ev-product-v2__related-visible {
  clear: both !important;
  margin-top: 36px !important;
}

body.single-product .ev-product-v2__related-visible .ev-product-related__title {
  margin: 0 !important;
}

body.single-product .ev-product-v2__related-visible .ev-product-related__link {
  color: #0a1f3d !important;
  font-weight: 800 !important;
  text-decoration: none !important;
}

@media (max-width: 1180px) {
  body.single-product .ev-product-v2__layout {
    grid-template-columns: 1fr !important;
  }
  body.single-product .ev-product-v2__summary {
    max-width: 100% !important;
  }
}

@media (max-width: 760px) {
  body.single-product .ev-product-v2__summary .ev-product-v2__advice {
    grid-template-columns: 125px 1fr !important;
    padding: 18px !important;
  }
  body.single-product .ev-product-v2__summary .ev-product-v2__advice-media img {
    width: 125px !important;
    height: 125px !important;
  }
}

@media (max-width: 560px) {
  body.single-product .ev-product-v2__summary .ev-product-v2__advice {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }
  body.single-product .ev-product-v2__summary .ev-product-v2__advice-media img {
    margin: 0 auto !important;
  }
}

/* =========================================================
   ECONOVAPE — Correctif fiche produit v1.7.2
   Objectif : utiliser toute la largeur utile desktop et neutraliser
   les largeurs/flottements WooCommerce natifs sur la fiche produit.
========================================================= */
body.single-product .ev-container.ev-single-product,
body.single-product .ev-single-product,
body.single-product .ev-single-product .ev-main,
body.single-product .ev-single-product .ev-main--full {
  width: 100% !important;
  max-width: none !important;
}

body.single-product .ev-product-v2 {
  width: min(100%, 1320px) !important;
  max-width: 1320px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
}

body.single-product .ev-product-v2__layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.08fr) minmax(480px, .92fr) !important;
  gap: 52px !important;
  align-items: start !important;
  width: 100% !important;
}

body.single-product .ev-product-v2__media,
body.single-product .ev-product-v2__summary,
body.single-product div.product .ev-product-v2__summary,
body.single-product div.product div.summary.ev-product-v2__summary {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  clear: none !important;
}

body.single-product div.product .ev-product-v2__gallery .woocommerce-product-gallery,
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
}

body.single-product .ev-product-v2__title {
  max-width: 100% !important;
}

@media (min-width: 1440px) {
  body.single-product .ev-product-v2 {
    max-width: 1380px !important;
  }
}

@media (max-width: 1180px) {
  body.single-product .ev-product-v2__layout {
    grid-template-columns: minmax(0, 1fr) minmax(420px, .9fr) !important;
    gap: 34px !important;
  }
}

@media (max-width: 960px) {
  body.single-product .ev-product-v2 {
    width: 100% !important;
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  body.single-product .ev-product-v2__layout {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}

/* =========================================================
   ECONOVAPE — Fiche produit v1.7.6
   Correction propre : galerie WooCommerce native conservée,
   miniatures sous l'image, image fixe au survol.
========================================================= */

body.single-product .ev-container.ev-single-product,
body.single-product .ev-single-product,
body.single-product .ev-single-product .ev-main,
body.single-product .ev-single-product .ev-main--full {
  width: 100% !important;
  max-width: none !important;
}

body.single-product .ev-product-v2 {
  width: min(100%, 1320px) !important;
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 18px 20px 42px !important;
  box-sizing: border-box !important;
}

@media (min-width: 961px) {
  body.single-product .ev-product-v2__layout {
    display: grid !important;
    grid-template-columns: minmax(0, 52%) minmax(420px, 48%) !important;
    gap: 38px !important;
    align-items: start !important;
  }
}

/* Galerie : on garde le fonctionnement natif WooCommerce/Flexslider */
body.single-product .ev-product-v2__media,
body.single-product .ev-product-v2__gallery {
  min-width: 0 !important;
}

body.single-product .ev-product-v2__gallery {
  background: #ffffff !important;
  border: 1px solid rgba(10, 31, 61, 0.08) !important;
  border-radius: 22px !important;
  padding: 14px !important;
  box-shadow: 0 16px 38px rgba(10, 31, 61, 0.055) !important;
  overflow: visible !important;
}

body.single-product div.product .ev-product-v2__gallery .woocommerce-product-gallery,
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
}

body.single-product .ev-product-v2__gallery .flex-viewport {
  width: 100% !important;
  height: 500px !important;
  min-height: 500px !important;
  max-height: 500px !important;
  overflow: hidden !important;
  border-radius: 16px !important;
  background: #ffffff !important;
}

/* Important : ne pas bloquer transform sur le wrapper, sinon les miniatures WooCommerce ne changent plus l'image. */
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image,
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image a {
  min-height: 500px !important;
  height: 500px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ffffff !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image img:not(.zoomImg),
body.single-product .ev-product-v2__gallery img.wp-post-image {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 500px !important;
  max-height: 500px !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #ffffff !important;
  transform: none !important;
  transition: none !important;
  animation: none !important;
}

/* Image fixe au survol : on neutralise le clone de zoom, pas l'image principale. */
body.single-product .ev-product-v2__gallery .zoomImg {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:hover img:not(.zoomImg),
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image a:hover img:not(.zoomImg) {
  transform: none !important;
}

/* Miniatures : sous l'image, jamais collées à gauche de la carte. */
body.single-product .ev-product-v2__gallery .flex-control-thumbs {
  position: static !important;
  width: 100% !important;
  max-height: none !important;
  margin: 12px 0 0 !important;
  padding: 2px 2px 4px !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  list-style: none !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs li {
  width: 70px !important;
  min-width: 70px !important;
  height: 70px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(10, 31, 61, 0.12) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs img {
  display: block !important;
  width: 70px !important;
  height: 70px !important;
  padding: 5px !important;
  object-fit: contain !important;
  border-radius: 12px !important;
  opacity: 0.72 !important;
  cursor: pointer !important;
  background: #ffffff !important;
  transition: opacity .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs img:hover,
body.single-product .ev-product-v2__gallery .flex-control-thumbs img.flex-active {
  opacity: 1 !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__trigger {
  right: 22px !important;
  bottom: 22px !important;
  top: auto !important;
  z-index: 8 !important;
}

body.single-product .ev-product-v2__media-foot {
  margin: 10px 0 0 !important;
}

/* Colonne achat plus compacte */
body.single-product .ev-product-v2__summary {
  padding-top: 4px !important;
}
body.single-product .ev-product-v2__badge-row { margin-bottom: 10px !important; }
body.single-product .ev-product-v2__title { margin-bottom: 8px !important; }
body.single-product .ev-product-v2__rating { margin-bottom: 12px !important; }
body.single-product .ev-product-v2__price-tax { margin-bottom: 6px !important; }
body.single-product .ev-product-v2__stock {
  margin: 8px 0 10px !important;
  padding: 9px 14px !important;
  border-radius: 10px !important;
}
body.single-product .ev-product-v2__form .variations { margin-bottom: 6px !important; }
body.single-product .ev-product-v2__form .variations tr { margin-bottom: 6px !important; gap: 5px !important; }
body.single-product .ev-product-v2__form .single_variation_wrap,
body.single-product .ev-product-v2__form .woocommerce-variation,
body.single-product .ev-product-v2__form .woocommerce-variation-availability { margin: 3px 0 6px !important; }
body.single-product .ev-product-v2__form .woocommerce-variation-availability p.stock,
body.single-product .ev-product-v2__form p.stock { margin: 0 0 6px !important; }
body.single-product .ev-product-v2__form form.cart { gap: 9px !important; }

/* Conseil Econovape sous la galerie */
body.single-product .ev-product-v2__summary .ev-product-v2__advice { display: none !important; }
body.single-product .ev-product-v2__advice--media {
  margin: 18px 0 0 !important;
  display: grid !important;
  grid-template-columns: 150px 1fr !important;
  gap: 18px !important;
  align-items: center !important;
  padding: 18px 22px !important;
  border: 1px solid rgba(18,184,176,.22) !important;
  border-radius: 20px !important;
  background: linear-gradient(135deg, rgba(18,184,176,.08), #fff 55%) !important;
  box-shadow: 0 14px 32px rgba(10,31,61,.055) !important;
}
body.single-product .ev-product-v2__advice--media .ev-product-v2__advice-media img {
  width: 145px !important;
  height: 145px !important;
  max-width: 145px !important;
  object-fit: contain !important;
}
body.single-product .ev-product-v2__advice--media .ev-product-v2__advice-title {
  margin-bottom: 8px !important;
  font-size: 18px !important;
  font-weight: 950 !important;
}
body.single-product .ev-product-v2__advice--media .ev-product-v2__advice-text {
  font-size: 14.5px !important;
  line-height: 1.55 !important;
}

/* Produits associés visibles en pleine largeur avant les onglets */
body.single-product .ev-product-v2__related-visible {
  margin-top: 26px !important;
  padding: 22px 24px 26px !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 12px 30px rgba(10,31,61,.045) !important;
}

body.single-product .ev-product-v2__related-visible .ev-product-related__grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
}

@media (max-width: 960px) {
  body.single-product .ev-product-v2 {
    padding-left: 18px !important;
    padding-right: 18px !important;
  }
  body.single-product .ev-product-v2__layout {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  body.single-product .ev-product-v2__gallery .flex-viewport,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image a,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image img:not(.zoomImg),
  body.single-product .ev-product-v2__gallery img.wp-post-image {
    height: 390px !important;
    min-height: 390px !important;
    max-height: 390px !important;
  }
  body.single-product .ev-product-v2__advice--media {
    grid-template-columns: 130px 1fr !important;
    padding: 18px !important;
  }
  body.single-product .ev-product-v2__advice--media .ev-product-v2__advice-media img {
    width: 125px !important;
    height: 125px !important;
  }
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 560px) {
  body.single-product .ev-product-v2__gallery .flex-viewport,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image a,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image img:not(.zoomImg),
  body.single-product .ev-product-v2__gallery img.wp-post-image {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
  }
  body.single-product .ev-product-v2__gallery .flex-control-thumbs li,
  body.single-product .ev-product-v2__gallery .flex-control-thumbs img {
    width: 58px !important;
    min-width: 58px !important;
    height: 58px !important;
  }
  body.single-product .ev-product-v2__advice--media {
    grid-template-columns: 1fr !important;
    text-align: center !important;
  }
  body.single-product .ev-product-v2__advice--media .ev-product-v2__advice-media img {
    margin: 0 auto !important;
  }
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid {
    grid-template-columns: 1fr !important;
  }
}

/* =========================================================
   ECONOVAPE — v1.7.7 — Galerie multi-images fiable
   Objectif : produit simple OK + produit avec plusieurs photos OK.
   On affiche une image principale fixe et les miniatures changent
   l'image principale via JS, sans dépendre du déplacement Flexslider.
========================================================= */

body.single-product .ev-product-v2__gallery {
  background: #ffffff !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 22px !important;
  padding: 14px !important;
  box-shadow: 0 16px 38px rgba(10,31,61,.055) !important;
  overflow: visible !important;
}

body.single-product div.product .ev-product-v2__gallery .woocommerce-product-gallery,
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
}

body.single-product .ev-product-v2__gallery .flex-viewport {
  width: 100% !important;
  height: 500px !important;
  min-height: 500px !important;
  max-height: 500px !important;
  overflow: hidden !important;
  border-radius: 16px !important;
  background: #ffffff !important;
}

/* On neutralise le slider uniquement visuellement : le JS Econovape gère le clic miniature. */
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__wrapper {
  width: 100% !important;
  max-width: 100% !important;
  height: 500px !important;
  min-height: 500px !important;
  max-height: 500px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  display: block !important;
  background: #ffffff !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image {
  width: 100% !important;
  max-width: 100% !important;
  height: 500px !important;
  min-height: 500px !important;
  max-height: 500px !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  background: #ffffff !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:first-child {
  display: flex !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:first-child a {
  width: 100% !important;
  height: 500px !important;
  min-height: 500px !important;
  max-height: 500px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #ffffff !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:first-child img:not(.zoomImg),
body.single-product .ev-product-v2__gallery img.wp-post-image:not(.zoomImg) {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: 500px !important;
  max-height: 500px !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #ffffff !important;
  transform: none !important;
  transition: none !important;
  animation: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:hover img:not(.zoomImg),
body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image a:hover img:not(.zoomImg) {
  transform: none !important;
}

body.single-product .ev-product-v2__gallery .zoomImg {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs {
  position: static !important;
  width: 100% !important;
  max-height: none !important;
  margin: 12px 0 0 !important;
  padding: 2px 2px 4px !important;
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  gap: 10px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  list-style: none !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs li {
  width: 70px !important;
  min-width: 70px !important;
  height: 70px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(10,31,61,.12) !important;
  border-radius: 12px !important;
  overflow: hidden !important;
  background: #ffffff !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs img {
  display: block !important;
  width: 70px !important;
  height: 70px !important;
  padding: 5px !important;
  object-fit: contain !important;
  border-radius: 12px !important;
  opacity: .72 !important;
  cursor: pointer !important;
  background: #ffffff !important;
  transition: opacity .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

body.single-product .ev-product-v2__gallery .flex-control-thumbs img:hover,
body.single-product .ev-product-v2__gallery .flex-control-thumbs img.flex-active,
body.single-product .ev-product-v2__gallery .flex-control-thumbs img.is-ev-active {
  opacity: 1 !important;
  box-shadow: 0 0 0 2px rgba(18,184,176,.16) !important;
}

body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__trigger {
  right: 22px !important;
  bottom: 22px !important;
  top: auto !important;
  z-index: 8 !important;
}

@media (max-width: 960px) {
  body.single-product .ev-product-v2__gallery .flex-viewport,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__wrapper,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:first-child a,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:first-child img:not(.zoomImg),
  body.single-product .ev-product-v2__gallery img.wp-post-image:not(.zoomImg) {
    height: 390px !important;
    min-height: 390px !important;
    max-height: 390px !important;
  }
}

@media (max-width: 560px) {
  body.single-product .ev-product-v2__gallery .flex-viewport,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__wrapper,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:first-child a,
  body.single-product .ev-product-v2__gallery .woocommerce-product-gallery__image:first-child img:not(.zoomImg),
  body.single-product .ev-product-v2__gallery img.wp-post-image:not(.zoomImg) {
    height: 300px !important;
    min-height: 300px !important;
    max-height: 300px !important;
  }

  body.single-product .ev-product-v2__gallery .flex-control-thumbs li,
  body.single-product .ev-product-v2__gallery .flex-control-thumbs img {
    width: 58px !important;
    min-width: 58px !important;
    height: 58px !important;
  }
}

/* =========================================================
   ECONOVAPE v1.8.2 — Produits associés fiche produit
   Version propre : compact, aligné, moins de blanc
========================================================= */
body.single-product .ev-product-v2__related-visible {
  margin-top: 24px !important;
  padding: 20px 22px 14px !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(10,31,61,.04) !important;
}
body.single-product .ev-product-v2__related-visible .ev-product-related__head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 16px !important;
}
body.single-product .ev-product-v2__related-visible .ev-product-related__title {
  margin: 0 !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #0a1f3d !important;
  text-transform: uppercase !important;
}
body.single-product .ev-product-v2__related-visible .ev-product-related__link {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #0a1f3d !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
body.single-product .ev-product-v2__related-visible .ev-product-related__link:hover { color: #18b7b0 !important; }
body.single-product .ev-product-v2__related-visible .ev-product-related__grid {
  display: grid !important;
  grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  gap: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  align-items: stretch !important;
}
body.single-product .ev-product-v2__related-visible .ev-product-related__grid::before,
body.single-product .ev-product-v2__related-visible .ev-product-related__grid::after { display: none !important; }
body.single-product .ev-product-v2__related-visible .ev-product-related__grid > li {
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  clear: none !important;
  min-height: 0 !important;
}
body.single-product .ev-product-v2__related-visible li.product.ev-card-premium {
  display: grid !important;
  grid-template-rows: auto 1fr !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 10px !important;
  margin: 0 !important;
  border-radius: 16px !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  background: #fff !important;
  box-shadow: none !important;
  transition: all .2s ease !important;
}
body.single-product .ev-product-v2__related-visible li.product.ev-card-premium:hover {
  border-color: #18b7b0 !important;
  box-shadow: 0 8px 20px rgba(10,31,61,.08) !important;
  transform: translateY(-2px) !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__media { margin: 0 0 10px !important; }
body.single-product .ev-product-v2__related-visible .ev-card-premium__image-link {
  display: block !important;
  border-radius: 12px !important;
  overflow: hidden !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__image {
  width: 100% !important;
  height: 125px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #f7fafc !important;
  border-radius: 12px !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__heart {
  transform: scale(.9) !important;
  transform-origin: top right !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__body {
  display: grid !important;
  grid-template-rows: 40px 17px 24px 38px 36px 40px;
  gap: 6px !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__title {
  grid-row: 1 !important;
  display: -webkit-box !important;
  -webkit-line-clamp: 2 !important;
  -webkit-box-orient: vertical !important;
  overflow: hidden !important;
  margin: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  color: #0a1f3d !important;
  text-decoration: none !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__cat {
  grid-row: 2 !important;
  margin: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
  color: #7b8794 !important;
  overflow: hidden !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__price {
  grid-row: 3 !important;
  margin: 0 !important;
  min-height: 0 !important;
  max-height: none !important;
  font-size: 15px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  color: #0a1f3d !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__select-wrap {
  grid-row: 4 !important;
  margin: 0 !important;
  min-height: 0 !important;
  height: 36px !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__select {
  width: 100% !important;
  height: 36px !important;
  min-height: 36px !important;
  margin: 0 !important;
  font-size: 12px !important;
  border-radius: 10px !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__body:not(:has(.ev-card-premium__select-wrap))::before {
  content: "" !important;
  display: block !important;
  grid-row: 4 !important;
  height: 36px !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__qty {
  grid-row: 5 !important;
  display: grid !important;
  grid-template-columns: 34px 1fr 34px !important;
  align-items: center !important;
  height: 34px !important;
  min-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 10px !important;
  overflow: hidden !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__qty-btn {
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  font-size: 18px !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__qty-input {
  height: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  font-size: 13px !important;
  text-align: center !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__add {
  grid-row: 6 !important;
  width: 100% !important;
  height: 38px !important;
  min-height: 38px !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  border-radius: 10px !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 6px !important;
  text-align: center !important;
}
body.single-product .ev-product-v2__related-visible .ev-card-premium__add strong,
body.single-product .ev-product-v2__related-visible .ev-card-premium__add-price {
  font-size: 12px !important;
  font-weight: 800 !important;
}
@media (max-width: 1400px) {
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid { grid-template-columns: repeat(5, minmax(0, 1fr)) !important; }
}
@media (max-width: 1200px) {
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid { grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (max-width: 900px) {
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 640px) {
  body.single-product .ev-product-v2__related-visible { padding: 18px 16px 14px !important; }
  body.single-product .ev-product-v2__related-visible .ev-product-related__head {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  body.single-product .ev-product-v2__related-visible .ev-product-related__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  body.single-product .ev-product-v2__related-visible .ev-card-premium__image { height: 115px !important; }
  body.single-product .ev-product-v2__related-visible .ev-card-premium__body { grid-template-rows: 42px 17px 24px 38px 36px 40px !important; }
}

/* =========================================================
   ECONOVAPE v1.8.2 — Panier : récapitulatif simplifié
========================================================= */
body.woocommerce-cart .ev-cart-summary__line--shipping-next strong {
  max-width: 190px;
  text-align: right;
  color: #0a1f3d;
  font-size: 13px;
  line-height: 1.35;
}
body.woocommerce-cart .ev-cart-summary__total span {
  max-width: 145px;
  line-height: 1.2;
}

/* =========================================================
   ECONOVAPE v1.8.6 — Newsletter footer prête pour WPForms
   Objectif : vrai encart newsletter propre, sans placeholder public.
========================================================= */
body .ev-newsletter {
  background: #ffffff !important;
  border-top: 1px solid rgba(10,31,61,.08) !important;
  border-bottom: 1px solid rgba(10,31,61,.06) !important;
  padding: 22px 0 !important;
  margin: 0 !important;
}

body .ev-newsletter__inner {
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(320px, 1fr) auto !important;
  align-items: center !important;
  gap: 22px !important;
}

body .ev-newsletter__intro {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  min-width: 0 !important;
}

body .ev-newsletter__icon {
  width: 44px !important;
  min-width: 44px !important;
  height: 44px !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, rgba(18,184,176,.12), rgba(10,31,61,.04)) !important;
  color: #12b8b0 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

body .ev-newsletter__intro strong {
  display: block !important;
  margin: 0 0 3px !important;
  color: #0a1f3d !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  text-transform: uppercase !important;
}

body .ev-newsletter__intro p {
  margin: 0 !important;
  color: #607089 !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body .ev-newsletter__form-wrap {
  width: 100% !important;
  max-width: 620px !important;
  justify-self: end !important;
}

body .ev-newsletter__form-wrap .wpforms-container,
body .ev-newsletter__form-wrap .wpforms-form,
body .ev-newsletter__form-wrap .wpforms-field-container {
  margin: 0 !important;
  padding: 0 !important;
}

body .ev-newsletter__form-wrap .wpforms-form {
  display: grid !important;
  grid-template-columns: 1fr auto !important;
  gap: 10px !important;
  align-items: start !important;
}

body .ev-newsletter__form-wrap .wpforms-field {
  padding: 0 !important;
  margin: 0 !important;
}

body .ev-newsletter__form-wrap .wpforms-field-label,
body .ev-newsletter__form-wrap .wpforms-field-sublabel,
body .ev-newsletter__form-wrap .wpforms-field-description {
  display: none !important;
}

body .ev-newsletter__form-wrap input[type="email"],
body .ev-newsletter__form-wrap input[type="text"] {
  width: 100% !important;
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  color: #0a1f3d !important;
  font-size: 14px !important;
  outline: none !important;
  box-shadow: none !important;
}

body .ev-newsletter__form-wrap input[type="email"]:focus,
body .ev-newsletter__form-wrap input[type="text"]:focus {
  border-color: #12b8b0 !important;
  box-shadow: 0 0 0 3px rgba(18,184,176,.12) !important;
}

body .ev-newsletter__form-wrap .wpforms-submit-container {
  margin: 0 !important;
  padding: 0 !important;
}

body .ev-newsletter__form-wrap button[type="submit"],
body .ev-newsletter__form-wrap input[type="submit"],
body .ev-newsletter__form-wrap .wpforms-submit {
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 22px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg, #12b8b0, #0aa39c) !important;
  color: #ffffff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  cursor: pointer !important;
  box-shadow: 0 10px 22px rgba(18,184,176,.18) !important;
}

body .ev-newsletter__form-wrap button[type="submit"]:hover,
body .ev-newsletter__form-wrap input[type="submit"]:hover,
body .ev-newsletter__form-wrap .wpforms-submit:hover {
  background: #0a1f3d !important;
}

body .ev-newsletter__legal {
  grid-column: 1 / -1 !important;
  margin: 6px 0 0 !important;
  color: #7b8794 !important;
  font-size: 11px !important;
  line-height: 1.3 !important;
}

body .ev-newsletter__admin-hint {
  padding: 13px 16px !important;
  border: 1px dashed rgba(18,184,176,.45) !important;
  border-radius: 14px !important;
  background: rgba(18,184,176,.06) !important;
  color: #607089 !important;
  font-size: 13px !important;
  font-style: italic !important;
  text-align: center !important;
}

body .ev-newsletter__social {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  color: #607089 !important;
  font-size: 13px !important;
  white-space: nowrap !important;
}

body .ev-newsletter__social .ev-social {
  width: 34px !important;
  height: 34px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #f4f7fa !important;
  color: #0a1f3d !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

body .ev-newsletter__social .ev-social:hover {
  background: #12b8b0 !important;
  color: #ffffff !important;
}

@media (max-width: 980px) {
  body .ev-newsletter__inner {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  body .ev-newsletter__form-wrap {
    max-width: none !important;
    justify-self: stretch !important;
  }

  body .ev-newsletter__social {
    justify-content: flex-start !important;
  }
}

@media (max-width: 560px) {
  body .ev-newsletter {
    padding: 18px 0 !important;
  }

  body .ev-newsletter__form-wrap .wpforms-form {
    grid-template-columns: 1fr !important;
  }

  body .ev-newsletter__form-wrap button[type="submit"],
  body .ev-newsletter__form-wrap input[type="submit"],
  body .ev-newsletter__form-wrap .wpforms-submit {
    width: 100% !important;
  }
}

/* =========================================================
   ECONOVAPE v1.8.7 — Newsletter à gauche + réseaux sociaux à droite
   Logos et liens pilotables depuis Apparence > Personnaliser > Footer.
========================================================= */
body .ev-newsletter {
  padding: 22px 0 !important;
}

body .ev-newsletter__inner {
  max-width: 1320px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  display: grid !important;
  grid-template-columns: minmax(260px, 360px) minmax(340px, 520px) minmax(180px, auto) !important;
  align-items: center !important;
  justify-content: start !important;
  gap: 22px !important;
}

body .ev-newsletter__form-wrap {
  width: 100% !important;
  max-width: 520px !important;
  justify-self: start !important;
  margin: 0 !important;
}

body .ev-newsletter__form-wrap .wpforms-form {
  display: grid !important;
  grid-template-columns: minmax(220px, 1fr) auto !important;
  gap: 10px !important;
  align-items: start !important;
}

body .ev-newsletter__form-wrap input[type="email"],
body .ev-newsletter__form-wrap input[type="text"] {
  height: 46px !important;
  min-height: 46px !important;
}

body .ev-newsletter__form-wrap button[type="submit"],
body .ev-newsletter__form-wrap input[type="submit"],
body .ev-newsletter__form-wrap .wpforms-submit {
  height: 46px !important;
  min-height: 46px !important;
  padding: 0 24px !important;
}

body .ev-newsletter__legal {
  grid-column: 1 / -1 !important;
  margin: 7px 0 0 !important;
  padding-left: 14px !important;
}

body .ev-newsletter__social {
  justify-self: end !important;
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  white-space: nowrap !important;
}

body .ev-newsletter__social-title {
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #0a1f3d !important;
}

body .ev-newsletter__social-icons {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

body .ev-newsletter__social .ev-social {
  width: 42px !important;
  height: 42px !important;
  min-width: 42px !important;
  border-radius: 999px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
  background: #f4f7fa !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  color: #0a1f3d !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}

body .ev-newsletter__social .ev-social:hover {
  transform: translateY(-2px) !important;
  border-color: rgba(18,184,176,.55) !important;
  box-shadow: 0 10px 22px rgba(10,31,61,.12) !important;
  background: #ffffff !important;
  color: #12b8b0 !important;
}

body .ev-newsletter__social .ev-social img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
  padding: 8px !important;
  margin: 0 !important;
}

body .ev-newsletter__social .ev-social span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
}

body .ev-newsletter__social .ev-social--facebook:not(:has(img)) {
  background: #1877f2 !important;
  color: #ffffff !important;
}

body .ev-newsletter__social .ev-social--instagram:not(:has(img)) {
  background: radial-gradient(circle at 30% 30%, #feda75, #d62976 55%, #4f5bd5) !important;
  color: #ffffff !important;
}

@media (max-width: 1100px) {
  body .ev-newsletter__inner {
    grid-template-columns: minmax(240px, 340px) minmax(320px, 1fr) !important;
  }

  body .ev-newsletter__social {
    grid-column: 1 / -1 !important;
    justify-self: start !important;
  }
}

@media (max-width: 760px) {
  body .ev-newsletter__inner {
    grid-template-columns: 1fr !important;
    gap: 16px !important;
    padding: 0 20px !important;
  }

  body .ev-newsletter__form-wrap {
    max-width: none !important;
    width: 100% !important;
  }

  body .ev-newsletter__social {
    justify-self: start !important;
  }
}

@media (max-width: 560px) {
  body .ev-newsletter__form-wrap .wpforms-form {
    grid-template-columns: 1fr !important;
  }

  body .ev-newsletter__form-wrap button[type="submit"],
  body .ev-newsletter__form-wrap input[type="submit"],
  body .ev-newsletter__form-wrap .wpforms-submit {
    width: 100% !important;
  }

  body .ev-newsletter__social {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 8px !important;
  }
}

/* =========================================================
   NEWSLETTER FOOTER — v1.8.8
   Objectif : bloc principal groupé à gauche, réseaux à droite.
   ========================================================= */
body .ev-newsletter {
  padding: 24px 0;
}

body .ev-newsletter__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  flex-wrap: nowrap;
}

body .ev-newsletter__main {
  display: flex;
  align-items: center;
  gap: 28px;
  flex: 1 1 auto;
  min-width: 0;
}

body .ev-newsletter__intro {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 0 0 auto;
  margin: 0;
}

body .ev-newsletter__intro strong {
  display: block;
  margin: 0 0 4px;
}

body .ev-newsletter__intro p {
  margin: 0;
  white-space: nowrap;
}

body .ev-newsletter__form-wrap {
  flex: 1 1 540px;
  max-width: 760px;
  min-width: 320px;
  margin: 0;
}

body .ev-newsletter__form-wrap .wpforms-container,
body .ev-newsletter__form-wrap .wpforms-form {
  width: 100%;
}

body .ev-newsletter__form-wrap .wpforms-form {
  display: flex !important;
  align-items: center;
  gap: 14px;
  flex-wrap: nowrap;
}

body .ev-newsletter__form-wrap .wpforms-field-container {
  flex: 1 1 auto;
  min-width: 0;
}

body .ev-newsletter__form-wrap .wpforms-field {
  margin: 0 !important;
  padding: 0 !important;
}

body .ev-newsletter__form-wrap .wpforms-submit-container {
  margin: 0 !important;
  padding: 0 !important;
  flex: 0 0 auto;
}

body .ev-newsletter__form-wrap input[type="email"],
body .ev-newsletter__form-wrap input[type="text"] {
  width: 100% !important;
  height: 52px;
  border-radius: 999px;
  padding: 0 22px;
}

body .ev-newsletter__form-wrap button[type="submit"],
body .ev-newsletter__form-wrap input[type="submit"],
body .ev-newsletter__form-wrap .wpforms-submit {
  min-width: 124px;
  height: 52px;
  border-radius: 999px;
  padding: 0 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
}

body .ev-newsletter__legal {
  margin: 8px 0 0;
  padding-left: 4px;
}

body .ev-newsletter__social {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex: 0 0 auto;
  margin: 0;
  white-space: nowrap;
}

body .ev-newsletter__social-title {
  margin: 0;
  font-weight: 700;
  color: var(--ev-navy);
}

body .ev-newsletter__social-icons {
  display: flex;
  align-items: center;
  gap: 10px;
}

@media (max-width: 1200px) {
  body .ev-newsletter__inner {
    flex-wrap: wrap;
    align-items: flex-start;
  }

  body .ev-newsletter__main {
    width: 100%;
  }

  body .ev-newsletter__social {
    width: 100%;
    justify-content: flex-start;
    padding-left: 56px;
  }
}

@media (max-width: 820px) {
  body .ev-newsletter__main {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }

  body .ev-newsletter__form-wrap {
    width: 100%;
    max-width: none;
    min-width: 0;
  }

  body .ev-newsletter__form-wrap .wpforms-form {
    flex-wrap: wrap;
  }

  body .ev-newsletter__form-wrap .wpforms-field-container,
  body .ev-newsletter__form-wrap .wpforms-submit-container,
  body .ev-newsletter__form-wrap button[type="submit"],
  body .ev-newsletter__form-wrap input[type="submit"],
  body .ev-newsletter__form-wrap .wpforms-submit {
    width: 100%;
  }

  body .ev-newsletter__intro p {
    white-space: normal;
  }

  body .ev-newsletter__social {
    padding-left: 0;
  }
}

/* =========================================================
   ECONOVAPE v1.8.9 — Age gate + connexion client
========================================================= */
.ev-agegate {
  position: fixed;
  inset: 0;
  z-index: 999999;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 22px;
  font-family: var(--ev-font, 'Plus Jakarta Sans', Arial, sans-serif);
}

.ev-agegate.is-visible {
  display: flex;
}

.ev-agegate__backdrop {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 15% 25%, rgba(18,184,176,.22), transparent 30%),
    radial-gradient(circle at 85% 35%, rgba(174,54,174,.22), transparent 32%),
    rgba(5, 12, 28, .78);
  backdrop-filter: blur(10px);
}

.ev-agegate__panel {
  position: relative;
  width: min(1180px, calc(100vw - 44px));
  max-height: calc(100vh - 44px);
  display: grid;
  grid-template-columns: 1fr 1fr;
  overflow: auto;
  border-radius: 18px;
  background: #fff;
  color: #0a1f3d;
  box-shadow: 0 28px 80px rgba(0,0,0,.35);
}

.ev-agegate__age,
.ev-agegate__login {
  padding: clamp(28px, 4.8vw, 64px);
  min-width: 0;
}

.ev-agegate__age {
  background: #fff;
  text-align: center;
}

.ev-agegate__login {
  background: linear-gradient(180deg, #fbfcff 0%, #f6f8fc 100%);
}

.ev-agegate__brand {
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 26px;
}

.ev-agegate__logo {
  max-width: 260px;
  max-height: 110px;
  width: auto;
  height: auto;
  object-fit: contain;
}

.ev-agegate__site-name {
  font-size: 34px;
  line-height: 1;
  font-weight: 900;
  color: #0a1f3d;
  letter-spacing: -.04em;
}

.ev-agegate__warning {
  display: inline-flex;
  align-items: center;
  gap: 22px;
  margin: 0 auto 26px;
  text-align: left;
}

.ev-agegate__badge {
  width: 84px;
  height: 84px;
  flex: 0 0 84px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 5px solid #12b8b0;
  color: #0a1f3d;
  font-size: 30px;
  font-weight: 900;
  box-shadow: 0 10px 26px rgba(18,184,176,.18);
}

.ev-agegate__warning h2 {
  margin: 0;
  font-size: clamp(22px, 2.3vw, 31px);
  line-height: 1.18;
  font-weight: 900;
  color: #0a1f3d;
  letter-spacing: -.03em;
}

.ev-agegate__text {
  margin: 0 auto 38px;
  max-width: 520px;
  color: #25324a;
  font-size: 17px;
  line-height: 1.72;
  font-weight: 500;
}

.ev-agegate__dob-title {
  margin: 0 0 18px;
  color: #079b95;
  font-weight: 800;
  font-size: 17px;
}

.ev-agegate__dob {
  display: grid;
  grid-template-columns: 92px 92px 120px 122px;
  justify-content: center;
  gap: 14px;
  margin: 0 auto 14px;
}

.ev-agegate__dob input,
.ev-agegate__dob button,
.ev-agegate__field input,
.ev-agegate__login-submit,
.ev-agegate__social {
  font: inherit;
}

.ev-agegate__dob input {
  height: 58px;
  border: 1px solid rgba(10,31,61,.18);
  border-radius: 10px;
  background: #fff;
  color: #0a1f3d;
  text-align: center;
  font-size: 17px;
  font-weight: 700;
  outline: none;
}

.ev-agegate__dob input:focus,
.ev-agegate__field input:focus {
  border-color: #12b8b0;
  box-shadow: 0 0 0 4px rgba(18,184,176,.12);
}

.ev-agegate__dob button,
.ev-agegate__enter {
  height: 58px;
  border: 0;
  border-radius: 10px;
  background: linear-gradient(135deg, #12b8b0, #0aa39d);
  color: #fff;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 14px 28px rgba(18,184,176,.22);
}

.ev-agegate__dob button:hover,
.ev-agegate__enter:hover,
.ev-agegate__login-submit:hover {
  background: #0a1f3d;
}

.ev-agegate__error {
  min-height: 20px;
  margin: 0 0 26px;
  color: #d93025;
  font-size: 13px;
  font-weight: 700;
}

.ev-agegate__legal {
  margin: 52px 0 0;
  color: #5b6b82;
  font-size: 13px;
}

.ev-agegate__legal a,
.ev-agegate__lost,
.ev-agegate__create a {
  color: #079b95;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.ev-agegate__login h2 {
  margin: 0 0 34px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: .12em;
  color: #0a1f3d;
  font-size: 22px;
  font-weight: 900;
}

.ev-agegate__login-form {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.ev-agegate__field {
  position: relative;
  display: block;
}

.ev-agegate__field-icon {
  position: absolute;
  left: 19px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #64708a;
  font-size: 18px;
}

.ev-agegate__field input {
  width: 100%;
  height: 64px;
  border: 1px solid rgba(10,31,61,.16);
  border-radius: 9px;
  background: #fff;
  color: #0a1f3d;
  padding: 0 56px;
  font-size: 17px;
  font-weight: 600;
  outline: none;
}

.ev-agegate__field input::placeholder {
  color: #9aa6b5;
  font-weight: 500;
}

.ev-agegate__toggle-pass {
  position: absolute;
  right: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 38px;
  height: 38px;
  border: 0;
  background: transparent;
  color: #64708a;
  cursor: pointer;
  font-size: 18px;
}

.ev-agegate__login-form small {
  color: #7b8794;
  font-size: 13px;
}

.ev-agegate__login-submit {
  height: 68px;
  margin-top: 28px;
  border: 0;
  border-radius: 8px;
  background: linear-gradient(135deg, #12b8b0, #0aa39d);
  color: #fff;
  font-size: 20px;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 15px 30px rgba(18,184,176,.22);
}

.ev-agegate__login-submit span {
  margin-left: 16px;
  font-size: 28px;
  line-height: 0;
}

.ev-agegate__lost {
  display: block;
  margin: 26px 0 34px;
  text-align: center;
  text-decoration: none;
}

.ev-agegate__or {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 22px;
  margin: 0 0 24px;
  color: #7b8794;
}

.ev-agegate__or span {
  height: 1px;
  background: rgba(10,31,61,.14);
}

.ev-agegate__or em {
  font-style: normal;
  font-weight: 700;
}

.ev-agegate__social-title {
  margin: 0 0 18px;
  text-align: center;
  color: #0a1f3d;
  font-weight: 800;
}

.ev-agegate__socials {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.ev-agegate__social {
  min-height: 92px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  border: 1px solid rgba(10,31,61,.12);
  border-radius: 11px;
  background: #fff;
  color: #0a1f3d;
  text-decoration: none;
  font-weight: 800;
  box-shadow: 0 10px 26px rgba(10,31,61,.04);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.ev-agegate__social:hover {
  transform: translateY(-2px);
  border-color: #12b8b0;
  box-shadow: 0 14px 32px rgba(10,31,61,.08);
}

.ev-agegate__google-g {
  width: 34px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #4285f4;
  font-size: 28px;
  font-weight: 900;
}

.ev-agegate__apple {
  font-size: 34px;
  line-height: 1;
  color: #000;
}

.ev-agegate__create {
  margin: 42px 0 0;
  color: #25324a;
  font-size: 15px;
}

.ev-agegate__create a {
  display: inline-block;
  margin-top: 12px;
  font-size: 18px;
  text-decoration: none;
}

.ev-agegate__logged {
  text-align: center;
}

.ev-agegate__enter {
  width: 100%;
  margin-top: 20px;
  font-size: 17px;
}

body.ev-agegate-locked {
  overflow: hidden !important;
}

@media (max-width: 980px) {
  .ev-agegate {
    align-items: flex-start;
    padding: 14px;
    overflow-y: auto;
  }

  .ev-agegate__panel {
    width: min(680px, 100%);
    max-height: none;
    grid-template-columns: 1fr;
  }

  .ev-agegate__age,
  .ev-agegate__login {
    padding: 30px 22px;
  }

  .ev-agegate__brand {
    min-height: auto;
    margin-bottom: 24px;
  }

  .ev-agegate__logo {
    max-width: 210px;
    max-height: 92px;
  }

  .ev-agegate__warning {
    display: flex;
    justify-content: center;
    gap: 16px;
  }

  .ev-agegate__badge {
    width: 66px;
    height: 66px;
    flex-basis: 66px;
    font-size: 24px;
    border-width: 4px;
  }

  .ev-agegate__text {
    font-size: 15px;
    line-height: 1.6;
    margin-bottom: 28px;
  }

  .ev-agegate__dob {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    max-width: 430px;
  }

  .ev-agegate__dob button {
    grid-column: 1 / -1;
  }

  .ev-agegate__legal {
    margin-top: 28px;
  }
}

@media (max-width: 520px) {
  .ev-agegate {
    padding: 0;
  }

  .ev-agegate__panel {
    width: 100%;
    min-height: 100vh;
    border-radius: 0;
  }

  .ev-agegate__warning {
    flex-direction: column;
    text-align: center;
  }

  .ev-agegate__warning h2 {
    font-size: 22px;
  }

  .ev-agegate__dob {
    grid-template-columns: 1fr 1fr;
  }

  .ev-agegate__dob input:nth-of-type(3) {
    grid-column: 1 / -1;
  }

  .ev-agegate__socials {
    grid-template-columns: 1fr;
  }

  .ev-agegate__field input {
    height: 58px;
    font-size: 15px;
  }

  .ev-agegate__login-submit {
    height: 60px;
    font-size: 17px;
  }
}

/* =========================================================
   ECONOVAPE v1.9.0 — Age gate compact + textes personnalisables
   ========================================================= */
.ev-agegate {
  padding: 14px !important;
}

.ev-agegate__panel {
  width: min(760px, calc(100vw - 28px)) !important;
  max-height: calc(100vh - 28px) !important;
  grid-template-columns: 1fr 1fr !important;
  border-radius: 16px !important;
}

.ev-agegate__age,
.ev-agegate__login {
  padding: 26px 30px !important;
}

.ev-agegate__brand {
  min-height: 58px !important;
  margin-bottom: 18px !important;
}

.ev-agegate__logo {
  max-width: 150px !important;
  max-height: 62px !important;
}

.ev-agegate__site-name {
  font-size: 24px !important;
}

.ev-agegate__warning {
  gap: 12px !important;
  margin-bottom: 16px !important;
}

.ev-agegate__badge {
  width: 54px !important;
  height: 54px !important;
  flex: 0 0 54px !important;
  border-width: 3px !important;
  font-size: 20px !important;
  box-shadow: 0 8px 18px rgba(18,184,176,.14) !important;
}

.ev-agegate__warning h2 {
  font-size: 17px !important;
  line-height: 1.18 !important;
  letter-spacing: -.02em !important;
}

.ev-agegate__text {
  max-width: 320px !important;
  margin-bottom: 20px !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

.ev-agegate__dob-title {
  margin-bottom: 12px !important;
  font-size: 13px !important;
}

.ev-agegate__dob {
  grid-template-columns: 54px 54px 74px 76px !important;
  gap: 8px !important;
  margin-bottom: 8px !important;
}

.ev-agegate__dob input,
.ev-agegate__dob button {
  height: 42px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
}

.ev-agegate__error {
  min-height: 16px !important;
  margin-bottom: 12px !important;
  font-size: 12px !important;
}

.ev-agegate__legal {
  margin-top: 20px !important;
  font-size: 11px !important;
  line-height: 1.4 !important;
}

.ev-agegate__login h2 {
  margin-bottom: 18px !important;
  font-size: 17px !important;
  letter-spacing: .08em !important;
}

.ev-agegate__login-form {
  gap: 8px !important;
}

.ev-agegate__field-icon {
  left: 14px !important;
  width: 18px !important;
  height: 18px !important;
  font-size: 14px !important;
}

.ev-agegate__field input {
  height: 46px !important;
  padding: 0 44px !important;
  border-radius: 8px !important;
  font-size: 13px !important;
}

.ev-agegate__toggle-pass {
  width: 30px !important;
  height: 30px !important;
  right: 8px !important;
  font-size: 14px !important;
}

.ev-agegate__login-form small {
  font-size: 11px !important;
}

.ev-agegate__login-submit {
  height: 48px !important;
  margin-top: 12px !important;
  border-radius: 8px !important;
  font-size: 15px !important;
  box-shadow: 0 10px 20px rgba(18,184,176,.18) !important;
}

.ev-agegate__login-submit span {
  margin-left: 8px !important;
  font-size: 20px !important;
}

.ev-agegate__lost {
  margin: 14px 0 18px !important;
  font-size: 13px !important;
}

.ev-agegate__or {
  gap: 12px !important;
  margin-bottom: 12px !important;
}

.ev-agegate__or em,
.ev-agegate__social-title {
  font-size: 12px !important;
}

.ev-agegate__social-title {
  margin-bottom: 10px !important;
}

.ev-agegate__socials {
  gap: 10px !important;
}

.ev-agegate__social {
  min-height: 58px !important;
  gap: 5px !important;
  border-radius: 9px !important;
  font-size: 12px !important;
  box-shadow: 0 8px 18px rgba(10,31,61,.04) !important;
}

.ev-agegate__google-g {
  width: 24px !important;
  height: 24px !important;
  font-size: 21px !important;
}

.ev-agegate__apple {
  font-size: 24px !important;
}

.ev-agegate__create {
  margin-top: 20px !important;
  font-size: 12px !important;
}

.ev-agegate__create a {
  margin-top: 6px !important;
  font-size: 14px !important;
}

@media (max-width: 820px) {
  .ev-agegate {
    align-items: flex-start !important;
    overflow-y: auto !important;
    padding: 12px !important;
  }

  .ev-agegate__panel {
    width: min(440px, 100%) !important;
    grid-template-columns: 1fr !important;
    max-height: none !important;
  }

  .ev-agegate__age,
  .ev-agegate__login {
    padding: 22px 18px !important;
  }

  .ev-agegate__warning {
    justify-content: center !important;
  }

  .ev-agegate__dob {
    grid-template-columns: 1fr 1fr 1.2fr auto !important;
    max-width: 100% !important;
  }
}

@media (max-width: 480px) {
  .ev-agegate {
    padding: 0 !important;
  }

  .ev-agegate__panel {
    width: 100% !important;
    min-height: 100vh !important;
    border-radius: 0 !important;
  }

  .ev-agegate__brand {
    margin-bottom: 14px !important;
  }

  .ev-agegate__warning {
    flex-direction: row !important;
    text-align: left !important;
  }

  .ev-agegate__badge {
    width: 48px !important;
    height: 48px !important;
    flex-basis: 48px !important;
    font-size: 18px !important;
  }

  .ev-agegate__warning h2 {
    font-size: 16px !important;
  }

  .ev-agegate__dob {
    grid-template-columns: 1fr 1fr 1.15fr !important;
  }

  .ev-agegate__dob button {
    grid-column: 1 / -1 !important;
  }

  .ev-agegate__socials {
    grid-template-columns: 1fr 1fr !important;
  }
}

/* =========================================================
   ECONOVAPE v1.9.1 — Date de naissance client + Google login
========================================================= */
.ev-birthdate-field {
  margin-top: 14px !important;
}
.ev-birthdate-field label {
  font-weight: 800 !important;
  color: #0a1f3d !important;
}
.ev-birthdate-field input[type="date"],
.ev-checkout-birthdate input[type="date"] {
  width: 100% !important;
  min-height: 46px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 12px !important;
  padding: 0 14px !important;
  background: #fff !important;
  color: #0a1f3d !important;
}
.ev-birthdate-field__help,
.ev-checkout-birthdate .description {
  display: block !important;
  margin-top: 7px !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  color: #5b6b82 !important;
}
.ev-checkout-birthdate {
  margin: 18px 0 !important;
  padding: 18px !important;
  border: 1px solid rgba(18,184,176,.18) !important;
  border-radius: 16px !important;
  background: rgba(18,184,176,.045) !important;
}
.ev-checkout-birthdate h3 {
  margin: 0 0 12px !important;
  color: #0a1f3d !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}
.ev-agegate__socials--single {
  grid-template-columns: 1fr !important;
}
.ev-agegate__social--google {
  justify-content: center !important;
  gap: 10px !important;
}
.ev-agegate__google-logo {
  width: 20px !important;
  height: 20px !important;
  border-radius: 50% !important;
  background: #fff !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 20px !important;
}
.ev-agegate__google-logo svg {
  display: block !important;
}
.ev-agegate__social--apple,
.ev-agegate__apple {
  display: none !important;
}

/* =========================================================
   ECONOVAPE v1.9.8 — Page Newsletter premium + Brevo
   ========================================================= */
body .ev-newsletter-page {
  background: #fff;
}

body .ev-newsletter-page .ev-breadcrumb {
  margin-top: 22px;
  margin-bottom: 0;
}

body .ev-newsletter-hero {
  position: relative;
  overflow: hidden;
  padding: 54px 0 46px;
  background:
    radial-gradient(circle at 88% 18%, rgba(18,184,176,.15), transparent 26%),
    linear-gradient(135deg, #ffffff 0%, #f4fbfb 100%);
}

body .ev-newsletter-hero__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .95fr);
  align-items: center;
  gap: 46px;
}

body .ev-newsletter-hero__content h1 {
  margin: 0 0 18px;
  max-width: 640px;
  color: #0a1f3d;
  font-size: clamp(38px, 5vw, 64px);
  line-height: .98;
  font-weight: 900;
  letter-spacing: -.04em;
}

body .ev-newsletter-hero__content h1 strong,
body .ev-newsletter-hero__content h1 em {
  color: #12b8b0;
  font-style: normal;
}

body .ev-newsletter-hero__lead {
  max-width: 620px;
  margin: 0 0 24px;
  color: #41516a;
  font-size: 17px;
  line-height: 1.75;
}

body .ev-newsletter-hero__benefits {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 13px;
}

body .ev-newsletter-hero__benefits li {
  display: flex;
  align-items: center;
  gap: 12px;
  color: #0a1f3d;
  font-size: 15px;
  font-weight: 700;
}

body .ev-newsletter-hero__benefits span {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #12b8b0;
  color: #fff;
  flex: 0 0 26px;
}

body .ev-newsletter-hero__benefits svg {
  width: 14px !important;
  height: 14px !important;
}

body .ev-newsletter-hero__visual {
  position: relative;
  min-height: 390px;
  display: flex;
  align-items: center;
  justify-content: center;
}

body .ev-newsletter-hero__visual img {
  display: block;
  width: 100%;
  max-width: 560px;
  height: auto;
  border-radius: 30px;
  box-shadow: 0 28px 70px rgba(10,31,61,.14);
}

body .ev-newsletter-hero__mockup {
  width: min(100%, 520px);
  min-height: 360px;
  border-radius: 32px;
  background: linear-gradient(145deg, rgba(18,184,176,.18), rgba(255,255,255,.92));
  box-shadow: inset 0 0 0 1px rgba(18,184,176,.18), 0 28px 70px rgba(10,31,61,.10);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 34px;
}

body .ev-newsletter-hero__envelope {
  max-width: 350px;
  padding: 42px 34px;
  text-align: center;
  border-radius: 26px;
  background: #fff;
  color: #0a1f3d;
  box-shadow: 0 18px 42px rgba(10,31,61,.10);
  transform: rotate(-4deg);
}

body .ev-newsletter-hero__envelope span {
  width: 58px;
  height: 58px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  color: #12b8b0;
  background: rgba(18,184,176,.12);
  margin-bottom: 18px;
}

body .ev-newsletter-hero__envelope svg {
  width: 28px !important;
  height: 28px !important;
}

body .ev-newsletter-hero__envelope strong {
  display: block;
  color: #12b8b0;
  font-size: 26px;
  line-height: 1.18;
  font-weight: 900;
}

body .ev-newsletter-features {
  padding: 32px 0 12px;
  background: #fff;
}

body .ev-newsletter-features__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

body .ev-newsletter-feature {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 18px 14px;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(10,31,61,.04);
}

body .ev-newsletter-feature__icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 50px;
  color: #12b8b0;
  background: rgba(18,184,176,.11);
}

body .ev-newsletter-feature__icon svg {
  width: 22px !important;
  height: 22px !important;
}

body .ev-newsletter-feature strong {
  display: block;
  color: #0a1f3d;
  font-size: 13px;
  font-weight: 900;
  text-transform: uppercase;
}

body .ev-newsletter-feature p {
  margin: 4px 0 0;
  color: #5b6b82;
  font-size: 13px;
  line-height: 1.35;
}

body .ev-newsletter-signup {
  padding: 34px 0 64px;
  background: #fff;
}

body .ev-newsletter-signup__card {
  position: relative;
  max-width: 1120px;
  margin: 0 auto;
  padding: 58px 34px 42px;
  border: 1px solid rgba(10,31,61,.08);
  border-radius: 30px;
  background: #fff;
  text-align: center;
  box-shadow: 0 24px 70px rgba(10,31,61,.08);
}

body .ev-newsletter-signup__icon {
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
  width: 66px;
  height: 66px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #e9fbfa;
  color: #12b8b0;
  box-shadow: 0 12px 32px rgba(18,184,176,.15);
}

body .ev-newsletter-signup__icon svg {
  width: 30px !important;
  height: 30px !important;
}

body .ev-newsletter-signup__card h2 {
  margin: 0 0 10px;
  color: #0a1f3d;
  font-size: clamp(25px, 3vw, 34px);
  line-height: 1.15;
  font-weight: 900;
  letter-spacing: -.03em;
}

body .ev-newsletter-signup__card > p {
  margin: 0 auto 26px;
  max-width: 620px;
  color: #5b6b82;
  font-size: 15px;
  line-height: 1.55;
}

body .ev-newsletter-signup__form {
  max-width: 640px;
  margin: 0 auto;
}

body .ev-newsletter-signup__form form,
body .ev-newsletter-signup__form .sib_signup_form,
body .ev-newsletter-signup__form .ev-brevo-newsletter {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body .ev-newsletter-signup__form p,
body .ev-newsletter-signup__form .sib_signup_box_inside {
  margin: 0 !important;
  padding: 0 !important;
}

body .ev-newsletter-signup__form input[type="email"],
body .ev-newsletter-signup__form input[type="text"] {
  width: min(100%, 390px) !important;
  height: 56px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #0a1f3d !important;
  font-size: 15px !important;
  padding: 0 24px !important;
  outline: none !important;
  box-shadow: 0 8px 20px rgba(10,31,61,.04) !important;
}

body .ev-newsletter-signup__form input[type="submit"],
body .ev-newsletter-signup__form button[type="submit"],
body .ev-newsletter-signup__form .sib-default-btn {
  height: 56px !important;
  min-width: 155px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,#12b8b0,#0aa39d) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  padding: 0 28px !important;
  cursor: pointer !important;
  box-shadow: 0 16px 32px rgba(18,184,176,.22) !important;
}

body .ev-newsletter-signup__privacy {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  margin-top: 18px;
  color: #7b8794;
  font-size: 12px;
  line-height: 1.4;
}

body .ev-newsletter-signup__privacy svg {
  width: 14px !important;
  height: 14px !important;
}

body .ev-newsletter-signup__empty {
  max-width: 640px;
  margin: 0 auto;
  padding: 18px 20px;
  border: 1px dashed rgba(18,184,176,.45);
  border-radius: 18px;
  color: #5b6b82;
  background: rgba(18,184,176,.06);
}

/* Footer Brevo alignment + social image fix kept for next ZIP */
body .ev-newsletter__form-wrap .ev-brevo-newsletter,
body .ev-newsletter__form-wrap form.sib_signup_form {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body .ev-newsletter__form-wrap .ev-brevo-newsletter input[type="email"],
body .ev-newsletter__form-wrap form.sib_signup_form input[type="email"] {
  width: 350px !important;
  height: 50px !important;
  border-radius: 999px !important;
}

body .ev-newsletter__form-wrap .ev-brevo-newsletter input[type="submit"],
body .ev-newsletter__form-wrap form.sib_signup_form input[type="submit"],
body .ev-newsletter__form-wrap .sib-default-btn {
  height: 50px !important;
  min-width: 125px !important;
  border-radius: 999px !important;
}

body .ev-newsletter__social .ev-social {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  padding: 0 !important;
  overflow: hidden !important;
}

body .ev-newsletter__social .ev-social img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  display: block !important;
}

@media (max-width: 900px) {
  body .ev-newsletter-hero {
    padding: 34px 0 30px;
  }

  body .ev-newsletter-hero__grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  body .ev-newsletter-hero__visual {
    min-height: 0;
  }

  body .ev-newsletter-features__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 620px) {
  body .ev-newsletter-hero__content h1 {
    font-size: 38px;
  }

  body .ev-newsletter-features__grid {
    grid-template-columns: 1fr;
  }

  body .ev-newsletter-signup__card {
    padding: 54px 18px 28px;
    border-radius: 24px;
  }

  body .ev-newsletter-signup__form form,
  body .ev-newsletter-signup__form .sib_signup_form,
  body .ev-newsletter-signup__form .ev-brevo-newsletter {
    flex-direction: column !important;
  }

  body .ev-newsletter-signup__form input[type="email"],
  body .ev-newsletter-signup__form input[type="text"],
  body .ev-newsletter-signup__form input[type="submit"],
  body .ev-newsletter-signup__form button[type="submit"],
  body .ev-newsletter-signup__form .sib-default-btn {
    width: 100% !important;
    min-width: 100% !important;
  }
}

/* =========================================================
   ECONOVAPE v1.9.9 — Mon compte : Détails du compte premium
   ========================================================= */
.ev-edit-account{display:flex;flex-direction:column;gap:20px;max-width:980px;width:100%;}
.ev-edit-account__intro{position:relative;display:flex;justify-content:space-between;align-items:center;gap:22px;padding:24px 28px;border:1px solid rgba(18,184,176,.18);border-radius:22px;background:linear-gradient(135deg,#ffffff,#f2fbfa);box-shadow:0 14px 34px rgba(10,31,61,.06);overflow:hidden;}
.ev-edit-account__intro:after{content:"";position:absolute;right:-70px;top:-90px;width:230px;height:230px;border-radius:50%;background:rgba(18,184,176,.10);pointer-events:none;}
.ev-edit-account__eyebrow{display:inline-flex;margin-bottom:8px;padding:6px 12px;border-radius:999px;background:rgba(18,184,176,.12);color:var(--ev-teal);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;}
.ev-edit-account__intro h2{margin:0 0 8px;color:var(--ev-navy);font-size:30px;line-height:1.08;font-weight:900;letter-spacing:-.02em;}
.ev-edit-account__intro p{margin:0;color:var(--ev-muted);font-size:15px;line-height:1.55;max-width:650px;}
.ev-edit-account__badge{position:relative;z-index:1;width:58px;height:58px;min-width:58px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid rgba(10,31,61,.08);box-shadow:0 10px 28px rgba(10,31,61,.08);font-size:28px;}
.ev-edit-card{background:#fff;border:1px solid var(--ev-line);border-radius:22px;padding:26px 28px;box-shadow:0 10px 30px rgba(10,31,61,.045);}
.ev-edit-card__head{display:flex;align-items:flex-start;gap:14px;margin:0 0 22px;}
.ev-edit-card__icon{width:44px;height:44px;min-width:44px;border-radius:15px;display:flex;align-items:center;justify-content:center;background:rgba(18,184,176,.10);color:var(--ev-teal);font-size:21px;}
.ev-edit-card__head h3{margin:0 0 4px;color:var(--ev-navy);font-size:20px;line-height:1.2;font-weight:900;}
.ev-edit-card__head p{margin:0;color:var(--ev-muted);font-size:13px;line-height:1.45;}
.ev-edit-grid--two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 22px;}
.ev-edit-account p.form-row{margin:0 0 18px;padding:0;}
.ev-edit-account .ev-edit-card p.form-row:last-child{margin-bottom:0;}
.ev-edit-account label{display:block;margin:0 0 7px;color:var(--ev-navy);font-size:14px;font-weight:800;}
.ev-edit-account .required{color:#ef4444;text-decoration:none;}
.ev-edit-account input.input-text,
.ev-edit-account input[type="text"],
.ev-edit-account input[type="email"],
.ev-edit-account input[type="password"],
.ev-edit-account input[type="date"]{width:100%;height:50px;border:1px solid rgba(10,31,61,.14);border-radius:14px;background:#fff;color:var(--ev-navy);font-size:15px;padding:0 16px;box-shadow:0 8px 20px rgba(10,31,61,.035);outline:none;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease;}
.ev-edit-account input.input-text:focus,
.ev-edit-account input[type="text"]:focus,
.ev-edit-account input[type="email"]:focus,
.ev-edit-account input[type="password"]:focus,
.ev-edit-account input[type="date"]:focus{border-color:var(--ev-teal);box-shadow:0 0 0 4px rgba(18,184,176,.12);}
.ev-edit-help,.ev-birthdate-field__help{display:block;margin-top:8px;color:var(--ev-muted);font-size:13px;line-height:1.45;font-style:normal;}
.ev-edit-card--birthday{background:linear-gradient(135deg,#fff,#f5fbfa);border-color:rgba(18,184,176,.22);}
.ev-edit-card--birthday .ev-birthdate-field{margin:0!important;}
.ev-edit-card--birthday .ev-birthdate-field input{max-width:360px;}
.ev-edit-card--security .ev-edit-passwords{display:grid;gap:16px;}
.ev-edit-actions{display:flex;align-items:center;justify-content:flex-start;margin-top:2px;}
.ev-edit-actions .ev-edit-submit,
.ev-edit-account button[name="save_account_details"]{display:inline-flex!important;align-items:center;justify-content:center;min-height:52px;border:0!important;border-radius:999px!important;padding:0 30px!important;background:linear-gradient(135deg,#12b8b0,#0aa39d)!important;color:#fff!important;font-size:15px!important;font-weight:900!important;box-shadow:0 16px 32px rgba(18,184,176,.22)!important;text-decoration:none!important;cursor:pointer;}
.ev-edit-actions .ev-edit-submit:hover,
.ev-edit-account button[name="save_account_details"]:hover{background:var(--ev-navy)!important;transform:translateY(-1px);}
.ev-edit-account .woocommerce-privacy-policy-text{color:var(--ev-muted);font-size:13px;line-height:1.55;}
.ev-edit-account fieldset{border:0!important;margin:0!important;padding:0!important;}
.ev-edit-account legend{display:none!important;}

@media (max-width: 900px){
  .ev-edit-account{max-width:none;}
  .ev-edit-account__intro,.ev-edit-card{padding:22px;}
  .ev-edit-grid--two{grid-template-columns:1fr;gap:0;}
  .ev-edit-account__intro h2{font-size:26px;}
}
@media (max-width: 640px){
  .ev-edit-account__intro{align-items:flex-start;}
  .ev-edit-account__badge{display:none;}
  .ev-edit-card__head{gap:12px;}
  .ev-edit-card__icon{width:40px;height:40px;min-width:40px;border-radius:14px;}
  .ev-edit-card__head h3{font-size:18px;}
  .ev-edit-actions .ev-edit-submit,.ev-edit-account button[name="save_account_details"]{width:100%;}
}

/* =========================================================
   ECONOVAPE v1.9.10 — Mon compte / détails du compte
   Correctif robuste sur formulaire WooCommerce natif
   ========================================================= */
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account{
  position:relative!important;
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
  max-width:980px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account:before{
  content:"Profil client";
  display:inline-flex;
  align-self:flex-start;
  margin:0 0 2px;
  padding:7px 14px;
  border-radius:999px;
  background:rgba(18,184,176,.12);
  color:#12b8b0;
  font-size:12px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row{
  float:none!important;
  clear:none!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account > p.form-row:not(.ev-birthdate-field){
  background:#fff;
  border:1px solid rgba(10,31,61,.09);
  border-radius:18px;
  padding:18px 20px!important;
  box-shadow:0 10px 30px rgba(10,31,61,.045);
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account > p.form-row-first,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account > p.form-row-last{
  width:calc(50% - 9px)!important;
  display:inline-block!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account > p.form-row-first{
  margin-right:18px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account label{
  display:block!important;
  margin:0 0 8px!important;
  color:#0a1f3d!important;
  font-size:14px!important;
  font-weight:850!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .required{
  color:#ef4444!important;
  text-decoration:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account input.input-text,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account input[type="text"],
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account input[type="email"],
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account input[type="password"],
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account input[type="date"]{
  width:100%!important;
  height:50px!important;
  min-height:50px!important;
  border:1px solid rgba(10,31,61,.14)!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#0a1f3d!important;
  font-size:15px!important;
  padding:0 16px!important;
  box-shadow:0 8px 20px rgba(10,31,61,.035)!important;
  outline:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account input:focus{
  border-color:#12b8b0!important;
  box-shadow:0 0 0 4px rgba(18,184,176,.12)!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account em,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field__help{
  display:block!important;
  margin-top:8px!important;
  color:#5b6b82!important;
  font-size:13px!important;
  line-height:1.45!important;
  font-style:normal!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account fieldset{
  order:30!important;
  border:1px solid rgba(10,31,61,.09)!important;
  border-radius:22px!important;
  background:#fff!important;
  padding:26px 28px!important;
  box-shadow:0 10px 30px rgba(10,31,61,.045)!important;
  margin:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account fieldset legend{
  display:block!important;
  width:auto!important;
  margin:0 0 16px!important;
  padding:0!important;
  color:#0a1f3d!important;
  font-size:20px!important;
  font-weight:900!important;
  border:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account fieldset legend:before{
  content:"🔒 ";
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account fieldset p.form-row{
  margin:0 0 16px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account fieldset p.form-row:last-child{
  margin-bottom:0!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account{
  order:25!important;
  position:relative!important;
  background:linear-gradient(135deg,#ffffff,#f3fbfa)!important;
  border:1px solid rgba(18,184,176,.22)!important;
  border-radius:22px!important;
  padding:26px 28px!important;
  box-shadow:0 12px 32px rgba(10,31,61,.045)!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account:before{
  content:"🎂 Votre anniversaire";
  display:block;
  margin:0 0 14px;
  color:#0a1f3d;
  font-size:20px;
  font-weight:900;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account input[type="date"]{
  max-width:360px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account label{
  font-size:14px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account > .clear{
  display:none!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account button[name="save_account_details"]{
  order:40!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  min-height:52px!important;
  max-width:max-content!important;
  border:0!important;
  border-radius:999px!important;
  padding:0 32px!important;
  background:linear-gradient(135deg,#12b8b0,#0aa39d)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  box-shadow:0 16px 32px rgba(18,184,176,.22)!important;
  cursor:pointer!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account button[name="save_account_details"]:hover{
  background:#0a1f3d!important;
}
@media (max-width: 900px){
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account > p.form-row-first,
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account > p.form-row-last{
    width:100%!important;
    display:block!important;
    margin-right:0!important;
  }
}
@media (max-width: 640px){
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account > p.form-row:not(.ev-birthdate-field),
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account fieldset,
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account{
    padding:20px!important;
    border-radius:18px!important;
  }
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account button[name="save_account_details"]{
    width:100%!important;
    max-width:100%!important;
  }
}

/* =========================================================
   ECONOVAPE v1.10.0 — CSS validé à conserver
   Newsletter Brevo + Mon compte + Connexion + Fidélité
========================================================= */

/* Newsletter Brevo footer — layout propre */
body .ev-newsletter__form-wrap .ev-brevo-newsletter {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}
body .ev-newsletter__form-wrap .ev-brevo-newsletter input[type="email"] {
  width: 350px !important;
  height: 50px !important;
  border-radius: 999px !important;
}
body .ev-newsletter__form-wrap .ev-brevo-newsletter input[type="submit"] {
  height: 50px !important;
  min-width: 125px !important;
  border-radius: 999px !important;
}

/* Footer newsletter — taille logos réseaux */
body .ev-newsletter__social .ev-social {
  width: 46px !important;
  height: 46px !important;
  min-width: 46px !important;
  padding: 0 !important;
  overflow: hidden !important;
}
body .ev-newsletter__social .ev-social img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: cover !important;
  border-radius: 50% !important;
  display: block !important;
}

/* Détails du compte — design premium sans casser WooCommerce */
body.woocommerce-account .ev-account__content { background: #ffffff; }
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account {
  background: #ffffff;
  border: 1px solid rgba(10,31,61,.08);
  border-radius: 24px;
  padding: 28px;
  box-shadow: 0 14px 34px rgba(10,31,61,.06);
}
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account input[type="text"],
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account input[type="email"],
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account input[type="password"],
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account input[type="date"] {
  height: 52px;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 14px !important;
  background: #fff !important;
  padding: 0 16px !important;
  font-size: 15px;
  color: #0a1f3d;
  box-shadow: none !important;
}
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account input:focus {
  border-color: #12b8b0 !important;
  box-shadow: 0 0 0 4px rgba(18,184,176,.12) !important;
  outline: none !important;
}
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account label {
  font-weight: 800;
  color: #0a1f3d;
  margin-bottom: 8px;
}
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account em {
  color: #5b6b82;
  font-size: 14px;
}
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account fieldset {
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 20px !important;
  background: #f7fafc !important;
  padding: 24px !important;
  margin: 26px 0 !important;
}
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account fieldset legend {
  background: #ffffff;
  color: #0a1f3d;
  font-weight: 900;
  padding: 0 12px;
  font-size: 18px;
}
body.woocommerce-account .ev-birthdate-field {
  background: linear-gradient(135deg, rgba(18,184,176,.08), rgba(255,255,255,1));
  border: 1px solid rgba(18,184,176,.18);
  border-radius: 20px;
  padding: 22px;
  margin: 24px 0 18px;
}
body.woocommerce-account .ev-birthdate-field label {
  font-size: 18px;
  font-weight: 900;
}
body.woocommerce-account .ev-birthdate-field .description,
body.woocommerce-account .ev-birthdate-field small {
  color: #5b6b82 !important;
  font-size: 14px;
}
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account button[type="submit"],
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account .button {
  height: 52px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,#12b8b0,#0aa39d) !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  padding: 0 28px !important;
  box-shadow: 0 14px 28px rgba(18,184,176,.22) !important;
}
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account button[type="submit"]:hover,
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account .button:hover { background: #0a1f3d !important; }
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account .woocommerce-form-row { margin-bottom: 18px !important; }

/* Page connexion / inscription client */
body.woocommerce-account:not(.logged-in) .woocommerce { max-width: 1180px; margin: 0 auto; }
body.woocommerce-account:not(.logged-in) .woocommerce .u-columns.col2-set,
body.woocommerce-account:not(.logged-in) .woocommerce .col2-set {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  justify-content: center !important;
  gap: 36px !important;
  width: 100% !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce .u-column1.col-1,
body.woocommerce-account:not(.logged-in) .woocommerce .u-column2.col-2,
body.woocommerce-account:not(.logged-in) .woocommerce .col-1,
body.woocommerce-account:not(.logged-in) .woocommerce .col-2 {
  float: none !important;
  width: calc(50% - 18px) !important;
  max-width: 560px !important;
  margin: 0 !important;
  clear: none !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce h2 {
  font-size: 26px !important;
  font-weight: 900 !important;
  color: #0a1f3d !important;
  margin: 0 0 18px !important;
}
body.woocommerce-account:not(.logged-in) form.login,
body.woocommerce-account:not(.logged-in) form.register {
  width: 100% !important;
  max-width: none !important;
  min-height: 390px !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  background: #ffffff !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 26px !important;
  padding: 30px !important;
  box-shadow: 0 18px 40px rgba(10,31,61,.07) !important;
}
body.woocommerce-account:not(.logged-in) form.login input[type="text"],
body.woocommerce-account:not(.logged-in) form.login input[type="password"],
body.woocommerce-account:not(.logged-in) form.register input[type="email"],
body.woocommerce-account:not(.logged-in) form.register input[type="date"],
body.woocommerce-account:not(.logged-in) form.register input[type="text"],
body.woocommerce-account:not(.logged-in) form.register input[type="password"] {
  width: 100% !important;
  height: 52px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  padding: 0 16px !important;
  color: #0a1f3d !important;
  font-size: 15px !important;
}
body.woocommerce-account:not(.logged-in) form.login input:focus,
body.woocommerce-account:not(.logged-in) form.register input:focus {
  border-color: #12b8b0 !important;
  box-shadow: 0 0 0 4px rgba(18,184,176,.12) !important;
  outline: none !important;
}
body.woocommerce-account:not(.logged-in) form.login label,
body.woocommerce-account:not(.logged-in) form.register label {
  font-weight: 800 !important;
  color: #0a1f3d !important;
  margin-bottom: 8px !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-form-row,
body.woocommerce-account:not(.logged-in) .form-row { margin-bottom: 18px !important; }
body.woocommerce-account:not(.logged-in) form.login button,
body.woocommerce-account:not(.logged-in) form.register button,
body.woocommerce-account:not(.logged-in) .woocommerce-button {
  height: 52px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,#12b8b0,#0aa39d) !important;
  color: #ffffff !important;
  font-weight: 900 !important;
  padding: 0 28px !important;
  box-shadow: 0 14px 28px rgba(18,184,176,.22) !important;
}
body.woocommerce-account:not(.logged-in) form.login button:hover,
body.woocommerce-account:not(.logged-in) form.register button:hover { background: #0a1f3d !important; }
body.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin-left: 14px !important;
}
body.woocommerce-account:not(.logged-in) .lost_password { margin-top: 14px !important; }
body.woocommerce-account:not(.logged-in) .lost_password a {
  color: #12b8b0 !important;
  font-weight: 800 !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text {
  color: #5b6b82 !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  margin-top: 18px !important;
}
body.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text a {
  color: #12b8b0 !important;
  font-weight: 800 !important;
}

@media (max-width: 900px) {
  body .ev-newsletter__form-wrap .ev-brevo-newsletter,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-columns.col2-set,
  body.woocommerce-account:not(.logged-in) .woocommerce .col2-set {
    flex-direction: column !important;
  }
  body.woocommerce-account:not(.logged-in) .woocommerce .u-column1.col-1,
  body.woocommerce-account:not(.logged-in) .woocommerce .u-column2.col-2,
  body.woocommerce-account:not(.logged-in) .woocommerce .col-1,
  body.woocommerce-account:not(.logged-in) .woocommerce .col-2 {
    width: 100% !important;
    max-width: none !important;
  }
  body.woocommerce-account form.woocommerce-EditAccountForm.edit-account,
  body.woocommerce-account:not(.logged-in) form.login,
  body.woocommerce-account:not(.logged-in) form.register {
    min-height: auto !important;
    padding: 22px !important;
    border-radius: 20px !important;
  }
}

/* =========================================================
   ECONOVAPE v1.10.11 — Détails du compte : anniversaire intégré
   ========================================================= */
body.woocommerce-account form.woocommerce-EditAccountForm.edit-account p.ev-birthdate-field.ev-birthdate-field--account {
  display: block !important;
  width: 100% !important;
  margin: 24px 0 18px !important;
  padding: 30px 36px !important;
  box-sizing: border-box !important;
  background: linear-gradient(135deg, rgba(18,184,176,.08), #ffffff) !important;
  border: 1px solid rgba(18,184,176,.22) !important;
  border-radius: 22px !important;
}

body.woocommerce-account form.woocommerce-EditAccountForm.edit-account p.ev-birthdate-field.ev-birthdate-field--account label {
  display: block !important;
  margin: 0 0 12px !important;
  color: #0a1f3d !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  line-height: 1.25 !important;
}

body.woocommerce-account form.woocommerce-EditAccountForm.edit-account p.ev-birthdate-field.ev-birthdate-field--account input[type="date"] {
  display: block !important;
  width: 360px !important;
  max-width: 100% !important;
  height: 52px !important;
  margin: 0 0 9px !important;
  padding: 0 16px !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 14px !important;
  background: #fff !important;
}

body.woocommerce-account form.woocommerce-EditAccountForm.edit-account p.ev-birthdate-field.ev-birthdate-field--account .ev-birthdate-field__help {
  display: block !important;
  margin: 0 !important;
  color: #6b7280 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

body.woocommerce-account form.woocommerce-EditAccountForm.edit-account .ev-account-save-row {
  margin: 18px 0 28px !important;
}

@media (max-width: 640px) {
  body.woocommerce-account form.woocommerce-EditAccountForm.edit-account p.ev-birthdate-field.ev-birthdate-field--account {
    padding: 22px 20px !important;
    border-radius: 18px !important;
  }
}


/* =========================================================
   ECONOVAPE v1.10.12 — Compte client : anniversaire robuste
   ========================================================= */
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account{
  display:flex!important;
  flex-direction:column!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account{
  order:25!important;
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  margin:18px 0!important;
  padding:28px 32px!important;
  box-sizing:border-box!important;
  background:linear-gradient(135deg,#ffffff,#f3fbfa)!important;
  border:1px solid rgba(18,184,176,.24)!important;
  border-radius:22px!important;
  box-shadow:0 12px 32px rgba(10,31,61,.045)!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account::before{
  content:"🎂 Votre anniversaire";
  display:block!important;
  margin:0 0 16px!important;
  color:#0a1f3d!important;
  font-size:20px!important;
  line-height:1.2!important;
  font-weight:900!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account label{
  display:block!important;
  margin:0 0 10px!important;
  color:#0a1f3d!important;
  font-size:14px!important;
  font-weight:850!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account input[type="date"]{
  display:block!important;
  width:360px!important;
  max-width:100%!important;
  height:50px!important;
  margin:0 0 8px!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account .ev-birthdate-field__help{
  display:block!important;
  margin:0!important;
  color:#5b6b82!important;
  font-size:13px!important;
  line-height:1.45!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p:has(#account_email){
  order:30!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-account-save-row,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p:has(button[name="save_account_details"]){
  order:35!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account fieldset{
  order:40!important;
}
@media (max-width:640px){
  body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-birthdate-field--account{
    padding:22px!important;
    border-radius:18px!important;
  }
}

/* =========================================================
   ECONOVAPE v1.10.13 — Correction padding bloc anniversaire
   Règle volontairement très spécifique pour passer au-dessus
   du reset WooCommerce .form-row { padding:0!important; }.
========================================================= */
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account {
  padding: 32px 40px !important;
  margin: 24px 0 20px !important;
  box-sizing: border-box !important;
  background: linear-gradient(135deg,#ffffff,#f3fbfa) !important;
  border: 1px solid rgba(18,184,176,.24) !important;
  border-radius: 22px !important;
  box-shadow: 0 12px 32px rgba(10,31,61,.045) !important;
}

body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account::before,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account::before {
  margin: 0 0 18px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account label,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account label {
  margin: 0 0 10px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account input[type="date"],
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account input[type="date"] {
  width: 360px !important;
  max-width: 100% !important;
  margin: 0 0 10px !important;
}

body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account .ev-birthdate-field__help,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account .ev-birthdate-field__help {
  margin: 0 !important;
}


/* =========================================================
   ECONOVAPE v1.10.15 — Anniversaire compte client stable
   Cible les deux classes possibles, sans changer la structure.
========================================================= */
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account{
  order:25!important;display:block!important;width:100%!important;max-width:100%!important;margin:24px 0 20px!important;padding:32px 40px!important;box-sizing:border-box!important;background:linear-gradient(135deg,#ffffff,#f3fbfa)!important;border:1px solid rgba(18,184,176,.24)!important;border-radius:22px!important;box-shadow:0 12px 32px rgba(10,31,61,.045)!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account::before,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account::before{
  content:"🎂 Votre anniversaire"!important;display:block!important;margin:0 0 18px!important;color:#0a1f3d!important;font-size:20px!important;line-height:1.2!important;font-weight:900!important;
}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account label,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account label{display:block!important;margin:0 0 10px!important;padding:0!important;color:#0a1f3d!important;font-size:14px!important;font-weight:850!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account input[type="date"],
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account input[type="date"]{display:block!important;width:360px!important;max-width:100%!important;height:50px!important;margin:0 0 10px!important;padding:0 16px!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-field--account .ev-birthdate-field__help,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p.form-row.form-row-wide.ev-birthdate-field.ev-birthdate-account .ev-birthdate-field__help{display:block!important;margin:0!important;padding:0!important;color:#5b6b82!important;font-size:13px!important;line-height:1.45!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p:has(#account_email){order:30!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account .ev-account-save-row,
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account p:has(button[name="save_account_details"]){order:35!important;}
body.woocommerce-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm.edit-account fieldset{order:40!important;}

/* =========================================================
   ECONOVAPE — Mégamenu Résistances + Accessoires fusionné
========================================================= */
.ev-mega--resistances .ev-mega__cols,
.ev-mega--accessoires .ev-mega__cols,
.ev-mega__cols--resacc {
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.ev-mega--resistances .ev-mega__grid--resacc,
.ev-mega--accessoires .ev-mega__grid--resacc {
  grid-template-columns: minmax(0, 1fr) 320px !important;
}

.ev-mega__dual-tops {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 22px !important;
  border-top: 1px solid rgba(10,31,61,.08) !important;
  padding-top: 18px !important;
}

.ev-mega__dual-tops .ev-mega__featured {
  border-top: 0 !important;
  padding-top: 0 !important;
}

.ev-mega__dual-tops .ev-mega__cards {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

.ev-mega__dual-tops .ev-mega-card {
  min-height: 86px !important;
}

@media (max-width: 1100px) {
  .ev-mega--resistances .ev-mega__grid--resacc,
  .ev-mega--accessoires .ev-mega__grid--resacc {
    grid-template-columns: 1fr !important;
  }

  .ev-mega__dual-tops {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  .ev-mega--resistances .ev-mega__cols,
  .ev-mega--accessoires .ev-mega__cols,
  .ev-mega__cols--resacc,
  .ev-mega__dual-tops .ev-mega__cards {
    grid-template-columns: 1fr !important;
  }
}

/* Econovape v1.10.25 — suivi Boxtal compte client */
.woocommerce-account .ev-boxtal-original-hidden {
  display: none !important;
}

.woocommerce-account .ev-boxtal-tracking-card {
  margin: 28px 0 8px;
  padding: 24px;
  border: 1px solid rgba(0, 188, 174, .28);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(0, 188, 174, .08), #fff 55%);
  box-shadow: 0 14px 32px rgba(3, 30, 55, .08);
}

.woocommerce-account .ev-boxtal-tracking-card__intro {
  display: flex;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 18px;
}

.woocommerce-account .ev-boxtal-tracking-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border-radius: 14px;
  background: #0db9ad;
  color: #fff;
  font-size: 22px;
  flex: 0 0 auto;
}

.woocommerce-account .ev-boxtal-tracking-card h2 {
  margin: 0 0 5px;
  color: #06234a;
  font-size: 24px;
  line-height: 1.2;
}

.woocommerce-account .ev-boxtal-tracking-card p {
  margin: 0;
  color: #52647a;
}

.woocommerce-account .ev-boxtal-tracking-card__number {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin: 16px 0;
  padding: 15px 16px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid rgba(6, 35, 74, .10);
}

.woocommerce-account .ev-boxtal-tracking-card__number span {
  color: #66788d;
  font-size: 14px;
}

.woocommerce-account .ev-boxtal-tracking-card__number strong {
  color: #06234a;
  font-size: 18px;
  letter-spacing: .02em;
}

.woocommerce-account .ev-boxtal-tracking-card__status {
  margin: 0 0 18px !important;
  font-size: 14px;
}

.woocommerce-account .ev-boxtal-tracking-card__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 24px;
  border-radius: 14px;
  background: #11b8ad;
  color: #fff !important;
  font-weight: 800;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(17, 184, 173, .24);
}

.woocommerce-account .ev-boxtal-tracking-card__button:hover,
.woocommerce-account .ev-boxtal-tracking-card__button:focus {
  background: #099f96;
  color: #fff !important;
}

@media (max-width: 640px) {
  .woocommerce-account .ev-boxtal-tracking-card {
    padding: 18px;
    border-radius: 16px;
  }

  .woocommerce-account .ev-boxtal-tracking-card__number {
    align-items: flex-start;
    flex-direction: column;
  }

  .woocommerce-account .ev-boxtal-tracking-card__button {
    width: 100%;
  }
}


/* Econovape v1.10.31 — Correction grille produits mobile (Top ventes) */
@media (max-width: 768px) {
  .ev-products,
  .ev-products--grid.columns-4,
  .ev-products.columns-6,
  ul.products.columns-6 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
}


/* =========================================================
   Econovape v1.10.34 — Correctifs responsive propres
   Objectif : corriger mobile/tablette sans modifier le desktop.
   Important : ne pas ajouter de règles hors media query.
========================================================= */

@media (min-width: 881px) and (max-width: 1200px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  .ev-mega {
    max-width: 100vw !important;
    overflow-x: hidden !important;
  }

  .ev-mega__inner {
    max-width: calc(100vw - 24px) !important;
    max-height: calc(100vh - 150px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
    padding: 22px 24px !important;
    box-sizing: border-box !important;
  }

  .ev-mega__grid {
    grid-template-columns: minmax(0, 1fr) 300px !important;
    gap: 22px !important;
    align-items: start !important;
  }

  .ev-mega__cols {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  .ev-mega__bp {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 300px !important;
    gap: 18px !important;
    align-items: start !important;
  }

  .ev-mega__bp-col,
  .ev-mega__col,
  .ev-mega__cards,
  .ev-mega__promo {
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .ev-mega__bp-col--promo {
    max-width: 300px !important;
    width: 100% !important;
  }

  .ev-mega__promo {
    min-height: 220px !important;
    max-height: 320px !important;
    width: 100% !important;
    background-size: cover !important;
    background-position: center !important;
  }

  .ev-mega__promo-body {
    padding: 18px !important;
  }

  .ev-mega__promo-title {
    font-size: 24px !important;
    line-height: 1.05 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  .ev-mega__promo-body p {
    font-size: 13px !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  .ev-mega__promo .ev-btn,
  .ev-mega__promo .ev-btn--accent {
    width: 100% !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  .ev-mega__cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .ev-mega-reass {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 880px) {
  html,
  body {
    max-width: 100%;
    overflow-x: hidden;
  }

  .ev-menu.is-open {
    max-height: calc(100vh - 140px) !important;
    overflow-y: auto !important;
    overflow-x: hidden !important;
  }

  .ev-menu-item--mega,
  .ev-mega,
  .ev-mega__inner,
  .ev-mega__grid,
  .ev-mega__bp,
  .ev-mega__cols,
  .ev-mega__col,
  .ev-mega__bp-col {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .ev-mega__inner {
    padding: 16px !important;
    overflow-x: hidden !important;
  }

  .ev-mega__grid,
  .ev-mega__bp,
  .ev-mega__cols,
  .ev-mega__cards,
  .ev-mega-reass,
  .ev-mega-pmbrands {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .ev-mega__promo {
    min-height: 190px !important;
    max-height: none !important;
    width: 100% !important;
    background-size: cover !important;
    background-position: center !important;
  }

  .ev-mega__promo-body {
    padding: 18px !important;
  }

  .ev-mega__promo-eye {
    font-size: 11px !important;
  }

  .ev-mega__promo-title {
    font-size: 24px !important;
    line-height: 1.08 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  .ev-mega__promo-body p {
    font-size: 13px !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
  }

  .ev-mega__promo .ev-btn,
  .ev-mega__promo .ev-btn--accent {
    width: 100% !important;
    justify-content: center !important;
    box-sizing: border-box !important;
  }

  .ev-mega-card,
  .ev-mega-promo-card,
  .ev-mega-pack,
  .ev-mega-tops a,
  .ev-mega-dest a {
    min-width: 0 !important;
  }

  .ev-mega-card__body,
  .ev-mega-promo-card__body,
  .ev-mega-tops__body,
  .ev-mega-dest__txt {
    min-width: 0 !important;
  }
}

@media (max-width: 768px) {
  .ev-container,
  .ev-main,
  .ev-section,
  .ev-shop-wrap,
  .ev-single-product,
  .ev-cart,
  .ev-checkout,
  .ev-account-wrap {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  .ev-header__inner {
    gap: 12px !important;
  }

  .ev-search {
    max-width: 100% !important;
  }

  .ev-products,
  .ev-products--grid.columns-4,
  .ev-products.columns-6,
  ul.products.columns-6,
  ul.products.columns-4,
  .ev-product-related__grid,
  .ev-cart-xsell__grid,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products,
  body.woocommerce-cart .ev-cart-xsell ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .ev-product-card,
  .ev-card-premium,
  .ev-card-premium__body,
  .woocommerce ul.products li.product {
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body.woocommerce-cart .ev-cart__grid,
  body.woocommerce-checkout .ev-checkout__grid,
  body.woocommerce-account .ev-account__layout,
  body.woocommerce-account .ev-account-layout,
  .ev-product-v2__layout,
  .ev-contactpage__grid {
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .ev-cart__aside,
  body.woocommerce-checkout .ev-checkout__aside {
    position: static !important;
    top: auto !important;
  }

  .woocommerce table.shop_table,
  .woocommerce table.shop_table_responsive,
  .entry-content table {
    display: block !important;
    width: 100% !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch !important;
  }

  a[href^="mailto:"] {
    overflow-wrap: anywhere !important;
  }
}

@media (max-width: 480px) {
  .ev-products,
  .ev-products--grid.columns-4,
  .ev-products.columns-6,
  ul.products.columns-6,
  ul.products.columns-4,
  .ev-product-related__grid,
  .ev-cart-xsell__grid,
  body.woocommerce-cart .ev-cart-xsell ul.ev-products,
  body.woocommerce-cart .ev-cart-xsell ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }

  .ev-product-card__title,
  .ev-card-premium__title,
  .woocommerce-loop-product__title {
    font-size: 12.5px !important;
    line-height: 1.25 !important;
  }

  body.woocommerce-cart .ev-cart-item__product {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
}

/* ============================================================
   ECONOVAPE v1.10.35 — Mégamenu promo : bouton sous l'image
   Ne modifie pas les liens Customizer, seulement la structure visuelle.
   ============================================================ */

.ev-mega__promo {
  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 12px !important;
  background: transparent !important;
  overflow: visible !important;
  min-height: 0 !important;
}

.ev-mega__promo::after {
  content: none !important;
  display: none !important;
}

.ev-mega__promo-card {
  position: relative !important;
  width: 100% !important;
  min-height: 230px !important;
  border-radius: 22px !important;
  overflow: hidden !important;
  background-color: var(--ev-navy,#0a1f3d) !important;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  color: #fff !important;
  display: flex !important;
  align-items: flex-end !important;
  box-sizing: border-box !important;
}

.ev-mega__promo-card::after {
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  background: linear-gradient(180deg, rgba(10,31,61,.08) 0%, rgba(10,31,61,.78) 86%) !important;
  pointer-events: none !important;
}

.ev-mega__promo-card .ev-mega__promo-body,
.ev-mega__promo .ev-mega__promo-body {
  position: relative !important;
  z-index: 2 !important;
  inset: auto !important;
  width: 100% !important;
  max-width: 100% !important;
  transform: none !important;
  padding: 20px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

.ev-mega__promo-title {
  max-width: 100% !important;
  font-size: clamp(24px, 1.75vw, 32px) !important;
  line-height: 1.05 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}

.ev-mega__promo-body p {
  max-width: 100% !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  display: block !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: unset !important;
  white-space: normal !important;
  overflow: visible !important;
  overflow-wrap: anywhere !important;
}

.ev-mega__promo .ev-mega__promo-btn,
.ev-mega__promo > .ev-btn.ev-btn--accent {
  position: static !important;
  transform: none !important;
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 0 22px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  border-radius: 18px !important;
  box-sizing: border-box !important;
  text-align: left !important;
  white-space: normal !important;
}

@media (max-width: 1024px) {
  .ev-mega__promo-card {
    min-height: 190px !important;
  }

  .ev-mega__promo-card .ev-mega__promo-body,
  .ev-mega__promo .ev-mega__promo-body {
    padding: 18px !important;
  }
}

/* ============================================================
   ECONOVAPE v1.10.37 — Mégamenu promo : texte blanc non tronqué
   ============================================================ */
.ev-mega__promo-card .ev-mega__promo-body p,
.ev-mega__promo .ev-mega__promo-body p {
  white-space: normal !important;
  display: block !important;
  -webkit-line-clamp: unset !important;
  -webkit-box-orient: unset !important;
  overflow: visible !important;
  overflow-wrap: anywhere !important;
  max-width: 100% !important;
}

/* ============================================================
   ECONOVAPE v1.10.38 — Bon Plan desktop : 6 produits visibles
   Objectif : empêcher la carte promo de chevaucher les Top ventes.
   Desktop uniquement, aucun changement mobile/tablette.
   ============================================================ */
@media (min-width: 1025px) {
  .ev-mega--bonsplans .ev-mega__bp--simple {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 300px !important;
    gap: 18px !important;
    align-items: start !important;
  }

  .ev-mega--bonsplans .ev-mega__bp-col--promos,
  .ev-mega--bonsplans .ev-mega__bp-col--tops {
    min-width: 0 !important;
    max-width: 100% !important;
    position: relative !important;
    z-index: 2 !important;
  }

  .ev-mega--bonsplans .ev-mega__bp-col--promo {
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
    position: relative !important;
    z-index: 1 !important;
    overflow: visible !important;
  }

  .ev-mega--bonsplans .ev-mega-prod-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }

  .ev-mega--bonsplans .ev-mega-prod {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 8px !important;
    gap: 9px !important;
    box-sizing: border-box !important;
  }

  .ev-mega--bonsplans .ev-mega-prod__media {
    flex: 0 0 52px !important;
    width: 52px !important;
    height: 52px !important;
  }

  .ev-mega--bonsplans .ev-mega-prod__title {
    font-size: 12px !important;
    line-height: 1.25 !important;
    -webkit-line-clamp: 2 !important;
  }

  .ev-mega--bonsplans .ev-mega-prod__price {
    font-size: 12px !important;
    line-height: 1.2 !important;
  }

  .ev-mega--bonsplans .ev-mega__promo {
    width: 300px !important;
    min-width: 300px !important;
    max-width: 300px !important;
    gap: 10px !important;
  }

  .ev-mega--bonsplans .ev-mega__promo-card {
    width: 300px !important;
    max-width: 300px !important;
    min-height: 205px !important;
    height: 205px !important;
    margin: 0 !important;
  }

  .ev-mega--bonsplans .ev-mega__promo-card .ev-mega__promo-body,
  .ev-mega--bonsplans .ev-mega__promo .ev-mega__promo-body {
    padding: 16px !important;
  }

  .ev-mega--bonsplans .ev-mega__promo-title {
    font-size: clamp(23px, 1.55vw, 29px) !important;
    line-height: 1.05 !important;
  }

  .ev-mega--bonsplans .ev-mega__promo-body p {
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .ev-mega--bonsplans .ev-mega__promo .ev-mega__promo-btn,
  .ev-mega--bonsplans .ev-mega__promo > .ev-btn.ev-btn--accent {
    width: 100% !important;
    max-width: 270px !important;
    min-height: 50px !important;
    margin: 10px auto 0 !important;
    padding: 0 18px !important;
  }
}

/* ============================================================
   ECONOVAPE v1.10.41 — Avis clients visibles fiche produit
   Objectif : sortir les avis des onglets et les remonter avant les produits associés.
   ============================================================ */
body.single-product .ev-product-v2__reviews-visible {
  margin: 26px 0 24px !important;
  padding: 24px !important;
  border: 1px solid rgba(18,184,176,.18) !important;
  border-radius: 24px !important;
  background: linear-gradient(135deg, rgba(18,184,176,.07), #ffffff 48%, rgba(10,31,61,.025)) !important;
  box-shadow: 0 16px 38px rgba(10,31,61,.06) !important;
  box-sizing: border-box !important;
}

body.single-product .ev-product-v2__reviews-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 20px !important;
  margin-bottom: 20px !important;
}

body.single-product .ev-product-v2__reviews-kicker {
  margin: 0 0 6px !important;
  color: #12b8b0 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body.single-product .ev-product-v2__reviews-title {
  margin: 0 !important;
  color: #0a1f3d !important;
  font-size: 24px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

body.single-product .ev-product-v2__reviews-score {
  display: grid !important;
  justify-items: end !important;
  gap: 4px !important;
  min-width: 190px !important;
  padding: 14px 16px !important;
  border-radius: 18px !important;
  background: #ffffff !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  box-shadow: 0 10px 24px rgba(10,31,61,.05) !important;
  text-align: right !important;
}

body.single-product .ev-product-v2__reviews-score .star-rating {
  margin: 0 !important;
  color: #12b8b0 !important;
}

body.single-product .ev-product-v2__reviews-score strong {
  display: block !important;
  color: #0a1f3d !important;
  font-size: 18px !important;
  line-height: 1.1 !important;
  font-weight: 900 !important;
}

body.single-product .ev-product-v2__reviews-score span {
  color: #5b6b82 !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
}

body.single-product .ev-product-v2__reviews-content {
  background: #ffffff !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 20px !important;
  padding: 20px !important;
}

body.single-product .ev-product-v2__reviews-content #reviews,
body.single-product .ev-product-v2__reviews-content #comments,
body.single-product .ev-product-v2__reviews-content #review_form_wrapper {
  margin: 0 !important;
}

body.single-product .ev-product-v2__reviews-content #comments h2,
body.single-product .ev-product-v2__reviews-content #reply-title {
  color: #0a1f3d !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
  margin: 0 0 14px !important;
}

body.single-product .ev-product-v2__reviews-content .commentlist {
  margin: 0 0 20px !important;
  padding: 0 !important;
  list-style: none !important;
}

body.single-product .ev-product-v2__reviews-content .comment_container {
  display: grid !important;
  grid-template-columns: 48px 1fr !important;
  gap: 14px !important;
  padding: 16px !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 16px !important;
  background: #f8fbfc !important;
}

body.single-product .ev-product-v2__reviews-content .comment_container img.avatar {
  width: 48px !important;
  height: 48px !important;
  border-radius: 999px !important;
  margin: 0 !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.single-product .ev-product-v2__reviews-content textarea,
body.single-product .ev-product-v2__reviews-content input[type="text"],
body.single-product .ev-product-v2__reviews-content input[type="email"] {
  width: 100% !important;
  border: 1px solid rgba(10,31,61,.14) !important;
  border-radius: 14px !important;
  padding: 14px 16px !important;
  box-sizing: border-box !important;
  outline: none !important;
}

body.single-product .ev-product-v2__reviews-content textarea:focus,
body.single-product .ev-product-v2__reviews-content input[type="text"]:focus,
body.single-product .ev-product-v2__reviews-content input[type="email"]:focus {
  border-color: #12b8b0 !important;
  box-shadow: 0 0 0 4px rgba(18,184,176,.12) !important;
}

body.single-product .ev-product-v2__reviews-content .form-submit .submit,
body.single-product .ev-product-v2__reviews-content button,
body.single-product .ev-product-v2__reviews-content input[type="submit"] {
  min-height: 48px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(135deg,#12b8b0,#0aa39d) !important;
  color: #fff !important;
  font-weight: 900 !important;
  padding: 0 26px !important;
  box-shadow: 0 14px 28px rgba(18,184,176,.22) !important;
}

body.single-product .ev-product-v2__details .wc-tabs li.reviews_tab,
body.single-product .ev-product-v2__details #tab-reviews {
  display: none !important;
}

@media (max-width: 768px) {
  body.single-product .ev-product-v2__reviews-visible {
    padding: 18px !important;
    border-radius: 20px !important;
  }
  body.single-product .ev-product-v2__reviews-head {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  body.single-product .ev-product-v2__reviews-score {
    width: 100% !important;
    min-width: 0 !important;
    justify-items: start !important;
    text-align: left !important;
  }
  body.single-product .ev-product-v2__reviews-content {
    padding: 16px !important;
  }
  body.single-product .ev-product-v2__reviews-content .comment_container {
    grid-template-columns: 1fr !important;
  }
}

/* ============================================================
   ECONOVAPE v1.10.42 — Description / caractéristiques visibles + avis propres
   Objectif : sortir Description et Caractéristiques des onglets, placer la
   description avant les avis, et supprimer l'avatar dans les avis.
   ============================================================ */
body.single-product .ev-product-v2__details-visible {
  margin: 26px 0 24px !important;
  display: grid !important;
  gap: 18px !important;
}

body.single-product .ev-product-v2__details-card {
  padding: 24px !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 24px !important;
  background: #ffffff !important;
  box-shadow: 0 16px 38px rgba(10,31,61,.05) !important;
  box-sizing: border-box !important;
}

body.single-product .ev-product-v2__details-card--description {
  background: linear-gradient(135deg, rgba(18,184,176,.06), #ffffff 52%, rgba(10,31,61,.02)) !important;
  border-color: rgba(18,184,176,.16) !important;
}

body.single-product .ev-product-v2__details-kicker {
  margin: 0 0 6px !important;
  color: #12b8b0 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body.single-product .ev-product-v2__details-title {
  margin: 0 0 16px !important;
  color: #0a1f3d !important;
  font-size: 24px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

body.single-product .ev-product-v2__details-content {
  color: #24364f !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
}

body.single-product .ev-product-v2__details-content p:last-child {
  margin-bottom: 0 !important;
}

body.single-product .ev-product-v2__details-content--attributes table,
body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes {
  width: 100% !important;
  border-collapse: collapse !important;
  margin: 0 !important;
  border: 0 !important;
}

body.single-product .ev-product-v2__details-content--attributes tr,
body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item {
  border-bottom: 1px solid rgba(10,31,61,.08) !important;
}

body.single-product .ev-product-v2__details-content--attributes tr:last-child,
body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item:last-child {
  border-bottom: 0 !important;
}

body.single-product .ev-product-v2__details-content--attributes th,
body.single-product .ev-product-v2__details-content--attributes td,
body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item__label,
body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item__value {
  padding: 12px 0 !important;
  border: 0 !important;
  background: transparent !important;
  vertical-align: top !important;
}

body.single-product .ev-product-v2__details-content--attributes th,
body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item__label {
  width: 240px !important;
  color: #0a1f3d !important;
  font-weight: 900 !important;
}

body.single-product .ev-product-v2__details-content--attributes td,
body.single-product .ev-product-v2__details-content--attributes td p,
body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item__value,
body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item__value p {
  color: #12b8b0 !important;
  font-style: normal !important;
  margin: 0 !important;
}

/* Les anciens onglets Description / Caractéristiques ne sont plus utilisés. */
body.single-product .ev-product-v2__details,
body.single-product .woocommerce-tabs,
body.single-product .wc-tabs-wrapper {
  display: none !important;
}

/* Avis clients : pas d'avatar/photo de profil, uniquement pseudo + note + avis. */
body.single-product .ev-product-v2__reviews-content .comment_container {
  display: block !important;
  padding: 18px 20px !important;
  min-height: 0 !important;
}

body.single-product .ev-product-v2__reviews-content .comment_container img.avatar,
body.single-product .ev-product-v2__reviews-content .comment_container .avatar {
  display: none !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  min-height: 0 !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text .star-rating {
  float: none !important;
  display: block !important;
  margin: 0 0 8px !important;
  color: #ffb400 !important;
}

body.single-product .ev-product-v2__reviews-content .woocommerce-review__author,
body.single-product .ev-product-v2__reviews-content .meta strong,
body.single-product .ev-product-v2__reviews-content .comment-text .meta strong {
  display: inline !important;
  color: #0a1f3d !important;
  font-weight: 900 !important;
}

body.single-product .ev-product-v2__reviews-content .woocommerce-review__dash,
body.single-product .ev-product-v2__reviews-content .woocommerce-review__published-date {
  color: #7b8794 !important;
}

body.single-product .ev-product-v2__reviews-content .description {
  margin-top: 10px !important;
  color: #24364f !important;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

body.single-product .ev-product-v2__reviews-content .description p:last-child {
  margin-bottom: 0 !important;
}

@media (max-width: 768px) {
  body.single-product .ev-product-v2__details-card {
    padding: 18px !important;
    border-radius: 20px !important;
  }
  body.single-product .ev-product-v2__details-title {
    font-size: 21px !important;
  }
  body.single-product .ev-product-v2__details-content--attributes th,
  body.single-product .ev-product-v2__details-content--attributes td,
  body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item__label,
  body.single-product .ev-product-v2__details-content--attributes .woocommerce-product-attributes-item__value {
    display: block !important;
    width: 100% !important;
    padding: 8px 0 !important;
  }
}

/* ============================================================
   ECONOVAPE v1.10.43 — Fiche produit : description + avis propres
   Objectif : supprimer les doublons de titres, masquer les onglets natifs,
   rendre les avis plus compacts et lisibles sans avatar.
   ============================================================ */

/* Plus de doublon type "Description / Description du produit" */
body.single-product .ev-product-v2__details-title {
  display: none !important;
}

/* Les onglets WooCommerce natifs ne sont plus utiles sur cette fiche personnalisée */
body.single-product .woocommerce-tabs,
body.single-product .wc-tabs-wrapper,
body.single-product .ev-product-v2__details {
  display: none !important;
}

/* Blocs description/caractéristiques : plus compacts */
body.single-product .ev-product-v2__details-visible {
  margin: 22px 0 20px !important;
  gap: 14px !important;
}

body.single-product .ev-product-v2__details-card {
  padding: 20px 22px !important;
  border-radius: 20px !important;
}

body.single-product .ev-product-v2__details-kicker {
  margin-bottom: 12px !important;
}

/* Avis clients : bloc global moins haut */
body.single-product .ev-product-v2__reviews-visible {
  margin: 22px 0 22px !important;
  padding: 22px !important;
  border-radius: 22px !important;
}

body.single-product .ev-product-v2__reviews-head {
  margin-bottom: 16px !important;
}

body.single-product .ev-product-v2__reviews-title {
  font-size: 22px !important;
}

body.single-product .ev-product-v2__reviews-content {
  padding: 16px 18px !important;
  border-radius: 18px !important;
}

/* Titre WooCommerce "1 avis pour..." : moins lourd */
body.single-product .ev-product-v2__reviews-content #comments h2 {
  margin: 0 0 12px !important;
  font-size: 16px !important;
  line-height: 1.25 !important;
}

/* Liste des avis : espacée mais compacte */
body.single-product .ev-product-v2__reviews-content .commentlist {
  margin: 0 0 18px !important;
  padding: 0 !important;
  list-style: none !important;
}

body.single-product .ev-product-v2__reviews-content .commentlist > li {
  margin: 0 0 12px !important;
  padding: 0 !important;
}

/* Avis individuel : plus de grand bloc vide, plus d'avatar */
body.single-product .ev-product-v2__reviews-content .comment_container {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  padding: 14px 16px !important;
  margin: 0 !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 16px !important;
  background: #f8fbfc !important;
  box-sizing: border-box !important;
}

body.single-product .ev-product-v2__reviews-content .comment_container img.avatar,
body.single-product .ev-product-v2__reviews-content .comment_container .avatar,
body.single-product .ev-product-v2__reviews-content img.avatar,
body.single-product .ev-product-v2__reviews-content .avatar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  min-height: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text .star-rating {
  float: none !important;
  display: inline-block !important;
  margin: 0 0 8px !important;
  color: #ffb400 !important;
  vertical-align: middle !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text .meta {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 6px !important;
  margin: 0 0 10px !important;
  color: #7b8794 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
}

body.single-product .ev-product-v2__reviews-content .woocommerce-review__author,
body.single-product .ev-product-v2__reviews-content .meta strong,
body.single-product .ev-product-v2__reviews-content .comment-text .meta strong {
  display: inline !important;
  color: #0a1f3d !important;
  font-weight: 900 !important;
}

body.single-product .ev-product-v2__reviews-content .woocommerce-review__dash {
  display: none !important;
}

body.single-product .ev-product-v2__reviews-content .description {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  color: #24364f !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

body.single-product .ev-product-v2__reviews-content .description p {
  margin: 0 !important;
}

/* Formulaire d'avis : compact et propre */
body.single-product .ev-product-v2__reviews-content #review_form_wrapper {
  margin-top: 18px !important;
  padding-top: 18px !important;
  border-top: 1px solid rgba(10,31,61,.08) !important;
}

body.single-product .ev-product-v2__reviews-content #reply-title {
  margin: 0 0 10px !important;
  font-size: 17px !important;
}

body.single-product .ev-product-v2__reviews-content textarea {
  min-height: 96px !important;
  height: 96px !important;
}

@media (max-width: 768px) {
  body.single-product .ev-product-v2__details-card,
  body.single-product .ev-product-v2__reviews-visible,
  body.single-product .ev-product-v2__reviews-content {
    padding: 16px !important;
    border-radius: 18px !important;
  }

  body.single-product .ev-product-v2__reviews-title {
    font-size: 20px !important;
  }
}


/* ============================================================
   ECONOVAPE v1.10.44 — Avis clients fiche produit : version propre
   Objectif : avis compacts, avatar supprimé, pseudo uniquement,
   plus de titre lourd "1 avis pour...".
   ============================================================ */
body.single-product .ev-product-v2__reviews-content #comments > h2,
body.single-product .ev-product-v2__reviews-content .woocommerce-Reviews-title {
  display: none !important;
}

body.single-product .ev-product-v2__reviews-content .commentlist {
  display: grid !important;
  gap: 12px !important;
  margin: 0 0 18px !important;
  padding: 0 !important;
  list-style: none !important;
}

body.single-product .ev-product-v2__reviews-content .commentlist > li,
body.single-product .ev-product-v2__reviews-content li.review,
body.single-product .ev-product-v2__reviews-content li.comment {
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
}

body.single-product .ev-product-v2__reviews-content .comment_container,
body.single-product .ev-product-v2__reviews-content .commentlist .comment_container {
  display: block !important;
  position: relative !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 16px 18px !important;
  border: 1px solid rgba(10,31,61,.08) !important;
  border-radius: 16px !important;
  background: #f8fbfc !important;
  box-sizing: border-box !important;
  overflow: visible !important;
}

body.single-product .ev-product-v2__reviews-content .comment_container > img,
body.single-product .ev-product-v2__reviews-content .comment_container img.avatar,
body.single-product .ev-product-v2__reviews-content .comment_container .avatar,
body.single-product .ev-product-v2__reviews-content img.avatar,
body.single-product .ev-product-v2__reviews-content .avatar {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  position: absolute !important;
  pointer-events: none !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text,
body.single-product .ev-product-v2__reviews-content .comment_container .comment-text {
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-sizing: border-box !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text .star-rating {
  float: none !important;
  display: block !important;
  width: 6.2em !important;
  height: 1.1em !important;
  margin: 0 0 8px !important;
  color: #ffb400 !important;
  line-height: 1 !important;
  position: static !important;
}

body.single-product .ev-product-v2__reviews-content .comment-text .meta {
  display: block !important;
  margin: 0 0 10px !important;
  padding: 0 !important;
  color: #7b8794 !important;
  font-size: 14px !important;
  line-height: 1.35 !important;
  min-height: 0 !important;
}

body.single-product .ev-product-v2__reviews-content .woocommerce-review__author,
body.single-product .ev-product-v2__reviews-content .comment-text .meta strong,
body.single-product .ev-product-v2__reviews-content .meta strong {
  display: inline !important;
  color: #0a1f3d !important;
  font-size: 15px !important;
  font-weight: 900 !important;
  line-height: 1.35 !important;
}

body.single-product .ev-product-v2__reviews-content .woocommerce-review__verified,
body.single-product .ev-product-v2__reviews-content .woocommerce-review__dash,
body.single-product .ev-product-v2__reviews-content .woocommerce-review__published-date,
body.single-product .ev-product-v2__reviews-content time.woocommerce-review__published-date {
  display: none !important;
}

body.single-product .ev-product-v2__reviews-content .description,
body.single-product .ev-product-v2__reviews-content .comment-text .description {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #24364f !important;
  font-size: 15px !important;
  line-height: 1.5 !important;
  min-height: 0 !important;
  height: auto !important;
}

body.single-product .ev-product-v2__reviews-content .description p,
body.single-product .ev-product-v2__reviews-content .comment-text .description p {
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product .ev-product-v2__reviews-content #review_form_wrapper {
  margin-top: 16px !important;
  padding-top: 16px !important;
}

body.single-product .ev-product-v2__reviews-content textarea {
  min-height: 88px !important;
  height: 88px !important;
}

/* ============================================================
   ECONOVAPE v1.10.45 — Mégamenu : TOP produits sans débordement
   Problème corrigé : les cartes Top DIY / Top saveurs / Top résistances
   pouvaient garder une largeur minimale trop grande et sortir du panneau.
   ============================================================ */
@media (min-width: 1025px) {
  .ev-mega .ev-mega__featured {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  .ev-mega .ev-mega__featured .ev-mega__cards {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  .ev-mega .ev-mega__featured .ev-mega-card {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    padding: 10px !important;
    gap: 10px !important;
  }

  .ev-mega .ev-mega__featured .ev-mega-card__img {
    flex: 0 0 52px !important;
    width: 52px !important;
    height: 52px !important;
  }

  .ev-mega .ev-mega__featured .ev-mega-card__body {
    min-width: 0 !important;
    overflow: hidden !important;
  }

  .ev-mega .ev-mega__featured .ev-mega-card__body strong {
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    font-size: 13px !important;
    line-height: 1.25 !important;
  }

  .ev-mega .ev-mega__featured .ev-mega-card__price,
  .ev-mega .ev-mega__featured .ev-mega-card__sub {
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }
}

/* ============================================================
   ECONOVAPE v1.10.46 — Mégamenu : correction TOP Résistances & Accessoires
   Objectif : conserver la correction anti-débordement DIY, mais restaurer
   des cartes lisibles dans le mégamenu fusionné Résistances & Accessoires.
   ============================================================ */
@media (min-width: 1025px) {
  .ev-mega--resistances .ev-mega__dual-tops,
  .ev-mega--accessoires .ev-mega__dual-tops {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 24px !important;
    overflow: visible !important;
  }

  .ev-mega--resistances .ev-mega__dual-tops .ev-mega__featured,
  .ev-mega--accessoires .ev-mega__dual-tops .ev-mega__featured {
    overflow: visible !important;
    min-width: 0 !important;
  }

  .ev-mega--resistances .ev-mega__dual-tops .ev-mega__cards,
  .ev-mega--accessoires .ev-mega__dual-tops .ev-mega__cards {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  .ev-mega--resistances .ev-mega__dual-tops .ev-mega-card,
  .ev-mega--accessoires .ev-mega__dual-tops .ev-mega-card {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 12px !important;
    gap: 12px !important;
  }

  .ev-mega--resistances .ev-mega__dual-tops .ev-mega-card__img,
  .ev-mega--accessoires .ev-mega__dual-tops .ev-mega-card__img {
    flex: 0 0 58px !important;
    width: 58px !important;
    height: 58px !important;
  }

  .ev-mega--resistances .ev-mega__dual-tops .ev-mega-card__body strong,
  .ev-mega--accessoires .ev-mega__dual-tops .ev-mega-card__body strong {
    font-size: 14px !important;
    line-height: 1.25 !important;
    -webkit-line-clamp: 2 !important;
  }
}


/* =========================================================
   ECONOVAPE v1.10.48 — Boutique mobile : 2 colonnes compactes
   Objectif : afficher 2 produits par ligne sur mobile en conservant
   la variation, la quantité et le bouton Ajouter.
   Desktop/tablette non modifiés.
========================================================= */
@media (max-width: 640px) {
  body.woocommerce-shop .ev-shop-main ul.products,
  body.post-type-archive-product .ev-shop-main ul.products,
  body.tax-product_cat .ev-shop-main ul.products,
  body.tax-product_tag .ev-shop-main ul.products,
  body[class*="tax-pa_"] .ev-shop-main ul.products,
  body.woocommerce-shop ul.products,
  body.post-type-archive-product ul.products,
  body.tax-product_cat ul.products,
  body.tax-product_tag ul.products,
  body[class*="tax-pa_"] ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.woocommerce-shop ul.products::before,
  body.woocommerce-shop ul.products::after,
  body.post-type-archive-product ul.products::before,
  body.post-type-archive-product ul.products::after,
  body.tax-product_cat ul.products::before,
  body.tax-product_cat ul.products::after,
  body.tax-product_tag ul.products::before,
  body.tax-product_tag ul.products::after,
  body[class*="tax-pa_"] ul.products::before,
  body[class*="tax-pa_"] ul.products::after {
    content: none !important;
    display: none !important;
  }

  body.woocommerce-shop ul.products li.product.ev-card-premium,
  body.post-type-archive-product ul.products li.product.ev-card-premium,
  body.tax-product_cat ul.products li.product.ev-card-premium,
  body.tax-product_tag ul.products li.product.ev-card-premium,
  body[class*="tax-pa_"] ul.products li.product.ev-card-premium {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 8px !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
  }

  body.woocommerce-shop .ev-card-premium__media,
  body.post-type-archive-product .ev-card-premium__media,
  body.tax-product_cat .ev-card-premium__media,
  body.tax-product_tag .ev-card-premium__media,
  body[class*="tax-pa_"] .ev-card-premium__media {
    aspect-ratio: 1 / 1 !important;
    border-radius: 12px !important;
  }

  body.woocommerce-shop .ev-card-premium__heart,
  body.post-type-archive-product .ev-card-premium__heart,
  body.tax-product_cat .ev-card-premium__heart,
  body.tax-product_tag .ev-card-premium__heart,
  body[class*="tax-pa_"] .ev-card-premium__heart {
    right: 7px !important;
    bottom: 7px !important;
    width: 32px !important;
    height: 32px !important;
  }

  body.woocommerce-shop .ev-card-premium__heart .ev-wishlist,
  body.woocommerce-shop .ev-card-premium__heart a,
  body.woocommerce-shop .ev-card-premium__heart button,
  body.woocommerce-shop .ev-card-premium__heart .yith-wcwl-add-to-wishlist-button,
  body.post-type-archive-product .ev-card-premium__heart .ev-wishlist,
  body.post-type-archive-product .ev-card-premium__heart a,
  body.post-type-archive-product .ev-card-premium__heart button,
  body.post-type-archive-product .ev-card-premium__heart .yith-wcwl-add-to-wishlist-button,
  body.tax-product_cat .ev-card-premium__heart .ev-wishlist,
  body.tax-product_cat .ev-card-premium__heart a,
  body.tax-product_cat .ev-card-premium__heart button,
  body.tax-product_cat .ev-card-premium__heart .yith-wcwl-add-to-wishlist-button,
  body.tax-product_tag .ev-card-premium__heart .ev-wishlist,
  body.tax-product_tag .ev-card-premium__heart a,
  body.tax-product_tag .ev-card-premium__heart button,
  body.tax-product_tag .ev-card-premium__heart .yith-wcwl-add-to-wishlist-button,
  body[class*="tax-pa_"] .ev-card-premium__heart .ev-wishlist,
  body[class*="tax-pa_"] .ev-card-premium__heart a,
  body[class*="tax-pa_"] .ev-card-premium__heart button,
  body[class*="tax-pa_"] .ev-card-premium__heart .yith-wcwl-add-to-wishlist-button {
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
  }

  body.woocommerce-shop .ev-card-premium__badge,
  body.post-type-archive-product .ev-card-premium__badge,
  body.tax-product_cat .ev-card-premium__badge,
  body.tax-product_tag .ev-card-premium__badge,
  body[class*="tax-pa_"] .ev-card-premium__badge {
    height: 22px !important;
    padding: 0 7px !important;
    font-size: 9px !important;
    top: 7px !important;
    left: 7px !important;
  }

  body.woocommerce-shop .ev-card-premium__body,
  body.post-type-archive-product .ev-card-premium__body,
  body.tax-product_cat .ev-card-premium__body,
  body.tax-product_tag .ev-card-premium__body,
  body[class*="tax-pa_"] .ev-card-premium__body {
    padding-top: 8px !important;
    min-width: 0 !important;
  }

  body.woocommerce-shop .ev-card-premium__title,
  body.post-type-archive-product .ev-card-premium__title,
  body.tax-product_cat .ev-card-premium__title,
  body.tax-product_tag .ev-card-premium__title,
  body[class*="tax-pa_"] .ev-card-premium__title {
    min-height: 34px !important;
    max-height: 34px !important;
    margin-bottom: 5px !important;
    font-size: 12.2px !important;
    line-height: 1.35 !important;
    -webkit-line-clamp: 2 !important;
  }

  body.woocommerce-shop .ev-card-premium__cat,
  body.post-type-archive-product .ev-card-premium__cat,
  body.tax-product_cat .ev-card-premium__cat,
  body.tax-product_tag .ev-card-premium__cat,
  body[class*="tax-pa_"] .ev-card-premium__cat {
    min-height: 14px !important;
    margin-bottom: 4px !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
  }

  body.woocommerce-shop .ev-card-premium__rating,
  body.post-type-archive-product .ev-card-premium__rating,
  body.tax-product_cat .ev-card-premium__rating,
  body.tax-product_tag .ev-card-premium__rating,
  body[class*="tax-pa_"] .ev-card-premium__rating {
    min-height: 15px !important;
    margin-bottom: 4px !important;
  }

  body.woocommerce-shop .ev-card-premium__rating .star-rating,
  body.post-type-archive-product .ev-card-premium__rating .star-rating,
  body.tax-product_cat .ev-card-premium__rating .star-rating,
  body.tax-product_tag .ev-card-premium__rating .star-rating,
  body[class*="tax-pa_"] .ev-card-premium__rating .star-rating {
    font-size: 10px !important;
  }

  body.woocommerce-shop .ev-card-premium__price,
  body.post-type-archive-product .ev-card-premium__price,
  body.tax-product_cat .ev-card-premium__price,
  body.tax-product_tag .ev-card-premium__price,
  body[class*="tax-pa_"] .ev-card-premium__price {
    min-height: 22px !important;
    margin-bottom: 6px !important;
    font-size: 14px !important;
    line-height: 1.15 !important;
  }

  body.woocommerce-shop .ev-card-premium__select-wrap,
  body.post-type-archive-product .ev-card-premium__select-wrap,
  body.tax-product_cat .ev-card-premium__select-wrap,
  body.tax-product_tag .ev-card-premium__select-wrap,
  body[class*="tax-pa_"] .ev-card-premium__select-wrap {
    margin-bottom: 6px !important;
  }

  body.woocommerce-shop .ev-card-premium__select,
  body.post-type-archive-product .ev-card-premium__select,
  body.tax-product_cat .ev-card-premium__select,
  body.tax-product_tag .ev-card-premium__select,
  body[class*="tax-pa_"] .ev-card-premium__select {
    height: 34px !important;
    min-height: 34px !important;
    padding: 0 8px !important;
    border-radius: 9px !important;
    font-size: 12px !important;
  }

  body.woocommerce-shop .ev-card-premium__qty,
  body.post-type-archive-product .ev-card-premium__qty,
  body.tax-product_cat .ev-card-premium__qty,
  body.tax-product_tag .ev-card-premium__qty,
  body[class*="tax-pa_"] .ev-card-premium__qty {
    height: 34px !important;
    grid-template-columns: 34px 1fr 34px !important;
    border-radius: 9px !important;
  }

  body.woocommerce-shop .ev-card-premium__qty-btn,
  body.post-type-archive-product .ev-card-premium__qty-btn,
  body.tax-product_cat .ev-card-premium__qty-btn,
  body.tax-product_tag .ev-card-premium__qty-btn,
  body[class*="tax-pa_"] .ev-card-premium__qty-btn {
    height: 34px !important;
    min-height: 34px !important;
    font-size: 18px !important;
  }

  body.woocommerce-shop .ev-card-premium__qty-input,
  body.post-type-archive-product .ev-card-premium__qty-input,
  body.tax-product_cat .ev-card-premium__qty-input,
  body.tax-product_tag .ev-card-premium__qty-input,
  body[class*="tax-pa_"] .ev-card-premium__qty-input {
    height: 34px !important;
    min-height: 34px !important;
    font-size: 13px !important;
  }

  body.woocommerce-shop .ev-card-premium__add,
  body.woocommerce-shop a.ev-card-premium__add,
  body.post-type-archive-product .ev-card-premium__add,
  body.post-type-archive-product a.ev-card-premium__add,
  body.tax-product_cat .ev-card-premium__add,
  body.tax-product_cat a.ev-card-premium__add,
  body.tax-product_tag .ev-card-premium__add,
  body.tax-product_tag a.ev-card-premium__add,
  body[class*="tax-pa_"] .ev-card-premium__add,
  body[class*="tax-pa_"] a.ev-card-premium__add {
    height: 38px !important;
    min-height: 38px !important;
    margin-top: 6px !important;
    padding: 0 7px !important;
    border-radius: 10px !important;
    font-size: 12px !important;
    gap: 4px !important;
  }

  body.woocommerce-shop .ev-card-premium__add strong,
  body.post-type-archive-product .ev-card-premium__add strong,
  body.tax-product_cat .ev-card-premium__add strong,
  body.tax-product_tag .ev-card-premium__add strong,
  body[class*="tax-pa_"] .ev-card-premium__add strong {
    font-size: 12px !important;
  }
}

/* Econovape 1.10.51 — Uniformisation des images de la boutique */
body.woocommerce-shop .ev-card-premium__media,
body.post-type-archive-product .ev-card-premium__media,
body.tax-product_cat .ev-card-premium__media,
body.tax-product_tag .ev-card-premium__media,
body[class*="tax-pa_"] .ev-card-premium__media,
body.woocommerce-shop .ev-card-premium__image-link,
body.post-type-archive-product .ev-card-premium__image-link,
body.tax-product_cat .ev-card-premium__image-link,
body.tax-product_tag .ev-card-premium__image-link,
body[class*="tax-pa_"] .ev-card-premium__image-link {
  background: #ffffff !important;
}

body.woocommerce-shop .ev-card-premium__image,
body.post-type-archive-product .ev-card-premium__image,
body.tax-product_cat .ev-card-premium__image,
body.tax-product_tag .ev-card-premium__image,
body[class*="tax-pa_"] .ev-card-premium__image {
  object-fit: contain !important;
  object-position: center !important;
  background: #ffffff !important;
  padding: 8px !important;
  box-sizing: border-box !important;
}
