/* D-SLS — accueil « 2050 » : rue intelligente + hologramme (classes préfixées hx-) */
.hx{padding:0!important;margin:0!important;--c:#3DD6C3;--c2:#00B8D4;--o:#E8890A;--bg:#02040A;--mu:#7f97aa;--ln:rgba(61,214,195,.18);
 position:relative;background:var(--bg);color:#E6FBFF;font-family:'Space Grotesk',var(--font-body,system-ui),sans-serif;overflow:hidden;isolation:isolate}
.hx *{box-sizing:border-box}.hx a{text-decoration:none;color:inherit}.hx h1,.hx h2,.hx h3,.hx p{margin:0}
.hx::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:30;background:repeating-linear-gradient(0deg,rgba(255,255,255,.022) 0 1px,transparent 1px 3px)}
.hx-hero{position:relative;height:min(900px,calc(100vh - 116px));min-height:660px}
/* ciel */
.hx-sky{position:absolute;inset:0;z-index:-3;background:radial-gradient(90% 60% at 70% 30%,rgba(0,184,212,.16),transparent 60%),radial-gradient(60% 40% at 20% 100%,rgba(232,137,10,.14),transparent 70%),linear-gradient(180deg,#01030a,#050b18 60%,#070d1a)}
.hx-stars{position:absolute;inset:0;z-index:-2;background-image:radial-gradient(1.2px 1.2px at 8% 12%,#fff9 50%,transparent),radial-gradient(1px 1px at 23% 30%,#fff6 50%,transparent),radial-gradient(1.4px 1.4px at 41% 8%,#fff8 50%,transparent),radial-gradient(1px 1px at 57% 22%,#fff5 50%,transparent),radial-gradient(1.2px 1.2px at 74% 6%,#fff7 50%,transparent),radial-gradient(1px 1px at 88% 18%,#fff6 50%,transparent),radial-gradient(1px 1px at 95% 40%,#fff4 50%,transparent),radial-gradient(1.3px 1.3px at 33% 46%,#fff4 50%,transparent),radial-gradient(1px 1px at 64% 38%,#fff3 50%,transparent);animation:hxtw 6s ease-in-out infinite alternate}
@keyframes hxtw{to{opacity:.55}}
.hx-city{position:absolute;left:0;right:0;bottom:27%;height:30%;z-index:-1;opacity:.55;background:
 linear-gradient(#0b1424,#0b1424) 3% 100%/5% 52% no-repeat,linear-gradient(#0d1729,#0d1729) 9% 100%/4% 78% no-repeat,linear-gradient(#0a1322,#0a1322) 14% 100%/6% 40% no-repeat,
 linear-gradient(#0d1729,#0d1729) 22% 100%/3% 95% no-repeat,linear-gradient(#0b1424,#0b1424) 27% 100%/7% 60% no-repeat,linear-gradient(#0d1729,#0d1729) 36% 100%/4% 72% no-repeat,
 linear-gradient(#0a1322,#0a1322) 62% 100%/5% 66% no-repeat,linear-gradient(#0d1729,#0d1729) 69% 100%/4% 90% no-repeat,linear-gradient(#0b1424,#0b1424) 75% 100%/6% 50% no-repeat,
 linear-gradient(#0d1729,#0d1729) 83% 100%/3% 82% no-repeat,linear-gradient(#0a1322,#0a1322) 88% 100%/7% 58% no-repeat,linear-gradient(#0d1729,#0d1729) 96% 100%/4% 70% no-repeat;
 -webkit-mask:linear-gradient(transparent,#000 30%);mask:linear-gradient(transparent,#000 30%)}
.hx-city::after{content:"";position:absolute;inset:0;background-image:radial-gradient(1.6px 1.6px,rgba(255,200,120,.55) 60%,transparent 70%);background-size:22px 26px;opacity:.35;-webkit-mask:inherit;mask:inherit}
/* texte */
.hx-txt{position:absolute;z-index:6;inset-inline-start:clamp(18px,5vw,80px);top:clamp(20px,4.5vh,52px);max-width:min(600px,48vw)}
.hx-eb{font:500 11px 'JetBrains Mono',monospace;letter-spacing:.28em;color:var(--c);display:flex;align-items:center;gap:12px}
.hx-eb::after{content:"";width:60px;height:1px;background:linear-gradient(90deg,var(--c),transparent)}
.hx-txt h1{font:900 clamp(34px,4.4vw,68px)/1.04 'Space Grotesk',sans-serif;letter-spacing:.01em;margin:18px 0 16px;color:#fff;text-shadow:none}
.hx-txt h1 em{font-style:normal;background:linear-gradient(90deg,var(--o),#ffd08a);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none;filter:)}
.hx-txt p{color:#b8cbd8;font-size:clamp(15px,1.3vw,18px);line-height:1.6;max-width:52ch}
.hx-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.hx-b1,.hx-b2{display:inline-flex;align-items:center;gap:12px;padding:15px 22px;font:700 13px 'Space Grotesk',sans-serif;letter-spacing:.1em;transition:.25s;clip-path:polygon(0 0,100% 0,100% 70%,calc(100% - 12px) 100%,0 100%)}
.hx-b1{background:var(--c);color:#001!important}.hx-b1:hover{background:#fff;box-shadow:none}
.hx-b2{border:1px solid var(--ln);background:rgba(61,214,195,.06);color:var(--c)!important}.hx-b2:hover{background:rgba(61,214,195,.16)}
/* hologramme */
.hx-holo{position:absolute;z-index:4;inset-inline-end:clamp(10px,7vw,130px);top:clamp(0px,2vh,30px);width:min(420px,32vw);height:min(440px,50vh)}
.hx-hcore{position:absolute;left:50%;bottom:16%;height:78%;transform:translateX(-50%);display:flex;align-items:flex-end;animation:hxfl 6s ease-in-out infinite}
@keyframes hxfl{50%{transform:translate(-50%,-12px)}}
.hx-hcore img{height:100%;width:auto;object-fit:contain;filter:) drop-shadow(0 20px 20px rgba(0,0,0,.6))}
.hx-ped{position:absolute;left:50%;bottom:8%;width:72%;height:15%;transform:translateX(-50%);border-radius:50%;border:1.5px solid var(--c);box-shadow:0 0 34px 6px rgba(61,214,195,.55),inset 0 0 24px rgba(61,214,195,.5);animation:hxpl 3s ease-in-out infinite}
.hx-ped.p2{width:48%;height:9%;bottom:11%;opacity:.6;animation-delay:-1.5s}
@keyframes hxpl{50%{box-shadow:0 0 50px 10px rgba(61,214,195,.75),inset 0 0 30px rgba(61,214,195,.6)}}
.hx-beam{position:absolute;left:50%;bottom:14%;width:60%;height:85%;transform:translateX(-50%);background:linear-gradient(0deg,rgba(61,214,195,.25),transparent 85%);clip-path:polygon(18% 100%,82% 100%,64% 0,36% 0);filter:blur(10px)}
.hx-chip{position:absolute;left:50%;top:50%;padding:7px 11px;border:1px solid var(--ln);background:rgba(2,6,14,.78);backdrop-filter:blur(4px);font:600 12px 'JetBrains Mono',monospace;color:#fff;white-space:nowrap;letter-spacing:.04em;direction:ltr}
.hx-chip b{color:var(--c);font-weight:600}
/* rue intelligente */
.hx-street{position:absolute;left:0;right:0;bottom:0;height:30%;z-index:5}
.hx-road{position:absolute;left:0;right:0;bottom:0;height:23%;background:linear-gradient(180deg,#0b1220,#060a12);border-top:1px solid rgba(61,214,195,.25)}
.hx-road::before{content:"";position:absolute;left:0;right:0;top:46%;height:2px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.35) 0 34px,transparent 34px 70px)}
.hx-pole{position:absolute;bottom:23%;width:0;height:76%}
.hx-pole i.m{position:absolute;left:-2px;bottom:0;width:4px;height:100%;background:linear-gradient(90deg,#3b4a5c,#8aa0b5,#3b4a5c);border-radius:2px}
.hx-pole i.a{position:absolute;left:0;top:0;width:36px;height:3px;background:#7f93a8;border-radius:2px}
.hx-pole i.h{position:absolute;left:24px;top:-4px;width:40px;height:9px;border-radius:5px 5px 3px 3px;background:#334255;box-shadow:inset 0 -3px 0 rgba(255,180,107,var(--l,.3));transition:box-shadow .5s}
.hx-pole.on i.h{box-shadow:inset 0 -3px 0 #ffc48a,0 4px 18px rgba(255,170,90,.95)}
.hx-cone{position:absolute;left:-46px;top:5px;width:180px;height:calc(100% + 30px);background:linear-gradient(180deg,rgba(255,180,107,.62),rgba(255,160,80,.1) 85%,transparent);clip-path:polygon(43% 0,57% 0,100% 100%,0 100%);opacity:var(--l,.3);transition:opacity .12s linear;filter:blur(1px);pointer-events:none}
.hx-pool{position:absolute;left:-36px;bottom:-26px;width:160px;height:22px;border-radius:50%;background:radial-gradient(closest-side,rgba(255,170,95,.8),transparent);opacity:var(--l,.3);transition:opacity .12s linear}
.hx-pct{position:absolute;left:30px;top:-22px;white-space:nowrap;font:600 10px 'JetBrains Mono',monospace;color:var(--mu);letter-spacing:.06em;transition:color .4s;direction:ltr}
.hx-pole.on .hx-pct{color:var(--o)}
.hx-ping{position:absolute;left:44px;top:6px;width:10px;height:10px;border-radius:50%;border:1.5px solid var(--c);opacity:0}
.hx-pole.ping .hx-ping{animation:hxping 1.1s ease-out}
@keyframes hxping{0%{opacity:1;transform:translate(-50%,0) scale(1)}100%{opacity:0;transform:translate(-50%,0) scale(14,9)}}
.hx-car{position:absolute;bottom:8%;width:96px;height:34px;z-index:2;will-change:left}
.hx-car svg{width:100%;height:100%}
.hx-ped2{position:absolute;bottom:23%;width:14px;height:34px;z-index:2;will-change:left}
.hx-ped2 svg{width:100%;height:100%}
.hx-hud{position:absolute;z-index:7;inset-inline-end:clamp(18px,5vw,80px);bottom:calc(30% + 46px);text-align:end;font:500 10.5px 'JetBrains Mono',monospace;letter-spacing:.14em;color:var(--mu)}
.hx-hud b{display:block;font:700 clamp(22px,2.4vw,34px) 'Space Grotesk',sans-serif;color:var(--o);letter-spacing:.02em;text-shadow:none;direction:ltr}
.hx-hud .lv{display:inline-block;width:7px;height:7px;border-radius:50%;background:#3dff9a;box-shadow:none;margin-inline-end:7px;animation:hxbl 1.4s infinite}
@keyframes hxbl{50%{opacity:.25}}
/* accès rapides */
.hx-tiles{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ln)}
.hx-tile{position:relative;padding:26px clamp(16px,2.4vw,34px) 28px;border-inline-end:1px solid var(--ln);transition:background .3s;overflow:hidden}
.hx-tile:last-child{border-inline-end:0}
.hx-tile:hover{background:linear-gradient(160deg,rgba(61,214,195,.10),transparent 70%)}
.hx-tile span{font:500 10.5px 'JetBrains Mono',monospace;color:var(--c);letter-spacing:.2em}
.hx-tile h3{font:700 clamp(17px,1.5vw,21px) 'Space Grotesk',sans-serif;color:#fff;margin:10px 0 6px;letter-spacing:.03em}
.hx-tile p{color:var(--mu);font-size:14px}
.hx-tile i{position:absolute;inset-inline-end:22px;top:26px;font-style:normal;color:var(--c);font-size:20px;transition:transform .3s}
.hx-tile:hover i{transform:translateX(5px)}[dir=rtl] .hx-tile:hover i{transform:translateX(-5px)}
@media(max-width:1100px){.hx-holo{opacity:.5;width:min(360px,40vw)}.hx-txt{max-width:min(620px,70vw)}}
@media(max-width:760px){
 .hx-hero{height:auto;min-height:0;padding-bottom:300px}
 .hx-txt{position:relative;inset:auto;max-width:none;padding:34px 18px 0}
 .hx-holo{position:relative;inset:auto;width:100%;height:330px;opacity:1;margin-top:6px}
 .hx-street{height:270px}.hx-city{bottom:200px;height:200px}.hx-pole:nth-child(n+6){display:none}
 .hx-hud{bottom:280px}.hx-tiles{grid-template-columns:1fr 1fr}.hx-tile:nth-child(2){border-inline-end:0}.hx-tile:nth-child(-n+2){border-bottom:1px solid var(--ln)}
 .hx-chip{font-size:10px;padding:5px 8px}}
@media(prefers-reduced-motion:reduce){.hx *{animation:none!important;transition:none!important}}
/* accroche question → réponse */
.hx-q{font:500 clamp(14px,1.35vw,19px)/1.4 'JetBrains Mono',monospace;color:var(--c);margin:20px 0 4px;min-height:1.4em;letter-spacing:.01em}
.hx-cur{display:inline-block;width:.55em;height:1.05em;background:var(--c);margin-inline-start:4px;vertical-align:-2px;animation:hxbl .9s steps(1) infinite;box-shadow:none}
.hx-txt h1.hx-a{margin:8px 0 16px;transition:opacity .5s,filter .5s,transform .6s cubic-bezier(.2,.8,.2,1)}
.hx-txt h1.hx-a.out{opacity:0;filter:blur(8px);transform:translateY(10px)}
.hx-txt h1.hx-a em{display:block}
.hx-txt{max-width:min(680px,52vw)}
.hx-txt h1.hx-a{font-size:clamp(28px,3.4vw,52px);min-height:2.25em;display:flex;flex-direction:column;justify-content:flex-end}
.hx-txt p{font-size:clamp(14px,1.15vw,16.5px)}
@media(max-width:760px){.hx-txt{max-width:none}.hx-txt h1.hx-a{min-height:2.3em}}
/* ===== démonstration LiDAR (ld-) ===== */
.ld{position:relative;background:#02040A;color:#E6FBFF;padding:clamp(50px,7vw,90px) 0 0!important;margin:0!important;font-family:'Space Grotesk',var(--font-body,system-ui),sans-serif;overflow:hidden;border-top:1px solid rgba(61,214,195,.18)}
.ld *{box-sizing:border-box}.ld h2,.ld p,.ld ul{margin:0;padding:0}
.ld-in{max-width:1380px;margin:0 auto;padding:0 clamp(16px,4vw,60px)}
.ld-k{font:500 11px 'JetBrains Mono',monospace;letter-spacing:.26em;color:#3DD6C3}
.ld h2{font:900 clamp(26px,3.6vw,50px)/1.08 'Space Grotesk',sans-serif;color:#fff;margin:12px 0 12px;letter-spacing:.01em}
.ld h2 em{font-style:normal;color:#E8890A;text-shadow:none}
.ld-in>p{color:#9fb4c4;max-width:72ch;font-size:16px;line-height:1.6}
.ld-stage{position:relative;margin-top:26px}
.ld canvas{display:block;width:100%;height:clamp(380px,42vw,520px)}
.ld-panel{position:absolute;top:16px;inset-inline-start:clamp(12px,3vw,40px);width:min(300px,42vw);border:1px solid rgba(61,214,195,.22);background:rgba(2,6,14,.82);backdrop-filter:blur(6px);padding:14px 16px;clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%)}
.ld-panel h3{font:500 10.5px 'JetBrains Mono',monospace;letter-spacing:.18em;color:#7f97aa;margin:0 0 10px;display:flex;align-items:center;gap:8px}
.ld-panel h3 i{width:7px;height:7px;border-radius:50%;background:#3dff9a;box-shadow:none;animation:hxbl 1.4s infinite}
.ld-cn{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ld-cn div{border:1px solid rgba(61,214,195,.18);padding:8px 10px;transition:background .3s}
.ld-cn div.hit{animation:ldhit .7s}
@keyframes ldhit{0%{background:rgba(61,214,195,.35)}100%{background:transparent}}
.ld-cn b{display:block;font:700 26px 'Space Grotesk',sans-serif;color:#fff;text-shadow:none}
.ld-cn span{font:500 10px 'JetBrains Mono',monospace;color:#7f97aa;letter-spacing:.08em;text-transform:uppercase}
.ld-cn div.an b{color:#8c97a5;text-shadow:none}
.ld-log{list-style:none;margin-top:10px!important;font:500 10.5px/1.7 'JetBrains Mono',monospace;min-height:72px}
.ld-log li{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ld-log li span{color:#5c7385;margin-inline-end:8px}
.ld-log li.ok{color:#3DD6C3}.ld-log li.no{color:#8c97a5}
.ld-tag{position:absolute;top:16px;inset-inline-end:clamp(12px,6vw,90px);text-align:end;font:500 10.5px/1.8 'JetBrains Mono',monospace;color:#7f97aa;letter-spacing:.08em}
.ld-tag b{color:#3DD6C3;font-weight:600}
.ld-ft{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(61,214,195,.18)}
.ld-ft div{padding:20px clamp(14px,2vw,30px);border-inline-end:1px solid rgba(61,214,195,.18)}.ld-ft div:last-child{border:0}
.ld-ft b{display:block;font:700 15px 'Space Grotesk',sans-serif;color:#fff;margin-bottom:4px;letter-spacing:.02em}.ld-ft span{color:#7f97aa;font-size:13.5px;line-height:1.5}
@media(max-width:760px){.ld-panel{position:relative;top:auto;inset:auto;width:auto;margin:0 16px 12px}.ld-tag{display:none}.ld-ft{grid-template-columns:1fr 1fr}.ld-ft div:nth-child(2){border-inline-end:0}.ld-ft div:nth-child(-n+2){border-bottom:1px solid rgba(61,214,195,.18)}}
.ld-stage>canvas{height:clamp(440px,48vw,640px)!important}
.ld-rad{margin-top:10px;display:flex;align-items:center;gap:10px}.ld-rad canvas{width:120px;height:120px;border-radius:50%;border:1px solid rgba(61,214,195,.25);background:rgba(2,6,14,.6)}
.ld-rad span{font:500 9.5px/1.5 'JetBrains Mono',monospace;color:#7f97aa;letter-spacing:.1em}
.ld-panel{width:min(320px,42vw)}
@media(max-width:760px){.ld-panel{width:auto!important}.ld-stage>canvas{height:440px!important}.ld-cn b{font-size:22px}}
/* rue animée v3 : usagers multiples, balayage LiDAR, tableau de comptage */
.hx-ag{position:absolute;left:0;z-index:2;will-change:transform;transform-origin:center}
.hx-ag svg{width:100%;height:100%;display:block}
.hx-c{bottom:4%;width:96px;height:34px}.hx-c.far{bottom:13%;width:86px;height:30px;opacity:.9}
.hx-b{bottom:17%;width:44px;height:34px}
.hx-p{bottom:23%;width:14px;height:34px}
.hx-scan{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}
.hx-hud{text-align:start;inset-inline-end:clamp(14px,4vw,70px);bottom:calc(30% + 30px);padding:12px 14px;border:1px solid var(--ln);background:rgba(2,6,14,.78);backdrop-filter:blur(6px);clip-path:polygon(0 0,calc(100% - 14px) 0,100% 14px,100% 100%,0 100%)}
.hx-bt{font:500 10px 'JetBrains Mono',monospace;letter-spacing:.16em;color:var(--c);margin-bottom:8px}
.hx-bd{display:grid;grid-template-columns:repeat(4,auto);gap:6px}
.hx-bd div{border:1px solid var(--ln);padding:6px 9px;min-width:76px;background:rgba(61,214,195,.04)}
.hx-bd div.hit{animation:hxhit .6s}
@keyframes hxhit{0%{background:rgba(61,214,195,.35)}100%{background:rgba(61,214,195,.04)}}
.hx-hud .hx-bd b{display:block;font:700 22px 'Space Grotesk',sans-serif;color:#fff;text-shadow:none;letter-spacing:.06em;direction:ltr}
.hx-bd div:last-child b{color:var(--o);text-shadow:none}
.hx-bd span{font:500 9px 'JetBrains Mono',monospace;color:var(--mu);letter-spacing:.12em}
.hx-sav{display:flex;align-items:baseline;gap:10px;margin-top:8px;border-top:1px dashed var(--ln);padding-top:6px}
.hx-hud .hx-sav b{display:inline;font:700 20px 'Space Grotesk',sans-serif;color:var(--o)}
.hx-sav span{font:500 9.5px 'JetBrains Mono',monospace;color:var(--mu);letter-spacing:.1em}
@media(max-width:760px){.hx-hud{inset-inline:12px;bottom:280px}.hx-bd{grid-template-columns:repeat(4,1fr)}.hx-bd div{min-width:0;padding:5px 6px}.hx-hud .hx-bd b{font-size:16px}.hx-bd span{font-size:8px}}
@media(max-width:760px){.hx-pole:nth-child(n+5){display:none}.hx-pole:nth-child(1){left:8%!important}.hx-pole:nth-child(2){left:32%!important}.hx-pole:nth-child(3){left:56%!important}.hx-pole:nth-child(4){left:80%!important}.hx-cone{width:120px;left:-30px}}
.hx-hl{margin-top:8px}.hx-hl>span{font:500 9px 'JetBrains Mono',monospace;color:var(--mu);letter-spacing:.12em}
.hx-hist{display:flex;align-items:flex-end;gap:2px;height:38px;margin-top:5px;direction:ltr}
.hx-hist i{flex:1;background:linear-gradient(0deg,rgba(61,214,195,.25),rgba(61,214,195,.75));border-radius:1px;transition:height .4s}
.hx-hist i.now{background:linear-gradient(0deg,rgba(232,137,10,.4),#E8890A);box-shadow:none;animation:hxbl 1.4s infinite}
.hx-hx{display:flex;justify-content:space-between;direction:ltr}.hx-hx b{font:500 8px 'JetBrains Mono',monospace;color:#5c7385}
.hx-hist i.yd{background:rgba(61,214,195,.18)}
/* boutons 2050 : verre sombre, bordure dégradée, pictogramme numérique dans une cellule, flèche animée */
.hx-cta{gap:14px!important}
.hx-b1,.hx-b2{position:relative;clip-path:none!important;border-radius:2px;padding:6px 18px 6px 6px!important;gap:14px!important;font:500 12.5px 'JetBrains Mono',monospace!important;letter-spacing:.16em!important;text-transform:uppercase;isolation:isolate;overflow:hidden;
 background:linear-gradient(#060b14,#060b14) padding-box,linear-gradient(110deg,rgba(61,214,195,.9),rgba(232,137,10,.9)) border-box!important;border:1px solid transparent!important;color:#e9f6ff!important;box-shadow:0 10px 30px rgba(0,0,0,.35)}
.hx-b2{background:linear-gradient(rgba(6,11,20,.55),rgba(6,11,20,.55)) padding-box,linear-gradient(110deg,rgba(255,255,255,.22),rgba(255,255,255,.08)) border-box!important;color:#c9d6e2!important}
.hx-ic{display:grid;place-items:center;width:40px;height:40px;flex:none;position:relative;border:1px solid rgba(61,214,195,.35);background:radial-gradient(circle at 50% 50%,rgba(61,214,195,.18),rgba(61,214,195,.03) 70%);color:#3DD6C3;overflow:hidden}
.hx-b2 .hx-ic{border-color:rgba(232,137,10,.4);background:radial-gradient(circle,rgba(232,137,10,.16),transparent 70%);color:#E8890A}
.hx-ic svg{width:22px;height:22px;filter:none}
.hx-ic::after{content:"";position:absolute;left:0;right:0;height:1px;top:0;background:currentColor;opacity:.8;box-shadow:none;animation:hxscan 2.6s linear infinite}
@keyframes hxscan{0%{top:-2px}100%{top:42px}}
.hx-ar{font:400 16px 'JetBrains Mono',monospace;color:#3DD6C3;transition:transform .3s}
.hx-b2 .hx-ar{color:#E8890A}
.hx-b1::before,.hx-b2::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(100deg,transparent 30%,rgba(61,214,195,.14) 50%,transparent 70%);transform:translateX(-100%);transition:transform .7s}
.hx-b1:hover::before,.hx-b2:hover::before{transform:translateX(100%)}
.hx-b1:hover,.hx-b2:hover{box-shadow:0 0 0 1px rgba(61,214,195,.25)!important;color:#fff!important}
.hx-b1:hover .hx-ar,.hx-b2:hover .hx-ar{transform:translateX(5px)}
[dir=rtl] .hx-b1:hover .hx-ar,[dir=rtl] .hx-b2:hover .hx-ar{transform:translateX(-5px)}
@media (max-width:560px){.hx-b1,.hx-b2{font-size:11px!important;letter-spacing:.1em!important;padding-inline-end:12px!important}.hx-ic{width:34px;height:34px}}
@media (prefers-reduced-motion:reduce){.hx-ic::after{animation:none;opacity:0}}
.hx-hcore img{transition:none!important;backface-visibility:visible}
.hx-hlab{position:absolute;left:50%;bottom:-6px;transform:translateX(-50%);font:600 11px 'JetBrains Mono',monospace;letter-spacing:.2em;color:#E8890A;white-space:nowrap;text-shadow:none;z-index:5}
.hx-hcore{width:92%}
.hx-hcore img{width:100%!important;height:100%;object-fit:contain;object-position:50% 100%}
/* ---------- lumière réaliste blanc chaud, cônes symétriques centrés sous la tête ---------- */
.hx-pole i.h{background:linear-gradient(180deg,#46576b,#2c3a4b)!important;box-shadow:inset 0 -3px 0 rgba(255,240,214,calc(.35 + var(--l,.3)*.65)),0 4px 14px rgba(255,236,204,calc(var(--l,.3)*.7))!important}
.hx-pole.on i.h{box-shadow:inset 0 -3px 0 #fff6e6,0 4px 24px rgba(255,240,214,.95)!important}
.hx-cone{left:-51px!important;width:190px!important;top:5px;clip-path:polygon(45.5% 0,54.5% 0,100% 100%,0 100%)!important;
 background:radial-gradient(ellipse 22% 95% at 50% 0,rgba(255,252,244,.55),rgba(255,252,244,0) 75%),linear-gradient(180deg,rgba(255,246,228,.78) 0%,rgba(255,234,200,.44) 32%,rgba(255,224,182,.17) 74%,rgba(255,224,182,0) 100%)!important;
 opacity:calc(.28 + var(--l,.3)*.72)!important;filter:blur(1.4px)!important;mix-blend-mode:screen}
.hx-pool{left:-56px!important;width:200px!important;height:26px!important;bottom:-28px!important;background:radial-gradient(closest-side,rgba(255,246,228,.92),rgba(255,228,186,.38) 55%,rgba(255,228,186,0))!important;opacity:calc(.3 + var(--l,.3)*.7)!important;mix-blend-mode:screen}
@media(max-width:760px){.hx-cone{left:-31px!important;width:150px!important}.hx-pool{left:-36px!important;width:160px!important}}
/* ---------- rendu 01 « Halo photométrique » : la lumière est dessinée par hx.js d'après le réflecteur ---------- */
.hx-light{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;mix-blend-mode:screen}
.hx-cone,.hx-pool{display:none!important}
