/*
Theme Name: Le L Luxury — Signature v3
Theme URI: https://lelluxury.com/
Author: Le L Luxury
Description: Édition Signature reconstruite de Le L Luxury : boutique premium noir profond et champagne, responsive, compatible WooCommerce.
Version: 3.0.2
Requires at least: 6.2
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: lelluxury
*/
:root{--bg:#0e0e0e;--panel:#191919;--panel2:#222;--gold:#c8a451;--gold2:#efd68d;--text:#f4f0e7;--muted:#aaa49a;--border:#383126;--max:1220px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:15px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
a{color:var(--gold2);text-decoration:none}a:hover{color:#fff}
img{max-width:100%;height:auto}
button,input,select,textarea{font:inherit}
button,.button,input[type=submit]{cursor:pointer}
:focus-visible{outline:2px solid var(--gold2);outline-offset:3px}
.lll-wrap{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.lll-announcement{padding:7px 12px;text-align:center;background:#1c1810;color:var(--gold2);border-bottom:1px solid #c8a45124;font-size:10px;letter-spacing:.16em;text-transform:uppercase}
.site-header{position:relative;z-index:50;background:#101010;border-bottom:1px solid #c8a45130}
.lll-header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.lll-brand{display:flex;align-items:center;gap:10px;color:var(--text);min-width:0}
.lll-brand-mark{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--gold);border-radius:50%;color:var(--gold2);font-size:18px;flex-shrink:0}
.lll-brand-name{font-family:Georgia,serif;font-size:16px;letter-spacing:.15em;text-transform:uppercase;line-height:1.2}
.lll-brand-sub{display:block;margin-top:4px;color:var(--muted);font-size:8px;letter-spacing:.22em;text-transform:uppercase}
.lll-nav{margin-left:auto}.lll-nav ul{display:flex;align-items:center;gap:23px;list-style:none;padding:0;margin:0}.lll-nav a{color:#ddd7cb;font-size:11px;letter-spacing:.09em;text-transform:uppercase}.lll-nav a:hover{color:var(--gold2)}
.lll-actions{display:flex;align-items:center;gap:8px}.lll-pill{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 13px;border:1px solid #c8a45155;border-radius:99px;color:var(--text);font-size:10px;white-space:nowrap}.lll-pill:hover{background:var(--gold);color:#111}
.lll-toggle{display:none;width:40px;height:40px;border:1px solid #c8a45166;border-radius:50%;background:transparent;color:var(--gold2);font-size:20px}
.lll-main{min-height:50vh}
.lll-hero{padding:75px 0;background:radial-gradient(ellipse at 80% 45%,#59431d30,transparent 34%),linear-gradient(125deg,#191919,#0e0e0e 70%);overflow:hidden}
.lll-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:45px}
.lll-kicker{color:var(--gold2);font-size:10px;letter-spacing:.22em;text-transform:uppercase}
.lll-hero h1{font:400 clamp(42px,6vw,76px)/1.04 Georgia,serif;letter-spacing:-.035em;margin:18px 0}
.lll-hero h1 span{color:var(--gold2)}
.lll-hero p{max-width:530px;color:#b9b3a8;line-height:1.9;font-size:14px}
.lll-buttons{display:flex;flex-wrap:wrap;gap:11px;margin-top:27px}
.lll-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 20px;border:1px solid var(--gold);border-radius:99px;background:var(--gold);color:#111;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;transition:transform .2s,background .2s}
.lll-button:hover{background:var(--gold2);color:#111;transform:translateY(-2px)}
.lll-button-outline{background:transparent;color:var(--gold2)}.lll-button-outline:hover{background:#c8a45112;color:#fff}
.lll-hero-art{display:grid;place-items:center;min-height:300px}
.lll-monogram{width:min(100%,380px);aspect-ratio:4/5;display:grid;place-items:center;position:relative;overflow:hidden;border:1px solid #c8a45155;border-radius:45% 45% 18px 18px;background:radial-gradient(ellipse,#393124,#191919 65%);font:clamp(130px,17vw,190px)/1 Georgia,serif;color:var(--gold2);text-shadow:0 12px 35px #000;animation:lll-float 5s ease-in-out infinite}
.lll-monogram:before{content:"LE L LUXURY";position:absolute;top:24px;font:9px Arial,sans-serif;letter-spacing:.3em;color:#c8a451aa}
.lll-monogram:after{content:"CURATED STYLE";position:absolute;bottom:23px;font:8px Arial,sans-serif;letter-spacing:.25em;color:#c8a451aa}
@keyframes lll-float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.lll-trust{background:#111;border-block:1px solid #ffffff0b;padding:17px 0}.lll-trust-inner{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.lll-trust-item{text-align:center;color:#d5cfc3;font-size:10px;letter-spacing:.07em;text-transform:uppercase}.lll-trust-item span{color:var(--gold2);margin-right:7px}
.lll-section{padding:65px 0}.lll-section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:26px}.lll-section-heading small{color:var(--gold);font-size:9px;letter-spacing:.2em;text-transform:uppercase}.lll-section-heading h2{font:400 clamp(29px,4vw,43px)/1.15 Georgia,serif;margin:7px 0 0}.lll-section-heading p{max-width:430px;color:var(--muted);font-size:12px}
.lll-category-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.lll-category{min-height:200px;position:relative;display:flex;flex-direction:column;justify-content:end;overflow:hidden;padding:23px;border:1px solid #c8a45130;border-radius:16px;background:radial-gradient(ellipse at 80% 20%,#c8a45124,transparent 52%),linear-gradient(145deg,#242424,#151515);transition:transform .25s,border-color .25s}.lll-category:hover{transform:translateY(-4px);border-color:#c8a45199}.lll-category small{color:var(--gold2);font-size:9px;letter-spacing:.17em;text-transform:uppercase}.lll-category strong{font:400 27px Georgia,serif;color:var(--text);margin-top:5px}.lll-category em{font-style:normal;color:var(--gold2);font-size:10px;letter-spacing:.08em;margin-top:10px}.lll-home-products{background:linear-gradient(#0e0e0e,#131313,#0e0e0e)}.lll-home-products .products{margin-top:20px}
.lll-editorial{background:#151515;border-block:1px solid #c8a45120;padding:58px 0}.lll-editorial-grid{display:grid;grid-template-columns:.8fr 1.2fr;align-items:center;gap:45px}.lll-editorial-symbol{display:grid;place-items:center;min-height:220px;border:1px solid #c8a45144;border-radius:16px;background:radial-gradient(ellipse,#30291d,#171717 70%);font:100px Georgia,serif;color:var(--gold)}.lll-editorial h2{font:400 clamp(30px,4vw,46px)/1.15 Georgia,serif;margin:12px 0}.lll-editorial p{max-width:560px;color:#b9b3a8;font-size:13px;line-height:1.9}
.lll-page-title{padding:42px 0 28px;background:linear-gradient(120deg,#1b1b1b,#0e0e0e);border-bottom:1px solid #c8a45120}.lll-page-title small{color:var(--gold2);letter-spacing:.2em;text-transform:uppercase;font-size:9px}.lll-page-title h1{font:400 clamp(32px,5vw,50px)/1.15 Georgia,serif;margin:8px 0}.lll-content{padding:38px 0 70px}.lll-content article,.entry-content{color:#ddd7cb}.entry-content h2,.entry-content h3{font-family:Georgia,serif;font-weight:400}
.woocommerce .woocommerce-breadcrumb{color:#999;font-size:11px;margin-bottom:20px}.woocommerce .woocommerce-breadcrumb a{color:var(--gold2)}
.woocommerce span.onsale{min-width:0;min-height:0;line-height:1.3;padding:7px 10px;border-radius:99px;background:var(--gold);color:#111;font-size:9px;text-transform:uppercase}
.woocommerce div.product div.images img{border-radius:14px;background:#191919}.woocommerce div.product .product_title{font:400 clamp(28px,4vw,42px)/1.15 Georgia,serif;color:var(--text)}.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--gold2);font-size:22px}
.woocommerce div.product form.cart .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce #respond input#submit{background:var(--gold);color:#111;border:1px solid var(--gold);border-radius:99px;padding:12px 19px;font-weight:700}.woocommerce div.product form.cart .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--gold2);color:#111}
.woocommerce table.shop_table{border-color:#38332a;border-radius:10px;color:#eee}.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-color:#38332a}.woocommerce-message,.woocommerce-info{background:#1b1b1b;color:#eee;border-top-color:var(--gold)}.woocommerce-message:before,.woocommerce-info:before{color:var(--gold)}
.woocommerce input.input-text,.woocommerce textarea,.woocommerce select{background:#181818!important;color:#f4f0e7!important;border:1px solid #403a2e!important;border-radius:8px!important;padding:11px!important}.woocommerce #payment{background:#191919;border-radius:12px}.woocommerce #payment div.payment_box{background:#262626;color:#eee}.woocommerce #payment div.payment_box:before{border-bottom-color:#262626}
.site-footer{background:#090909;border-top:1px solid #c8a45135}.lll-footer-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:30px;padding:48px 0 34px}.lll-footer-brand{font:17px Georgia,serif;letter-spacing:.15em;text-transform:uppercase}.lll-footer-about{max-width:280px;color:#99948a;font-size:11px;line-height:1.9}.lll-footer-col h3{font-size:9px;color:var(--gold2);letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px}.lll-footer-col ul{list-style:none;padding:0;margin:0;display:grid;gap:9px}.lll-footer-col a{color:#aaa49a;font-size:11px}.lll-footer-col a:hover{color:var(--gold2)}.lll-footer-bottom{display:flex;justify-content:space-between;gap:15px;padding:15px 0;border-top:1px solid #ffffff10;color:#777;font-size:10px}
@media(max-width:980px){.lll-header-inner{min-height:68px}.lll-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:18px 20px;background:#111;border-bottom:1px solid #c8a45133}.lll-nav.is-open{display:block}.lll-nav ul{align-items:stretch;flex-direction:column;gap:15px}.lll-toggle{display:block}.lll-hero-grid{gap:25px}.lll-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.lll-wrap{width:calc(100% - 30px)}.lll-announcement{font-size:8px;letter-spacing:.1em}.lll-header-inner{min-height:64px;gap:9px}.lll-brand-mark{width:31px;height:31px;font-size:15px}.lll-brand-name{font-size:12px;letter-spacing:.11em}.lll-brand-sub{font-size:7px}.lll-actions{gap:5px}.lll-pill{padding:8px 9px;font-size:9px}.lll-hero{padding:48px 0 38px}.lll-hero-grid{grid-template-columns:1fr;gap:25px}.lll-hero h1{font-size:clamp(42px,12vw,60px)}.lll-hero p{font-size:13px}.lll-hero-art{min-height:230px}.lll-monogram{width:min(75%,290px);font-size:135px}.lll-trust-inner{grid-template-columns:1fr;gap:10px}.lll-trust-item{text-align:left}.lll-section{padding:45px 0}.lll-section-heading{align-items:flex-start;flex-direction:column;gap:6px}.lll-category-grid{grid-template-columns:1fr;gap:11px}.lll-category{min-height:145px;padding:19px}.lll-category strong{font-size:24px}.lll-editorial{padding:42px 0}.lll-editorial-grid{grid-template-columns:1fr;gap:23px}.lll-editorial-symbol{min-height:150px;font-size:75px}.lll-page-title{padding:33px 0 22px}.lll-content{padding:25px 0 50px}.lll-footer-grid{grid-template-columns:1fr 1fr;gap:25px 18px;padding:36px 0 25px}.lll-footer-bottom{flex-direction:column;font-size:9px}}
@media(max-width:380px){.lll-footer-grid{grid-template-columns:1fr}.lll-pill{padding-inline:7px}.lll-brand-name{font-size:11px}.lll-buttons .lll-button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Logo officiel — tailles harmonisées sur toutes les zones */
.lll-brand{flex:0 1 auto;min-width:0}
.lll-brand-logo{display:block;width:clamp(72px,8vw,108px);height:auto;max-height:48px;object-fit:contain;object-position:left center}
.lll-hero-logo{display:block;width:min(100%,270px);height:auto;max-height:300px;object-fit:contain;filter:drop-shadow(0 8px 18px #0008);animation:lll-float 5s ease-in-out infinite}
.lll-editorial-symbol{padding:16px;min-width:0}
.lll-editorial-symbol img{display:block;width:min(100%,125px);height:auto;max-height:145px;object-fit:contain;margin-inline:auto}
.lll-footer-logo{display:block;width:min(100%,115px);height:auto;max-height:95px;object-fit:contain;object-position:left center;margin-bottom:12px}
@media(max-width:980px){.lll-header-inner{gap:10px}.lll-brand-logo{width:82px;max-height:42px}.lll-actions{margin-left:auto}.lll-hero-logo{width:min(78%,245px);max-height:250px}}
@media(max-width:680px){.lll-wrap{width:calc(100% - 28px)}.lll-header-inner{min-height:62px;gap:7px}.lll-brand-logo{width:68px;max-height:36px}.lll-actions{gap:5px}.lll-pill{padding:7px 8px;font-size:9px}.lll-toggle{width:36px;height:36px;flex:0 0 36px}.lll-hero-logo{width:min(62%,190px);max-height:200px}.lll-hero-art{min-height:0;padding:0 0 8px}.lll-editorial-symbol{min-height:110px;padding:10px}.lll-editorial-symbol img{width:min(48%,100px);max-height:105px}.lll-footer-logo{width:92px;max-height:75px}}
@media(max-width:380px){.lll-brand-logo{width:58px;max-height:32px}.lll-pill{padding-inline:6px}.lll-actions{gap:4px}.lll-hero-logo{width:min(58%,165px);max-height:175px}.lll-footer-grid{grid-template-columns:1fr}}


/* Correctif strict des dimensions du logo — évite tout agrandissement par le thème ou un constructeur */
.lll-header-inner .lll-brand-logo{width:64px!important;height:auto!important;max-width:64px!important;max-height:34px!important;object-fit:contain!important}
.lll-hero-art{min-height:0!important;display:flex!important;align-items:center!important;justify-content:center!important}
.lll-hero-art img.lll-hero-logo{display:block!important;width:180px!important;height:auto!important;max-width:100%!important;max-height:230px!important;object-fit:contain!important}
.lll-editorial-symbol img{width:76px!important;height:auto!important;max-width:100%!important;max-height:90px!important;object-fit:contain!important}
.site-footer img.lll-footer-logo{width:78px!important;height:auto!important;max-width:100%!important;max-height:65px!important;object-fit:contain!important}
@media(max-width:980px){.lll-header-inner .lll-brand-logo{width:58px!important;max-width:58px!important;max-height:32px!important}.lll-hero-art img.lll-hero-logo{width:160px!important;max-height:200px!important}}
@media(max-width:680px){.lll-header-inner .lll-brand-logo{width:48px!important;max-width:48px!important;max-height:27px!important}.lll-hero-art img.lll-hero-logo{width:135px!important;max-height:170px!important}.lll-editorial-symbol img{width:62px!important;max-height:75px!important}.site-footer img.lll-footer-logo{width:66px!important;max-height:55px!important}}

/* Fix mobile and desktop: force logo sizing even when WordPress/blocks add their own image rules */
.site-header .lll-brand img,
.site-header .custom-logo-link img,
.site-header .custom-logo,
.site-header .site-logo img,
.site-header .site-branding img,
.site-header .wp-block-site-logo img,
header .custom-logo-link img,
header .custom-logo,
header .wp-block-site-logo img {
  display:block !important;
  width:auto !important;
  height:auto !important;
  max-width:150px !important;
  max-height:58px !important;
  object-fit:contain !important;
}
.site-header .lll-brand-logo { width:64px !important; max-width:64px !important; max-height:34px !important; }
.lll-hero-art img, .lll-hero-art .lll-hero-logo {
  display:block !important;
  width: min(180px, 55vw) !important;
  height:auto !important;
  max-width:55vw !important;
  max-height:220px !important;
  object-fit:contain !important;
}
.lll-editorial-symbol img, .site-footer .lll-footer-logo { width:auto !important; max-width:100px !important; max-height:100px !important; height:auto !important; object-fit:contain !important; }
@media (max-width: 680px) {
  .site-header .lll-brand-logo { width:54px !important; max-width:54px !important; max-height:30px !important; }
  .site-header .lll-brand img, .site-header .custom-logo-link img, .site-header .custom-logo,
  .site-header .site-logo img, .site-header .site-branding img, .site-header .wp-block-site-logo img,
  header .custom-logo-link img, header .custom-logo, header .wp-block-site-logo img {
    max-width:100px !important; max-height:42px !important;
  }
  .lll-hero-art img, .lll-hero-art .lll-hero-logo { width:min(135px, 48vw) !important; max-width:48vw !important; max-height:165px !important; }
  .lll-editorial-symbol img, .site-footer .lll-footer-logo { max-width:76px !important; max-height:76px !important; }
}


/* Le L Luxury v1.5 — clean WooCommerce product pages */
body.single-product #secondary,
body.single-product .widget-area,
body.single-product aside.sidebar,
body.single-product .sidebar,
body.single-product .woocommerce-sidebar,
body.single-product .wp-block-search,
body.single-product .widget_search,
body.single-product .widget_archive,
body.single-product .widget_categories,
body.single-product .widget_pages,
body.single-product .widget_recent_entries,
body.single-product .widget_calendar {
  display: none !important;
}
body.single-product .site-main,
body.single-product #primary,
body.single-product .content-area {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
}
body.single-product .lll-content {
  padding-top: 30px;
  padding-bottom: 54px;
}
body.single-product .product {
  margin-bottom: 36px;
}
body.single-product .related.products {
  clear: both;
  margin-top: 46px;
  padding-top: 30px;
  border-top: 1px solid rgba(200,164,81,.22);
}
body.single-product .related.products > h2,
body.single-product .up-sells > h2 {
  margin: 0 0 22px;
  color: var(--text, #f4f0e7);
  font: 400 clamp(24px, 3vw, 34px)/1.2 Georgia, serif;
}
body.single-product .related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
}
body.single-product .related.products ul.products::before,
body.single-product .related.products ul.products::after {
  display: none !important;
  content: none !important;
}
body.single-product .related.products ul.products li.product {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  min-width: 0;
}
body.single-product .site-footer {
  clear: both;
}
@media (max-width: 760px) {
  body.single-product .related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }
  body.single-product .lll-content {
    padding-top: 20px;
    padding-bottom: 35px;
  }
}
@media (max-width: 380px) {
  body.single-product .related.products ul.products {
    gap: 9px !important;
  }
}


/* Le L Luxury v1.6 — boutique avec recherche et filtres latéraux */
.lll-shop-layout{display:grid;grid-template-columns:248px minmax(0,1fr);gap:28px;align-items:start;margin:24px 0 42px}
.lll-shop-filters{position:sticky;top:20px;padding:22px 18px;background:linear-gradient(155deg,#1b1b1b,#111);border:1px solid rgba(200,164,81,.28);border-radius:16px;box-shadow:0 14px 38px #0003}
.lll-filter-heading{display:flex;flex-direction:column;gap:5px;padding-bottom:17px;margin-bottom:18px;border-bottom:1px solid rgba(200,164,81,.2);font:400 21px/1.25 Georgia,serif;color:#f4f0e7}
.lll-filter-heading small{font:9px/1.4 Arial,sans-serif;letter-spacing:.2em;color:#c8a451}
.lll-filter-form{display:grid;gap:10px}
.lll-filter-label{margin-top:5px;color:#d7c9a6;font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.lll-search-row{display:flex;min-width:0;border:1px solid #51452c;border-radius:9px;overflow:hidden;background:#0e0e0e}
.lll-search-row input[type=search]{min-width:0;width:100%;border:0!important;border-radius:0!important;background:transparent!important;color:#f4f0e7!important;padding:12px 10px!important;outline:none}
.lll-search-row input::placeholder{color:#777}
.lll-search-row button{flex:0 0 42px;border:0;background:#c8a451;color:#111;font-size:25px;line-height:1}
.lll-filter-form select{width:100%;min-height:43px;padding:10px 30px 10px 11px!important;border:1px solid #3e382d!important;border-radius:8px!important;background:#141414!important;color:#eee!important;font-size:12px}
.lll-filter-submit{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding:12px 14px;border:1px solid #c8a451;border-radius:8px;background:#c8a451;color:#111;font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.lll-filter-submit:hover{background:#efd68d}
.lll-filter-reset{text-align:center;color:#aaa49a;font-size:10px;padding-top:3px}
.lll-filter-reset:hover{color:#efd68d}
.lll-shop-results{min-width:0}
.lll-shop-results ul.products{margin-top:0}
@media(max-width:850px){.lll-shop-layout{grid-template-columns:1fr;gap:18px}.lll-shop-filters{position:static;padding:17px}.lll-filter-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:10px}.lll-filter-heading{grid-column:1/-1;margin-bottom:4px}.lll-filter-label{align-self:end}.lll-search-row{grid-column:1/-1}.lll-filter-submit,.lll-filter-reset{grid-column:1/-1}.lll-filter-form>select{min-width:0}}
@media(max-width:480px){.lll-shop-layout{margin-top:14px;gap:14px}.lll-shop-filters{padding:14px;border-radius:12px}.lll-filter-form{grid-template-columns:1fr 1fr;gap:9px}.lll-filter-heading{font-size:19px}.lll-filter-label{font-size:9px}.lll-filter-form select{font-size:11px;min-height:42px}.lll-search-row button{flex-basis:40px}}


/* Le L Luxury v1.7 — boutique desktop grid repair */
body.woocommerce-shop .lll-shop-layout,
body.tax-product_cat .lll-shop-layout,
body.tax-product_tag .lll-shop-layout {
  display: grid !important;
  grid-template-columns: minmax(230px, 260px) minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 28px !important;
  width: 100%;
}
body.woocommerce-shop .lll-shop-filters,
body.tax-product_cat .lll-shop-filters,
body.tax-product_tag .lll-shop-filters {
  width: 100%;
  min-width: 0;
  margin: 0;
}
body.woocommerce-shop .lll-shop-results,
body.tax-product_cat .lll-shop-results,
body.tax-product_tag .lll-shop-results {
  min-width: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}
body.woocommerce-shop .lll-shop-results .woocommerce-result-count,
body.tax-product_cat .lll-shop-results .woocommerce-result-count,
body.tax-product_tag .lll-shop-results .woocommerce-result-count {
  float: none !important;
  display: inline-block;
  margin: 0 16px 18px 0 !important;
  color: #c8c1b5;
  font-size: 12px;
}
body.woocommerce-shop .lll-shop-results .woocommerce-ordering,
body.tax-product_cat .lll-shop-results .woocommerce-ordering,
body.tax-product_tag .lll-shop-results .woocommerce-ordering {
  float: right !important;
  margin: 0 0 18px 12px !important;
  max-width: 240px;
}
body.woocommerce-shop .lll-shop-results .woocommerce-ordering select,
body.tax-product_cat .lll-shop-results .woocommerce-ordering select,
body.tax-product_tag .lll-shop-results .woocommerce-ordering select {
  width: 100%;
  min-height: 42px;
  font-size: 12px;
}
body.woocommerce-shop .lll-shop-results ul.products,
body.tax-product_cat .lll-shop-results ul.products,
body.tax-product_tag .lll-shop-results ul.products {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 22px !important;
  clear: both !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
body.woocommerce-shop .lll-shop-results ul.products::before,
body.woocommerce-shop .lll-shop-results ul.products::after,
body.tax-product_cat .lll-shop-results ul.products::before,
body.tax-product_cat .lll-shop-results ul.products::after,
body.tax-product_tag .lll-shop-results ul.products::before,
body.tax-product_tag .lll-shop-results ul.products::after {
  display: none !important;
  content: none !important;
}
body.woocommerce-shop .lll-shop-results ul.products li.product,
body.tax-product_cat .lll-shop-results ul.products li.product,
body.tax-product_tag .lll-shop-results ul.products li.product {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  clear: none !important;
  box-sizing: border-box !important;
}
body.woocommerce-shop .lll-shop-results ul.products li.product a img,
body.tax-product_cat .lll-shop-results ul.products li.product a img,
body.tax-product_tag .lll-shop-results ul.products li.product a img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  border-radius: 12px;
}
body.woocommerce-shop .lll-shop-results ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat .lll-shop-results ul.products li.product .woocommerce-loop-product__title,
body.tax-product_tag .lll-shop-results ul.products li.product .woocommerce-loop-product__title {
  font-size: 14px;
  line-height: 1.45;
  overflow-wrap: anywhere;
}
body.woocommerce-shop .lll-shop-results ul.products li.product .button,
body.tax-product_cat .lll-shop-results ul.products li.product .button,
body.tax-product_tag .lll-shop-results ul.products li.product .button {
  max-width: 100%;
  white-space: normal;
  text-align: center;
  line-height: 1.3;
}
@media (max-width: 1050px) {
  body.woocommerce-shop .lll-shop-layout,
  body.tax-product_cat .lll-shop-layout,
  body.tax-product_tag .lll-shop-layout {
    grid-template-columns: 230px minmax(0,1fr) !important;
    gap: 20px !important;
  }
  body.woocommerce-shop .lll-shop-results ul.products,
  body.tax-product_cat .lll-shop-results ul.products,
  body.tax-product_tag .lll-shop-results ul.products {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 16px !important;
  }
}
@media (max-width: 760px) {
  body.woocommerce-shop .lll-shop-layout,
  body.tax-product_cat .lll-shop-layout,
  body.tax-product_tag .lll-shop-layout {
    grid-template-columns: minmax(0,1fr) !important;
    gap: 18px !important;
  }
  body.woocommerce-shop .lll-shop-results .woocommerce-ordering,
  body.tax-product_cat .lll-shop-results .woocommerce-ordering,
  body.tax-product_tag .lll-shop-results .woocommerce-ordering {
    float: none !important;
    display: block;
    margin: 0 0 16px !important;
    max-width: 100%;
  }
  body.woocommerce-shop .lll-shop-results ul.products,
  body.tax-product_cat .lll-shop-results ul.products,
  body.tax-product_tag .lll-shop-results ul.products {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 12px !important;
  }
}


/* v1.8 — barre de recherche premium dans l'espace libéré du menu */
.lll-header-inner{gap:18px}
.lll-nav{margin-left:auto;flex:0 0 auto}
.lll-nav ul{gap:20px}
.lll-header-search{display:flex;align-items:center;flex:0 1 270px;min-width:185px;height:40px;margin-left:4px;border:1px solid rgba(200,164,81,.42);border-radius:999px;background:linear-gradient(145deg,#1b1b1b,#111);overflow:hidden;box-shadow:inset 0 1px 0 #ffffff08;transition:border-color .2s,box-shadow .2s}
.lll-header-search:focus-within{border-color:var(--gold2);box-shadow:0 0 0 3px #c8a45116}
.lll-header-search input[type=search]{min-width:0;width:100%;height:100%;padding:0 14px;border:0!important;outline:0!important;background:transparent!important;color:var(--text)!important;font-size:12px!important;box-shadow:none!important}
.lll-header-search input[type=search]::placeholder{color:#8f897e}
.lll-header-search button{width:42px;height:100%;flex:0 0 42px;border:0;background:var(--gold);color:#111;font-size:24px;line-height:1;display:grid;place-items:center}
.lll-header-search button:hover{background:var(--gold2)}
@media(max-width:1180px){.lll-header-inner{gap:12px}.lll-nav ul{gap:13px}.lll-header-search{flex-basis:220px;min-width:155px}.lll-nav a{font-size:10px}}
@media(max-width:980px){.lll-header-inner{flex-wrap:wrap;padding-top:8px;padding-bottom:10px}.lll-header-search{order:4;flex:1 0 100%;width:100%;min-width:0;height:40px;margin:0 0 2px}.lll-nav{margin-left:0}.lll-actions{margin-left:auto}}
@media(max-width:680px){.lll-header-inner{padding-top:7px;padding-bottom:9px}.lll-header-search{height:39px}.lll-header-search input[type=search]{font-size:12px!important}.lll-header-search button{flex-basis:40px;width:40px}}

/* v2.0: safety net for unwanted category links in the primary header menu */
.lll-nav a[href*="/product-category/ensembles"],
.lll-nav a[href*="/product-category/maillot-de-bain"],
.lll-nav a[href*="/product-category/maillot-de-foot"] { display:none !important; }
.lll-nav li:has(> a[href*="/product-category/ensembles"]),
.lll-nav li:has(> a[href*="/product-category/maillot-de-bain"]),
.lll-nav li:has(> a[href*="/product-category/maillot-de-foot"]) { display:none !important; }


/* Le L Luxury transition polish v2.1.8
   Smooth shared-image movement; keep the image fully visible and reveal details afterward. */
@view-transition { navigation: auto; }
:root {
  --lll-transition-duration: 2200ms;
  --lll-transition-ease: cubic-bezier(.22,.75,.25,1);
}
body.single-product .woocommerce-product-gallery__wrapper > .woocommerce-product-gallery__image:first-child img,
body.single-product .woocommerce-product-gallery__wrapper > figure:first-child img,
body.single-product .woocommerce-product-gallery .wp-post-image:first-of-type {
  view-transition-name: lll-product-image;
}
.lll-preview.is-open .lll-preview__image { animation: none !important; }
::view-transition-group(lll-product-image) {
  animation-duration: var(--lll-transition-duration);
  animation-timing-function: var(--lll-transition-ease);
}
::view-transition-image-pair(lll-product-image) { isolation: auto; }
::view-transition-old(lll-product-image),
::view-transition-new(lll-product-image) {
  width: 100%;
  height: 100%;
  object-fit: contain;
  border-radius: 10px;
  animation-duration: var(--lll-transition-duration);
  animation-timing-function: var(--lll-transition-ease);
}
/* Avoid a competing whole-page fade/zoom: only the product image should travel. */
::view-transition-old(root) { animation: none; }
::view-transition-new(root) { animation: none; }
html.lll-transition-reveal .single-product .summary > *,
html.lll-transition-reveal .single-product .product-summary > *,
html.lll-transition-reveal .single-product .product-info > *,
html.lll-transition-reveal .single-product .woocommerce-tabs,
html.lll-transition-reveal .single-product .product_meta {
  opacity: 0;
  animation: lll-detail-enter 520ms cubic-bezier(.2,.8,.2,1) both;
}
html.lll-transition-reveal .single-product .summary > *:nth-child(1) { animation-delay: 2250ms; }
html.lll-transition-reveal .single-product .summary > *:nth-child(2) { animation-delay: 2380ms; }
html.lll-transition-reveal .single-product .summary > *:nth-child(3) { animation-delay: 2510ms; }
html.lll-transition-reveal .single-product .summary > *:nth-child(4) { animation-delay: 2640ms; }
html.lll-transition-reveal .single-product .summary > *:nth-child(5) { animation-delay: 2770ms; }
@keyframes lll-detail-enter {
  from { opacity: 0; transform: translate3d(0,12px,0); }
  to { opacity: 1; transform: translate3d(0,0,0); }
}
@media (prefers-reduced-motion: reduce) {
  ::view-transition-group(*), ::view-transition-old(*), ::view-transition-new(*) { animation-duration: 1ms !important; }
  html.lll-transition-reveal .single-product .summary > *,
  html.lll-transition-reveal .single-product .product-summary > *,
  html.lll-transition-reveal .single-product .product-info > *,
  html.lll-transition-reveal .single-product .woocommerce-tabs,
  html.lll-transition-reveal .single-product .product_meta { animation: none !important; opacity: 1; }
}

/* v2.1.8: subtle continuous zoom-out then zoom-in while the shared image travels. */
::view-transition-old(lll-product-image) {
  animation-name: lll-image-zoom-out;
  animation-duration: var(--lll-transition-duration);
  animation-timing-function: var(--lll-transition-ease);
  transform-origin: center;
}
::view-transition-new(lll-product-image) {
  animation-name: lll-image-zoom-in;
  animation-duration: var(--lll-transition-duration);
  animation-timing-function: var(--lll-transition-ease);
  transform-origin: center;
}
@keyframes lll-image-zoom-out {
  0% { transform: scale(1.08); }
  55% { transform: scale(.94); }
  100% { transform: scale(.90); }
}
@keyframes lll-image-zoom-in {
  0% { transform: scale(.90); }
  45% { transform: scale(.94); }
  100% { transform: scale(1); }
}

/* v2.1.8: JS shared-image flight; suppress the native view-transition mechanism. */
@view-transition { navigation: none; }
html.lll-transition-arriving .single-product .summary,
html.lll-transition-arriving .single-product .woocommerce-product-gallery { visibility: hidden; }
html.lll-transition-reveal .single-product .summary > *,
html.lll-transition-reveal .single-product .product-summary > *,
html.lll-transition-reveal .single-product .product-info > *,
html.lll-transition-reveal .single-product .woocommerce-tabs,
html.lll-transition-reveal .single-product .product_meta {
 opacity: 0;
 animation: lll-detail-enter 620ms cubic-bezier(.2,.8,.2,1) both;
}
@keyframes lll-detail-enter { from {opacity:0; transform:translateY(12px)} to {opacity:1;transform:translateY(0)} }
@media (prefers-reduced-motion: reduce) {
 html.lll-transition-reveal .single-product .summary > *,
 html.lll-transition-reveal .single-product .product-summary > *,
 html.lll-transition-reveal .single-product .product-info > * {animation:none!important;opacity:1!important}
}

/* v2.1.8 polish: avoid hiding the gallery after the flight finishes. */
html.lll-transition-arriving .single-product .woocommerce-product-gallery { visibility: hidden !important; }
html.lll-transition-arriving .single-product .summary { visibility: hidden !important; }
html.lll-transition-reveal .single-product .summary > *,
html.lll-transition-reveal .single-product .product-summary > *,
html.lll-transition-reveal .single-product .product-info > *,
html.lll-transition-reveal .single-product .woocommerce-tabs,
html.lll-transition-reveal .single-product .product_meta {
  will-change: opacity, transform;
}
.single-product .woocommerce-product-gallery img.wp-post-image {
  transform-origin: center;
}


/* =========================================================
   LE L LUXURY — Premium design pass v2.3.0
   Polished black / champagne-gold system, responsive and restrained.
   ========================================================= */
:root {
  --lll-gold-soft: #e7cc83;
  --lll-line: rgba(220, 184, 102, .20);
  --lll-surface: #141414;
  --lll-surface-raised: #1b1a18;
  --lll-shadow: 0 18px 48px rgba(0,0,0,.28);
}
body {
  background:
    radial-gradient(ellipse at 50% -18rem, rgba(200,164,81,.075), transparent 55%),
    var(--bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
::selection { background: rgba(200,164,81,.35); color: #fff; }
a { transition: color .22s ease, opacity .22s ease; }
.lll-announcement {
  padding: 9px 16px;
  font-size: 9px;
  letter-spacing: .2em;
  background: linear-gradient(90deg,#15130f,#211b10 50%,#15130f);
}
.site-header {
  background: rgba(14,14,14,.96);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-bottom-color: var(--lll-line);
}
.lll-header-inner { min-height: 82px; gap: clamp(14px,2vw,28px); }
.lll-brand-logo { transition: transform .35s ease, opacity .35s ease; }
.lll-brand:hover .lll-brand-logo { transform: translateY(-1px); opacity: .92; }
.lll-nav a {
  position: relative;
  padding: 10px 0;
  color: #e6e0d4;
  letter-spacing: .045em;
  transition: color .2s ease;
}
.lll-nav a:after {
  content: "";
  position: absolute;
  left: 0; right: 100%; bottom: 2px;
  height: 1px;
  background: var(--gold);
  transition: right .28s cubic-bezier(.2,.8,.2,1);
}
.lll-nav a:hover, .lll-nav .current-menu-item > a { color: var(--gold2); }
.lll-nav a:hover:after, .lll-nav .current-menu-item > a:after { right: 0; }
.lll-header-search {
  border-color: rgba(200,164,81,.32);
  background: #151515;
  box-shadow: inset 0 1px rgba(255,255,255,.025);
}
.lll-header-search:focus-within {
  border-color: var(--gold);
  box-shadow: 0 0 0 3px rgba(200,164,81,.09);
}
.lll-header-search button { transition: background .2s ease, color .2s ease; }
.lll-wrap { width: min(var(--max), calc(100% - 48px)); }
h1,h2,h3,h4 { text-wrap: balance; }
h1,h2 { letter-spacing: -.025em; }
.woocommerce-breadcrumb {
  color: #aaa398;
  font-size: 11px;
  letter-spacing: .04em;
  padding-top: 18px;
}
.woocommerce-breadcrumb a { color: var(--gold2); }
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering { color: #bcb5a8; font-size: 12px; }
.woocommerce .woocommerce-ordering select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row input.input-text,
.woocommerce-page form .form-row textarea,
.woocommerce-page form .form-row select {
  color: #f4f0e7;
  background: #171715;
  border: 1px solid rgba(200,164,81,.25);
  border-radius: 10px;
  min-height: 44px;
  padding: 10px 13px;
}
.woocommerce .woocommerce-ordering select:focus,
.woocommerce form .form-row input:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
  outline: none;
  border-color: var(--gold);
  box-shadow: 0 0 0 3px rgba(200,164,81,.10);
}
.woocommerce ul.products li.product.lll-lux-card,
.woocommerce-page ul.products li.product.lll-lux-card {
  border-color: rgba(231,204,131,.11) !important;
  box-shadow: 0 8px 26px rgba(0,0,0,.22), inset 0 1px rgba(255,255,255,.025);
}
.woocommerce ul.products li.product.lll-lux-card:hover,
.woocommerce-page ul.products li.product.lll-lux-card:hover {
  transform: translateY(-5px);
  border-color: rgba(231,204,131,.42) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.35), 0 0 0 1px rgba(200,164,81,.035);
}
.woocommerce ul.products li.product.lll-lux-card img,
.woocommerce-page ul.products li.product.lll-lux-card img {
  transition: transform .65s cubic-bezier(.2,.7,.2,1), filter .45s ease;
}
.woocommerce ul.products li.product.lll-lux-card:hover img,
.woocommerce-page ul.products li.product.lll-lux-card:hover img {
  transform: scale(1.035);
  filter: saturate(1.04);
}
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce-page ul.products li.product .woocommerce-loop-product__title {
  color: #f5f0e6;
  letter-spacing: -.01em;
}
.woocommerce ul.products li.product .price,
.woocommerce-page ul.products li.product .price { color: var(--gold2); }
.woocommerce a.button, .woocommerce button.button,
.woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce-page a.button, .woocommerce-page button.button,
.woocommerce-page input.button {
  border: 1px solid rgba(231,204,131,.55);
  border-radius: 999px;
  padding: 12px 19px;
  background: linear-gradient(135deg,#e6cb83,#bd9540);
  color: #17130b;
  font-weight: 650;
  box-shadow: 0 7px 20px rgba(0,0,0,.16);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}
.woocommerce a.button:hover, .woocommerce button.button:hover,
.woocommerce input.button:hover, .woocommerce #respond input#submit:hover,
.woocommerce-page a.button:hover, .woocommerce-page button.button:hover,
.woocommerce-page input.button:hover {
  transform: translateY(-2px);
  filter: brightness(1.05);
  color: #100e09;
  box-shadow: 0 10px 26px rgba(200,164,81,.13);
}
.single-product div.product .product_title {
  color: #f6f0e4;
  font-weight: 550;
  line-height: 1.14;
  letter-spacing: -.035em;
  font-size: clamp(28px,3.1vw,43px);
}
.single-product div.product p.price,
.single-product div.product span.price {
  color: var(--gold2);
  font-size: clamp(22px,2.2vw,29px);
  font-weight: 650;
}
.single-product .woocommerce-product-gallery {
  overflow: hidden;
  border: 1px solid rgba(231,204,131,.12);
  border-radius: 20px;
  background: radial-gradient(ellipse at 50% 35%,#24221c,#121212 75%);
  box-shadow: var(--lll-shadow);
}
.single-product .woocommerce-product-gallery img {
  border-radius: 14px;
}
.single-product .summary .cart {
  padding: 18px;
  border: 1px solid rgba(231,204,131,.14);
  border-radius: 16px;
  background: rgba(255,255,255,.018);
}
.single-product .summary .quantity .qty {
  min-height: 45px;
  border: 1px solid rgba(200,164,81,.25);
  border-radius: 9px;
  background: #171715;
  color: #fff;
}
.single-product .product_meta {
  color: #a9a295;
  font-size: 11px;
  line-height: 1.9;
}
.woocommerce div.product .woocommerce-tabs ul.tabs {
  padding: 0;
  border-bottom: 1px solid var(--lll-line);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  border: 0;
  border-radius: 0;
  background: transparent;
  padding: 0 4px;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  color: #bdb5a5;
  padding: 12px 15px;
  border-bottom: 2px solid transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover {
  color: var(--gold2);
  border-color: var(--gold);
}
.woocommerce-message, .woocommerce-info, .woocommerce-error {
  border-top-color: var(--gold);
  border-radius: 10px;
  background: #1b1914;
  color: #f2ead9;
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--gold2); }
.woocommerce table.shop_table {
  border-color: rgba(200,164,81,.16);
  border-radius: 12px;
  border-collapse: separate;
  border-spacing: 0;
  overflow: hidden;
}
.woocommerce table.shop_table th { color: var(--gold2); }
.woocommerce table.shop_table td,
.woocommerce table.shop_table th { border-color: rgba(200,164,81,.12); }
.site-footer {
  margin-top: 72px;
  padding: 52px 0 26px;
  border-top: 1px solid var(--lll-line);
  background: linear-gradient(180deg,#111 0%,#090909 100%);
}
.lll-footer-grid { gap: clamp(24px,4vw,60px); }
.lll-footer-col h3 {
  color: var(--gold2);
  font-size: 10px;
  letter-spacing: .18em;
  text-transform: uppercase;
}
.lll-footer-col a, .lll-footer-about { color: #aaa398; }
.lll-footer-col a:hover { color: var(--gold2); }
.lll-footer-col li { margin: 9px 0; }
.lll-footer-logo { opacity: .92; }
.lll-preview__backdrop { backdrop-filter: blur(5px); -webkit-backdrop-filter: blur(5px); }
.lll-preview__dialog {
  border-color: rgba(231,204,131,.24) !important;
  box-shadow: 0 32px 100px rgba(0,0,0,.62), 0 0 0 1px rgba(200,164,81,.04);
}
.lll-preview__visual {
  background: radial-gradient(ellipse at center,#29261f 0%,#141414 72%);
}
.lll-preview__image { object-fit: contain; }
.lll-preview__title { letter-spacing: -.025em; }
.lll-preview__button { border-radius: 999px; }
@media (max-width: 760px) {
  .lll-wrap { width: min(var(--max), calc(100% - 30px)); }
  .lll-header-inner { min-height: 68px; }
  .site-footer { margin-top: 44px; padding-top: 36px; }
  .single-product .woocommerce-product-gallery { border-radius: 14px; }
  .single-product .summary .cart { padding: 13px; }
  .single-product div.product .product_title { font-size: clamp(26px,7vw,36px); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}


/* Le L Luxury — Direction artistique premium v2.3.0 */
:root {
  --lll-champagne: #e8d29a;
  --lll-border-soft: rgba(232,210,154,.16);
  --lll-panel: #171614;
}
body { color: #f4efe5; }
.lll-announcement {
  min-height: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #100f0d;
  border-bottom: 1px solid rgba(232,210,154,.14);
  font-size: 9px;
  letter-spacing: .19em;
}
.site-header { position: sticky; top: 0; }
.admin-bar .site-header { top: 32px; }
.lll-header-inner { min-height: 78px; }
.lll-brand-logo { max-height: 58px; width: auto; }
.lll-nav ul { align-items: center; }
.lll-nav a { font-size: 11px; font-weight: 550; }
.lll-hero {
  position: relative;
  isolation: isolate;
  padding: clamp(60px,8vw,108px) 0;
  background:
    radial-gradient(ellipse at 78% 42%, rgba(200,164,81,.13), transparent 35%),
    radial-gradient(ellipse at 10% 100%, rgba(255,255,255,.025), transparent 36%),
    linear-gradient(115deg,#151412 0%,#0d0d0c 58%,#15120d 100%);
}
.lll-hero:after {
  content:"";
  position:absolute;
  z-index:-1;
  left:0;right:0;bottom:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(232,210,154,.3),transparent);
}
.lll-hero-grid { gap: clamp(28px,5vw,76px); }
.lll-hero h1 { font-size: clamp(46px,6.5vw,84px); line-height:1.02; }
.lll-hero h1 span { display:inline-block; color:var(--lll-champagne); }
.lll-hero p { font-size:14px; max-width:480px; }
.lll-hero-art { min-height:340px; position:relative; }
.lll-hero-art:before {
  content:"";
  position:absolute;
  width:min(88%,390px);aspect-ratio:1;
  border:1px solid rgba(232,210,154,.2);
  border-radius:50%;
  box-shadow:0 0 90px rgba(200,164,81,.06),inset 0 0 60px rgba(200,164,81,.035);
}
.lll-hero-logo {
  position:relative;
  z-index:1;
  width:min(66%,270px);
  height:auto;
  object-fit:contain;
  filter:drop-shadow(0 18px 34px rgba(0,0,0,.5));
  animation:lll-logo-breathe 6s ease-in-out infinite;
}
@keyframes lll-logo-breathe { 0%,100%{transform:translateY(0) scale(1)}50%{transform:translateY(-5px) scale(1.015)} }
.lll-buttons { gap:12px; }
.lll-button { min-height:48px; padding-inline:23px; letter-spacing:.11em; }
.lll-button:not(.lll-button-outline) {
  background:linear-gradient(135deg,#ead59c 0%,#c4a253 100%);
  box-shadow:0 8px 24px rgba(200,164,81,.12);
}
.lll-button-outline { border-color:rgba(232,210,154,.42); }
.lll-trust { background:#10100f; border-color:rgba(232,210,154,.10); padding:18px 0; }
.lll-trust-item { font-size:9px; letter-spacing:.12em; }
.lll-section { padding:clamp(48px,6.5vw,82px) 0; }
.lll-section-heading { margin-bottom:30px; }
.lll-section-heading small { letter-spacing:.22em; }
.lll-section-heading h2 { font-size:clamp(30px,3.8vw,46px); }
.lll-category-grid { gap:17px; }
.lll-category {
  min-height:clamp(205px,23vw,285px);
  padding:clamp(20px,2.5vw,30px);
  isolation:isolate;
  border-color:rgba(232,210,154,.2);
  background:
    linear-gradient(0deg,rgba(7,7,7,.94) 0%,rgba(7,7,7,.58) 38%,rgba(7,7,7,.12) 100%),
    var(--lll-category-image, radial-gradient(ellipse at 80% 15%,rgba(200,164,81,.18),transparent 54%),linear-gradient(145deg,#25231e,#121211));
  background-size:cover;
  background-position:center;
  transition:transform .4s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s,background-position .8s ease;
}
.lll-category:before {
  content:"";
  position:absolute;inset:0;z-index:-1;
  background:linear-gradient(135deg,rgba(200,164,81,.12),transparent 55%);
  opacity:0;transition:opacity .35s ease;
}
.lll-category:hover {
  transform:translateY(-5px);
  border-color:rgba(232,210,154,.55);
  box-shadow:0 20px 45px rgba(0,0,0,.28);
  background-position:center 46%;
}
.lll-category:hover:before { opacity:1; }
.lll-category-index {
  position:absolute;top:17px;right:19px;
  display:grid;place-items:center;width:34px;height:34px;
  border:1px solid rgba(232,210,154,.45);border-radius:50%;
  color:var(--lll-champagne);font-size:10px;letter-spacing:.06em;
}
.lll-category small { font-size:9px;letter-spacing:.19em;color:#e7cc83; }
.lll-category strong { font-size:clamp(24px,2.4vw,31px); line-height:1.15; }
.lll-category em { display:flex;align-items:center;gap:9px;margin-top:12px;font-size:10px;font-style:normal;letter-spacing:.08em;color:#e8d29a; }
.lll-category em span { transition:transform .25s ease; }
.lll-category:hover em span { transform:translateX(4px); }
.lll-home-products ul.products { margin-top:8px; }
.lll-editorial {
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(ellipse at 22% 50%,rgba(200,164,81,.08),transparent 38%),
    linear-gradient(115deg,#151412,#10100f);
  border-color:rgba(232,210,154,.14);
}
.lll-editorial-symbol {
  position:relative;
  overflow:hidden;
  border-color:rgba(232,210,154,.24);
  background:radial-gradient(ellipse at 50% 42%,#30291d,#151412 72%);
}
.lll-editorial-symbol:after {
  content:"";
  position:absolute;inset:12px;
  border:1px solid rgba(232,210,154,.12);
  border-radius:11px;pointer-events:none;
}
.lll-editorial-symbol img { width:112px;height:auto;filter:drop-shadow(0 12px 22px #0008); }
.lll-editorial h2 { letter-spacing:-.03em; }
.site-footer {
  margin-top:clamp(44px,6vw,76px);
  padding:48px 0 22px;
}
.lll-footer-grid { grid-template-columns:1.25fr 1fr 1fr 1fr; }
.lll-footer-about { max-width:270px;font-size:12px;line-height:1.9; }
.lll-footer-col a { font-size:11px; }
.lll-footer-bottom {
  margin-top:34px;padding-top:18px;
  border-top:1px solid rgba(232,210,154,.12);
  color:#827b70;font-size:10px;
}
.woocommerce ul.products li.product.lll-lux-card img,
.woocommerce-page ul.products li.product.lll-lux-card img { transform-origin:center; }
.lll-preview__dialog { border-radius:22px !important; }
.lll-preview__close { transition:transform .2s ease,background .2s ease; }
.lll-preview__close:hover { transform:rotate(90deg); }
@media(max-width:980px) {
  .lll-footer-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .lll-hero-art { min-height:270px; }
  .lll-nav a { font-size:10px; }
}
@media(max-width:680px) {
  .admin-bar .site-header { top:46px; }
  .lll-announcement { padding:8px 12px;font-size:8px;letter-spacing:.12em; }
  .lll-header-inner { min-height:66px; }
  .lll-brand-logo { max-height:48px; }
  .lll-hero { padding:52px 0 42px; }
  .lll-hero-grid { grid-template-columns:1fr;gap:20px; }
  .lll-hero h1 { font-size:clamp(43px,12vw,62px); }
  .lll-hero-art { min-height:170px; }
  .lll-hero-art:before { width:190px; }
  .lll-hero-logo { width:120px; }
  .lll-trust-inner { grid-template-columns:1fr;gap:10px; }
  .lll-trust-item { font-size:9px; }
  .lll-section-heading { align-items:flex-start;flex-direction:column; }
  .lll-category-grid { grid-template-columns:1fr; }
  .lll-category { min-height:190px; }
  .lll-editorial-grid { grid-template-columns:1fr;gap:26px; }
  .lll-editorial-symbol { min-height:170px; }
  .lll-footer-grid { grid-template-columns:1fr 1fr;gap:28px 18px; }
  .lll-footer-grid > div:first-child { grid-column:1/-1; }
  .lll-footer-bottom { display:flex;flex-direction:column;gap:5px; }
}
@media(prefers-reduced-motion:reduce) {
  .lll-hero-logo { animation:none; }
  .lll-category,.lll-category:before,.lll-category em span { transition:none; }
}


/* v2.3.1 — transition refinement and accessibility safeguards */
:root { --lll-transition-duration: 2800ms; }
.lll-preview__image {
  object-fit: contain !important;
  object-position: center;
}
.lll-preview__visual {
  overflow: hidden;
}
html.lll-transition-arriving {
  background: #0e0e0e;
}
html.lll-transition-arriving body.single-product .woocommerce-product-gallery,
html.lll-transition-arriving body.single-product .summary {
  visibility: hidden !important;
}
html.lll-transition-reveal body.single-product .summary > *,
html.lll-transition-reveal body.single-product .woocommerce-tabs,
html.lll-transition-reveal body.single-product .product_meta {
  animation-fill-mode: both;
}
@media (prefers-reduced-motion: reduce) {
  html.lll-transition-arriving body.single-product .woocommerce-product-gallery,
  html.lll-transition-arriving body.single-product .summary {
    visibility: visible !important;
  }
}


/* ==========================================================
   LE L LUXURY — SIGNATURE 3.0.0
   Nouvelle direction visuelle : éditoriale, contrastée, premium.
   ========================================================== */
:root {
  --bg:#090909; --panel:#121212; --panel2:#1b1915;
  --gold:#c9aa68; --gold2:#f0dfad; --text:#f7f3ea;
  --muted:#b3ab9c; --border:rgba(201,170,104,.24);
  --lll-signature-glow:rgba(201,170,104,.12);
}
body { background:#090909; color:#f7f3ea; }
body:before { content:""; position:fixed; inset:0; pointer-events:none; z-index:-1; background:radial-gradient(ellipse at 50% -20%,rgba(201,170,104,.08),transparent 55%); }
.lll-announcement { background:#c9aa68; color:#111; border:0; font-size:9px; font-weight:700; letter-spacing:.22em; }
.site-header { background:rgba(9,9,9,.96); border-bottom:1px solid rgba(201,170,104,.32); }
.lll-header-inner { min-height:88px; }
.lll-brand-logo { width:auto; max-width:min(245px,30vw); max-height:62px; object-fit:contain; }
.lll-nav ul { gap:clamp(14px,2vw,30px); }
.lll-nav a { color:#eee7d8; font-size:10px; letter-spacing:.15em; transition:color .22s ease; }
.lll-nav a:hover { color:var(--gold2); }
.lll-pill { border-color:rgba(201,170,104,.65); letter-spacing:.1em; transition:all .25s ease; }
.lll-pill:hover { background:var(--gold2); color:#090909; border-color:var(--gold2); }
.lll-hero { position:relative; overflow:hidden; padding:clamp(70px,10vw,138px) 0 clamp(64px,8vw,104px); border-bottom:1px solid rgba(201,170,104,.15); background:linear-gradient(110deg,#090909 0%,#11100d 58%,#19150e 100%); }
.lll-hero:before { content:""; position:absolute; width:min(58vw,720px); aspect-ratio:1; right:-12%; top:50%; transform:translateY(-50%); border-radius:50%; border:1px solid rgba(201,170,104,.12); box-shadow:0 0 0 38px rgba(201,170,104,.025),0 0 0 80px rgba(201,170,104,.018),inset 0 0 100px rgba(201,170,104,.035); pointer-events:none; }
.lll-hero-grid { position:relative; z-index:1; grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr); gap:clamp(35px,7vw,100px); align-items:center; }
.lll-kicker,.lll-section-heading small { color:var(--gold2); font-size:10px; font-weight:600; letter-spacing:.25em; text-transform:uppercase; }
.lll-hero h1 { max-width:720px; margin:22px 0 20px; font-family:Georgia,'Times New Roman',serif; font-size:clamp(52px,7.5vw,100px); font-weight:400; letter-spacing:-.055em; line-height:.98; }
.lll-hero h1 span { color:var(--gold2); font-style:italic; }
.lll-hero p { max-width:490px; color:#b9b1a3; font-size:15px; line-height:1.95; }
.lll-buttons { gap:12px; margin-top:30px; }
.lll-button { min-height:49px; padding:14px 23px; background:linear-gradient(135deg,#f0dfad,#c9aa68); color:#111 !important; border:1px solid #e4cc8e; border-radius:2px; font-size:10px; font-weight:700; letter-spacing:.13em; text-transform:uppercase; box-shadow:0 8px 26px rgba(201,170,104,.12); transition:transform .25s ease,box-shadow .25s ease; }
.lll-button:hover { transform:translateY(-3px); box-shadow:0 13px 32px rgba(201,170,104,.2); }
.lll-button-outline { color:#eee5d2 !important; background:transparent; border-color:rgba(201,170,104,.45); box-shadow:none; }
.lll-hero-art { min-height:360px; border:1px solid rgba(201,170,104,.24); background:radial-gradient(ellipse at 50% 40%,#262116 0%,#11100e 55%,#0a0a0a 100%); border-radius:2px; }
.lll-hero-art:before { border:1px solid rgba(240,223,173,.2); box-shadow:0 0 0 14px rgba(201,170,104,.035),0 0 0 30px rgba(201,170,104,.02); }
.lll-hero-logo { width:min(190px,48%); filter:drop-shadow(0 16px 32px rgba(0,0,0,.7)); }
.lll-trust { background:#0e0e0e; border-bottom:1px solid rgba(201,170,104,.13); }
.lll-trust-inner { min-height:78px; }
.lll-trust-item { color:#d0c7b7; font-size:10px; letter-spacing:.09em; }
.lll-trust-item span { color:var(--gold2); }
.lll-section { padding:clamp(55px,7vw,92px) 0; }
.lll-section-heading { margin-bottom:30px; align-items:end; }
.lll-section-heading h2,.lll-editorial h2 { margin:9px 0 0; font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:clamp(30px,4vw,48px); letter-spacing:-.035em; }
.lll-section-heading p { max-width:350px; color:#a9a193; font-size:12px; }
.lll-category-grid { gap:14px; }
.lll-category { position:relative; isolation:isolate; min-height:300px; padding:24px; border:1px solid rgba(201,170,104,.28); border-radius:2px; background:linear-gradient(145deg,rgba(201,170,104,.13),transparent 60%),#151411; transition:transform .35s ease,border-color .35s ease; }
.lll-category:before { opacity:.32; background-image:var(--lll-category-image); background-size:cover; background-position:center; transition:opacity .35s ease,transform .6s ease; }
.lll-category:after { content:""; position:absolute; inset:8px; border:1px solid rgba(240,223,173,.16); z-index:-1; pointer-events:none; }
.lll-category:hover { transform:translateY(-5px); border-color:rgba(240,223,173,.75); }
.lll-category:hover:before { opacity:.55; transform:scale(1.04); }
.lll-category-index { color:var(--gold2); }
.lll-category strong { font-family:Georgia,'Times New Roman',serif; font-size:clamp(25px,2.8vw,36px); font-weight:400; }
.lll-category small { color:#c7bdab; letter-spacing:.15em; }
.lll-category em { color:var(--gold2); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.lll-product-section,.woocommerce ul.products li.product,.woocommerce-page ul.products li.product { color:var(--text); }
.woocommerce ul.products li.product, .woocommerce-page ul.products li.product { padding:0 0 17px; border:1px solid rgba(201,170,104,.13); background:#10100f; transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease; }
.woocommerce ul.products li.product:hover,.woocommerce-page ul.products li.product:hover { transform:translateY(-4px); border-color:rgba(201,170,104,.48); box-shadow:0 18px 35px rgba(0,0,0,.25); }
.woocommerce ul.products li.product a img,.woocommerce-page ul.products li.product a img { margin:0 0 15px; aspect-ratio:4/5; object-fit:cover; background:#171614; }
.woocommerce ul.products li.product .woocommerce-loop-product__title,.woocommerce-page ul.products li.product .woocommerce-loop-product__title { padding:0 15px; color:#f3ecdd; font-family:Georgia,'Times New Roman',serif; font-size:17px; font-weight:400; }
.woocommerce ul.products li.product .price,.woocommerce-page ul.products li.product .price { padding:0 15px; color:var(--gold2); }
.woocommerce ul.products li.product .button,.woocommerce-page ul.products li.product .button { margin:10px 15px 0; border-radius:2px; background:transparent; color:var(--gold2); border:1px solid rgba(201,170,104,.45); font-size:10px; letter-spacing:.08em; }
.woocommerce ul.products li.product .button:hover,.woocommerce-page ul.products li.product .button:hover { background:var(--gold2); color:#111; }
.woocommerce span.onsale { background:var(--gold2); color:#111; border-radius:0; min-height:auto; min-width:auto; line-height:1.4; padding:6px 10px; font-size:9px; text-transform:uppercase; }
.woocommerce div.product .product_title { color:#f5eddd; font-family:Georgia,'Times New Roman',serif; font-weight:400; font-size:clamp(32px,4vw,52px); line-height:1.08; }
.woocommerce div.product p.price,.woocommerce div.product span.price { color:var(--gold2); }
.woocommerce div.product form.cart .button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button { border-radius:2px; background:var(--gold2); color:#111; font-size:10px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.woocommerce div.product form.cart .button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover { background:#fff0c3; color:#111; }
.woocommerce div.product .woocommerce-tabs ul.tabs li { background:#151411; border-color:rgba(201,170,104,.2); }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active { background:#0c0c0b; border-bottom-color:#0c0c0b; }
.woocommerce div.product .woocommerce-tabs ul.tabs li a { color:#e7dcc5; }
.woocommerce-message,.woocommerce-info { border-top-color:var(--gold); background:#14130f; color:#e8deca; }
.woocommerce-message:before,.woocommerce-info:before { color:var(--gold2); }
input,select,textarea { background:#111 !important; color:#f4eddf !important; border:1px solid rgba(201,170,104,.28) !important; border-radius:2px !important; }
.site-footer { border-top:1px solid rgba(201,170,104,.25); background:#080808; }
.lll-footer-logo { max-width:190px; }
.lll-footer-col h3 { color:var(--gold2); font-size:10px; letter-spacing:.18em; text-transform:uppercase; }
.lll-footer-col a { color:#b9b1a3; }
.lll-footer-col a:hover { color:var(--gold2); }
@media(max-width:980px) { .lll-hero-grid { grid-template-columns:minmax(0,1fr) minmax(230px,.7fr); } .lll-hero-art { min-height:280px; } }
@media(max-width:680px) { .lll-header-inner { min-height:70px; } .lll-brand-logo { max-width:190px; max-height:50px; } .lll-hero { padding:55px 0 45px; } .lll-hero-grid { grid-template-columns:1fr; } .lll-hero:before { width:95vw; right:-40%; top:70%; } .lll-hero h1 { font-size:clamp(46px,13vw,70px); } .lll-hero-art { min-height:220px; } .lll-category { min-height:220px; } .lll-trust-inner { padding-block:18px; } }
@media(prefers-reduced-motion:reduce) { *,*:before,*:after { scroll-behavior:auto !important; animation-duration:.01ms !important; transition-duration:.01ms !important; } }

/* v3.0.3: masquer le petit coeur dans les cartes produit */
.lll-favorite, button.lll-favorite, a.lll-favorite { display: none !important; }
