/* ===========================================================================
   Lenshollow — design system UNIQUE (préfixe lh-)
   Recette : bento · barre-double · slider-plein-écran · masonry · cadre+ruban ·
   footer contact/map-first · blob-organique · motion élastique · pixel-retro ·
   lettrines · pastel. Palette : teal océan / sable chaud / orange coucher.
   =========================================================================== */
:root{
  --ink:#0f2732; --teal:#173a4a; --teal-2:#215466; --sand:#f4ead4; --sand-2:#efe1c4;
  --cream:#fbf5e7; --accent:#e08a3c; --accent-2:#c8722a; --aqua:#bcd6d6; --aqua-2:#8fb7ba;
  --coral:#e79a7e; --line:#e2d4b4; --paper:#f7efdd;
  --shadow:0 14px 40px -22px rgba(15,39,50,.5); --shadow-sm:0 6px 20px -12px rgba(15,39,50,.4);
  --blob:46% 54% 52% 48% / 54% 46% 54% 46%;
  --spring:cubic-bezier(.34,1.56,.64,1);
  --wrap:1180px; --r:18px;
  --disp:"Khand",system-ui,sans-serif; --body:"Lexend",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
html,body{overflow-x:clip;max-width:100%}
body{margin:0;font-family:var(--body);color:var(--ink);background:var(--sand);
  font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;font-weight:400}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
button{font-family:inherit;cursor:pointer;border:0;background:none;color:inherit}
.lh-noscroll{overflow:hidden}
svg{fill:currentColor}
.lh-wrap{width:100%;max-width:var(--wrap);margin-inline:auto;padding-inline:clamp(18px,4vw,40px)}
.lh-blob{border-radius:var(--r)}

/* ── Typo ─────────────────────────────────────────────────────────────────── */
.lh-ey{font-family:var(--disp);text-transform:uppercase;letter-spacing:.22em;font-weight:600;
  font-size:.82rem;color:var(--accent-2);display:inline-block}
.lh-ey-light{color:var(--sand);opacity:.92}
.lh-h1{font-family:var(--disp);font-weight:600;font-size:clamp(2.4rem,6vw,4rem);line-height:.98;
  letter-spacing:.01em;margin:.3rem 0;color:var(--teal)}
.lh-h2{font-family:var(--disp);font-weight:600;font-size:clamp(1.9rem,4vw,2.9rem);line-height:1.02;
  margin:.4rem 0 0;color:var(--teal)}
.lh-h3{font-family:var(--disp);font-weight:600;font-size:clamp(1.5rem,3vw,2rem);color:var(--teal);margin:0 0 .6rem}
.lh-h4{font-family:var(--disp);font-weight:600;font-size:1.25rem;color:var(--teal);letter-spacing:.02em;
  text-transform:uppercase;margin:1.6rem 0 .5rem}
.lh-sec-sub{color:var(--teal-2);font-size:1.03rem;max-width:52ch;margin:.7rem 0 0}
.lh-sec-head{max-width:60ch}
.lh-sec-head .lh-sec-sub{margin-inline:0}
/* lettrines */
.lh-drop::first-letter{font-family:var(--disp);font-weight:600;font-size:3.1em;line-height:.7;
  float:left;margin:.05em .12em 0 0;color:var(--accent)}

/* ── Boutons ──────────────────────────────────────────────────────────────── */
.lh-btn{display:inline-flex;align-items:center;gap:.5rem;font-family:var(--disp);font-weight:600;
  text-transform:uppercase;letter-spacing:.06em;font-size:1.02rem;padding:.72em 1.5em;border-radius:999px;
  transition:transform .25s var(--spring),background .2s,color .2s,box-shadow .2s;line-height:1}
.lh-btn:hover{transform:translateY(-2px)}
.lh-btn-solid{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}
.lh-btn-solid:hover{background:var(--accent-2)}
.lh-btn-line{background:transparent;color:var(--teal);box-shadow:inset 0 0 0 2px var(--teal)}
.lh-btn-line:hover{background:var(--teal);color:var(--sand)}
.lh-btn-ghost{background:rgba(244,234,212,.16);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(244,234,212,.6);backdrop-filter:blur(4px)}
.lh-btn-ghost:hover{background:rgba(244,234,212,.28)}
.lh-btn-onlight{color:var(--teal);background:transparent;box-shadow:inset 0 0 0 1.5px var(--line)}
.lh-btn-onlight:hover{background:var(--sand-2)}
.lh-ibtn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;
  color:var(--teal);transition:background .2s,color .2s,transform .2s var(--spring)}
.lh-ibtn:hover{background:var(--sand-2);transform:translateY(-1px)}
.lh-ibtn svg{width:22px;height:22px}

/* ── Header : barre double ────────────────────────────────────────────────── */
.lh-head{position:sticky;top:0;z-index:60}
.lh-strip{background:var(--teal);color:var(--sand);font-size:.8rem;transition:max-height .35s ease,padding .35s ease;overflow:hidden;max-height:44px}
.lh-strip-in{display:flex;align-items:center;gap:1rem;min-height:34px;padding-block:5px}
.lh-strip-ic{display:inline-flex;color:var(--accent)}
.lh-strip-ic svg{width:18px;height:18px}
.lh-ann{flex:1;position:relative;height:1.2em;overflow:hidden}
.lh-ann-i{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;
  opacity:0;transform:translateY(60%);transition:opacity .5s,transform .5s var(--spring);letter-spacing:.04em}
.lh-ann-i.is-on{opacity:1;transform:none}
.lh-lang{display:flex;align-items:center;gap:.4rem}
.lh-lang>svg{width:16px;height:16px;opacity:.7}
.lh-lang-links{display:flex;gap:.15rem}
.lh-lang-links a{padding:.1rem .3rem;border-radius:6px;font-weight:500;opacity:.7;font-size:.74rem;letter-spacing:.06em}
.lh-lang-links a.is-on,.lh-lang-links a:hover{opacity:1;background:rgba(244,234,212,.16);color:#fff}
.lh-bar{background:var(--sand);border-bottom:2px solid var(--line)}
.lh-bar-in{display:flex;align-items:center;gap:1rem;min-height:66px;transition:min-height .3s}
.lh-head.is-stuck .lh-strip{max-height:0;padding-block:0}
.lh-head.is-stuck .lh-bar-in{min-height:56px}
.lh-head.is-stuck .lh-bar{box-shadow:var(--shadow-sm)}
.lh-logo{display:flex;align-items:center}
.lh-logo img{height:34px;width:auto}
.lh-nav{display:flex;align-items:center;gap:.2rem;margin-inline:auto}
.lh-nav a{font-family:var(--disp);text-transform:uppercase;letter-spacing:.05em;font-weight:600;font-size:1.02rem;
  color:var(--teal);padding:.5rem .7rem;border-radius:10px;position:relative;transition:color .2s}
.lh-nav a::after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:.34rem;height:2px;background:var(--accent);
  transform:scaleX(0);transform-origin:left;transition:transform .25s var(--spring);border-radius:2px}
