:root{--bg:#faf9f6;--ink:#17181c;--muted:#5d6068;--line:#e4e1d8;--card:#fff;--band:#eeede7;--orange:#ff6a13;--navy:#0f1f3d;--r:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 Montserrat,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
img,video{max-width:100%;display:block}button{font:inherit;cursor:pointer;border:0;background:none;color:inherit}
.shell{width:min(1200px,100% - 40px);margin-inline:auto}
h1,h2,h3{margin:0;line-height:1.05;letter-spacing:-.03em}
h1{font-size:clamp(40px,7.4vw,92px);font-weight:800}h2{font-size:clamp(30px,4.6vw,56px);font-weight:800}h3{font-size:20px;font-weight:700;letter-spacing:-.01em}
.eyebrow{display:flex;align-items:center;gap:9px;margin:0 0 16px;font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.dot{width:9px;height:9px;border-radius:50%;background:var(--orange);display:inline-block}
.top{position:sticky;top:0;z-index:30;background:rgba(250,249,246,.9);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;gap:20px;min-height:64px;justify-content:space-between}
.brand{white-space:nowrap;font-weight:800;font-size:24px;letter-spacing:-.04em;text-decoration:none;color:var(--ink)}.brand span{color:var(--orange)}
.links{display:flex;gap:26px}.links a{font-size:13px;font-weight:600;text-decoration:none;color:var(--ink)}.links a:hover{color:var(--orange)}
.tools{display:flex;align-items:center;gap:12px}
.lang{display:flex;background:var(--band);border-radius:99px;padding:3px}.lang button{padding:5px 11px;border-radius:99px;font-size:12px;font-weight:700;color:var(--muted)}.lang button.on{background:var(--ink);color:#fff}
.cart-btn{position:relative;width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center}
.cart-btn b{position:absolute;top:-4px;right:-4px;min-width:19px;height:19px;border-radius:99px;background:var(--orange);font-size:11px;display:grid;place-items:center;padding:0 5px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:14px 26px;border-radius:99px;background:var(--orange);color:#fff;font-weight:700;font-size:15px;text-decoration:none;transition:transform .15s,box-shadow .15s}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 22px rgba(255,106,19,.35)}
.btn.ghost{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 2px var(--ink)}.btn.ghost:hover{box-shadow:inset 0 0 0 2px var(--ink)}
.btn.dark{background:var(--ink)}
.link{color:var(--orange);font-weight:700;text-decoration:underline}
.hero{text-align:center;padding-block:64px 30px}
.hero .eyebrow{justify-content:center}
.lead{max-width:640px;margin:22px auto 0;font-size:19px;color:var(--muted)}.lead strong{color:var(--ink)}
.actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:28px}
.price-line{margin-top:22px;font-size:15px;color:var(--muted)}.price-line strong{font-size:22px;color:var(--ink)}small{font-size:.62em;font-weight:600;letter-spacing:.03em}
.colors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:30px}
.colors img{width:100%;height:600px;object-fit:contain}
.colors figcaption{display:flex;justify-content:center;align-items:center;gap:8px;font-size:13px;font-weight:600;margin-top:4px}
.sw{width:14px;height:14px;border-radius:50%;display:inline-block;box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}.sw.orange{background:var(--orange)}.sw.white{background:#fff}.sw.pink{background:#f3a6c1}
.pager{display:none}
.dealer-banner{display:inline-flex;gap:10px;align-items:center;margin-top:26px;padding:12px 22px;border-radius:99px;background:var(--navy);color:#fff;font-weight:700;font-size:14px;text-decoration:none}
.band{background:var(--band);padding-block:90px}.band.alt{background:#e7ecf3}.section{padding-block:90px}
.head{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:end;margin-bottom:44px}.head p:last-child{color:var(--muted);font-size:17px;margin:0}
.mat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:14px}
.mat-grid figure{margin:0;background:var(--card);border-radius:14px;overflow:hidden;box-shadow:0 2px 12px rgba(0,0,0,.06)}
.mat-grid video{width:100%;aspect-ratio:9/16;object-fit:cover;background:#222}
.mat-grid figcaption{padding:11px 12px;font-size:12px;font-weight:700;text-align:center}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:50px}
.steps article{background:var(--card);border-radius:var(--r);padding:26px}.steps span{font-weight:800;color:var(--orange);font-size:14px}.steps h3{margin:10px 0 8px}.steps p{margin:0;color:var(--muted);font-size:14px}
.vid-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start}
.vcard{margin:0;background:var(--card);border-radius:var(--r);padding:14px;box-shadow:0 2px 14px rgba(0,0,0,.06)}
.vcard video{width:100%;border-radius:12px;background:#111;aspect-ratio:9/16;object-fit:contain}
.vcard.wide{grid-column:1/-1;max-width:760px;margin-inline:auto;width:100%}.vcard.wide video{aspect-ratio:auto;max-height:520px}
.vcard figcaption{display:flex;flex-direction:column;gap:4px;padding:14px 4px 4px;font-size:14px}.vcard figcaption span{color:var(--muted);font-size:12.5px}
.use-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.use-grid article{background:var(--card);border-radius:var(--r);overflow:hidden}.use-grid img{width:100%;aspect-ratio:4/5;object-fit:cover}
.use-grid div{padding:22px}.use-grid .idx{font-size:12px;font-weight:800;color:var(--orange)}.use-grid h3{margin:6px 0}.use-grid p{margin:0;color:var(--muted);font-size:14.5px}
.shop-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:22px;align-items:stretch}
.prod{background:var(--card);border-radius:var(--r);overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 14px rgba(0,0,0,.06)}
.pimg{background:linear-gradient(#f5f3ee,#ebe8df);display:grid;place-items:center;padding:20px;min-height:380px}.pimg img{height:420px;object-fit:contain;width:100%}
.pimg.paper{min-height:230px;background:linear-gradient(135deg,#fff7ea,#ffe3c4)}
.stack{background:#fff;width:150px;aspect-ratio:2/3;border-radius:6px;box-shadow:6px 6px 0 #f0e4d2,12px 12px 0 #e8d8c0,0 8px 22px rgba(0,0,0,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(-4deg)}
.stack b{font-size:54px;font-weight:800;color:var(--orange);line-height:1}.stack span{font-size:11px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.stack.big{box-shadow:6px 6px 0 #f0e4d2,12px 12px 0 #e8d8c0,18px 18px 0 #e0cdb0,0 8px 22px rgba(0,0,0,.12)}
.pbody{padding:24px;display:flex;flex-direction:column;gap:12px;flex:1}.pbody p{margin:0;color:var(--muted);font-size:14.5px}
.opt{display:flex;flex-wrap:wrap;gap:8px;align-items:center;font-size:13px;font-weight:600}
.chip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:99px;box-shadow:inset 0 0 0 1.5px var(--line);font-size:13px;font-weight:600}.chip.on{box-shadow:inset 0 0 0 2px var(--ink)}
.buy{display:flex;justify-content:space-between;align-items:flex-end;gap:14px;margin-top:auto;padding-top:10px;flex-wrap:wrap}
.pr{display:flex;flex-direction:column}.pr strong{font-size:30px;font-weight:800;letter-spacing:-.03em;line-height:1}.pr small{color:var(--muted)}.pr em{font-style:normal;font-size:12px;color:var(--muted);margin-top:3px}
.pro-note{margin:22px 0 0;font-size:14px;color:var(--muted);text-align:center}
.spec{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;margin-top:80px;align-items:start}.spec .btn{margin-top:26px}
dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 24px}dl div{padding:14px 0;border-bottom:1px solid var(--line)}dt{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}dd{margin:4px 0 0;font-weight:700}
.dealers{background:var(--navy);color:#fff;padding-block:90px}.dealers .eyebrow{color:#9db0d4}.dealers p{color:#d0daf0}
.dl{display:grid;grid-template-columns:1.2fr 1fr;gap:50px;align-items:center}.dl h2{margin-bottom:20px}
.offer{background:#fff;color:var(--ink);border-radius:var(--r);padding:34px}.offer p{color:var(--muted)}.offer .mini{font-size:12px;margin-top:14px}
.pill{display:inline-block;padding:5px 13px;border-radius:99px;background:var(--orange);color:#fff;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:14px}
.offer h3{font-size:30px;margin-bottom:10px}.offer .btn{margin-top:8px}
.closing{text-align:center;padding-block:100px}.closing p{color:var(--muted);font-size:20px;margin:12px 0 28px}
.foot{display:grid;grid-template-columns:1fr 1fr;gap:24px 40px;padding-block:40px;border-top:1px solid var(--line);font-size:13px}.foot p{margin:6px 0 0;color:var(--muted)}
.fc{display:flex;flex-direction:column;gap:3px}.fc a{color:var(--ink)}.legal{grid-column:1/-1;font-size:11.5px}
.drawer{position:fixed;top:0;right:0;height:100%;width:min(420px,100%);background:#fff;z-index:50;transform:translateX(100%);transition:transform .25s;display:flex;flex-direction:column;box-shadow:-10px 0 40px rgba(0,0,0,.18)}.drawer.open{transform:none}
.dr-head{display:flex;justify-content:space-between;align-items:center;padding:20px 22px;border-bottom:1px solid var(--line)}.dr-head button{font-size:30px;line-height:1}
#cart-lines{flex:1;overflow:auto;padding:10px 22px}.empty{color:var(--muted);padding:30px 0}
.line{display:grid;grid-template-columns:1fr auto;gap:4px 12px;padding:16px 0;border-bottom:1px solid var(--line);font-size:14px}.line b{font-weight:700}.line .lp{text-align:right;font-weight:700}
.qty{display:flex;align-items:center;gap:10px}.qty button{width:28px;height:28px;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--line);font-weight:700}
.rm{font-size:12px;color:var(--muted);text-decoration:underline}
.dr-foot{padding:20px 22px;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:12px}.tot{display:flex;justify-content:space-between;align-items:baseline;font-weight:700}.tot strong{font-size:28px}
.mini{font-size:12px;color:var(--muted);margin:0}
.veil{position:fixed;inset:0;background:rgba(10,15,30,.5);z-index:40}
dialog{border:0;border-radius:22px;padding:34px;width:min(620px,calc(100% - 28px));max-height:92vh;color:var(--ink)}dialog::backdrop{background:rgba(10,15,30,.55)}
dialog h2{font-size:34px;margin-bottom:20px}.x{position:absolute;top:14px;right:18px;font-size:30px;line-height:1}
form label{display:block;font-size:12px;font-weight:700;margin-bottom:12px}form label span{display:block;margin-bottom:5px;color:var(--muted)}
input,textarea{width:100%;padding:11px 13px;border:1.5px solid var(--line);border-radius:10px;font:inherit;font-size:15px;background:#fff}input:focus,textarea:focus{outline:2px solid var(--orange);border-color:transparent}
.row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sum{background:var(--band);border-radius:12px;padding:14px 16px;font-size:13px;margin-bottom:14px;white-space:pre-line}
pre{background:var(--band);padding:16px;border-radius:12px;white-space:pre-wrap;font:13px/1.5 ui-monospace,Consolas,monospace;max-height:42vh;overflow:auto}
@media(max-width:980px){.mat-grid{grid-template-columns:repeat(3,1fr)}.steps{grid-template-columns:1fr 1fr}.shop-grid{grid-template-columns:1fr 1fr}.prod:first-child{grid-column:1/-1}.vid-grid{grid-template-columns:1fr 1fr}.head,.spec,.dl{grid-template-columns:1fr;gap:20px}.colors img{height:480px}.links{display:none}}
@media(max-width:720px){.colors{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;scrollbar-width:none;margin-inline:-20px;padding-inline:20px}.colors::-webkit-scrollbar{display:none}.colors figure{flex:0 0 88%;scroll-snap-align:center}.colors img{height:520px}
.pager{display:flex;gap:12px;justify-content:center;margin-top:6px}.pager button{width:10px;height:10px;border-radius:50%;background:#ccc;position:relative}.pager button::before{content:"";position:absolute;inset:-12px}.pager button.on{background:var(--orange)}
.use-grid,.steps,.vid-grid,.shop-grid,.foot,dl,.row{grid-template-columns:1fr}.mat-grid{grid-template-columns:1fr 1fr}.band,.section,.dealers{padding-block:60px}.hero{padding-top:40px}.pimg img{height:360px}.pimg{min-height:320px}dialog{padding:24px 18px}}

.brand .by{font-weight:600;font-size:.55em;letter-spacing:0;color:var(--muted)}
@media(max-width:560px){.brand .by{display:none}}
.shop-grid{grid-template-columns:1.3fr 1fr 1fr}.shop-grid .prod:first-child{grid-row:span 2}.prod.small .pimg.paper{min-height:170px}.prod.small .stack{width:110px}.prod.small .stack b{font-size:40px}
@media(max-width:980px){.shop-grid .prod:first-child{grid-row:auto}.shop-grid{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.shop-grid{grid-template-columns:1fr}}

.langsel{position:relative}.langsel button{display:flex;align-items:center;gap:8px;padding:7px 12px;border-radius:99px;background:var(--band);font-size:13px;font-weight:700}.langsel button img,.langsel li img{width:20px;height:15px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.12)}.langsel button b{font-size:10px}
.langsel ul{display:none;position:absolute;right:0;top:calc(100% + 8px);z-index:60;margin:0;padding:6px;list-style:none;background:#fff;border-radius:14px;box-shadow:0 14px 40px rgba(0,0,0,.2);max-height:70vh;overflow:auto;min-width:190px}
.langsel.open ul{display:block}.langsel li{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:9px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap}.langsel li:hover{background:var(--band)}.langsel li.on{background:var(--ink);color:#fff}
.vk-btn{padding:8px 14px;border-radius:99px;background:var(--navy);color:#fff;font-size:12.5px;font-weight:700;white-space:nowrap}
.vk{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap;padding-block:70px}.vk h2{margin-bottom:14px}.vk p:not(.eyebrow){color:var(--muted);max-width:560px;margin:0}
[dir=rtl] .langsel ul{right:auto;left:0}
@media(max-width:720px){.vk-btn{padding:8px 10px;font-size:11.5px}.langsel button span{display:none}.nav{gap:8px}.tools{gap:8px}}

/* HERO : bornes qui tournent → transformation → photo qui prend vie */
.h2{padding-block:44px 30px}.h2 .intro{max-width:760px}
.h2 h1{font-size:clamp(34px,5.4vw,66px)}
.h2 .sub{font-weight:800;font-size:clamp(15px,1.7vw,20px);color:var(--orange);margin:14px 0 0}
.h2 .lead2{max-width:640px;margin:14px 0 0;font-size:17px;color:var(--muted)}
.pricebox{display:flex;align-items:flex-end;gap:20px;flex-wrap:wrap;margin-top:20px}.pricebox .pl{display:block;font-size:11px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.pricebox strong{font-size:30px;letter-spacing:-.03em;line-height:1.1}.pricebox .link{font-size:13px;padding-bottom:4px}
.h2 .cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px}.h2 .opt{font-size:12.5px;color:var(--muted);margin:12px 0 0}
.stage{display:grid;grid-template-columns:1.15fr .85fr .8fr;align-items:center;margin-top:30px;background:linear-gradient(135deg,#fff,#f1efe8);border-radius:28px;box-shadow:0 10px 40px rgba(0,0,0,.08);position:relative}
.zone{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:22px 14px;min-height:560px}
.zone+.zone::before{content:"→";position:absolute;left:-14px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:800;z-index:3}
[dir=rtl] .zone+.zone::before{left:auto;right:-14px;content:"←"}
.zlabel{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;text-align:center}
.orbit{position:relative;width:100%;height:470px;perspective:1100px}
.orbit img{position:absolute;left:50%;top:0;height:100%;width:auto;max-width:none;transform-origin:50% 60%;transition:transform 1s cubic-bezier(.6,.05,.2,1),opacity 1s,filter 1s}
.orbit img[data-p="0"]{transform:translateX(-50%) scale(1);z-index:3;opacity:1}
.orbit img[data-p="1"]{transform:translateX(-18%) translateZ(-120px) scale(.78);z-index:2;opacity:.55;filter:blur(1.5px)}
.orbit img[data-p="2"]{transform:translateX(-82%) translateZ(-120px) scale(.78);z-index:2;opacity:.55;filter:blur(1.5px)}
.cname{margin-top:8px;display:flex;align-items:center;gap:9px;font-weight:800;font-size:17px;min-height:30px}
.dots{display:flex;gap:7px;margin-top:8px}.dots i{width:8px;height:8px;border-radius:50%;background:#cfcbc0;transition:.3s;cursor:pointer}.dots i.on{background:var(--orange);transform:scale(1.3)}
.fxbox{width:min(100%,250px);aspect-ratio:9/16;border-radius:22px;overflow:hidden;background:#111;box-shadow:0 12px 34px rgba(0,0,0,.2)}.fxbox video{width:100%;height:100%;object-fit:cover}
.alive{position:relative;width:min(100%,250px);aspect-ratio:2/3;border-radius:22px;overflow:hidden;box-shadow:0 12px 34px rgba(255,106,19,.35)}
.alive img,.alive video{width:100%;height:100%;object-fit:cover;animation:life 5s ease-in-out infinite alternate}.alive video{animation:none}
@keyframes life{from{transform:scale(1)}to{transform:scale(1.06) translate(-1%,-1%)}}
.alive .shine{position:absolute;inset:0;background:linear-gradient(105deg,transparent 40%,rgba(255,255,255,.45) 50%,transparent 60%);transform:translateX(-120%);animation:shine 5s infinite;pointer-events:none}
@keyframes shine{0%,40%{transform:translateX(-120%)}80%,100%{transform:translateX(120%)}}
.cap{margin:12px 0 0;font-size:13px;font-weight:700;text-align:center}.cap span{font-weight:500;color:var(--muted)}
.after{margin:18px 0 0;font-size:13px;color:var(--muted)}
@media(min-width:1100px){.h2{display:grid;grid-template-columns:.75fr 1.55fr;gap:30px;align-items:center}.h2 h1{font-size:clamp(34px,3.7vw,52px)}.h2 .stage{margin-top:0}.h2 .after,.h2 .dealer-banner{grid-column:1/-1}.zone{min-height:520px;padding:16px 8px}.orbit{height:430px}}
@media(max-width:900px){.stage{grid-template-columns:1fr 1fr}.zone:first-child{grid-column:1/-1;min-height:520px}.zone+.zone::before{display:none}}
@media(max-width:560px){.zone:first-child{min-height:480px}.orbit{height:400px}.zone{min-height:360px}.stage{border-radius:20px}.fxbox,.alive{width:100%}}
@media(prefers-reduced-motion:reduce){.orbit img,.alive img,.shine{animation:none!important;transition:none!important}}

.alive video{width:100%;height:100%;object-fit:cover;display:block}
.alive{aspect-ratio:768/1152}.fxbox{aspect-ratio:768/1152}
.subov{position:absolute;left:8px;right:8px;bottom:46px;text-align:center;color:#fff;font-weight:800;font-size:15px;line-height:1.25;text-shadow:0 1px 6px rgba(0,0,0,.85),0 0 2px #000;pointer-events:none;min-height:1.2em}
.snd{position:absolute;left:50%;transform:translateX(-50%);bottom:10px;background:rgba(15,31,61,.82);color:#fff;border-radius:99px;padding:7px 14px;font-size:12px;font-weight:700;white-space:nowrap}
@media(max-width:480px){.brand{font-size:19px}.vk-btn{padding:9px 12px}.vk-btn span:last-child{display:none}.langsel button{padding:7px 9px}.nav{gap:6px}.shell{width:calc(100% - 28px)}}

.pimg.pack{background:#fff;min-height:240px;padding:12px}.pimg.pack img{height:230px;width:100%;object-fit:contain}

.ks-banner{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;width:100%;padding:10px 18px;background:linear-gradient(90deg,#0A1A33,#143a7b);color:#fff;font-size:13px;font-weight:600;text-align:center}
.ks-banner b{background:#15FFFF;color:#0A1A33;padding:5px 14px;border-radius:99px;font-size:12px}
.ks-dot{width:9px;height:9px;border-radius:50%;background:#15FFFF;box-shadow:0 0 10px #15FFFF;display:inline-block;animation:ksp 1.6s infinite}
@keyframes ksp{50%{opacity:.35}}
.ks-line{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:14px 0 0;font-size:13.5px;font-weight:600;color:var(--navy,#0A1A33)}
.top{top:0}
@media(prefers-reduced-motion:reduce){.ks-dot{animation:none}}

[hidden]{display:none!important}

.legal-nav{display:flex;gap:8px 22px;flex-wrap:wrap;align-items:center;padding-block:14px 30px;font-size:12px;border-top:1px solid var(--line)}
.legal-nav a{color:var(--ink);font-weight:600;text-decoration:underline;text-underline-offset:3px}
.legal-nav .co{color:var(--muted);margin-inline-start:auto}
.consent{display:flex!important;gap:10px;align-items:flex-start;font-size:12.5px;font-weight:500!important;margin:6px 0 14px}
.consent input{width:auto;margin-top:3px}.consent span{margin:0!important;color:var(--ink)!important}.consent a{color:var(--orange);font-weight:700}

/* v3 : la transformation joue dans l'écran du photobooth */
.orbit .kiosk{position:absolute;left:50%;top:0;height:100%;aspect-ratio:1024/1536;transform-origin:50% 60%;transition:transform 1s cubic-bezier(.6,.05,.2,1),opacity 1s,filter 1s}
.orbit .kiosk .kbody{position:static;height:100%;width:100%;transform:none;transition:none;opacity:1;filter:none;display:block}
.orbit .kiosk .kscreen{position:absolute}
.orbit .kiosk[data-p="0"]{transform:translateX(-50%) scale(1);z-index:3;opacity:1}
.orbit .kiosk[data-p="1"]{transform:translateX(-18%) translateZ(-120px) scale(.78);z-index:2;opacity:.55;filter:blur(1.5px)}
.orbit .kiosk[data-p="2"]{transform:translateX(-82%) translateZ(-120px) scale(.78);z-index:2;opacity:.55;filter:blur(1.5px)}
.stage{grid-template-columns:1.35fr .8fr}
.orbit{height:520px}
@media(min-width:1100px){.h2{grid-template-columns:.7fr 1.6fr}.orbit{height:500px}.zone{min-height:600px}}
@media(max-width:900px){.stage{grid-template-columns:1fr}.zone:first-child{grid-column:auto}}
@media(max-width:560px){.orbit{height:440px}}

/* v4 : parcours en 4 étapes */
.kiosk{position:absolute;left:50%;top:0;height:100%;aspect-ratio:1024/1536;transform-origin:50% 60%;transition:transform 1s cubic-bezier(.6,.05,.2,1),opacity 1s,filter 1s}
.orbit .kiosk{transition:opacity .9s}
.orbit .kiosk{transform:translateX(-50%);opacity:0;pointer-events:none}
.orbit .kiosk.front{opacity:1;z-index:3}
.orbit .kiosk[data-p="1"],.orbit .kiosk[data-p="2"]{opacity:0}
.kbody{display:block;width:100%;height:100%;position:static}
.kscreen{position:absolute;overflow:hidden;border-radius:5px;background:#111}
.kscreen .ksel,.kscreen .kvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .4s}
.kscreen .ksel.on{opacity:1}
.kiosk.shot .ksel{opacity:0}
.kscreen .kvid[src]{opacity:1}
.kflash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none}
.kiosk.shot .kflash{animation:flash .5s}
@keyframes flash{0%{opacity:.95}100%{opacity:0}}
.kslot{position:absolute;overflow:hidden;aspect-ratio:2/3;z-index:1}
.kprint{display:block;width:100%;height:100%;object-fit:cover;transform:translateY(-102%);transition:transform 2.2s cubic-bezier(.3,.7,.2,1);box-shadow:0 8px 20px rgba(0,0,0,.25)}
.kiosk.printed .kprint{transform:translateY(0)}
.hsteps{list-style:none;margin:18px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px;counter-reset:s}
.hsteps li{display:flex;gap:9px;align-items:flex-start;padding:10px 12px;border-radius:14px;background:#fff;box-shadow:inset 0 0 0 1.5px var(--line);font-size:12.5px;font-weight:700;line-height:1.25;opacity:.55;transition:.3s}
.hsteps li b{flex:0 0 22px;height:22px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-size:12px}
.hsteps li.on{opacity:1;box-shadow:inset 0 0 0 2px var(--orange);transform:translateY(-2px)}
.hsteps li.on b{background:var(--orange)}
.how-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.how-grid article{background:var(--card);border-radius:var(--r);padding:16px;position:relative}
.how-grid .hi{aspect-ratio:2/3;border-radius:12px;overflow:hidden;background:#111;margin-bottom:12px}.how-grid .hi img{width:100%;height:100%;object-fit:cover}
.how-grid span{position:absolute;top:26px;left:26px;width:34px;height:34px;border-radius:50%;background:var(--orange);color:#fff;font-weight:800;display:grid;place-items:center}
.how-grid h3{font-size:17px;margin:2px 0 6px}.how-grid p{margin:0;color:var(--muted);font-size:14px}
@media(max-width:900px){.hsteps{grid-template-columns:1fr 1fr}.how-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hsteps{grid-template-columns:1fr}.how-grid{grid-template-columns:1fr}}
/* correctifs de spécificité : la règle générique ".orbit img" ne doit pas s'appliquer aux calques du kiosque */
.orbit .kiosk .kslot .kprint{position:static;left:auto;top:auto;width:100%;height:100%;max-width:none;object-fit:cover;transform:translateY(-102%);transition:transform 2.2s cubic-bezier(.3,.7,.2,1);opacity:1;filter:none}
.orbit .kiosk.printed .kslot .kprint{transform:translateY(0)}
.orbit .kiosk .kscreen .ksel{position:absolute;left:0;top:0;width:100%;height:100%;max-width:none;object-fit:cover;transform:none;transition:opacity .4s;filter:none;opacity:0}
.orbit .kiosk .kscreen .ksel.on{opacity:1}
.orbit .kiosk.shot .kscreen .ksel{opacity:0}

/* finitions du hero */
.h2 .hsteps{grid-column:1/-1}
.ks-line{display:block;line-height:1.5}.ks-line .ks-dot{margin-inline-end:8px;vertical-align:middle}
.alive video{transition:filter .6s,opacity .6s}
.alive.wait video{filter:blur(7px) grayscale(.5) brightness(.85);opacity:.8}
.alive.wait .snd,.alive.wait .subov{opacity:0}
.alive.wait::after{content:"4";position:absolute;inset:0;display:grid;place-items:center;font-size:84px;font-weight:800;color:#fff;text-shadow:0 4px 24px rgba(0,0,0,.55)}
.hsteps li{cursor:default}
@media(min-width:1100px){.hsteps{margin-top:6px}}

/* 4e diapositive : dimensions */
.kiosk.dims{container-type:inline-size;overflow:visible}
.kiosk.dims .dimsvg{position:absolute;left:0;top:0;width:100%;height:105.5%;pointer-events:none;overflow:visible}
.dchip{position:absolute;background:#fff;color:var(--navy,#0A1A33);border-radius:1.8cqw;padding:1.2cqw 2.2cqw;box-shadow:0 .6cqw 2.4cqw rgba(0,0,0,.22);text-align:center;font-size:4.2cqw;line-height:1.1;box-shadow:0 0 0 .5cqw rgba(10,26,51,.1),0 .6cqw 2.4cqw rgba(0,0,0,.18)}
.dchip b{display:block;font-size:6.4cqw;font-weight:800;color:var(--orange)}
.dchip i{display:block;font-style:normal;font-size:3.6cqw;color:var(--muted);font-weight:600}
.dchip span{display:block;font-size:3.4cqw;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin-top:.6cqw}
.dchip.h{left:-3%;top:44%;transform:translateX(-30%)}
.dchip.w{left:50%;top:103%;transform:translateX(-50%)}
.dchip.d{left:88%;top:80%}
.dchip.k{left:76%;top:6%}
.orbit .kiosk.dims.front{opacity:1}
.kiosk.dims .kscreen .ksel{opacity:1!important}

/* ===== HERO · disposition A : 4 cases ===== */
.h2{display:block!important}
.h2 .intro{max-width:820px}
.strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px;margin:44px 0 10px;position:relative}
.panel{position:relative;background:var(--card);border-radius:22px;padding:16px;box-shadow:0 8px 30px rgba(0,0,0,.07)}
.panel h3{margin:14px 0 4px;font-size:18px;letter-spacing:-.01em;line-height:1.2}
.panel .cap{margin:0;font-size:14px;font-weight:500;color:var(--muted);text-align:start}
.panel .vis{position:relative;height:440px;border-radius:16px;background:linear-gradient(#f5f3ee,#e9e6dc);overflow:hidden}
.panel .nb{position:absolute;top:-16px;inset-inline-start:-10px;z-index:3;width:44px;height:44px;font-size:20px;display:grid;place-items:center;border-radius:50%;background:var(--orange);color:#fff;font-weight:800;box-shadow:0 4px 12px rgba(0,0,0,.25)}
.panel:not(:last-child)::after{content:"→";position:absolute;inset-inline-end:-30px;top:46%;width:26px;height:26px;border-radius:50%;background:var(--ink);color:#fff;display:grid;place-items:center;font-weight:800;z-index:4}
[dir=rtl] .panel:not(:last-child)::after{content:"←"}
.pk{position:absolute;left:50%;transform:translateX(-50%);aspect-ratio:1024/1536}
.vis.full .pk{height:440px;top:0}
.vis.top .pk{height:920px;top:-12px}
.vis.bottom .pk{height:920px;top:-486px}
.pkbody{display:block;width:100%;height:100%}
.pkscreen{position:absolute;overflow:hidden;border-radius:5px;background:#111}
.pkscreen .pksel,.pkscreen .pkvid{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .4s}
.pkscreen .pkvid{opacity:0}.pkscreen .pkvid[src]{opacity:1}
.pk.shot .pksel{opacity:0}
.pkflash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none}
.pk.flash .pkflash{animation:flash .55s}
.pkslot{position:absolute;overflow:hidden;z-index:1}
.pkprint{display:block;width:100%;height:100%;object-fit:cover;transform:translateY(-102%);transition:transform 2.2s cubic-bezier(.3,.7,.2,1);box-shadow:0 8px 20px rgba(0,0,0,.25)}
.pk.printed .pkprint{transform:none}
.vis.phone{background:#222}.vis.phone video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
@media(max-width:1100px){.strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}.panel:nth-child(2)::after{display:none}.panel:nth-child(odd):not(:last-child)::after{inset-inline-end:-24px}}
@media(max-width:560px){.strip{grid-template-columns:1fr;gap:34px}.panel::after{display:none!important}.panel .vis{height:400px}.vis.full .pk{height:400px}.vis.top .pk{height:836px}.vis.bottom .pk{height:836px;top:-441px}}
/* les trois photobooths sont montrés EN ENTIER dans les cases 1, 2 et 3 (plus de zoom) */
.panel .vis.full .pk,.panel .vis.top .pk,.panel .vis.bottom .pk{height:440px;top:0}
@media(max-width:560px){.panel .vis.full .pk,.panel .vis.top .pk,.panel .vis.bottom .pk{height:400px;top:0}}

/* ===== hero : texte à gauche, photobooth coté (dimensions, poids, avant/après) à droite ; les 4 cases en 2e ligne ===== */
.h2{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);column-gap:30px;align-items:center}
.h2 .intro{grid-column:1}
.h2 .dkwrap{grid-column:2;grid-row:1;display:flex;justify-content:center;padding:40px 70px 90px}
.h2 .strip,.h2 .after,.h2 .dealer-banner{grid-column:1/-1}
.dk{position:relative;height:560px;aspect-ratio:1024/1536;container-type:inline-size}
.dkimg{display:block;width:100%;height:100%}
.dk .dimsvg{position:absolute;left:0;top:0;width:100%;height:105.5%;pointer-events:none;overflow:visible}
@media(max-width:900px){.h2{grid-template-columns:1fr}.h2 .dkwrap,.h2 .intro{grid-column:1}.h2 .dkwrap{grid-row:auto;padding:30px 70px 90px}.dk{height:480px}}
@media(max-width:560px){.h2 .dkwrap{padding:20px 40px 80px}.dk{height:400px}}
.dk{height:500px}.h2 .dkwrap{padding:30px 70px 70px}

/* vidéo 360° du photobooth, à droite du photobooth coté */
.h2{grid-template-columns:minmax(0,1fr) auto auto!important}
.h2 .dkwrap{grid-column:2!important;padding:30px 56px 70px!important}
.dk{height:460px!important}
.h2 .turn{grid-column:3;grid-row:1;position:relative;height:460px;aspect-ratio:620/1040;border-radius:22px;overflow:hidden;background:linear-gradient(#e9eef3,#cfd6df);box-shadow:0 14px 40px rgba(0,0,0,.14);margin-bottom:10px}
.turn video{width:100%;height:100%;object-fit:cover;display:block}
.t360{position:absolute;left:12px;bottom:12px;background:rgba(10,26,51,.85);color:#fff;font-weight:800;font-size:13px;letter-spacing:.06em;padding:5px 12px;border-radius:99px}
@media(max-width:1100px){.h2{grid-template-columns:1fr!important}.h2 .dkwrap,.h2 .turn{grid-column:1!important;grid-row:auto!important;justify-self:center}.h2 .turn{margin-top:10px}}
@media(max-width:560px){.dk{height:400px!important}.h2 .turn{height:400px}.h2 .dkwrap{padding:20px 40px 70px!important}}

/* vidéo 360° en 1re ligne (à la place du photobooth coté) + cotes dessous */
.h2{grid-template-columns:minmax(0,1fr) auto!important}
.h2 .turncol{grid-column:2;grid-row:1;display:flex;flex-direction:column;align-items:center;gap:14px;margin-bottom:6px}
.h2 .turncol .turn{grid-column:auto;grid-row:auto;height:520px;margin:0}
.tspecs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,auto);gap:10px;justify-content:center}
.tspecs li{background:#fff;border-radius:12px;padding:8px 12px;text-align:center;box-shadow:0 0 0 1.5px var(--line);line-height:1.15}
.tspecs b{display:block;font-size:17px;font-weight:800;color:var(--orange)}
.tspecs i{display:block;font-style:normal;font-size:11px;color:var(--muted);font-weight:600}
.tspecs span{display:block;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-top:2px}
@media(max-width:1100px){.h2{grid-template-columns:1fr!important}.h2 .turncol{grid-column:1;grid-row:auto;justify-self:center}.h2 .turncol .turn{height:460px}}
@media(max-width:560px){.h2 .turncol .turn{height:400px}.tspecs{grid-template-columns:repeat(2,auto)}}

/* fente de sortie du tirage (dessous du boîtier) + fond du panneau 2 plus soutenu pour le photobooth blanc */
.pkslit{position:absolute;z-index:2;height:1.25%;border-radius:99px;background:linear-gradient(#0d0d10,#2b2b30);box-shadow:0 1px 0 rgba(255,255,255,.35),inset 0 1px 2px rgba(0,0,0,.8);pointer-events:none}
.panel[data-s="2"] .vis{background:linear-gradient(#ccd1dc,#b4bac8)}

/* sortie du tirage : il sort de DESSOUS la tête (la tête recouvre le haut du tirage), sans trait noir ; légère ombre douce à l'endroit de la sortie */
.pkslot{overflow:visible!important;z-index:2}
.pkhead{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}
.pkscreen{z-index:4}
.pkgap{position:absolute;z-index:5;height:2.4%;pointer-events:none;background:radial-gradient(ellipse at 50% 0%,rgba(20,18,22,.34) 0%,rgba(20,18,22,.12) 45%,rgba(20,18,22,0) 72%)}
.pkslit{display:none}
.pkslot .pkprint{transform:translateY(-122%)}
.pk.printed .pkslot .pkprint,.pk.printed .pkprint{transform:none}
.panel[data-s="3"] .pk{transform:translateX(-50%) scale(.9);transform-origin:50% 0}

/* héros : la borne réelle (4 vues) en enchaînement, à la place de l'ancienne vidéo 360° */
.turn.seq img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 52%;opacity:0;animation:seqfade 9.6s infinite}
.turn.seq img:nth-of-type(1){animation-delay:0s;opacity:1}
.turn.seq img:nth-of-type(2){animation-delay:2.4s}
.turn.seq img:nth-of-type(3){animation-delay:4.8s}
.turn.seq img:nth-of-type(4){animation-delay:7.2s}
@keyframes seqfade{0%{opacity:0}4%{opacity:1}25%{opacity:1}29%{opacity:0}100%{opacity:0}}
@media(prefers-reduced-motion:reduce){.turn.seq img{animation:none}.turn.seq img:not(:first-of-type){display:none}}
.turn.seq img{transform:scale(1.32);transform-origin:50% 62%}

/* héros : deux scènes (soirée chic, pub cosy), plus de rotation 360° */
.turn.seq img{animation:seqfade2 10s infinite;transform:none;object-position:50% 50%}
.turn.seq img:nth-of-type(1){animation-delay:0s;opacity:1}
.turn.seq img:nth-of-type(2){animation-delay:5s;opacity:0}
@keyframes seqfade2{0%{opacity:0}6%{opacity:1}46%{opacity:1}54%{opacity:0}100%{opacity:0}}

.tspecs{grid-template-columns:repeat(3,auto)!important}
.use-grid img{aspect-ratio:1/1!important}

/* héros : carrousel de 3 scènes (office de tourisme, soirée, carterie) */
.turn.seq img{animation:seq3 12s infinite;object-position:50% 55%}
.turn.seq img:nth-of-type(1){animation-delay:0s;opacity:1}
.turn.seq img:nth-of-type(2){animation-delay:4s;opacity:0}
.turn.seq img:nth-of-type(3){animation-delay:8s;opacity:0}
@keyframes seq3{0%{opacity:0}4%{opacity:1}30%{opacity:1}36%{opacity:0}100%{opacity:0}}
.use-grid img{aspect-ratio:4/5!important;object-position:50% 62%}

.mens{margin:10px 0 0;padding:10px 14px;border-radius:12px;background:#fff6ec;border:1px dashed #ffb27a;font-size:13px;line-height:1.45;color:var(--ink)}

.m49{font-style:normal;font-size:13px;font-weight:600;color:var(--muted);white-space:nowrap}
.pr .m49{display:block;margin-top:2px}

.m49big{font-size:34px;letter-spacing:-.02em}.m49big .mb{white-space:nowrap}.pricebox .m49{display:block;margin-top:2px}.pr .m49big{font-size:30px}

.star{color:var(--orange);font-weight:800;text-decoration:none;margin-left:2px;font-size:1.1em}.star:hover{text-decoration:underline}
.star.s2{display:none}

[hidden]{display:none!important}
