:root{
  --bg:#070a1c; --bg-2:#0b1024; --surface:rgba(8,12,32,.86); --line:rgba(255,255,255,.1);
  --text:#eef2ff; --text-2:#c7cfe6; --text-3:#8d96b8;
  --cyan:#3dd6ff; --gold:#ffc940; --sky:#9fd9ff; --cream:#ffe2b8; --green:#5be3a6; --red:#ff5e5b; --red-2:#ffb3b1;
  --r-xl:26px; --r-lg:18px; --r-md:14px; --r-sm:12px;
  --shadow:0 10px 30px rgba(0,0,0,.45);
  --font:'Outfit',system-ui,-apple-system,'Segoe UI',sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-weight:500;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.01em;line-height:1.08;text-wrap:balance}
p{margin:0}
main{max-width:1120px;margin:0 auto;padding:0 20px}
section{padding:72px 0}
.kicker{font-size:12px;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--sky)}

/* boutons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 22px;border-radius:999px;font:inherit;font-weight:700;font-size:16px;border:1px solid transparent;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,background .2s ease;white-space:nowrap}
.btn:active{transform:scale(.97)}
.btn-primary{background:linear-gradient(180deg,#ffe9a8,#e0a91f);color:#3a2600;box-shadow:0 8px 24px rgba(255,201,64,.28)}
.btn-primary:hover{box-shadow:0 10px 32px rgba(255,201,64,.4)}
.btn-ghost{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.16);color:var(--text)}
.btn-ghost:hover{background:rgba(255,255,255,.09)}
.btn-small{padding:10px 16px;font-size:14px;background:rgba(61,214,255,.12);border-color:rgba(61,214,255,.5);color:var(--cyan)}

/* header */
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:rgba(7,10,28,.75);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:20px;letter-spacing:-.01em}
.brand-mark{width:30px;height:34px;border-radius:10px;background:linear-gradient(180deg,#f4f7ff,#c9d3e8);position:relative;box-shadow:inset 0 -3px 0 rgba(0,0,0,.15)}
.brand-mark::before{content:"";position:absolute;left:6px;right:6px;top:11px;height:11px;border-radius:6px;background:#070a1c}
.brand-mark::after{content:"";position:absolute;left:9px;top:14px;width:5px;height:5px;border-radius:50%;background:var(--cyan);box-shadow:8px 0 0 var(--cyan)}
.top-nav{display:flex;align-items:center;gap:18px;font-weight:600;color:var(--text-2)}
.top-nav a:not(.btn):hover{color:var(--text)}
.language-switch{display:flex;flex-shrink:0;gap:2px;padding:3px;border:1px solid rgba(159,217,255,.3);border-radius:999px;background:rgba(255,255,255,.04)}
.top-nav .language-switch a{display:inline-flex;align-items:center;justify-content:center;min-width:36px;min-height:36px;border-radius:999px;font-size:12px;font-weight:700;color:var(--text-2)}
.top-nav .language-switch a[aria-current="true"]{background:var(--sky);color:var(--bg)}
.top-nav .language-switch a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}

/* hero */
.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:40px;align-items:center;padding-top:64px;min-height:min(calc(100vh - 64px),720px)}
.hero h1{font-size:clamp(34px,5.2vw,60px);margin:14px 0 18px}
.lead{font-size:clamp(18px,2vw,22px);color:var(--cream);max-width:520px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.hero-note{margin-top:18px;font-size:13px;color:var(--text-3)}
.hero-art{position:relative;aspect-ratio:4/3}
.art{position:absolute;border-radius:var(--r-xl);box-shadow:var(--shadow)}
.art-main{width:82%;right:0;bottom:0;z-index:2;animation:float 6s ease-in-out infinite}
.art-back{width:58%;left:0;top:0;opacity:.85;filter:saturate(.9);animation:float 7s ease-in-out infinite reverse}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* tilt */
.tilt{text-align:center;max-width:820px;margin:0 auto;padding-top:40px}
.tilt-domains{font-size:clamp(22px,3.4vw,38px);font-weight:800;line-height:1.25;color:var(--text)}
.tilt-line{margin-top:22px;font-size:clamp(18px,2.2vw,24px);color:var(--cream);font-weight:600}
.tilt-sub{margin-top:14px;font-size:17px;color:var(--text-2);max-width:620px;margin-left:auto;margin-right:auto}

/* preuves */
.proof{padding-top:24px}
.axis{margin-bottom:44px}
.axis-head{display:flex;align-items:baseline;gap:16px;flex-wrap:wrap;margin-bottom:18px}
.axis-head h2{font-size:26px}
.axis-head p{color:var(--text-2)}
.axis-count{margin-left:auto;font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);font-weight:600}
.carousel{position:relative}
.track{list-style:none;margin:0;padding:4px 2px 10px;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.track::-webkit-scrollbar{display:none}
.card{flex:0 0 calc((100% - 28px)/3);scroll-snap-align:start;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:transform .2s ease,border-color .2s ease}
.card:hover{transform:translateY(-4px);border-color:rgba(159,217,255,.35)}
.card img{aspect-ratio:4/3;object-fit:cover;width:100%}
.card-body{padding:12px 16px 16px}
.card-body span{display:block;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--sky);font-weight:600;margin-bottom:4px}
.card h3{font-size:17px;line-height:1.2}
.car-btn{position:absolute;top:34%;z-index:2;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:rgba(8,12,32,.9);color:var(--text);font-size:26px;line-height:1;cursor:pointer;display:grid;place-items:center;box-shadow:var(--shadow);transition:opacity .2s}
.car-prev{left:-14px}.car-next{right:-14px}
.car-btn[disabled]{opacity:.25;cursor:default}
.car-more{display:none}
.proof-more{text-align:center;color:var(--text-3);font-size:14px;margin-top:8px}

/* démo */
.demo{background:radial-gradient(ellipse at 50% 0%,rgba(61,214,255,.08),transparent 60%);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.demo-head{text-align:center;max-width:720px;margin:0 auto 32px}
.demo-head h2{font-size:clamp(26px,3.6vw,38px);margin:10px 0 12px}
.demo-sub{color:var(--text-2)}
.demo-body{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start;max-width:960px;margin:0 auto}
.phone{position:relative;background:#0a0d1e;border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:14px;box-shadow:var(--shadow)}
.demo-body:has(.signs-col[hidden]){grid-template-columns:1fr;max-width:560px}
.signs-col[hidden]{display:none}
.phone-top{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-3);padding:4px 8px 12px;letter-spacing:.06em;text-transform:uppercase}
.phone-top .dot{width:8px;height:8px;border-radius:50%;background:var(--green)}
.phone-score{margin-left:auto;text-transform:none;letter-spacing:0;color:var(--text-2)}
.phone-score b{color:var(--gold)}
.sms-wrap{position:relative}
.sms{background:#f6f7fb;color:#151a2e;border-radius:18px;padding:14px 16px;font-size:17px;line-height:1.55;transition:box-shadow .3s}
.phone.hunting .sms{box-shadow:0 0 0 3px rgba(255,94,91,.55),0 0 24px rgba(255,94,91,.35);animation:smsPulse 1.6s ease-in-out infinite}
.phone.hunting.found1 .sms{animation:none}
@keyframes smsPulse{0%,100%{box-shadow:0 0 0 3px rgba(255,94,91,.55),0 0 24px rgba(255,94,91,.35)}50%{box-shadow:0 0 0 6px rgba(255,94,91,.25),0 0 34px rgba(255,94,91,.5)}}
.sms-hint{position:absolute;left:50%;bottom:-16px;transform:translateX(-50%);background:var(--red);color:#fff;font-size:12px;font-weight:700;padding:6px 12px;border-radius:999px;white-space:nowrap;box-shadow:0 6px 16px rgba(0,0,0,.4);animation:hintBob 1.2s ease-in-out infinite;pointer-events:none}
.sms-hint::before{content:"";position:absolute;left:50%;top:-6px;transform:translateX(-50%);border:6px solid transparent;border-bottom-color:var(--red);border-top:0}
@keyframes hintBob{0%,100%{transform:translate(-50%,0)}50%{transform:translate(-50%,-6px)}}
.stamp{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none;font-size:44px;font-weight:800;letter-spacing:.14em;color:var(--red);border:5px solid var(--red);border-radius:12px;width:min(78%,260px);height:74px;margin:auto;transform:rotate(-12deg) scale(3);opacity:0;background:rgba(246,247,251,.6);text-shadow:0 2px 0 rgba(0,0,0,.1)}
.stamp.on{animation:stampIn .5s cubic-bezier(.2,1.4,.4,1) forwards}
@keyframes stampIn{to{transform:rotate(-12deg) scale(1);opacity:1}}
.decide{margin-top:12px;background:rgba(255,201,64,.08);border:1px solid rgba(255,201,64,.4);border-radius:var(--r-md);padding:12px 14px}
.decide p{font-weight:600;margin-bottom:10px}
.decide-btns{display:flex;gap:8px;flex-wrap:wrap}
.decide-btns .btn{flex:1;font-size:14px;padding:11px 12px}
.signs-col{animation:pop .4s ease}
.signs-title{font-weight:700;margin-bottom:10px;display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap}
.signs-title span{font-size:12px;font-weight:600;color:var(--sky);letter-spacing:.04em}
.signs li{cursor:pointer;position:relative}
.signs li i{position:absolute;right:12px;top:12px;font-style:normal;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--sky);border:1px solid rgba(159,217,255,.5);border-radius:999px;padding:3px 8px}
.signs li.found i{display:none}
.signs li.hinting{border-color:var(--sky);background:rgba(61,214,255,.08)}
[data-sign].hint{animation:zonePulse .5s ease-in-out 3;background:rgba(61,214,255,.35)}
@keyframes zonePulse{50%{box-shadow:0 0 0 4px rgba(61,214,255,.6)}}
[data-sign].found{animation:zoneFound .45s cubic-bezier(.2,1.4,.4,1)}
@keyframes zoneFound{0%{box-shadow:0 0 0 0 rgba(255,94,91,0)}60%{box-shadow:0 0 0 8px rgba(255,94,91,.35)}100%{box-shadow:0 0 0 1.5px rgba(255,94,91,.7)}}
.coin-pop{position:absolute;right:16px;top:8px;color:var(--gold);font-weight:800;font-size:16px;pointer-events:none;animation:coinUp .9s ease-out forwards}
@keyframes coinUp{from{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-28px)}}
.sms-from{font-size:12px;color:#6b7390;letter-spacing:.04em;margin-bottom:8px;border-radius:8px;padding:4px 6px;margin-left:-6px;display:inline-block}
.sms-link{color:#2b6cf6;text-decoration:underline}
[data-sign]{cursor:pointer;border-radius:6px;padding:0 3px;transition:background .2s,box-shadow .2s;outline:none}
[data-sign]:hover,[data-sign]:focus-visible{background:rgba(255,94,91,.14)}
[data-sign].found{background:rgba(255,94,91,.16);box-shadow:0 0 0 1.5px rgba(255,94,91,.7)}
/* Pixo explique en haut de chaque scène, pas en bas */
.phone,.game-wrap,.quiz,.contract-wrap,.moon-stage,.feed-wrap,.sleep-wrap,.tshirt-wrap{display:flex;flex-direction:column}
.pixo-row{display:flex;gap:12px;align-items:flex-end;order:-1;margin:0 0 14px}
.phone .pixo-row{margin:0 0 12px}
.pixo{flex:none;width:48px;height:56px;border-radius:14px;background:linear-gradient(180deg,#f4f7ff,#c9d3e8);position:relative;box-shadow:inset 0 -4px 0 rgba(0,0,0,.15);animation:float 3.4s ease-in-out infinite}
.pixo::before{content:"";position:absolute;left:8px;right:8px;top:16px;height:16px;border-radius:8px;background:#070a1c}
.pixo .eye{position:absolute;top:21px;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 8px var(--cyan)}
.pixo .eye:first-child{left:13px}.pixo .eye:last-child{right:13px}
.bubble{background:var(--surface);border:1px solid rgba(61,214,255,.35);border-radius:var(--r-md);padding:10px 14px;font-size:15px;font-weight:600;min-height:44px}
.signs{list-style:none;margin:0;padding:0;display:grid;gap:8px;counter-reset:s}
.signs li{display:grid;grid-template-columns:32px 1fr;gap:10px;align-items:start;background:rgba(255,255,255,.04);border:1px dashed rgba(255,255,255,.18);border-radius:var(--r-sm);padding:12px 14px;counter-increment:s;color:var(--text-3);transition:all .25s}
.signs li::before{content:counter(s);width:26px;height:26px;border-radius:8px;display:grid;place-items:center;font-size:13px;font-weight:700;background:rgba(255,255,255,.06);color:var(--text-3)}
.signs li::before{grid-row:1 / span 2}
.signs li b{display:block;color:inherit;font-size:15px;grid-column:2;padding-right:70px}
.signs li span{display:block;font-size:13px;opacity:0;max-height:0;overflow:hidden;transition:all .3s;grid-column:2}
.signs li.found{border-style:solid;border-color:rgba(255,94,91,.6);background:rgba(255,94,91,.1);color:var(--text)}
.signs li.found::before{content:"✓";background:var(--red);color:#fff}
.signs li.found span{opacity:1;max-height:60px;color:var(--text-2);margin-top:2px}
.reflexe{max-width:720px;margin:32px auto 0;text-align:center;background:linear-gradient(180deg,rgba(91,227,166,.12),rgba(91,227,166,.04));border:1px solid rgba(91,227,166,.45);border-radius:var(--r-lg);padding:28px 24px;animation:pop .5s ease}
.reflexe .kicker{color:var(--green)}
.reflexe-text{font-size:clamp(18px,2.4vw,24px);font-weight:700;margin:10px 0 8px}
.reflexe-note{color:var(--text-2);margin-bottom:18px}
@keyframes pop{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}

/* démo 2 : la Lune */
.kicker-sky{color:var(--sky)}
.btn-sky{background:rgba(159,217,255,.14);border-color:rgba(159,217,255,.7);color:#dff1ff}
.btn-sky:disabled{opacity:.4;cursor:not-allowed}
.moon{background:radial-gradient(ellipse at 50% 100%,rgba(69,52,102,.35),transparent 60%);border-bottom:1px solid var(--line)}
.moon-stage{position:relative;max-width:820px;margin:0 auto;background:radial-gradient(ellipse at 50% 40%,#0b1234,#02030f 70%);border:1px solid rgba(159,217,255,.2);border-radius:var(--r-xl);padding:18px 18px 16px;box-shadow:var(--shadow);overflow:hidden}
.moon-stage::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.35) .6px,transparent .8px);background-size:38px 38px;opacity:.25;pointer-events:none}
.moon-count{position:relative;text-align:right;font-size:10px;letter-spacing:.14em;color:var(--sky);font-weight:600}
.moon-svg{position:relative;width:100%;height:auto;display:block;max-height:360px}
.moon-ring{animation:pulse 2.4s ease-in-out infinite;transform-origin:center}
@keyframes pulse{0%,100%{opacity:.8;transform:scale(1)}50%{opacity:.3;transform:scale(1.25)}}
#moon-trail.draw{opacity:.9;stroke-dasharray:var(--len);stroke-dashoffset:var(--len);animation:dash 2.4s ease-out forwards}
@keyframes dash{to{stroke-dashoffset:0}}
#moon-trails path{fill:none;stroke-width:2;stroke-dasharray:5 6;opacity:.3}
.moon-controls{position:relative;margin-top:6px}
.moon-zones{display:grid;grid-template-columns:1fr 1fr 1fr;font-size:10px;letter-spacing:.12em;font-weight:600;text-align:center;color:var(--text-3);margin-bottom:6px}
.moon-zones span:first-child{color:#ffb3a6;text-align:left}.moon-zones span:nth-child(2){color:var(--sky)}.moon-zones span:last-child{color:#c9b4ec;text-align:right}
.moon-slider{position:relative;padding-top:34px}
.moon-hint{position:absolute;left:50%;top:0;transform:translateX(-50%);background:#dff1ff;color:#0a1b42;font-size:12px;font-weight:700;letter-spacing:.04em;padding:6px 12px;border-radius:999px;white-space:nowrap;box-shadow:0 6px 16px rgba(0,0,0,.4);animation:hintWiggle 1.6s ease-in-out infinite;pointer-events:none}
.moon-hint::after{content:"";position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);border:6px solid transparent;border-top-color:#dff1ff;border-bottom:0}
.moon-hint.off{display:none}
@keyframes hintWiggle{0%,100%{transform:translateX(calc(-50% - 14px))}50%{transform:translateX(calc(-50% + 14px))}}
#moon-speed{width:100%;-webkit-appearance:none;appearance:none;height:18px;border-radius:9px;outline:none;cursor:grab;background:linear-gradient(90deg,rgba(255,150,120,.45) 0 34%,rgba(159,217,255,.45) 34% 66%,rgba(197,139,255,.45) 66% 100%);border:1px solid rgba(255,255,255,.18);box-shadow:inset 0 2px 6px rgba(0,0,0,.5)}
#moon-speed:active{cursor:grabbing}
#moon-speed::-webkit-slider-thumb{-webkit-appearance:none;width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffffff,#9fd9ff 45%,#1d4fa3);border:3px solid #fff;box-shadow:0 0 0 6px rgba(159,217,255,.25),0 0 22px rgba(159,217,255,.7);cursor:grab}
#moon-speed::-moz-range-thumb{width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffffff,#9fd9ff 45%,#1d4fa3);border:3px solid #fff;box-shadow:0 0 0 6px rgba(159,217,255,.25),0 0 22px rgba(159,217,255,.7);cursor:grab}
#moon-speed:focus-visible::-webkit-slider-thumb{outline:3px solid #fff}
.moon-legend{text-align:center;font-size:13px;color:var(--sky);margin-top:8px}
.moon-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-top:12px}
.moon-pixo{position:relative;margin-top:14px}
.bubble-sky{border-color:rgba(159,217,255,.45)}

/* le vertige */
.vertige{max-width:960px;margin:28px auto 0;background:#000;border-radius:var(--r-xl);padding:40px 32px 28px;overflow:hidden;position:relative;animation:pop .6s ease}
.v-text{font-size:clamp(20px,3vw,32px);font-weight:700;line-height:1.25;max-width:760px;min-height:3.6em}
.v-w{opacity:0;transition:opacity .6s ease}
.v-w.on{opacity:1}
.v-w0{color:#7fd0ff}.v-w1{color:#dfe7f2}.v-w2,.v-w3{color:#ffd682}
.v-scene{position:relative;height:260px;margin-top:24px}
.v-group{position:absolute;left:24px;top:110px;display:flex;align-items:center;transform-origin:0 50%;transition:transform 2.5s cubic-bezier(.4,0,.2,1)}
.v-group.far{transform:scale(.22)}
.v-earth,.v-moon{position:relative;opacity:0;transition:opacity .8s ease}
.v-earth.on,.v-moon.on{opacity:1}
.v-earth i{display:block;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#7fd0ff,#1d4fa3)}
.v-moon i{display:block;width:4px;height:4px;border-radius:50%;background:#dfe7f2;margin-left:-2px}
.v-line{width:354px;height:1px;background:rgba(255,255,255,.25);opacity:0;transition:opacity .8s ease .3s}
.v-moon.on ~ .v-line,.v-group.on .v-line{opacity:1}
.v-earth b,.v-moon b{position:absolute;top:18px;left:50%;transform:translateX(-50%);white-space:nowrap;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-weight:600;text-align:center;line-height:1.4}
.v-dots{position:absolute;left:120px;right:200px;top:115px;height:0;border-top:2px dotted rgba(255,201,64,.5);opacity:0;transition:opacity .8s ease}
.v-caption{position:absolute;left:50%;top:130px;transform:translateX(-50%);font-size:10px;letter-spacing:.14em;color:#ffd682;font-weight:600;opacity:0;transition:opacity .8s ease}
.v-sun{position:absolute;top:-70px;right:-420px;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle at 40% 40%,#fff2b3,#ffb340 55%,#e0651f);box-shadow:0 0 160px rgba(255,180,80,.55);transition:right 2s cubic-bezier(.4,0,.2,1)}
.v-sun b{position:absolute;left:-150px;bottom:120px;width:140px;text-align:right;font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#ffd682;font-weight:600;line-height:1.4;opacity:0;transition:opacity .6s ease 1.2s}
.v-scene.sun .v-sun{right:-160px}.v-scene.sun .v-sun b,.v-scene.sun .v-dots,.v-scene.sun .v-caption{opacity:1}
.v-actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:12px}
.v-note{text-align:center;font-size:13px;color:var(--text-3);margin-top:14px}

/* séparateurs d'axe */
.axis-divider{margin:40px calc(50% - 50vw) 0;padding:44px 20px 36px;text-align:center;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.divider-gold{background:linear-gradient(180deg,rgba(255,201,64,.14),rgba(255,201,64,.03));border-color:rgba(255,201,64,.35)}
.divider-sky{background:linear-gradient(180deg,rgba(159,217,255,.14),rgba(159,217,255,.03));border-color:rgba(159,217,255,.35)}
.divider-kicker{font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600}
.divider-gold .divider-kicker{color:var(--gold)}.divider-sky .divider-kicker{color:var(--sky)}
.axis-divider h2{font-size:clamp(30px,4.6vw,46px);margin:8px 0 8px}
.axis-divider p:last-child{color:var(--text-2);font-size:17px}

/* onglets et panneaux */
.demos{padding-top:28px}
.tabs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-bottom:28px;position:sticky;top:64px;z-index:5;padding:8px;background:rgba(7,10,28,.85);backdrop-filter:blur(10px);border-radius:999px;width:fit-content;margin-left:auto;margin-right:auto;max-width:100%}
.tabs button{font:inherit;font-weight:700;font-size:14px;padding:10px 16px;border-radius:999px;border:1px solid transparent;background:transparent;color:var(--text-2);cursor:pointer;transition:all .2s}
.tabs button:hover{color:var(--text)}
.demos-gold .tabs button.on{background:rgba(255,201,64,.16);border-color:rgba(255,201,64,.6);color:var(--gold)}
.demos-sky .tabs button.on{background:rgba(159,217,255,.16);border-color:rgba(159,217,255,.6);color:#dff1ff}
.panel{display:none}.panel.on{display:block;animation:pop .35s ease}
.bubble-gold{border-color:rgba(255,201,64,.45)}
.reveal{max-width:720px;margin:28px auto 0;text-align:center;border-radius:var(--r-lg);padding:28px 24px;animation:pop .5s ease;background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.14)}
.demos-gold .reveal{border-color:rgba(255,201,64,.45);background:linear-gradient(180deg,rgba(255,201,64,.12),rgba(255,201,64,.03))}
.demos-sky .reveal{border-color:rgba(159,217,255,.45);background:linear-gradient(180deg,rgba(159,217,255,.12),rgba(159,217,255,.03))}
.reveal-big{font-size:clamp(30px,5vw,52px);font-weight:800;line-height:1.1;margin:8px 0 10px}
.demos-gold .reveal-big{color:var(--gold)}.demos-sky .reveal-big{color:#dff1ff}
.reveal-text{color:var(--text-2);margin-bottom:16px;max-width:560px;margin-left:auto;margin-right:auto}
.reveal .reflexe-text{margin:14px 0 18px}
.reveal-after{display:inline-block;margin-top:4px;padding:8px 16px;border-radius:999px;background:rgba(91,227,166,.14);border:1px solid rgba(91,227,166,.5);color:#dfffee;font-weight:600}
.reveal-after b{color:var(--green);font-size:18px;margin-left:4px}
.reveal .btn,.reflexe .btn{margin-top:4px}
.reveal [data-replay],.reflexe [data-replay]{margin-right:8px}
.reveal [data-next-demo],.reflexe [data-next-demo],.v-actions [data-next-demo]{margin-left:8px}
@media (max-width:600px){.reveal [data-replay],.reflexe [data-replay],.reveal [data-next-demo],.reflexe [data-next-demo]{margin:6px 0 0}}
.btn.good{border-color:var(--green);background:rgba(91,227,166,.16);color:#dfffee}
.btn.bad{border-color:var(--red);background:rgba(255,94,91,.14);color:#ffd6d5}

/* le jeu gratuit */
.game-wrap{max-width:560px;margin:0 auto}
.game{position:relative;background:linear-gradient(180deg,#1d0b36,#0c0618);border:1px solid rgba(255,255,255,.12);border-radius:22px;overflow:hidden;box-shadow:var(--shadow)}
.game-hud{display:flex;gap:16px;padding:10px 14px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid rgba(255,255,255,.08)}
.game-hud b{color:var(--text);margin-left:4px}.game-spent{margin-left:auto}.game-spent b{color:var(--gold)}
.game-field{position:relative;height:280px;background:repeating-linear-gradient(180deg,rgba(255,120,200,.12) 0 1px,transparent 1px 28px),repeating-linear-gradient(90deg,rgba(255,120,200,.1) 0 1px,transparent 1px 28px)}
.game-start{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.target{position:absolute;width:52px;height:52px;border-radius:50%;border:3px solid #fff;background:radial-gradient(circle at 35% 30%,#fff2b3,#e0a91f 60%,#8a5c0e);box-shadow:0 0 18px rgba(255,201,64,.8);cursor:pointer;animation:targetIn .25s ease,targetPulse 1.4s linear forwards;transform-origin:center}
@keyframes targetIn{from{transform:scale(0)}to{transform:scale(1)}}
@keyframes targetPulse{to{opacity:.35;transform:scale(.6)}}
.popup{position:absolute;inset:0;display:grid;place-items:center;background:rgba(7,10,28,.75);backdrop-filter:blur(4px);padding:20px}
.popup[hidden]{display:none}
.popup>*{max-width:340px}
.popup-title{font-size:22px;font-weight:800;color:var(--gold);text-align:center}
.popup-text{text-align:center;color:var(--text-2);margin:6px 0 14px}
.popup-btns{display:grid;gap:8px}
.bank-line{display:flex;justify-content:space-between;gap:12px;background:#f6f7fb;color:#151a2e;border-radius:10px;padding:10px 14px;font-family:ui-monospace,Menlo,monospace;font-size:13px;max-width:420px;margin:0 auto 6px}
.bank-line b{color:#b3261e}

/* vrai ou faux */
.quiz{max-width:560px;margin:0 auto}
.quiz-card{background:var(--bg-2);border:1px solid rgba(255,201,64,.35);border-radius:22px;padding:24px;box-shadow:var(--shadow)}
.quiz-count{font-size:12px;letter-spacing:.14em;color:var(--text-3);font-weight:600}
.quiz-q{font-size:clamp(19px,2.6vw,24px);font-weight:700;margin:8px 0 18px;min-height:2.4em}
.quiz-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.quiz-a{margin-top:16px;padding-top:16px;border-top:1px solid var(--line);animation:pop .3s ease}
.quiz-verdict{font-weight:800;font-size:18px;margin-bottom:6px}
.quiz-a p:not(.quiz-verdict){color:var(--text-2);margin-bottom:14px}

/* le forfait */
.contract-wrap{max-width:560px;margin:0 auto}
.contract{background:#f6f7fb;color:#151a2e;border-radius:18px;padding:18px;box-shadow:var(--shadow)}
.contract-head{display:grid;gap:4px;text-align:center;padding-bottom:14px;border-bottom:1px dashed #c9cfe0;margin-bottom:12px}
.contract-head span{font-size:12px;letter-spacing:.14em;color:#6b7390;font-weight:600}
.contract-head b{font-size:46px;font-weight:800;line-height:1;color:#151a2e}.contract-head small{font-size:16px;color:#6b7390;font-weight:600}
.fine{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.fine li{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:13px;padding:8px 10px;border-radius:8px;cursor:pointer;border:1px dashed #c9cfe0;transition:all .2s}
.fine li:hover{background:#eceff8}
.fine-blur{filter:blur(4px);color:#6b7390;transition:filter .3s}
.fine li.seen{border-style:solid;border-color:#ff5e5b;background:#fff1f0}
.fine li.seen .fine-blur{filter:none;color:#151a2e;font-weight:600}
.fine li i{font-style:normal;font-weight:800;color:#b3261e;opacity:0;white-space:nowrap;transition:opacity .3s}
.fine li.seen i{opacity:1}
.contract-total{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:baseline;margin-top:14px;padding-top:12px;border-top:1px dashed #c9cfe0;font-size:13px;color:#6b7390}
.contract-total b{font-size:22px;font-weight:800;color:#151a2e;text-align:right}
.contract-total b.real{color:#b3261e;font-size:30px}

/* le téléphone */
.feed-wrap{max-width:480px;margin:0 auto}
.feed{background:#0a0d1e;border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:14px;box-shadow:var(--shadow)}
.feed-top{display:flex;justify-content:space-between;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);padding:4px 8px 12px}
.feed-top b{color:var(--sky)}
.feed-pull{width:100%;font:inherit;font-weight:700;font-size:16px;padding:16px;border-radius:14px;border:1px solid rgba(159,217,255,.6);background:rgba(159,217,255,.12);color:#dff1ff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:10px;transition:transform .2s}
.feed-pull:active{transform:translateY(6px)}
.feed-pull.pulling{transform:translateY(10px);opacity:.7}
.feed-pull:disabled{opacity:.4;cursor:default}
.feed-arrow{display:inline-block;animation:arrowBob 1.2s ease-in-out infinite}
@keyframes arrowBob{50%{transform:translateY(4px)}}
.feed-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:6px;min-height:150px}
.feed-list li{padding:12px 14px;border-radius:12px;font-size:15px;font-weight:600;animation:pop .3s ease}
.feed-win{background:rgba(91,227,166,.14);border:1px solid rgba(91,227,166,.5)}
.feed-none,.feed-empty{background:rgba(255,255,255,.04);color:var(--text-3);border:1px dashed rgba(255,255,255,.14);font-weight:500}
.slot{display:flex;gap:10px;justify-content:center;font-size:34px;margin:6px 0 10px}
.slot span{background:#0a0d1e;border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:8px 14px;animation:slotSpin 1.2s ease-out}
@keyframes slotSpin{from{transform:translateY(-30px) rotateX(90deg);opacity:0}to{transform:none;opacity:1}}

/* le sommeil */
.sleep-wrap{max-width:640px;margin:0 auto}
.sleep{background:radial-gradient(ellipse at 50% 0%,#0f1740,#02030f 70%);border:1px solid rgba(159,217,255,.2);border-radius:22px;padding:14px 16px 18px;box-shadow:var(--shadow)}
.sleep-svg{width:100%;height:auto;display:block}
.sleep-controls{margin-top:4px}
.sleep-readout{margin-top:10px;font-size:15px;color:var(--text-2)}
.sleep-readout b{display:inline-block;min-width:74px;font-size:20px;color:#dff1ff;margin-right:8px}
#sleep-hour{width:100%;-webkit-appearance:none;appearance:none;height:18px;border-radius:9px;outline:none;cursor:grab;background:linear-gradient(90deg,rgba(242,168,94,.45),rgba(26,35,82,.6) 40%,rgba(26,35,82,.6) 70%,rgba(242,168,94,.45));border:1px solid rgba(255,255,255,.18)}
#sleep-hour::-webkit-slider-thumb{-webkit-appearance:none;width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffffff,#ffe2b8 45%,#c8722e);border:3px solid #fff;box-shadow:0 0 0 6px rgba(255,226,184,.25),0 0 22px rgba(255,226,184,.6);cursor:grab}
#sleep-hour::-moz-range-thumb{width:42px;height:42px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#ffffff,#ffe2b8 45%,#c8722e);border:3px solid #fff;box-shadow:0 0 0 6px rgba(255,226,184,.25),0 0 22px rgba(255,226,184,.6);cursor:grab}

/* le t-shirt */
.tshirt-wrap{max-width:560px;margin:0 auto}
.tshirt{background:var(--bg-2);border:1px solid rgba(159,217,255,.3);border-radius:22px;padding:20px;box-shadow:var(--shadow)}
.guess{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.split{display:grid;gap:8px;margin-top:16px;animation:pop .4s ease}
.split[hidden]{display:none}
.bar{display:grid;grid-template-columns:150px 1fr 60px;align-items:center;gap:10px;font-size:13px;color:var(--text-2)}
.bar i{display:block;height:14px;border-radius:7px;background:rgba(159,217,255,.5);width:var(--w);animation:grow .8s ease-out}
.bar b{text-align:right;color:var(--text)}
.bar-hot{color:#ffd6d5;font-weight:700}.bar-hot i{background:var(--red);box-shadow:0 0 12px rgba(255,94,91,.7)}.bar-hot b{color:var(--red-2)}
@keyframes grow{from{width:0}}

/* how */
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.how-item{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px}
.how-num{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(61,214,255,.14);color:var(--cyan);font-weight:800;margin-bottom:12px}
.how-item h3{font-size:20px;margin-bottom:8px}
.how-item p{color:var(--text-2);font-size:15px}

/* offre */
.offer{border-top:1px solid var(--line)}
.kicker-gold{color:var(--gold)}
.offer-box{max-width:680px;margin:0 auto;text-align:center;background:linear-gradient(180deg,rgba(255,201,64,.1),rgba(255,201,64,.03));border:1px solid rgba(255,201,64,.45);border-radius:var(--r-xl);padding:40px 28px 30px;box-shadow:0 16px 48px rgba(255,201,64,.1)}
.offer-box h2{font-size:clamp(28px,4vw,40px);margin:10px 0 12px}
.offer-sub{font-size:18px;color:var(--cream);max-width:520px;margin:0 auto 22px}
.lead-form{display:flex;gap:10px;max-width:520px;margin:0 auto}
.lead-form input{flex:1;min-width:0;font:inherit;font-size:16px;padding:14px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.2);background:rgba(7,10,28,.7);color:var(--text);outline:none}
.lead-form input:focus{border-color:var(--gold)}
.form-error{color:var(--red-2);font-size:13px;margin-top:8px}
.offer-note{margin-top:14px;color:var(--text-2);font-size:14px}
.offer-price{margin-top:8px;color:var(--text-3);font-size:13px}
.chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:6px}
.chips button{font:inherit;font-weight:600;font-size:14px;color:var(--text);background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:10px 16px;cursor:pointer;transition:all .2s}
.chips button b{color:var(--gold);font-weight:800}
.chips button:hover{border-color:rgba(255,201,64,.5)}
.chips button.on{background:rgba(255,201,64,.16);border-color:var(--gold)}
.offer-head{text-align:center;margin-bottom:28px}
.offer-head h2{font-size:clamp(28px,4vw,40px);margin-bottom:10px}
.offer-head p{color:var(--text-2)}
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:stretch}
.plan{position:relative;background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-lg);padding:24px;display:flex;flex-direction:column;gap:12px}
.plan-best{border-color:rgba(255,201,64,.6);box-shadow:0 0 0 1px rgba(255,201,64,.2),0 16px 40px rgba(255,201,64,.12)}
.plan-tag{position:absolute;top:-12px;left:20px;background:var(--gold);color:#3a2600;font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:4px 10px;border-radius:999px}
.plan h3{font-size:20px}
.price{font-size:15px;color:var(--text-2)}
.price b{font-size:34px;color:var(--text);font-weight:800;margin-right:6px}
.plan ul{margin:0;padding:0;list-style:none;display:grid;gap:6px;color:var(--text-2);font-size:15px;flex:1}
.plan ul li::before{content:"✓ ";color:var(--green)}
.plan .btn{width:100%}
.offer-note{margin-top:22px;text-align:center;color:var(--text-3);font-size:14px;max-width:720px;margin-left:auto;margin-right:auto}

/* rank */
.rank{border-top:1px solid var(--line)}
.rank-head{text-align:center;margin-bottom:24px}
.rank-head h2{font-size:clamp(24px,3.4vw,34px);margin-bottom:8px}
.rank-head p{color:var(--text-2)}
.rank-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.rank-grid button{font:inherit;font-weight:600;font-size:15px;text-align:left;color:var(--text);background:rgba(255,255,255,.04);border:1px solid var(--line);border-radius:var(--r-md);padding:16px;cursor:pointer;transition:all .2s;min-height:76px}
.rank-grid button:hover{border-color:rgba(159,217,255,.4)}
.rank-grid button.on{background:rgba(61,214,255,.14);border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan)}
.rank-grid button:disabled{opacity:.45;cursor:not-allowed}
.rank-count{text-align:center;margin-top:14px;color:var(--text-3);font-size:14px;letter-spacing:.08em}
.rank-done{text-align:center;margin-top:18px}
.rank-done p{font-size:20px;font-weight:700;margin-bottom:14px;animation:pop .4s ease}

/* footer */
.foot{border-top:1px solid var(--line);padding:36px 20px 48px;text-align:center;color:var(--text-3);font-size:14px;display:grid;gap:8px}
.foot b{color:var(--text)}
.foot-links a:hover{color:var(--text)}

/* captures de l'app */
.shots{border-top:1px solid var(--line)}
.shots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.shots figure{margin:0}
.shots img{border-radius:var(--r-lg);border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow);aspect-ratio:4/3;object-fit:cover;width:100%}
.shots figcaption{margin-top:10px;font-size:14px;color:var(--text-2)}
.shots figcaption b{display:block;color:var(--text);font-size:15px;margin-bottom:2px}

/* plateformes */
.platforms{margin-top:26px;padding-top:22px;border-top:1px solid rgba(255,255,255,.1)}
.platforms-title{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);font-weight:600;margin-bottom:12px}
.badges{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.badge{display:inline-flex;align-items:center;gap:10px;background:#0a0d1e;border:1px solid rgba(255,255,255,.22);border-radius:12px;padding:8px 16px 8px 12px;color:var(--text);text-align:left;line-height:1.05}
.badge span{display:flex;flex-direction:column;font-weight:700;font-size:16px}
.badge small{font-size:10px;font-weight:500;color:var(--text-2);letter-spacing:.02em}
.devices{display:flex;gap:18px;justify-content:center;margin-top:14px;font-size:13px;color:var(--text-2);font-weight:600}
.devices span::before{content:"";display:inline-block;width:14px;height:10px;border:1.5px solid var(--text-3);border-radius:2px;margin-right:6px;vertical-align:-1px}
.devices span:first-child::before{width:7px;height:12px;border-radius:2px}
.devices span:last-child::before{width:16px;height:10px;border-bottom-width:3px}

/* formulaire : leurre invisible et mention légale */
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none}
.form-legal{margin-top:10px;font-size:12px;color:var(--text-3);max-width:520px;margin-left:auto;margin-right:auto}
.form-legal a,.consent a{color:var(--sky);text-decoration:underline}

/* bandeau de consentement */
.consent{position:fixed;left:16px;right:16px;bottom:16px;z-index:60;max-width:760px;margin:0 auto;display:flex;gap:16px;align-items:center;background:rgba(8,12,32,.96);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.16);border-radius:var(--r-lg);padding:16px 18px;box-shadow:var(--shadow);animation:pop .4s ease}
.consent p{font-size:14px;color:var(--text-2);flex:1}
.consent p b{color:var(--text)}
.consent-btns{display:flex;gap:8px;flex:none}
.consent-btns .btn{padding:10px 16px;font-size:14px}
@media (max-width:600px){.consent{flex-direction:column;align-items:stretch}.consent-btns{display:grid;grid-template-columns:1fr 1fr}}

/* pages légales */
.legal{max-width:760px;margin:0 auto;padding:48px 20px 72px}
.legal h1{font-size:clamp(28px,4vw,40px);margin-bottom:8px}
.legal .legal-date{color:var(--text-3);font-size:14px;margin-bottom:32px}
.legal h2{font-size:20px;margin:32px 0 10px;color:var(--cream)}
.legal p,.legal li{color:var(--text-2);margin-bottom:10px;font-size:16px;line-height:1.6}
.legal ul{padding-left:20px;margin:0 0 10px}
.legal a{color:var(--sky);text-decoration:underline}
.legal table{width:100%;border-collapse:collapse;margin:10px 0 16px;font-size:14px}
.legal th,.legal td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--line);color:var(--text-2);vertical-align:top}
.legal th{color:var(--text);font-weight:700}
.legal-wrap{overflow-x:auto}

/* prix affichés, sans bouton */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:560px;margin:22px auto 0}
.prices div{background:rgba(7,10,28,.55);border:1px solid rgba(255,255,255,.1);border-radius:var(--r-md);padding:14px 10px;display:grid;gap:2px}
.prices span{font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-weight:600}
.prices b{font-size:24px;font-weight:800;color:var(--text)}
.prices small{font-size:12px;color:var(--text-2)}

/* responsive */
@media (max-width:900px){
  .hero{grid-template-columns:1fr;min-height:0;padding-top:40px}
  .hero-art{max-width:520px;margin:0 auto;width:100%}
  .how,.plans{grid-template-columns:1fr 1fr}
  .card{flex-basis:calc((100% - 14px)/2.2)}
  .shots-grid{grid-template-columns:1fr}
  .shots figure{max-width:620px;margin:0 auto}
  .rank-grid{grid-template-columns:1fr 1fr 1fr}
  .demo-body{grid-template-columns:1fr}
}
@media (max-width:600px){
  section{padding:52px 0}
  .top{padding:12px}
  .brand{font-size:18px;gap:7px}
  .top-nav{gap:8px}
  .top-nav .btn-small{width:auto;font-size:12px;padding:9px 10px}
  .top-nav .language-switch a{min-width:30px;min-height:36px}
  .top-nav > a:not(.btn){display:none}
  .how,.plans{grid-template-columns:1fr}
  /* sur téléphone : carrousel au doigt, deux cartes visibles et un bout de la troisième */
  .track{gap:10px;padding:4px 0 8px}
  .card{flex-basis:calc((100% - 10px)/2.15)}
  .car-btn{display:none}
  .car-more{display:none}
  .card h3{font-size:14px}
  .card-body{padding:10px 12px 12px}
  .rank-grid{grid-template-columns:1fr 1fr}
  .rank-grid button{min-height:64px;font-size:14px;padding:12px}
  .sms{font-size:16px}
  .tabs{position:static;flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;border-radius:14px;width:100%;scrollbar-width:none;padding:6px}
  .tabs::-webkit-scrollbar{display:none}
  .tabs button{white-space:nowrap;flex:0 0 auto;font-size:13px;padding:9px 12px}
  .axis-divider{margin-top:24px;padding:32px 16px 26px}
  .quiz-btns,.guess{grid-template-columns:1fr}
  .bar{grid-template-columns:110px 1fr 54px;font-size:12px}
  .game-field{height:240px}
  .moon-zones{font-size:8px;letter-spacing:.06em}
  .moon-actions .btn{width:100%}
  .vertige{padding:28px 18px 22px}
  .v-scene{height:200px}
  .v-sun{width:240px;height:240px;top:-30px;right:-300px}
  .v-scene.sun .v-sun{right:-120px}
  .v-sun b{left:-130px;width:120px;bottom:80px}
  .v-dots{left:60px;right:120px}
  .v-caption{left:20px;transform:none;top:135px}
  .btn{width:100%}
  .hero-actions .btn{width:100%}
  .hero-actions .btn,.lead-form .btn{white-space:normal}
  .lead-form{flex-direction:column}
  .prices{grid-template-columns:1fr}
  .prices div{grid-template-columns:auto 1fr;align-items:baseline;column-gap:10px;text-align:left}
  .prices small{grid-column:1/-1}
  .offer-box{padding:30px 18px 24px}
  .chips button{width:100%}
}
@media (max-width:360px){
  .top{padding:10px 8px}
  .top-nav{gap:6px}
  .top-nav .btn-small{font-size:11px;padding:9px 7px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}html{scroll-behavior:auto}}