.lh-nav a:hover{color:var(--accent-2)}
.lh-nav a:hover::after{transform:scaleX(1)}
.lh-tools{display:flex;align-items:center;gap:.2rem}
.lh-burger{display:none}
.lh-cart-btn{position:relative}
.lh-cart-count{position:absolute;top:2px;right:2px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;
  background:var(--accent);color:#fff;font-size:.68rem;font-weight:700;display:flex;align-items:center;justify-content:center;line-height:1}

/* ── Hero slider plein écran ──────────────────────────────────────────────── */
.lh-hero{position:relative;height:clamp(560px,88vh,820px);overflow:hidden;background:var(--teal)}
.lh-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .9s ease}
.lh-slide.is-on{opacity:1;visibility:visible}
.lh-slide-bg{position:absolute;inset:0}
.lh-slide-bg::after{content:"";position:absolute;inset:0;
  background:linear-gradient(90deg,rgba(15,39,50,.72),rgba(15,39,50,.28) 55%,rgba(15,39,50,0));}
.lh-slide-bg img{width:100%;height:100%;object-fit:cover}
.lh-slide.is-on .lh-slide-bg img{animation:lhZoom 14s ease forwards}
@keyframes lhZoom{from{object-position:50% 50%}to{object-position:50% 42%}}
.lh-slide-in{position:relative;height:100%;display:flex;align-items:center}
.lh-slide-card{max-width:min(560px,92%);background:rgba(251,245,231,.9);backdrop-filter:blur(6px);
  border-radius:34% 66% 62% 38%/48% 42% 58% 52%;padding:clamp(1.8rem,4vw,3rem);box-shadow:var(--shadow)}
.lh-slide.is-on .lh-slide-card{animation:lhPop .7s var(--spring) both}
@keyframes lhPop{from{opacity:0;transform:translateY(26px) scale(.96)}to{opacity:1;transform:none}}
.lh-hero-t{font-family:var(--disp);font-weight:600;font-size:clamp(2.6rem,7vw,4.6rem);line-height:.94;color:var(--teal);margin:.5rem 0}
.lh-hero-s{color:var(--teal-2);font-size:1.06rem;max-width:44ch;margin:.4rem 0 1.4rem}
.lh-hero-cta{display:flex;flex-wrap:wrap;gap:.7rem}
.lh-hero-cta .lh-btn-ghost{color:var(--teal);box-shadow:inset 0 0 0 2px var(--teal)}
.lh-hero-cta .lh-btn-ghost:hover{background:var(--teal);color:var(--sand)}
.lh-hero-nav{position:absolute;left:0;right:0;bottom:1.4rem;display:flex;align-items:center;justify-content:center;gap:1rem;z-index:3}
.lh-hero-arrow{background:rgba(251,245,231,.85);color:var(--teal)}
.lh-hero-arrow:hover{background:#fff}
.lh-hero-dots{display:flex;gap:.5rem}
.lh-hero-dots button{width:11px;height:11px;border-radius:999px;background:rgba(251,245,231,.5);transition:transform .2s var(--spring),background .2s}
.lh-hero-dots button.is-on{background:var(--accent);transform:scale(1.3)}

/* ── Réassurance ──────────────────────────────────────────────────────────── */
.lh-reassure{background:var(--teal);color:var(--sand)}
.lh-reassure-in{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem 2rem;padding:.9rem 0}
.lh-reassure-i{display:inline-flex;align-items:center;gap:.5rem;font-size:.86rem;font-weight:500;letter-spacing:.02em}
.lh-reassure-i svg{width:20px;height:20px;color:var(--accent)}

/* ── Sections ─────────────────────────────────────────────────────────────── */
.lh-sec{padding:clamp(3rem,7vw,5.5rem) 0}
.lh-sec-alt{background:var(--cream)}
.lh-sec-more{margin-top:2rem;text-align:center}

/* garanties-sceaux */
.lh-seal-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin-top:2.2rem}
.lh-seal{background:var(--sand);border:2px solid var(--line);border-radius:42% 58% 55% 45%/55% 42% 58% 45%;
  padding:1.8rem 1.5rem;text-align:center;box-shadow:var(--shadow-sm)}
.lh-seal-ic{display:inline-flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;
  background:var(--aqua);color:var(--teal);margin-bottom:.7rem}
.lh-seal-ic svg{width:28px;height:28px}
.lh-seal h3{font-family:var(--disp);font-weight:600;font-size:1.35rem;color:var(--teal);margin:0 0 .3rem;text-transform:uppercase;letter-spacing:.02em}
.lh-seal p{margin:0;font-size:.92rem;color:var(--teal-2)}

/* masonry listing */
.lh-masonry{columns:4 250px;column-gap:1.4rem;margin-top:2rem}
.lh-masonry-home{columns:3 260px}
.lh-card{break-inside:avoid;margin:0 0 1.4rem;background:var(--sand);border-radius:var(--r);box-shadow:var(--shadow-sm);
  transition:transform .3s var(--spring),box-shadow .3s;position:relative}
.lh-sec-alt .lh-card{background:var(--paper)}
.lh-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
/* cadre + ruban */
.lh-card-frame{position:relative;margin:10px;border:2px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}
.lh-card-media{display:block;position:relative;aspect-ratio:4/3;background:var(--sand-2)}
.lh-card-media img{width:100%;height:100%;object-fit:cover;transition:opacity .4s}
.lh-card-alt{position:absolute;inset:0;opacity:0}
.lh-card:hover .lh-card-alt{opacity:1}
.lh-ribbon{position:absolute;top:12px;left:-34px;transform:rotate(-45deg);background:var(--teal);color:var(--sand);
  font-family:var(--disp);font-weight:600;text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;
  padding:.28rem 2.6rem;z-index:2;box-shadow:0 2px 8px -3px rgba(0,0,0,.4)}
