@font-face{font-family:G;src:url(fonts/Gabarito_500Medium.woff2) format("woff2");font-weight:400 600;font-display:swap}
@font-face{font-family:G;src:url(fonts/Gabarito_700Bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:G;src:url(fonts/Gabarito_800ExtraBold.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:G;src:url(fonts/Gabarito_900Black.woff2) format("woff2");font-weight:900;font-display:swap}
@font-face{font-family:M;src:url(fonts/DMMono_400Regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:M;src:url(fonts/DMMono_500Medium.woff2) format("woff2");font-weight:500;font-display:swap}

/* Couleurs de l'app (src/lib/theme.ts) */
:root{
  --lac:#CFE6FF;--nuit:#14213D;--tom:#FF3B2F;--tomDeep:#C4241A;--sun:#FFC83D;--pine:#1F9D63;
  --bg:#CFE6FF;--surface:#FFFFFF;--surface2:#E4F0FF;--ink:#14213D;--ink2:#4F5E7B;--line:#AFCBEB;
  --band-lac:#CFE6FF;--band-nuit:#14213D;--band-tom:#FF3B2F;--band-sun:#FFC83D;
  --shadow:rgba(20,33,61,.18);
  color-scheme:light;
}
:root[data-theme="dark"]{
  --bg:#0F1A33;--surface:#1A2747;--surface2:#22325A;--ink:#EAF2FF;--ink2:#9DB0D3;--line:#2A3B63;
  --tom:#FF5446;--tomDeep:#B5261B;--sun:#FFD25E;--pine:#3CC486;
  --band-lac:#0F1A33;--band-nuit:#0A1226;--band-tom:#E8382C;--band-sun:#F5BE35;
  --shadow:rgba(0,0,0,.35);
  color-scheme:dark;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#0F1A33;--surface:#1A2747;--surface2:#22325A;--ink:#EAF2FF;--ink2:#9DB0D3;--line:#2A3B63;
    --tom:#FF5446;--tomDeep:#B5261B;--sun:#FFD25E;--pine:#3CC486;
    --band-lac:#0F1A33;--band-nuit:#0A1226;--band-tom:#E8382C;--band-sun:#F5BE35;
    --shadow:rgba(0,0,0,.35);
    color-scheme:dark;
  }
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:G,system-ui,sans-serif;font-weight:500;background:var(--bg);color:var(--ink);line-height:1.45;overflow-x:hidden;-webkit-font-smoothing:antialiased}
a{color:inherit}
img{display:block;max-width:100%}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
.mono{font-family:M,ui-monospace,monospace}
.wrap{width:100%;max-width:1160px;margin:0 auto;padding:0 24px}
:focus-visible{outline:3px solid var(--tom);outline-offset:3px;border-radius:8px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- Logo texte (comme le composant Wordmark de l'app) ---------- */
.wm{font-weight:900;letter-spacing:-.03em;line-height:1.15;display:inline-block;white-space:nowrap;text-decoration:none}
.wm .ae{position:relative;display:inline-block}
.wm .ae i{position:absolute;top:.1em;width:.17em;height:.17em;border-radius:50%;background:var(--tom)}
.wm .ae i:first-child{left:.05em}.wm .ae i:last-child{right:.05em}

/* ---------- En-tête ---------- */
.top{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:box-shadow .2s}
.top.scrolled{box-shadow:0 1px 0 var(--line)}
.top .wrap{display:flex;align-items:center;gap:20px;height:68px}
.top .wm{font-size:30px}
.top nav{display:flex;gap:22px;margin-left:auto;align-items:center}
.top nav a.lk{font-weight:700;font-size:16px;text-decoration:none;color:var(--ink2)}
.top nav a.lk:hover{color:var(--ink)}
.iconbtn{width:42px;height:42px;border-radius:50%;background:var(--surface);display:grid;place-items:center;box-shadow:0 3px 0 var(--line);transition:transform .15s}
.iconbtn:active{transform:translateY(2px);box-shadow:0 1px 0 var(--line)}
.iconbtn svg{width:20px;height:20px}
.lang{position:relative}
.lang>button{height:42px;padding:0 14px;border-radius:21px;background:var(--surface);box-shadow:0 3px 0 var(--line);font-family:M;font-weight:500;font-size:14px;letter-spacing:1px;display:flex;align-items:center;gap:6px}
.lang ul{position:absolute;right:0;top:50px;list-style:none;background:var(--surface);border-radius:20px;padding:6px;box-shadow:0 16px 40px var(--shadow);min-width:150px;display:none}
.lang.open ul{display:block}
.lang li button{width:100%;text-align:left;padding:10px 14px;border-radius:14px;font-weight:700;font-size:16px}
.lang li button:hover,.lang li button[aria-current="true"]{background:var(--surface2)}
@media (max-width:720px){.top nav a.lk{display:none}.top .wm{font-size:26px}}

/* ---------- Boutons ---------- */
.store{display:inline-flex;align-items:center;gap:12px;padding:14px 26px 16px;border-radius:999px;background:var(--nuit);color:#fff;font-weight:800;font-size:19px;text-decoration:none;box-shadow:0 6px 0 rgba(20,33,61,.35);position:relative;white-space:nowrap}
:root[data-theme="dark"] .store{background:#fff;color:#14213D}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .store{background:#fff;color:#14213D}}
.store .dot{width:10px;height:10px;border-radius:50%;background:var(--tom);box-shadow:0 0 0 0 var(--tom);animation:ping 2s infinite}
@keyframes ping{0%{box-shadow:0 0 0 0 rgba(255,59,47,.6)}80%,100%{box-shadow:0 0 0 12px rgba(255,59,47,0)}}
.store.alt{background:#fff;color:#14213D}
.ghost{font-weight:700;font-size:17px;color:var(--ink2);text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:2px}

/* ---------- Titres façon reel : ligne + pastille de travers ---------- */
.ttl{font-weight:900;letter-spacing:-.035em;line-height:1;font-size:clamp(36px,4.7vw,62px);text-wrap:balance}
.ttl .l1{display:block}
.ttl .pill{display:inline-block;max-width:100%;margin-top:.12em;padding:.06em .32em .14em;border-radius:.3em;transform:rotate(var(--r,-2.5deg));box-shadow:0 .08em 0 rgba(20,33,61,.18)}
.lead{font-size:clamp(18px,1.9vw,21px);max-width:34em;margin-top:22px;line-height:1.5}

/* ---------- Héros ---------- */
.hero{padding:56px 0 90px;position:relative;overflow:hidden}
.hero .wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center}
.kicker{font-family:M;font-size:14px;letter-spacing:2px;text-transform:uppercase;color:var(--ink2);margin-bottom:20px;display:flex;align-items:center;gap:10px}
.kicker .flag{width:22px;height:22px;border-radius:5px;background:var(--tom);position:relative;flex:none}
.kicker .flag:before,.kicker .flag:after{content:"";position:absolute;background:#fff;left:50%;top:50%;transform:translate(-50%,-50%)}
.kicker .flag:before{width:12px;height:4px}.kicker .flag:after{width:4px;height:12px}
.hero .ttl{font-size:clamp(46px,6.3vw,86px)}
@media (min-width:900px){.ttl .pill{white-space:nowrap}}
.hero .pill{background:var(--sun);color:#14213D}
.hero .ctas{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:34px}
.hero .facts{display:flex;gap:10px;flex-wrap:wrap;margin-top:30px}
.tag{font-weight:800;font-size:14px;padding:7px 14px 9px;border-radius:999px;background:var(--surface);color:var(--ink);box-shadow:0 3px 0 var(--line)}
@media (max-width:900px){.hero .wrap{grid-template-columns:1fr}.hero{padding-top:30px}}

/* ---------- Téléphone ---------- */
.phone{position:relative;width:330px;height:670px;border-radius:52px;background:#0E1424;padding:11px;box-shadow:0 0 0 3px rgba(255,255,255,.18),0 30px 70px rgba(20,33,61,.32);margin:0 auto}
.screen{position:relative;width:100%;height:100%;border-radius:42px;overflow:hidden;background:#CFE6FF;color:#14213D}
.notch{position:absolute;left:50%;top:11px;width:96px;height:28px;margin-left:-48px;background:#0E1424;border-radius:16px;z-index:5}
.hero .phone{transform:rotate(3deg)}
.app-h{position:absolute;left:20px;right:20px;top:48px;display:flex;align-items:center;justify-content:space-between}
.app-h .wm{font-size:30px}
.app-h .n{font-family:M;font-size:10px;letter-spacing:1.5px;color:#4F5E7B}
.app-search{position:absolute;left:14px;right:14px;top:96px;height:40px;border-radius:20px;background:#fff;font-size:15px;color:#4F5E7B;display:flex;align-items:center;padding-left:40px}
.app-search:before{content:"";position:absolute;left:16px;top:13px;width:10px;height:10px;border:2px solid #14213D;border-radius:50%}
.app-search:after{content:"";position:absolute;left:26px;top:24px;width:6px;height:2px;background:#14213D;transform:rotate(45deg)}
.stack{position:absolute;left:12px;right:12px;top:150px;bottom:0}
.stack .card{position:absolute;left:0;right:0;transition:top .55s cubic-bezier(.2,1.3,.4,1),transform .55s cubic-bezier(.2,1.3,.4,1);cursor:pointer}
.fab{position:absolute;right:18px;bottom:22px;width:58px;height:58px;border-radius:50%;background:#FF3B2F;box-shadow:0 5px 0 #C4241A;display:grid;place-items:center;z-index:30}
.fab:before,.fab:after{content:"";position:absolute;background:#fff;border-radius:2px}
.fab:before{width:22px;height:4px}.fab:after{width:4px;height:22px}
.hint{font-family:M;font-size:13px;color:var(--ink2);text-align:center;margin-top:26px;letter-spacing:.5px}

/* ---------- Cartes ---------- */
.card{border-radius:18px;overflow:hidden;padding:13px 15px;color:#fff;aspect-ratio:1.586;position:relative;box-shadow:0 1px 0 rgba(255,255,255,.22) inset,0 8px 20px rgba(20,33,61,.22)}
.card .pat{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.card .cn{position:relative;font-weight:900;font-size:19px;letter-spacing:-.02em;line-height:1.1}
.card .cs{position:relative;font-weight:700;font-size:9px;letter-spacing:.8px;text-transform:uppercase;opacity:.85;margin-top:1px}
.card .cr{position:absolute;right:15px;top:16px;font-family:M;font-size:9px;opacity:.8}
.card .num{position:absolute;left:15px;bottom:12px;font-family:M;font-size:10px;letter-spacing:1px;opacity:.85}

/* ---------- Bandes de couleur ---------- */
.band{position:relative;padding:110px 0;overflow:hidden}
.band .wrap{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.band.flip .wrap>.txt{order:2}
.band .txt p{font-size:clamp(18px,1.8vw,20px);line-height:1.55;margin-top:24px;max-width:30em}
.band .txt p+p{margin-top:14px}
.b-lac{background:var(--band-lac);color:var(--ink)}
.b-nuit{background:var(--band-nuit);color:#fff}
.b-tom{background:var(--band-tom);color:#fff}
.b-sun{background:var(--band-sun);color:#14213D}
.b-nuit .txt p,.b-tom .txt p{color:rgba(255,255,255,.88)}
.b-sun .txt p{color:#2b3754}
.vis{position:relative;min-height:440px;display:grid;place-items:center}
@media (max-width:900px){
  .band{padding:80px 0}
  .band .wrap{grid-template-columns:1fr;gap:40px}
  .band.flip .wrap>.txt{order:0}
  .vis{min-height:360px}
}

/* Bande 1 : portefeuille */
.pile{position:relative;width:100%;height:440px}
.pile .card{position:absolute;width:210px;transition:transform .5s cubic-bezier(.2,1.4,.4,1)}
.pile:hover .card{transform:translate(var(--hx),var(--hy)) rotate(var(--hr))!important}
.pile .card .cn{font-size:18px}

/* Bande 2 : en caisse */
.till{width:330px;background:#fff;border-radius:34px;padding:22px 22px 26px;color:#14213D;box-shadow:0 26px 60px rgba(0,0,0,.35);position:relative;transform:rotate(-2deg)}
.till .card{width:100%}
.bars{position:relative;height:120px;margin:26px 8px 0;display:flex;align-items:stretch;gap:0}
.bars i{display:block;background:#14213D;height:100%}
.bars .laser{position:absolute;left:-10px;right:-10px;top:0;height:4px;border-radius:4px;background:#FF3B2F;box-shadow:0 0 14px 3px rgba(255,59,47,.7);animation:laser 2.6s ease-in-out infinite}
@keyframes laser{0%,100%{transform:translateY(0)}50%{transform:translateY(116px)}}
.till .digits{text-align:center;font-family:M;font-size:17px;letter-spacing:3px;margin-top:10px}
.ok{position:absolute;right:-46px;bottom:-56px;width:110px;height:110px;border-radius:50%;background:var(--pine);box-shadow:0 6px 0 #157049;display:grid;place-items:center;animation:okpop 2.6s cubic-bezier(.2,1.8,.4,1) infinite}
.ok:after{content:"";width:46px;height:24px;border-left:11px solid #fff;border-bottom:11px solid #fff;transform:translateY(-6px) rotate(-45deg);border-radius:3px}
@keyframes okpop{0%,40%{transform:scale(0)}55%,92%{transform:scale(1)}100%{transform:scale(0)}}
.bip{position:absolute;left:-40px;top:-26px;padding:6px 18px 10px;border-radius:18px;background:var(--sun);color:#14213D;font-weight:900;font-size:34px;transform:rotate(-10deg);box-shadow:0 5px 0 rgba(0,0,0,.2)}

/* Bande 3 : bons */
.coupon{display:flex;width:min(440px,100%);filter:drop-shadow(0 10px 0 rgba(120,10,0,.3));transform:rotate(-4deg)}
.coupon .stub{width:96px;background:var(--sun);border-radius:26px 0 0 26px;display:grid;place-items:center}
.coupon .stub span{transform:rotate(-90deg);font-weight:900;font-size:30px;color:#14213D;letter-spacing:1px}
.coupon .body{flex:1;background:#fff;border-radius:0 26px 26px 0;border-left:5px dashed #FF3B2F;padding:26px 28px;color:#14213D}
.coupon .big{font-weight:900;font-size:86px;letter-spacing:-.05em;line-height:.9}
.coupon .who{font-weight:700;font-size:20px;margin-top:12px}
.coupon .till2{font-family:M;font-size:14px;color:#4F5E7B;margin-top:6px}
.notif{margin-top:34px;width:min(460px,100%);background:rgba(255,255,255,.94);color:#14213D;border-radius:26px;padding:16px 18px;display:flex;gap:14px;align-items:center;box-shadow:0 16px 40px rgba(100,0,0,.3)}
.notif img{width:52px;height:52px;border-radius:12px;flex:none}
.notif .h{display:flex;justify-content:space-between;font-weight:800;font-size:16px}
.notif .h span{font-weight:500;color:#4F5E7B;font-size:14px}
.notif .m{font-size:16px;line-height:1.3;margin-top:2px}
.reveal .notif{transition:all .6s cubic-bezier(.2,1.3,.4,1) .4s}
.reveal.wait .notif{opacity:0;transform:translateY(-30px) scale(.96)}

/* Bande 4 : carte cadeau */
.gift{width:min(420px,100%)}
.gift .card{width:100%;transform:rotate(3deg)}
.gift .card .rb1{position:absolute;left:0;right:0;top:40%;height:20px;background:var(--sun)}
.gift .card .rb2{position:absolute;top:0;bottom:0;left:64%;width:20px;background:var(--sun)}
.gift .card .knot{position:absolute;left:calc(64% - 22px);top:calc(40% - 14px);width:64px;height:48px;border-radius:50%;border:11px solid #FF3B2F}
.solde{margin:-26px auto 0;position:relative;width:82%;background:var(--surface);border-radius:26px;padding:16px 20px 18px;text-align:center;box-shadow:0 6px 0 var(--line)}
.solde .k{font-weight:800;font-size:12px;letter-spacing:2px;color:var(--ink2)}
.solde .v{font-family:M;font-weight:500;font-size:46px;letter-spacing:-1px;color:var(--ink);transition:color .3s}
.solde .v.hit{color:var(--tom)}
.gift .acts{display:flex;gap:10px;justify-content:center;margin-top:18px;flex-wrap:wrap}
.chipbtn{padding:10px 18px 12px;border-radius:999px;font-weight:800;font-size:16px;background:var(--tom);color:#fff;box-shadow:0 4px 0 var(--tomDeep);transition:transform .12s}
.chipbtn.sec{background:var(--surface);color:var(--ink);box-shadow:0 4px 0 var(--line)}
.chipbtn:active{transform:translateY(3px);box-shadow:0 1px 0 var(--tomDeep)}

/* Bande 5 : partage */
.share{position:relative;width:100%;max-width:470px;height:430px}
.mini{position:absolute;top:60px;width:170px;height:345px;border-radius:32px;background:#0E1424;padding:7px;box-shadow:0 0 0 2px rgba(255,255,255,.18),0 20px 50px rgba(0,0,0,.4)}
.mini .scr{position:relative;width:100%;height:100%;border-radius:26px;overflow:hidden;background:#CFE6FF}
.mini .wm{position:absolute;left:12px;top:22px;font-size:18px;color:#14213D}
.mini .c{position:absolute;left:9px;right:9px;aspect-ratio:1.586;border-radius:11px;box-shadow:0 3px 8px rgba(0,0,0,.2)}
.mini .lab{position:absolute;left:0;right:0;bottom:-38px;text-align:center;font-weight:800;font-size:20px;color:#fff}
.cloud{position:absolute;left:50%;top:0;width:150px;height:96px;margin-left:-75px}
.cloud i{position:absolute;background:#fff;border-radius:999px}
.flyer{position:absolute;width:100px;height:63px;border-radius:10px;background:#FF6A00;box-shadow:0 8px 20px rgba(0,0,0,.4);left:0;top:0;offset-path:path("M 85 250 C 120 40, 350 40, 385 250");offset-rotate:0deg;animation:fly 3.2s cubic-bezier(.6,0,.3,1) infinite}
@keyframes fly{0%,15%{offset-distance:0%;transform:scale(.7)}50%{transform:scale(1.1) rotate(8deg)}85%,100%{offset-distance:100%;transform:scale(.7)}}
.qr{position:absolute;right:6px;top:4px;background:#fff;border-radius:16px;padding:9px;transform:rotate(8deg);box-shadow:0 6px 0 rgba(0,0,0,.25)}

/* Bande 6 : et en plus */
.more .wrap{display:block}
.more .head{text-align:center}
.designs{display:flex;justify-content:center;gap:0;margin:56px 0 24px;flex-wrap:wrap}
.designs .card{width:150px;margin:0 -16px;transform:rotate(var(--r));transition:transform .3s cubic-bezier(.2,1.6,.4,1);box-shadow:0 10px 24px rgba(20,33,61,.25)}
.designs .card:hover{transform:rotate(0) translateY(-14px) scale(1.06);z-index:2}
.designs .card .cn{font-size:16px}
.cap{text-align:center;font-family:M;font-size:13px;color:#2b3754;letter-spacing:.5px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:56px}
.feat{background:#fff;border-radius:26px;padding:22px 22px 24px;color:#14213D;box-shadow:0 6px 0 rgba(20,33,61,.14);transform:rotate(var(--r,0deg));transition:transform .25s cubic-bezier(.2,1.6,.4,1)}
.feat:hover{transform:rotate(0) translateY(-4px)}
.feat h3{font-weight:900;font-size:21px;letter-spacing:-.02em;line-height:1.1}
.feat p{font-size:16px;color:#4F5E7B;margin-top:8px;line-height:1.4}
.feat .ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;margin-bottom:14px}
.feat .ic svg{width:24px;height:24px}
@media (max-width:1000px){.grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.grid{grid-template-columns:1fr}.designs .card{width:120px;margin:0 -10px}.designs .card .cn{font-size:12px}}

/* Bande vie privée */
.zero{display:grid;gap:14px}
.zero div{display:grid;grid-template-columns:76px 1fr;align-items:center;column-gap:18px;background:rgba(255,255,255,.06);border:2px solid rgba(255,255,255,.12);border-radius:26px;padding:20px 24px}
.zero b{grid-row:span 2;font-weight:900;font-size:76px;line-height:.9;color:var(--sun);text-align:center}
.zero span{display:block;font-weight:800;font-size:21px}
.zero small{display:block;margin-top:2px;font-size:15px;color:rgba(255,255,255,.7);line-height:1.4}


/* Fin */
.end{padding:100px 0 80px;text-align:center}
.biglogo{position:relative;width:250px;aspect-ratio:630/820;margin:0 auto;cursor:pointer}
.biglogo img{position:absolute;inset:0;width:100%;height:100%}
.biglogo .dark{display:none}
:root[data-theme="dark"] .biglogo .light{display:none}
:root[data-theme="dark"] .biglogo .dark{display:block}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .biglogo .light{display:none}:root:not([data-theme="light"]) .biglogo .dark{display:block}}
.biglogo .bk{transform-origin:51% 21%}.biglogo .fr{transform-origin:48% 34%}.biglogo .dt{transform-origin:49% 6%}
.biglogo.play .fr{animation:tilt .7s cubic-bezier(.2,1.6,.4,1)}
.biglogo.play .dt{animation:hop .8s ease-out}
@keyframes hop{0%{transform:none}30%{transform:translateY(-28px) scale(1.08)}60%{transform:translateY(4px)}80%{transform:translateY(-3px)}100%{transform:none}}
@keyframes tilt{0%{transform:none}35%{transform:rotate(-7deg)}100%{transform:none}}
.end .ttl{font-size:clamp(40px,5.6vw,68px);margin-top:28px}
.end .pill{background:var(--sun);color:#14213D}
.end .store{margin-top:36px}

/* Pied de page */
footer{border-top:2px solid var(--line);padding:30px 0 46px;font-size:15px;color:var(--ink2)}
footer .wrap{display:flex;gap:18px 26px;flex-wrap:wrap;align-items:center}
footer .wm{font-size:22px;color:var(--ink)}
footer a{text-decoration:none;font-weight:700}
footer a:hover{color:var(--ink)}
footer .sp{margin-left:auto;font-family:M;font-size:12px;letter-spacing:1.5px;text-transform:uppercase}

/* Apparition au défilement */
.reveal .rv{transition:opacity .6s ease,transform .7s cubic-bezier(.2,1.3,.4,1)}
.reveal.wait .rv{opacity:0;transform:translateY(40px)}
.reveal.in .rv.d1{transition-delay:.1s}.reveal.in .rv.d2{transition-delay:.2s}.reveal.in .rv.d3{transition-delay:.3s}

/* Pages légales */
.legal{padding:50px 0 90px}
.legal .wrap{max-width:780px}
.legal h1{font-weight:900;font-size:clamp(38px,6vw,60px);letter-spacing:-.035em;line-height:1}
.legal h1 .pill{display:inline-block;background:var(--sun);color:#14213D;padding:.04em .3em .12em;border-radius:.3em;transform:rotate(-2deg);margin-top:.1em}
.legal .upd{font-family:M;font-size:13px;color:var(--ink2);margin-top:18px;letter-spacing:.5px}
.legal .tl{background:var(--surface);border-radius:26px;padding:22px 26px;margin-top:34px;box-shadow:0 5px 0 var(--line);font-size:18px;line-height:1.5}
.legal .tl b{font-weight:900}
.legal h2{font-weight:900;font-size:25px;letter-spacing:-.02em;margin-top:44px}
.legal p,.legal li{font-size:17px;line-height:1.6;margin-top:12px}
.legal ul{padding-left:22px}
.legal table{width:100%;border-collapse:collapse;margin-top:16px;font-size:16px}
.legal td,.legal th{text-align:left;padding:12px 10px;border-bottom:2px solid var(--line);vertical-align:top}
.legal th{font-weight:800}
.legal .todo{background:var(--sun);color:#14213D;border-radius:6px;padding:0 6px;font-weight:700}
[data-l]:not(.on){display:none}

@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{animation:none!important;transition:none!important}
  .reveal.wait .rv,.reveal.wait .notif{opacity:1;transform:none}
}

/* Écrans de téléphone en sombre, comme l'app */
:root[data-theme="dark"] .screen,:root[data-theme="dark"] .mini .scr{background:#0F1A33;color:#EAF2FF}
:root[data-theme="dark"] .screen .wm,:root[data-theme="dark"] .mini .wm{color:#EAF2FF}
:root[data-theme="dark"] .app-search{background:#1A2747;color:#9DB0D3}
:root[data-theme="dark"] .app-search:before{border-color:#EAF2FF}
:root[data-theme="dark"] .app-search:after{background:#EAF2FF}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]) .screen,:root:not([data-theme="light"]) .mini .scr{background:#0F1A33;color:#EAF2FF}
  :root:not([data-theme="light"]) .screen .wm,:root:not([data-theme="light"]) .mini .wm{color:#EAF2FF}
  :root:not([data-theme="light"]) .app-search{background:#1A2747;color:#9DB0D3}
  :root:not([data-theme="light"]) .app-search:before{border-color:#EAF2FF}
  :root:not([data-theme="light"]) .app-search:after{background:#EAF2FF}
}
.coupon .big{white-space:nowrap}
@media (max-width:560px){
  .coupon .big{font-size:60px}
  .coupon .stub{width:70px}
  .coupon .body{padding:20px}
  .ok{right:-14px;bottom:-40px;width:88px;height:88px}
  .ok:after{width:36px;height:19px;border-width:0 0 9px 9px}
  .till{width:300px}
  .pile .card{width:160px}
  .pile .card .cn{font-size:14px}
  .pile{height:360px}
  .share{transform:scale(.82);transform-origin:center top;height:380px}
}
