:root{--bg:#FAF7F2;--card:#fff;--chip:#EFE9DD;--text:#17171C;--muted:#6B6B78;--line:#E8E2D6;--right:#12A37C;--left:#6B55E0;--kick:#E5455F;--foot:#E08A00;--g:linear-gradient(135deg,#FFD45C,#FF9F43 55%,#FF6B8B)}
@media(prefers-color-scheme:dark){:root{--bg:#09090B;--card:#17171B;--chip:#24242B;--text:#F4F4F6;--muted:#9A9AA6;--line:#26262E;--right:#5CF2C8;--left:#A58BFF;--kick:#FF6B8B;--foot:#FFB84D}}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:17px/1.6 "DM Sans",system-ui,-apple-system,sans-serif}
.wrap{max-width:1040px;margin:0 auto;padding:0 20px}
header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:16px 0}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:20px;color:inherit;text-decoration:none}
.brand img{width:36px;height:36px;border-radius:9px}
nav{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;font-size:15px}
nav a{color:var(--muted);text-decoration:none}nav a:hover{color:var(--text)}
.lang{border:1px solid var(--line);background:var(--card);color:var(--text);border-radius:99px;padding:4px 12px;cursor:pointer;font:inherit;font-size:14px}
.hero{text-align:center;padding:64px 0 48px}
.hero h1{font-size:clamp(36px,6vw,64px);line-height:1.08;margin:0 0 18px;letter-spacing:-.02em}
.hero h1 span{background:var(--g);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero p{max-width:620px;margin:0 auto 28px;color:var(--muted);font-size:19px}
.btn{display:inline-block;background:var(--g);color:#1A1204;font-weight:700;padding:14px 28px;border-radius:99px;text-decoration:none}
.btn.off{opacity:.85}
.note{margin-top:12px}.note{margin-top:12px;font-size:14px;color:var(--muted)}
.sticks{display:flex;justify-content:center;gap:10px;margin:36px 0 0;font-weight:700;font-size:22px;font-family:ui-monospace,Menlo,monospace}
.sticks b{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--card);border:1px solid var(--line)}
.sticks .R{color:var(--right)}.sticks .L{color:var(--left)}.sticks .K{color:var(--kick)}.sticks .F{color:var(--foot)}
h2{font-size:32px;text-align:center;margin:64px 0 32px;letter-spacing:-.01em}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px}
.card h3{margin:0 0 8px;font-size:19px}.card p{margin:0;color:var(--muted);font-size:16px}
.dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:8px}
.views{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;text-align:center}
.views .card strong{font-size:18px;display:block;margin-bottom:6px}
footer{margin-top:80px;padding:32px 0;border-top:1px solid var(--line);color:var(--muted);font-size:14px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}
footer a{color:var(--muted)}
.prose{max-width:720px;margin:32px auto}.prose h1{font-size:36px}.prose h2{text-align:left;font-size:22px;margin:32px 0 8px}
[data-l]{display:none}html[lang=fr] [data-l=fr],html[lang=en] [data-l=en]{display:revert}
html[lang=fr] span.note[data-l=fr],html[lang=en] span.note[data-l=en]{display:block}
h1,h2,p{overflow-wrap:break-word}
@media(max-width:600px){body{font-size:16px}.hero{padding:36px 0 32px}.hero p{font-size:17px}h2{font-size:26px;margin:48px 0 24px;line-height:1.2}.btn{padding:12px 22px}.sticks{gap:6px;flex-wrap:wrap}.sticks b{width:38px;height:38px;font-size:18px}.card{padding:20px}.prose h1{font-size:30px}footer{flex-direction:column}}

