/* tuffpuffsuisse.com — T2 CH-FR, angle « avis / fiable / retrait ».
   Prefixe lm-. Valeurs de marque (fond, accent, geometrie du bouton, Barlow) = invariants
   TuffPuff ; composition, en-tete, bande du lobby, dock, pied et grille sont propres au site.
   Aucun style inline, aucune ressource externe (CSP : style-src 'self'). */

@font-face{font-family:"Barlow";font-style:normal;font-weight:400;font-display:swap;src:url("fonts/barlow-400.woff2") format("woff2")}
@font-face{font-family:"Barlow";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/barlow-600.woff2") format("woff2")}
@font-face{font-family:"Barlow";font-style:italic;font-weight:900;font-display:swap;src:url("fonts/barlow-900-italic.woff2") format("woff2")}
@font-face{font-family:"Barlow Semi Condensed";font-style:normal;font-weight:600;font-display:swap;src:url("fonts/barlow-semicondensed-600.woff2") format("woff2")}
@font-face{font-family:"Barlow Semi Condensed";font-style:normal;font-weight:800;font-display:swap;src:url("fonts/barlow-semicondensed-800.woff2") format("woff2")}
/* Police de secours alignee sur les metriques (valeurs de la marque, Brand_Design) :
   evite le saut de largeur au chargement, sans requete supplementaire. */
@font-face{font-family:"LM Barlow Fb";src:local("Arial"),local("Helvetica"),local("Liberation Sans");font-weight:400;size-adjust:95.95%;ascent-override:100%;descent-override:20%;line-gap-override:0%}
@font-face{font-family:"LM Barlow Fb";src:local("Arial"),local("Helvetica"),local("Liberation Sans");font-weight:600;size-adjust:97.5%;ascent-override:100%;descent-override:20%;line-gap-override:0%}
@font-face{font-family:"LM SC Fb";src:local("Arial"),local("Helvetica"),local("Liberation Sans");font-weight:600;size-adjust:88.14%;ascent-override:100%;descent-override:20%;line-gap-override:0%}
@font-face{font-family:"LM SC Fb";src:local("Arial"),local("Helvetica"),local("Liberation Sans");font-weight:800;size-adjust:90.35%;ascent-override:100%;descent-override:20%;line-gap-override:0%}
@font-face{font-family:"LM Italic Fb";src:local("Arial"),local("Helvetica"),local("Liberation Sans");font-style:italic;font-weight:900;size-adjust:89.71%;ascent-override:100%;descent-override:20%;line-gap-override:0%}

:root{
  --lm-bg:#18143B;
  --lm-deep:#161039;
  --lm-s1:#221E42;
  --lm-s2:#2B2749;
  --lm-s3:#373354;
  --lm-ink:#FFFFFF;
  --lm-ink2:#C9C6DC;
  --lm-mute:#9894B3;
  --lm-line:rgba(255,255,255,.10);
  --lm-line2:#6E698B;
  --lm-acc:#59FF8B;
  --lm-acc-grad:linear-gradient(90deg,#59FF8B 0%,#FDF45B 100%);
  --lm-promo:linear-gradient(90deg,#8D1CFF 0%,#8D1CFF 50%,#FF33EB 100%);
  --lm-pink:#FF7AF0;
  --lm-violet:#7045ED;
  --lm-f:Barlow,"LM Barlow Fb",-apple-system,"Segoe UI",sans-serif;
  --lm-fd:"Barlow Semi Condensed","LM SC Fb",Barlow,sans-serif;
  --lm-fi:Barlow,"LM Italic Fb",sans-serif;
  --lm-r:24px;
  --lm-w:1280px;
  --lm-read:800px;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;background:var(--lm-bg);color:var(--lm-ink);font-family:var(--lm-f);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;overflow-wrap:break-word}
img,svg{display:block;max-width:100%;height:auto}
a{color:var(--lm-acc);text-underline-offset:.18em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:2px solid var(--lm-acc);outline-offset:3px;border-radius:6px}
p{margin:0 0 16px;color:var(--lm-ink2)}
strong{color:var(--lm-ink);font-weight:600}
code{font-family:ui-monospace,Consolas,monospace;font-size:.88em;background:var(--lm-s2);border-radius:4px;padding:1px 5px;color:var(--lm-ink)}
h1,h2,h3{font-family:var(--lm-fd);font-weight:800;color:var(--lm-ink);margin:0;text-wrap:balance}
.lm-wrap{max-width:var(--lm-w);margin:0 auto;padding:0 16px}
@media(min-width:768px){.lm-wrap{padding:0 24px}}
@media(min-width:1280px){.lm-wrap{padding:0 32px}}
.lm-skip{position:absolute;left:12px;top:-64px;z-index:80;background:var(--lm-ink);color:#000;padding:10px 14px;border-radius:8px;font-weight:600}
.lm-skip:focus{top:12px}
.lm-nw{white-space:nowrap}
.lm-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.lm-ico{flex:none;width:18px;height:18px}

/* --- En-tete : liens texte soulignes au degrade promo, pastille 18+, menu deroulant --- */
.lm-hdr{background:var(--lm-bg);border-bottom:1px solid var(--lm-line);position:relative;z-index:30}
.lm-hrow{display:flex;align-items:center;gap:12px;height:56px}
@media(min-width:768px){.lm-hrow{height:64px;gap:16px}}
.lm-logo{display:inline-flex;align-items:center;flex:none;min-height:44px;border-radius:8px}
.lm-logo img{width:91px}
@media(min-width:768px){.lm-logo img{width:121px}}
.lm-nav{display:none}
@media(min-width:768px){
  .lm-nav{display:flex;align-self:stretch;margin-left:24px}
  .lm-nav a{position:relative;display:flex;align-items:center;padding:0 16px;color:var(--lm-ink2);text-decoration:none;font-weight:600;font-size:16px}
  .lm-nav a:hover{color:var(--lm-ink)}
  .lm-nav a[aria-current="page"]{color:var(--lm-ink)}
  .lm-nav a[aria-current="page"]::after{content:"";position:absolute;left:16px;right:16px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--lm-promo)}
}
.lm-rg{margin-left:auto;display:inline-flex;align-items:center;gap:10px;min-height:44px;min-width:44px;padding:0 6px;border-radius:999px;color:var(--lm-ink);text-decoration:none;font-weight:600;font-size:15px}
.lm-rg:hover .lm-rg-t{text-decoration:underline}
.lm-rg-t{display:none}
@media(min-width:1024px){.lm-rg{border:1px solid var(--lm-line2);padding:0 16px 0 6px}.lm-rg-t{display:inline}}
.lm-18{display:inline-grid;place-items:center;flex:none;width:34px;height:34px;border-radius:50%;border:2px solid var(--lm-ink);font:800 12px/1 var(--lm-fd);letter-spacing:-.01em;color:var(--lm-ink)}
.lm-menu{position:relative}
.lm-menu summary{list-style:none;display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 16px;border-radius:999px;background:var(--lm-s2);font:600 15px/1 var(--lm-fd);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;user-select:none}
.lm-menu summary::-webkit-details-marker{display:none}
.lm-menu[open] summary{background:var(--lm-s3)}
.lm-chev{width:12px;height:12px}
@media(prefers-reduced-motion:no-preference){.lm-chev{transition:transform .15s}}
.lm-menu[open] .lm-chev{transform:rotate(180deg)}
.lm-menu-p{position:absolute;right:0;top:calc(100% + 8px);width:min(280px,calc(100vw - 32px));background:var(--lm-s2);border:1px solid var(--lm-line);border-radius:16px;box-shadow:0 18px 40px rgba(0,0,0,.45);padding:8px}
.lm-menu-p ul{list-style:none;margin:0;padding:0}
.lm-menu-p a{display:flex;align-items:center;min-height:48px;padding:0 14px;border-radius:10px;color:var(--lm-ink);text-decoration:none;font-weight:600}
.lm-menu-p a:hover{background:var(--lm-s3)}
.lm-menu-p a[aria-current="page"]{box-shadow:inset 3px 0 0 #FF33EB;background:rgba(255,255,255,.04)}
@media(min-width:768px){.lm-menu{display:none}}

/* --- Premier ecran --------------------------------------------------------------- */
.lm-first{padding:16px 0 8px}
@media(min-width:768px){.lm-first{padding:24px 0 8px}}

/* Banniere : geometrie, degrade et typo de la vitrine de la marque. Bande de mention
   integree en pied de banniere (propre a ce site). */
.lm-pack{position:relative;overflow:hidden;border-radius:var(--lm-r);background-color:#221E42;
  background-image:radial-gradient(60% 90% at 78% 30%,rgba(255,51,235,.22),rgba(255,51,235,0) 70%),linear-gradient(180deg,rgba(43,39,73,0),#2B2749 133.21%),linear-gradient(85.59deg,#8800FF 3.62%,rgba(36,0,255,.6) 92.32%);
  display:flex;flex-direction:column;min-height:252px}
.lm-pack-in{position:relative;z-index:2;flex:1;padding:16px 16px 18px}
.lm-pack-name,.lm-pack-num,.lm-pack-row{max-width:260px}
@media(min-width:480px){.lm-pack-name,.lm-pack-num,.lm-pack-row{max-width:320px}}
@media(min-width:768px){.lm-pack{min-height:312px}.lm-pack-in{padding:28px 40px 24px}.lm-pack-name,.lm-pack-num,.lm-pack-row{max-width:460px}}
.lm-pack-name,.lm-pack-num,.lm-pack-row{font-family:var(--lm-fi);font-style:italic;font-weight:900;color:var(--lm-ink);margin:0}
.lm-pack-name{font-size:18px;line-height:20px;text-transform:uppercase}
.lm-pack-num{font-size:56px;line-height:1;color:var(--lm-acc);text-shadow:0 2px 0 rgba(0,0,0,.3);margin:6px 0 2px;letter-spacing:-.01em}
.lm-pack-row{font-size:18px;line-height:24px;display:flex;flex-wrap:wrap;align-items:center;gap:0 10px}
.lm-pack-max{white-space:nowrap}
.lm-pack-fs{white-space:nowrap}
@media(min-width:768px){
  .lm-pack-name{font-size:20px;line-height:24px}
  .lm-pack-num{font-size:80px;margin:8px 0 4px}
  .lm-pack-row{font-size:24px;line-height:36px}
  .lm-pack-fs{background:#fff;color:var(--lm-violet);border-radius:999px;padding:2px 12px;font-size:16px;line-height:20px}
}
.lm-pack-act{margin-top:16px}
@media(min-width:768px){.lm-pack-act{margin-top:22px}}
.lm-pack-art{position:absolute;z-index:1;right:0;top:8px;width:150px}
@media(max-width:374px){.lm-pack-art{width:118px}}
@media(min-width:480px){.lm-pack-art{width:200px;right:4%;top:auto;bottom:34px}}
@media(min-width:768px){.lm-pack-art{width:330px;right:3%;bottom:-6px}}
@media(min-width:1024px){.lm-pack-art{width:400px;right:8%;bottom:-40px}}
.lm-pack-ad{position:relative;z-index:3;margin:0;padding:9px 16px;background:rgba(22,16,57,.78);border-top:1px solid rgba(255,255,255,.12);font-size:13px;line-height:1.4;color:var(--lm-ink)}
@media(min-width:768px){.lm-pack-ad{padding:10px 40px}}

/* Bouton : geometrie de la marque (pilule 48 px, versales, reflet interne) */
.lm-btn{white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 26px;border-radius:999px;background:var(--lm-acc-grad);color:#000;text-decoration:none;font:600 16px/1.1 var(--lm-fd);letter-spacing:.02em;text-transform:uppercase;text-align:center;box-shadow:inset 0 2px 0 rgba(255,255,255,.38),inset 0 -2px 0 rgba(0,0,0,.12),0 6px 18px rgba(89,255,139,.18)}
.lm-btn:hover{filter:brightness(1.06);text-decoration:none}
.lm-btn:focus-visible{outline-color:#fff}
.lm-btn-s{min-height:44px;padding:0 18px;font-size:15px}

/* Bande des rubriques du lobby : une seule surface, emblemes de la marque */
.lm-lobby{margin-top:12px;background:var(--lm-s1);border-radius:var(--lm-r);padding:12px 0 6px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--lm-s3) transparent}
.lm-lobby:focus-visible{outline-offset:2px}
.lm-lobby-h{margin:0 16px 6px;font:600 12px/1.3 var(--lm-fd);letter-spacing:.12em;text-transform:uppercase;color:var(--lm-mute)}
.lm-lobby-l{list-style:none;margin:0;padding:0 8px;display:flex}
.lm-lobby-l li{flex:none;width:96px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:6px;padding:4px 4px 8px;text-align:center}
.lm-lobby-l li+li{border-left:1px solid var(--lm-line)}
.lm-lobby-l img{width:48px;height:48px}
.lm-lobby-l span{display:flex;align-items:flex-start;justify-content:center;min-height:2.3em;font:600 14px/1.15 var(--lm-fd);color:var(--lm-ink)}
@media(min-width:1024px){
  .lm-lobby{display:flex;align-items:center;padding:10px 12px;overflow:visible}
  .lm-lobby-h{flex:none;width:112px;margin:0 8px 0 12px;font-size:13px}
  .lm-lobby-l{flex:1;display:grid;grid-template-columns:repeat(9,minmax(0,1fr));padding:0}
  .lm-lobby-l li{width:auto}
  .lm-lobby-l img{width:52px;height:52px}
}

.lm-intro{margin-top:28px}
@media(min-width:768px){.lm-intro{margin-top:36px}}
.lm-kick{display:flex;align-items:center;gap:10px;margin:0 0 12px;font:600 13px/1.3 var(--lm-fd);letter-spacing:.14em;text-transform:uppercase;color:var(--lm-ink2)}
.lm-kick::before{content:"";flex:none;width:22px;height:4px;border-radius:2px;background:var(--lm-promo)}
.lm-intro h1{font-size:clamp(32px,5vw,58px);line-height:1.04;letter-spacing:-.005em;max-width:900px}
.lm-lede{margin:18px 0 0;max-width:760px;font-size:18px;line-height:1.6;color:var(--lm-ink2)}
@media(min-width:768px){.lm-lede{font-size:19px}}
.lm-age{display:flex;align-items:flex-start;gap:12px;margin:18px 0 0;max-width:760px;font-size:14px;line-height:1.5;color:var(--lm-mute)}
.lm-age .lm-18{width:30px;height:30px;font-size:11px;margin-top:-4px}
.lm-age strong{color:var(--lm-ink2)}

/* --- Premier ecran des pages de service et juridiques ---------------------------- */
.lm-sub{padding:20px 0 8px}
@media(min-width:768px){.lm-sub{padding:28px 0 12px}}
.lm-crumb ol{list-style:none;margin:-8px 0 10px;padding:0;display:flex;flex-wrap:wrap;gap:4px;font-size:14px;color:var(--lm-mute)}
.lm-crumb li{display:flex;align-items:center}
.lm-crumb li+li::before{content:"/";margin:0 8px;color:var(--lm-line2)}
.lm-crumb a{color:var(--lm-ink2);display:inline-flex;align-items:center;min-height:44px;min-width:44px}
.lm-sub h1{font-size:clamp(30px,4.4vw,50px);line-height:1.06;max-width:900px}
.lm-strip{margin-top:22px;display:flex;flex-direction:column;gap:14px;padding:16px;border-radius:20px;background-color:#221E42;background-image:linear-gradient(85.59deg,rgba(136,0,255,.55) 3.62%,rgba(36,0,255,.25) 92.32%)}
@media(min-width:768px){.lm-strip{padding:16px 24px}}
@media(min-width:1024px){.lm-strip{flex-direction:row;align-items:center;justify-content:space-between}}
.lm-strip-o{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;font-family:var(--lm-fi);font-style:italic;font-weight:900;color:var(--lm-ink)}
.lm-strip-k{width:100%;font-size:14px;text-transform:uppercase}
.lm-strip-n{font-size:40px;line-height:1;color:var(--lm-acc);text-shadow:0 2px 0 rgba(0,0,0,.3)}
.lm-strip-r{font-size:18px;white-space:nowrap}
@media(max-width:359px){.lm-strip-r{white-space:normal}}
.lm-strip-a{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
@media(min-width:1024px){.lm-strip-a{align-items:flex-end}}
.lm-sub-legal{padding-bottom:0}

/* --- Corps ---------------------------------------------------------------------- */
.lm-body{padding:24px 0 56px}
.lm-col>*{max-width:var(--lm-read)}
.lm-sec>*{max-width:var(--lm-read)}
.lm-sec>.lm-tbl,.lm-sec>.lm-pc{max-width:1000px}
.lm-sec{padding-top:48px;scroll-margin-top:16px}
@media(min-width:768px){.lm-sec{padding-top:64px}}
.lm-sec>h2,.lm-svc>h2,.lm-legal>h2{position:relative;padding-left:20px;font-size:clamp(27px,3.4vw,38px);line-height:1.1;margin-bottom:20px}
.lm-sec>h2::before,.lm-svc>h2::before,.lm-legal>h2::before{content:"";position:absolute;left:0;top:.12em;bottom:.12em;width:6px;border-radius:3px;background:linear-gradient(180deg,#8D1CFF,#FF33EB)}
.lm-svc>h2,.lm-legal>h2{margin-top:44px}
.lm-svc>h2:first-child,.lm-legal>h2:first-child{margin-top:12px}
h3{font-size:22px;line-height:1.2;margin:30px 0 12px}
.lm-col p,.lm-col li{font-size:17px;line-height:1.7}
.lm-col ul,.lm-col ol{margin:0 0 18px;padding-left:0;list-style:none}
.lm-col ul>li{position:relative;padding-left:22px;margin-bottom:8px;color:var(--lm-ink2)}
.lm-col ul>li::before{content:"";position:absolute;left:4px;top:.72em;width:7px;height:7px;border-radius:2px;background:#FF33EB;transform:rotate(45deg)}
.lm-note{font-size:15px !important;color:var(--lm-mute);border-left:2px solid var(--lm-line2);padding-left:12px}

/* Tableaux : cartes sous 720 px, libelles via data-l */
.lm-tbl{margin:20px 0 14px}
.lm-tbl table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.45}
.lm-tbl caption{caption-side:top;text-align:left;font:600 13px/1.3 var(--lm-fd);letter-spacing:.12em;text-transform:uppercase;color:var(--lm-mute);padding:0 0 10px}
.lm-tbl th,.lm-tbl td{text-align:left;vertical-align:top;padding:11px 12px;border-bottom:1px solid var(--lm-line)}
.lm-tbl thead th{font:600 14px/1.3 var(--lm-fd);letter-spacing:.04em;text-transform:uppercase;color:var(--lm-ink2);background:var(--lm-s1);border-bottom:1px solid var(--lm-line2)}
.lm-tbl thead th:first-child{border-radius:12px 0 0 0}
.lm-tbl thead th:last-child{border-radius:0 12px 0 0}
.lm-tbl tbody th{color:var(--lm-ink);font-weight:600}
.lm-tbl td{color:var(--lm-ink2)}
@media(max-width:719px){
  .lm-tbl thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
  .lm-tbl table,.lm-tbl caption,.lm-tbl tbody,.lm-tbl tr,.lm-tbl th,.lm-tbl td{display:block;width:100%}
  .lm-tbl tr{background:var(--lm-s1);border-radius:16px;padding:6px 4px;margin-bottom:10px}
  .lm-tbl tbody th{border-bottom:1px solid var(--lm-line);font:800 17px/1.3 var(--lm-fd)}
  .lm-tbl td{border-bottom:0;padding:6px 12px;display:grid;grid-template-columns:minmax(0,40%) minmax(0,1fr);gap:10px}
  .lm-tbl td::before{content:attr(data-l);font:600 13px/1.45 var(--lm-fd);letter-spacing:.04em;text-transform:uppercase;color:var(--lm-mute)}
}

/* Pour / contre */
.lm-pc{display:grid;gap:14px}
@media(min-width:768px){.lm-pc{grid-template-columns:repeat(2,minmax(0,1fr))}}
.lm-pc-box{background:var(--lm-s1);border-radius:20px;padding:20px 20px 6px;border-top:4px solid}
.lm-plus{border-top-color:var(--lm-acc)}
.lm-minus{border-top-color:#FF33EB}
.lm-pc-box h3{margin:0 0 14px;font-size:21px}
.lm-pc-box ul>li{font-size:16px !important;line-height:1.6 !important;padding-left:26px}
.lm-plus ul>li::before,.lm-minus ul>li::before{border-radius:0;background:none;transform:none;top:.1em;left:0;width:auto;height:auto;font:800 18px/1.35 var(--lm-fd)}
.lm-plus ul>li::before{content:"+";color:var(--lm-acc)}
.lm-minus ul>li::before{content:"–";color:var(--lm-pink)}

/* Jeu responsable */
.lm-help{margin:24px 0 16px;background:var(--lm-s2);border-radius:var(--lm-r);padding:20px 20px 8px}
@media(min-width:768px){.lm-help{padding:24px 28px 10px}}
.lm-help h3{margin-top:0}

/* FAQ */
.lm-faq details{border-bottom:1px solid var(--lm-line)}
.lm-faq details:first-child{border-top:1px solid var(--lm-line)}
.lm-faq summary{list-style:none;position:relative;display:flex;align-items:center;min-height:56px;padding:12px 44px 12px 0;cursor:pointer;font-weight:600;font-size:18px;line-height:1.4;color:var(--lm-ink)}
.lm-faq summary::-webkit-details-marker{display:none}
.lm-faq summary::after{content:"+";position:absolute;right:4px;top:50%;width:30px;height:30px;margin-top:-15px;border-radius:50%;background:var(--lm-s2);display:grid;place-items:center;font:800 20px/1 var(--lm-fd);color:var(--lm-acc)}
.lm-faq details[open] summary::after{content:"–"}
.lm-faq-a{padding:0 0 8px}

/* Protocole de preuves : pastilles de niveau, legende, cartes des trois niveaux, verdicts */
.lm-lv{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;border:1px solid transparent;font:600 13px/1.25 var(--lm-fd);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.lm-lv::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:currentColor}
.lm-lv-v{color:var(--lm-acc);background:rgba(89,255,139,.12);border-color:rgba(89,255,139,.38)}
.lm-lv-p{color:#DCC2FF;background:rgba(141,28,255,.24);border-color:rgba(141,28,255,.55)}
.lm-lv-m{color:#FDF45B;background:rgba(253,244,91,.10);border-color:rgba(253,244,91,.35)}
.lm-lv-n{color:var(--lm-ink2);background:transparent;border:1px dashed var(--lm-line2)}
.lm-lv-n::before{background:none;border:1.5px solid currentColor;width:6px;height:6px}
.lm-tbl td .lm-lv{white-space:normal}
.lm-legend{list-style:none;margin:20px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:4px 10px}
.lm-legend a{display:inline-flex;align-items:center;min-height:44px;text-decoration:none}
.lm-legend a:hover .lm-lv{filter:brightness(1.15)}
.lm-levels{display:grid;gap:12px;margin:20px 0 8px}
@media(min-width:768px){.lm-levels{grid-template-columns:repeat(3,minmax(0,1fr))}}
.lm-level{background:var(--lm-s1);border-radius:20px;padding:16px 18px 4px;border-top:3px solid}
.lm-level-v{border-top-color:var(--lm-acc)}
.lm-level-p{border-top-color:#8D1CFF}
.lm-level-n{border-top-style:dashed;border-top-color:var(--lm-line2)}
.lm-level-h{margin:0 0 10px !important}
.lm-level p{font-size:16px !important;line-height:1.6 !important}
.lm-proof{display:flex;flex-direction:column;gap:4px;margin:22px 0 8px;padding:14px 18px;border-radius:16px;background:var(--lm-s2);box-shadow:inset 4px 0 0 #FF33EB}
.lm-proof-k{font:600 12px/1.3 var(--lm-fd);letter-spacing:.14em;text-transform:uppercase;color:var(--lm-mute)}
.lm-proof-v{font-weight:600;font-size:17px;line-height:1.5;color:var(--lm-ink)}
.lm-proof-v strong{font-weight:600}

/* Pages juridiques en questions / reponses */
.lm-legal>h2.lm-q2{padding-left:0;font-size:21px;line-height:1.25;margin:30px 0 8px}
.lm-legal>h2.lm-q2::before{display:none}
.lm-tel{text-decoration:none}
.lm-tel strong{color:var(--lm-acc);text-decoration:underline;text-underline-offset:.18em}
.lm-proof-v::first-letter,.lm-age>span::first-letter{text-transform:uppercase}

/* Fin des pages de service */
.lm-end{margin-top:44px;padding-top:28px;border-top:1px solid var(--lm-line)}
.lm-links{margin-top:18px;font-size:15px !important}
.lm-links a{display:inline-flex;align-items:center;min-height:44px}

/* Fin de page */
.lm-final{background:var(--lm-deep);border-top:1px solid var(--lm-line);padding:44px 0}
.lm-final-in{display:grid;gap:20px}
@media(min-width:1024px){.lm-final-in{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:48px}}
.lm-final h2{font-size:clamp(28px,3.6vw,40px);line-height:1.1;margin-bottom:12px}
.lm-final p{max-width:720px}
.lm-act{display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.lm-act .lm-ad{margin:0}
.lm-ad{font-size:13px;line-height:1.4;color:var(--lm-ink);margin:0}
.lm-next ul{list-style:none;margin:28px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:10px}
.lm-next li{padding:0 !important;margin:0 !important}
.lm-next li::before{display:none}
.lm-next a{display:inline-flex;align-items:center;min-height:44px;padding:0 16px;border:1px solid var(--lm-line2);border-radius:999px;color:var(--lm-ink);text-decoration:none;font-weight:600;font-size:15px}
.lm-next a:hover{border-color:var(--lm-ink2)}

/* --- Dock (T2 : bouton seul + mention + fermeture) : carte flottante a droite ------ */
.lm-dock{position:fixed;z-index:40;left:0;right:0;bottom:0;visibility:hidden;transform:translateY(110%)}
@media(prefers-reduced-motion:no-preference){.lm-dock{transition:transform .2s ease,visibility 0s linear .2s}.lm-dock.lm-on{transition:transform .2s ease}}
.lm-dock.lm-on{visibility:visible;transform:none}
.lm-dock-in{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:center;gap:6px 10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--lm-s2);border-top:1px solid var(--lm-line);box-shadow:0 -10px 30px rgba(0,0,0,.35)}
.lm-dock .lm-ad{grid-column:1 / -1;order:3;font-size:12px}
.lm-x{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--lm-s3);color:var(--lm-ink);cursor:pointer}
@media(min-width:768px){
  .lm-dock{left:auto;right:20px;bottom:20px;transform:translateY(140%)}
  .lm-dock-in{grid-template-columns:auto 44px;border:1px solid var(--lm-line);border-radius:20px;padding:12px 12px 10px 14px}
}

/* --- Pied : aide a gauche, deux listes, base avec mentions ------------------------ */
.lm-ftr{background:var(--lm-deep);border-top:1px solid var(--lm-line);padding:40px 0 28px}
.lm-ftr h2{font:600 13px/1.3 var(--lm-fd);letter-spacing:.14em;text-transform:uppercase;color:var(--lm-mute);margin:0 0 12px}
.lm-ftr-grid{display:grid;gap:28px}
@media(min-width:768px){.lm-ftr-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:40px}}
.lm-ftr-help{background:var(--lm-s1);border-radius:20px;padding:20px}
.lm-ftr-help .lm-age{margin:0 0 10px;color:var(--lm-ink2);font-size:15px}
.lm-help-l{list-style:none;margin:0 0 6px;padding:0;display:flex;flex-wrap:wrap;gap:0 18px}
.lm-help-l a{display:inline-flex;align-items:center;min-height:44px;font-weight:600}
.lm-ftr-line{margin:0;font-size:15px}
.lm-ftr-line a{display:inline-flex;align-items:center;min-height:44px}
.lm-tel-s{font-weight:600;white-space:nowrap}
.lm-ftr-nav ul{list-style:none;margin:0;padding:0}
.lm-ftr-nav a{display:flex;align-items:center;min-height:44px;color:var(--lm-ink2);text-decoration:none;font-size:15px}
.lm-ftr-nav a:hover,.lm-ftr-nav a[aria-current="page"]{color:var(--lm-ink);text-decoration:underline}
.lm-ftr-base{margin-top:28px;display:grid;gap:14px}
.lm-ftr-base::before{content:"";grid-column:1 / -1;height:1px;background:var(--lm-line);margin-bottom:10px}
@media(min-width:768px){.lm-ftr-base{grid-template-columns:140px minmax(0,1fr);gap:28px}}
.lm-ftr-base p{font-size:14px;line-height:1.6;color:var(--lm-mute);margin:0 0 8px;max-width:820px}
.lm-copy{color:var(--lm-ink2) !important}

/* --- Pages techniques ------------------------------------------------------------ */
.lm-plain{max-width:620px;margin:0 auto;padding:56px 20px}
.lm-plain .lm-logo{margin-bottom:24px}
.lm-plain h1{font-size:34px;margin-bottom:14px}

[data-go]{cursor:pointer}
