/* ===== IAM4UX: cinematic edition. Dark luxury, logo palette (red + charcoal). Mobile-first; pinned scenes only in .pin-mode ===== */
:root{--ink:#07070a;--ink2:#0d0e13;--panel:#12131a;--text:#f4f4f6;--mute:#a4a7b4;--line:rgba(255,255,255,.12);--red:#e2222c;--hot:#ff4a54;--deep:#8c1820;
 --disp:"Syne","Segoe UI",system-ui,sans-serif;--body:"Instrument Sans","Segoe UI",system-ui,sans-serif;--mono:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
 --pad:clamp(1.1rem,4vw,3rem);--ease:cubic-bezier(.2,.8,.2,1)}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}
body{margin:0;background:var(--ink);color:var(--text);font:400 clamp(1rem,.96rem + .2vw,1.12rem)/1.6 var(--body);overflow-x:hidden}
img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure,dl,dd{margin:0}a{color:inherit}button{font:inherit;color:inherit}
:focus-visible{outline:3px solid var(--hot);outline-offset:3px;border-radius:6px}
.vh{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:fixed;left:1rem;top:-4rem;z-index:1200;background:var(--red);color:#fff;padding:.7rem 1rem;border-radius:8px}.skip:focus{top:1rem}
.wrap{width:min(1280px,100% - 2*var(--pad));margin-inline:auto}
.mono{font:500 .78rem/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.mono b{color:var(--hot);font-weight:500}
.big{font:800 clamp(2.4rem,1rem + 7vw,8rem)/.92 var(--disp);letter-spacing:-.045em;text-transform:uppercase}
.o{color:transparent;-webkit-text-stroke:2px var(--hot)}
.red{background:linear-gradient(100deg,#ff6a72,#e2222c 60%,#b9131c);-webkit-background-clip:text;background-clip:text;color:transparent}
/* atmosphere */
.grain{position:fixed;inset:-50%;z-index:850;pointer-events:none;opacity:.07;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");animation:grain 1s steps(6) infinite}
@keyframes grain{20%{transform:translate(-3%,2%)}40%{transform:translate(2%,-4%)}60%{transform:translate(-4%,-2%)}80%{transform:translate(3%,3%)}}
.vig{position:fixed;inset:0;z-index:840;pointer-events:none;background:radial-gradient(ellipse at center,transparent 55%,rgba(0,0,0,.55))}
.glow{position:absolute;border-radius:50%;filter:blur(110px);pointer-events:none;background:var(--red);opacity:.22}
/* loader */
.loader{position:fixed;inset:0;z-index:1000;background:var(--ink);display:none;place-items:center;align-content:center;gap:1.6rem}
.js .loader{display:grid}.loader img{width:min(300px,64vw);height:auto}
.loader .bar{width:min(300px,64vw);height:2px;background:var(--line);overflow:hidden}.loader .bar i{display:block;height:100%;background:var(--red);transform:scaleX(0);transform-origin:0}
.loader b{font:800 clamp(3rem,10vw,6rem)/1 var(--disp);letter-spacing:-.04em}
/* cursor */
.cur{position:fixed;left:0;top:0;z-index:900;pointer-events:none;width:12px;height:12px;border-radius:50%;background:var(--hot);mix-blend-mode:difference}
.ring{position:fixed;left:0;top:0;z-index:899;pointer-events:none;width:44px;height:44px;border:1px solid rgba(255,255,255,.5);border-radius:50%;display:grid;place-items:center;font:600 .7rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:#fff;transition:width .35s var(--ease),height .35s var(--ease),background .3s}
.ring.big{width:92px;height:92px;background:var(--red);border-color:var(--red)}
/* top bar + menu */
.topbar{position:fixed;inset:0 0 auto;z-index:700;display:flex;justify-content:space-between;align-items:center;padding:1rem var(--pad);mix-blend-mode:normal}
.topbar img{height:34px;width:auto}
.topbar nav{display:flex;gap:.6rem;align-items:center}
.pill{display:inline-flex;align-items:center;gap:.6rem;padding:.7rem 1.2rem;border-radius:999px;border:1px solid var(--line);background:rgba(12,12,16,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);font:600 .92rem var(--body);cursor:pointer;text-decoration:none;color:var(--text)}
.pill.solid{background:linear-gradient(135deg,#ec2b36,#bd1520);border-color:transparent;color:#fff}
.prog{position:fixed;left:0;top:0;height:3px;width:100%;z-index:710;background:linear-gradient(90deg,var(--deep),var(--hot));transform:scaleX(0);transform-origin:0}
dialog.menu{width:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:var(--pad);border:0;background:rgba(7,7,10,.97);color:var(--text)}
dialog.menu::backdrop{background:#000}
.menu ol{list-style:none;margin:6vh 0 0;padding:0;display:grid;gap:.2rem}
.menu a{display:flex;gap:1.2rem;align-items:baseline;font:800 clamp(2rem,6vw,4.6rem)/1.05 var(--disp);letter-spacing:-.04em;text-transform:uppercase;text-decoration:none;color:var(--text);transition:color .25s,transform .35s var(--ease)}
.menu a small{font:500 .8rem var(--mono);color:var(--hot);letter-spacing:.1em}.menu a:hover{color:var(--hot);transform:translateX(14px)}
.menu .x{position:absolute;right:var(--pad);top:1rem}
/* 1 HERO */
.hero{position:relative;min-height:100svh;padding:5.6rem 0 1.6rem;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden}
.hero h1{position:relative;font:800 min(13.2vh,12.4vw)/.86 var(--disp);letter-spacing:-.05em;text-transform:uppercase;display:grid;padding-inline:var(--pad)}
.ln{display:block;white-space:nowrap}.ln:nth-child(even){padding-left:clamp(0px,7vw,120px)}
.ch{display:inline-block;will-change:transform}
.ln.sc{display:inline-block;justify-self:start;position:relative;color:transparent;-webkit-text-stroke:2px #fff}
.ln.sc .strike{position:absolute;left:0;right:0;top:54%;height:.08em;background:var(--red);transform-origin:0;transform:scaleX(0)}
.ln.gr .ch{background:linear-gradient(100deg,#ff7a80,#e2222c);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-foot{display:flex;flex-wrap:wrap;gap:1.2rem 2rem;justify-content:space-between;align-items:end;padding-inline:var(--pad);position:relative}
.hero-foot p{max-width:34rem;color:var(--mute)}.hero-foot p b{color:var(--text);font-weight:600}
.cta{display:flex;flex-wrap:wrap;gap:.8rem}
.id-card{display:none}
@media(min-width:900px){.id-card{display:flex;position:absolute;right:var(--pad);top:24%;gap:1rem;align-items:center;padding:.9rem 1.2rem .9rem .9rem;border-radius:22px;border:1px solid var(--line);background:rgba(18,19,26,.6);backdrop-filter:blur(18px);box-shadow:0 30px 80px -30px #000}
 .id-card img{width:92px;height:116px;object-fit:cover;border-radius:14px}.id-card b{display:block;font:700 1.1rem var(--disp)}.id-card small{color:var(--mute);display:block;margin-top:.3rem}}
.scrollcue{position:absolute;left:50%;bottom:.6rem}
/* prologue */
.prologue{min-height:100svh;display:grid;place-items:center;padding:6rem var(--pad);position:relative;overflow:hidden}
.prologue p{font:800 clamp(2rem,1rem + 6vw,7rem)/1 var(--disp);letter-spacing:-.045em;text-transform:uppercase;max-width:16ch}
.w{display:inline-block;margin-right:.22em}
/* 2 FILMS */
.sec-intro{padding:clamp(5rem,12vw,10rem) var(--pad) 2rem}
.film{position:relative;padding:5rem 0;overflow:hidden;border-top:1px solid var(--line)}
.film .ghost{position:absolute;left:0;top:8%;font:800 clamp(6rem,24vw,24rem)/.8 var(--disp);letter-spacing:-.06em;white-space:nowrap;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.08);pointer-events:none;text-transform:uppercase}
.film-in{position:relative;display:grid;gap:2.5rem;align-items:center}
.chaps{display:grid;gap:2.2rem}
.chap h3{font:800 clamp(2rem,1rem + 3.4vw,4rem)/.95 var(--disp);letter-spacing:-.04em;text-transform:uppercase;margin:.5rem 0 1rem}
.chap p{color:var(--mute);max-width:34rem}.chap p+p{margin-top:.8rem}
.chap .ins{padding:.9rem 1rem;border-left:3px solid var(--red);background:rgba(226,34,44,.07);color:var(--text);border-radius:0 12px 12px 0}
.mets{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin-top:1.2rem}
.mets div{padding:1rem;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.03)}
.mets b{display:block;font:800 clamp(1.4rem,1rem + 1.6vw,2.4rem)/1 var(--disp)}.mets span{font-size:.8rem;color:var(--mute)}
.todo{border:1px dashed var(--hot);color:var(--hot);border-radius:6px;padding:0 .3em}
.dots{display:flex;gap:.5rem;margin-top:1.6rem;position:relative;z-index:5}.dots button{position:relative;width:34px;height:3px;padding:0;border:0;background:var(--line);border-radius:2px;transition:background .4s,transform .2s;cursor:pointer}.dots button::after{content:"";position:absolute;inset:-14px -4px}.dots button:hover{background:rgba(226,34,44,.6)}.dots button.on{background:var(--red)}.dots button:focus-visible{outline:2px solid var(--red);outline-offset:4px}
.px{--d:0;translate:calc(var(--sx,0)*var(--d)*1px) calc(var(--sy,0)*var(--d)*1px)}
.stage{perspective:1500px;position:relative}
.rig{transform-style:preserve-3d;position:relative;transform:rotateY(calc(var(--sx,0)*7deg)) rotateX(calc(var(--sy,0)*-5deg))}
.screen{position:relative;transform-style:preserve-3d;border-radius:18px;overflow:hidden;border:1px solid rgba(255,255,255,.18);background:#fff;box-shadow:0 60px 120px -30px rgba(226,34,44,.55),0 30px 60px -20px #000;--cut:50%}
.screen img{width:100%;height:auto;display:block}
.screen .bp{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:grayscale(1) invert(1) sepia(1) hue-rotate(175deg) saturate(2.4) brightness(.78) contrast(1.25)}
.screen .fin{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;clip-path:inset(0 0 0 var(--cut))}
.screen .hd{position:absolute;top:0;bottom:0;left:var(--cut);width:2px;background:var(--hot);box-shadow:0 0 20px var(--hot);pointer-events:none}
.screen .hd::after{content:"";position:absolute;top:50%;left:50%;width:34px;height:34px;margin:-17px;border-radius:50%;background:var(--red);border:2px solid #fff}
.screen label{position:absolute;inset:0;cursor:ew-resize}
.screen input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}
.tag{position:absolute;font:500 .7rem var(--mono);letter-spacing:.12em;text-transform:uppercase;padding:.35rem .7rem;border-radius:999px;background:rgba(7,7,10,.75);color:#fff;backdrop-filter:blur(8px)}
.tag.l{left:12px;bottom:12px}.tag.r{right:12px;bottom:12px;background:var(--red)}
.chip3d{position:absolute;padding:.8rem 1rem;border-radius:16px;border:1px solid var(--line);background:rgba(18,19,26,.72);backdrop-filter:blur(16px);transform:translateZ(80px);font-size:.85rem;max-width:200px;box-shadow:0 20px 50px -20px #000}
.chip3d b{display:block;font:700 .95rem var(--disp)}.chip3d.a{right:-2%;top:-6%}.chip3d.b{left:-3%;bottom:10%}
@media(min-width:900px){.film-in{grid-template-columns:5fr 7fr}}
.pin-mode .film{height:100vh;padding:0;display:grid;align-items:center}
.pin-mode .chaps{position:relative;height:min(70vh,560px);display:block}.pin-mode .chap{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center}
.pin-mode .chap .n{position:absolute;top:0}
/* 3 ECOSYSTEM */
.eco{position:relative;padding:clamp(5rem,10vw,9rem) 0;overflow:hidden;border-top:1px solid var(--line)}
.lane{position:relative;padding:1.2rem 0}
.lane-l{position:relative;z-index:3;padding:0 var(--pad);margin-bottom:.7rem;display:flex;align-items:baseline;gap:1rem;font:800 clamp(1.6rem,1rem + 3.2vw,3.6rem)/1 var(--disp);letter-spacing:-.045em;text-transform:uppercase;color:#fff;white-space:nowrap}
.lane-l small{font:500 .75rem var(--mono);letter-spacing:.14em;color:var(--hot)}
.lane-t{display:flex;gap:14px;width:max-content;will-change:transform}
.static .lane-t,.reduce .lane-t{width:auto;overflow-x:auto}
.card{position:relative;flex:none;width:clamp(200px,24vw,300px);aspect-ratio:4/3;border-radius:16px;overflow:hidden;border:1px solid var(--line);background:#111;transition:transform .5s var(--ease),border-color .3s}
.card img{width:100%;height:100%;object-fit:cover}
.card:hover{transform:translateY(-10px) rotate(-1.5deg) scale(1.04);border-color:var(--hot);z-index:4}
.card span{position:absolute;inset:auto 0 0;padding:.6rem .8rem;font:700 .85rem var(--disp);background:linear-gradient(transparent,rgba(0,0,0,.9));opacity:0;transition:opacity .3s}.card:hover span{opacity:1}
/* 4 JOURNEY */
.journey{position:relative;border-top:1px solid var(--line);transition:background .9s}
.eras{display:grid}
.era{position:relative;min-height:100svh;padding:7rem var(--pad) 5rem;display:grid;align-content:center;gap:1.2rem;overflow:hidden}
.yr{font:800 clamp(6rem,26vw,24rem)/.8 var(--disp);letter-spacing:-.07em;color:transparent;-webkit-text-stroke:2px rgba(255,255,255,.28)}
.era h3{font:800 clamp(1.8rem,1rem + 3vw,4rem)/.98 var(--disp);letter-spacing:-.04em;text-transform:uppercase;max-width:14ch}
.era p{max-width:32rem;color:#d2d4de}
.era svg{position:absolute;right:4%;top:50%;width:min(44vw,520px);transform:translateY(-50%);opacity:.9}
.era .tagline{display:inline-block;padding:.4rem .9rem;border-radius:999px;background:var(--red);font:600 .8rem var(--mono);letter-spacing:.12em;text-transform:uppercase;justify-self:start}
.scrub{display:none}
.pin-mode .eras{grid-auto-flow:column;grid-auto-columns:100vw;width:max-content}
.pin-mode .journey{height:100vh;overflow:hidden}
.pin-mode .scrub{display:flex;position:absolute;left:var(--pad);right:var(--pad);bottom:2rem;z-index:5;justify-content:space-between;align-items:center;gap:.5rem}
.scrub::before{content:"";position:absolute;left:0;right:0;top:50%;height:1px;background:var(--line)}
.scrub button{position:relative;border:0;background:var(--ink);padding:.3rem .6rem;border-radius:999px;font:600 .8rem var(--mono);letter-spacing:.08em;color:var(--mute);cursor:pointer}
.scrub button.on{color:#fff;background:var(--red)}
/* 5 OS */
.os{padding:clamp(5rem,10vw,9rem) 0;position:relative;border-top:1px solid var(--line);overflow:hidden}
.win{margin-top:2.5rem;border-radius:22px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.015));backdrop-filter:blur(18px);box-shadow:0 60px 120px -40px rgba(226,34,44,.35);overflow:hidden}
.win-bar{display:flex;gap:.5rem;align-items:center;padding:.8rem 1rem;border-bottom:1px solid var(--line)}.win-bar i{width:11px;height:11px;border-radius:50%;background:#3a3b44}.win-bar i:first-child{background:var(--red)}.win-bar span{margin-left:.8rem}
.win-body{display:grid}
.mods{display:flex;overflow-x:auto;gap:.4rem;padding:1rem;border-bottom:1px solid var(--line)}
.mods button{flex:none;text-align:left;border:1px solid transparent;background:none;border-radius:12px;padding:.7rem 1rem;cursor:pointer;color:var(--mute);font:600 .95rem var(--body);transition:all .25s}
.mods button small{display:block;font:500 .68rem var(--mono);letter-spacing:.1em;color:var(--mute)}
.mods button[aria-selected="true"]{background:rgba(226,34,44,.14);border-color:var(--red);color:#fff}
.pane{padding:clamp(1.2rem,3vw,2.4rem);display:grid;gap:1.4rem;align-content:start}
.pane h3{font:800 clamp(2rem,1rem + 3vw,3.8rem)/.95 var(--disp);letter-spacing:-.04em;text-transform:uppercase}
.pane p{color:var(--mute);max-width:36rem}
.caps{list-style:none;padding:0;margin:0;display:grid;gap:.5rem}.caps li{display:flex;gap:.7rem;align-items:center;font:500 .85rem var(--mono);color:#d8dae4}.caps li::before{content:"▸";color:var(--hot)}
.load{height:6px;border-radius:3px;background:var(--line);overflow:hidden}.load i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--deep),var(--hot));transition:width 1s var(--ease)}
.radar{padding:1rem;max-width:460px;margin-inline:auto;width:100%}
.term{padding:.9rem 1.2rem;border-top:1px solid var(--line);font:500 .78rem/1.7 var(--mono);color:var(--mute);min-height:5.8em}.term b{color:#5dd68a;font-weight:500}
@media(min-width:900px){.win-body{grid-template-columns:230px 1fr 380px}.mods{flex-direction:column;border-bottom:0;border-right:1px solid var(--line);overflow:visible}}
/* 6 MANIFESTO */
.mani{position:relative;overflow:hidden;border-top:1px solid var(--line)}
.mf{display:grid;place-items:center;text-align:center;padding:6rem var(--pad);min-height:70svh}
.mf p{font:800 clamp(2.4rem,1rem + 8vw,10.5rem)/.92 var(--disp);letter-spacing:-.055em;text-transform:uppercase;max-width:13ch}
.mf p.sm{font-size:clamp(2.2rem,1rem + 7vw,9rem)}
.pin-mode .mani{height:100vh}.pin-mode .mf{position:absolute;inset:0;min-height:0}
/* 7 BRAND */
.brand{padding:clamp(5rem,10vw,9rem) 0;position:relative;border-top:1px solid var(--line);overflow:hidden}
.layers{display:grid;gap:1rem;margin-top:3rem}
.lay{position:relative;padding:1.6rem;border-radius:22px;border:1px solid var(--line);background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.015));backdrop-filter:blur(16px);box-shadow:0 40px 80px -40px #000}
.lay h3{font:800 clamp(1.8rem,1rem + 2.4vw,2.4rem)/1 var(--disp);letter-spacing:-.04em;text-transform:uppercase;margin:.4rem 0 .8rem}.lay p{color:var(--mute)}
.lay.hl{background:linear-gradient(145deg,#d11a25,#8c1820);border-color:transparent}.lay.hl p,.lay.hl .mono{color:#ffe1e3}
@media(min-width:900px){.layers{grid-template-columns:repeat(12,1fr);gap:1.4rem}.lay:nth-child(1){grid-column:1/6}.lay:nth-child(2){grid-column:7/13;margin-top:4rem}.lay:nth-child(3){grid-column:2/8;margin-top:-1rem}.lay:nth-child(4){grid-column:8/13;margin-top:3rem}.lay:nth-child(5){grid-column:3/11;margin-top:1rem}}
.quotes{margin-top:4rem;overflow:hidden;border-block:1px solid var(--line);padding:1.4rem 0}
.quotes .tr{display:flex;gap:4rem;width:max-content;animation:run 60s linear infinite}
.quotes q{font:600 clamp(1.3rem,1rem + 1.6vw,2.2rem)/1.2 var(--disp);white-space:nowrap;quotes:"“" "”"}.quotes q small{font:500 .75rem var(--mono);letter-spacing:.1em;color:var(--hot);margin-left:1rem;text-transform:uppercase}
@keyframes run{to{transform:translateX(-50%)}}
/* 8 VAULT */
.vault{padding:clamp(5rem,10vw,9rem) 0;border-top:1px solid var(--line)}
.filters{display:flex;flex-wrap:wrap;gap:.8rem 1rem;align-items:center;justify-content:space-between;margin:2rem 0 1.2rem}
.fgroup{display:flex;flex-wrap:wrap;gap:.5rem}
.fbtn{border:1px solid var(--line);background:none;border-radius:999px;padding:.55rem 1rem;cursor:pointer;color:var(--mute);font-weight:600;font-size:.92rem;transition:all .25s}.fbtn small{opacity:.7;margin-left:.3rem}
.fbtn:hover{color:#fff;border-color:#fff}.fbtn[aria-pressed="true"]{background:var(--red);border-color:var(--red);color:#fff}
.search input,.fld input,.fld select,.fld textarea{font:inherit;color:var(--text);background:rgba(255,255,255,.05);border:1px solid var(--line);border-radius:12px;padding:.85rem 1rem;width:100%}
.search input{width:min(100%,260px);border-radius:999px}.fld select option{color:#111}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));gap:12px}
.pt{position:relative;display:block;width:100%;aspect-ratio:4/3;padding:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--panel);cursor:pointer;animation:pop .5s var(--ease) both}
@keyframes pop{from{opacity:0;transform:scale(.96)}}
.pt img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.pt:hover img,.pt:focus-visible img{transform:scale(1.07)}
.pt span{position:absolute;inset:auto 0 0;padding:.9rem;text-align:left;color:#fff;background:linear-gradient(transparent,rgba(5,5,10,.92));transform:translateY(35%);opacity:0;transition:all .35s var(--ease)}
.pt:hover span,.pt:focus-visible span{transform:none;opacity:1}.pt b{display:block;font:700 1rem var(--disp)}.pt small{font-size:.8rem;color:#cfd3e6}
@media(hover:none){.pt span{opacity:1;transform:none}}
.count{text-align:center;color:var(--mute);margin-top:1.4rem;font-size:.9rem}.more{display:flex;justify-content:center;margin-top:1rem}.more[hidden]{display:none}
#lb{width:100%;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:rgba(7,7,12,.97);color:var(--text);overflow:auto}#lb::backdrop{background:#000}
.lb-top{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.8rem var(--pad);background:rgba(11,11,16,.9);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);flex-wrap:wrap}
.lb-top b{display:block;font:700 1.15rem var(--disp)}.lb-top small{color:var(--mute)}.lb-ctl{display:flex;gap:.5rem;align-items:center}
.lb-ctl button{border:1px solid var(--line);background:none;border-radius:999px;min-width:44px;height:44px;padding:0 1rem;cursor:pointer;font-weight:600}.lb-ctl button:hover{background:rgba(255,255,255,.1)}.lb-ctl span{color:var(--mute);font-size:.9rem;padding:0 .4rem}
.lb-body{padding:var(--pad);display:grid;justify-items:center}.lb-body img{width:min(1100px,100%);border-radius:14px;background:#fff;box-shadow:0 40px 100px -30px #000}
/* 9 CONTACT */
.contact{position:relative;padding:clamp(5rem,10vw,9rem) 0 3rem;border-top:1px solid var(--line);overflow:hidden}
.contact .big{font-size:clamp(2.8rem,1rem + 9vw,11rem)}
.cgrid{display:grid;gap:2.5rem;margin-top:2.5rem}
.mail{font:700 clamp(1.2rem,1rem + 1.4vw,2rem) var(--disp);text-decoration:none;border-bottom:2px solid var(--red)}
form{display:grid;gap:1rem;padding:clamp(1.2rem,3vw,2rem);border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.03)}
.fld{display:grid;gap:.4rem;font-size:.9rem;font-weight:600}.fld textarea{min-height:120px;resize:vertical}.hint{font-weight:400;color:var(--mute)}
.certs{list-style:none;padding:0;margin:1.6rem 0 0;display:flex;flex-wrap:wrap;gap:.5rem}.certs a{display:inline-block;padding:.45rem .9rem;border:1px solid var(--line);border-radius:999px;text-decoration:none;font-size:.85rem;color:var(--mute)}.certs a:hover{color:#fff;border-color:var(--hot)}
footer{display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;align-items:center;margin-top:4rem;padding-top:1.6rem;border-top:1px solid var(--line);color:var(--mute);font-size:.9rem}footer img{height:30px;width:auto}footer nav{display:flex;gap:1.2rem}
@media(min-width:900px){.cgrid{grid-template-columns:1fr 1fr;align-items:start}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.grain{display:none}}
.era.intro{align-content:center}.era.intro .big{max-width:12ch}
@media(max-width:899px){.hero h1{font-size:min(16vw,11.5vh)}.topbar .pill.solid{display:none}}

/* testimonials carousel (desktop) */
.tq{position:relative;width:min(1280px,100% - 2*var(--pad));margin-inline:auto;margin-top:5rem;padding-top:3rem;border-top:1px solid var(--line)}
.tq::before{content:"";position:absolute;inset:-2rem 0 auto;height:360px;background:radial-gradient(60% 70% at 85% 0%,rgba(226,34,44,.22),transparent 70%);pointer-events:none}
.tq>*{position:relative}
.tq-eyebrow{font:500 .8rem/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--hot);margin:0}
.tq-h{font:800 clamp(1.8rem,1rem + 2.6vw,3rem)/1.08 var(--disp);letter-spacing:-.03em;margin:.5rem 0 1.8rem}
.tq-track{display:flex;gap:1rem;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 0 8px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain}
.tq-track::-webkit-scrollbar{display:none}
.tq-card{flex:0 0 min(100%,560px);scroll-snap-align:start;margin:0;padding:1.75rem;border-radius:28px;background:linear-gradient(165deg,#1d1e28,#12131a);border:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:1rem;min-height:340px;justify-content:space-between}
.tq-qm{font:800 80px/.6 var(--disp);color:var(--red);height:36px}
.tq-card blockquote{margin:0;font:600 clamp(1.4rem,1.1rem + .7vw,1.7rem)/1.3 var(--disp);letter-spacing:-.02em}
.tq-card figcaption{display:flex;align-items:center;gap:1rem}
.tq-av{display:grid;place-items:center;flex:none;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#ee2d38,#8c1820);font:800 22px var(--disp)}
.tq-card b{display:block;font-size:1rem}.tq-card small{font-size:.95rem;color:#b4b7c4}
.tq-pager{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;font:600 .9rem var(--mono);color:#b4b7c4}
.tq-dots{display:flex;gap:8px}.tq-dots button{position:relative;width:8px;height:8px;border-radius:99px;border:0;padding:0;background:rgba(255,255,255,.25);transition:width .3s,background .3s;cursor:pointer}.tq-dots button.on{width:24px;background:var(--red)}.tq-dots button::after{content:"";position:absolute;inset:-18px -8px}
.tq-arrows{display:flex;gap:8px}.tq-arrows button{width:48px;height:48px;border-radius:50%;border:1px solid var(--line);background:rgba(255,255,255,.05);color:#fff;font-size:18px;cursor:pointer;transition:background .2s,border-color .2s}.tq-arrows button:hover{background:var(--red);border-color:var(--red)}
.tq-arrows #tq-play{font-size:12px;letter-spacing:-.1em}
.tq-dots button.on{position:relative;overflow:hidden}
