@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@700;800&display=swap');
:root{--bg:#07100b;--bg2:#0b160f;--panel:#0e1b13;--panel2:#122219;--text:#f5f7ef;--muted:#9ca99e;--green:#9bdc1a;--green2:#7fc414;--lime:#c4ee78;--purple:#a055f0;--pink:#ff62bd;--line:rgba(230,255,225,.11);--max:1200px;--radius:22px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(circle at 80% -10%,rgba(160,85,240,.13),transparent 35%),radial-gradient(circle at -10% 30%,rgba(155,220,26,.07),transparent 32%),var(--bg);color:var(--text);font-family:"DM Sans",Arial,sans-serif;line-height:1.6;overflow-x:hidden}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.025;background-image:linear-gradient(rgba(255,255,255,.8) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.8) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 75%);z-index:-1}a{color:inherit;text-decoration:none}button{font:inherit}.topbar{min-height:36px;padding:8px 20px;background:var(--green);color:#071006;display:flex;align-items:center;justify-content:center;gap:9px;font-size:12px;font-weight:800}.topbar-muted{font-weight:500;opacity:.62}.header{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:28px;min-height:78px;padding:0 max(22px,calc((100% - var(--max))/2));background:rgba(7,16,11,.72);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}.logo{font-family:Manrope,sans-serif;font-size:20px;letter-spacing:-.8px;white-space:nowrap}.logo span{color:#fff}.logo b{color:var(--green);margin-left:6px}.header nav{display:flex;justify-content:center;gap:27px;flex:1}.header nav a{font-size:12px;color:#bec8be;transition:.2s}.header nav a:hover{color:var(--green)}.cart-btn{display:flex;align-items:center;gap:8px;background:var(--green);color:#071006;padding:11px 17px;border-radius:999px;font-size:12px;font-weight:800;box-shadow:0 8px 28px rgba(155,220,26,.12)}.menu-btn{display:none;background:none;border:0;color:#fff;font-size:25px}.hero{min-height:700px;max-width:var(--max);margin:auto;padding:95px 22px 105px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:55px;position:relative}.hero-grid{position:absolute;inset:0;background:radial-gradient(circle at 70% 45%,rgba(155,220,26,.09),transparent 28%);pointer-events:none}.hero-orb{position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.orb-1{width:300px;height:300px;right:4%;top:5%;background:radial-gradient(circle,rgba(160,85,240,.23),transparent 67%)}.orb-2{width:260px;height:260px;left:-120px;bottom:0;background:radial-gradient(circle,rgba(155,220,26,.11),transparent 68%)}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:800;color:var(--green);margin:0 0 18px}.dot{display:inline-block;width:7px;height:7px;background:var(--green);border-radius:50%;box-shadow:0 0 18px var(--green);margin-right:8px}.hero h1,h2{font-family:Manrope,sans-serif;line-height:.96;letter-spacing:-3px;margin:0}.hero h1{font-size:clamp(56px,7.5vw,102px);position:relative;z-index:2}.hero h1 span,h2 em{color:var(--green);font-style:normal}.hero-text{max-width:620px;color:var(--muted);font-size:16px;margin:27px 0 25px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:13px;min-height:48px;padding:13px 20px;border-radius:999px;font-weight:800;font-size:12px;border:1px solid transparent;transition:.25s}.btn-primary{background:var(--green);color:#071006;box-shadow:0 10px 30px rgba(155,220,26,.14)}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 35px rgba(155,220,26,.24)}.btn-glass{border-color:var(--line);background:rgba(255,255,255,.04);color:#e9eee8}.btn-glass:hover{border-color:rgba(155,220,26,.4);color:var(--green);transform:translateY(-2px)}.btn-dark{background:#071006;color:#fff}.hero-pills{display:flex;gap:7px;flex-wrap:wrap;margin-top:25px}.hero-pills span{font-size:10px;color:#aab5aa;border:1px solid var(--line);background:rgba(255,255,255,.025);padding:7px 10px;border-radius:999px}.hero-visual{min-height:470px;display:grid;place-items:center;position:relative}.pack-card{width:min(390px,90%);height:445px;border:1px solid rgba(255,255,255,.13);border-radius:28px;position:relative;overflow:hidden;display:grid;place-items:center;transform:rotate(2deg);background:linear-gradient(145deg,#17271b,#09100c 72%);box-shadow:30px 32px 0 rgba(160,85,240,.10),0 35px 80px rgba(0,0,0,.35)}.pack-noise{position:absolute;inset:0;opacity:.18;background:radial-gradient(circle at 30% 30%,#fff 0 1px,transparent 1px);background-size:10px 10px;mask-image:linear-gradient(135deg,black,transparent)}.pack-ring{position:absolute;width:300px;height:300px;border:1px solid rgba(155,220,26,.34);border-radius:50%;box-shadow:0 0 0 30px rgba(155,220,26,.025),0 0 0 65px rgba(160,85,240,.025)}.pack-content{text-align:center;position:relative;z-index:2}.pack-mini{font-size:10px;letter-spacing:5px;font-weight:800;color:#dce6dc}.pack-content strong{font-family:Manrope;font-size:46px;line-height:.88;display:block;margin:25px 0 18px}.pack-content strong i{font-style:normal;color:var(--green)}.pack-content small{font-size:11px;color:#849185}.pack-content a{display:inline-block;margin-top:27px;font-size:11px;font-weight:800;color:var(--green)}.thc-badge{position:absolute;right:18px;top:18px;width:76px;height:76px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--green);color:#071006;transform:rotate(10deg);z-index:3}.thc-badge b{font-family:Manrope;font-size:17px}.thc-badge small{font-size:7px;font-weight:800;letter-spacing:1px}.floating-tag{position:absolute;border:1px solid var(--line);background:rgba(12,24,16,.82);backdrop-filter:blur(14px);padding:10px 13px;border-radius:12px;font-size:9px;letter-spacing:1.2px;color:#9eaa9f;z-index:5;box-shadow:0 15px 35px rgba(0,0,0,.25)}.floating-tag b{color:var(--green)}.tag-top{right:0;top:45px}.tag-bottom{left:0;bottom:42px}.tag-bottom span{color:var(--green);margin-right:5px}.trust-strip{border-block:1px solid var(--line);display:grid;grid-template-columns:repeat(4,1fr);background:rgba(10,20,13,.72)}.trust-strip div{min-height:74px;padding:15px max(22px,calc((100vw - var(--max))/2 / 4));border-right:1px solid var(--line);display:flex;align-items:center;gap:12px}.trust-strip div:last-child{border-right:0}.trust-strip b{font-size:10px;color:var(--green);letter-spacing:1px}.trust-strip span{font-size:11px;font-weight:700;color:#d7ded6}.trust-strip i{margin-left:auto;color:#4e5c51;font-style:normal}.section{max-width:var(--max);margin:auto;padding:105px 22px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:45px}.section h2{font-size:clamp(40px,5vw,67px)}.text-link{font-size:11px;font-weight:800;color:var(--green);white-space:nowrap}.category-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.category{min-height:330px;padding:25px;border:1px solid var(--line);border-radius:var(--radius);display:flex;flex-direction:column;position:relative;overflow:hidden;transition:.3s;background:#0d1911}.category:after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;right:-65px;bottom:-80px;background:rgba(255,255,255,.035);transition:.3s}.category:hover{transform:translateY(-7px);border-color:rgba(155,220,26,.28);box-shadow:0 20px 50px rgba(0,0,0,.24)}.category:hover:after{transform:scale(1.35)}.c1{background:linear-gradient(145deg,#132314,#0c1710)}.c2{background:linear-gradient(145deg,#1a1420,#0d1710)}.c3{background:linear-gradient(145deg,#0e211e,#0b1710)}.c4{background:linear-gradient(145deg,#1b1710,#0d1710)}.cat-icon{width:48px;height:48px;border:1px solid rgba(155,220,26,.24);border-radius:14px;display:grid;place-items:center;color:var(--green);font-size:21px;background:rgba(155,220,26,.05)}.cat-no{position:absolute;right:22px;top:28px;color:#4c594e;font-size:10px}.category h3{font-family:Manrope;font-size:24px;letter-spacing:-.7px;margin:72px 0 8px}.category p{color:#89958a;font-size:12px;margin:0 0 18px;max-width:210px}.category b{margin-top:auto;font-size:11px;color:var(--green)}.category b span{margin-left:7px}.featured{padding-top:0}.feature-banner{min-height:210px;background:linear-gradient(105deg,var(--green),#b4ee42);color:#071006;border-radius:var(--radius);padding:35px 42px;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;overflow:hidden}.feature-banner:before{content:"";position:absolute;width:360px;height:360px;border:1px solid rgba(7,16,6,.12);border-radius:50%;right:-100px;top:-85px;box-shadow:0 0 0 40px rgba(7,16,6,.025),0 0 0 80px rgba(7,16,6,.02)}.feature-mark{font-family:Manrope;font-size:130px;line-height:1;opacity:.08;position:absolute;right:150px;top:35px}.feature-copy{position:relative;z-index:2}.feature-banner .eyebrow{color:#17300d;margin-bottom:8px}.feature-banner h2{font-size:clamp(34px,4vw,53px);letter-spacing:-2px}.feature-banner h2 span{color:#6844e8}.feature-banner p:not(.eyebrow){font-size:12px;opacity:.7}.feature-banner .btn{position:relative;z-index:3}.dark-section{max-width:none;background:linear-gradient(180deg,rgba(255,255,255,.018),transparent);border-block:1px solid var(--line);padding-left:max(22px,calc((100% - var(--max))/2));padding-right:max(22px,calc((100% - var(--max))/2))}.delivery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.delivery-grid article{padding:30px;border:1px solid var(--line);border-radius:var(--radius);background:rgba(255,255,255,.025);position:relative;overflow:hidden;transition:.25s}.delivery-grid article:hover{transform:translateY(-4px);border-color:rgba(155,220,26,.22)}.number{color:#536054;font-size:10px;font-weight:800}.icon{font-size:34px;color:var(--green);margin:30px 0 12px}.delivery-grid h3{font-family:Manrope;font-size:23px;margin:0 0 8px}.delivery-grid p{color:#879288;font-size:12px;max-width:330px}.article-arrow{position:absolute;right:25px;top:25px;color:#4f5c51;font-size:14px}.notice{margin-top:16px;border:1px solid var(--line);border-radius:14px;padding:13px 16px;background:rgba(155,220,26,.035);display:flex;align-items:center;gap:12px;color:#9da99e;font-size:11px}.notice>span{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--green);color:#071006;font-weight:800}.notice p{margin:0}.notice b,.notice strong{color:#e8eee7}.quality{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.quality-art{min-height:430px;border:1px solid rgba(155,220,26,.32);border-radius:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;transform:rotate(-1.5deg);background:radial-gradient(circle at 50% 45%,rgba(155,220,26,.13),transparent 42%),linear-gradient(145deg,#112018,#0a120d)}.quality-lines{position:absolute;inset:20px;border:1px solid rgba(255,255,255,.08);border-radius:20px}.quality-art span{font-family:Manrope;font-size:80px;letter-spacing:-5px}.quality-art strong{font-family:Manrope;font-size:36px;color:var(--green);letter-spacing:-2px}.quality-art small{margin-top:18px;color:var(--pink);letter-spacing:3px;font-size:9px}.quality-stamp{position:absolute;right:24px;bottom:24px;color:#5d6a5e;font-size:8px;letter-spacing:1.5px;text-align:center;border:1px solid #324036;padding:8px;border-radius:50%;transform:rotate(-12deg)}.quality .lead{color:#99a59a;max-width:650px;font-size:14px}.checks{list-style:none;padding:0;margin:25px 0}.checks li{display:flex;gap:12px;padding:14px 0;border-bottom:1px solid var(--line);font-size:12px;color:#d5ddd4}.checks li span{color:var(--green);font-weight:800}.loyalty{max-width:none;padding-left:max(22px,calc((100% - var(--max))/2));padding-right:max(22px,calc((100% - var(--max))/2));display:grid;grid-template-columns:1fr .75fr;gap:90px;align-items:center;background:linear-gradient(135deg,rgba(160,85,240,.10),rgba(155,220,26,.025));border-block:1px solid var(--line)}.loyalty p:not(.eyebrow){color:#9ca79d;max-width:560px}.loyalty-card{height:320px;max-width:410px;width:100%;margin-left:auto;border:1px solid rgba(255,255,255,.12);border-radius:25px;background:linear-gradient(145deg,#17221b,#0b120d);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;transform:rotate(3deg);box-shadow:20px 20px 0 rgba(255,98,189,.12),0 30px 60px rgba(0,0,0,.3)}.loyalty-card span{font-size:42px;color:var(--green)}.loyalty-card b{font-family:Manrope;font-size:31px;line-height:.9;text-align:center}.loyalty-card b em{font-style:normal;color:var(--green)}.loyalty-card small{letter-spacing:4px;margin-top:15px;color:#8c988d}.loyalty-card i{position:absolute;bottom:22px;font-style:normal;font-size:8px;letter-spacing:3px;color:#566256}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px}.about-grid>p{color:#9ca79d;font-size:15px}.about-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.about-facts div{border:1px solid var(--line);border-radius:15px;padding:20px;background:rgba(255,255,255,.02)}.about-facts b{font-family:Manrope;font-size:27px;color:var(--green);display:block}.about-facts span{font-size:10px;color:#7f8b81}.legal{max-width:none;background:#09110c;border-top:1px solid var(--line);padding-left:max(22px,calc((100% - var(--max))/2));padding-right:max(22px,calc((100% - var(--max))/2))}.legal h2{font-size:42px;margin-bottom:30px}.legal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.legal-grid>div{border:1px solid var(--line);border-radius:15px;padding:20px;background:rgba(255,255,255,.018)}.legal-grid h3{font-size:12px;margin:0 0 8px}.legal-grid p{font-size:10px;color:#778278;margin:0}.contact{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.contact>div>p:not(.eyebrow){color:#9ca79d;max-width:500px}.contact-card{border:1px solid var(--line);border-radius:20px;overflow:hidden;background:rgba(255,255,255,.025)}.contact-card>a,.contact-card>div{display:flex;gap:16px;padding:20px;align-items:center;border-bottom:1px solid var(--line)}.contact-card>a:last-child,.contact-card>div:last-child{border-bottom:0}.contact-card span{font-size:22px;color:var(--green);width:28px}.contact-card small{display:block;color:#68746a;font-size:9px;text-transform:uppercase;letter-spacing:1.5px}.contact-card b{font-size:13px}.contact-card i{margin-left:auto;color:#566258;font-style:normal}footer{border-top:1px solid var(--line);padding:55px max(22px,calc((100% - var(--max))/2));display:grid;grid-template-columns:1.5fr 1fr auto;gap:30px}.footer-brand{font-family:Manrope;font-size:21px}.footer-brand span{color:#fff}.footer-brand b{color:var(--green);margin-left:5px}.footer-brand small{display:block;font-family:"DM Sans";color:#5f6b61;font-size:8px;letter-spacing:2px;margin-top:7px}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a,.socials a{font-size:10px;color:#8b978d}.footer-links a:hover,.socials a:hover{color:var(--green)}.socials{display:flex;gap:15px}.copyright{grid-column:1/-1;color:#4e5b51;font-size:9px;border-top:1px solid var(--line);padding-top:18px;margin:0}.age-gate{position:fixed;inset:0;background:rgba(2,7,4,.92);backdrop-filter:blur(18px);z-index:100;display:grid;place-items:center;padding:20px}.age-gate.hidden{display:none}.age-card{max-width:480px;width:100%;background:linear-gradient(145deg,#112018,#09110c);border:1px solid rgba(155,220,26,.18);border-radius:28px;padding:46px;text-align:center;position:relative;overflow:hidden;box-shadow:0 30px 100px rgba(0,0,0,.5)}.age-glow{position:absolute;width:240px;height:240px;border-radius:50%;background:rgba(155,220,26,.10);filter:blur(45px);left:-100px;top:-100px}.brand-mark{font-family:Manrope;font-size:20px;position:relative}.brand-mark span{color:var(--green)}.age-leaf{font-family:Manrope;font-size:48px;color:var(--green);margin:30px 0 6px;position:relative}.age-card .eyebrow{margin-bottom:10px}.age-card h1{font-family:Manrope;font-size:31px;line-height:1.05;margin:0;letter-spacing:-1.5px}.age-card h1 em{color:var(--green);font-style:normal}.age-card p:not(.eyebrow){color:#8e9a90;font-size:13px}.age-actions{display:grid;gap:9px;margin:25px 0}.age-card small{font-size:9px;color:#5c685e}@media(max-width:980px){.header nav{display:none;position:absolute;left:0;right:0;top:78px;background:rgba(7,16,11,.98);padding:20px 22px;flex-direction:column;border-bottom:1px solid var(--line);gap:18px}.header nav.open{display:flex}.menu-btn{display:block;margin-left:auto}.cart-btn{display:none}.hero{grid-template-columns:1fr;padding-top:70px}.hero-visual{min-height:500px}.category-grid{grid-template-columns:1fr 1fr}.quality{grid-template-columns:1fr;gap:55px}.quality-art{max-width:560px}.about-grid,.contact{grid-template-columns:1fr}.legal-grid{grid-template-columns:1fr 1fr}.loyalty{grid-template-columns:1fr;gap:45px}.loyalty-card{margin:0 auto}.trust-strip{grid-template-columns:1fr 1fr}.trust-strip div{padding:16px 22px}.delivery-grid{grid-template-columns:1fr}.feature-banner{align-items:flex-start;flex-direction:column;min-height:240px}.feature-mark{right:30px}}@media(max-width:600px){.topbar{font-size:9px;gap:6px;flex-wrap:wrap}.topbar-muted{display:none}.header{min-height:70px}.hero{padding-top:55px;padding-bottom:75px}.hero h1{font-size:54px;letter-spacing:-2px}.hero-text{font-size:14px}.hero-visual{min-height:420px}.pack-card{height:390px;width:min(340px,90%)}.pack-content strong{font-size:38px}.floating-tag{font-size:8px}.tag-top{right:-3px}.tag-bottom{left:-3px}.category-grid,.legal-grid{grid-template-columns:1fr}.section{padding:75px 18px}.section-head{align-items:flex-start;flex-direction:column;margin-bottom:30px}.feature-banner{padding:30px 25px}.feature-banner h2{font-size:34px}.feature-mark{font-size:90px}.about-facts{grid-template-columns:1fr}.footer-links{display:none}footer{grid-template-columns:1fr}.socials{justify-content:flex-start}.copyright{grid-column:1}.age-card{padding:35px 25px}.hero-pills span{font-size:9px}.loyalty{padding-left:18px;padding-right:18px}.loyalty-card{height:280px}}
/* === CBD BOLLÈNE — ACCENT VIOLET RENFORCÉ === */
:root{
  --brand-violet:#8e24e6;
  --brand-violet-dark:#5b1aa6;
  --brand-violet-soft:#b068f5;
  --brand-green:#8ccd14;
  --brand-pink:#ff2fb3;
}

/* Le violet devient la couleur dominante des surfaces et accents */
.navbar,
.site-header,
header{
  border-bottom-color:rgba(142,36,230,.35) !important;
}

.hero::before,
.hero::after{
  background:var(--brand-violet) !important;
  opacity:.22 !important;
}

.card:hover,
.product-card:hover,
.feature-card:hover,
.info-card:hover{
  border-color:rgba(142,36,230,.75) !important;
  box-shadow:0 18px 50px rgba(142,36,230,.18) !important;
}

.badge,
.tag,
.pill,
.section-kicker{
  background:rgba(142,36,230,.16) !important;
  border-color:rgba(142,36,230,.5) !important;
  color:#a77dff !important;
}

.btn-primary{
  background:var(--brand-violet) !important;
  color:#fff !important;
  box-shadow:0 10px 30px rgba(142,36,230,.28) !important;
}
.btn-primary:hover{
  background:var(--brand-violet-soft) !important;
}

.btn-outline{
  border-color:var(--brand-violet) !important;
  color:#b99cff !important;
}
.btn-outline:hover{
  background:var(--brand-violet) !important;
  color:#fff !important;
}

.hero h1 span,
.accent,
.highlight,
.section-title span{
  color:var(--brand-violet-soft) !important;
}

/* Quelques touches vertes restent réservées à l'identité/logo */
.logo span,
.brand-mark span{
  color:var(--brand-green) !important;
}

/* Fonds violet subtils */
.violet-bg,
.paint-a{
  background:linear-gradient(135deg,#8e24e6,#5b1aa6) !important;
}

footer{
  border-top-color:rgba(142,36,230,.35) !important;
}

/* =========================================================
   NOUVEL ESPACE CLIENT + NEWSLETTER — VIOLET DOMINANT
   ========================================================= */
:root{
  --violet:#8e24e6;
  --violet2:#a36bff;
  --violet3:#4e18b9;
  --violet-glow:rgba(142,36,230,.28);
}
body{
  background:
    radial-gradient(circle at 80% -10%,rgba(142,36,230,.28),transparent 34%),
    radial-gradient(circle at 5% 35%,rgba(142,36,230,.14),transparent 30%),
    linear-gradient(180deg,#0d0619 0%,#090513 55%,#07030d 100%);
}
.topbar{background:linear-gradient(90deg,var(--violet3),var(--violet),#9a4fff);color:#fff}
.header{background:rgba(12,4,22,.86);border-bottom-color:rgba(142,36,230,.38)!important}
.header nav a:hover,.text-link,.footer-links a:hover,.socials a:hover{color:var(--violet2)}
.header-actions{display:flex;gap:9px;align-items:center}
.account-btn{border:1px solid rgba(163,107,255,.5);background:rgba(142,36,230,.12);color:#fff;padding:10px 14px;border-radius:999px;font-size:11px;font-weight:800;cursor:pointer}
.account-btn:hover{background:var(--violet);box-shadow:0 10px 28px var(--violet-glow)}
.cart-btn{background:var(--violet)!important;color:#fff!important;box-shadow:0 10px 30px var(--violet-glow)!important}
.hero{min-height:690px}
.hero-grid{background:radial-gradient(circle at 70% 45%,rgba(142,36,230,.22),transparent 32%)}
.orb-1{background:radial-gradient(circle,rgba(142,36,230,.42),transparent 67%)}
.orb-2{background:radial-gradient(circle,rgba(255,47,179,.16),transparent 68%)}
.hero h1 span,h2 em{color:var(--violet2)!important;text-shadow:0 0 35px rgba(142,36,230,.2)}
.eyebrow,.dot{color:#b27dff}.dot{background:var(--violet);box-shadow:0 0 18px var(--violet)}
.btn-primary{background:linear-gradient(135deg,#8e24e6,#a35cff)!important;color:#fff!important;box-shadow:0 12px 35px var(--violet-glow)!important}
.btn-primary:hover{background:linear-gradient(135deg,#965eff,#b57aff)!important}
.btn-glass:hover{border-color:rgba(142,36,230,.65);color:var(--violet2)}
.hero-pills span{border-color:rgba(142,36,230,.3);background:rgba(142,36,230,.08)}
.pack-card{background:radial-gradient(circle at 50% 40%,rgba(142,36,230,.28),transparent 45%),linear-gradient(145deg,#241044,#0a0611 72%);border-color:rgba(163,107,255,.3);box-shadow:30px 32px 0 rgba(142,36,230,.13),0 35px 80px rgba(0,0,0,.45)}
.pack-ring{border-color:rgba(163,107,255,.55);box-shadow:0 0 0 30px rgba(142,36,230,.05),0 0 0 65px rgba(255,47,179,.035)}
.pack-content strong i{color:var(--violet2)}
.thc-badge{background:#8ccd14;color:#080b05}
.floating-tag{border-color:rgba(142,36,230,.35);background:rgba(25,8,44,.82)}
.floating-tag b,.tag-bottom span{color:#8ccd14}
.trust-strip{background:rgba(15,5,27,.78);border-color:rgba(142,36,230,.25)}
.trust-strip div{border-color:rgba(142,36,230,.22)}
.trust-strip b{color:var(--violet2)}
.category{background:linear-gradient(145deg,rgba(142,36,230,.16),rgba(255,255,255,.02))!important;border-color:rgba(142,36,230,.32)!important}
.category:hover{border-color:rgba(163,107,255,.8)!important;box-shadow:0 20px 45px rgba(142,36,230,.18)!important;transform:translateY(-5px)}
.category h3{color:#fff}
.feature-banner{background:linear-gradient(100deg,#5d1bd1,#8b43f6 55%,#8ccd14)!important;box-shadow:0 20px 60px rgba(142,36,230,.18)}
.dark-section{background:linear-gradient(180deg,rgba(38,12,68,.72),rgba(10,4,18,.94))!important;border-block-color:rgba(142,36,230,.22)!important}
.delivery-grid article{background:rgba(142,36,230,.08);border-color:rgba(142,36,230,.3)}
.delivery-grid article:hover{border-color:rgba(163,107,255,.75);box-shadow:0 18px 50px rgba(142,36,230,.15)}
.icon,.checks li span{color:var(--violet2)}
.notice{background:rgba(142,36,230,.09);border-color:rgba(142,36,230,.3)}
.notice>span{background:var(--violet);color:#fff}
.quality-art{background:radial-gradient(circle at 50% 45%,rgba(142,36,230,.30),transparent 42%),linear-gradient(145deg,#241044,#0a0611);border-color:rgba(142,36,230,.55)}
.quality-art strong{color:var(--violet2)}
.loyalty{background:linear-gradient(135deg,rgba(142,36,230,.22),rgba(255,47,179,.07));border-color:rgba(142,36,230,.28)}
.loyalty-card{background:linear-gradient(145deg,#32145d,#0c0614);border-color:rgba(163,107,255,.4);box-shadow:20px 20px 0 rgba(142,36,230,.14),0 30px 60px rgba(0,0,0,.3)}
.loyalty-card span,.loyalty-card b em{color:var(--violet2)}
.account-section{max-width:none;padding-left:max(22px,calc((100% - var(--max))/2));padding-right:max(22px,calc((100% - var(--max))/2));display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center;background:linear-gradient(135deg,#1a082e 0%,#10051d 52%,#09030f 100%);border-block:1px solid rgba(142,36,230,.32)}
.account-section .lead{max-width:650px;color:#b8a9c7;font-size:14px}
.account-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0}
.account-benefits>div{padding:18px;border:1px solid rgba(142,36,230,.27);border-radius:16px;background:rgba(142,36,230,.07)}
.account-benefits span{display:block;color:var(--violet2);font-size:18px;margin-bottom:9px}
.account-benefits b{display:block;font-size:12px}.account-benefits small{display:block;color:#8f819d;font-size:9px;margin-top:5px;line-height:1.5}
.account-preview{border:1px solid rgba(163,107,255,.35);border-radius:26px;background:linear-gradient(145deg,rgba(52,19,89,.94),rgba(14,5,24,.98));padding:18px;box-shadow:0 30px 70px rgba(0,0,0,.35),0 0 70px rgba(142,36,230,.1)}
.preview-head{display:flex;align-items:center;gap:12px;padding:10px 8px 18px;border-bottom:1px solid rgba(255,255,255,.08)}
.preview-avatar{width:43px;height:43px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--violet),#b05cff);font-size:20px}
.preview-head b{display:block;font-size:13px}.preview-head small{display:block;color:#8f829a;font-size:8px;letter-spacing:1.5px}.online-dot{width:8px;height:8px;border-radius:50%;background:#8ccd14;margin-left:auto;box-shadow:0 0 12px #8ccd14}
.preview-row{display:flex;align-items:center;gap:13px;padding:17px 9px;border-bottom:1px solid rgba(255,255,255,.06)}
.preview-row>span{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(142,36,230,.15);color:var(--violet2)}
.preview-row b{display:block;font-size:11px}.preview-row small{color:#81748d;font-size:8px}.preview-row i{margin-left:auto;color:#8f6aff;font-style:normal}
.preview-note{display:flex;gap:12px;align-items:center;margin-top:14px;padding:14px;border-radius:14px;background:linear-gradient(90deg,rgba(142,36,230,.25),rgba(255,47,179,.08));border:1px solid rgba(142,36,230,.25)}
.preview-note b{font-family:Manrope;color:#8ccd14;font-size:20px}.preview-note span{font-size:9px;color:#b5a7c1}
.newsletter-section{max-width:none;padding-left:max(22px,calc((100% - var(--max))/2));padding-right:max(22px,calc((100% - var(--max))/2));background:#08030e}
.newsletter-box{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;padding:45px;border-radius:26px;background:linear-gradient(105deg,#5217b6,#8e24e6 58%,#9a3bff);box-shadow:0 25px 70px rgba(142,36,230,.2)}
.newsletter-box h2{font-size:clamp(38px,4.5vw,58px)}.newsletter-box h2 em{color:#d9bfff!important}.newsletter-box p:not(.eyebrow){color:#e8dff1;font-size:12px;max-width:560px}
.newsletter-form{display:grid;grid-template-columns:1fr auto;gap:9px}.newsletter-form input{min-width:0;border:1px solid rgba(255,255,255,.3);background:rgba(0,0,0,.16);color:#fff;border-radius:999px;padding:14px 17px;outline:none}.newsletter-form input:focus{border-color:#fff}.newsletter-form input::placeholder{color:#d4c7e1}.newsletter-form small{grid-column:1/-1;color:#e5d8ee;font-size:9px;padding-left:10px}
.legal{background:#09040f!important;border-top-color:rgba(142,36,230,.25)!important}.legal-grid>div{border-color:rgba(142,36,230,.25);background:rgba(142,36,230,.04)}
.contact-card{border-color:rgba(142,36,230,.3);background:rgba(142,36,230,.05)}.contact-card span{color:var(--violet2)}
footer{background:#06020b;border-top-color:rgba(142,36,230,.3)}.footer-brand b{color:var(--violet2)}

/* Modal compte */
.account-modal{position:fixed;inset:0;z-index:200;display:none;align-items:center;justify-content:center;padding:18px}.account-modal.open{display:flex}.account-overlay{position:absolute;inset:0;background:rgba(5,1,10,.82);backdrop-filter:blur(14px)}
.account-dialog{position:relative;z-index:2;width:min(760px,100%);max-height:92vh;overflow:auto;border:1px solid rgba(163,107,255,.42);border-radius:28px;background:linear-gradient(145deg,#1d0833,#0d0416);padding:38px;box-shadow:0 40px 100px rgba(0,0,0,.55),0 0 70px rgba(142,36,230,.16)}
.modal-close{position:absolute;right:15px;top:12px;border:0;background:rgba(255,255,255,.06);color:#fff;width:34px;height:34px;border-radius:50%;font-size:22px;cursor:pointer}.modal-subtitle{color:#a997b7;font-size:12px;max-width:580px}.account-form{display:grid;gap:13px;margin-top:24px}.account-form label{display:grid;gap:6px;color:#eee5f4;font-size:10px;font-weight:700}.account-form label>span{font-weight:400;color:#81738d}.account-form input{border:1px solid rgba(163,107,255,.25);background:rgba(0,0,0,.18);color:#fff;border-radius:12px;padding:12px 13px;outline:none}.account-form input:focus{border-color:var(--violet2);box-shadow:0 0 0 3px rgba(142,36,230,.1)}.check-label{display:flex!important;grid-template-columns:none!important;flex-direction:row;align-items:flex-start;gap:8px!important;font-weight:500!important}.check-label input{width:16px;height:16px;margin-top:1px}.form-note{font-size:8px;color:#74657f;line-height:1.6}.account-dashboard h2 em{color:var(--violet2);font-style:normal}.dash-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.dash-grid article{padding:20px;border:1px solid rgba(142,36,230,.25);border-radius:17px;background:rgba(142,36,230,.06)}.dash-grid article:first-child{grid-column:1/-1}.dash-grid article>span{color:var(--violet2);font-size:20px}.dash-grid article>b{display:block;margin:7px 0 5px}.dash-grid article p{font-size:10px;color:#8f8199}.order-add{display:flex;gap:8px}.order-add input{flex:1;border:1px solid rgba(163,107,255,.25);background:#0c0413;color:#fff;border-radius:10px;padding:10px}.order-add button,.mini-btn{border:1px solid rgba(163,107,255,.35);background:rgba(142,36,230,.15);color:#d8c7eb;border-radius:10px;padding:9px 12px;cursor:pointer}.order-list{display:grid;gap:7px;margin-top:10px}.order-item{display:flex;justify-content:space-between;align-items:center;padding:10px 11px;border-radius:10px;background:rgba(0,0,0,.18);font-size:10px}.order-item span{color:#8ccd14}.mini-btn:hover,.order-add button:hover{background:var(--violet);color:#fff}
@media(max-width:980px){.header-actions{margin-left:auto}.account-section,.newsletter-box{grid-template-columns:1fr}.account-benefits{grid-template-columns:1fr}.newsletter-form{grid-template-columns:1fr}.newsletter-form small{grid-column:1}.header-actions .account-btn{display:none}}
@media(max-width:600px){.account-section{padding-left:18px;padding-right:18px}.account-dialog{padding:28px 20px}.account-benefits{grid-template-columns:1fr}.dash-grid{grid-template-columns:1fr}.dash-grid article:first-child{grid-column:auto}.newsletter-box{padding:28px 20px}.newsletter-form{grid-template-columns:1fr}.newsletter-form .btn{width:100%}}

.auth-switch{display:flex;gap:8px;margin:0 0 18px}.auth-switch .mini-btn{flex:1}.auth-switch .mini-btn.active{background:var(--brand-purple,#8e24e6);color:#fff;border-color:var(--brand-purple,#8e24e6)}
.account-form [hidden]{display:none}.form-note.error{color:#ff7b9e}.order-item{display:grid;grid-template-columns:1fr auto;gap:3px 12px}.order-item small{grid-column:1/-1;opacity:.65}.account-dashboard article{min-height:190px}

/* Pages internes : navigation reste sur le nouveau site, paiement uniquement externe */
.inner-page{background:#0d0617;color:#fff;min-height:100vh}.inner-page .header nav a.active,.inner-page .header nav a:hover{color:#8ccd14}.page-hero{padding:110px max(6vw,28px) 80px;background:radial-gradient(circle at 70% 20%,rgba(142,36,230,.32),transparent 45%),linear-gradient(135deg,#10051f,#17052d 55%,#0d0617);border-bottom:1px solid rgba(140,205,20,.18)}.page-hero h1{font-family:Manrope,Arial,sans-serif;font-size:clamp(48px,8vw,105px);line-height:.94;margin:14px 0 22px;letter-spacing:-.06em}.page-hero h1 em{font-style:normal;color:#c66cff}.page-hero>p:last-child{max-width:700px;color:#c8bdd5;font-size:18px;line-height:1.65}.product-block{border-top:1px solid rgba(198,108,255,.18);background:linear-gradient(180deg,#10051d,#0d0617)}.product-block h2{font-family:Manrope,Arial,sans-serif;font-size:clamp(34px,5vw,68px);margin:8px 0 14px}.product-block>p:not(.eyebrow){max-width:700px;color:#c8bdd5;font-size:18px;line-height:1.6}.quality-copy{max-width:900px}.link-btn{display:inline-flex;align-items:center;text-decoration:none}.inner-page .cart-btn{background:#8ccd14;color:#0a0610}.inner-page .btn-primary{background:#8ccd14;color:#0a0610}.inner-page .btn-primary:hover{background:#d0ff55}.footer-links{display:flex;gap:18px;flex-wrap:wrap}.footer-links a{color:#fff;text-decoration:none}.footer-links a:hover{color:#c66cff}

.product-image{width:100%;height:220px;object-fit:cover;display:block;border-radius:12px 12px 0 0;}


.product-image{height:180px!important;object-fit:contain!important;background:#f7f7f7;}


.product-image{height:auto!important;max-height:160px;width:100%;object-fit:contain;background:transparent;}


.product-description-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
  background:rgba(0,0,0,.55) !important;
}

.product-description-panel{
  position:relative !important;
  z-index:1000000 !important;
  display:block !important;
  width:min(760px,100%) !important;
  max-height:90vh !important;
  overflow:auto !important;
  padding:34px !important;
  border-radius:18px !important;
  background:#fff !important;
  color:#222 !important;
  box-shadow:0 20px 60px rgba(0,0,0,.25) !important;
}

.product-description-panel h2{
  display:block !important;
  margin:0 45px 24px 0 !important;
  color:#222 !important;
}

.product-description-text{
  display:block !important;
  color:#333 !important;
  white-space:pre-line !important;
  line-height:1.7 !important;
}

.product-description-close{
  position:absolute !important;
  top:14px !important;
  right:18px !important;
  z-index:1000001 !important;
  border:0 !important;
  background:transparent !important;
  color:#222 !important;
  font-size:2rem !important;
  line-height:1 !important;
  cursor:pointer !important;
}

@media (max-width:620px){
  .product-description-overlay{
    padding:12px !important;
  }

  .product-description-panel{
    padding:26px 20px !important;
  }
}

/* Correction affichage panier */
.cart-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:flex !important;
  justify-content:flex-end !important;
  background:rgba(0,0,0,.45) !important;
}

.cart-overlay[hidden]{
  display:none !important;
}

.cart-panel{
  position:relative !important;
  z-index:1000000 !important;
  width:min(480px,100%) !important;
  height:100% !important;
  overflow:auto !important;
  padding:32px !important;
  background:#fff !important;
  box-shadow:-10px 0 40px rgba(0,0,0,.18) !important;
}

/* Contraste du panier */
.cart-panel,
.cart-panel h2,
.cart-panel h3,
.cart-panel p,
.cart-panel span,
.cart-panel strong,
.cart-panel small,
.cart-panel label,
.cart-panel div{
  color:#222 !important;
}

.cart-panel .cart-item{
  color:#222 !important;
}

.cart-panel .cart-total{
  color:#222 !important;
}

.cart-panel button{
  color:#222 !important;
}

.cart-panel .btn,
.cart-panel .btn-primary{
  color:#fff !important;
}

.account-two-cols{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.account-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}
.account-tab{border:1px solid rgba(140,205,20,.25);background:rgba(255,255,255,.05);color:inherit;padding:10px 12px;border-radius:999px;cursor:pointer}
.account-tab.active{background:#8e24e6;color:#fff}
.account-pane{padding:14px 0}
.account-pane[hidden]{display:none}
.account-form input,.account-form select{width:100%}
.checkout-box label{display:block;margin:10px 0}
.checkout-box input,.checkout-box select{width:100%;padding:10px}
.checkout-fees{display:flex;justify-content:space-between;gap:12px;padding:6px 0}
.checkout-help,.form-note{font-size:.9rem;opacity:.75}
.order-item.unread{border-left:3px solid #8ccd14}
@media(max-width:600px){.account-two-cols{grid-template-columns:1fr}}

.auth-extra{display:flex;gap:14px;flex-wrap:wrap;margin-top:8px}.text-btn{background:none;border:0;padding:0;text-decoration:underline;cursor:pointer;font:inherit}.text-btn:hover{opacity:.7}


.two-factor-box,.security-box{margin-top:16px;padding:16px;border:1px solid rgba(140,205,20,.25);border-radius:14px;background:rgba(140,205,20,.05)}.two-factor-box h3{margin:6px 0 8px}.security-box p{margin:6px 0 0}.two-factor-box input{font-size:1.4rem;letter-spacing:.35em;text-align:center}


/* ===== V13.4.16 — IDENTITE CBD BOLLENE : logo, violet dominant, feuilles de chanvre ===== */
:root{
  --brand-violet:#8e24e6;--brand-violet-dark:#5b1aa6;--brand-violet-soft:#b068f5;
  --brand-green:#8ccd14;--logo-lime:#8ccd14;--logo-purple:#9217e8;
  --icon-leaf:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2064%2064%22%3E%3Cpath%20transform=%22translate%2832%2052%29%20rotate%280%29%22%20d=%22M0%200C9.1%20-13.8%207.0%20-35.9%200%20-46C-7.0%20-35.9%20-9.1%20-13.8%200%200Z%22/%3E%3Cpath%20transform=%22translate%2832%2052%29%20rotate%2828%29%22%20d=%22M0%200C8.1%20-12.0%206.2%20-31.2%200%20-40C-6.2%20-31.2%20-8.1%20-12.0%200%200Z%22/%3E%3Cpath%20transform=%22translate%2832%2052%29%20rotate%28-28%29%22%20d=%22M0%200C8.1%20-12.0%206.2%20-31.2%200%20-40C-6.2%20-31.2%20-8.1%20-12.0%200%200Z%22/%3E%3Cpath%20transform=%22translate%2832%2052%29%20rotate%2858%29%22%20d=%22M0%200C6.8%20-9.3%205.2%20-24.2%200%20-31C-5.2%20-24.2%20-6.8%20-9.3%200%200Z%22/%3E%3Cpath%20transform=%22translate%2832%2052%29%20rotate%28-58%29%22%20d=%22M0%200C6.8%20-9.3%205.2%20-24.2%200%20-31C-5.2%20-24.2%20-6.8%20-9.3%200%200Z%22/%3E%3Cpath%20transform=%22translate%2832%2052%29%20rotate%2884%29%22%20d=%22M0%200C5.2%20-6.3%204.0%20-16.4%200%20-21C-4.0%20-16.4%20-5.2%20-6.3%200%200Z%22/%3E%3Cpath%20transform=%22translate%2832%2052%29%20rotate%28-84%29%22%20d=%22M0%200C5.2%20-6.3%204.0%20-16.4%200%20-21C-4.0%20-16.4%20-5.2%20-6.3%200%200Z%22/%3E%3Crect%20x=%2230.8%22%20y=%2250%22%20width=%222.4%22%20height=%2212%22%20rx=%221.2%22/%3E%3C/svg%3E");--icon-resin:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2064%2064%22%3E%3Cpath%20fill-rule=%22evenodd%22%20d=%22M32%204%2056%2018v28L32%2060%208%2046V18zM32%2014%2018%2022v20l14%208%2014-8V22z%22/%3E%3Ccircle%20cx=%2232%22%20cy=%2232%22%20r=%227%22/%3E%3C/svg%3E");--icon-mol:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2064%2064%22%3E%3Ccircle%20cx=%2232%22%20cy=%2216%22%20r=%229%22/%3E%3Ccircle%20cx=%2214%22%20cy=%2246%22%20r=%229%22/%3E%3Ccircle%20cx=%2250%22%20cy=%2246%22%20r=%229%22/%3E%3Cpath%20d=%22M29%2024%2019%2038l3%202%2010-14zM35%2024l10%2014-3%202-10-14zM22%2046h20v-4H22z%22/%3E%3C/svg%3E");--icon-flame:url("data:image/svg+xml,%3Csvg%20xmlns=%22http://www.w3.org/2000/svg%22%20viewBox=%220%200%2064%2064%22%3E%3Cpath%20d=%22M32%204C36%2018%2050%2026%2050%2042a18%2018%200%200%201-36%200c0-9%206-15%2010-22%202%204%203%206%206%208%201-8%200-16%202-24z%22/%3E%3C/svg%3E");
}
.logo{display:inline-flex;align-items:center;gap:0;text-decoration:none}
.logo-img{height:62px;width:auto;display:block;filter:drop-shadow(0 2px 10px rgba(142,36,230,.45))}
.header{min-height:78px}
.logo-xl{height:150px;margin:0 auto 10px}
.footer-brand .logo-img{height:96px;margin-bottom:8px}
.brand-mark{display:flex;justify-content:center}
.leaf-ico,.leaf-mask{display:inline-block;width:1.15em;height:1.15em;background:currentColor;-webkit-mask:var(--icon-leaf) center/contain no-repeat;mask:var(--icon-leaf) center/contain no-repeat;vertical-align:-.2em}
.topbar .leaf-ico{color:var(--logo-lime);margin-right:2px}
.cat-icon{font-size:0!important;position:relative}
.cat-icon::before{content:"";position:absolute;inset:0;margin:auto;width:26px;height:26px;background:var(--logo-lime);-webkit-mask:var(--icon-leaf) center/contain no-repeat;mask:var(--icon-leaf) center/contain no-repeat}
.c2 .cat-icon::before{-webkit-mask-image:var(--icon-resin);mask-image:var(--icon-resin)}
.c3 .cat-icon::before{-webkit-mask-image:var(--icon-mol);mask-image:var(--icon-mol)}
.c4 .cat-icon::before{-webkit-mask-image:var(--icon-flame);mask-image:var(--icon-flame)}
.page-hero{position:relative;overflow:hidden}
.page-hero>*{position:relative;z-index:1}
.page-hero::after{content:"";position:absolute;right:-40px;top:50%;width:440px;height:440px;transform:translateY(-50%) rotate(14deg);background:var(--brand-violet);opacity:.13;-webkit-mask:var(--icon-leaf) center/contain no-repeat;mask:var(--icon-leaf) center/contain no-repeat;pointer-events:none;z-index:0}
.hero-visual{position:relative}
.hero-visual::before{content:"";position:absolute;left:-60px;bottom:-40px;width:230px;height:230px;transform:rotate(-18deg);background:var(--brand-violet);opacity:.20;-webkit-mask:var(--icon-leaf) center/contain no-repeat;mask:var(--icon-leaf) center/contain no-repeat;pointer-events:none}
.pack-mini .logo-img,.pack-logo{height:96px;filter:none}
.header nav a:hover,.header nav a.active,.inner-page .header nav a.active,.inner-page .header nav a:hover{color:var(--brand-violet-soft)!important}
.footer-links a:hover{color:var(--brand-violet-soft)}
.page-hero em{color:var(--brand-violet-soft)}
footer .copyright::before{content:"";display:inline-block;width:1.1em;height:1.1em;margin-right:8px;background:var(--logo-lime);-webkit-mask:var(--icon-leaf) center/contain no-repeat;mask:var(--icon-leaf) center/contain no-repeat;vertical-align:-.2em}
@media(max-width:700px){.logo-img{height:46px}.logo-xl{height:110px}.page-hero::after{width:260px;height:260px;right:-60px}}

.age-card{background:radial-gradient(circle at 50% 0%,rgba(142,36,230,.28),transparent 55%),linear-gradient(145deg,#1d0c38,#08040f 75%)!important;border-color:rgba(142,36,230,.45)!important}
.age-card h1 em,.age-leaf{color:var(--brand-violet-soft)!important}
.age-glow{background:radial-gradient(circle,rgba(142,36,230,.45),transparent 65%)!important}


/* =========================================================
   CBD BOLLÈNE — V13.4.18 — REFONTE AFFICHAGE PRODUITS
   ========================================================= */
.product-block > .product-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:42px;
  align-items:stretch;
}
.product-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  position:relative;
  border:1px solid rgba(198,108,255,.18);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(31,12,49,.96),rgba(16,6,28,.98));
  box-shadow:0 16px 45px rgba(0,0,0,.22);
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.product-card:hover{
  transform:translateY(-6px);
  border-color:rgba(176,104,245,.62);
  box-shadow:0 24px 60px rgba(0,0,0,.34),0 10px 35px rgba(142,36,230,.14);
}
.product-image{
  width:100%;
  height:250px !important;
  max-height:none !important;
  object-fit:contain !important;
  display:block;
  padding:18px;
  background:linear-gradient(145deg,#170a24,#0d0617);
  border:0;
  border-radius:0;
}
.product-card-body{
  display:flex;
  flex-direction:column;
  flex:1;
  padding:20px 20px 21px;
}
.product-category{
  display:inline-flex;
  align-self:flex-start;
  align-items:center;
  min-height:24px;
  padding:4px 9px;
  border:1px solid rgba(198,108,255,.28);
  border-radius:999px;
  color:#b997cf;
  background:rgba(142,36,230,.09);
  font-size:9px;
  font-weight:800;
  letter-spacing:1.3px;
  text-transform:uppercase;
}
.product-card h3{
  margin:13px 0 9px;
  min-height:50px;
  font-family:Manrope,Arial,sans-serif;
  font-size:20px;
  line-height:1.12;
  letter-spacing:-.55px;
  color:#fff;
}
.product-price{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:7px;
  min-height:34px;
  margin-bottom:17px;
  color:#d9ff79;
  font-family:Manrope,Arial,sans-serif;
  font-size:22px;
  line-height:1.1;
}
.product-price s{
  color:#8d8197;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:13px;
  font-weight:500;
}
.product-price small{
  color:#c66cff;
  font-family:"DM Sans",Arial,sans-serif;
  font-size:9px;
  font-weight:800;
  letter-spacing:.5px;
}
.product-description-btn{
  width:100%;
  min-height:42px;
  margin-top:auto;
  margin-bottom:9px;
  padding:10px 14px;
  border:1px solid rgba(198,108,255,.28);
  border-radius:12px;
  background:rgba(255,255,255,.035);
  color:#eadff0;
  font-size:11px;
  font-weight:800;
  cursor:pointer;
  transition:.2s ease;
}
.product-description-btn:hover{
  border-color:rgba(198,108,255,.7);
  background:rgba(142,36,230,.14);
  color:#fff;
}
.product-card .add-product{
  width:100%;
  min-height:44px;
  margin:0;
  border:0;
  border-radius:12px;
  background:linear-gradient(135deg,#8e24e6,#a94af1);
  color:#fff;
  font-size:11px;
  font-weight:800;
  box-shadow:0 10px 24px rgba(142,36,230,.2);
}
.product-card .add-product:hover{
  transform:translateY(-1px);
  background:linear-gradient(135deg,#a33af0,#c06aff);
}
.product-block > .product-grid:empty{display:none}
@media(max-width:980px){
  .product-block > .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:600px){
  .product-block > .product-grid{grid-template-columns:1fr;gap:16px;margin-top:30px;}
  .product-image{height:230px !important;}
  .product-card-body{padding:18px;}
  .product-card h3{min-height:0;font-size:19px;}
}

/* V13.4.20 — état de stock */
.product-card{position:relative}.product-card.out-of-stock{opacity:.82}.product-card.out-of-stock .product-image{filter:grayscale(.65)}.stock-ribbon{position:absolute;top:12px;left:12px;z-index:2;background:#5c2d75;color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:800;letter-spacing:.02em;transform:rotate(-3deg);box-shadow:0 4px 16px #0004}.product-card button:disabled{opacity:.75;cursor:not-allowed}

/* ===== V13.4.23 — LOGO 3D ANIME ===== */
.logo-img,
.brand-mark .logo-xl,
.pack-logo,
.footer-brand .logo-img {
  transform-style: preserve-3d;
  transform-origin: center center;
  will-change: transform, filter;
}

/* Logo principal : rotation 3D lente + halo */
.header .logo .logo-img {
  animation: cbdLogoFloat 5.5s ease-in-out infinite, cbdLogoGlow 3.8s ease-in-out infinite;
  perspective: 900px;
}

@keyframes cbdLogoFloat {
  0%,100% { transform: perspective(900px) rotateY(-7deg) rotateX(2deg) translateY(0) scale(1); }
  25% { transform: perspective(900px) rotateY(8deg) rotateX(-2deg) translateY(-1px) scale(1.015); }
  50% { transform: perspective(900px) rotateY(16deg) rotateX(2deg) translateY(-2px) scale(1.02); }
  75% { transform: perspective(900px) rotateY(5deg) rotateX(-1deg) translateY(-1px) scale(1.015); }
}

@keyframes cbdLogoGlow {
  0%,100% { filter: drop-shadow(0 2px 9px rgba(146,23,232,.42)); }
  50% { filter: drop-shadow(0 3px 20px rgba(146,23,232,.78)) drop-shadow(0 0 8px rgba(140,205,20,.32)); }
}

/* Grand logo de l'écran d'accueil : effet médaillon 3D */
.age-card .brand-mark .logo-xl,
.index-hero .brand-mark .logo-xl {
  animation: cbdLogoHero 6s ease-in-out infinite;
}

@keyframes cbdLogoHero {
  0%,100% { transform: perspective(1000px) rotateY(-10deg) rotateX(2deg) translateY(0); filter: drop-shadow(0 8px 18px rgba(146,23,232,.42)); }
  50% { transform: perspective(1000px) rotateY(12deg) rotateX(-2deg) translateY(-5px); filter: drop-shadow(0 13px 30px rgba(146,23,232,.72)) drop-shadow(0 0 12px rgba(140,205,20,.3)); }
}

/* Petit logo sur les visuels produit */
.pack-mini .pack-logo {
  animation: cbdLogoMini 4.8s ease-in-out infinite;
}
@keyframes cbdLogoMini {
  0%,100% { transform: perspective(700px) rotateY(-5deg); }
  50% { transform: perspective(700px) rotateY(8deg) rotateX(2deg) scale(1.035); }
}

/* Accessibilité : désactive toute animation si le navigateur le demande */
@media (prefers-reduced-motion: reduce) {
  .header .logo .logo-img,
  .age-card .brand-mark .logo-xl,
  .index-hero .brand-mark .logo-xl,
  .pack-mini .pack-logo {
    animation: none !important;
    transform: none !important;
  }
}

/* ===== Pages légales, pied de page et bandeau cookies (V13.4.34) ===== */
.legal-hero{padding-bottom:40px}
.legal-hero h1{font-size:clamp(28px,4.5vw,52px);line-height:1.15}
.legal-doc{max-width:900px;margin:0 auto;color:#e9e1f3;line-height:1.75;font-size:16px}
.legal-doc h2{color:#8ccd14;font-size:clamp(20px,2.4vw,26px);margin:38px 0 10px;line-height:1.3}
.legal-doc p{margin:0 0 14px}
.legal-doc ul{margin:0 0 16px;padding-left:22px}.legal-doc li{margin:4px 0}
.legal-doc a{color:#c58bff;text-decoration:underline}
.legal-table-wrap{overflow-x:auto;margin:10px 0 20px}
.legal-table{width:100%;border-collapse:collapse;min-width:420px}
.legal-table th,.legal-table td{border-bottom:1px solid rgba(142,36,230,.35);padding:10px 12px;text-align:left}
.legal-table th{color:#8ccd14;font-weight:700}
.legal-btn{display:inline-block;background:transparent;color:#fff;border:1px solid #8e24e6;border-radius:8px;padding:12px 22px;font:inherit;cursor:pointer;text-decoration:none!important}
.legal-btn:hover{background:#8e24e6;color:#fff}
.footer-legal{display:flex;flex-wrap:wrap;gap:8px 22px;justify-content:center;margin:14px 0 4px;font-size:13px}
.footer-legal a{color:#bfb0d3;text-decoration:underline}.footer-legal a:hover{color:#8ccd14}
.cookie-banner{position:fixed;left:0;right:0;bottom:0;z-index:99999;background:#140820;color:#e9e1f3;border-top:2px solid #8e24e6;box-shadow:0 -10px 40px rgba(0,0,0,.5);display:grid;grid-template-columns:1fr 1.5fr;gap:28px;padding:22px max(4vw,20px);max-height:80vh;overflow:auto;font-size:13px;line-height:1.55}
.cookie-banner h2{font-size:20px;margin:0 0 8px;color:#fff;letter-spacing:normal;line-height:1.3}.cookie-banner h3{font-size:16px;margin:0 0 8px;color:#fff;letter-spacing:normal;line-height:1.3}
.cookie-banner p{margin:0 0 10px}.cookie-banner a{color:#c58bff;text-decoration:underline}
.cookie-switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;margin:4px 0 12px}
.cookie-switch input{position:absolute;opacity:0;width:0;height:0}
.cookie-slider{width:44px;height:24px;border-radius:24px;background:#5b4a70;position:relative;transition:.2s}
.cookie-slider:after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:.2s}
.cookie-switch input:checked+.cookie-slider{background:#8ccd14}.cookie-switch input:checked+.cookie-slider:after{left:23px}
.cookie-switch input:focus-visible+.cookie-slider{outline:2px solid #fff;outline-offset:2px}
.cookie-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.cookie-btn{background:transparent;color:#fff;border:1px solid #fff;border-radius:6px;padding:12px 20px;font:700 14px Arial,sans-serif;cursor:pointer}
.cookie-btn:hover{background:rgba(255,255,255,.12)}.cookie-primary{background:#8ccd14;color:#10051b;border-color:#8ccd14}.cookie-primary:hover{background:#a3e32a}
body.cookie-open{padding-bottom:0}
@media(max-width:800px){.cookie-banner{grid-template-columns:1fr;gap:10px;padding:16px;max-height:85vh}.cookie-actions{justify-content:stretch}.cookie-btn{flex:1 1 100%}}

/* ===== Scènes 3D animées des modes de réception (V13.4.36) ===== */
.scene{height:158px;margin:6px 0 10px;display:flex;align-items:center;justify-content:center;position:relative;perspective:700px;pointer-events:none}
.scene *{box-sizing:border-box}
@keyframes sc-sway{0%,100%{transform:rotateX(8deg) rotateY(-16deg)}50%{transform:rotateX(8deg) rotateY(16deg)}}
@keyframes sc-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes sc-float{0%,100%{transform:translateZ(70px) translateY(0)}50%{transform:translateZ(70px) translateY(-9px)}}
@keyframes sc-road{to{background-position:-60px 0}}
@keyframes sc-wheel{to{transform:rotate(360deg)}}
@keyframes sc-spin{from{transform:rotateX(-24deg) rotateY(0)}to{transform:rotateX(-24deg) rotateY(360deg)}}
@keyframes sc-orbit{to{transform:rotateX(72deg) rotateZ(360deg)}}
@keyframes sc-shadow{0%,100%{transform:scale(1);opacity:.45}50%{transform:scale(.82);opacity:.3}}
@keyframes sc-hand{to{transform:rotate(360deg)}}
@keyframes sc-pop{0%,100%{transform:translateZ(60px) scale(1)}50%{transform:translateZ(60px) scale(1.14)}}
/* 1 — livraison locale */
.s-local .stage{position:relative;width:210px;height:140px;transform-style:preserve-3d;animation:sc-sway 7s ease-in-out infinite}
.s-local .road{position:absolute;left:5px;right:5px;bottom:6px;height:74px;transform:rotateX(64deg);transform-origin:50% 100%;border-radius:10px;background:linear-gradient(180deg,#2a1342,#1a0b2b);box-shadow:0 0 0 2px #8e24e6 inset,0 18px 30px rgba(142,36,230,.35)}
.s-local .road i{position:absolute;left:0;right:0;top:50%;height:5px;margin-top:-2px;background:repeating-linear-gradient(90deg,#8ccd14 0 30px,transparent 30px 60px);animation:sc-road .9s linear infinite}
.s-local .scooter{position:absolute;left:38px;bottom:30px;transform:translateZ(36px);animation:sc-bob .5s ease-in-out infinite;filter:drop-shadow(0 6px 8px rgba(0,0,0,.4))}
.s-local .wheel{transform-box:fill-box;transform-origin:center;animation:sc-wheel .7s linear infinite}
.s-local .pin{position:absolute;right:26px;top:0;transform:translateZ(70px);animation:sc-float 3s ease-in-out infinite;filter:drop-shadow(0 8px 10px rgba(142,36,230,.55))}
/* 2 — expédition */
.s-ship .cube{width:74px;height:74px;position:relative;transform-style:preserve-3d;animation:sc-spin 11s linear infinite}
.s-ship .face{position:absolute;inset:0;border:2px solid rgba(255,255,255,.18);background:linear-gradient(135deg,#9a35f0,#5a1a99);display:flex;align-items:center;justify-content:center;font:800 15px/1 "DM Sans",Arial,sans-serif;color:#10051b;letter-spacing:.06em;overflow:hidden}
.s-ship .face:before{content:"";position:absolute;left:0;right:0;top:50%;height:16px;margin-top:-8px;background:#8ccd14;opacity:.95}
.s-ship .f-top:before,.s-ship .f-bottom:before{left:50%;right:auto;top:0;bottom:0;width:16px;height:auto;margin:0 0 0 -8px}
.s-ship .face span,.s-ship .f-front{z-index:1}
.s-ship .f-front{transform:translateZ(37px);color:#10051b;text-shadow:0 0 0 #000;background:linear-gradient(135deg,#a64cf5,#6a21b0)}
.s-ship .f-back{transform:rotateY(180deg) translateZ(37px)}
.s-ship .f-right{transform:rotateY(90deg) translateZ(37px);filter:brightness(.85)}
.s-ship .f-left{transform:rotateY(-90deg) translateZ(37px);filter:brightness(.85)}
.s-ship .f-top{transform:rotateX(90deg) translateZ(37px);filter:brightness(1.15)}
.s-ship .f-bottom{transform:rotateX(-90deg) translateZ(37px);filter:brightness(.6)}
.s-ship .orbit{position:absolute;left:50%;top:50%;width:150px;height:150px;margin:-75px 0 0 -75px;border:2px dashed rgba(197,139,255,.55);border-radius:50%;transform:rotateX(72deg);animation:sc-orbit 8s linear infinite;transform-style:preserve-3d}
.s-ship .orbit b{position:absolute;left:50%;top:-7px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:#8ccd14;box-shadow:0 0 14px #8ccd14}
.s-ship .cube-shadow{position:absolute;bottom:4px;left:50%;width:84px;height:14px;margin-left:-42px;border-radius:50%;background:rgba(0,0,0,.55);filter:blur(5px);animation:sc-shadow 5.5s ease-in-out infinite}
/* 3 — retrait sur rendez-vous */
.s-pick{transform-style:preserve-3d}
.s-pick .cal{position:absolute;left:50%;top:50%;width:104px;height:96px;margin:-48px 0 0 -70px;border-radius:12px;background:linear-gradient(160deg,#2b1445,#1a0b2b);border:2px solid #8e24e6;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:30px 12px 10px;transform:rotateY(-24deg) rotateX(8deg);box-shadow:0 14px 30px rgba(142,36,230,.35);animation:sc-bob 4s ease-in-out infinite}
.s-pick .cal i{position:absolute;left:0;right:0;top:0;height:20px;border-radius:9px 9px 0 0;background:#8e24e6}
.s-pick .cal span{border-radius:4px;background:rgba(197,139,255,.35)}
.s-pick .cal span.on{background:#8ccd14}
.s-pick .clock{position:absolute;left:50%;top:50%;width:82px;height:82px;margin:-35px 0 0 -4px;transform-style:preserve-3d;animation:sc-sway 6s ease-in-out infinite}
.s-pick .disc,.s-pick .clock-face{position:absolute;inset:0;border-radius:50%}
.s-pick .d1{transform:translateZ(-8px);background:#4a1a7a}.s-pick .d2{transform:translateZ(-4px);background:#5d22a0}.s-pick .d3{transform:translateZ(0);background:#7a2fcf}
.s-pick .clock-face{transform:translateZ(5px);background:radial-gradient(circle at 35% 30%,#fff,#e9e1f3 70%);border:4px solid #8e24e6;box-shadow:0 0 22px rgba(142,36,230,.55)}
.s-pick .clock-face:before{content:"";position:absolute;inset:5px;border-radius:50%;background:repeating-conic-gradient(#10051b 0 1.5deg,transparent 1.5deg 30deg);-webkit-mask:radial-gradient(circle,transparent 62%,#000 63%);mask:radial-gradient(circle,transparent 62%,#000 63%);opacity:.8}
.s-pick .clock-face em,.s-pick .clock-face u{position:absolute;left:50%;bottom:50%;transform-origin:50% 100%;border-radius:3px;background:#10051b}
.s-pick .h-hour{width:4px;height:20px;margin-left:-2px;animation:sc-hand 24s linear infinite}
.s-pick .h-min{width:3px;height:29px;margin-left:-1.5px;animation:sc-hand 4s linear infinite}
.s-pick .clock-face u{width:2px;height:30px;margin-left:-1px;background:#8ccd14;display:none}
.s-pick .check{position:absolute;right:28px;top:14px;width:32px;height:32px;border-radius:50%;background:#8ccd14;display:flex;align-items:center;justify-content:center;transform:translateZ(60px);animation:sc-pop 2.4s ease-in-out infinite;box-shadow:0 0 18px rgba(140,205,20,.6)}
@media(max-width:700px){.scene{height:140px;transform:scale(.92)}}
@media (prefers-reduced-motion: reduce){.scene,.scene *{animation:none!important}.s-ship .cube{transform:rotateX(-24deg) rotateY(35deg)}.s-ship .orbit{transform:rotateX(72deg)}}

/* ===== Fidélité ===== */
.loyalty-box,.loy-card{margin:14px 0;padding:14px 16px;border:1px solid rgba(140,205,20,.45);border-radius:14px;background:rgba(140,205,20,.08)}
.loyalty-box p,.loy-card p{margin:6px 0}
.loyalty-hint{font-size:.88rem;opacity:.85}
.loyalty-use{display:flex;gap:8px;align-items:center;margin-top:8px;cursor:pointer}
.loyalty-slider{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}
.loyalty-slider input[type=range]{flex:1;min-width:140px}
.loyalty-balance b{font-size:1.8rem}
.loyalty-history{list-style:none;padding:0;margin:8px 0 0;max-height:220px;overflow:auto}
.loyalty-history li{display:flex;justify-content:space-between;gap:10px;padding:5px 0;border-bottom:1px solid rgba(128,128,128,.25);font-size:.9rem}
.loyalty-history .plus{color:#5a9a0a}.loyalty-history .minus{color:#c0392b}
.loyalty-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin:24px 0}
.loyalty-steps article{padding:18px;border:1px solid rgba(140,205,20,.4);border-radius:14px}
.loyalty-steps b.big{display:block;font-size:2rem;color:#5a9a0a}
.loyalty-box .loyalty-use{display:flex!important;flex-direction:row!important;align-items:center;gap:10px}
.loyalty-box .loyalty-use input{width:auto!important;margin:0}
.loyalty-box .loyalty-slider input[type=range]{width:auto!important;padding:0}

.loy-card{margin:16px 0;padding:16px 18px;border:1px solid rgba(140,205,20,.45);border-radius:14px;background:rgba(140,205,20,.07);font-size:.95rem;line-height:1.4}
.loy-card strong{font-size:1.05rem}
.loy-total{display:flex;align-items:center;gap:14px;margin:10px 0}
.loy-total>b{font-size:2.4rem;line-height:1;color:#b7ff00}
.loy-total span{font-size:.95rem}.loy-total small{opacity:.8;font-size:.85rem}
.loy-mini{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0}
.loy-mini div{padding:8px 10px;border-radius:10px;background:rgba(255,255,255,.05)}
.loy-mini small{display:block;opacity:.75;font-size:.78rem}.loy-mini b{font-size:1.2rem}
.loy-rules{margin:10px 0;font-size:.85rem;opacity:.85}
.loy-title{display:block;margin:12px 0 4px}
.loy-history{list-style:none;margin:0;padding:0;max-height:260px;overflow:auto}
.loy-history li{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(128,128,128,.25)}
.loy-ico{width:28px;text-align:center;font-size:1.2rem}
.loy-txt{flex:1;font-size:.88rem}.loy-txt small{opacity:.7}.loy-txt em{font-style:normal;opacity:.8}
.loy-history b{font-size:1rem;white-space:nowrap}.loy-history .plus{color:#9be12a}.loy-history .minus{color:#ff7a6b}
/* Réseaux sociaux + infos réglementaires */
.socials a.social-ico{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;border:1px solid rgba(163,107,255,.45);padding:0}
.socials a.social-ico svg{width:22px;height:22px;fill:currentColor}
.reg-icons{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:22px 0}
.reg-item{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:16px 10px;border:1px solid rgba(163,107,255,.35);border-radius:16px;background:rgba(255,255,255,.03)}
.reg-item svg{width:72px;height:72px}.reg-item b{font-size:.95rem;line-height:1.25}
.reg-note{margin-bottom:22px!important;padding:14px 16px;border-left:4px solid #b7ff00;border-radius:8px;background:rgba(183,255,0,.07);margin:0 0 6px}

/* Panier : détail du prix, compte connecté, choix des points */
.price-summary{margin:16px 0;padding:14px 16px;border:1px solid rgba(128,128,128,.35);border-radius:14px;background:rgba(128,128,128,.07)}
.price-summary h4{margin:0 0 8px;font-size:1rem}
.sum-row{display:flex;justify-content:space-between;gap:12px;padding:6px 0;font-size:.95rem}
.sum-row[hidden]{display:none}
.sum-minus strong{color:#2e8b12}
.sum-total{margin-top:6px;padding-top:10px;border-top:2px solid rgba(128,128,128,.5);font-size:1.15rem;font-weight:700}
.sum-total strong{font-size:1.3rem}
.price-summary #sumNote:empty{display:none}
.account-banner{display:flex;flex-direction:column;gap:3px;margin:14px 0;padding:12px 14px;border:1px solid rgba(46,139,18,.5);border-radius:12px;background:rgba(140,205,20,.12)}
.account-banner small{opacity:.75}
.loy-seg{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:10px 0}
.loy-seg button{border:1px solid rgba(128,128,128,.5);background:transparent;color:inherit;border-radius:10px;padding:10px 8px;cursor:pointer;font-weight:600;line-height:1.2}
.loy-seg button small{display:block;font-weight:400;opacity:.8;font-size:.75rem;margin-top:3px}
.loy-seg button.on{background:#7c3cff;border-color:#7c3cff;color:#fff}
.loy-saving{margin:8px 0;padding:8px 10px;border-radius:10px;background:rgba(46,139,18,.15)}
.loy-eur{font-weight:400;opacity:.8}
.account-banner[hidden],.loyalty-box[hidden],.price-summary [hidden]{display:none!important}
.checkout-box .btn{background:#7c3cff!important;color:#fff!important;border:0;opacity:1}.checkout-box #checkoutBtn{width:100%;padding:14px;font-size:1.05rem;margin-top:8px}

.saved-address{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0;padding:12px 14px;border:1px solid rgba(46,139,18,.5);border-radius:12px;background:rgba(140,205,20,.12)}
.saved-address[hidden]{display:none!important}
.saved-address span{opacity:.85;font-size:.92rem}
.saved-address .mini-btn{background:#7c3cff;color:#fff;border:0;border-radius:8px;padding:8px 14px;cursor:pointer;white-space:nowrap}

/* ===== Panier : articles bien présentés ===== */
.cart-panel{font-size:16px!important}
.cart-panel h2{font-size:1.7rem!important;margin:0 0 6px!important}
.cart-panel .ci-count{margin:0 0 12px;font-size:.95rem;opacity:.75}
.cart-panel .cart-item{display:flex!important;gap:14px;align-items:flex-start;padding:14px 0!important;border-bottom:1px solid #e4e0ea}
.cart-panel .ci-img{width:76px;height:76px;flex:0 0 76px;border-radius:12px;object-fit:cover;background:#f1ecf8}
.cart-panel .ci-noimg{display:flex;align-items:center;justify-content:center;font-size:2rem}
.cart-panel .ci-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}
.cart-panel .ci-top{display:flex;justify-content:space-between;gap:8px;align-items:flex-start}
.cart-panel .ci-name{font-size:1.1rem!important;line-height:1.25}
.cart-panel .ci-unit{display:block;font-size:.95rem;opacity:.8}
.cart-panel .ci-remove{border:0!important;background:#f3eef9!important;width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:.9rem;line-height:1;flex:0 0 30px}
.cart-panel .ci-remove:hover{background:#ffe0e0!important}
.cart-panel .ci-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:2px}
.cart-panel .cart-controls{display:inline-flex;align-items:center;gap:0;border:1px solid #cfc6dd;border-radius:10px;overflow:hidden}
.cart-panel .cart-controls button{width:40px;height:38px;border:0!important;background:#f6f2fb!important;font-size:1.25rem;cursor:pointer}
.cart-panel .cart-controls button:hover{background:#e9defa!important}
.cart-panel .ci-qty{min-width:42px;text-align:center;font-size:1.1rem;font-weight:700}
.cart-panel .ci-line{font-size:1.2rem!important;white-space:nowrap}
.cart-panel .checkout-box h3{font-size:1.25rem!important}
.cart-panel .checkout-box label,.cart-panel .checkout-box select,.cart-panel .checkout-box input{font-size:1rem}
.cart-panel .sum-row{font-size:1.02rem}
/* ===== Espace client : commandes lisibles ===== */
.ord-card{border:1px solid rgba(163,107,255,.35);border-radius:16px;background:rgba(255,255,255,.04);margin:0 0 14px;font-size:1rem;line-height:1.45;overflow:hidden}
.ord-card>summary{list-style:none;cursor:pointer;padding:16px 18px}
.ord-card>summary::-webkit-details-marker{display:none}
.ord-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;flex-wrap:wrap}
.ord-num{font-size:1.2rem;display:block}
.ord-head small{opacity:.7;font-size:.9rem}
.ord-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.ord-total{font-size:1.35rem;color:#b7ff00}
.ord-status{display:inline-block;padding:4px 12px;border-radius:99px;font-size:.88rem;font-weight:700;background:#3a2566;color:#fff}
.ord-status.st-pending{background:#6b4a00}.ord-status.st-paid,.ord-status.st-processing{background:#1e5a1e}.ord-status.st-shipped,.ord-status.st-ready_for_pickup{background:#0f4f7a}.ord-status.st-completed{background:#2e2e2e}.ord-status.st-cancelled{background:#7a1f2b}
.ord-more{display:block;margin-top:10px;font-size:.92rem;color:#c9a6ff}
.ord-card[open] .ord-more{display:none}
.ord-body{padding:0 18px 18px;border-top:1px solid rgba(163,107,255,.25)}
.ord-body h4{margin:18px 0 8px;font-size:1rem;color:#c9a6ff;text-transform:uppercase;letter-spacing:.04em}
.ord-items{list-style:none;margin:0;padding:0}
.ord-items li{display:grid;grid-template-columns:1fr auto auto;gap:4px 14px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.1);align-items:baseline}
.ord-name{font-weight:600}.ord-qty{opacity:.75;font-size:.95rem}
.ord-prices .ord-row{display:flex;justify-content:space-between;gap:12px;padding:5px 0}
.ord-prices .minus b{color:#9be12a}
.ord-prices .total{margin-top:6px;padding-top:10px;border-top:2px solid rgba(255,255,255,.3);font-size:1.15rem}
.ord-deliv{margin:0}
.ord-points{margin:12px 0 0;padding:8px 12px;border-radius:10px;background:rgba(140,205,20,.12)}
.ord-steps{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ord-steps li{display:flex;align-items:center;gap:10px;opacity:.5}
.ord-steps li.done,.ord-steps li.now{opacity:1}
.ord-steps li span{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);font-size:.85rem}
.ord-steps li.done span{background:#2e8b12}.ord-steps li.now span{background:#7c3cff}.ord-steps li.now{font-weight:700}
.ord-cancelled{margin:0;color:#ff8a8a}
.ord-ref{margin:14px 0 8px;font-size:.78rem;opacity:.55;word-break:break-all}
.ord-body .cancel-order{font-size:.95rem;padding:10px 16px}

/* Bloc « Bon plan » : texte lisible sur le dégradé */
.feature-banner{position:relative}
.feature-banner .eyebrow{color:#fff!important;opacity:.95;letter-spacing:.14em}
.feature-banner .feature-copy h2{color:#fff!important;text-shadow:0 2px 14px rgba(20,4,45,.55)}
.feature-banner .feature-copy h2 span{color:#e9ff9c!important;text-shadow:0 2px 14px rgba(20,4,45,.55)}
.feature-banner .feature-copy p{color:#fff!important;opacity:1;text-shadow:0 1px 8px rgba(20,4,45,.55);font-weight:500}
.feature-banner .feature-mark{opacity:.12!important;color:#fff!important}
.feature-banner .btn-dark{background:#10051b!important;color:#fff!important}
.ship-delay{margin:8px 0 0;font-weight:700;color:#5d1bd1}
.carrier-box{margin-top:10px}
.weekly-promo{max-width:1100px;margin:0 auto 28px;padding:0 16px}
.weekly-promo[hidden]{display:none}
.weekly-promo .wp-inner{display:flex;gap:22px;align-items:center;flex-wrap:wrap;background:linear-gradient(120deg,#1c0a33,#3b1275);border:2px solid #b7ff00;border-radius:22px;padding:26px 28px;box-shadow:0 12px 40px rgba(124,60,255,.35)}
.weekly-promo .wp-copy{flex:1 1 320px}
.weekly-promo .wp-badge{display:inline-block;background:#b7ff00;color:#10051b;font-weight:800;letter-spacing:.1em;font-size:.78rem;padding:5px 12px;border-radius:999px;margin:0 0 10px}
.weekly-promo h2{color:#fff;font-size:clamp(1.6rem,3.4vw,2.4rem);margin:0 0 8px}
.weekly-promo .wp-text{color:#f1e8ff;font-size:1.05rem;line-height:1.55;margin:0 0 16px}
.weekly-promo .wp-imgs{flex:1 1 280px;display:flex;gap:10px;flex-wrap:wrap;justify-content:center}
.weekly-promo .wp-imgs img{max-width:100%;max-height:230px;border-radius:14px;object-fit:cover;flex:1 1 150px;background:#fff}
.weekly-promo .btn-dark{background:#b7ff00!important;color:#10051b!important}
.wp-modal{position:fixed;inset:0;background:rgba(8,2,18,.78);z-index:9998;display:flex;align-items:center;justify-content:center;padding:16px}
.wp-dialog{position:relative;max-width:640px;width:100%;max-height:90vh;overflow:auto;background:linear-gradient(120deg,#1c0a33,#3b1275);border:2px solid #b7ff00;border-radius:22px;padding:28px}
.wp-dialog .wp-inner{display:block;background:none;border:0;box-shadow:none;padding:0}
.wp-dialog .wp-copy{flex:none}
.wp-dialog .wp-badge{display:inline-block;background:#b7ff00;color:#10051b;font-weight:800;letter-spacing:.1em;font-size:.78rem;padding:5px 12px;border-radius:999px;margin:0 0 10px}
.wp-dialog h2{color:#fff;margin:0 0 8px}.wp-dialog .wp-text{color:#f1e8ff;margin:0 0 16px}
.wp-dialog .wp-imgs{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.wp-dialog .wp-imgs img{max-width:100%;max-height:220px;border-radius:12px;object-fit:cover;flex:1 1 140px}
.wp-dialog .btn-dark{background:#b7ff00!important;color:#10051b!important}
.wp-close{position:absolute;top:8px;right:12px;background:none;border:0;color:#fff;font-size:2rem;cursor:pointer;line-height:1}
.msg-reply{margin:8px 0;padding:8px 10px;border-left:3px solid #b7ff00;background:rgba(255,255,255,.05);border-radius:6px}
.msg-reply-form{margin:10px 0;display:flex;flex-direction:column;gap:6px}
.msg-reply-form textarea{width:100%;min-height:70px;border-radius:8px;padding:8px}
.guest-choice{padding:12px 14px;border:1px solid rgba(183,255,0,.45);border-radius:12px;margin-bottom:10px;background:rgba(255,255,255,.04)}
.guest-choice-btns{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.guest-choice-btns .btn{flex:1 1 140px;padding:10px 14px}
.account-banner span{display:block}
.age-cert{display:flex;gap:10px;align-items:flex-start;margin:12px 0;padding:12px 14px;border:2px solid #b7ff00;border-radius:12px;background:rgba(183,255,0,.08);font-size:.9rem;line-height:1.45;cursor:pointer}
.age-cert input{width:22px;height:22px;flex:none;margin-top:2px}
.age-cert.age-cert-error{border-color:#ff4d4d;background:rgba(255,77,77,.12);animation:agecert .4s}
@keyframes agecert{25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}

/* V13.4.44 — variantes, offres et prix dégressifs */
.offer-box{display:flex;flex-direction:column;gap:6px;margin:8px 0}
.offer-badge{display:inline-block;align-self:flex-start;background:#b7ff00;color:#1b0b2e;font-weight:800;border-radius:999px;padding:5px 12px;font-size:.95rem}
.tier-list{display:flex;flex-wrap:wrap;gap:6px}
.tier-badge{background:rgba(183,255,0,.15);border:1px solid #b7ff00;color:#e9ffb0;border-radius:8px;padding:3px 9px;font-size:.9rem}
.variant-pick{display:block;margin:8px 0;font-size:.95rem}
.variant-pick select,.ci-variant-pick{width:100%;margin-top:4px;padding:9px 10px;border-radius:8px;font-size:1rem}
.variant-err{display:block;color:#ff9aa8;font-weight:700;margin-bottom:6px}
.ci-variant{display:inline-block;background:rgba(255,255,255,.14);border-radius:999px;padding:2px 10px;font-size:.9rem;margin:2px 0}
.ci-free{display:block;color:#b7ff00;font-weight:700;font-size:.95rem}
.variant-err[hidden]{display:none}
.cart-panel .ci-variant{background:#efe6ff;color:#4b1fa8;font-weight:700}
.cart-panel .ci-free{color:#2e8b12}

/* ===== V13.4.44 — Panier aux couleurs du site (fond sombre, vert citron, violet) ===== */
.cart-overlay{background:rgba(3,6,4,.72)!important;backdrop-filter:blur(4px)}
.cart-panel{background:radial-gradient(circle at 100% 0,rgba(160,85,240,.22),transparent 40%),radial-gradient(circle at 0 100%,rgba(155,220,26,.10),transparent 40%),linear-gradient(180deg,#120a1f,#0a1410)!important;border-left:1px solid rgba(155,220,26,.35);box-shadow:-14px 0 50px rgba(0,0,0,.55)!important}
.cart-panel,.cart-panel h2,.cart-panel h3,.cart-panel h4,.cart-panel p,.cart-panel span,.cart-panel strong,.cart-panel small,.cart-panel label,.cart-panel div,.cart-panel li{color:#f5f7ef!important}
.cart-panel h2,.cart-panel h3{color:#b7ff00!important}
.cart-panel .ci-count,.cart-panel .ci-unit,.cart-panel small{color:#b9c4bb!important}
.cart-panel .ci-unit b{color:#b7ff00!important}
.cart-panel .ci-line,.cart-panel #checkoutGrandTotal{color:#b7ff00!important}
.cart-panel .cart-item{border-bottom:1px solid rgba(183,255,0,.18)!important}
.cart-panel .ci-img{background:#1b1230;border:1px solid rgba(160,85,240,.4)}
.cart-panel .ci-remove{background:rgba(255,255,255,.08)!important;color:#f5f7ef!important}
.cart-panel .ci-remove:hover{background:rgba(255,98,189,.35)!important}
.cart-panel .cart-controls{border:1px solid rgba(183,255,0,.45)!important}
.cart-panel .cart-controls button{background:rgba(142,36,230,.35)!important;color:#fff!important}
.cart-panel .cart-controls button:hover{background:#8e24e6!important}
.cart-panel .ci-qty{color:#fff!important}
.cart-panel #closeCart,.cart-panel .cart-close{background:rgba(255,255,255,.1)!important;color:#fff!important;border:1px solid rgba(255,255,255,.25)!important}
.cart-panel input,.cart-panel select,.cart-panel textarea{background:#0e1a13!important;color:#f5f7ef!important;border:1px solid rgba(183,255,0,.35)!important;border-radius:10px}
.cart-panel input::placeholder,.cart-panel textarea::placeholder{color:#7f8c82!important}
.cart-panel input:focus,.cart-panel select:focus,.cart-panel textarea:focus{outline:2px solid #8e24e6;border-color:#b7ff00!important}
.cart-panel option{background:#0e1a13;color:#f5f7ef}
.cart-panel .btn,.cart-panel .btn-primary,.cart-panel .checkout-box .btn{background:linear-gradient(135deg,#8e24e6,#a36bff)!important;color:#fff!important;border:0!important;box-shadow:0 8px 24px rgba(142,36,230,.35)}
.cart-panel #checkoutBtn{background:linear-gradient(135deg,#9bdc1a,#c4ee78)!important;color:#071006!important;font-weight:800}
.cart-panel #checkoutBtn:hover{filter:brightness(1.08)}
.cart-panel .price-summary{background:rgba(255,255,255,.05);border:1px solid rgba(183,255,0,.35)}
.cart-panel .sum-minus strong{color:#b7ff00!important}
.cart-panel .sum-row.total,.cart-panel .sum-total{border-top:1px solid rgba(183,255,0,.4)}
.cart-panel .loyalty-box,.cart-panel .account-banner,.cart-panel .saved-address,.cart-panel .guest-choice{background:rgba(155,220,26,.08);border:1px solid rgba(183,255,0,.4)}
.cart-panel .loy-saving{background:rgba(155,220,26,.16)}
.cart-panel a{color:#c9a6ff!important;text-decoration:underline}
.cart-panel .ci-variant{background:rgba(160,85,240,.35)!important;color:#fff!important}
.cart-panel .ci-free{color:#b7ff00!important}
.cart-panel .ci-variant-pick{border-color:#ff62bd!important}
.cart-panel .saved-address .mini-btn{background:#8e24e6!important;color:#fff!important}
.cart-panel .loyalty-seg button,.cart-panel .loy-btn{background:rgba(142,36,230,.3)!important;color:#fff!important;border:1px solid rgba(183,255,0,.4)!important}
.cart-panel .loyalty-seg button.active,.cart-panel .loy-btn.active{background:#b7ff00!important;color:#071006!important}
.cart-panel .loy-seg button{color:#f5f7ef!important;background:rgba(255,255,255,.06)!important;border:1px solid rgba(183,255,0,.4)!important}
.cart-panel .loy-seg button.on{background:linear-gradient(135deg,#8e24e6,#a36bff)!important;border-color:#b7ff00!important;color:#fff!important}
.cart-panel .loyalty-box .loyalty-use,.cart-panel .loyalty-hint{color:#f5f7ef!important}

/* ===== V13.4.44 : objets 3D des catégories (accueil) ===== */
.category{position:relative}
.cat3d{position:absolute;left:50%;top:26px;width:160px;height:132px;margin-left:-80px;pointer-events:none;perspective:700px;z-index:0}
.cat3d-obj{position:absolute;inset:0;transform-style:preserve-3d;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .18s ease-out;animation:cat3dFloat 5.5s ease-in-out infinite;filter:drop-shadow(0 12px 14px rgba(0,0,0,.45))}
.cat3d-obj svg{width:100%;height:100%;overflow:visible}
.cat3d-shadow{position:absolute;left:50%;bottom:-6px;width:96px;height:14px;margin-left:-48px;border-radius:50%;background:radial-gradient(closest-side,rgba(0,0,0,.5),transparent);animation:cat3dShadow 5.5s ease-in-out infinite}
.c2 .cat3d-obj{animation-delay:-1.4s}.c3 .cat3d-obj{animation-delay:-2.8s}.c4 .cat3d-obj{animation-delay:-4.1s}
.c3 .cat3d-obj{animation-name:cat3dSpin}
.category:hover .cat3d-obj{animation-duration:3s;filter:drop-shadow(0 16px 18px rgba(142,36,230,.55))}
.category .cat-icon,.category h3,.category p,.category b{position:relative;z-index:1}
@keyframes cat3dFloat{0%,100%{translate:0 0;rotate:-2deg}50%{translate:0 -9px;rotate:2deg}}
@keyframes cat3dSpin{0%,100%{translate:0 0;rotate:-6deg}50%{translate:0 -9px;rotate:6deg}}
@keyframes cat3dShadow{0%,100%{transform:scale(1);opacity:.9}50%{transform:scale(.8);opacity:.55}}
@media (max-width:640px){.cat3d{transform:scale(.85)}}
@media (prefers-reduced-motion:reduce){.cat3d-obj,.cat3d-shadow{animation:none!important}}

/* ===== V13.4.44 : meilleures ventes (accueil) ===== */
.best-sellers[hidden]{display:none}
.bs-sub{margin:6px 0 0;color:#cdbfe6}
.bs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(235px,1fr));gap:22px;margin-top:34px;align-items:stretch}
.bs-card{position:relative}
.bs-rank{position:absolute;z-index:2;top:12px;left:12px;background:rgba(16,5,27,.82);border:1px solid rgba(183,255,0,.5);color:#b7ff00;font-weight:800;font-size:12px;letter-spacing:.06em;padding:5px 10px;border-radius:999px;backdrop-filter:blur(4px)}
.bs-card:first-child .bs-rank{background:linear-gradient(135deg,#b7ff00,#7ed321);color:#10051b;border-color:transparent;box-shadow:0 6px 18px rgba(183,255,0,.35)}
.bs-desc{margin:6px 0 10px;font-size:14px;color:#cdbfe6;line-height:1.45}
.bs-more{display:inline-block;margin-top:10px;font-size:13px;font-weight:700;color:#b7ff00;text-decoration:none}
.bs-more:hover{text-decoration:underline}
.bs-card .btn{width:100%}
.bs-card{display:flex;flex-direction:column}
.bs-card .product-card-body{flex:1;display:flex;flex-direction:column}
.bs-card .bs-add{margin-top:auto}
.bs-noimg .product-card-body{padding-top:56px}
.bs-desc{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

/* ===== V13.4.44 : titres de catégories de la boutique plus lisibles ===== */
.product-block .eyebrow{font-size:clamp(17px,1.7vw,22px)!important;letter-spacing:.14em!important;font-weight:800;margin:0 0 16px!important}

/* ===== Livre « Catalogue en ligne » (page d'accueil) ===== */
.hero-visual.has-book{--pw:205px;--ph:380px;min-height:500px;align-content:center;gap:18px}
.bk-wrap{width:calc(var(--pw)*2);max-width:100%;display:flex;flex-direction:column;align-items:center;gap:20px;position:relative;z-index:2}
.bk{position:relative;width:calc(var(--pw)*2);height:var(--ph);perspective:1800px;transform:translateX(calc(var(--pw)*-.5)) rotate(1.5deg);transition:transform 1s cubic-bezier(.4,.1,.2,1);filter:drop-shadow(0 30px 40px rgba(0,0,0,.45))}
.bk.is-open{transform:translateX(0) rotate(0)}
.bk.is-end{transform:translateX(calc(var(--pw)*.5)) rotate(0)}
.bk-base,.bk-leaf{position:absolute;top:0;left:50%;width:50%;height:100%}
.bk-base{border-radius:0 16px 16px 0;background:linear-gradient(145deg,#1a1430,#0b0812);border:1px solid rgba(255,255,255,.1)}
.bk-bcover{position:absolute;inset:0;display:grid;place-items:center;opacity:.9}
.bk-leaf{transform-origin:left center;transform-style:preserve-3d;transition:transform 1.05s cubic-bezier(.45,.05,.25,1)}
.bk-leaf.flipped{transform:rotateY(-180deg)}
.bk-face{position:absolute;inset:0;overflow:hidden;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid rgba(255,255,255,.12);background:linear-gradient(145deg,#1b1530,#0d0a18 80%);display:flex;flex-direction:column;justify-content:center;padding:18px 16px;color:#e9eee8}
.bk-front{border-radius:0 16px 16px 0;box-shadow:inset 14px 0 18px -12px rgba(0,0,0,.55)}
.bk-back{transform:rotateY(180deg);border-radius:16px 0 0 16px;box-shadow:inset -14px 0 18px -12px rgba(0,0,0,.55)}
.bk-face.bk-cover{display:grid;place-items:center;padding:0;background:linear-gradient(145deg,#17271b,#09100c 72%);cursor:pointer;border-color:rgba(255,255,255,.2)}
.bk-cover .pack-noise{position:absolute;inset:0;opacity:.18;background:radial-gradient(circle at 30% 30%,#fff 0 1px,transparent 1px);background-size:10px 10px;mask-image:linear-gradient(135deg,black,transparent)}
.bk-cover .pack-ring{width:calc(var(--pw)*.92);height:calc(var(--pw)*.92)}
.bk-cover .pack-content strong{font-size:calc(var(--pw)*.2);margin:14px 0 10px}
.bk-cover .pack-mini .logo-img,.bk-cover .pack-logo{height:calc(var(--pw)*.3)}
.bk-cover .pack-content small{font-size:9px;display:block}
.bk-cover .thc-badge{width:56px;height:56px;right:10px;top:10px}.bk-cover .thc-badge b{font-size:13px}.bk-cover .thc-badge small{font-size:6px}
.bk-open{display:inline-block;margin-top:16px;font-size:10px;font-weight:800;color:var(--green,#9bdc1a);animation:bkpulse 1.8s ease-in-out infinite}
@keyframes bkpulse{50%{transform:translateX(4px);opacity:.7}}
.bk-intro h3,.bk-end h3{font-family:Manrope,sans-serif;font-size:calc(var(--pw)*.17);line-height:1;letter-spacing:-1px;margin:6px 0 12px}
.bk-intro h3 em,.bk-end h3 em{font-style:normal;color:var(--green,#9bdc1a)}
.bk-intro .eyebrow,.bk-end .eyebrow{margin-bottom:6px}
.bk-hint{font-size:11px;color:#9aa59b;margin:0}
.bk-arrow{position:absolute;right:16px;bottom:14px;font-size:20px;color:#8f6bff}
.bk-prod{display:flex;flex-direction:column;gap:5px;height:100%;justify-content:center;text-align:left}
.bk-ph{display:grid;place-items:center;background:#fff;border-radius:12px;height:calc(var(--ph)*.5);overflow:hidden;margin-bottom:6px}
.bk-ph img{max-width:100%;max-height:100%;object-fit:contain;display:block}
.bk-cat{font-size:8px;letter-spacing:1.6px;text-transform:uppercase;color:#a07bff;font-weight:800}
.bk-name{font-family:Manrope,sans-serif;font-size:14px;line-height:1.15;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.bk-price{font-size:15px;font-weight:800;color:var(--green,#9bdc1a)}.bk-price s{color:#7c887d;font-weight:500;font-size:12px}
.bk-more{font-size:10px;font-weight:800;color:#a07bff}
.bk-prod:hover .bk-more,.bk-prod:focus-visible .bk-more{color:var(--green,#9bdc1a)}
.bk-end{align-items:flex-start}.bk-cta{min-height:40px;padding:10px 14px;font-size:11px;margin-top:6px}
.bk-blank{align-items:center}.bk-logo{height:calc(var(--pw)*.4);opacity:.85}
.bk-ctl{display:flex;align-items:center;gap:14px}
.bk-btn{width:40px;height:40px;border-radius:50%;border:1px solid var(--line,rgba(255,255,255,.15));background:rgba(255,255,255,.05);color:#fff;font-size:22px;line-height:1;cursor:pointer;transition:.2s}
.bk-btn:hover:not(:disabled){border-color:var(--green,#9bdc1a);color:var(--green,#9bdc1a)}.bk-btn:disabled{opacity:.3;cursor:default}
.bk-count{min-width:86px;text-align:center;font-size:10px;letter-spacing:1.5px;text-transform:uppercase;color:#8d998e}
.bk-still,.bk-still .bk-leaf{transition-duration:.01s}
@media(max-width:600px){.hero-visual.has-book{--pw:150px;--ph:300px;min-height:400px}.bk-name{font-size:12px}.bk-price{font-size:13px}.bk-face{padding:12px 10px}.bk-hint{font-size:10px}.bk-ph{margin-bottom:2px}}
@media(max-width:340px){.hero-visual.has-book{--pw:130px;--ph:270px}}

.pr-line{display:block;background:none;border:0;padding:2px 0;margin:2px 0 6px;color:#f5b301;font-size:14px;cursor:pointer;text-align:left;text-decoration:underline dotted}
.pr-overlay{position:fixed;inset:0;background:#000a;z-index:9999;display:flex;align-items:center;justify-content:center;padding:16px}
.pr-modal{position:relative;background:#16101f;color:#fff;border-radius:16px;max-width:520px;width:100%;max-height:85vh;overflow:auto;padding:22px}
.pr-close{position:absolute;top:8px;right:12px;background:none;border:0;color:#fff;font-size:28px;cursor:pointer}
.pr-sum{color:#f5b301;font-weight:700}.pr-stars{color:#f5b301}.pr-muted{opacity:.7}
.pr-item{border-top:1px solid #fff2;padding:12px 0}.pr-text{white-space:pre-wrap;margin:6px 0;overflow-wrap:anywhere}
.pr-mine{border:1px solid rgba(140,205,20,.25);border-radius:12px;padding:12px;margin:10px 0}
.pr-badge{display:inline-block;margin:6px 0;padding:3px 10px;border-radius:999px;font-size:13px;background:#fff1}
.pr-st-a{background:#1d6b2f}.pr-st-r{background:#7a2230}.pr-st-p{background:#6b5a1d}
.pr-star{background:none;border:0;font-size:28px;color:#777;cursor:pointer;padding:0 2px}.pr-star.on{color:#f5b301}
.pr-ta{width:100%;box-sizing:border-box;margin:6px 0;border-radius:10px;padding:10px;background:#0003;color:inherit;border:1px solid #fff3;font:inherit}
.pr-act{display:flex;gap:8px;flex-wrap:wrap}.pr-msg{display:block;margin-top:6px}

.hours-notice{background:#5a1d2a;color:#fff;border-radius:10px;padding:10px 12px;font-weight:600}
.nl-overlay{position:fixed;inset:0;background:#000b;z-index:9998;display:flex;align-items:center;justify-content:center;padding:16px}
.nl-modal{position:relative;background:#16101f;color:#fff;border:1px solid rgba(140,205,20,.35);border-radius:18px;max-width:440px;width:100%;padding:26px 22px;text-align:center}
.nl-modal h3{margin:0 0 8px;font-size:24px}.nl-close{position:absolute;top:6px;right:12px;background:none;border:0;color:#fff;font-size:28px;cursor:pointer}
.nl-form{display:flex;flex-direction:column;gap:10px;margin-top:14px}.nl-form input{padding:12px;border-radius:10px;border:1px solid #fff4;background:#0004;color:#fff;font:inherit}
.nl-later{background:none;border:0;color:#fff;opacity:.7;text-decoration:underline;cursor:pointer;margin-top:10px}.nl-msg{min-height:1.2em;margin:8px 0 0}

.skip-link{position:absolute;left:-9999px;top:8px;z-index:100000;background:#b7ff00;color:#10051b;padding:10px 16px;border-radius:8px;font-weight:800;text-decoration:none}
.skip-link:focus{left:8px}
:where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid #b7ff00;outline-offset:2px}
html{scroll-padding-top:90px}
