:root{
  --lc-pink:#ff2f7d;
  --lc-pink-2:#ff66aa;
  --lc-hot:#e81962;
  --lc-purple:#8d3cf7;
  --lc-dark:#271125;
  --lc-text:#302132;
  --lc-muted:#7b657a;
  --lc-cream:#fff6fb;
  --lc-white:#fff;
  --lc-line:rgba(232,25,98,.15);
  --lc-shadow:0 22px 55px rgba(125,21,84,.18);
  --lc-radius:28px;
  --lc-max:1140px;
}
html{scroll-behavior:smooth;}
body{background:var(--lc-cream);color:var(--lc-text);overflow-x:hidden;}
a{transition:opacity .2s ease, transform .2s ease;}
a:hover{opacity:.9;}
.lc-v2-wrap{width:min(100% - 34px,var(--lc-max));margin-inline:auto;}
.lc-v2-section{min-height:100vh;display:flex;align-items:center;padding:86px 0;position:relative;overflow:hidden;color:var(--lc-text);background:#fff;}
.lc-v2-softBg{background:linear-gradient(180deg,#fff6fb 0%,#fff 100%);}
.lc-v2-kicker{display:inline-flex;align-items:center;gap:8px;margin:0 0 13px;color:var(--lc-hot);font-size:12px;font-weight:900;letter-spacing:.13em;text-transform:uppercase;}
.lc-v2-kicker:before{content:"";width:8px;height:8px;border-radius:999px;background:var(--lc-hot);box-shadow:0 0 0 6px rgba(232,25,98,.12);}
.lc-v2-sectionTitle{text-align:center;margin:0 auto 38px;max-width:760px;}
.lc-v2-sectionTitle h2{font-size:clamp(31px,4vw,48px);line-height:1.02;letter-spacing:-.045em;margin:0 0 12px;font-weight:900;color:var(--lc-text);}
.lc-v2-sectionTitle p{font-size:17px;line-height:1.62;color:var(--lc-muted);margin:0;}

/* Header refresh */
.lc-header-container{background:rgba(255,255,255,.08);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:space-between;gap:22px;padding:12px 28px;position:absolute;top:0;left:0;right:0;z-index:20;width:auto;}
.lc-header-logo{background:transparent;border-radius:0;display:flex;align-items:center;padding:0;min-width:0;}
.lc-header-logoImage{width:54px;min-width:54px;padding-right:10px;}
.lc-header-logoImage img{border-radius:18px;box-shadow:0 12px 30px rgba(85,0,56,.16);}
.lc-header-logoContainer :first-child{font-size:22px!important;font-weight:900!important;letter-spacing:-.03em;color:#fff;line-height:1.1;}
.lc-header-logoContainer :nth-child(2){font-size:12px!important;font-weight:700!important;color:rgba(255,255,255,.76);line-height:1.2;}
.lc-header-menu{margin-left:auto;}
.lc-headerMenu-list{display:flex;align-items:center;gap:20px;flex-wrap:nowrap;justify-content:flex-end;padding:0;}
.lc-headerMenu-item{font-size:14px!important;font-weight:800;color:#fff;width:auto!important;margin:0!important;order:unset!important;text-align:left!important;}
.lc-headerMenu-playButton{background:#fff;border:0;border-radius:999px;color:var(--lc-hot);margin:0;padding:12px 18px;box-shadow:0 14px 34px rgba(91,0,50,.16);font-weight:900;}
.dropdown-options{min-width:76px;right:0;}

/* Hero */
.lc-v2-hero{min-height:100vh;display:flex;align-items:center;position:relative;overflow:hidden;padding:108px 0 64px;background:linear-gradient(135deg,#ff3b8f 0%,#e91f65 48%,#8837e8 100%);color:#fff;}
.lc-v2-heroBg:before,.lc-v2-heroBg:after{content:"";position:absolute;border-radius:999px;background:rgba(255,255,255,.13);pointer-events:none;}
.lc-v2-heroBg:before{width:520px;height:520px;left:-160px;bottom:-220px;}
.lc-v2-heroBg:after{width:420px;height:420px;right:-90px;top:-140px;filter:blur(4px);}
.lc-v2-heroGrid{position:relative;z-index:2;display:grid;grid-template-columns:1.02fr .98fr;gap:40px;align-items:center;}
.lc-v2-heroContent h1{font-size:clamp(42px,6vw,76px);line-height:.92;letter-spacing:-.06em;margin:0 0 20px;font-weight:950;color:#fff;max-width:720px;}
.lc-v2-hero .lc-v2-kicker{color:#fff;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.22);border-radius:999px;padding:10px 14px;backdrop-filter:blur(12px);letter-spacing:0;text-transform:none;font-size:13px;}
.lc-v2-hero .lc-v2-kicker:before{background:#fff;box-shadow:0 0 0 6px rgba(255,255,255,.13);}
.lc-v2-lead{font-size:clamp(17px,2vw,21px);line-height:1.55;color:rgba(255,255,255,.9);max-width:620px;margin:0 0 26px;}
.lc-v2-storeButtons{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.lc-v2-storeButtons a{display:inline-flex;align-items:center;justify-content:center;background:#191019;border-radius:17px;min-height:52px;padding:0 14px;box-shadow:0 18px 38px rgba(55,0,37,.25);}
.lc-v2-storeButtons img{height:42px;width:auto;max-width:160px;}
.lc-v2-storeButtons--small{margin-top:16px;}
.lc-v2-storeButtons--small a{min-height:44px;border-radius:14px;padding:0 10px;}
.lc-v2-storeButtons--small img{height:34px;}
.lc-v2-playCta{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 20px;border-radius:17px;background:#fff;color:var(--lc-hot);font-weight:950;box-shadow:0 18px 38px rgba(55,0,37,.22);}
.lc-v2-playCta--light{background:rgba(255,255,255,.94);color:var(--lc-hot);}
.lc-v2-proofRow{display:flex;gap:18px;flex-wrap:wrap;margin-top:24px;color:rgba(255,255,255,.88);font-size:14px;font-weight:750;}
.lc-v2-proofRow strong{color:#fff;}
.lc-v2-heroVisual{min-height:520px;display:grid;place-items:center;position:relative;}
.lc-v2-phoneShell{position:relative;width:min(78%,350px);filter:drop-shadow(0 44px 70px rgba(60,0,55,.34));transform:rotate(3deg);}
.lc-v2-phoneShell:before{content:"";position:absolute;inset:8% 2% 4% 2%;border-radius:40px;background:linear-gradient(180deg,#ff4b93,#e51f67 54%,#8129d2);z-index:-1;}
.lc-v2-floatCard{position:absolute;border-radius:24px;background:rgba(255,255,255,.92);color:var(--lc-text);box-shadow:0 20px 50px rgba(87,0,54,.22);padding:15px 17px;font-weight:950;z-index:3;}
.lc-v2-floatCard small{display:block;color:var(--lc-muted);font-size:12px;font-weight:750;margin-top:3px;}
.lc-v2-floatCard--soft{left:18px;top:105px;transform:rotate(-7deg);}
.lc-v2-floatCard--hot{right:18px;top:185px;transform:rotate(8deg);}
.lc-v2-floatCard--dice{left:28px;bottom:86px;transform:rotate(5deg);}

/* Benefits */
.lc-v2-benefitGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;align-items:stretch;}
.lc-v2-card{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  min-height:410px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:
    radial-gradient(circle at 18% 10%,rgba(255,47,125,.13),transparent 28%),
    linear-gradient(180deg,#fff 0%,#fff7fb 100%);
  border:1px solid rgba(232,25,98,.18);
  border-radius:32px;
  padding:24px;
  box-shadow:0 24px 60px rgba(125,21,84,.14), inset 0 1px 0 rgba(255,255,255,.85);
}
.lc-v2-card:before{
  content:"";
  position:absolute;
  inset:14px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.72);
  pointer-events:none;
  z-index:-1;
}
.lc-v2-card:after{
  content:"";
  position:absolute;
  width:160px;
  height:160px;
  right:-70px;
  bottom:-74px;
  border-radius:999px;
  background:linear-gradient(135deg,rgba(255,47,125,.16),rgba(141,60,247,.13));
  z-index:-2;
}
.lc-v2-cardIcon{width:50px;height:50px;border-radius:17px;display:grid;place-items:center;background:linear-gradient(135deg,#ffe2ee,#fff6fb);font-size:24px;margin-bottom:18px;}
.lc-v2-card h3{margin:0 0 12px;font-size:clamp(21px,2vw,25px);line-height:1.05;font-weight:950;letter-spacing:-.035em;color:var(--lc-text);}
.lc-v2-card p{margin:0;color:var(--lc-muted);line-height:1.62;font-size:15.5px;font-weight:720;}
.lc-v2-cardVisual{
  position:relative;
  min-height:176px;
  margin:0 0 28px;
  border-radius:26px;
  background:
    linear-gradient(135deg,rgba(255,255,255,.94),rgba(255,238,247,.86)),
    radial-gradient(circle at 85% 18%,rgba(141,60,247,.16),transparent 32%);
  border:1px solid rgba(232,25,98,.14);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.9),0 18px 36px rgba(125,21,84,.1);
  overflow:hidden;
}
.lc-v2-cardVisual:before{
  content:"";
  position:absolute;
  inset:auto 18px 18px;
  height:42px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(232,25,98,.10);
}
.lc-v2-cardVisual__bar{
  position:absolute;
  left:18px;
  top:18px;
  width:70px;
  height:9px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--lc-hot),var(--lc-purple));
  box-shadow:42px 0 0 rgba(232,25,98,.13),78px 0 0 rgba(141,60,247,.10);
}
.lc-v2-cardVisual__name{
  position:absolute;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:36px;
  padding:0 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(232,25,98,.16);
  color:#5d435a;
  font-size:12px;
  font-weight:950;
  box-shadow:0 12px 26px rgba(125,21,84,.1);
}
.lc-v2-cardVisual__name--first{left:20px;top:56px;}
.lc-v2-cardVisual__name--second{right:20px;top:88px;}
.lc-v2-cardVisual__play{
  position:absolute;
  left:50%;
  bottom:22px;
  transform:translateX(-50%);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:112px;
  min-height:42px;
  border-radius:999px;
  color:#fff;
  background:linear-gradient(135deg,var(--lc-pink),var(--lc-purple));
  box-shadow:0 14px 30px rgba(232,25,98,.24);
  font-size:13px;
  font-weight:950;
}
.lc-v2-levelChip{
  position:absolute;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:72px;
  min-height:34px;
  border-radius:999px;
  background:rgba(255,255,255,.76);
  border:1px solid rgba(232,25,98,.14);
  color:#7b657a;
  font-size:12px;
  font-weight:950;
}
.lc-v2-levelChip:nth-child(1){left:18px;top:20px;}
.lc-v2-levelChip:nth-child(2){left:54px;top:68px;}
.lc-v2-levelChip:nth-child(3){left:96px;top:116px;}
.lc-v2-levelChip--active{
  color:#fff;
  background:linear-gradient(135deg,var(--lc-pink),var(--lc-purple));
  box-shadow:0 13px 28px rgba(232,25,98,.22);
}
.lc-v2-moodDial{
  position:absolute;
  right:22px;
  top:38px;
  width:96px;
  height:96px;
  border-radius:999px;
  background:conic-gradient(from 225deg,var(--lc-pink),var(--lc-purple),rgba(255,255,255,.78) 72%);
  box-shadow:0 18px 36px rgba(125,21,84,.14);
}
.lc-v2-moodDial:before{
  content:"";
  position:absolute;
  inset:12px;
  border-radius:inherit;
  background:#fff8fb;
}
.lc-v2-moodDial span{
  position:absolute;
  left:48px;
  top:18px;
  width:4px;
  height:38px;
  border-radius:999px;
  background:#3a2039;
  transform:rotate(38deg);
  transform-origin:bottom center;
}
.lc-v2-stackCard{
  position:absolute;
  width:94px;
  height:120px;
  border-radius:22px;
  background:#fff;
  border:1px solid rgba(232,25,98,.15);
  box-shadow:0 18px 34px rgba(125,21,84,.12);
}
.lc-v2-stackCard:before{
  content:"";
  position:absolute;
  left:18px;
  top:22px;
  width:44px;
  height:8px;
  border-radius:999px;
  background:rgba(232,25,98,.18);
  box-shadow:0 20px 0 rgba(48,33,50,.12),0 40px 0 rgba(141,60,247,.12);
}
.lc-v2-stackCard--one{left:20px;top:32px;transform:rotate(-8deg);}
.lc-v2-stackCard--two{left:72px;top:22px;transform:rotate(6deg);}
.lc-v2-diceFace{
  position:absolute;
  right:30px;
  top:34px;
  width:64px;
  height:64px;
  border-radius:19px;
  background:linear-gradient(135deg,#fff,#ffe9f3);
  border:1px solid rgba(232,25,98,.16);
  box-shadow:0 18px 34px rgba(125,21,84,.12);
}
.lc-v2-diceFace i{
  position:absolute;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#3a2039;
}
.lc-v2-diceFace i:nth-child(1){left:16px;top:16px;}
.lc-v2-diceFace i:nth-child(2){right:16px;top:16px;}
.lc-v2-diceFace i:nth-child(3){left:16px;bottom:16px;}
.lc-v2-diceFace i:nth-child(4){right:16px;bottom:16px;}
.lc-v2-photoCard{
  position:absolute;
  right:26px;
  bottom:24px;
  width:96px;
  height:56px;
  border-radius:17px;
  background:
    radial-gradient(circle at 72% 32%,rgba(255,255,255,.9) 0 8px,transparent 9px),
    linear-gradient(135deg,rgba(255,47,125,.42),rgba(141,60,247,.34));
  border:1px solid rgba(255,255,255,.72);
  box-shadow:0 16px 30px rgba(125,21,84,.12);
}
.lc-v2-appPreview{display:grid;grid-template-columns:1.05fr .95fr;gap:30px;align-items:center;margin-top:34px;background:linear-gradient(135deg,#fff,#fff1f7);border:1px solid var(--lc-line);border-radius:34px;padding:28px;box-shadow:var(--lc-shadow);}
.lc-v2-appText h2{font-size:clamp(28px,3vw,42px);line-height:1.05;letter-spacing:-.04em;margin:0 0 18px;font-weight:950;color:var(--lc-text);}
.lc-v2-appText ul{display:grid;gap:12px;padding:0;margin:0;}
.lc-v2-appText li{display:flex;gap:10px;align-items:flex-start;color:var(--lc-muted);line-height:1.55;font-size:16px;}
.lc-v2-appText li:before{content:"♥";color:var(--lc-hot);font-weight:900;line-height:1.55;}
.lc-v2-appImage{display:flex;justify-content:center;align-items:center;}
.lc-v2-appImage img{max-height:470px;width:auto;filter:drop-shadow(0 30px 45px rgba(125,21,84,.18));}

/* Game */
.lc-v2-gameSection{background:linear-gradient(180deg,#fff6fb,#fff);}
.lc-v2-gameGrid{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center;}
.lc-v2-gameIntro h2{font-size:clamp(31px,4vw,48px);line-height:1.04;letter-spacing:-.045em;margin:0 0 14px;font-weight:950;color:var(--lc-text);}
.lc-v2-gameIntro>p:not(.lc-v2-kicker){color:var(--lc-muted);font-size:17px;line-height:1.65;margin:0 0 22px;}
.lc-v2-downloadBox{background:linear-gradient(135deg,#ffeff6,#fff);border:1px solid var(--lc-line);border-radius:30px;padding:26px;display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:start;box-shadow:var(--lc-shadow);}
.lc-v2-downloadIcon{width:72px;height:72px;border-radius:24px;background:linear-gradient(135deg,var(--lc-pink),var(--lc-purple));display:grid;place-items:center;color:white;font-size:36px;box-shadow:0 18px 40px rgba(232,25,98,.22);}
.lc-v2-downloadBox h3{margin:0 0 7px;font-size:20px;font-weight:950;color:var(--lc-text);}
.lc-v2-downloadBox p{margin:0;color:var(--lc-muted);line-height:1.55;}
.lc-v2-playBox{background:#fff;border:1px solid var(--lc-line);border-radius:34px;padding:26px;box-shadow:var(--lc-shadow);min-height:500px;display:flex;align-items:center;justify-content:center;}
.lc-section3-gameContainer{width:100%;height:auto;min-height:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;position:relative;color:var(--lc-text);}
.lc-section3-gameTitle{font-size:24px;font-weight:950;margin:0 0 6px;color:var(--lc-text);}
.lc-v2-gameHint{margin:0 0 18px;color:var(--lc-muted);}
.lc-section3-namesChoice{display:flex;flex-direction:column;align-items:stretch;width:100%;}
.lc-section3-input-1,.lc-section3-input-2{width:100%;height:54px;margin:0 0 12px;padding:0 16px;border-radius:16px;border:1px solid #f2c9dc;background:#fff7fb;color:var(--lc-text);font-size:16px;}
.lc-section3-input-1::placeholder,.lc-section3-input-2::placeholder{color:#9d8296;}
.lc-section3-input1-danger,.lc-section3-input2-danger{color:var(--lc-hot);font-size:13px;margin:-6px 0 10px;font-weight:800;}
.lc-section3-categories{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:10px 0 16px;font-size:14px;text-align:center;}
.lc-section3-categories button{border:0;border-radius:16px;background:#fff0f6;color:var(--lc-hot);font-weight:950;padding:13px 8px;margin:0;}
.lc-section3-categories button.selected{background:linear-gradient(135deg,var(--lc-pink),var(--lc-hot));color:#fff;box-shadow:0 10px 24px rgba(232,25,98,.22);}
.lc-section3-start,.lc-section3-done{background:linear-gradient(135deg,var(--lc-pink),var(--lc-purple));border-radius:18px;color:white;font-size:18px;font-weight:950;margin:0;padding:0;box-shadow:0 18px 38px rgba(232,25,98,.22);}
.lc-section3-start button,.lc-section3-done button{width:100%;min-height:58px;font-weight:950;}
.lc-section3-startAgain{font-size:15px;text-align:center;margin-top:16px;color:var(--lc-hot);font-weight:900;}
.lc-section3-placeholder-container{height:auto;min-height:250px;padding:0;display:flex;align-items:center;justify-content:center;text-align:center;}
.lc-v2-resultCard{background:#fff7fb;border:1px solid var(--lc-line);border-radius:26px;padding:28px;width:100%;}
.lc-section3-action-title{font-size:30px;font-weight:950;color:var(--lc-hot);margin:0 0 16px;}
.lc-section3-action-container{font-size:20px;line-height:1.45;color:var(--lc-text);margin:0;}
.lc-section3-downloadApplication{padding:10px;text-align:center;color:var(--lc-text);}
.lc-section3-downloadApplication .lc-section3-action-title{font-size:28px;}
.lc-section3-downloadApplication .lc-section3-action-container{font-size:18px;color:var(--lc-muted);}
.lc-section3-downloadApplication-button{justify-content:center;}
.lc-section3-animation-container{height:200px;width:100%;position:relative;}
.lc-section3-animation-container .lc-section3-animation-dare,.lc-section3-animation-container .lc-section3-animation-truth{background:linear-gradient(135deg,#fff,#fff0f6);border:1px solid var(--lc-line);border-radius:28px;color:var(--lc-hot);display:block;margin:0 10px;padding:22px;position:absolute;top:50%;font-weight:950;box-shadow:var(--lc-shadow);}
.lc-section3-animation-container .lc-section3-animation-truth{right:8%;}
.lc-section3-animation-container .lc-section3-animation-dare{left:8%;}
.lc-section3-animation-container .lc-section3-animation-result-dare,.lc-section3-animation-container .lc-section3-animation-result-truth{left:50%;right:inherit;transform:translate(-50%,-50%);}
.lc-section3-animation-container .lc-section3-animation-truth.animated{animation:translate-truth 2s linear 1;}
.lc-section3-animation-container .lc-section3-animation-dare.animated{animation:translate-dare 2s linear 1;}
@keyframes translate-dare{0%{transform:rotate(0deg) translateX(-80px) rotate(0deg);}to{transform:rotate(900deg) translateX(-30px) rotate(-900deg);}}
@keyframes translate-truth{0%{transform:rotate(0deg) translateX(80px) rotate(0deg);}to{transform:rotate(900deg) translateX(30px) rotate(-900deg);}}
.lc-section3-buttonsContainer,.lc-section3-temperatureContainer,.lc-section3-abstractFormContainer{display:none!important;}

/* Levels + Stats */
.lc-section4-container{background:#fff;}
.lc-v2-levels{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.lc-v2-level{position:relative;overflow:hidden;border-radius:28px;padding:24px;min-height:188px;color:white;box-shadow:var(--lc-shadow);background:linear-gradient(135deg,#ff6aa8,var(--lc-pink));}
.lc-v2-level:nth-child(2){background:linear-gradient(135deg,#ff3d87,#e91f65);}
.lc-v2-level:nth-child(3){background:linear-gradient(135deg,#e91f65,#9f32d7);}
.lc-v2-level:nth-child(4){background:linear-gradient(135deg,#35223a,#8d3cf7);}
.lc-v2-level:after{content:"♥";position:absolute;right:-10px;bottom:-35px;font-size:130px;opacity:.13;}
.lc-v2-level span{font-size:13px;text-transform:uppercase;letter-spacing:.12em;opacity:.82;font-weight:900;}
.lc-v2-level h3{font-size:28px;margin:8px 0 12px;font-weight:950;color:#fff;}
.lc-v2-level p{margin:0;line-height:1.45;color:rgba(255,255,255,.88);}
.lc-v2-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:24px;}
.lc-v2-stat{background:#fff;border-radius:26px;padding:24px;text-align:center;border:1px solid var(--lc-line);box-shadow:var(--lc-shadow);}
.lc-v2-stat strong{display:block;font-size:32px;letter-spacing:-.04em;color:var(--lc-hot);margin-bottom:6px;font-weight:950;}
.lc-v2-stat span{color:var(--lc-muted);font-weight:850;font-size:14px;}

/* Reviews */
.lc-section5-container{margin:0;}
.lc-v2-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;}
.lc-v2-reviews .lc-comment{background:#fff;border:1px solid var(--lc-line);border-radius:var(--lc-radius);box-shadow:var(--lc-shadow);padding:22px;margin:0;color:var(--lc-text);max-width:none;}
.lc-v2-reviews .lc-ratings{padding:0 0 14px;width:auto;color:#ffb52e;}
.lc-v2-reviews .lc-text{padding:0;}
.lc-v2-reviews .lc-text-date{color:var(--lc-muted);font-size:13px;margin-bottom:12px;}
.lc-v2-reviews .lc-text-title{font-size:20px;font-weight:950;margin-bottom:8px;color:var(--lc-text);}
.lc-v2-reviews p{color:var(--lc-muted);line-height:1.58;}

/* Ideas + final CTA */
.lc-section6-container{background:#fff;}
.lc-section6-container .lc-articleTriple,.lc-section6-container .lc-tripleArticles,.lc-section6-container .lc-widgetTripleArticles{margin-bottom:28px;}
.lc-v2-messageTool{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:24px 0 28px;padding:24px;border:1px solid var(--lc-line);border-radius:28px;background:linear-gradient(135deg,#fff7fb,#fff);box-shadow:var(--lc-shadow);}
.lc-v2-messageTool h3{margin:4px 0 8px;color:var(--lc-text);font-size:clamp(24px,3vw,34px);letter-spacing:-.04em;font-weight:950;}
.lc-v2-messageTool p{margin:0;color:var(--lc-muted);line-height:1.6;max-width:650px;}
.lc-v2-messageTool a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;border-radius:999px;background:linear-gradient(135deg,#ff3b8f,#8837e8);color:#fff!important;text-decoration:none;font-weight:950;padding:12px 20px;white-space:nowrap;box-shadow:0 16px 34px rgba(126,0,76,.18);}
.lc-v2-finalCta{margin-top:30px;border-radius:36px;padding:44px 28px;text-align:center;color:#fff;background:linear-gradient(135deg,#ff3b8f,#e91f65 45%,#8837e8);box-shadow:0 30px 70px rgba(125,21,84,.24);position:relative;overflow:hidden;}
.lc-v2-finalCta:before{content:"";position:absolute;width:320px;height:320px;border-radius:999px;background:rgba(255,255,255,.14);right:-120px;top:-140px;}
.lc-v2-finalCta h2{font-size:clamp(30px,4vw,48px);line-height:1.04;letter-spacing:-.045em;margin:0 0 12px;font-weight:950;color:#fff;position:relative;}
.lc-v2-finalCta p{font-size:17px;line-height:1.6;color:rgba(255,255,255,.88);margin:0 auto 24px;max-width:650px;position:relative;}
.lc-v2-finalCta .lc-v2-storeButtons{justify-content:center;position:relative;}

@media only screen and (min-width:801px){
  .lc-v2-section{height:100vh;}
}
@media only screen and (max-width:980px){
  .lc-header-container{position:relative;background:linear-gradient(135deg,#ff3b8f,#e91f65 55%,#8837e8);display:block;padding:12px 16px;}
  .lc-header-logo{justify-content:center;margin-bottom:10px;}
  .lc-headerMenu-list{justify-content:center;gap:12px;flex-wrap:wrap;}
  .lc-headerMenu-item{font-size:13px!important;}
  .lc-headerMenu-playButton{padding:10px 13px;}
  .lc-v2-hero{padding:46px 0 60px;min-height:auto;}
  .lc-v2-heroGrid,.lc-v2-appPreview,.lc-v2-gameGrid{grid-template-columns:1fr;}
  .lc-v2-heroContent{text-align:center;}
  .lc-v2-lead{margin-inline:auto;}
  .lc-v2-storeButtons,.lc-v2-proofRow{justify-content:center;}
  .lc-v2-heroVisual{min-height:460px;}
  .lc-v2-phoneShell{width:min(62%,280px);}
  .lc-v2-benefitGrid,.lc-v2-reviews{grid-template-columns:1fr;}
  .lc-v2-card{
    min-height:0;
    padding:22px;
  }
  .lc-v2-cardVisual{
    min-height:150px;
    margin-bottom:22px;
  }
  .lc-v2-levels,.lc-v2-stats{grid-template-columns:1fr 1fr;}
  .lc-v2-section{min-height:auto;padding:62px 0;}
  .lc-v2-messageTool{align-items:flex-start;flex-direction:column;}
}
@media only screen and (max-width:560px){
  .lc-v2-wrap{width:min(100% - 24px,var(--lc-max));}
  .lc-header-logoContainer :nth-child(2){display:none!important;}
  .lc-headerMenu-list{gap:9px;}
  .lc-headerMenu-item{font-size:12px!important;}
  .lc-v2-heroContent{text-align:left;}
  .lc-v2-storeButtons,.lc-v2-proofRow{justify-content:flex-start;}
  .lc-v2-storeButtons a,.lc-v2-playCta{width:100%;}
  .lc-v2-storeButtons img{height:40px;}
  .lc-v2-messageTool a{width:100%;}
  .lc-v2-heroVisual{min-height:390px;}
  .lc-v2-phoneShell{width:230px;transform:rotate(0);}
  .lc-v2-floatCard{display:none;}
  .lc-v2-sectionTitle{text-align:left;}
  .lc-v2-appPreview,.lc-v2-downloadBox{padding:22px;}
  .lc-v2-card{
    border-radius:28px;
    padding:20px;
  }
  .lc-v2-card h3{
    font-size:23px;
  }
  .lc-v2-card p{
    font-size:16px;
  }
  .lc-v2-cardVisual{
    border-radius:23px;
  }
  .lc-v2-moodDial{
    width:82px;
    height:82px;
  }
  .lc-v2-levelChip{
    min-width:64px;
  }
  .lc-v2-downloadBox{grid-template-columns:1fr;text-align:center;}
  .lc-v2-downloadIcon{margin:auto;}
  .lc-section3-categories,.lc-v2-levels,.lc-v2-stats{grid-template-columns:1fr;}
  .lc-v2-playBox{padding:18px;min-height:430px;}
  .lc-section3-action-container{font-size:17px;}
}

/* --------------------------------------------------------------------------
   V2.1 performance patch
   Fixes slow / janky scrolling on desktop and mobile by removing forced
   viewport-height sections and expensive repaint effects.
-------------------------------------------------------------------------- */
html{scroll-behavior:auto;}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;}

/* The previous V2 forced every content block to 100vh on desktop. That made
   the page feel heavy and created awkward scroll pacing. Only the hero needs
   a tall treatment; regular sections should fit their content. */
.lc-v2-section{
  min-height:0;
  height:auto!important;
  padding:74px 0;
  contain:layout paint;
}
.lc-v2-hero{
  min-height:720px;
  height:auto;
  contain:layout paint;
}

/* Avoid viewport-based locks on desktop. */
@media only screen and (min-width:801px){
  .lc-v2-section{height:auto!important;min-height:0;}
}

/* Reduce paint-costly effects. Big blur/backdrop/drop-shadow combinations are
   the main cause of scroll jank on mid-range Android and some desktops. */
.lc-header-container{
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  background:rgba(255,255,255,.14);
}
.lc-v2-hero .lc-v2-kicker{
  -webkit-backdrop-filter:none;
  backdrop-filter:none;
  background:rgba(255,255,255,.18);
}
.lc-v2-heroBg:after{filter:none;}
.lc-v2-phoneShell{filter:none;}
.lc-v2-appImage img{filter:none;}

/* Lighter shadows keep the premium feel without forcing large repaint areas. */
:root{--lc-shadow:0 12px 30px rgba(125,21,84,.12);}
.lc-v2-storeButtons a,
.lc-v2-playCta,
.lc-v2-floatCard,
.lc-headerMenu-playButton,
.lc-v2-downloadIcon,
.lc-section3-start,
.lc-section3-done,
.lc-v2-finalCta{
  box-shadow:0 10px 24px rgba(91,0,50,.14);
}

/* Do not animate global link transforms during scroll. */
a{transition:opacity .15s ease;}

/* Keep the game animation, but make it cheaper and disable it for users/devices
   that prefer reduced motion. */
.lc-section3-animation-container .lc-section3-animation-dare,
.lc-section3-animation-container .lc-section3-animation-truth{
  will-change:transform;
}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    scroll-behavior:auto!important;
    transition-duration:.01ms!important;
  }
}

@media only screen and (max-width:980px){
  .lc-v2-section{padding:58px 0;contain:layout paint;}
  .lc-v2-hero{min-height:0;padding:44px 0 56px;}
  .lc-header-container{background:linear-gradient(135deg,#ff3b8f,#e91f65 55%,#8837e8);}
}
@media only screen and (max-width:560px){
  .lc-v2-section{padding:46px 0;}
  .lc-v2-heroVisual{min-height:340px;}
  .lc-v2-playBox{min-height:0;}
}

/* --------------------------------------------------------------------------
   V2.3 polish patch
   - Fix game layout overflow and broken category selection
   - Make proof stats readable
   - Rebuild reviews stars/cards
   - Improve articles UX
   - Add depth to download buttons
-------------------------------------------------------------------------- */
.lc-section3-container *,
.lc-section3-container *::before,
.lc-section3-container *::after{box-sizing:border-box;}

.lc-v2-playBox{
  align-items:stretch;
  min-height:0;
  padding:clamp(18px,3vw,32px);
  overflow:hidden;
}
.lc-section3-gameContainer{
  gap:0;
  max-width:100%;
}
.lc-section3-namesChoice{max-width:100%;}
.lc-section3-input-1,
.lc-section3-input-2{
  box-sizing:border-box;
  display:block;
  max-width:100%;
  min-width:0;
  height:58px;
  font-size:16px;
  line-height:58px;
  outline:none;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
.lc-section3-input-1:focus,
.lc-section3-input-2:focus{
  background:#fff;
  border-color:var(--lc-pink);
  box-shadow:0 0 0 5px rgba(255,47,125,.10);
}
.lc-section3-categories{
  align-items:stretch;
  max-width:100%;
}
.lc-section3-categories button,
.lc-section3-start button,
.lc-section3-done button,
.lc-section3-startAgain button{
  appearance:none;
  border:0;
  cursor:pointer;
  font-family:inherit;
  line-height:1.15;
}
.lc-section3-categories button{
  min-width:0;
  min-height:48px;
  font-size:13px;
  letter-spacing:.02em;
  transition:transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.lc-section3-categories button:hover{transform:translateY(-1px);}
.lc-section3-categories button.selected{box-shadow:0 12px 26px rgba(232,25,98,.24);}
.lc-section3-start,
.lc-section3-done{
  overflow:hidden;
  background:linear-gradient(135deg,#ff2f7d 0%,#e81962 48%,#8d3cf7 100%);
  box-shadow:0 16px 34px rgba(232,25,98,.26), inset 0 1px 0 rgba(255,255,255,.30);
}
.lc-section3-start button,
.lc-section3-done button{
  color:#fff;
  background:transparent;
  font-size:18px;
}
.lc-section3-startAgain button{
  color:var(--lc-hot);
  background:transparent;
  font-weight:900;
}
.lc-section3-downloadApplication .lc-v2-storeButtons{margin-top:18px;}
.lc-section3-placeholder-container{min-height:210px;}
.lc-v2-resultCard{box-sizing:border-box;}

/* Proof row: no more tiny white text lost on the pink band. */
.lc-v2-proofRow{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  max-width:760px;
  color:var(--lc-text);
}
.lc-v2-proofRow span{
  display:flex;
  flex-direction:column;
  justify-content:center;
  min-height:76px;
  padding:15px 18px;
  border-radius:22px;
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.62);
  box-shadow:0 14px 34px rgba(91,0,50,.16), inset 0 1px 0 rgba(255,255,255,.75);
  color:#7b657a;
  font-size:13px;
  line-height:1.2;
}
.lc-v2-proofRow strong{
  display:block;
  color:var(--lc-hot);
  font-size:clamp(22px,2.8vw,32px);
  line-height:1;
  letter-spacing:-.04em;
  margin-bottom:5px;
}

/* Download buttons: stronger, more clickable, less flat. */
.lc-v2-storeButtons a{
  position:relative;
  overflow:hidden;
  background:linear-gradient(180deg,#2b1828 0%,#130b13 100%);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 18px 0 rgba(41,14,36,.50), 0 24px 44px rgba(91,0,50,.30), inset 0 1px 0 rgba(255,255,255,.22);
  transform:translateY(0);
  transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease;
}
.lc-v2-storeButtons a::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(120deg,rgba(255,255,255,.20),rgba(255,255,255,0) 38%);
  pointer-events:none;
}
.lc-v2-storeButtons a:hover{
  opacity:1;
  transform:translateY(2px);
  box-shadow:0 12px 0 rgba(41,14,36,.50), 0 18px 34px rgba(91,0,50,.26), inset 0 1px 0 rgba(255,255,255,.22);
}
.lc-v2-finalCta .lc-v2-storeButtons a,
.lc-section3-downloadApplication .lc-v2-storeButtons a,
.lc-v2-downloadBox .lc-v2-storeButtons a{
  background:#fff;
  border-color:rgba(255,255,255,.75);
  box-shadow:0 12px 0 rgba(64,20,55,.32), 0 22px 38px rgba(91,0,50,.22), inset 0 1px 0 rgba(255,255,255,.9);
}

/* Reviews: force stars into one clean horizontal row and rebuild card hierarchy. */
.lc-v2-reviews .lc-comment{
  min-height:300px;
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:26px;
  overflow:hidden;
}
.lc-v2-reviews .lc-ratings{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  padding:0!important;
  width:auto!important;
  min-height:30px!important;
}
.lc-v2-reviews .lc-ratings-stars{
  display:block!important;
  width:22px!important;
  height:22px!important;
  flex:0 0 22px!important;
  margin:0!important;
  padding:0!important;
}
.lc-v2-reviews .lc-ratings-stars img{
  display:block!important;
  width:22px!important;
  height:22px!important;
  max-width:22px!important;
  max-height:22px!important;
  object-fit:contain!important;
}
.lc-v2-reviews .lc-ratings span{
  margin-left:8px!important;
  color:#f59b23!important;
  font-size:13px!important;
  font-weight:900!important;
}
.lc-v2-reviews .lc-text-name{
  color:var(--lc-text);
  font-size:15px;
  font-weight:950;
  margin:0 0 2px;
}
.lc-v2-reviews .lc-text-date{display:none;}
.lc-v2-reviews .lc-text-title{
  margin-top:8px;
  font-size:21px;
  line-height:1.18;
}
.lc-v2-reviews .lc-text-paragraph{
  font-size:15px;
  line-height:1.58;
  margin:0;
}

/* Ideas/articles: turn the legacy article widget into real modern cards. */
.lc-section6-container .lc-tripleArticles{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:22px!important;
  align-items:stretch!important;
  margin:8px 0 34px!important;
}
.lc-section6-container .lc-tripleArticles-container{
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:1px solid var(--lc-line)!important;
  border-radius:28px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(125,21,84,.10)!important;
  overflow:hidden!important;
  transition:transform .16s ease, box-shadow .16s ease!important;
}
.lc-section6-container .lc-tripleArticles-container:hover{
  transform:translateY(-3px)!important;
  box-shadow:0 22px 48px rgba(125,21,84,.16)!important;
}
.lc-section6-container .lc-tripleArticles-container a{
  display:flex!important;
  flex-direction:column!important;
  height:100%!important;
  color:inherit!important;
  text-decoration:none!important;
}
.lc-section6-container .lc-tripleArticles-imageContainer{
  margin:0!important;
  width:100%!important;
  aspect-ratio:1.42/1!important;
  overflow:hidden!important;
  background:#fff1f7!important;
}
.lc-section6-container .lc-tripleArticles-image{
  display:block!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transform:scale(1.01);
}
.lc-section6-container .lc-tripleArticles-textContainer{
  display:flex!important;
  flex-direction:column!important;
  flex:1!important;
  margin:0!important;
  padding:22px!important;
}
.lc-section6-container .lc-tripleArticles-date{
  color:var(--lc-hot)!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  margin-bottom:10px!important;
}
.lc-section6-container .lc-tripleArticles-title{
  color:var(--lc-text)!important;
  font-size:clamp(20px,2vw,26px)!important;
  line-height:1.08!important;
  letter-spacing:-.035em!important;
  margin:0!important;
  font-weight:950!important;
}
.lc-section6-container .lc-tripleArticles-paragraph{
  color:var(--lc-muted)!important;
  font-size:15px!important;
  line-height:1.5!important;
  margin:12px 0 0!important;
}
.lc-section6-container .lc-tripleArticles-textContainer::after{
  content:"Lire l’article";
  display:inline-flex;
  align-items:center;
  width:max-content;
  margin-top:auto;
  padding-top:18px;
  color:var(--lc-hot);
  font-weight:950;
  font-size:14px;
}

/* Stronger stats section as a proper conversion proof block. */
.lc-v2-stats{
  position:relative;
  margin-top:32px;
  padding:18px;
  border-radius:34px;
  background:linear-gradient(135deg,#ff2f7d 0%,#e81962 48%,#8d3cf7 100%);
  box-shadow:0 22px 50px rgba(125,21,84,.18);
}
.lc-v2-stat{
  background:rgba(255,255,255,.96);
  border-color:rgba(255,255,255,.62);
  box-shadow:0 10px 26px rgba(91,0,50,.10);
}
.lc-v2-stat strong{font-size:clamp(30px,3vw,42px);}

@media only screen and (max-width:980px){
  .lc-v2-proofRow{grid-template-columns:1fr 1fr 1fr;}
  .lc-section6-container .lc-tripleArticles{grid-template-columns:1fr!important;max-width:620px;margin-inline:auto!important;}
}
@media only screen and (max-width:680px){
  .lc-v2-proofRow{grid-template-columns:1fr;}
  .lc-section3-categories{grid-template-columns:repeat(2,minmax(0,1fr));}
  .lc-section3-input-1,.lc-section3-input-2{height:54px;line-height:54px;}
  .lc-v2-reviews .lc-comment{min-height:0;}
  .lc-v2-storeButtons a{box-shadow:0 10px 0 rgba(41,14,36,.50), 0 16px 30px rgba(91,0,50,.26), inset 0 1px 0 rgba(255,255,255,.22);}
}

/* --------------------------------------------------------------------------
   V2.4 patch
   - Web demo is Soft-only; Hot/Hard/Extrême become app-download triggers via JS
   - Remove overloaded hero stats; keep proof in the dedicated stats section
   - Restore cleaner original store badges
   - Fix mobile header/logo/language dropdown
-------------------------------------------------------------------------- */
.lc-v24-heroMicrocopy{
  margin:18px 0 0;
  color:rgba(255,255,255,.82);
  font-size:14px;
  line-height:1.45;
  font-weight:750;
}

/* Keep the badges close to the original site: official badge artwork, no heavy 3D slab. */
.lc-v2-storeButtons a,
.lc-v2-finalCta .lc-v2-storeButtons a,
.lc-section3-downloadApplication .lc-v2-storeButtons a,
.lc-v2-downloadBox .lc-v2-storeButtons a{
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  padding:0!important;
  min-height:auto!important;
  overflow:visible!important;
  transform:none!important;
}
.lc-v2-storeButtons a::after{display:none!important;}
.lc-v2-storeButtons a:hover{
  opacity:.94!important;
  transform:translateY(-1px)!important;
  box-shadow:none!important;
}
.lc-v2-storeButtons img{
  display:block;
  width:auto;
  height:62px;
  max-width:212px;
}
.lc-v2-storeButtons--small img{height:48px;max-width:164px;}
.lc-v2-playCta{
  min-height:62px;
  border-radius:22px;
  padding:0 26px;
  box-shadow:0 10px 26px rgba(91,0,50,.14);
}

/* Game: category buttons remain selectable, but premium levels are clearly app-gated. */
.lc-section3-categories button:not(.selected){background:#fff0f6;color:var(--lc-hot);}
.lc-section3-categories button.selected{background:var(--lc-hot);color:#fff;}
.lc-section3-downloadApplication{
  width:100%;
  text-align:center;
}
.lc-section3-downloadApplication .lc-section3-action-title{
  font-size:clamp(24px,3vw,34px);
  line-height:1.12;
  margin-bottom:10px;
}
.lc-section3-downloadApplication .lc-section3-action-container{
  max-width:620px;
  margin:0 auto;
  line-height:1.55;
}
.lc-section3-downloadApplication-button{justify-content:center;}

/* Stats: only the dedicated block carries the numbers now, so make it clean and readable. */
.lc-v2-stats{
  margin-top:38px;
  padding:20px;
}
.lc-v2-stat{
  min-height:126px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:flex-start;
}
.lc-v2-stat strong{color:var(--lc-hot);}
.lc-v2-stat span{color:var(--lc-muted);font-weight:850;}

/* Header / mobile stability. */
.lc-header-logoImage{
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
}
.lc-header-logoImage img{
  display:block;
  object-fit:contain;
  width:100%;
  height:auto;
  max-height:64px;
}
.dropdown{position:relative;display:inline-flex;align-items:center;justify-content:center;}
.dropdown-options{
  top:calc(100% + 10px)!important;
  right:0!important;
  left:auto!important;
  width:auto!important;
  min-width:142px!important;
  padding:8px 0!important;
  border-radius:16px!important;
  box-shadow:0 18px 42px rgba(60,0,45,.18)!important;
  z-index:2000!important;
  background:#fff!important;
}
.dropdown-options .dropdown-option{
  white-space:nowrap!important;
  color:var(--lc-text)!important;
  font-size:15px!important;
  font-weight:850!important;
  padding:10px 18px!important;
  text-decoration:none!important;
}
.dropdown-options .dropdown-option:hover{color:var(--lc-hot)!important;}

@media only screen and (max-width:980px){
  .lc-header-container{
    position:relative;
    display:flex!important;
    flex-direction:column;
    align-items:stretch;
    gap:10px;
    padding:12px 14px;
    overflow:visible!important;
  }
  .lc-header-logo{
    display:flex;
    align-items:center;
    justify-content:flex-start;
    width:100%;
    margin:0;
    padding:0;
    gap:12px;
  }
  .lc-header-logoImage{
    width:64px!important;
    min-width:64px!important;
    height:64px!important;
    padding:0!important;
  }
  .lc-header-logoImage img{
    width:64px!important;
    height:64px!important;
    max-height:64px!important;
    border-radius:18px!important;
    box-shadow:none!important;
  }
  .lc-header-logoTitle{min-width:0;}
  .lc-header-logoContainer :first-child{
    font-size:clamp(26px,7vw,36px)!important;
    line-height:1.02!important;
    letter-spacing:-.04em!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .lc-header-logoContainer :nth-child(2){
    display:block!important;
    font-size:clamp(13px,3.4vw,17px)!important;
    line-height:1.18!important;
    white-space:normal;
    color:rgba(255,255,255,.86)!important;
  }
  .lc-header-menu{width:100%;margin:0;overflow:visible!important;}
  .lc-headerMenu-list{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    flex-wrap:wrap;
    padding:10px 0 0!important;
    border-top:1px solid rgba(255,255,255,.22);
    overflow:visible!important;
  }
  .lc-headerMenu-item{
    position:relative;
    font-size:15px!important;
    line-height:1.2;
  }
  .lc-headerMenu-playButton{padding:9px 13px;border-radius:999px;}
  .dropdown-options{
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
  }
}

@media only screen and (max-width:560px){
  .lc-v2-heroContent{text-align:left;}
  .lc-v2-storeButtons{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    width:100%;
  }
  .lc-v2-storeButtons a{width:100%!important;justify-content:center!important;}
  .lc-v2-storeButtons img{height:auto;max-height:50px;width:100%;max-width:210px;}
  .lc-v2-playCta{
    grid-column:1/-1;
    width:100%;
    min-height:54px;
    border-radius:18px;
  }
  .lc-v2-storeButtons--small{
    display:flex;
    flex-wrap:wrap;
  }
  .lc-v2-storeButtons--small a{width:auto!important;}
  .lc-v2-storeButtons--small img{height:44px;width:auto;max-width:150px;}
  .lc-section3-categories{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
  .lc-section3-categories button{min-height:50px;font-size:12px;}
  .lc-v2-stats{grid-template-columns:1fr!important;padding:14px;border-radius:26px;}
  .lc-v2-stat{min-height:104px;align-items:center;text-align:center;}
}

/* --------------------------------------------------------------------------
   V2.6 Homepage fixes: readable store badges, stable mobile header/dropdown
-------------------------------------------------------------------------- */
.lc-v2-storeButtons{gap:14px!important;}
.lc-v2-storeButtons a,
.lc-v2-finalCta .lc-v2-storeButtons a,
.lc-section3-downloadApplication .lc-v2-storeButtons a,
.lc-v2-downloadBox .lc-v2-storeButtons a{
  background:transparent!important;
  border:none!important;
  box-shadow:none!important;
  padding:0!important;
  min-height:0!important;
  border-radius:0!important;
  overflow:visible!important;
}
.lc-v2-storeButtons a::after{display:none!important;}
.lc-v2-storeButtons a:hover{transform:translateY(-2px)!important;opacity:.94;}
.lc-v2-storeButtons img{
  height:58px!important;
  width:auto!important;
  max-width:210px!important;
  display:block!important;
  object-fit:contain!important;
}
.lc-v2-storeButtons--small img{height:48px!important;max-width:176px!important;}
.lc-v2-playCta{box-shadow:0 16px 36px rgba(105,0,64,.18)!important;}

.dropdown-options{z-index:9999!important;}
.lc-header-logoImage a{background:transparent!important;border:none!important;box-shadow:none!important;}
.lc-header-logoImage img{visibility:visible!important;opacity:1!important;}

@media only screen and (max-width:800px){
  .lc-v2-storeButtons{display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:100%;}
  .lc-v2-storeButtons a{width:auto!important;max-width:calc(50% - 8px)!important;}
  .lc-v2-storeButtons img{height:auto!important;max-height:50px!important;width:100%!important;max-width:178px!important;}
  .lc-v2-storeButtons--small a{max-width:calc(50% - 8px)!important;}
  .lc-v2-storeButtons--small img{max-height:44px!important;max-width:154px!important;}
  .lc-v2-downloadBox .lc-v2-storeButtons{justify-content:center!important;}
  .lc-v2-finalCta .lc-v2-storeButtons{display:grid!important;grid-template-columns:1fr 1fr;align-items:center!important;}
  .lc-v2-finalCta .lc-v2-storeButtons a{max-width:none!important;width:100%!important;justify-content:center!important;}
}
@media only screen and (max-width:420px){
  .lc-v2-storeButtons img{max-width:150px!important;}
  .lc-v2-storeButtons--small img{max-width:135px!important;}
}

/* Reviews carousel V2: JSON-driven social proof, mobile-first. */
.reviews-section{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 16% 10%, rgba(242,38,117,.18), transparent 30%),
    radial-gradient(circle at 88% 14%, rgba(156,53,236,.14), transparent 30%),
    linear-gradient(180deg,#fff7fb 0%,#fff 100%);
}
.reviews-section::before{
  content:"";
  position:absolute;
  inset:22px 0 auto;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(242,38,117,.24),transparent);
}
.reviews-header{
  position:relative;
  z-index:1;
}
.reviews-summary{
  position:relative;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  width:min(100%,720px);
  margin:30px auto 22px;
  padding:18px 22px;
  border:1px solid rgba(242,38,117,.18);
  border-radius:28px;
  background:rgba(255,255,255,.82);
  box-shadow:0 24px 70px rgba(103,0,68,.12);
  backdrop-filter:blur(14px);
}
.reviews-summary__stars .review-stars{
  font-size:22px;
}
.reviews-summary__rating{
  margin:0;
  font-size:28px;
  line-height:1;
  font-weight:1000;
  color:#351028;
}
.reviews-summary__label{
  margin:0 0 3px;
  font-size:16px;
  font-weight:950;
  color:#351028;
}
.reviews-summary__source{
  margin:0;
  color:#76586c;
  font-weight:750;
}
.reviews-carousel{
  position:relative;
  z-index:1;
  margin-top:18px;
}
.reviews-carousel__track{
  display:flex;
  gap:16px;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  scroll-padding-left:max(18px, calc((100vw - min(1120px, 100vw - 32px)) / 2));
  padding:12px max(18px, calc((100vw - min(1120px, 100vw - 32px)) / 2)) 26px;
  margin-inline:calc(-1 * max(18px, calc((100vw - min(1120px, 100vw - 32px)) / 2)));
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
  scrollbar-color:rgba(242,38,117,.45) rgba(255,255,255,.64);
}
.reviews-carousel__track:focus-visible{
  outline:3px solid rgba(242,38,117,.38);
  outline-offset:5px;
  border-radius:24px;
}
.review-card{
  flex:0 0 min(86vw,420px);
  min-height:270px;
  display:flex;
  flex-direction:column;
  scroll-snap-align:start;
  border:1px solid rgba(242,38,117,.16);
  border-radius:30px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.94),rgba(255,247,251,.9)),
    #fff;
  padding:22px;
  box-shadow:0 22px 60px rgba(103,0,68,.12);
}
.review-card__topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
.review-stars{
  display:inline-flex;
  gap:2px;
  color:#ffb52e;
  letter-spacing:0;
  white-space:nowrap;
}
.review-stars__star{
  display:inline-block;
  color:#ffb52e;
}
.review-stars__star.is-empty{
  color:#eadde6;
}
.review-stars__star.is-half{
  background:linear-gradient(90deg,#ffb52e 0 55%,#eadde6 55% 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.review-card__rating{
  flex:0 0 auto;
  color:#8a6378;
  font-size:13px;
  font-weight:950;
  background:#fff0f7;
  border:1px solid #ffd7e8;
  border-radius:999px;
  padding:6px 10px;
}
.review-card__author{
  margin:0 0 8px;
  color:#351028;
  font-weight:1000;
}
.review-card__title{
  margin:0 0 10px;
  color:#351028;
  font-size:22px;
  line-height:1.18;
  font-weight:1000;
}
.review-card__body{
  margin:0;
  color:#6d5164;
  font-size:16px;
  line-height:1.58;
  display:-webkit-box;
  -webkit-line-clamp:6;
  -webkit-box-orient:vertical;
  overflow:hidden;
}
.reviews-carousel__controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:14px;
  margin:4px 0 30px;
}
.reviews-carousel__button{
  width:44px;
  height:44px;
  border:0;
  border-radius:999px;
  background:#351028;
  color:#fff;
  font-size:28px;
  line-height:1;
  font-weight:900;
  cursor:pointer;
  box-shadow:0 14px 34px rgba(53,16,40,.22);
}
.reviews-carousel__button:hover,
.reviews-carousel__button:focus-visible{
  background:#f22675;
  outline:0;
  transform:translateY(-1px);
}
.reviews-carousel__counter{
  color:#76586c;
  font-size:14px;
  font-weight:950;
  min-width:54px;
  text-align:center;
}
.reviews-empty{
  margin:28px auto;
  text-align:center;
  color:#76586c;
  font-weight:850;
}
.reviews-cta{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:22px;
  margin:30px auto 0;
  padding:28px;
  border-radius:34px;
  background:linear-gradient(135deg,#f22675,#9c35ec);
  color:#fff;
  box-shadow:0 26px 70px rgba(156,53,236,.24);
}
.reviews-cta h2{
  margin:0 0 8px;
  color:#fff;
  font-size:clamp(26px,3vw,38px);
}
.reviews-cta p{
  margin:0;
  color:rgba(255,255,255,.9);
  font-weight:800;
}
.reviews-cta__actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  flex-wrap:wrap;
}
.reviews-cta__store{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 12px;
  border-radius:16px;
  background:#191019;
  box-shadow:0 16px 36px rgba(36,0,28,.24);
}
.reviews-cta__store img{
  display:block;
  width:auto;
  height:42px;
  max-width:164px;
}
.reviews-cta__play{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:54px;
  padding:0 18px;
  border-radius:999px;
  color:#351028!important;
  background:#fff;
  text-decoration:none;
  font-weight:1000;
  box-shadow:0 16px 36px rgba(36,0,28,.16);
}
.reviews-cta__store:hover,
.reviews-cta__store:focus-visible,
.reviews-cta__play:hover,
.reviews-cta__play:focus-visible{
  transform:translateY(-2px);
  outline:3px solid rgba(255,255,255,.42);
  outline-offset:3px;
}
@media (min-width:768px){
  .review-card{
    flex-basis:420px;
  }
}
@media (min-width:1180px){
  .review-card{
    flex-basis:360px;
  }
  .reviews-carousel__track{
    gap:18px;
  }
}
@media (max-width:900px){
  .reviews-summary{
    align-items:flex-start;
    justify-content:flex-start;
    text-align:left;
  }
  .reviews-cta{
    grid-template-columns:1fr;
    text-align:center;
  }
  .reviews-cta__actions{
    justify-content:center;
  }
}
@media (max-width:560px){
  .reviews-summary{
    gap:12px;
    padding:16px;
    border-radius:24px;
  }
  .reviews-summary__rating{
    font-size:24px;
  }
  .reviews-summary__stars .review-stars{
    font-size:18px;
  }
  .review-card{
    flex-basis:86vw;
    min-height:292px;
    padding:20px;
    border-radius:26px;
  }
  .review-card__title{
    font-size:20px;
  }
  .reviews-carousel__controls{
    margin-bottom:24px;
  }
  .reviews-cta{
    padding:22px 18px;
    border-radius:28px;
    gap:18px;
  }
  .reviews-cta h2{
    font-size:clamp(24px,7vw,31px);
    line-height:1.08;
  }
  .reviews-cta__actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    align-items:center;
    justify-items:center;
    gap:12px;
    width:100%;
  }
  .reviews-cta__store{
    width:min(100%, 166px);
    min-height:auto;
    padding:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
  }
  .reviews-cta__store img{
    width:100%;
    max-width:166px;
    height:auto;
    object-fit:contain;
  }
  .reviews-cta__play{
    grid-column:1 / -1;
    width:min(100%, 260px);
    min-height:50px;
  }
}
@media (max-width:390px){
  .reviews-cta{
    padding:20px 16px;
  }
  .reviews-cta__actions{
    grid-template-columns:1fr;
    gap:10px;
  }
  .reviews-cta__store{
    width:min(100%, 228px);
  }
  .reviews-cta__store img{
    max-width:228px;
  }
  .reviews-cta__play{
    width:min(100%, 228px);
  }
}


/* --------------------------------------------------------------------------
   V2.7 header fix
   The homepage must not inherit article.css header rules. Keep the header CTA
   readable if an old cache or template accidentally loads article.css after homePage.css.
-------------------------------------------------------------------------- */
.lc-headerMenu-playButton,
.lc-headerMenu-item .lc-headerMenu-playButton{
  background:#fff!important;
  color:var(--lc-hot)!important;
  border:0!important;
  border-radius:999px!important;
  font-weight:950!important;
  text-shadow:none!important;
}
.lc-headerMenu-playButton:hover{
  color:var(--lc-hot)!important;
  background:#fff!important;
  opacity:.94;
}

/* V3.5 — Final CTA generator button readability */
.lc-v2-finalCta .lc-v2-generatorCta,
.lc-v2-finalCta .lc-v2-playCta--light{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#e81962!important;
  background:#fff!important;
  border:2px solid rgba(255,255,255,.86)!important;
  box-shadow:0 16px 36px rgba(58,0,40,.26)!important;
  font-weight:950!important;
  text-decoration:none!important;
  text-shadow:none!important;
  opacity:1!important;
  min-height:62px!important;
  padding:0 28px!important;
  border-radius:22px!important;
}
.lc-v2-finalCta .lc-v2-generatorCta::before{
  content:'❤';
  display:inline-flex;
  margin-right:10px;
  color:#e81962;
  font-size:15px;
  line-height:1;
}
.lc-v2-finalCta .lc-v2-generatorCta:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 20px 44px rgba(58,0,40,.30)!important;
}
@media only screen and (max-width:560px){
  .lc-v2-finalCta .lc-v2-generatorCta{grid-column:1/-1;width:100%!important;}
}

/* --------------------------------------------------------------------------
   V3.6 — Final CTA generator visibility fix
   Make the generator CTA readable even when global link styles or cached
   button rules are applied after the homepage styles.
-------------------------------------------------------------------------- */
#maincontent .lc-v2-finalCta .lc-v2-storeButtons > a.lc-v2-generatorCta,
#maincontent .lc-v2-finalCta .lc-v2-storeButtons > a.lc-v2-generatorCta:visited,
#maincontent .lc-v2-finalCta .lc-v2-storeButtons > a.lc-v2-playCta--light,
#maincontent .lc-v2-finalCta .lc-v2-storeButtons > a.lc-v2-playCta--light:visited{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:260px!important;
  min-height:58px!important;
  padding:0 28px!important;
  border-radius:999px!important;
  background:#ffffff!important;
  border:2px solid rgba(255,255,255,.92)!important;
  color:#2b1430!important;
  font-family:Helvetica Neue,Arial,sans-serif!important;
  font-size:18px!important;
  font-weight:950!important;
  line-height:1!important;
  text-decoration:none!important;
  text-shadow:none!important;
  opacity:1!important;
  box-shadow:0 18px 42px rgba(45,0,36,.28)!important;
  transform:none!important;
  overflow:visible!important;
  white-space:nowrap!important;
}
#maincontent .lc-v2-finalCta .lc-v2-storeButtons > a.lc-v2-generatorCta::before{
  content:'❤';
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin-right:10px!important;
  color:#e81962!important;
  font-size:15px!important;
  line-height:1!important;
}
#maincontent .lc-v2-finalCta .lc-v2-storeButtons > a.lc-v2-generatorCta:hover{
  color:#e81962!important;
  background:#fff!important;
  transform:translateY(-2px)!important;
  box-shadow:0 22px 50px rgba(45,0,36,.34)!important;
}
@media only screen and (max-width:800px){
  #maincontent .lc-v2-finalCta .lc-v2-storeButtons > a.lc-v2-generatorCta{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    white-space:normal!important;
    text-align:center!important;
  }
}

/* V3.6 — Generator CTA must not inherit official-store-badge transparent style. */
#maincontent .lc-v2-storeButtons > a.lc-v2-playCta,
#maincontent .lc-v2-storeButtons > a.lc-v2-playCta:visited{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:58px!important;
  padding:0 26px!important;
  border-radius:999px!important;
  background:#ffffff!important;
  border:2px solid rgba(255,255,255,.9)!important;
  color:#2b1430!important;
  font-size:18px!important;
  font-weight:950!important;
  line-height:1!important;
  text-decoration:none!important;
  text-shadow:none!important;
  opacity:1!important;
  box-shadow:0 16px 36px rgba(45,0,36,.24)!important;
  overflow:visible!important;
  max-width:none!important;
}
#maincontent .lc-v2-storeButtons > a.lc-v2-playCta:hover{
  color:#e81962!important;
  transform:translateY(-2px)!important;
}

/* --------------------------------------------------------------------------
   V3.7 — Dedicated generator CTA outside store badge container.
   Keeps App Store / Google Play badges as official artwork while making the
   generator CTA readable and clearly clickable on pink/violet backgrounds.
-------------------------------------------------------------------------- */
.lc-v2-generatorCtaRow{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  margin-top:14px;
  width:100%;
}
.lc-v2-generatorCtaRow--center{
  justify-content:center;
  margin-top:22px;
}
.lc-v2-generatorButton,
.lc-v2-generatorButton:visited{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:58px!important;
  padding:0 28px!important;
  border-radius:999px!important;
  background:#ffffff!important;
  color:#e81962!important;
  border:2px solid rgba(255,255,255,.92)!important;
  box-shadow:0 18px 42px rgba(45,0,36,.26)!important;
  font-family:Helvetica Neue,Arial,sans-serif!important;
  font-size:18px!important;
  font-weight:950!important;
  line-height:1!important;
  text-decoration:none!important;
  text-shadow:none!important;
  opacity:1!important;
  white-space:nowrap!important;
  max-width:100%;
}
.lc-v2-generatorButton:hover{
  opacity:1!important;
  color:#b20bbd!important;
  transform:translateY(-2px)!important;
  box-shadow:0 22px 50px rgba(45,0,36,.32)!important;
}
@media only screen and (max-width:800px){
  .lc-v2-generatorCtaRow{justify-content:center;}
  .lc-v2-generatorButton{width:100%;white-space:normal!important;text-align:center!important;}
}


/* --------------------------------------------------------------------------
   V4.7 — Homepage FAQ + About/GEO trust sections
-------------------------------------------------------------------------- */
.lc-section7-faq{
  min-height:auto!important;
  padding:96px 0!important;
}
.lc-v2-faqGrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
  margin-top:34px;
}
.lc-v2-faqItem{
  background:#fff;
  border:1px solid rgba(232,25,98,.16);
  border-radius:24px;
  box-shadow:0 18px 46px rgba(125,21,84,.08);
  overflow:hidden;
}
.lc-v2-faqItem summary{
  cursor:pointer;
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:22px 24px;
  color:var(--lc-text);
  font-size:18px;
  line-height:1.25;
  font-weight:950;
}
.lc-v2-faqItem summary::-webkit-details-marker{display:none;}
.lc-v2-faqItem summary::after{
  content:"+";
  flex:0 0 auto;
  width:34px;
  height:34px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#ffe3ee;
  color:var(--lc-hot);
  font-size:22px;
  font-weight:950;
}
.lc-v2-faqItem[open] summary::after{content:"−";}
.lc-v2-faqItem p{
  margin:0;
  padding:0 24px 24px;
  color:var(--lc-muted);
  font-size:16px;
  line-height:1.65;
  font-weight:700;
}
.lc-v2-faqCta{
  display:flex;
  justify-content:center;
  margin-top:34px;
}

.lc-section8-about{
  min-height:auto!important;
  padding:96px 0!important;
  background:linear-gradient(180deg,#171124 0%,#100d1b 100%)!important;
  color:#fff!important;
}
.lc-section8-about::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 10%, rgba(255,79,147,.20), transparent 32%),
    radial-gradient(circle at 88% 18%, rgba(156,53,236,.22), transparent 34%);
}
.lc-section8-about .lc-v2-wrap{position:relative;z-index:1;}
.lc-v2-aboutHeader{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,520px);
  gap:48px;
  align-items:end;
  margin-bottom:34px;
}
.lc-v2-aboutHeader .lc-v2-kicker{color:#ffb5d2;}
.lc-v2-aboutHeader .lc-v2-kicker:before{background:#ffb5d2;box-shadow:0 0 0 6px rgba(255,181,210,.12);}
.lc-v2-aboutHeader h2{
  margin:0;
  color:#fff;
  font-size:clamp(34px,5vw,64px);
  line-height:.98;
  letter-spacing:-.06em;
  font-weight:950;
}
.lc-v2-aboutHeader p{
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:20px;
  line-height:1.55;
  font-weight:750;
}
.lc-v2-aboutPanel{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
  padding:22px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:34px;
  background:rgba(255,255,255,.08);
  box-shadow:0 26px 80px rgba(0,0,0,.24);
  text-decoration:none;
}
.lc-v2-aboutPanel:hover{opacity:1;transform:translateY(-2px);}
.lc-v2-aboutCard{
  min-height:190px;
  padding:28px;
  border-radius:26px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
}
.lc-v2-aboutCard strong{
  display:block;
  margin-bottom:16px;
  color:#fff;
  font-size:clamp(34px,4vw,54px);
  line-height:1;
  letter-spacing:-.055em;
  font-weight:950;
}
.lc-v2-aboutCard span{
  display:block;
  color:rgba(255,255,255,.70);
  font-size:18px;
  line-height:1.48;
  font-weight:750;
}
.lc-v2-aboutFooter{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:28px;
  margin-top:26px;
}
.lc-v2-aboutFooter p{
  max-width:760px;
  margin:0;
  color:rgba(255,255,255,.66);
  font-size:16px;
  line-height:1.6;
  font-weight:700;
}
.lc-v2-aboutFooter a{
  flex:0 0 auto;
  display:inline-flex;
  min-height:54px;
  align-items:center;
  justify-content:center;
  padding:0 24px;
  border-radius:999px;
  background:#fff;
  color:var(--lc-hot)!important;
  font-size:16px;
  font-weight:950;
  text-decoration:none;
  box-shadow:0 18px 44px rgba(0,0,0,.22);
}

@media (max-width:900px){
  .lc-v2-faqGrid{grid-template-columns:1fr;}
  .lc-section7-faq,.lc-section8-about{padding:70px 0!important;}
  .lc-v2-aboutHeader{grid-template-columns:1fr;gap:18px;}
  .lc-v2-aboutPanel{grid-template-columns:1fr;padding:14px;border-radius:28px;}
  .lc-v2-aboutCard{min-height:auto;padding:24px;}
  .lc-v2-aboutFooter{flex-direction:column;align-items:flex-start;}
  .lc-v2-aboutFooter a{width:100%;}
}


/* --------------------------------------------------------------------------
   V4.8 — FAQ desktop grid height fix
   Empêche la carte voisine de s'étirer quand une FAQ est ouverte.
-------------------------------------------------------------------------- */
.lc-v2-faqGrid{
  align-items:start!important;
}
.lc-v2-faqItem{
  align-self:start!important;
}


/* --------------------------------------------------------------------------
   V5.0 — Hero responsive & header mobile fixes (2026-05-18)
   Bugs corrigés :
   1. Desktop  — téléphone trop petit (max 350 px → 420 px), espace rose vide
   2. Mobile   — téléphone croppé/zoomé : rotation + min-height rigide sur heroVisual
   3. Header   — logo et titre trop imposants sur mobiles ≤ 767 px
   4. Hero H1  — trop grand sur petits écrans (clamp bloqué à 42 px min)
-------------------------------------------------------------------------- */

/* ── 1. Règle de base : l'image téléphone garde toujours son ratio ── */
.lc-v2-phoneShell img{
  display:block;
  width:100%;
  height:auto;
  object-fit:contain;
}

/* ── 2. Desktop : téléphone plus grand, heroVisual sans min-height rigide ── */
.lc-v2-phoneShell{
  width:min(88%,420px);           /* était min(78%,350px) */
}
.lc-v2-heroVisual{
  min-height:0;                   /* était 520px — laisse le téléphone dicter la hauteur */
}

/* ── 3. Tablette / Mobile ≤ 980 px : empilement propre, rotation supprimée ── */
@media only screen and (max-width:980px){
  .lc-v2-heroVisual{
    min-height:0!important;       /* écrase min-height:460px / 340px hérités */
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%;
    overflow:visible!important;
  }
  .lc-v2-phoneShell{
    width:min(72%,300px)!important; /* était min(62%,280px) */
    transform:none!important;       /* supprime rotate(3deg) : cause principale du crop */
    margin:0 auto;
  }
  .lc-v2-floatCard{
    display:none!important;         /* cartes flottantes masquées sur tablette/mobile */
  }
}

/* ── 4. Mobile ≤ 767 px : header compact + hero lisible ── */
@media only screen and (max-width:767px){
  /* Header — dimensions réduites */
  .lc-header-container{padding:8px 14px!important;gap:6px!important;}
  .lc-header-logoImage{width:48px!important;min-width:48px!important;height:48px!important;padding:0!important;}
  .lc-header-logoImage img{width:48px!important;height:48px!important;max-height:48px!important;border-radius:14px!important;}
  .lc-header-logo{gap:10px!important;margin-bottom:0!important;}
  .lc-header-logoContainer :first-child{font-size:clamp(17px,4.8vw,22px)!important;line-height:1.1!important;}
  .lc-header-logoContainer :nth-child(2){font-size:11px!important;line-height:1.25!important;}

  /* Nav — boutons plus serrés pour tenir sur une ligne */
  .lc-headerMenu-list{gap:6px!important;padding:8px 0 0!important;}
  .lc-headerMenu-item{font-size:12px!important;}
  .lc-headerMenu-playButton{padding:7px 12px!important;font-size:12px!important;}

  /* H1 — fluide sur petit écran */
  .lc-v2-heroContent h1{
    font-size:clamp(28px,8.5vw,44px)!important;
    letter-spacing:-.04em;
    line-height:1;
    margin-bottom:16px;
  }

  /* Lead — interlignes compact */
  .lc-v2-lead{
    font-size:clamp(15px,4vw,18px)!important;
    line-height:1.48!important;
    margin-bottom:20px!important;
  }

  /* Téléphone — taille maîtrisée mobile */
  .lc-v2-phoneShell{width:min(80%,280px)!important;}
}

/* ── 5. Très petit mobile ≤ 420 px ── */
@media only screen and (max-width:420px){
  .lc-header-logoContainer :nth-child(2){display:none!important;}
  .lc-v2-heroContent h1{font-size:clamp(26px,7.5vw,34px)!important;}
}

/* --------------------------------------------------------------------------
   V5.1 — Hero CTA spacing : espace entre "Jouer en ligne" et les badges stores
-------------------------------------------------------------------------- */
.lc-v2-generatorCtaRow{
  margin-top:20px;
  margin-bottom:20px;
}

/* --------------------------------------------------------------------------
   V6.0 — Hero background image : ambiance couple & présence humaine
   Réintègre section1_background_.webp avec un overlay gradient directionnel
   semi-transparent pour allier émotion, lisibilité et look premium.
   Desktop  : image 2550×1700 (321 KB), overlay rose→violet 88%→75%
   Mobile   : image 1024×683 (83 KB), overlay plus opaque pour le texte
-------------------------------------------------------------------------- */

/* Overlay directionnel : plus opaque à gauche (texte), plus léger à droite (téléphone) */
.lc-v2-hero{
  background:
    linear-gradient(
      110deg,
      rgba(200,0,80,.88)   0%,
      rgba(225,20,100,.81) 36%,
      rgba(148,40,215,.75) 66%,
      rgba(100,20,175,.82) 100%
    ),
    url('../images/section1_background_.webp') center 35% / cover no-repeat;
}

/* Cercles décoratifs : atténués avec la vraie photo en arrière-plan */
.lc-v2-heroBg:before,
.lc-v2-heroBg:after{
  background:rgba(255,255,255,.06);
}

/* Mobile ≤ 767px : photo supprimée (crop défavorable), gradient premium seul */
@media only screen and (max-width:767px){
  .lc-v2-hero{
    background:
      radial-gradient(circle at 18% 12%, rgba(255,255,255,.16), transparent 34%),
      linear-gradient(135deg, #ff3b8f 0%, #e91f65 45%, #8837e8 100%);
  }
  /* Cercles décoratifs : ramener à l'opacité originale sans photo */
  .lc-v2-heroBg:before,
  .lc-v2-heroBg:after{
    background:rgba(255,255,255,.13);
  }
}

/* ==========================================================================
   V7.1 — 2026-05-18 — Daily Challenge homepage section — PREMIUM REDESIGN
   Déplacée juste après le hero (section1). Dark game card sur fond pastel.
   ========================================================================== */

/* Section */
.lc-v2-dailySection{
  background:linear-gradient(155deg,#fdf4fe 0%,#f2e8ff 45%,#fff0f5 100%);
  min-height:auto!important;
  padding:80px 0;
  overflow:hidden;
}

/* Layout 2 colonnes */
.lc-v2-dailyWrap{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:64px;
  align-items:center;
}

/* ---------- Colonne gauche : intro ---------- */
.lc-v2-dailyH2{
  font-size:clamp(30px,3.8vw,50px);
  line-height:1.03;
  letter-spacing:-.05em;
  font-weight:950;
  color:var(--lc-dark);
  margin:0 0 16px;
}

.lc-v2-dailyLead{
  font-size:17px;
  line-height:1.65;
  color:var(--lc-muted);
  margin:0 0 28px;
  max-width:420px;
}

.lc-v2-dailyCta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:50px;
  padding:0 26px;
  border-radius:16px;
  background:linear-gradient(135deg,#ff3b8f,#e91f65 50%,#8837e8);
  color:#fff;
  font-weight:900;
  font-size:15px;
  text-decoration:none;
  box-shadow:0 12px 32px rgba(232,25,98,.35);
  transition:transform .18s ease,box-shadow .18s ease;
  margin-bottom:16px;
}
.lc-v2-dailyCta:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(232,25,98,.42);opacity:1;}

.lc-v2-dailyMicroAlt{
  font-size:13px;
  color:var(--lc-muted);
  margin:0;
  line-height:1.5;
}

/* ---------- Colonne droite : dark game card ---------- */
.lc-v2-gameCard{
  position:relative;
  border-radius:28px;
  padding:34px 32px 28px;
  overflow:hidden;
  background-color:#1c0830;
  background-image:
    linear-gradient(112deg,rgba(24,5,38,.08) 0%,rgba(38,8,58,.03) 46%,rgba(38,4,26,.08) 100%),
    url('/static/images/homepage/daily-challenge-couple.jpg');
  background-image:
    linear-gradient(112deg,rgba(24,5,38,.08) 0%,rgba(38,8,58,.03) 46%,rgba(38,4,26,.08) 100%),
    image-set(
      url('/static/images/homepage/daily-challenge-couple.webp') type('image/webp'),
      url('/static/images/homepage/daily-challenge-couple.jpg') type('image/jpeg')
    );
  background-size:cover;
  background-position:center 56%;
  background-repeat:no-repeat;
  box-shadow:
    0 40px 80px rgba(50,0,40,.52),
    0 12px 32px rgba(136,55,232,.26),
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 -1px 0 rgba(0,0,0,.3);
  border:1px solid rgba(255,255,255,.05);
}

.lc-v2-gameCard::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(15,3,24,.16) 0%,rgba(15,3,24,.06) 46%,rgba(15,3,24,.02) 100%),
    linear-gradient(180deg,rgba(15,3,24,.04) 0%,rgba(15,3,24,.08) 100%);
  z-index:0;
}

/* Halos lumineux */
.lc-v2-gcGlow{
  position:absolute;
  border-radius:999px;
  pointer-events:none;
  z-index:0;
}
.lc-v2-gcGlow--tr{
  width:280px;height:280px;
  background:radial-gradient(circle,rgba(255,59,143,.12) 0%,transparent 70%);
  top:-90px;right:-70px;
}
.lc-v2-gcGlow--bl{
  width:200px;height:200px;
  background:radial-gradient(circle,rgba(141,60,247,.12) 0%,transparent 70%);
  bottom:-70px;left:-50px;
}

/* Badges */
.lc-v2-gcBadges{
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:18px;
  flex-wrap:wrap;
  position:relative;
  z-index:1;
}

.lc-v2-gcBadge{
  display:inline-flex;
  align-items:center;
  padding:5px 13px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
  white-space:nowrap;
}

.lc-v2-gcBadge--primary{
  background:rgba(35,10,45,.20);
  border:1px solid rgba(255,255,255,.32);
  color:rgba(255,255,255,.95);
  backdrop-filter:blur(7px);
  text-shadow:0 1px 10px rgba(0,0,0,.45);
}

/* Badges catégorie */
.lc-v2-gcBadge--cat-fun{background:rgba(255,180,0,.22);border:1px solid rgba(255,180,0,.35);color:#fde68a;}
.lc-v2-gcBadge--cat-romantique{background:rgba(255,100,170,.25);border:1px solid rgba(255,100,170,.4);color:#fdb8d8;}
.lc-v2-gcBadge--cat-coquin{background:rgba(141,60,247,.32);border:1px solid rgba(141,60,247,.5);color:#d4a8ff;}
.lc-v2-gcBadge--cat-hot{background:rgba(220,38,38,.28);border:1px solid rgba(220,38,38,.45);color:#fca5a5;}

.lc-v2-gcBadge--soon{
  background:rgba(255,255,255,.06);
  border:1px solid rgba(255,255,255,.13);
  color:rgba(255,255,255,.5);
  font-weight:600;
  letter-spacing:0;
  text-transform:none;
  font-style:italic;
}

/* Titre */
.lc-v2-gcTitle{
  font-size:clamp(20px,2.8vw,26px);
  font-weight:950;
  color:#fff;
  line-height:1.15;
  letter-spacing:-.04em;
  margin:0 0 12px;
  position:relative;
  z-index:1;
  text-shadow:0 2px 18px rgba(0,0,0,.62);
}

/* Texte */
.lc-v2-gcText{
  font-size:15px;
  line-height:1.62;
  color:rgba(255,255,255,.90);
  margin:0 0 24px;
  position:relative;
  z-index:1;
  overflow:hidden;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
  text-shadow:0 2px 14px rgba(0,0,0,.58);
}
.lc-v2-gcText--locked{color:rgba(255,255,255,.82);font-style:italic;}

/* CTA */
.lc-v2-gcCta{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:13px 22px;
  background:#fff;
  color:var(--lc-hot);
  border-radius:14px;
  font-weight:900;
  font-size:14px;
  text-decoration:none;
  box-shadow:0 8px 24px rgba(0,0,0,.28);
  transition:transform .18s ease,box-shadow .18s ease;
  position:relative;
  z-index:1;
  white-space:nowrap;
}
.lc-v2-gcCta:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(0,0,0,.35);opacity:1;}

/* Microcopy */
.lc-v2-gcMicro{
  font-size:12px;
  color:rgba(255,255,255,.70);
  margin:14px 0 0;
  position:relative;
  z-index:1;
  line-height:1.4;
  text-shadow:0 1px 10px rgba(0,0,0,.55);
}

/* ---------- Responsive ---------- */
@media only screen and (max-width:980px){
  .lc-v2-dailyWrap{grid-template-columns:1fr;gap:32px;}
  .lc-v2-dailyLead{max-width:100%;}
  .lc-v2-gameCard{max-width:520px;margin:0 auto;}
}

@media only screen and (max-width:767px){
  .lc-v2-dailySection{padding:56px 0;}
  .lc-v2-gameCard{
    display:flex;
    flex-direction:column;
    max-width:100%;
    min-height:clamp(440px,72vw,540px);
    padding:26px 22px 24px;
    border-radius:22px;
    background-position:center 58%;
  }
  .lc-v2-dailyCta{width:100%;justify-content:center;}
  .lc-v2-gcCta{
    width:100%;
    justify-content:center;
    min-height:60px;
    margin-top:auto;
    border-radius:20px;
  }
  .lc-v2-gcMicro{display:none;}
}

@media only screen and (max-width:480px){
  .lc-v2-dailyH2{font-size:28px;}
  .lc-v2-gcTitle{font-size:19px;}
  .lc-v2-gcText{font-size:14px;}
}

/* --------------------------------------------------------------------------
   V7.0 — Hiérarchie CTA : app-first mobile, jouer-en-ligne-first desktop
   DOM order : generatorCtaRow → appDownloadCta → storeButtons → microcopy
   Mobile  : appDownloadCta (primary) > stores > microcopy > generatorCta (ghost)
   Desktop : generatorCta (primary) > appDownloadCta (secondary) > stores > microcopy
-------------------------------------------------------------------------- */

/* Wrapper flex-column : permet le re-ordering sans toucher au DOM */
.lc-v2-heroCtas {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  gap: 0;
  margin-top: 20px;
}

/* Reset margin-top interne (hérité V5.1) géré désormais par le flux flex */
.lc-v2-heroCtas .lc-v2-generatorCtaRow {
  margin-top: 0 !important;
  margin-bottom: 16px !important;
}

/* Texte responsive dans le bouton play */
.lc-v2-ctaText--mobile  { display: none; }
.lc-v2-ctaText--desktop { display: inline; }

/* App download CTA — style secondaire par défaut (desktop) */
.lc-v2-appDownloadCta,
.lc-v2-appDownloadCta:visited {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 0 22px;
  border-radius: 999px;
  background: rgba(255,255,255,.13);
  border: 1.5px solid rgba(255,255,255,.5);
  color: rgba(255,255,255,.95);
  font-family: Helvetica Neue,Arial,sans-serif;
  font-size: 15px;
  font-weight: 750;
  text-decoration: none;
  white-space: nowrap;
  transition: background .18s ease;
}
.lc-v2-appDownloadCta:hover {
  background: rgba(255,255,255,.22);
  opacity: 1;
  color: #fff;
}

/* Ordre explicite desktop */
@media only screen and (min-width:801px) {
  .lc-v2-heroCtas .lc-v2-generatorCtaRow { order: 1; }
  .lc-v2-heroCtas .lc-v2-appDownloadCta  { order: 2; }
  .lc-v2-heroCtas .lc-v2-storeButtons    { order: 3; }
  .lc-v2-heroCtas .lc-v24-heroMicrocopy  { order: 4; }
}

/* Mobile ≤800px : inversion hiérarchie */
@media only screen and (max-width:800px) {
  .lc-v2-heroCtas { align-items: stretch; }

  /* Ordre : app (1) → badges (2) → microcopy (3) → jouer (4) */
  .lc-v2-heroCtas .lc-v2-appDownloadCta  { order: 1; }
  .lc-v2-heroCtas .lc-v2-storeButtons    { order: 2; }
  .lc-v2-heroCtas .lc-v24-heroMicrocopy  { order: 3; }
  .lc-v2-heroCtas .lc-v2-generatorCtaRow { order: 4; }

  /* Marges mobile */
  .lc-v2-heroCtas .lc-v2-generatorCtaRow {
    margin-top: 12px !important;
    margin-bottom: 0 !important;
  }
  .lc-v2-heroCtas .lc-v24-heroMicrocopy {
    margin: 8px 0 0 !important;
  }

  /* App CTA : style primaire (blanc, charte generatorButton) */
  .lc-v2-appDownloadCta,
  .lc-v2-appDownloadCta:visited {
    background: #ffffff !important;
    color: #e81962 !important;
    border: 2px solid rgba(255,255,255,.92) !important;
    font-size: 18px !important;
    font-weight: 950 !important;
    min-height: 58px !important;
    box-shadow: 0 18px 42px rgba(45,0,36,.26) !important;
    width: 100% !important;
    border-radius: 999px !important;
    margin-bottom: 16px;
  }
  .lc-v2-appDownloadCta:hover {
    background: #fff !important;
    color: #b20bbd !important;
    opacity: 1;
  }

  /* Play CTA : style secondaire ghost */
  .lc-v2-heroCtas .lc-v2-generatorButton,
  .lc-v2-heroCtas .lc-v2-generatorButton:visited {
    background: transparent !important;
    color: rgba(255,255,255,.9) !important;
    border: 1.5px solid rgba(255,255,255,.6) !important;
    font-size: 15px !important;
    font-weight: 750 !important;
    min-height: 50px !important;
    box-shadow: none !important;
  }
  .lc-v2-heroCtas .lc-v2-generatorButton:hover {
    background: rgba(255,255,255,.1) !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
  }

  /* Texte responsive */
  .lc-v2-ctaText--desktop { display: none; }
  .lc-v2-ctaText--mobile  { display: inline; }
}

/* --------------------------------------------------------------------------
   V8.0 — Hero CTA refinement (2026-05-19)
   Supprime le bouton intermédiaire "Télécharger l'app gratuite".
   Les badges App Store / Google Play deviennent les vrais CTA de téléchargement.
   "Jouer en ligne sans installer" → "Jouer en ligne".
   Mobile : appBlock éditorial (label+micro+badges) → ghost "Jouer en ligne"
   Desktop: ghost "Jouer en ligne" (primary) → badges (appBlock compact, label masqué)
-------------------------------------------------------------------------- */

/* Sécurité : si ancien HTML en cache, masquer l'ancien bouton et l'ancienne microcopy */
.lc-v2-appDownloadCta { display: none !important; }
.lc-v2-heroCtas > .lc-v24-heroMicrocopy { display: none !important; }
/* Masquer les spans de texte dual (supprimés du DOM, garde en sécurité) */
.lc-v2-ctaText--desktop,
.lc-v2-ctaText--mobile { display: inline !important; }

/* --- Bloc éditorial app (remplace le bouton) --- */
.lc-v2-appBlock {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}

.lc-v2-appBlock__label {
  margin: 0 0 5px;
  color: #fff;
  font-size: 1.08rem;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: -.01em;
}

.lc-v2-appBlock__micro {
  margin: 0 0 14px;
  color: rgba(255,255,255,.70);
  font-size: 13px;
  font-weight: 700;
  line-height: 1.45;
}

/* Reset l'order V7.0 qui ciblait .lc-v2-heroCtas .lc-v2-storeButtons
   — storeButtons est maintenant enfant de appBlock, pas de heroCtas */
.lc-v2-appBlock .lc-v2-storeButtons {
  order: initial !important;
  margin-top: 0;
}

/* --- Desktop ≥801px : generatorCta (primary) → appBlock (badges, label masqué) --- */
@media only screen and (min-width: 801px) {
  .lc-v2-heroCtas .lc-v2-generatorCtaRow {
    order: 1;
    margin-top: 0 !important;
    margin-bottom: 20px !important;
  }
  .lc-v2-heroCtas .lc-v2-appBlock {
    order: 2;
  }
  /* Desktop : label et micro superflus — les badges sont auto-explicatifs */
  .lc-v2-appBlock__label,
  .lc-v2-appBlock__micro {
    display: none;
  }
}

/* --- Mobile ≤800px : appBlock (label+micro+badges) → ghost "Jouer en ligne" --- */
@media only screen and (max-width: 800px) {
  .lc-v2-heroCtas { align-items: stretch; }

  .lc-v2-heroCtas .lc-v2-appBlock {
    order: 1 !important;
    align-items: stretch;
    margin-bottom: 16px;
  }
  .lc-v2-heroCtas .lc-v2-generatorCtaRow {
    order: 2 !important;
    margin-top: 4px !important;
    margin-bottom: 0 !important;
  }

  /* Badges dans appBlock : côte à côte, ratio préservé */
  .lc-v2-appBlock .lc-v2-storeButtons {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    width: 100%;
  }
  .lc-v2-appBlock .lc-v2-storeButtons a {
    flex: 1 1 auto;
    max-width: calc(50% - 6px) !important;
    justify-content: center !important;
  }
  .lc-v2-appBlock .lc-v2-storeButtons img {
    height: auto !important;
    max-height: 52px !important;
    width: 100% !important;
    max-width: 190px !important;
    object-fit: contain !important;
  }

  /* Ghost "Jouer en ligne" : style secondaire sobre */
  .lc-v2-heroCtas .lc-v2-generatorButton,
  .lc-v2-heroCtas .lc-v2-generatorButton:visited {
    background: transparent !important;
    color: rgba(255,255,255,.88) !important;
    border: 1.5px solid rgba(255,255,255,.55) !important;
    font-size: 15px !important;
    font-weight: 750 !important;
    min-height: 50px !important;
    box-shadow: none !important;
    width: 100%;
  }
  .lc-v2-heroCtas .lc-v2-generatorButton:hover {
    background: rgba(255,255,255,.09) !important;
    color: #fff !important;
    transform: none !important;
    box-shadow: none !important;
  }
}

/* ============================================================
   Editorial articles grid — lc-eArticles v2 (premium)
   ============================================================ */
.lc-eArticles{margin:8px 0 34px;}

/* Section head */
.lc-eArticles__head{text-align:center;margin-bottom:32px;}
.lc-eArticles__kicker{
  display:inline-flex;align-items:center;gap:8px;
  color:var(--lc-hot);font-size:12px;font-weight:900;
  letter-spacing:.12em;text-transform:uppercase;margin:0 0 10px;
}
.lc-eArticles__kicker::before{
  content:"";width:8px;height:8px;border-radius:999px;
  background:var(--lc-hot);box-shadow:0 0 0 5px rgba(232,25,98,.12);
}
.lc-eArticles__headTitle{
  font-size:clamp(24px,3vw,36px);line-height:1.05;letter-spacing:-.04em;
  font-weight:900;color:var(--lc-text);margin:0;
}

/* 3-col grid */
.lc-eArticles__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  align-items:start;
}

/* ── Base card ── */
.lc-eCard{
  display:flex;flex-direction:column;
  border-radius:22px;overflow:hidden;
  text-decoration:none;color:inherit;
  transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease;
  position:relative;
  -webkit-font-smoothing:antialiased;
}
.lc-eCard:hover{transform:translateY(-5px);opacity:1;}
.lc-eCard:focus-visible{outline:3px solid var(--lc-hot);outline-offset:3px;}

/* Common label */
.lc-eCard__label{
  display:inline-block;font-size:10px;font-weight:900;
  letter-spacing:.11em;text-transform:uppercase;margin-bottom:10px;
  border-radius:999px;padding:4px 11px;
}
/* Common CTA */
.lc-eCard__cta{
  display:inline-flex;align-items:center;gap:6px;
  font-weight:900;font-size:13px;
}

/* ═══════════════════════════════════════
   FEATURED — span 2 cols, cinematic
═══════════════════════════════════════ */
.lc-eCard--featured{
  grid-column:span 2;position:relative;min-height:420px;
  background:linear-gradient(135deg,#ff2f7d 0%,#e81962 38%,#8d3cf7 100%);
  justify-content:flex-end;
  box-shadow:0 18px 50px rgba(125,21,84,.18);
}
.lc-eCard--featured:hover{box-shadow:0 30px 68px rgba(125,21,84,.28);}

/* Background image */
.lc-eCard__bg{
  position:absolute;inset:0;
  background-size:cover;background-position:center;
  transition:transform .5s cubic-bezier(.22,1,.36,1);
}
.lc-eCard--featured:hover .lc-eCard__bg{transform:scale(1.06);}

/* Gradient fallback background */
.lc-eCard__bg--gradient{
  background:linear-gradient(135deg,#ff2f7d 0%,#e81962 35%,#8d3cf7 72%,#6b2fd4 100%);
}
/* Subtle dot texture on gradient fallback */
.lc-eCard__bg--gradient::after{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(circle,rgba(255,255,255,.09) 1px,transparent 1px);
  background-size:26px 26px;
}

/* Cinematic overlay — dark at bottom, transparent at top */
.lc-eCard__overlay{
  position:absolute;inset:0;
  background:linear-gradient(
    180deg,
    rgba(18,3,12,.06) 0%,
    rgba(18,3,12,.42) 40%,
    rgba(18,3,12,.86) 100%
  );
}

/* Content */
.lc-eCard--featured .lc-eCard__content{
  position:relative;z-index:2;padding:32px 36px;color:#fff;
}
.lc-eCard--featured .lc-eCard__label{
  background:rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.28);
  color:#fff;
}
.lc-eCard--featured .lc-eCard__title{
  font-size:clamp(24px,2.6vw,36px);line-height:1.04;
  letter-spacing:-.045em;font-weight:950;color:#fff;margin:0;
  text-shadow:0 2px 14px rgba(0,0,0,.28);
}
.lc-eCard--featured .lc-eCard__desc{
  color:rgba(255,255,255,.82);font-size:15px;line-height:1.55;margin:12px 0 0;
  text-shadow:0 1px 6px rgba(0,0,0,.18);
}
/* Pill CTA button */
.lc-eCard--featured .lc-eCard__cta{
  display:inline-flex;align-items:center;gap:8px;
  margin-top:22px;
  padding:10px 22px;
  border-radius:999px;
  background:rgba(255,255,255,.18);
  backdrop-filter:blur(8px);
  border:1px solid rgba(255,255,255,.32);
  color:#fff;font-size:14px;font-weight:900;letter-spacing:.01em;
  transition:background .18s ease;
}
.lc-eCard--featured:hover .lc-eCard__cta{background:rgba(255,255,255,.30);}

/* ═══════════════════════════════════════
   IMAGE — media top, gradient bleed
═══════════════════════════════════════ */
.lc-eCard--image{
  background:#fff;
  border:1px solid var(--lc-line);
  box-shadow:0 10px 30px rgba(125,21,84,.09);
}
.lc-eCard--image:hover{box-shadow:0 22px 54px rgba(125,21,84,.16);}

/* Media wrapper */
.lc-eCard__media{
  position:relative;aspect-ratio:3/2;overflow:hidden;
  background:linear-gradient(135deg,#ffd6e8 0%,#ead4ff 100%);
  flex-shrink:0;
}
.lc-eCard__media img{
  display:block;width:100%;height:100%;object-fit:cover;
  transition:transform .5s cubic-bezier(.22,1,.36,1);
}
.lc-eCard--image:hover .lc-eCard__media img{transform:scale(1.06);}

/* Soft gradient bleed at the bottom of the image */
.lc-eCard__media::after{
  content:"";position:absolute;bottom:0;left:0;right:0;height:45%;
  background:linear-gradient(to bottom,transparent 0%,rgba(255,255,255,.92) 100%);
  pointer-events:none;
}

/* Fallback media placeholder */
.lc-eCard__mediaFallback{
  width:100%;height:100%;
  background:linear-gradient(135deg,#ffd6e8 0%,#f0d4ff 48%,#ead4ff 100%);
  position:relative;display:flex;align-items:center;justify-content:center;
}
.lc-eCard__mediaFallback::after{
  content:"\2665";font-size:38px;color:rgba(232,25,98,.18);
}

/* Content */
.lc-eCard--image .lc-eCard__content{
  padding:18px 22px 22px;flex:1;display:flex;flex-direction:column;
}
.lc-eCard--image .lc-eCard__label{
  background:rgba(232,25,98,.09);color:var(--lc-hot);
}
.lc-eCard--image .lc-eCard__title{
  font-size:clamp(17px,1.8vw,21px);line-height:1.1;
  letter-spacing:-.03em;font-weight:900;color:var(--lc-text);margin:0;
}
.lc-eCard--image .lc-eCard__desc{
  color:var(--lc-muted);font-size:14px;line-height:1.52;margin:10px 0 0;flex:1;
}
.lc-eCard--image .lc-eCard__cta{
  color:var(--lc-hot);font-size:13px;font-weight:900;margin-top:16px;
}

/* ═══════════════════════════════════════
   COMPACT — unique gradient accent bars
═══════════════════════════════════════ */
.lc-eCard--compact{
  background:#fff;
  border:1px solid var(--lc-line);
  box-shadow:0 5px 18px rgba(125,21,84,.05);
}
.lc-eCard--compact:hover{box-shadow:0 14px 38px rgba(125,21,84,.13);}

/* Accent bar — gradient set via inline style (cycling per card) */
.lc-eCard__accent{height:5px;flex-shrink:0;}

.lc-eCard--compact .lc-eCard__content{
  padding:15px 20px 20px;flex:1;display:flex;flex-direction:column;
}
.lc-eCard--compact .lc-eCard__label{
  background:rgba(232,25,98,.08);color:var(--lc-hot);font-size:10px;
}
.lc-eCard--compact .lc-eCard__title{
  font-size:clamp(14px,1.3vw,16px);line-height:1.22;
  letter-spacing:-.025em;font-weight:900;color:var(--lc-text);margin:0;
}
.lc-eCard--compact .lc-eCard__desc{
  color:var(--lc-muted);font-size:13px;line-height:1.48;margin:7px 0 0;flex:1;
}
.lc-eCard--compact .lc-eCard__cta{
  color:var(--lc-hot);font-size:12px;font-weight:900;margin-top:12px;
}

/* ── Reduced motion ── */
@media(prefers-reduced-motion:reduce){
  .lc-eCard{transition:none;}
  .lc-eCard__bg,.lc-eCard__media img{transition:none;}
  .lc-eCard--featured .lc-eCard__cta{transition:none;}
}

/* ── Responsive ── */
@media only screen and (max-width:980px){
  .lc-eArticles__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;}
  .lc-eCard--featured{grid-column:1/-1;min-height:340px;}
  .lc-eCard--featured .lc-eCard__title{font-size:clamp(22px,4vw,32px);}
}
@media only screen and (max-width:640px){
  .lc-eArticles__grid{grid-template-columns:minmax(0,1fr);gap:14px;}
  .lc-eCard--featured{grid-column:auto;min-height:280px;}
  .lc-eCard--featured .lc-eCard__content{padding:22px;}
  .lc-eCard--featured .lc-eCard__title{font-size:clamp(20px,5.5vw,28px);}
}