.lh-ribbon.is-sale{background:var(--accent)}
.lh-ribbon.is-new{background:var(--aqua-2);color:var(--teal)}
.lh-card-save{position:absolute;bottom:10px;left:10px;background:var(--accent);color:#fff;font-family:var(--disp);
  font-weight:600;font-size:.82rem;padding:.15rem .55rem;border-radius:7px;z-index:2}
.lh-card-quick{position:absolute;right:10px;bottom:10px;display:inline-flex;align-items:center;gap:.35rem;
  background:var(--teal);color:var(--sand);font-family:var(--disp);font-weight:600;text-transform:uppercase;
  letter-spacing:.05em;font-size:.78rem;padding:.4rem .7rem;border-radius:9px;transform:translateY(8px);opacity:0;
  transition:opacity .25s,transform .25s var(--spring)}
.lh-card-quick svg{width:15px;height:15px}
.lh-card-media:hover .lh-card-quick,.lh-card:hover .lh-card-quick{opacity:1;transform:none}
.lh-card-body{padding:.4rem 1rem 1.1rem}
.lh-card-cat{font-family:var(--disp);text-transform:uppercase;letter-spacing:.14em;font-size:.72rem;color:var(--accent-2);font-weight:600}
.lh-card-name{font-family:var(--disp);font-weight:600;font-size:1.32rem;line-height:1.05;margin:.2rem 0 .3rem;color:var(--teal)}
.lh-card-short{font-size:.9rem;color:var(--teal-2);margin:0 0 .6rem}
.lh-card-rate{display:flex;align-items:center;gap:.4rem;color:var(--accent);font-size:.82rem}
.lh-card-rate svg{width:14px;height:14px}
.lh-card-rate span{color:var(--teal-2);font-weight:500}
.lh-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:.7rem}
.lh-price{font-family:var(--disp);font-weight:600;font-size:1.4rem;color:var(--teal);display:flex;align-items:baseline;gap:.4rem}
.lh-price-old{font-size:.92rem;color:#a99;text-decoration:line-through;font-weight:400;font-family:var(--body)}
.lh-card-cta{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;
  background:var(--sand-2);color:var(--teal);transition:background .2s,transform .2s var(--spring)}
.lh-card-cta svg{width:18px;height:18px}
.lh-card-cta:hover{background:var(--accent);color:#fff;transform:translateX(2px)}

/* témoignage vedette */
.lh-sec-feat{background:var(--teal);color:var(--sand)}
.lh-feat-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:clamp(1.5rem,4vw,3.4rem);align-items:center}
.lh-feat-media{overflow:hidden;border-radius:52% 48% 44% 56%/54% 50% 50% 46%;box-shadow:var(--shadow);aspect-ratio:4/5}
.lh-feat-media img{width:100%;height:100%;object-fit:cover}
.lh-feat-body .lh-ey{color:var(--accent)}
.lh-feat-quote{font-family:var(--disp);font-weight:600;font-size:clamp(1.8rem,3.6vw,2.7rem);line-height:1.04;color:var(--sand);margin:.3rem 0 .8rem}
.lh-feat-quote::first-letter{color:var(--accent)}
.lh-feat-text{color:rgba(244,234,212,.85);max-width:50ch}
.lh-feat-author{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap;margin:1rem 0}
.lh-feat-stars{color:var(--accent);display:inline-flex}
.lh-feat-stars svg{width:16px;height:16px}
.lh-feat-author b{font-weight:600}
.lh-feat-author small{color:rgba(244,234,212,.7)}
.lh-feat-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:1.4rem 0;border-top:1px solid rgba(244,234,212,.2);border-bottom:1px solid rgba(244,234,212,.2);padding:1.1rem 0}
.lh-feat-stats dt{font-family:var(--disp);font-weight:600;font-size:1.9rem;color:var(--accent);line-height:1}
.lh-feat-stats dd{margin:.2rem 0 0;font-size:.8rem;color:rgba(244,234,212,.78)}
.lh-feat-mini{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.lh-mini{background:rgba(244,234,212,.08);border-radius:14px;padding:1rem}
.lh-mini p{margin:0 0 .5rem;font-size:.95rem}
.lh-mini span{display:flex;align-items:center;gap:.4rem;font-size:.8rem;color:rgba(244,234,212,.75)}
.lh-mini svg{width:13px;height:13px;color:var(--accent)}

/* par-besoin (terrain) */
.lh-need-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1.3rem;margin-top:2.2rem}
.lh-need{display:block;transition:transform .3s var(--spring)}
.lh-need:hover{transform:translateY(-5px)}
.lh-need-media{overflow:hidden;border-radius:48% 52% 46% 54%/56% 46% 54% 44%;aspect-ratio:3/4;box-shadow:var(--shadow-sm)}
.lh-need-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--spring)}
.lh-need:hover .lh-need-media img{transform:scale(1.05)}
.lh-need-cap{padding:.9rem .4rem 0}
.lh-need-cap h3{font-family:var(--disp);font-weight:600;font-size:1.4rem;color:var(--teal);margin:0 0 .2rem;text-transform:uppercase;letter-spacing:.02em}
.lh-need-cap p{margin:0;font-size:.88rem;color:var(--teal-2)}
.lh-need-go{display:inline-flex;margin-top:.4rem;color:var(--accent)}
.lh-need-go svg{width:20px;height:20px}

/* galerie ugc */
.lh-ugc-grid{columns:3 200px;column-gap:1rem;margin-top:2rem}
.lh-ugc-i{break-inside:avoid;margin:0 0 1rem;position:relative;border-radius:14px;overflow:hidden;box-shadow:var(--shadow-sm)}
.lh-ugc-i img{width:100%;transition:transform .5s var(--spring)}
.lh-ugc-i:hover img{transform:scale(1.06)}
.lh-ugc-i figcaption{position:absolute;left:0;bottom:0;display:flex;align-items:center;gap:.35rem;padding:.4rem .6rem;
  background:linear-gradient(0deg,rgba(15,39,50,.7),transparent);color:var(--sand);font-size:.78rem;width:100%}
.lh-ugc-i figcaption svg{width:15px;height:15px}

/* bundle builder */
.lh-bundle{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(1.5rem,3vw,2.6rem);background:var(--teal);color:var(--sand);
  border-radius:32px;padding:clamp(1.6rem,3.5vw,2.8rem);box-shadow:var(--shadow)}
