/* ---------- Shared service landing (Agence Short structure + Hadi colors), used by the 5 service pages. Tokens: ../_ref/site.css + ../_ref/hadi-colors.css ---------- */
body.lp{background:var(--hc-paper);color:var(--hc-ink)}
.fill{display:inline-block;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--hc-secondary);background:#fff;border:1px dashed #e0a989;border-radius:6px;padding:2px 7px;vertical-align:middle;white-space:nowrap}
.hc-primary .fill,.hc-dark .fill{color:#fff;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.5)}
b.tbd{font-family:var(--font-mono);font-size:15px!important;letter-spacing:.04em;font-weight:400!important}
.sec{padding-block:clamp(64px,8vw,104px)}
.head{text-align:center;display:grid;gap:12px;justify-items:center;margin-bottom:clamp(28px,4vw,44px)}
.head .h2{max-width:18em}
.btn{gap:8px}
.btn.ghost{background:transparent;border:1.5px solid currentColor;color:var(--hc-primary-dark)}
.btn.sm{height:40px;padding:0 16px;font-size:14px}
.center{display:flex;justify-content:center;margin-top:28px}

/* Pill nav, floating */
.pnav{position:fixed;top:14px;left:50%;transform:translateX(-50%);z-index:70;width:min(980px,calc(100% - 24px));display:flex;align-items:center;gap:16px;padding:8px 8px 8px 22px;border-radius:999px;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 30px rgba(9,34,69,.12)}
.pnav .logo{font-size:22px;font-weight:600;letter-spacing:-.04em;color:var(--hc-primary-dark);text-decoration:none}
.pnav .links{display:flex;gap:22px;margin:0 auto;font-size:14.5px}
.pnav .links a{color:var(--hc-primary-dark);text-decoration:none}
.pnav .links a:hover{color:var(--hc-primary)}
.pnav .burger{display:none;background:none;border:0;color:var(--hc-primary-dark);padding:8px 12px;cursor:pointer}
@media(max-width:820px){.pnav .links{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;flex-direction:column;gap:0;background:#fff;border-radius:20px;padding:8px;box-shadow:0 12px 30px rgba(9,34,69,.15)}.pnav .links.open{display:flex}.pnav .links a{padding:12px 14px}.pnav .btn.sm{margin-left:auto}.pnav .burger{display:block}}

/* Sticky CTA, bottom right */
.sticky{position:fixed;right:16px;bottom:16px;z-index:65;display:flex;gap:8px;align-items:center}
.sticky a{height:48px;border-radius:999px;display:inline-flex;align-items:center;gap:8px;padding:0 20px;text-decoration:none;font-size:15px;font-weight:500;box-shadow:0 12px 30px rgba(9,34,69,.3)}
.sticky .main{background:var(--hc-primary-dark);color:#fff}
.sticky .wa{width:48px;padding:0;justify-content:center;background:#fff;color:var(--hc-primary-dark);font-family:var(--font-mono);font-size:12px}
@media(max-width:560px){.sticky{left:12px;right:12px;bottom:12px}.sticky .main{flex:1;justify-content:center}}

/* 1. Hero, gradient */
.s-hero{background:var(--hc-hero-grad);padding:128px 0 56px;text-align:center;overflow:hidden}
.s-hero .wrap{display:grid;justify-items:center;gap:18px}
.tagpill{display:inline-flex;align-items:center;height:32px;padding:0 14px;border-radius:999px;background:#fff;box-shadow:0 2px 10px rgba(9,34,69,.1);font-size:13.5px;color:var(--hc-primary-dark)}
.s-hero h1{font-size:clamp(40px,6vw,80px);line-height:1.02;letter-spacing:-.045em;font-weight:600;color:var(--hc-primary-dark);max-width:13em}
.s-hero .sub{font-size:clamp(16px,1.6vw,19px);color:#33415a;max-width:32em}
.ctas{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:center}
.mail{color:var(--hc-primary-dark);font-size:14.5px;text-decoration:underline;text-underline-offset:3px}
.chips{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;font-size:14.5px;color:var(--hc-primary-dark)}
.chips span{display:inline-flex;align-items:center;gap:8px}
.chips span::before{content:"";width:18px;height:18px;border-radius:50%;background:var(--hc-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3.5 7.2l2.3 2.3 4.7-5' fill='none' stroke='%23fff' stroke-width='1.6'/%3E%3C/svg%3E") center/12px no-repeat}
.vsl{position:relative;width:min(860px,100%);aspect-ratio:16/9;margin-top:18px;border-radius:24px;overflow:hidden;background:var(--hc-card-grad);box-shadow:0 40px 90px rgba(9,34,69,.3)}
.vsl video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.vsl .ph{position:absolute;inset:0;display:grid;place-items:center;align-content:center;gap:10px;color:#fff;padding:20px}
.vsl .ph b{font-size:52px;line-height:1}
.vsl.has .ph{display:none}
.vsl .unmute{position:absolute;top:14px;right:14px;height:32px;padding:0 14px;border-radius:999px;border:0;background:#000;color:#fff;font:inherit;font-size:13px;cursor:pointer}
.up{animation:fadeUp .8s var(--ease) both}.d1{animation-delay:.08s}.d2{animation-delay:.16s}.d3{animation-delay:.24s}.d4{animation-delay:.36s}
@media(max-width:560px){.s-hero{padding-top:104px}.vsl{border-radius:18px}}

/* 2. Logos marquee */
.s-logos{padding-block:28px 32px;text-align:center;background:var(--hc-paper)}
.s-logos .lbl{font-size:15px;font-weight:500;color:var(--hc-primary-dark);margin-bottom:18px}
.marq{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.track{display:flex;gap:14px;width:max-content;animation:marq 35s linear infinite}
.track.back{animation-direction:reverse}
.s-logos .track span{width:150px;height:52px;border-radius:12px;border:1.5px dashed var(--clay-2);display:grid;place-items:center;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#6b6b6b;background:#fff}
.rating{margin-top:16px;font-size:14px;color:var(--hc-ink)}
.stars{color:#00b67a;letter-spacing:2px}
.marq:hover .track{animation-play-state:paused}

/* 3. Showcase carousel */
.plat{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.plat span{font-size:12.5px;padding:5px 12px;border-radius:999px;background:#fff;color:var(--hc-primary-dark)}
.car{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(200px,22vw,260px);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 14px;scrollbar-width:none}
.car::-webkit-scrollbar{display:none}
.tile{position:relative;aspect-ratio:9/16;border-radius:22px;overflow:hidden;background:linear-gradient(170deg,var(--g1),var(--g2));display:flex;flex-direction:column;justify-content:flex-end;padding:12px;scroll-snap-align:start;transition:transform .35s var(--ease),box-shadow .35s}
.tile:hover{transform:scale(1.03);box-shadow:0 20px 40px rgba(9,34,69,.18)}
.tile video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.tile .slot{position:absolute;top:12px;left:12px;right:12px;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.05em;text-transform:uppercase;color:rgba(9,34,69,.65);word-break:break-all}
.tile .cap{position:relative;background:rgba(255,255,255,.92);border-radius:12px;padding:8px 10px;font-size:13px;line-height:1.3;color:var(--hc-ink)}
.tile .cap small{display:block;font-family:var(--font-mono);font-size:9.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--hc-primary)}
.carnav{display:flex;justify-content:center;gap:10px;margin-top:10px}
.carnav button{width:44px;height:44px;border-radius:50%;border:0;background:var(--hc-primary-dark);color:#fff;font-size:18px;cursor:pointer}

/* 4. Figures, full primary */
.s-figs{position:relative;overflow:hidden}
.figcard{background:#fff;color:var(--hc-ink);border-radius:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));box-shadow:0 30px 70px rgba(9,34,69,.25)}
.figcard>div{padding:clamp(24px,4vw,48px) 20px;text-align:center;display:grid;gap:8px;align-content:center}
.figcard>div+div{border-left:2px dashed var(--hc-primary-tint-2)}
.figcard b{font-size:clamp(48px,6vw,84px);font-weight:600;letter-spacing:-.05em;line-height:1;color:var(--hc-primary-dark);font-variant-numeric:tabular-nums}
.figcard b.tbd{color:var(--hc-secondary)}
.figcard span{font-size:15px;color:#33415a}
@media(max-width:700px){.figcard{grid-template-columns:minmax(0,1fr)}.figcard>div+div{border-left:0;border-top:2px dashed var(--hc-primary-tint-2)}}

/* 5. Cases grid */
.cases{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.case{background:#fff;border-radius:20px;padding:14px;display:grid;gap:10px;align-content:start;box-shadow:0 1px 2px rgba(9,34,69,.05),0 14px 34px rgba(9,34,69,.07);transition:box-shadow .3s,transform .3s var(--ease)}
.case:hover{transform:translateY(-4px);box-shadow:0 22px 44px rgba(9,34,69,.14)}
.case .img{aspect-ratio:4/3;border-radius:14px;background:linear-gradient(160deg,var(--g1,var(--hc-primary-tint)),var(--g2,var(--hc-primary-tint-2)));display:grid;place-items:center;align-content:center;gap:4px;color:var(--hc-primary-dark)}
.case .img b{font-size:64px;font-weight:600;letter-spacing:-.05em;line-height:1}
.case .row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding-inline:4px}
.case h3{font-size:20px;letter-spacing:-.02em;color:var(--hc-primary-dark)}
.case .tag{font-size:12px;padding:3px 10px;border-radius:999px;border:1.5px solid var(--hc-primary);color:var(--hc-primary)}
.case p{font-size:14.5px;color:#33415a;padding-inline:4px}
.case .lnk{font-size:14px;color:var(--hc-primary);padding-inline:4px;text-decoration:none}
.case.todo .img{background:repeating-linear-gradient(45deg,#f4f1ee,#f4f1ee 10px,#fff 10px,#fff 20px)}
@media(max-width:900px){.cases{grid-template-columns:minmax(0,1fr)}}

/* 6. Made for you if, sticky */
.fit{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,72px);align-items:start}
.stick{position:sticky;top:120px}
.stick .h2{color:var(--hc-primary-dark)}
.fitlist{display:grid;gap:clamp(24px,8vh,80px);padding-block:20px}
.fitlist article{background:#fff;border-radius:20px;padding:24px;display:grid;gap:10px;opacity:.35;transform:scale(.97);transition:opacity .5s,transform .5s var(--ease)}
.fitlist article.on{opacity:1;transform:none;box-shadow:0 20px 44px rgba(9,34,69,.1)}
.fitlist b{font-size:21px;font-weight:500;letter-spacing:-.02em;color:var(--hc-primary-dark)}
.fitlist b::before{content:"";display:inline-block;width:22px;height:22px;border-radius:50%;border:2px solid var(--hc-primary);margin-right:10px;vertical-align:-4px}
.fitlist article.on b::before{background:var(--hc-primary)}
.fitlist .res{font-size:15px;color:var(--hc-secondary)}
@media(max-width:800px){.fit{grid-template-columns:minmax(0,1fr)}.stick{position:static}}

/* 7. Timeline with scroll progress */
.tl{position:relative;display:grid;gap:28px;max-width:900px;margin:0 auto}
.tl .line{position:absolute;top:0;bottom:0;left:50%;width:4px;transform:translateX(-50%);background:var(--hc-primary-tint);border-radius:2px;overflow:hidden}
.tl .line i{display:block;width:100%;height:0;background:var(--hc-primary);border-radius:2px}
.st{position:relative;display:grid;grid-template-columns:1fr 56px 1fr;align-items:center}
.st b{grid-column:2;justify-self:center;width:44px;height:44px;border-radius:50%;background:#fff;border:3px solid var(--hc-primary-tint-2);color:var(--hc-primary-dark);display:grid;place-items:center;font-family:var(--font-mono);font-weight:400;position:relative;z-index:1;transition:background .4s,border-color .4s,color .4s}
.st .card{background:var(--hc-primary-tint);border-radius:18px;padding:18px 20px;opacity:.4;transform:translateY(12px);transition:opacity .5s,transform .5s var(--ease),background .5s}
.st.l .card{grid-column:1;grid-row:1}
.st.r .card{grid-column:3}
.st h3{font-size:20px;letter-spacing:-.02em;color:var(--hc-primary-dark)}
.st p{font-size:14.5px;color:#33415a;margin-top:4px}
.st.on b{background:var(--hc-primary);border-color:var(--hc-primary);color:#fff}
.st.on .card{opacity:1;transform:none;background:var(--hc-primary);}
.st.on h3,.st.on p{color:#fff}
@media(max-width:700px){.tl .line{left:22px}.st{grid-template-columns:44px 1fr;gap:14px}.st b{grid-column:1}.st.l .card,.st.r .card{grid-column:2;grid-row:1}}

/* 8. Pack card */
.s-pack{position:relative;overflow:hidden}
.s-pack::before{content:"";position:absolute;left:50%;top:55%;width:900px;height:700px;transform:translate(-50%,-50%);background:var(--hc-glow);pointer-events:none}
.ptabs{position:relative;display:flex;justify-content:center;gap:6px;margin:0 auto 18px;padding:5px;border-radius:999px;background:#fff;width:max-content;max-width:100%}
.pt{height:38px;padding:0 18px;border-radius:999px;border:0;background:none;font:inherit;font-size:14.5px;color:var(--hc-primary-dark);cursor:pointer}
.pt[aria-selected="true"]{background:var(--hc-primary);color:#fff}
.pcard{position:relative;max-width:440px;margin:0 auto;background:#fff;border-radius:26px;padding:28px;display:grid;gap:16px;box-shadow:0 30px 70px rgba(9,34,69,.16)}
.pane{display:grid;gap:12px;animation:pop .4s var(--ease) both}
.pane[hidden]{display:none}
.badge{justify-self:start;font-size:13px;font-weight:500;padding:5px 12px;border-radius:999px;background:var(--hc-primary);color:#fff}
.price{font-size:40px;font-weight:600;letter-spacing:-.04em;color:var(--hc-primary-dark);display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.price small{font-size:15px;font-weight:400;color:#33415a}
.note{font-size:14px;color:#33415a}
.pcard hr{border:0;border-top:3px solid var(--hc-primary-dark);width:60%;margin:0}
.pcard ul{list-style:none;margin:0;padding:0;display:grid;gap:10px;font-size:15px}
.pcard li{display:flex;gap:10px;align-items:center}
.pcard li::before{content:"";width:20px;height:20px;border-radius:50%;flex:none;background:var(--hc-primary) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M3.5 7.2l2.3 2.3 4.7-5' fill='none' stroke='%23fff' stroke-width='1.6'/%3E%3C/svg%3E") center/12px no-repeat}
.pcard .btn{justify-content:center}

/* 9. Reviews, 2 opposite marquees */
.s-revs .marq+.marq{margin-top:14px}
.track.rev{gap:14px;animation-duration:50s}
.rv-card{width:320px;flex:none;background:#fff;border:1.5px dashed var(--clay-2);border-radius:18px;padding:18px;display:grid;gap:10px;font-size:14.5px;color:#4a4a4a}
.rv-card .who{display:flex;gap:10px;align-items:center;font-size:13px}
.rv-card .who i{width:32px;height:32px;border-radius:50%;background:var(--hc-sand)}

/* 10. Bento */
.bento{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.b{background:#fff;border-radius:22px;padding:18px;display:grid;gap:14px;align-content:space-between;min-height:240px;overflow:hidden;min-width:0}
.b h3{font-size:18px;letter-spacing:-.02em;color:var(--hc-primary-dark)}
.b h3 small{font-size:12px;color:#33415a;font-weight:400}
.b.wide{grid-column:span 2}
.b.grad{background:var(--hc-card-grad);color:#fff}
.b.grad h3{color:#fff}
.b .big{font-size:110px;font-weight:600;letter-spacing:-.06em;line-height:.9}
.pills{overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.pr{display:flex;gap:8px;width:max-content;animation:marq 14s linear infinite}
.pr span{font-size:13px;padding:8px 14px;border-radius:999px;background:var(--hc-primary-tint);color:var(--hc-primary-dark)}
.pr span:nth-child(odd){background:var(--hc-primary);color:#fff}
.wa{background:#e7f6ec;border-radius:16px;padding:12px 14px;display:grid;gap:6px;font-size:14px}
.wa small{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:#1f6b3a}
.wa .ok{justify-self:start;font-size:13px;padding:5px 12px;border-radius:999px;background:#1f7a3f;color:#fff;transition:background .3s}
.wa .ok.done{background:var(--hc-primary-dark)}
.word{font-size:clamp(56px,7vw,92px);font-weight:600;letter-spacing:-.06em;line-height:.9;background:linear-gradient(90deg,var(--hc-primary-dark),var(--hc-primary));-webkit-background-clip:text;background-clip:text;color:transparent}
.ba{position:relative;border-radius:16px;overflow:hidden;aspect-ratio:16/7;user-select:none;touch-action:pan-y}
.ba .side{position:absolute;inset:0;padding:12px;display:grid;grid-template-rows:auto 1fr;gap:8px}
.ba .before{background:var(--hc-paper)}
.ba .after{background:var(--hc-primary-tint);clip-path:inset(0 0 0 var(--x,50%))}
.ba .lbl{font-family:var(--font-mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:#4a4a4a}
.ba .after .lbl{text-align:right;color:var(--hc-primary-dark)}
.ba .grid{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:5px;align-content:start}
.ba .grid i{aspect-ratio:4/5;border-radius:6px;background:#fff;border:1px dashed var(--clay-2)}
.ba .after .grid i{border:0;background:var(--k,#c9b4ff)}
.ba .handle{position:absolute;top:0;bottom:0;left:var(--x,50%);width:2px;background:var(--hc-primary-dark);transform:translateX(-1px);pointer-events:none}
.ba .handle::after{content:"\2194";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;background:var(--hc-primary-dark);color:#fff;display:grid;place-items:center;font-size:16px}
.ba input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
@media(max-width:900px){.bento{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.bento{grid-template-columns:minmax(0,1fr)}.b.wide{grid-column:auto}.ba{aspect-ratio:4/3}.ba .grid{grid-template-columns:repeat(6,minmax(0,1fr))}}

/* 11. FAQ + expert */
.fq{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:clamp(24px,4vw,48px);align-items:start}
.fq .h2{color:var(--hc-primary-dark);margin-bottom:22px}
.acc{display:grid;gap:10px}
.acc details{background:#fff;border:1px solid var(--line);border-radius:16px;padding:0 20px}
.acc summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:16px;padding:18px 0;font-size:17px;font-weight:500;color:var(--hc-primary-dark)}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:"+";font-size:24px;line-height:1;color:var(--hc-primary);transition:transform .3s var(--ease)}
.acc details[open] summary::after{transform:rotate(45deg)}
.acc details p{padding:0 0 18px;color:#33415a;font-size:15px}
.expert{position:sticky;top:120px;background:var(--hc-primary-tint);border-radius:22px;padding:24px;display:grid;gap:10px;justify-items:center;text-align:center}
.expert .face{width:120px;height:120px;border-radius:50%;background:#fff;display:grid;place-items:center;border:3px solid #fff;box-shadow:0 0 0 3px var(--hc-primary)}
.expert b{font-size:20px;color:var(--hc-primary-dark)}
.expert p{font-size:14.5px;color:#33415a}
@media(max-width:820px){.fq{grid-template-columns:minmax(0,1fr)}.expert{position:static}}

/* 12. Booking */
.cal{position:relative;max-width:980px;margin:0 auto;background:#fff;border-radius:24px;overflow:hidden;box-shadow:0 20px 50px rgba(9,34,69,.12)}
.cal iframe{display:block;width:100%;height:640px;border:0}
.calfb{display:block;text-align:center;padding:14px;font-size:14.5px;color:var(--hc-primary);border-top:1px solid var(--line)}
@media(max-width:560px){.cal iframe{height:720px}}

/* 13. Final CTA + footer */
.s-final{position:relative;padding-block:clamp(72px,9vw,120px);text-align:center;overflow:hidden}
.s-final .wrap{display:grid;justify-items:center;gap:18px;position:relative}
.s-final .h2{color:var(--hc-primary-dark);max-width:16em}
.fl{position:absolute;width:48px;height:48px;border-radius:14px;background:#fff;box-shadow:0 10px 24px rgba(9,34,69,.12);display:grid;place-items:center;font-family:var(--font-mono);font-size:12px;color:var(--hc-primary);animation:bob 3.6s ease-in-out infinite}
.f1{left:4%;top:0}.f2{right:6%;top:10%;animation-delay:.6s}.f3{left:10%;bottom:4%;animation-delay:1.2s}.f4{right:12%;bottom:0;animation-delay:1.8s}.f5{left:22%;top:-30px;animation-delay:.9s}.f6{right:24%;top:-24px;animation-delay:2.2s}
@keyframes bob{50%{transform:translateY(-10px)}}
@media(max-width:700px){.f5,.f6{display:none}.fl{width:38px;height:38px}}
.s-foot{position:relative;overflow:hidden;padding:56px 0 96px}
.s-foot .fl-row{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;position:relative;z-index:1}
.s-foot .logo{font-size:40px;font-weight:600;letter-spacing:-.05em}
.s-foot nav{display:flex;flex-wrap:wrap;gap:8px 20px}
.s-foot nav a{color:#fff;text-decoration:none;font-size:14.5px;opacity:.9}
.s-foot .water{position:absolute;left:50%;bottom:-.25em;transform:translateX(-50%);font-size:clamp(140px,26vw,360px);font-weight:600;letter-spacing:-.07em;line-height:1;color:rgba(255,255,255,.08);pointer-events:none}
.s-foot .copy{position:relative;margin-top:40px;font-size:13px;opacity:.85}

/* Reveal on scroll */
.rv{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease),transform .7s var(--ease)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}.track,.pr,.fl{animation:none}}
.vsl .fill{white-space:normal;max-width:90%;text-align:center}
.s-logos .logo-item{width:200px}
.s-logos .logo-item b{color:var(--hc-primary-dark)}
.s-logos .track{gap:8px;align-items:center}

/* Static captures: ?shot reveals everything */
.shot .rv,.shot .up{opacity:1!important;transform:none!important}
.shot .fitlist article,.shot .st{opacity:1!important}

/* Language selector (EN | FR) */
.lsw{display:inline-flex;gap:2px;font-family:var(--font-mono);font-size:11.5px;letter-spacing:.04em;margin-left:auto}
.pnav .links+.lsw{margin-left:0}
.lsw a{padding:6px 7px;border-radius:999px;color:#5b6577;text-decoration:none}
.lsw a[aria-current]{color:var(--hc-primary-dark);background:var(--hc-primary-tint)}
.lsw a:hover{color:var(--hc-primary)}
@media(max-width:820px){.lsw{margin-left:auto}.pnav .lsw+.btn.sm{margin-left:0}}
@media(max-width:420px){.pnav{gap:8px;padding-left:16px}.pnav .btn.sm{padding:0 12px;font-size:13px}.lsw a{padding:6px 5px}}
/* Hidden while the language is being detected (max 800 ms, see lang.js) */
html.lang-pending body{visibility:hidden}

/* Site v1 additions: hero word when no header video, logo in the expert card, sourced figures */
.vsl .ph .hw{font-size:clamp(48px,9vw,110px);font-weight:600;letter-spacing:-.05em;color:#fff}
.expert .face img{width:64px;height:64px;object-fit:contain}
.figcard b.st-v{font-size:clamp(34px,4.4vw,52px)}