/* ===== Landing (full-bleed colour sections) ===== */
body.land{font-family:"DM Sans",system-ui,sans-serif;background:#0F1018;color:#fff}
.land .wrap{max-width:1100px}
.land header{position:absolute;left:0;right:0;z-index:5}
.land nav a,.land .brand{color:#fff}.land nav a{opacity:.8}
.land .lang{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.3);color:#fff}
.sec{padding:96px 0;position:relative;overflow:hidden}
.sec .wrap{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.sec.rev .wrap>.txt{order:2}
.sec h2{text-align:left;font-size:clamp(34px,5vw,56px);line-height:1.05;margin:14px 0 18px;font-weight:900}
.sec p{font-size:19px;line-height:1.55;opacity:.92;margin:0 0 14px}
.tag{display:inline-block;background:rgba(0,0,0,.35);padding:6px 14px;border-radius:8px;font-weight:800;font-size:13px;letter-spacing:.08em;text-transform:uppercase}
.s-hero{background:radial-gradient(circle at 80% 20%,#FF9F43 0,transparent 45%),radial-gradient(circle at 10% 90%,#FF6B8B 0,transparent 40%),#FFD45C;color:#1A1204;padding:150px 0 90px}
.s-hero h1{font-size:clamp(44px,7vw,84px);line-height:1;margin:0 0 20px;font-weight:900;letter-spacing:-.02em;text-align:left}
.s-hero p{font-size:21px;max-width:520px;color:#1A1204}
.badges{display:flex;gap:14px;flex-wrap:wrap;margin:26px 0}
.badge{background:#1A1204;color:#FFD45C;border-radius:16px;padding:12px 18px;font-weight:900;line-height:1.1;text-align:center}
.badge small{display:block;font-weight:700;font-size:12px;opacity:.8;text-transform:uppercase;letter-spacing:.06em}
.store{display:inline-flex;align-items:center;gap:10px;background:#000;color:#fff;border-radius:14px;padding:12px 24px;text-decoration:none;font-weight:800;font-size:20px;border:1px solid #444}
.store small{display:block;font-size:12px;font-weight:600}
.s-hero .note{color:#1A1204;opacity:.7}
.s-violet{background:#4B3BB5}.s-green{background:#0E8A68}.s-coral{background:#D6334F}.s-ink{background:#17171B}.s-amber{background:#E08A00;color:#1A1204}
.phones{display:flex;justify-content:center;gap:-20px}
.phone{width:250px;aspect-ratio:9/19;background:#0B0B0F;border-radius:38px;border:8px solid #000;box-shadow:0 30px 60px rgba(0,0,0,.35);padding:16px 12px;color:#fff;position:relative;overflow:hidden;flex:none}
.phone::before{content:"";position:absolute;top:8px;left:50%;transform:translateX(-50%);width:70px;height:18px;background:#000;border-radius:12px}
.phone h4{margin:22px 0 10px;font-size:16px;font-weight:900}
.pad{background:#17171B;border-radius:14px;padding:10px;margin-bottom:8px;font-size:12px;color:#9A9AA6}
.pad b{color:#fff;font-size:14px;display:block}
.chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}
.chips i{font-style:normal;font-weight:900;width:26px;height:26px;border-radius:7px;background:#24242B;display:grid;place-items:center;font-family:ui-monospace,Menlo,monospace}
.chips .R{color:#5CF2C8}.chips .L{color:#A58BFF}.chips .K{color:#FF6B8B}.chips .F{color:#FFB84D}
.bpm{font-size:54px;font-weight:900;text-align:center;margin:20px 0 0;line-height:1}.bpm small{display:block;font-size:12px;color:#9A9AA6;letter-spacing:.1em}
.wheel{width:140px;height:140px;border-radius:50%;margin:16px auto;background:conic-gradient(#FFD45C 0 62%,#26262E 0);display:grid;place-items:center}
.wheel span{width:108px;height:108px;border-radius:50%;background:#0B0B0F;display:grid;place-items:center;font-weight:900;font-size:24px}
.btnl{display:block;text-align:center;background:linear-gradient(135deg,#FFD45C,#FF9F43);color:#1A1204;border-radius:99px;padding:9px;font-weight:900;font-size:13px;margin-top:10px}
.phone.back{transform:rotate(-6deg) translateX(30px) scale(.92);opacity:.95}
.phone.front{transform:rotate(4deg) translateX(-30px)}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;text-align:center}
.stat{background:rgba(255,255,255,.08);border-radius:20px;padding:24px 12px}
.stat b{display:block;font-size:44px;font-weight:900;color:#FFD45C;line-height:1}
.sec.center .wrap{display:block;text-align:center}.sec.center h2{text-align:center}
.land footer{margin:0;padding:32px 20px;background:#09090B;color:#9A9AA6;border:0;justify-content:center}.land footer a{color:#9A9AA6}
@media(max-width:800px){.sec{padding:64px 0}.sec .wrap{grid-template-columns:1fr;gap:36px}.sec.rev .wrap>.txt{order:0}.s-hero{padding:120px 0 60px}.phone.back{display:none}.phone.front{transform:none;margin:0 auto}.phones{justify-content:center}}

.shot{width:min(300px,100%);height:auto;border-radius:36px;border:6px solid #000;box-shadow:0 30px 60px rgba(0,0,0,.4);display:block;margin:0 auto}
.s-hero h1,.sec h2{font-weight:800}

.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-items:start}
.trio figure{margin:0}.trio figcaption{margin-top:12px;font-weight:800;font-size:18px}
.trio .shot{width:100%;border-radius:22px;border-width:4px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px;text-align:left}
.plan{background:rgba(255,255,255,.12);border-radius:20px;padding:28px}.plan h3{margin:0 0 10px;font-size:24px}.plan p{margin:0}
@media(max-width:800px){.trio{grid-template-columns:1fr;max-width:340px;margin:0 auto}.grid2{grid-template-columns:1fr}}

/* ===== Thème clair / sombre (bouton en haut) ===== */
html[data-theme=light]{--bg:#FAF7F2;--card:#fff;--chip:#EFE9DD;--text:#17171C;--muted:#6B6B78;--line:#E8E2D6}
html[data-theme=dark]{--bg:#09090B;--card:#17171B;--chip:#24242B;--text:#F4F4F6;--muted:#9A9AA6;--line:#26262E}
html[data-theme=light] .lt,html[data-theme=dark] .dk{display:block}
html[data-theme=light] .dk,html[data-theme=dark] .lt{display:none}
.lang#theme{min-width:36px;padding:4px 10px}
body.land{background:var(--bg);color:var(--text)}
.land header .brand,.land nav a{color:#1A1204}.land nav a{opacity:.75}
.land .lang{background:rgba(26,18,4,.12);border-color:rgba(26,18,4,.25);color:#1A1204}
html[data-theme=light] .s-ink{background:#EFE9DD;color:#17171C}
html[data-theme=light] .s-ink .stat{background:rgba(0,0,0,.06)}
html[data-theme=light] .s-ink .stat b{color:#B8650A}
html[data-theme=dark] .s-ink{background:#17171B}
html[data-theme=light] .land footer{background:#E8E2D6;color:#6B6B78}
html[data-theme=light] .land footer a{color:#6B6B78}
html[data-theme=light] .shot{border-color:#17171C;box-shadow:0 30px 60px rgba(80,55,10,.25)}

.stores{display:flex;gap:12px;flex-wrap:wrap}.center .stores{justify-content:center}
.beta{font-size:14px;opacity:.8;margin:10px 0 0;max-width:460px}.beta a{color:inherit;text-decoration:underline}.center .beta{margin-left:auto;margin-right:auto}
.trio.quad{grid-template-columns:repeat(4,1fr)}@media(max-width:1000px){.trio.quad{grid-template-columns:repeat(2,1fr);max-width:640px;margin:0 auto}}@media(max-width:800px){.trio.quad{grid-template-columns:1fr;max-width:340px}}