.lh-bundle-info .lh-ey{color:var(--accent)}
.lh-bundle-info .lh-h2{color:var(--sand)}
.lh-bundle-info .lh-sec-sub{color:rgba(244,234,212,.82)}
.lh-bundle-list{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.2rem 0;min-height:2rem}
.lh-bundle-empty{color:rgba(244,234,212,.6);font-size:.9rem;margin:0}
.lh-btok{display:inline-flex;align-items:center;gap:.4rem;background:rgba(244,234,212,.12);border-radius:999px;padding:.3rem .5rem .3rem .8rem;font-size:.82rem}
.lh-btok button{display:inline-flex;color:var(--sand);opacity:.7}
.lh-btok button svg{width:12px;height:12px}
.lh-btok button:hover{opacity:1}
.lh-bundle-bar{height:8px;background:rgba(244,234,212,.16);border-radius:999px;overflow:hidden;margin-top:.6rem}
.lh-bundle-bar i{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .5s var(--spring)}
.lh-bundle-free{font-size:.82rem;color:rgba(244,234,212,.8);margin:.5rem 0}
.lh-bundle-free.is-ok{color:var(--accent)}
.lh-bundle-total{display:flex;align-items:baseline;justify-content:space-between;border-top:1px solid rgba(244,234,212,.2);padding-top:.8rem;margin-top:.4rem}
.lh-bundle-total b{font-family:var(--disp);font-weight:600;font-size:1.8rem;color:var(--accent)}
.lh-bundle-act{display:flex;gap:.6rem;flex-wrap:wrap;margin-top:1rem}
.lh-bundle-act .lh-btn-onlight{color:var(--sand);box-shadow:inset 0 0 0 1.5px rgba(244,234,212,.5)}
.lh-bundle-act .lh-btn-onlight:hover{background:rgba(244,234,212,.14)}
.lh-bundle-pickwrap{background:rgba(251,245,231,.06);border-radius:20px;padding:1.1rem;max-height:340px;overflow-y:auto}
.lh-bundle-pt{margin:0 0 .7rem;font-family:var(--disp);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;color:rgba(244,234,212,.7)}
.lh-bundle-pick{display:flex;flex-direction:column;gap:.4rem}
.lh-bchip{display:flex;align-items:center;gap:.5rem;background:rgba(244,234,212,.08);border-radius:12px;padding:.5rem .7rem;text-align:left;color:var(--sand);transition:background .2s}
.lh-bchip:hover{background:rgba(244,234,212,.18)}
.lh-bchip svg{width:14px;height:14px;color:var(--accent);flex:none}
.lh-bchip span{flex:1;font-size:.86rem}
.lh-bchip b{font-family:var(--disp);font-weight:600}

/* timeline */
.lh-tl-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:clamp(1.6rem,4vw,3.4rem);align-items:start}
.lh-tl-side{position:sticky;top:120px}
.lh-tl-media{overflow:hidden;border-radius:46% 54% 50% 50%/56% 46% 54% 44%;margin-top:1.4rem;aspect-ratio:4/3;box-shadow:var(--shadow-sm)}
.lh-tl-media img{width:100%;height:100%;object-fit:cover}
.lh-tl-steps{display:flex;flex-direction:column;gap:1rem}
.lh-tl-step{display:flex;gap:1.2rem;background:var(--sand);border:2px solid var(--line);border-radius:18px;padding:1.3rem 1.5rem;box-shadow:var(--shadow-sm)}
.lh-tl-num{font-family:var(--disp);font-weight:600;font-size:2rem;color:var(--accent);line-height:1;flex:none;width:2.4rem}
.lh-tl-body h3{font-family:var(--disp);font-weight:600;font-size:1.35rem;color:var(--teal);margin:0 0 .3rem;text-transform:uppercase;letter-spacing:.02em}
.lh-tl-body p{margin:0;font-size:.94rem;color:var(--teal-2)}

/* newsletter */
.lh-sec-nl{padding-bottom:clamp(3rem,7vw,5.5rem)}
.lh-nl-card{background:var(--accent);color:#fff;border-radius:34px;padding:clamp(2rem,5vw,3.4rem);text-align:center;box-shadow:var(--shadow)}
.lh-nl-card .lh-ey{color:#fff;opacity:.9}
.lh-nl-card .lh-h2{color:#fff}
.lh-nl-card .lh-sec-sub{color:rgba(255,255,255,.9);margin-inline:auto}
.lh-nl-form{display:flex;gap:.6rem;max-width:480px;margin:1.4rem auto .6rem;flex-wrap:wrap;justify-content:center}
.lh-nl-form input{flex:1;min-width:200px;padding:.85em 1.2em;border-radius:999px;border:0;background:#fff;color:var(--ink);font-family:inherit;font-size:1rem}
.lh-nl-form .lh-btn-solid{background:var(--teal)}
.lh-nl-form .lh-btn-solid:hover{background:var(--ink)}
.lh-nl-note{font-size:.8rem;color:rgba(255,255,255,.8)}
.lh-nl-ok{font-weight:600;display:flex;align-items:center;justify-content:center;gap:.5rem}
.lh-nl-ok svg{width:20px;height:20px}

/* ── Footer contact/map-first ─────────────────────────────────────────────── */
.lh-foot{background:var(--ink);color:var(--sand);padding-top:clamp(2.6rem,5vw,4rem)}
.lh-foot-in{display:grid;grid-template-columns:1fr 1.15fr;gap:clamp(1.6rem,4vw,3.4rem);padding-bottom:2.4rem}
.lh-foot-contact{background:var(--teal);border-radius:28px;padding:clamp(1.6rem,3vw,2.4rem)}
.lh-foot-contact .lh-ey{color:var(--accent)}
.lh-foot-find{font-family:var(--disp);font-weight:600;font-size:clamp(1.6rem,3vw,2.2rem);color:var(--sand);margin:.3rem 0 1rem;text-transform:uppercase;letter-spacing:.02em}
.lh-foot-map{position:relative;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-sm)}
.lh-map-svg{width:100%;height:auto;display:block}
.lh-map-tag{position:absolute;left:.7rem;bottom:.7rem;background:var(--ink);color:var(--sand);font-size:.72rem;padding:.25rem .55rem;border-radius:7px}
.lh-foot-coords{list-style:none;margin:1.2rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:.9rem}
.lh-foot-coords li{display:flex;gap:.6rem;align-items:flex-start}
.lh-foot-coords svg{width:20px;height:20px;color:var(--accent);flex:none;margin-top:2px}
.lh-foot-coords small{display:block;font-family:var(--disp);text-transform:uppercase;letter-spacing:.1em;font-size:.68rem;color:rgba(244,234,212,.6)}
.lh-foot-coords a,.lh-foot-coords b{font-weight:500;font-size:.9rem;color:var(--sand)}
.lh-foot-coords a:hover{color:var(--accent)}
.lh-foot-right{display:flex;flex-direction:column;gap:1.8rem}
.lh-foot-nl{display:flex;flex-direction:column;gap:.4rem}
.lh-foot-nl .lh-ey{color:var(--accent)}
.lh-foot-nl label{font-family:var(--disp);font-weight:600;font-size:1.3rem;color:var(--sand);text-transform:uppercase;letter-spacing:.02em}
.lh-nl-row{display:flex;gap:.5rem;margin:.4rem 0 .2rem;max-width:420px}
.lh-nl-row input{flex:1;padding:.7em 1em;border-radius:12px;border:1px solid rgba(244,234,212,.24);background:rgba(244,234,212,.06);color:var(--sand);font-family:inherit}
.lh-nl-row input::placeholder{color:rgba(244,234,212,.5)}
.lh-nl-row .lh-ibtn{background:var(--accent);color:#fff;flex:none}
.lh-nl-row .lh-ibtn:hover{background:var(--accent-2)}
.lh-foot-nl .lh-nl-note{color:rgba(244,234,212,.6)}
.lh-foot-groups{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem}
.lh-foot-g h4{font-family:var(--disp);text-transform:uppercase;letter-spacing:.08em;font-size:.86rem;color:var(--accent);margin:0 0 .7rem}
.lh-foot-g a{display:block;font-size:.9rem;color:rgba(244,234,212,.82);padding:.22rem 0}
.lh-foot-g a:hover{color:var(--sand)}
.lh-foot-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding:1.6rem 0;border-top:1px solid rgba(244,234,212,.14)}
.lh-foot-word{font-family:var(--disp);font-weight:600;font-size:clamp(1.6rem,4vw,2.4rem);letter-spacing:.06em;color:var(--sand);opacity:.9}
.lh-foot-pay{display:flex;align-items:center;gap:.9rem;flex-wrap:wrap}
.lh-foot-secure{display:inline-flex;align-items:center;gap:.4rem;font-size:.8rem;color:rgba(244,234,212,.7)}
.lh-foot-secure svg{width:16px;height:16px;color:var(--accent)}
.lh-pay-row{display:flex;gap:.4rem;flex-wrap:wrap}
.lh-pay-row svg{height:24px;width:auto;border-radius:4px}
.lh-foot-social{display:flex;align-items:center;gap:.3rem}
.lh-foot-social .lh-ibtn{color:var(--sand)}
.lh-foot-social .lh-ibtn:hover{background:rgba(244,234,212,.12)}
.lh-foot-back svg{transform:rotate(180deg)}
.lh-foot-legal{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;padding-bottom:1.6rem;font-size:.78rem;color:rgba(244,234,212,.55)}

/* ── Drawer + overlay + toast ─────────────────────────────────────────────── */
.lh-overlay{position:fixed;inset:0;background:rgba(15,39,50,.5);opacity:0;visibility:hidden;transition:opacity .3s;z-index:80}
.lh-overlay.is-open{opacity:1;visibility:visible}
.lh-drawer{position:fixed;top:0;right:0;height:100dvh;width:min(420px,92vw);background:var(--sand);z-index:90;
  transform:translateX(100%);transition:transform .4s var(--spring);display:flex;flex-direction:column;box-shadow:var(--shadow)}
.lh-drawer.is-open{transform:none}
.lh-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:1.1rem 1.2rem;border-bottom:2px solid var(--line)}
.lh-drawer-ttl{display:flex;align-items:center;gap:.5rem;font-family:var(--disp);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--teal);font-size:1.2rem}
.lh-drawer-ttl svg{width:20px;height:20px;color:var(--accent)}
.lh-ship{padding:.9rem 1.2rem;background:var(--cream)}
.lh-ship-row{display:flex;align-items:center;gap:.5rem;font-size:.86rem;color:var(--teal);margin-bottom:.5rem}
.lh-ship-row svg{width:18px;height:18px;color:var(--accent)}
.lh-ship-track{height:7px;background:var(--sand-2);border-radius:999px;overflow:hidden}
.lh-ship-track i{display:block;height:100%;background:var(--accent);border-radius:999px;transition:width .5s var(--spring)}
.lh-drawer-items{flex:1;overflow-y:auto;padding:1rem 1.2rem;display:flex;flex-direction:column;gap:1rem}
.lh-line{display:grid;grid-template-columns:64px 1fr auto;gap:.8rem;align-items:start}
.lh-line-img{width:64px;height:64px;border-radius:12px;overflow:hidden;background:#fff;border:1px solid var(--line)}
.lh-line-img img{width:100%;height:100%;object-fit:cover}
.lh-line-name{font-family:var(--disp);font-weight:600;font-size:1.02rem;color:var(--teal);margin:0}
.lh-line-var{font-size:.78rem;color:var(--teal-2);margin:.1rem 0 .4rem}
.lh-qty{display:inline-flex;align-items:center;gap:.2rem;background:var(--sand-2);border-radius:10px;padding:.15rem}
.lh-qty span{min-width:1.6rem;text-align:center;font-weight:600;font-size:.9rem}
.lh-qty-b{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;color:var(--teal)}
.lh-qty-b:hover{background:var(--sand)}
.lh-qty-b svg{width:13px;height:13px}
.lh-qty-lg{padding:.25rem}
.lh-qty-lg .lh-qty-b{width:36px;height:36px}
.lh-qty-lg span{min-width:2.2rem}
.lh-line-side{text-align:right}
.lh-line-price{font-family:var(--disp);font-weight:600;color:var(--teal);display:block}
.lh-line-rm{font-size:.74rem;color:#a08;opacity:.7;margin-top:.3rem;text-decoration:underline}
.lh-line-rm:hover{opacity:1}
.lh-cross{padding:1rem 1.2rem;border-top:1px solid var(--line);background:var(--cream)}
.lh-cross-t{font-family:var(--disp);text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;color:var(--teal);margin:0 0 .6rem}
.lh-cross-i{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem}
.lh-cross-i img{width:44px;height:44px;border-radius:9px;object-fit:cover;border:1px solid var(--line)}
.lh-cross-i div{flex:1}
.lh-cross-i p{margin:0;font-size:.85rem;font-weight:500}
.lh-cross-i span{font-size:.82rem;color:var(--teal-2)}
.lh-cross-add{background:var(--teal);color:var(--sand);width:34px;height:34px}
.lh-cross-add:hover{background:var(--accent)}
.lh-drawer-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;padding:2rem}
.lh-drawer-empty svg{width:52px;height:52px;color:var(--aqua-2)}
.lh-drawer-foot{padding:1.1rem 1.2rem;border-top:2px solid var(--line);display:flex;flex-direction:column;gap:.6rem;background:var(--sand)}
.lh-sub{display:flex;justify-content:space-between;font-size:1rem}
.lh-sub b{font-family:var(--disp);font-weight:600;font-size:1.3rem;color:var(--teal)}
.lh-drawer-foot .lh-btn{justify-content:center}
.lh-drawer-cont{text-align:center;font-size:.84rem;color:var(--teal-2);text-decoration:underline}
.lh-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:var(--teal);color:var(--sand);
  padding:.7rem 1.2rem;border-radius:12px;display:flex;align-items:center;gap:.5rem;opacity:0;visibility:hidden;
  transition:opacity .3s,transform .3s var(--spring);z-index:95;box-shadow:var(--shadow);font-size:.9rem}
.lh-toast.is-on{opacity:1;visibility:visible;transform:translate(-50%,0)}
.lh-toast svg{width:18px;height:18px;color:var(--accent)}

/* ── Search overlay ───────────────────────────────────────────────────────── */
.lh-search-ov{position:fixed;inset:0;background:rgba(15,39,50,.55);opacity:0;visibility:hidden;transition:opacity .3s;z-index:100;padding-top:12vh}
.lh-search-ov.is-on{opacity:1;visibility:visible}
.lh-search-box{width:min(620px,92vw);margin:0 auto;background:var(--sand);border-radius:20px;padding:1rem;box-shadow:var(--shadow)}
.lh-search-box form{display:flex;align-items:center;gap:.5rem}
.lh-search-ic svg{width:22px;height:22px;color:var(--teal-2)}
.lh-search-box input{flex:1;border:0;background:none;font-family:inherit;font-size:1.1rem;padding:.6rem;color:var(--ink)}
.lh-search-box input:focus{outline:none}
.lh-search-res{margin-top:.6rem;display:flex;flex-direction:column;gap:.2rem}
.lh-search-res a{display:flex;align-items:center;gap:.7rem;padding:.5rem;border-radius:12px}
.lh-search-res a:hover{background:var(--sand-2)}
.lh-search-res img{width:46px;height:46px;border-radius:9px;object-fit:cover}
.lh-search-res span{flex:1;font-weight:500}
.lh-search-res b{font-family:var(--disp);font-weight:600;color:var(--teal)}
.lh-search-none{text-align:center;color:var(--teal-2);padding:1rem}

/* ── PDP ──────────────────────────────────────────────────────────────────── */
.lh-crumb{display:flex;align-items:center;gap:.35rem;flex-wrap:wrap;font-size:.82rem;color:var(--teal-2);padding:1.4rem 0 .4rem}
.lh-crumb a:hover{color:var(--accent)}
.lh-crumb svg{width:12px;height:12px;opacity:.6}
.lh-crumb span{color:var(--teal);font-weight:500}
.lh-pdp{display:grid;grid-template-columns:1.05fr 1fr;gap:clamp(1.5rem,4vw,3rem);padding:1rem 0 2.5rem}
.lh-gallery{position:sticky;top:120px;align-self:start}
.lh-gal-main{position:relative;overflow:hidden;aspect-ratio:1/1;background:#fff;border:2px solid var(--line);border-radius:26px}
.lh-gal-main img{width:100%;height:100%;object-fit:cover}
.lh-gal-thumbs{display:flex;gap:.6rem;margin-top:.7rem}
.lh-gal-th{width:74px;height:74px;border-radius:14px;overflow:hidden;border:2px solid var(--line);background:#fff;transition:border-color .2s}
.lh-gal-th img{width:100%;height:100%;object-fit:cover}
.lh-gal-th.is-on{border-color:var(--accent)}
.lh-pdp-name{font-family:var(--disp);font-weight:600;font-size:clamp(1.9rem,4vw,2.8rem);line-height:1;color:var(--teal);margin:.3rem 0 .5rem}
.lh-pdp-price{display:flex;align-items:center;gap:.8rem;margin:.8rem 0}
.lh-pdp-price .lh-price{font-size:2rem}
.lh-pdp-save{background:var(--accent);color:#fff;font-family:var(--disp);font-weight:600;padding:.2rem .6rem;border-radius:8px;font-size:.9rem}
.lh-pdp-short{color:var(--teal-2);font-size:1.05rem}
.lh-pdp-benefits{list-style:none;padding:0;margin:1rem 0;display:grid;gap:.5rem}
.lh-pdp-benefits li{display:flex;align-items:center;gap:.5rem;font-size:.94rem}
.lh-pdp-benefits svg{width:18px;height:18px;color:var(--accent);flex:none}
.lh-pdp-variant{margin:1.2rem 0}
.lh-var-label{font-family:var(--disp);text-transform:uppercase;letter-spacing:.08em;font-size:.82rem;color:var(--teal);display:block;margin-bottom:.4rem}
.lh-var-opts{display:flex;flex-wrap:wrap;gap:.5rem}
.lh-var-o{padding:.4rem .9rem;border-radius:10px;background:var(--sand-2);color:var(--teal);font-weight:500;font-size:.88rem;transition:all .2s var(--spring)}
.lh-var-o.is-on{background:var(--teal);color:var(--sand)}
.lh-pdp-buy{display:flex;gap:.7rem;align-items:stretch;margin:1.2rem 0 .8rem}
.lh-atc{flex:1;justify-content:center;font-size:1.1rem}
.lh-pdp-stock,.lh-pdp-sold{display:flex;align-items:center;gap:.4rem;font-size:.86rem;color:var(--teal-2);margin:.4rem 0}
.lh-pdp-stock svg,.lh-pdp-sold svg{width:16px;height:16px;color:var(--accent)}
.lh-pdp-stock b{color:var(--accent-2)}
.lh-pdp-reassure{display:grid;grid-template-columns:repeat(2,1fr);gap:.6rem;margin-top:1.2rem;padding-top:1.2rem;border-top:1px solid var(--line)}
.lh-pdp-reassure span{display:flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--teal-2)}
.lh-pdp-reassure svg{width:18px;height:18px;color:var(--accent);flex:none}
.lh-pdp-detail{padding:1rem 0 2rem}
.lh-pdp-cols{display:grid;grid-template-columns:1.3fr 1fr;gap:clamp(1.5rem,4vw,3rem)}
.lh-pdp-desc p{color:var(--teal-2)}
.lh-specs{width:100%;border-collapse:collapse;margin:.4rem 0}
.lh-specs th,.lh-specs td{text-align:left;padding:.6rem .2rem;border-bottom:1px solid var(--line);font-size:.9rem}
.lh-specs th{color:var(--teal);font-weight:600;width:40%}
.lh-specs td{color:var(--teal-2)}
.lh-pdp-reviews{background:var(--cream);border-radius:22px;padding:clamp(1.2rem,3vw,1.8rem);align-self:start}
.lh-rev-summary{display:flex;gap:1.2rem;align-items:center;margin-bottom:1.2rem;flex-wrap:wrap}
.lh-rev-big{text-align:center}
.lh-rev-big b{font-family:var(--disp);font-weight:600;font-size:2.6rem;color:var(--teal);line-height:1;display:block}
.lh-rev-stars{color:var(--accent);display:inline-flex}
.lh-rev-stars svg{width:15px;height:15px}
.lh-rev-big small{display:block;font-size:.78rem;color:var(--teal-2)}
.lh-rev-dist{flex:1;min-width:160px}
.lh-rev-bar{display:flex;align-items:center;gap:.4rem;font-size:.78rem;color:var(--teal-2);margin:.15rem 0}
.lh-rev-bar svg{width:12px;height:12px;color:var(--accent)}
.lh-rev-track{flex:1;height:6px;background:var(--sand-2);border-radius:999px;overflow:hidden}
.lh-rev-track b{display:block;height:100%;background:var(--accent);border-radius:999px}
.lh-rev-list{display:flex;flex-direction:column;gap:1rem}
.lh-rev{background:var(--sand);border-radius:14px;padding:1rem}
.lh-rev-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:.4rem}
.lh-rev-top strong{font-weight:600;color:var(--teal)}
.lh-rev p{margin:0 0 .3rem;font-size:.92rem}
.lh-rev time{font-size:.74rem;color:var(--teal-2);opacity:.7}
.lh-sec-cross,.lh-sec-related{padding:1.6rem 0 2.5rem}
.lh-cross-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1rem}
.lh-cross-c{display:flex;align-items:center;gap:.8rem;background:var(--sand);border:2px solid var(--line);border-radius:16px;padding:.8rem}
.lh-cross-c img{width:70px;height:70px;border-radius:10px;object-fit:cover}
.lh-cross-c div{flex:1}
.lh-cross-c p{margin:.1rem 0;font-family:var(--disp);font-weight:600;color:var(--teal)}
.lh-cross-c b{font-family:var(--disp);font-weight:600;color:var(--accent)}
.lh-cross-c .lh-ibtn{background:var(--teal);color:var(--sand);flex:none}
.lh-cross-c .lh-ibtn:hover{background:var(--accent)}
.lh-sticky-atc{position:fixed;left:0;right:0;bottom:0;background:var(--sand);border-top:2px solid var(--line);z-index:70;
  transform:translateY(110%);transition:transform .3s var(--spring);box-shadow:0 -8px 24px -16px rgba(0,0,0,.4);display:none}
.lh-sticky-in{display:flex;align-items:center;gap:1rem;padding:.7rem 0}
.lh-sticky-info{flex:1;display:flex;flex-direction:column}
.lh-sticky-info span{font-size:.82rem;color:var(--teal-2)}
.lh-sticky-info b{font-family:var(--disp);font-weight:600;font-size:1.2rem;color:var(--teal)}
.lh-sticky-atc .lh-btn{flex:none}

/* ── Shop ─────────────────────────────────────────────────────────────────── */
.lh-shop-hero{position:relative;overflow:hidden;background:var(--teal);min-height:280px;display:flex;align-items:center}
.lh-shop-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.5}
.lh-shop-hero-in{position:relative;padding:3rem 0}
.lh-shop-hero-in .lh-h1{color:var(--sand)}
.lh-shop-hero-in .lh-sec-sub{color:rgba(244,234,212,.9)}
.lh-shop-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.6rem}
.lh-chips{display:flex;flex-wrap:wrap;gap:.5rem}
.lh-chip{font-family:var(--disp);text-transform:uppercase;letter-spacing:.04em;font-weight:600;font-size:.9rem;
  padding:.4rem .9rem;border-radius:999px;background:var(--sand-2);color:var(--teal);transition:all .2s var(--spring)}
.lh-chip.is-on,.lh-chip:hover{background:var(--teal);color:var(--sand)}
.lh-sort{display:flex;align-items:center;gap:.4rem;font-size:.86rem;color:var(--teal-2)}
.lh-sort svg{width:18px;height:18px}
.lh-sort select{font-family:inherit;border:2px solid var(--line);border-radius:10px;padding:.4rem .6rem;background:var(--sand);color:var(--teal)}
.lh-shop-count{font-size:.84rem;color:var(--teal-2);margin:.2rem 0 0}
.lh-empty{color:var(--teal-2);padding:2rem 0}

/* ── Pages simples (about/contact/legal) ──────────────────────────────────── */
.lh-page-hero{padding:clamp(2.4rem,6vw,4rem) 0 1rem}
.lh-about-media{overflow:hidden;border-radius:40px;margin:1rem 0 2rem;aspect-ratio:21/9;box-shadow:var(--shadow-sm)}
.lh-about-media img{width:100%;height:100%;object-fit:cover}
.lh-prose{max-width:70ch}
.lh-prose p{color:var(--teal-2);margin:.9rem 0}
.lh-prose h2{font-family:var(--disp);font-weight:600;color:var(--teal);font-size:1.5rem;margin:1.8rem 0 .5rem;text-transform:uppercase;letter-spacing:.02em}
.lh-lead{font-size:1.2rem;color:var(--teal)!important;font-weight:500}
.lh-about-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1.2rem;margin:2.5rem 0}
.lh-astat{background:var(--cream);border-radius:20px;padding:1.4rem;text-align:center;border:2px solid var(--line)}
.lh-astat b{font-family:var(--disp);font-weight:600;font-size:2.2rem;color:var(--accent);display:block;line-height:1}
.lh-astat span{font-size:.84rem;color:var(--teal-2)}
.lh-contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(1.5rem,4vw,3rem);padding:1rem 0 3rem}
.lh-contact-info{display:flex;flex-direction:column;gap:1.2rem}
.lh-cinfo{display:flex;gap:.8rem;align-items:flex-start}
.lh-cinfo>span svg,.lh-cinfo svg{width:24px;height:24px;color:var(--accent);flex:none;margin-top:2px}
.lh-cinfo b{display:block;font-family:var(--disp);text-transform:uppercase;letter-spacing:.06em;font-size:.82rem;color:var(--teal)}
.lh-cinfo a,.lh-cinfo>div>span{color:var(--teal-2)}
.lh-form{display:flex;flex-direction:column;gap:.8rem;background:var(--cream);border-radius:24px;padding:clamp(1.4rem,3vw,2rem);border:2px solid var(--line)}
.lh-form input,.lh-form textarea{font-family:inherit;border:2px solid var(--line);border-radius:12px;padding:.8em 1em;background:var(--sand);color:var(--ink);font-size:1rem}
.lh-form textarea{min-height:140px;resize:vertical}
.lh-form .lh-btn{justify-content:center}
.lh-form-ok{background:var(--cream);border:2px solid var(--accent);border-radius:20px;padding:2rem;text-align:center;font-weight:600;color:var(--teal);display:flex;align-items:center;justify-content:center;gap:.5rem}
.lh-form-ok svg{width:22px;height:22px;color:var(--accent)}
.lh-cart-page{padding:1.5rem 0 3rem}
.lh-cart-empty{text-align:center;padding:3rem 1rem;display:flex;flex-direction:column;align-items:center;gap:1rem}
.lh-cart-empty svg{width:56px;height:56px;color:var(--aqua-2)}
.lh-cart-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:1.6rem;margin-top:1.2rem}
.lh-cart-lines{display:flex;flex-direction:column;gap:.9rem}
.lh-cline{display:grid;grid-template-columns:84px 1fr auto auto;gap:1rem;align-items:center;background:var(--sand);border:2px solid var(--line);border-radius:16px;padding:.8rem}
.lh-cline-img{width:84px;height:84px;border-radius:12px;overflow:hidden;background:#fff}
.lh-cline-img img{width:100%;height:100%;object-fit:cover}
.lh-cline-name{font-family:var(--disp);font-weight:600;font-size:1.1rem;color:var(--teal)}
.lh-cline-price{font-family:var(--disp);font-weight:600;color:var(--teal)}
.lh-cart-sum{background:var(--cream);border:2px solid var(--line);border-radius:22px;padding:1.5rem;align-self:start}
.lh-sum-row{display:flex;justify-content:space-between;margin:.5rem 0;font-size:.94rem;color:var(--teal-2)}
.lh-sum-total{border-top:2px solid var(--line);padding-top:.7rem;margin-top:.7rem;font-size:1.1rem;color:var(--teal)}
.lh-sum-total b{font-family:var(--disp);font-weight:600;font-size:1.4rem}
.lh-cart-sum .lh-btn{width:100%;justify-content:center;margin-top:.8rem}
.lh-cart-cont{display:block;text-align:center;font-size:.84rem;color:var(--teal-2);text-decoration:underline;margin-top:.6rem}
.lh-pay-mini{justify-content:center;margin-top:1rem}
.lh-pay-mini svg{height:22px}

/* ── Motion élastique ─────────────────────────────────────────────────────── */
.lh-reveal{opacity:0;transform:translateY(28px) scale(.98);transition:opacity .6s ease,transform .7s var(--spring)}
.lh-reveal.is-in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){
  .lh-reveal{opacity:1!important;transform:none!important;transition:none}
  .lh-slide-bg img{animation:none;transform:none}
  *{scroll-behavior:auto!important}
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width:1024px){
  .lh-masonry{columns:3 220px}
  .lh-feat-grid,.lh-tl-grid,.lh-bundle,.lh-pdp,.lh-pdp-cols,.lh-cart-grid,.lh-contact-grid,.lh-foot-in{grid-template-columns:1fr}
  .lh-tl-side{position:static}
  .lh-gallery{position:static}
  .lh-need-grid,.lh-seal-grid{grid-template-columns:repeat(2,1fr)}
  .lh-foot-groups{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:760px){
  .lh-burger{display:inline-flex}
  .lh-nav{position:fixed;inset:0;top:0;flex-direction:column;justify-content:center;gap:.4rem;background:var(--sand);
    transform:translateX(-100%);transition:transform .35s var(--spring);z-index:65;padding:2rem}
  .lh-head.nav-open .lh-nav{transform:none}
  .lh-nav a{font-size:1.6rem;padding:.4rem}
  .lh-logo{margin-inline:auto}
  .lh-bar-in{position:relative}
  .lh-tools{margin-left:auto}
  .lh-masonry,.lh-masonry-home{columns:2 150px;column-gap:.9rem}
  .lh-card{margin-bottom:.9rem}
  .lh-ugc-grid{columns:2 140px}
  .lh-feat-stats{grid-template-columns:1fr;gap:.5rem}
  .lh-feat-mini,.lh-cross-grid,.lh-pdp-reassure{grid-template-columns:1fr}
  .lh-cline{grid-template-columns:64px 1fr;grid-template-areas:"img info" "img qty";row-gap:.4rem}
  .lh-cline-img{grid-area:img}.lh-cline-info{grid-area:info}
  .lh-cline .lh-qty{grid-area:qty}.lh-cline-price{grid-column:1/-1;text-align:right}
  .lh-sticky-atc{display:block}
  .lh-about-stats{grid-template-columns:repeat(2,1fr)}
  .lh-foot-coords{grid-template-columns:1fr}
  .lh-strip-in{gap:.5rem}
  .lh-lang{display:none}
  .lh-hero{height:auto;min-height:80vh}
  .lh-slide{position:relative;display:none}
  .lh-slide.is-on{display:block}
  .lh-slide-in{padding-block:3rem 5rem}
}
@media (max-width:430px){
  .lh-masonry,.lh-masonry-home,.lh-ugc-grid{columns:1}
  .lh-seal-grid,.lh-need-grid,.lh-about-stats,.lh-foot-groups{grid-template-columns:1fr}
  .lh-slide-card{border-radius:24px}
  .lh-foot-bottom{justify-content:center;text-align:center}
}
