/* CAQA Accounting - ledger-precision design */
:root{--ink:#1D1D51;--deep:#0C0C3C;--em:#4444EF;--em2:#7474F8;--gold:#22D3EE;--paper:#FFFFFF;--mist:#F5F7FA;--line:#E2E7EE;--body:#39434E;--muted:#66717E;--grad:linear-gradient(110deg,#4444EF,#7474F8);--shadow:0 12px 30px rgba(12,12,60,.10);--shadow-lg:0 30px 64px rgba(12,12,60,.16);--max:1200px}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Montserrat','Inter',sans-serif;color:var(--body);background:var(--paper);line-height:1.72;font-size:16.5px;-webkit-font-smoothing:antialiased}
h1,h2,h3,h4{font-family:'Lexend',sans-serif;color:var(--ink);line-height:1.12;font-weight:600;letter-spacing:-.01em}
.mono{font-family:'IBM Plex Mono',monospace}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none;transition:color .2s}
ul{list-style:none}
.container{max-width:var(--max);margin:0 auto;padding:0 24px}
.center{text-align:center}
.mt-1{margin-top:10px}.mt-2{margin-top:22px}.mt-3{margin-top:32px}
.h-xl{font-size:clamp(2rem,4.4vw,3.1rem)}
.h-lg{font-size:clamp(1.5rem,3vw,2.1rem)}
.gx{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:0.8125rem;font-weight:700;letter-spacing:.24em;text-transform:uppercase;color:var(--em)}
.eyebrow::before{content:"";width:26px;height:2px;background:var(--gold)}
.lead{font-size:1.08rem;color:var(--muted);max-width:760px}
.topbar{background:var(--deep);color:#A7B2C2;font-size:0.8125rem}
.topbar .container{display:flex;justify-content:space-between;align-items:center;min-height:36px;gap:14px}
.topbar a{color:#fff;font-weight:600}
.topbar a:hover{color:var(--gold)}
.header{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);transition:box-shadow .3s}
.header.scrolled{box-shadow:var(--shadow)}
.header .container{display:flex;align-items:center;justify-content:space-between;min-height:80px;gap:16px}
.brand{display:flex;align-items:center;gap:12px;font-family:'Lexend',sans-serif;font-weight:700;font-size:1.3rem;color:var(--ink)}
.brand .bx{width:44px;height:44px;border-radius:12px;background:var(--grad);display:grid;place-items:center;color:#fff;font-family:'IBM Plex Mono',monospace;font-weight:700;font-size:1rem;box-shadow:0 8px 20px rgba(68,68,239,.3)}
.brand small{display:block;font-family:'IBM Plex Mono',monospace;font-size:0.8125rem;letter-spacing:.3em;color:var(--gold);font-weight:700}
.nav{display:flex;align-items:center;gap:2px}
.nav a{padding:12px 15px;font-size:.92rem;font-weight:600;color:var(--ink);position:relative}
.nav a::after{content:"";position:absolute;left:15px;right:15px;bottom:7px;height:2.5px;background:var(--grad);transform:scaleX(0);transform-origin:left;transition:.28s}
.nav a:hover::after,.nav a.on::after{transform:scaleX(1)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 30px;border-radius:12px;font-family:'Inter',sans-serif;font-weight:700;font-size:.9rem;cursor:pointer;border:0;transition:.25s}
.btn-em{background:var(--grad);color:#fff;box-shadow:0 12px 28px rgba(68,68,239,.32)}
.btn-em:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(68,68,239,.42)}
.btn-line{background:transparent;color:var(--ink);border:2px solid var(--ink)}
.btn-line:hover{background:var(--ink);color:#fff;transform:translateY(-3px)}
.btn-gold{background:var(--gold);color:var(--deep)}
.btn-gold:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(34,211,238,.4)}
.nav-toggle{display:none;background:0;border:0;cursor:pointer;width:44px;height:44px}
.nav-toggle span{display:block;width:24px;height:2.5px;background:var(--ink);margin:5px auto;border-radius:2px}
.mast{position:relative;background:var(--deep);color:#fff;overflow:hidden}
.mast::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 44px),repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 44px)}
.mast::after{content:"";position:absolute;inset:0;background:radial-gradient(700px 360px at 88% 8%,rgba(34,211,238,.14),transparent 60%),radial-gradient(560px 320px at 0% 100%,rgba(68,68,239,.35),transparent 60%)}
.mast .container{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:50px;align-items:center;padding-top:40px;padding-bottom:48px}
.mast h1{color:#fff;font-size:clamp(2.2rem,4.6vw,3.6rem)}
.mast .lead{color:#C4CFDD;margin-top:18px}
.mast .eyebrow{color:var(--gold)}
.hero-cta{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}
.aud{display:flex;gap:9px;flex-wrap:wrap;margin-top:26px}
.aud span{font-size:0.8125rem;font-weight:700;color:#D9E1EC;border:1px solid rgba(255,255,255,.22);border-radius:99px;padding:7px 15px;transition:.25s}
.aud span:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-2px)}
.ledger{background:#2A2A70;border:1px solid #3E3E9E;border-radius:18px;padding:24px;box-shadow:0 40px 90px rgba(0,0,0,.4);font-family:'IBM Plex Mono',monospace}
.ledger .lh{display:flex;justify-content:space-between;font-size:0.8125rem;letter-spacing:.16em;color:#8A97A8;text-transform:uppercase;border-bottom:1px solid #3E3E9E;padding-bottom:12px}
.ledger .lrow{display:flex;justify-content:space-between;align-items:center;padding:11px 2px;border-bottom:1px dashed #3E3E9E;font-size:.82rem;color:#D9E1EC}
.ledger .lrow b{color:#fff;font-weight:600}
.ledger .ok{color:#22D3EE}
.ledger .lfoot{display:flex;justify-content:space-between;padding-top:14px;font-size:.9rem;color:#fff;font-weight:700}
.ledger .badge{background:rgba(34,211,238,.15);border:1px solid rgba(34,211,238,.45);color:var(--gold);font-size:0.8125rem;letter-spacing:.18em;padding:5px 10px;border-radius:7px}
.section{padding:76px 0}
.section.mist{background:var(--mist)}
.section.deep{background:var(--deep);color:#fff}
.section.deep h2{color:#fff}
.sv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:30px}
.sv{--ac:var(--em);background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:26px 24px;display:block;position:relative;overflow:hidden;transition:.3s}
.sv::before{content:"";position:absolute;inset:0 0 auto 0;height:3.5px;background:linear-gradient(90deg,var(--ac),transparent 85%);opacity:.3;transition:.4s}
.sv:hover{transform:translateY(-7px);box-shadow:var(--shadow-lg);border-color:var(--ac)}
.sv:hover::before{opacity:1}
.sv .tagn{font-family:'IBM Plex Mono',monospace;font-size:0.8125rem;color:var(--ac);letter-spacing:.16em;display:block;margin-bottom:10px}
.sv h3{font-size:1.05rem;margin-bottom:8px;transition:color .3s}
.sv:hover h3{color:var(--ac)}
.sv p{font-size:.87rem;color:var(--muted)}
.mv{display:block;margin-top:16px;height:62px;width:100%;color:var(--ac)}
.mv .ln{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mv .thin{stroke-width:1.3;opacity:.55}
.mv .ar{fill:currentColor;opacity:.13}
.mv .dt{fill:currentColor}
.mv .bx2{fill:currentColor;fill-opacity:.14;stroke:currentColor;stroke-width:1.5}
.mv text{font-family:'IBM Plex Mono',monospace;font-size:13px;font-weight:700;fill:currentColor}
.mv .draw{stroke-dasharray:160;stroke-dashoffset:160;transition:stroke-dashoffset 1.1s ease .05s}
.sv:hover .mv .draw,.bp:hover .mv .draw{stroke-dashoffset:0}
.mv .pop{transform:scaleY(.22);transform-origin:bottom;transition:transform .65s cubic-bezier(.22,1,.36,1)}
.sv:hover .mv .pop,.bp:hover .mv .pop{transform:scaleY(1)}
.mv .popx{transform:scaleX(.18);transform-origin:left;transition:transform .65s cubic-bezier(.22,1,.36,1)}
.sv:hover .mv .popx,.bp:hover .mv .popx{transform:scaleX(1)}
.mv .spin{transform-origin:center;transition:transform .9s cubic-bezier(.22,1,.36,1)}
.sv:hover .mv .spin,.bp:hover .mv .spin{transform:rotate(200deg)}
.mv .fadeup{opacity:.3;transition:opacity .55s}
.sv:hover .mv .fadeup,.bp:hover .mv .fadeup{opacity:1}
.mv .pulse{animation:acpulse 2.2s ease-in-out infinite}
.mv .pulse2{animation:acpulse 2.2s ease-in-out -1.1s infinite}
@keyframes acpulse{0%,100%{opacity:.25}50%{opacity:1}}
.stat-row{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:30px}
.stat{background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:26px 22px;text-align:center;transition:.3s}
.stat:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--gold)}
.stat b{font-family:'Lexend',sans-serif;font-size:2rem;color:var(--em);display:block}
.stat span{font-size:0.8125rem;color:var(--muted);font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.bp{--ac:var(--em);display:grid;grid-template-columns:70px 1fr;gap:24px;padding:30px 0;border-bottom:1px solid var(--line)}
.bp .num{font-family:'IBM Plex Mono',monospace;font-weight:700;font-size:.9rem;color:var(--ac);position:sticky;top:130px;align-self:start;background:var(--mist);border:1px solid var(--line);border-radius:10px;padding:10px 4px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px}
.bp .num .mv{margin-top:2px;height:46px;width:54px}
.bp:hover .num{border-color:var(--ac)}
.bp h2{font-size:1.35rem;margin-bottom:8px;transition:color .3s}
.bp:hover h2{color:var(--ac)}
.bp p{color:var(--body);font-size:.94rem;margin-bottom:10px;max-width:820px}
.tag-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.tag-list span{font-size:0.8125rem;font-weight:600;color:var(--ac);border:1px solid var(--line);border-radius:8px;padding:5px 12px;transition:.25s;font-family:'IBM Plex Mono',monospace}
.tag-list span:hover{background:var(--ac);color:#fff;border-color:var(--ac);transform:translateY(-2px)}
.page-hero{position:relative;background:var(--deep);color:#fff;padding:50px 0 44px;overflow:hidden}
.page-hero::before{content:"";position:absolute;inset:0;background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.035) 0 1px,transparent 1px 44px),repeating-linear-gradient(90deg,rgba(255,255,255,.025) 0 1px,transparent 1px 44px)}
.page-hero::after{content:"";position:absolute;inset:0;background:radial-gradient(640px 300px at 88% 0%,rgba(34,211,238,.14),transparent 60%)}
.page-hero .container{position:relative;z-index:2}
.page-hero h1{color:#fff;font-size:clamp(2rem,4.2vw,2.9rem);max-width:880px}
.page-hero .lead{color:#C4CFDD;margin-top:14px}
.page-hero .eyebrow{color:var(--gold)}
.crumbs{font-size:0.8125rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:#8A97A8;margin-bottom:16px;font-family:'IBM Plex Mono',monospace}
.crumbs a{color:var(--gold)}
.q-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:30px}
.q-card{background:#fff;border:1.5px solid var(--line);border-left:4px solid var(--em);border-radius:14px;padding:26px;transition:.3s}
.q-card:nth-child(2n){border-left-color:var(--gold)}
.q-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg)}
.q-card p{font-size:.89rem;color:var(--body)}
.q-card .who{margin-top:14px;font-size:0.8125rem;font-weight:700;color:var(--ink);font-family:'IBM Plex Mono',monospace}
.field{margin-bottom:18px}
.field label{display:block;font-size:0.8125rem;font-weight:700;color:var(--ink);margin-bottom:7px;letter-spacing:.12em;text-transform:uppercase;font-family:'IBM Plex Mono',monospace}
.field input,.field select,.field textarea{width:100%;padding:13px 16px;border:1.5px solid var(--line);border-radius:12px;font:inherit;font-size:.93rem;color:var(--ink);background:#fff;transition:.25s}
.field input:focus,.field select:focus,.field textarea:focus{outline:0;border-color:var(--em);box-shadow:0 0 0 4px rgba(68,68,239,.12)}
.form-card{background:#fff;border:1.5px solid var(--line);border-radius:20px;padding:36px;box-shadow:var(--shadow)}
.info-card{background:#fff;border:1.5px solid var(--line);border-radius:16px;padding:28px;transition:.3s}
.info-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-4px)}
.info-card .row{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px dashed var(--line);font-size:.88rem}
.info-card .row b{text-align:right;color:var(--ink)}
.cta-band{background:#fff;color:var(--ink);border:2.5px solid var(--ink);border-radius:20px;box-shadow:10px 10px 0 var(--em);padding:42px 46px;display:flex;justify-content:space-between;align-items:center;gap:30px;transition:.3s}
.cta-band:hover{box-shadow:14px 14px 0 var(--gold);transform:translate(-3px,-3px)}
.cta-band h2{font-size:clamp(1.4rem,2.6vw,2rem)}
.cta-band p{margin-top:8px;max-width:620px;font-size:.93rem;color:var(--muted)}
.cta-band .btn-dark{background:var(--ink);color:#fff}
.cta-band .btn-dark:hover{background:var(--em)}
.section:has(.cta-band){padding-top:14px;padding-bottom:30px}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s,transform .7s}
.reveal.in{opacity:1;transform:none}
.d1{transition-delay:.1s}.d2{transition-delay:.2s}.d3{transition-delay:.3s}
.f-news{position:relative;z-index:3;width:min(1120px,90%);margin:0 auto -52px;background:linear-gradient(135deg,#2A2A70,#4444EF);border-radius:20px;padding:28px 36px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;box-shadow:0 30px 70px rgba(12,12,60,.45);overflow:hidden;color:#fff}
.f-news::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--gold),var(--em2))}
.f-news h3{color:#fff;font-size:1.35rem}
.f-news p{color:#C4CFDD;font-size:.9rem}
.f-news-form{display:flex;align-items:center;background:#fff;border-radius:999px;padding:6px;flex:1;min-width:300px;max-width:500px}
.f-news-form input{flex:1;border:0;outline:none;padding:11px 20px;border-radius:999px;font:inherit;font-size:.92rem;color:var(--ink);min-width:0}
.f-news-form button{padding:12px 26px;border:0;background:var(--gold);color:var(--deep);font-weight:700;cursor:pointer;transition:.25s;border-radius:999px;font-size:.88rem}
.f-news-form button:hover{background:color-mix(in srgb,var(--gold) 85%,#000)}
.footer{background:var(--deep);color:#A7B2C2;position:relative;padding:110px 0 0;margin-top:56px}
.footer::before{content:"";position:absolute;top:-66px;left:50%;transform:translateX(-50%);width:130%;height:140px;background:var(--deep);border-radius:50% 50% 0 0}
.footer>.container,.footer .f-bottom{position:relative;z-index:2}
.footer h4{color:#fff;font-size:0.8125rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:16px;font-family:'IBM Plex Mono',monospace}
.footer h4::after{content:"";display:block;width:30px;height:2px;background:var(--gold);margin-top:8px}
.footer li{margin-bottom:9px;font-size:.86rem}
.footer li a:hover{color:#fff}
.footer .f-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.2fr;gap:38px;padding-bottom:40px}
.footer .f-brand .brand{color:#fff}
.footer .f-brand p{font-size:.85rem;line-height:1.7;margin-top:14px}
.f-bottom{border-top:1px solid #3E3E9E;padding:18px 0;font-size:0.8125rem}
.f-bottom .container{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap}
.f-bottom a{color:var(--gold)}
@media(max-width:1020px){.sv-grid,.q-grid{grid-template-columns:1fr 1fr}.stat-row{grid-template-columns:1fr 1fr}.mast .container{grid-template-columns:1fr}.footer .f-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.nav{position:fixed;inset:80px 0 auto 0;background:#fff;flex-direction:column;align-items:stretch;padding:14px 22px 24px;box-shadow:var(--shadow-lg);transform:translateY(-130%);transition:.4s;z-index:80}.nav.open{transform:none}.nav-toggle{display:block}.header .btn{display:none}.sv-grid,.q-grid,.stat-row{grid-template-columns:1fr}.cta-band{flex-direction:column;padding:34px 24px}.footer .f-grid{grid-template-columns:1fr}.section{padding:38px 0}.two-col{display:block!important}.two-col>*+*{margin-top:26px}}


/*hviz*/
.hviz .scene{position:relative;height:236px;margin:12px 0 4px;font-family:'IBM Plex Mono',monospace}
.hviz .lfoot .ok{animation:hvpulse 2.6s ease-in-out infinite}
@keyframes hvpulse{0%,100%{opacity:1}50%{opacity:.45}}
@keyframes hvgrow{from{transform:scaleY(.12)}to{transform:scaleY(1)}}
@keyframes hvdraw{to{stroke-dashoffset:0}}
@keyframes hvfade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes hvping{0%{transform:scale(.35);opacity:.9}80%,100%{transform:scale(1.9);opacity:0}}
@keyframes hvsweep{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes hvdot{0%{offset-distance:0%;opacity:0}8%{opacity:1}92%{opacity:1}100%{offset-distance:100%;opacity:0}}
@keyframes hvblink{0%,100%{opacity:1}50%{opacity:0}}
@keyframes hvrise{0%{transform:translateY(0);opacity:0}12%{opacity:.9}100%{transform:translateY(-150px);opacity:0}}
@keyframes hvtile{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.06)}100%{opacity:1;transform:scale(1)}}
@keyframes hvstamp{0%,55%{opacity:0;transform:scale(2.2) rotate(-14deg)}70%{opacity:1;transform:scale(1) rotate(-8deg)}100%{opacity:1;transform:scale(1) rotate(-8deg)}}
@keyframes hvneedle{0%{transform:rotate(-78deg)}45%{transform:rotate(64deg)}60%{transform:rotate(52deg)}100%{transform:rotate(58deg)}}
@keyframes hvbar{0%,100%{transform:scaleY(.25)}50%{transform:scaleY(1)}}
@keyframes hvtick{0%,60%{opacity:0;transform:scale(.4)}75%{opacity:1;transform:scale(1.15)}100%{opacity:1;transform:scale(1)}}
@keyframes hvslide{from{opacity:0;transform:translateX(-14px)}to{opacity:1;transform:none}}
@keyframes hvtype{from{width:0}to{width:100%}}
@keyframes hvcell{0%,100%{background:rgba(255,255,255,.07)}50%{background:var(--gold)}}
@keyframes hvorbit{from{transform:rotate(0) translateX(74px) rotate(0)}to{transform:rotate(360deg) translateX(74px) rotate(-360deg)}}
.hviz .cap{display:flex;justify-content:space-between;font-size:0.8125rem;color:#9FB0C2;margin-top:10px}
.hviz .cap b{color:#fff;font-weight:600}
.hviz .chip{position:absolute;font-size:0.8125rem;letter-spacing:.12em;padding:4px 9px;border-radius:6px;background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.18);animation:hvfade .8s both}
/* ring */
.sc-ring{display:flex;align-items:center;gap:22px}
.sc-ring svg{width:150px;height:150px;flex:0 0 150px}
.sc-ring .bg{fill:none;stroke:rgba(255,255,255,.12);stroke-width:10}
.sc-ring .fg{fill:none;stroke:var(--gold);stroke-width:10;stroke-linecap:round;stroke-dasharray:339;stroke-dashoffset:339;transform:rotate(-90deg);transform-origin:50% 50%;animation:hvdraw 3s .4s ease-out forwards}
.sc-ring .rt{position:absolute;left:0;width:150px;text-align:center;color:#fff}
.sc-ring .rt b{font-size:1.5rem}.sc-ring .rt span{display:block;font-size:0.8125rem;color:#9FB0C2;letter-spacing:.14em;text-transform:uppercase}
.sc-ring .bars{flex:1;display:flex;flex-direction:column;gap:13px}
.sc-ring .bars>div{font-size:0.8125rem;color:#C9D4E2;text-transform:uppercase;letter-spacing:.1em}
.sc-ring .bars i{display:block;height:7px;border-radius:4px;background:linear-gradient(90deg,var(--gold),rgba(255,255,255,.55));margin-top:5px;transform-origin:left;animation:hvtype 2.2s both}
.sc-ring .bars>div:nth-child(2) i{animation-delay:.5s}.sc-ring .bars>div:nth-child(3) i{animation-delay:1s}.sc-ring .bars>div:nth-child(4) i{animation-delay:1.5s}
/* gauge */
.sc-gauge{display:flex;flex-direction:column;align-items:center}
.sc-gauge svg{width:210px;height:128px}
.sc-gauge .arc{fill:none;stroke:rgba(255,255,255,.12);stroke-width:12;stroke-linecap:round}
.sc-gauge .arcf{fill:none;stroke:var(--gold);stroke-width:12;stroke-linecap:round;stroke-dasharray:264;stroke-dashoffset:264;animation:hvdraw 2.6s .3s ease-out forwards}
.sc-gauge .ndl{position:absolute;left:50%;top:38px;width:3px;height:78px;background:#fff;border-radius:3px;transform-origin:50% 100%;transform:rotate(-78deg);animation:hvneedle 4.2s 1.2s cubic-bezier(.3,1.4,.4,1) infinite alternate;margin-left:-1.5px}
.sc-gauge .hub{position:absolute;left:50%;top:116px;width:16px;height:16px;background:#fff;border-radius:50%;transform:translate(-50%,-50%)}
.sc-gauge .gt{margin-top:14px;color:#fff;text-align:center}.sc-gauge .gt b{font-size:1.25rem}.sc-gauge .gt span{display:block;font-size:0.8125rem;color:#9FB0C2;letter-spacing:.16em;text-transform:uppercase}
/* radar */
.sc-radar{display:flex;align-items:center;justify-content:center}
.sc-radar .disc{position:relative;width:196px;height:196px;border-radius:50%;border:1px solid rgba(255,255,255,.2);background:radial-gradient(circle,rgba(255,255,255,.05),transparent 70%)}
.sc-radar .disc::before,.sc-radar .disc::after{content:"";position:absolute;inset:24%;border:1px solid rgba(255,255,255,.16);border-radius:50%}
.sc-radar .disc::after{inset:40%}
.sc-radar .beam{position:absolute;inset:0;border-radius:50%;background:conic-gradient(from 0deg,transparent 78%,color-mix(in srgb,var(--gold) 55%,transparent));animation:hvsweep 3.4s linear infinite}
.sc-radar .blip{position:absolute;width:10px;height:10px;border-radius:50%;background:var(--gold)}
.sc-radar .blip::after{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid var(--gold);animation:hvping 2.4s ease-out infinite}
.sc-radar .b1{top:26%;left:60%}.sc-radar .b2{top:62%;left:30%;animation-delay:.6s}.sc-radar .b2::after{animation-delay:.8s}.sc-radar .b3{top:48%;left:72%}.sc-radar .b3::after{animation-delay:1.5s}
/* flow */
.sc-flow{display:flex;flex-direction:column;justify-content:center;gap:18px;padding:8px 2px}
.sc-flow .lane{position:relative;height:38px;border:1px dashed rgba(255,255,255,.22);border-radius:10px;display:flex;align-items:center;padding:0 12px;font-size:0.8125rem;letter-spacing:.12em;text-transform:uppercase;color:#C9D4E2;justify-content:space-between;animation:hvslide .7s both}
.sc-flow .lane:nth-child(2){animation-delay:.25s}.sc-flow .lane:nth-child(3){animation-delay:.5s}.sc-flow .lane:nth-child(4){animation-delay:.75s}
.sc-flow .lane b{color:var(--gold);font-size:0.8125rem}
.sc-flow .lane::after{content:"";position:absolute;left:8px;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:var(--gold);animation:hvflowdot 3.2s linear infinite}
.sc-flow .lane:nth-child(2)::after{animation-delay:.8s}.sc-flow .lane:nth-child(3)::after{animation-delay:1.6s}.sc-flow .lane:nth-child(4)::after{animation-delay:2.4s}
@keyframes hvflowdot{0%{left:4%;opacity:0}10%{opacity:1}88%{opacity:1}100%{left:92%;opacity:0}}
/* term */
.sc-term{background:rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:16px 16px 12px;display:flex;flex-direction:column;gap:11px;height:236px;box-sizing:border-box}
.sc-term .tl{display:flex;gap:6px}.sc-term .tl i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.22)}.sc-term .tl i:first-child{background:var(--gold)}
.sc-term p{margin:0;font-size:0.8125rem;color:#D9E3EF;white-space:nowrap;overflow:hidden;width:0;animation:hvtype 1.1s steps(26) forwards}
.sc-term p b{color:var(--gold);font-weight:600}
.sc-term p:nth-of-type(1){animation-delay:.2s}.sc-term p:nth-of-type(2){animation-delay:1.4s}.sc-term p:nth-of-type(3){animation-delay:2.6s}.sc-term p:nth-of-type(4){animation-delay:3.8s}.sc-term p:nth-of-type(5){animation-delay:5s}
.sc-term .crt{width:9px;height:14px;background:var(--gold);animation:hvblink 1s steps(1) infinite}
/* eq */
.sc-eq{display:flex;align-items:center;gap:24px;justify-content:center}
.sc-eq .play{position:relative;width:84px;height:84px;border-radius:50%;border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;flex:0 0 84px}
.sc-eq .play::before{content:"";border-left:22px solid #fff;border-top:13px solid transparent;border-bottom:13px solid transparent;margin-left:6px}
.sc-eq .play::after{content:"";position:absolute;inset:-2px;border-radius:50%;border:2px solid var(--gold);animation:hvping 2.2s ease-out infinite}
.sc-eq .bars{display:flex;align-items:flex-end;gap:7px;height:130px}
.sc-eq .bars i{width:11px;border-radius:6px 6px 0 0;background:linear-gradient(180deg,var(--gold),rgba(255,255,255,.35));height:100%;transform-origin:bottom;animation:hvbar 1.5s ease-in-out infinite}
.sc-eq .bars i:nth-child(2){animation-delay:.12s}.sc-eq .bars i:nth-child(3){animation-delay:.24s}.sc-eq .bars i:nth-child(4){animation-delay:.36s}.sc-eq .bars i:nth-child(5){animation-delay:.48s}.sc-eq .bars i:nth-child(6){animation-delay:.6s}.sc-eq .bars i:nth-child(7){animation-delay:.72s}.sc-eq .bars i:nth-child(8){animation-delay:.84s}
/* chart */
.sc-chart svg{width:100%;height:170px}
.sc-chart .grid{stroke:rgba(255,255,255,.1)}
.sc-chart .ln{fill:none;stroke:var(--gold);stroke-width:3;stroke-linecap:round;stroke-dasharray:560;stroke-dashoffset:560;animation:hvdraw 3.4s .4s ease-out forwards}
.sc-chart .ar{fill:url(#hvg);opacity:0;animation:hvfade 1.4s 2.4s both}
.sc-chart .pt{fill:#fff;opacity:0;animation:hvtick 4s both}
.sc-chart .pt2{animation-delay:.9s}.sc-chart .pt3{animation-delay:1.8s}.sc-chart .pt4{animation-delay:2.7s}
/* tiles */
.sc-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;align-content:center;height:236px}
.sc-tiles>div{border:1px solid rgba(255,255,255,.18);border-radius:12px;background:rgba(255,255,255,.06);height:64px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:5px;animation:hvtile .8s both;color:#fff;font-size:0.8125rem;letter-spacing:.1em;text-transform:uppercase}
.sc-tiles>div b{color:var(--gold);font-size:1.02rem}
.sc-tiles>div:nth-child(1){animation-delay:.15s}.sc-tiles>div:nth-child(2){animation-delay:.3s}.sc-tiles>div:nth-child(3){animation-delay:.45s}.sc-tiles>div:nth-child(4){animation-delay:.6s}.sc-tiles>div:nth-child(5){animation-delay:.75s}.sc-tiles>div:nth-child(6){animation-delay:.9s}
.sc-tiles>div:nth-child(2n)::after{content:"";width:60%;height:3px;border-radius:2px;background:var(--gold);transform-origin:left;animation:hvtype 1.6s 1s both}
/* chat */
.sc-chat{display:flex;flex-direction:column;gap:13px;justify-content:center;padding:6px 2px}
.sc-chat .bub{max-width:78%;padding:10px 14px;border-radius:13px;font-size:0.8125rem;line-height:1.45;animation:hvfade .7s both;background:rgba(255,255,255,.09);border:1px solid rgba(255,255,255,.16);color:#E6EDF5;border-bottom-left-radius:4px}
.sc-chat .me{align-self:flex-end;background:color-mix(in srgb,var(--gold) 26%,transparent);border-color:color-mix(in srgb,var(--gold) 55%,transparent);color:#fff;border-bottom-left-radius:13px;border-bottom-right-radius:4px}
.sc-chat .bub:nth-child(2){animation-delay:.7s}.sc-chat .bub:nth-child(3){animation-delay:1.4s}.sc-chat .bub:nth-child(4){animation-delay:2.1s}
.sc-chat .dots{display:flex;gap:5px;padding:10px 14px;align-self:flex-start;animation:hvfade .5s 2.8s both}
.sc-chat .dots i{width:7px;height:7px;border-radius:50%;background:var(--gold);animation:hvpulse 1.1s infinite}
.sc-chat .dots i:nth-child(2){animation-delay:.18s}.sc-chat .dots i:nth-child(3){animation-delay:.36s}
/* docs */
.sc-docs{display:flex;align-items:center;justify-content:center}
.sc-docs .pg{position:absolute;width:150px;height:196px;border-radius:10px;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.2);animation:hvfade .9s both}
.sc-docs .pg.p1{transform:rotate(-7deg) translateX(-26px)}.sc-docs .pg.p2{transform:rotate(4deg) translateX(20px);animation-delay:.3s}
.sc-docs .pg.p3{position:relative;background:rgba(255,255,255,.1);animation-delay:.6s;padding:18px 16px;box-sizing:border-box}
.sc-docs .pg.p3 i{display:block;height:6px;border-radius:3px;background:rgba(255,255,255,.3);margin-bottom:10px;transform-origin:left;animation:hvtype 1.2s both}
.sc-docs .pg.p3 i:nth-child(1){width:62%;animation-delay:.9s}.sc-docs .pg.p3 i:nth-child(2){width:88%;animation-delay:1.3s}.sc-docs .pg.p3 i:nth-child(3){width:74%;animation-delay:1.7s}.sc-docs .pg.p3 i:nth-child(4){width:81%;animation-delay:2.1s}.sc-docs .pg.p3 i:nth-child(5){width:55%;animation-delay:2.5s}
.sc-docs .seal{position:absolute;right:14px;bottom:14px;width:58px;height:58px;border:2.5px solid var(--gold);border-radius:50%;color:var(--gold);display:flex;align-items:center;justify-content:center;font-size:1.35rem;animation:hvstamp 5s both}
/* net */
.sc-net{display:flex;align-items:center;justify-content:center}
.sc-net .hubwrap{position:relative;width:200px;height:200px}
.sc-net .core{position:absolute;left:50%;top:50%;width:48px;height:48px;margin:-24px;border-radius:50%;background:color-mix(in srgb,var(--gold) 35%,transparent);border:2px solid var(--gold);display:flex;align-items:center;justify-content:center;color:#fff;font-size:0.8125rem;letter-spacing:.08em}
.sc-net .core::after{content:"";position:absolute;inset:-3px;border-radius:50%;border:2px solid var(--gold);animation:hvping 2.6s ease-out infinite}
.sc-net .sat{position:absolute;left:50%;top:50%;width:30px;height:30px;margin:-15px;border-radius:50%;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.4);animation:hvorbit 12s linear infinite}
.sc-net .sat:nth-child(3){animation-delay:-3s}.sc-net .sat:nth-child(4){animation-delay:-6s}.sc-net .sat:nth-child(5){animation-delay:-9s}
.sc-net .ringline{position:absolute;inset:26px;border:1px dashed rgba(255,255,255,.25);border-radius:50%}
/* cal */
.sc-cal{display:flex;flex-direction:column;justify-content:center;gap:14px}
.sc-cal .grid7{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}
.sc-cal .grid7 i{height:24px;border-radius:6px;background:rgba(255,255,255,.07)}
.sc-cal .grid7 i.on{animation:hvcell 4.5s infinite}
.sc-cal .grid7 i.on.c2{animation-delay:1.1s}.sc-cal .grid7 i.on.c3{animation-delay:2.2s}.sc-cal .grid7 i.on.c4{animation-delay:3.3s}
/* roster rows reuse chat fade */
.sc-cal .evt{display:flex;justify-content:space-between;font-size:0.8125rem;color:#D9E3EF;border:1px dashed rgba(255,255,255,.2);border-radius:9px;padding:9px 12px;animation:hvslide .7s both}
.sc-cal .evt b{color:var(--gold)}.sc-cal .evt:nth-of-type(3){animation-delay:.4s}.sc-cal .evt:nth-of-type(4){animation-delay:.8s}
/* flask */
.sc-flask{display:flex;align-items:flex-end;justify-content:center;gap:34px}
.sc-flask .fl{position:relative;width:120px;height:200px;border:2px solid rgba(255,255,255,.35);border-top:none;border-radius:0 0 56px 56px;overflow:hidden}
.sc-flask .fl::before{content:"";position:absolute;left:-2px;right:-2px;bottom:0;height:44%;background:color-mix(in srgb,var(--gold) 38%,transparent);border-top:2px solid var(--gold)}
.sc-flask .bub{position:absolute;bottom:8px;width:10px;height:10px;border-radius:50%;background:var(--gold);animation:hvrise 3.2s linear infinite}
.sc-flask .bub.b2{left:38%;width:7px;height:7px;animation-delay:1.1s}.sc-flask .bub.b3{left:62%;animation-delay:2s}.sc-flask .bub.b4{left:50%;width:6px;height:6px;animation-delay:.5s}.sc-flask .bub.b1{left:26%}
.sc-flask .reads{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}
.sc-flask .reads span{font-size:0.8125rem;color:#C9D4E2;text-transform:uppercase;letter-spacing:.12em}
.sc-flask .reads i{display:block;height:6px;width:120px;border-radius:4px;background:linear-gradient(90deg,var(--gold),rgba(255,255,255,.4));transform-origin:left;animation:hvtype 2s both}
.sc-flask .reads span:nth-child(2) i{animation-delay:.6s}.sc-flask .reads span:nth-child(3) i{animation-delay:1.2s}
@media (prefers-reduced-motion:reduce){.hviz *,.hviz *::before,.hviz *::after{animation:none!important}}
@media (max-width:560px){.sc-ring{flex-direction:column}.sc-ring .rt{position:static;width:auto}}
/*hviz-end*/

/*sigband*/
.sigband{position:relative;overflow:hidden;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cpath d='M15 135h30v-30h30V75h30V45h30' fill='none' stroke='%23ffffff' stroke-opacity='.06' stroke-width='2'/%3E%3C/svg%3E"),radial-gradient(820px 420px at 12% 0%,color-mix(in srgb,var(--gold) 16%,transparent),transparent 62%),radial-gradient(700px 420px at 92% 100%,rgba(255,255,255,.07),transparent 60%),var(--deep);color:#fff;padding:84px 0}
.sigband .sb-shapes i{position:absolute;border-radius:50%;filter:blur(64px);opacity:.45;animation:sbfloat 16s ease-in-out infinite alternate}
.sigband .sb-shapes i:nth-child(1){width:300px;height:300px;background:color-mix(in srgb,var(--gold) 30%,transparent);top:-80px;right:8%}
.sigband .sb-shapes i:nth-child(2){width:220px;height:220px;background:rgba(255,255,255,.14);bottom:-70px;left:5%;animation-delay:4s}
.sigband .sb-shapes i:nth-child(3){width:170px;height:170px;background:color-mix(in srgb,var(--gold) 22%,transparent);top:48%;left:58%;animation-delay:8s}
@keyframes sbfloat{from{transform:translateY(0) scale(1)}to{transform:translateY(30px) scale(1.06)}}
.sigband .sb-in{position:relative;z-index:2;text-align:center;max-width:880px}
.sigband .sb-kicker{display:inline-block;font-size:0.8125rem;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);border:1px solid color-mix(in srgb,var(--gold) 45%,transparent);padding:7px 16px;border-radius:999px;background:color-mix(in srgb,var(--gold) 10%,transparent)}
.sigband h2{color:#fff;font-size:clamp(1.9rem,3.6vw,3rem);margin-top:20px;line-height:1.15}
.sigband h2 em{font-style:normal;color:var(--gold)}
.sigband p{color:rgba(255,255,255,.78);margin:16px auto 0;max-width:620px}
.sigband .sb-chips{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:34px}
.sigband .sb-chips div{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(6px);border-radius:14px;padding:16px 26px;min-width:150px}
.sigband .sb-chips b{display:block;font-size:1.5rem;color:var(--gold)}
.sigband .sb-chips span{font-size:0.8125rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.7)}
@media (prefers-reduced-motion:reduce){.sigband .sb-shapes i{animation:none}}
/*sigband-end*/

/* UX-FIX contrast overrides (WCAG AA) */
.bp .num{color:#3838CA !important}
.tag-list span:hover{background-color:#3838CA !important;color:#ffffff !important}

/* UX-FIX accent text on light bg (WCAG AA, cascade-safe) */
.eyebrow{color:#3939CE}
.tag-list span{color:#3939CE}

/* UX-FIX rendered-contrast (light-bg text to AA; dark contexts restored) */
.eyebrow{color:#3535BF}
.mast .eyebrow,[class*="hero"] .eyebrow,.page-hero .eyebrow,.banner .eyebrow,footer .eyebrow,.foot .eyebrow,.dark .eyebrow,.invert .eyebrow,.topbar .eyebrow,.drawer .eyebrow,.overlay .eyebrow{color:#4444EF}
.brand small{color:#107482}
.mast .brand small,[class*="hero"] .brand small,.page-hero .brand small,.banner .brand small,footer .brand small,.foot .brand small,.dark .brand small,.invert .brand small,.topbar .brand small,.drawer .brand small,.overlay .brand small{color:#22d3ee}
.aud span{color:#646a6e}
.mast .aud span,[class*="hero"] .aud span,.page-hero .aud span,.banner .aud span,footer .aud span,.foot .aud span,.dark .aud span,.invert .aud span,.topbar .aud span,.drawer .aud span,.overlay .aud span{color:#d9e1ec}
.aud span:hover{color:#107482}
.mast .aud span:hover,[class*="hero"] .aud span:hover,.page-hero .aud span:hover,.banner .aud span:hover,footer .aud span:hover,.foot .aud span:hover,.dark .aud span:hover,.invert .aud span:hover,.topbar .aud span:hover,.drawer .aud span:hover,.overlay .aud span:hover{color:#22d3ee}
.ledger .lh{color:#5e6773}
.mast .ledger .lh,[class*="hero"] .ledger .lh,.page-hero .ledger .lh,.banner .ledger .lh,footer .ledger .lh,.foot .ledger .lh,.dark .ledger .lh,.invert .ledger .lh,.topbar .ledger .lh,.drawer .ledger .lh,.overlay .ledger .lh{color:#8a97a8}
.ledger .lrow{color:#646a6e}
.mast .ledger .lrow,[class*="hero"] .ledger .lrow,.page-hero .ledger .lrow,.banner .ledger .lrow,footer .ledger .lrow,.foot .ledger .lrow,.dark .ledger .lrow,.invert .ledger .lrow,.topbar .ledger .lrow,.drawer .ledger .lrow,.overlay .ledger .lrow{color:#d9e1ec}
.ledger .ok{color:#107482}
.mast .ledger .ok,[class*="hero"] .ledger .ok,.page-hero .ledger .ok,.banner .ledger .ok,footer .ledger .ok,.foot .ledger .ok,.dark .ledger .ok,.invert .ledger .ok,.topbar .ledger .ok,.drawer .ledger .ok,.overlay .ledger .ok{color:#22d3ee}
.sv .tagn{color:#3535BF}
.mast .sv .tagn,[class*="hero"] .sv .tagn,.page-hero .sv .tagn,.banner .sv .tagn,footer .sv .tagn,.foot .sv .tagn,.dark .sv .tagn,.invert .sv .tagn,.topbar .sv .tagn,.drawer .sv .tagn,.overlay .sv .tagn{color:#4444EF}
.sv:hover h3{color:#3535BF}
.mast .sv:hover h3,[class*="hero"] .sv:hover h3,.page-hero .sv:hover h3,.banner .sv:hover h3,footer .sv:hover h3,.foot .sv:hover h3,.dark .sv:hover h3,.invert .sv:hover h3,.topbar .sv:hover h3,.drawer .sv:hover h3,.overlay .sv:hover h3{color:#4444EF}
.mv{color:#3535BF}
.mast .mv,[class*="hero"] .mv,.page-hero .mv,.banner .mv,footer .mv,.foot .mv,.dark .mv,.invert .mv,.topbar .mv,.drawer .mv,.overlay .mv{color:#4444EF}
.stat b{color:#3535BF}
.mast .stat b,[class*="hero"] .stat b,.page-hero .stat b,.banner .stat b,footer .stat b,.foot .stat b,.dark .stat b,.invert .stat b,.topbar .stat b,.drawer .stat b,.overlay .stat b{color:#4444EF}
.bp:hover h2{color:#3535BF}
.mast .bp:hover h2,[class*="hero"] .bp:hover h2,.page-hero .bp:hover h2,.banner .bp:hover h2,footer .bp:hover h2,.foot .bp:hover h2,.dark .bp:hover h2,.invert .bp:hover h2,.topbar .bp:hover h2,.drawer .bp:hover h2,.overlay .bp:hover h2{color:#4444EF}
.tag-list span{color:#3535BF}
.mast .tag-list span,[class*="hero"] .tag-list span,.page-hero .tag-list span,.banner .tag-list span,footer .tag-list span,.foot .tag-list span,.dark .tag-list span,.invert .tag-list span,.topbar .tag-list span,.drawer .tag-list span,.overlay .tag-list span{color:#4444EF}
.crumbs{color:#5e6773}
.mast .crumbs,[class*="hero"] .crumbs,.page-hero .crumbs,.banner .crumbs,footer .crumbs,.foot .crumbs,.dark .crumbs,.invert .crumbs,.topbar .crumbs,.drawer .crumbs,.overlay .crumbs{color:#8a97a8}
.crumbs a{color:#107482}
.mast .crumbs a,[class*="hero"] .crumbs a,.page-hero .crumbs a,.banner .crumbs a,footer .crumbs a,.foot .crumbs a,.dark .crumbs a,.invert .crumbs a,.topbar .crumbs a,.drawer .crumbs a,.overlay .crumbs a{color:#22d3ee}
.f-news p{color:#63696f}
.mast .f-news p,[class*="hero"] .f-news p,.page-hero .f-news p,.banner .f-news p,footer .f-news p,.foot .f-news p,.dark .f-news p,.invert .f-news p,.topbar .f-news p,.drawer .f-news p,.overlay .f-news p{color:#c4cfdd}
.f-bottom a{color:#107482}
.mast .f-bottom a,[class*="hero"] .f-bottom a,.page-hero .f-bottom a,.banner .f-bottom a,footer .f-bottom a,.foot .f-bottom a,.dark .f-bottom a,.invert .f-bottom a,.topbar .f-bottom a,.drawer .f-bottom a,.overlay .f-bottom a{color:#22d3ee}
.hviz .cap{color:#5d6772}
.mast .hviz .cap,[class*="hero"] .hviz .cap,.page-hero .hviz .cap,.banner .hviz .cap,footer .hviz .cap,.foot .hviz .cap,.dark .hviz .cap,.invert .hviz .cap,.topbar .hviz .cap,.drawer .hviz .cap,.overlay .hviz .cap{color:#9fb0c2}
.sc-ring .rt span{color:#5d6772}
.mast .sc-ring .rt span,[class*="hero"] .sc-ring .rt span,.page-hero .sc-ring .rt span,.banner .sc-ring .rt span,footer .sc-ring .rt span,.foot .sc-ring .rt span,.dark .sc-ring .rt span,.invert .sc-ring .rt span,.topbar .sc-ring .rt span,.drawer .sc-ring .rt span,.overlay .sc-ring .rt span{color:#9fb0c2}
.sc-ring .bars>div{color:#646b73}
.mast .sc-ring .bars>div,[class*="hero"] .sc-ring .bars>div,.page-hero .sc-ring .bars>div,.banner .sc-ring .bars>div,footer .sc-ring .bars>div,.foot .sc-ring .bars>div,.dark .sc-ring .bars>div,.invert .sc-ring .bars>div,.topbar .sc-ring .bars>div,.drawer .sc-ring .bars>div,.overlay .sc-ring .bars>div{color:#c9d4e2}
.sc-gauge .gt span{color:#5d6772}
.mast .sc-gauge .gt span,[class*="hero"] .sc-gauge .gt span,.page-hero .sc-gauge .gt span,.banner .sc-gauge .gt span,footer .sc-gauge .gt span,.foot .sc-gauge .gt span,.dark .sc-gauge .gt span,.invert .sc-gauge .gt span,.topbar .sc-gauge .gt span,.drawer .sc-gauge .gt span,.overlay .sc-gauge .gt span{color:#9fb0c2}
.sc-flow .lane{color:#646b73}
.mast .sc-flow .lane,[class*="hero"] .sc-flow .lane,.page-hero .sc-flow .lane,.banner .sc-flow .lane,footer .sc-flow .lane,.foot .sc-flow .lane,.dark .sc-flow .lane,.invert .sc-flow .lane,.topbar .sc-flow .lane,.drawer .sc-flow .lane,.overlay .sc-flow .lane{color:#c9d4e2}
.sc-flow .lane b{color:#107482}
.mast .sc-flow .lane b,[class*="hero"] .sc-flow .lane b,.page-hero .sc-flow .lane b,.banner .sc-flow .lane b,footer .sc-flow .lane b,.foot .sc-flow .lane b,.dark .sc-flow .lane b,.invert .sc-flow .lane b,.topbar .sc-flow .lane b,.drawer .sc-flow .lane b,.overlay .sc-flow .lane b{color:#22d3ee}
.sc-term p b{color:#107482}
.mast .sc-term p b,[class*="hero"] .sc-term p b,.page-hero .sc-term p b,.banner .sc-term p b,footer .sc-term p b,.foot .sc-term p b,.dark .sc-term p b,.invert .sc-term p b,.topbar .sc-term p b,.drawer .sc-term p b,.overlay .sc-term p b{color:#22d3ee}
.sc-tiles>div b{color:#107482}
.mast .sc-tiles>div b,[class*="hero"] .sc-tiles>div b,.page-hero .sc-tiles>div b,.banner .sc-tiles>div b,footer .sc-tiles>div b,.foot .sc-tiles>div b,.dark .sc-tiles>div b,.invert .sc-tiles>div b,.topbar .sc-tiles>div b,.drawer .sc-tiles>div b,.overlay .sc-tiles>div b{color:#22d3ee}
.sc-docs .seal{color:#107482}
.mast .sc-docs .seal,[class*="hero"] .sc-docs .seal,.page-hero .sc-docs .seal,.banner .sc-docs .seal,footer .sc-docs .seal,.foot .sc-docs .seal,.dark .sc-docs .seal,.invert .sc-docs .seal,.topbar .sc-docs .seal,.drawer .sc-docs .seal,.overlay .sc-docs .seal{color:#22d3ee}
.sc-cal .evt b{color:#107482}
.mast .sc-cal .evt b,[class*="hero"] .sc-cal .evt b,.page-hero .sc-cal .evt b,.banner .sc-cal .evt b,footer .sc-cal .evt b,.foot .sc-cal .evt b,.dark .sc-cal .evt b,.invert .sc-cal .evt b,.topbar .sc-cal .evt b,.drawer .sc-cal .evt b,.overlay .sc-cal .evt b{color:#22d3ee}
.sc-flask .reads span{color:#646b73}
.mast .sc-flask .reads span,[class*="hero"] .sc-flask .reads span,.page-hero .sc-flask .reads span,.banner .sc-flask .reads span,footer .sc-flask .reads span,.foot .sc-flask .reads span,.dark .sc-flask .reads span,.invert .sc-flask .reads span,.topbar .sc-flask .reads span,.drawer .sc-flask .reads span,.overlay .sc-flask .reads span{color:#c9d4e2}
.sigband h2 em{color:#107482}
.mast .sigband h2 em,[class*="hero"] .sigband h2 em,.page-hero .sigband h2 em,.banner .sigband h2 em,footer .sigband h2 em,.foot .sigband h2 em,.dark .sigband h2 em,.invert .sigband h2 em,.topbar .sigband h2 em,.drawer .sigband h2 em,.overlay .sigband h2 em{color:#22d3ee}
.sigband .sb-chips b{color:#107482}
.mast .sigband .sb-chips b,[class*="hero"] .sigband .sb-chips b,.page-hero .sigband .sb-chips b,.banner .sigband .sb-chips b,footer .sigband .sb-chips b,.foot .sigband .sb-chips b,.dark .sigband .sb-chips b,.invert .sigband .sb-chips b,.topbar .sigband .sb-chips b,.drawer .sigband .sb-chips b,.overlay .sigband .sb-chips b{color:#22d3ee}

/* ============ LAUNCH 2026-07: a11y + forms ============ */
.skip-link{position:absolute;left:-9999px;top:0;z-index:999;background:#0B1633;color:#fff;padding:12px 22px;border-radius:0 0 10px 0;font-weight:600}
.skip-link:focus{left:0}
.menu li:focus-within .dropdown,.menu li:focus-within .drop,nav li:focus-within .dropdown{opacity:1;visibility:visible;transform:none}
.cq-pause{position:absolute;right:18px;bottom:16px;z-index:6;width:42px;height:42px;border-radius:50%;border:1px solid rgba(255,255,255,.55);background:rgba(10,16,40,.45);color:#fff;cursor:pointer;font-size:.8rem;display:grid;place-items:center;backdrop-filter:blur(4px)}
.cq-pause:hover{background:rgba(10,16,40,.75)}
.form-ok{background:#F0F7F0;border:1px solid #CFE8D2;border-left:4px solid #00800b;border-radius:12px;padding:20px 24px;font-size:.98rem;line-height:1.7}
.form-err{color:#2727B0;font-weight:600;margin-top:12px}
.consent-row{display:flex;gap:10px;align-items:flex-start;font-size:.85rem;line-height:1.6;margin:4px 0 6px;grid-column:1/-1}
.consent-row input{width:auto!important;min-height:0!important;margin-top:4px;accent-color:#00800b}
.news-consent{font-size:.75rem;margin-top:8px;opacity:.85}
.news-consent a{text-decoration:underline}
@media (prefers-reduced-motion:reduce){.cqsvc-track,.marquee-track{animation:none!important}.reveal{opacity:1!important;transform:none!important}}

/* ============ FAMILY FEEDBACK 2026-07: brighter secondary text on dark surfaces ============ */
.marquee span{color:#DFE7FA}.marquee i{opacity:1}
.band p,.band .proof p{color:#C6CFE8}
.stats-row span,.sigband span{opacity:.92}
.f-news p{opacity:.95}
.f-bottom a{opacity:1}
/* footer: brand block as full-width first row, columns in a wider second row */
.f-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important;width:min(1240px,92%)!important;gap:38px}
.f-grid>div:first-child,.f-grid>.f-about{grid-column:1/-1;max-width:920px}
.f-bottom .container,.f-bottom>.container{justify-content:center!important;text-align:center;flex-direction:column;gap:8px}
@media(max-width:1024px){.f-grid{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:680px){.f-grid{grid-template-columns:1fr!important}}

/* ============ FOOTER-FAMILY 2026-07: consulting-style footer ============ */
.footer{padding-top:26px}
.footer .f-news{position:relative;z-index:2;width:min(1120px,90%);margin:6px auto 0;background:linear-gradient(135deg,#10286B,#183E99);border-radius:26px;padding:26px 36px;display:flex;align-items:center;justify-content:space-between;gap:30px;flex-wrap:wrap;box-shadow:0 30px 70px rgba(11,22,51,.3)}
.footer .f-news h3{color:#fff;font-size:1.5rem;margin:0 0 4px;font-family:inherit}
.footer .f-news>div>p{color:#C7D0EC;font-size:.93rem;margin:0}
.footer .f-news-form{display:flex;align-items:center;background:#fff;border-radius:999px;padding:7px;flex:1;min-width:280px;max-width:560px}
.footer .f-news-form input[type="email"]{flex:1;border:0;outline:none;padding:11px 22px;font-family:inherit;font-size:.93rem;border-radius:999px;min-width:0;color:#13203A;background:#fff}
.footer .f-news-form button{border-radius:999px;padding:13px 26px;flex:none;border:0;cursor:pointer;background:#00800B;color:#fff;font-weight:700;font-family:inherit;font-size:.9rem;transition:.25s}
.footer .f-news-form button:hover{background:#026A0C}
.footer .news-consent{flex-basis:100%;font-size:.75rem;opacity:.9;margin:2px 0 0;color:#C7D0EC}
.footer .news-consent a{text-decoration:underline;color:#DFF3E1}
.footer .f-brandrow{width:min(1240px,92%);margin:0 auto;padding:44px 0 4px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}
.footer .f-brandrow p{font-size:.95rem;line-height:1.85;max-width:900px;margin:0}
.footer .f-brandrow .socials{margin-top:4px}
.footer .f-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))!important;gap:40px;width:min(1240px,92%);margin:26px auto 0;padding:34px 0;border-top:1px solid rgba(255,255,255,.12)}
.footer .f-grid>div:first-child{grid-column:auto!important;max-width:none!important}
.footer .f-sis{grid-column:1/-1!important}
.footer .f-bottom .container{flex-direction:column;justify-content:center!important;text-align:center;gap:8px}
.footer .form-ok{color:#9FE6AE;font-weight:600;padding:10px 18px}
@media(max-width:680px){.footer .f-news{padding:22px}}

.footer .f-brandrow>img,.footer .f-brandrow>a>img{height:56px;width:auto}
.footer .f-brandrow>svg{height:56px;width:auto}
.footer .f-brandrow .socials svg{height:16px;width:16px}
.footer .f-brandrow .socials a{width:42px;height:42px}

.footer .f-brandrow .brand span{color:#fff}
.footer .f-brandrow .brand small{color:#B9C6EE}
.footer .f-brandrow .brand .bx{box-shadow:0 6px 18px rgba(0,0,0,.35)}

/* FTR3 2026-07 - centred footer brand row + balanced link columns */
.f-brandrow{align-items:center;text-align:center}
.f-brandrow p{margin-left:auto;margin-right:auto;max-width:860px}
.f-brandrow .socials{justify-content:center;margin-left:auto;margin-right:auto}
.f-grid{gap:30px 44px;padding:40px 0 26px}
.f-grid ul{margin:0;padding:0;list-style:none}
.f-grid li{margin:0 0 9px;padding:0}
.f-grid li a{line-height:1.45;display:inline-block}
.f-grid h4{margin-bottom:15px}

/* A11Y 2026-07 - WCAG 2.2 AA support layer */
:focus-visible{outline:3px solid #E8772E;outline-offset:2px;border-radius:3px}
.skip-link{position:absolute;left:-9999px;top:0;z-index:99999;background:#0B1E4B;color:#fff!important;padding:10px 18px;border-radius:0 0 10px 0;font-weight:600}
.skip-link:focus{left:0}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* FTR4 2026-07 - tight footer link rows */
.f-grid li{line-height:1.5;margin:0 0 10px;padding:0}
.f-grid li a{line-height:1.5;display:inline-block;padding:0}
.f-grid ul{margin:0;padding:0;list-style:none}
/* FTR4B 2026-07 - footer link rows at WCAG AA target size */
.f-grid li a, .foot2 li a, footer .f-links li a{min-height:24px}

/* FTR5 2026-07 - footer spacing audit: .f-news now lives INSIDE <footer>, so the
   cq.css rule `.cqsvc+.f-news{margin-top:-86px}` no longer matches and the stale
   spacing stacked up (cqsvc padding-bottom 130px + footer padding-top 26px +
   f-news margin-top 6px = 162px dead gap). Restore the designed card overlap. */
.cqsvc+.footer .f-news{margin-top:-86px}

/* IXOMS 2026-07 - interactive layer: Reel character panel, creative work gallery,
   light-leak / film-strip / clapperboard / dust techniques (assets/js/interact.js) */

/* -- character hero panel (band directly after .mast) -- */
.cine-charpanel{position:relative;width:min(1200px,92%);margin:28px auto 8px;border-radius:18px;overflow:hidden;background:var(--deep);box-shadow:0 26px 64px rgba(68,68,239,.22),0 12px 34px rgba(34,211,238,.16)}
.cine-charpanel video{display:block;width:100%;max-height:52vh;min-height:240px;object-fit:cover}
.cine-charpanel::after{content:"";position:absolute;left:0;right:0;bottom:0;height:46%;background:linear-gradient(180deg,transparent,rgba(12,12,60,.82));pointer-events:none;z-index:1}
.cine-charname{position:absolute;left:16px;bottom:14px;z-index:2;display:inline-block;max-width:calc(100% - 32px);background:rgba(12,12,60,.72);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#E8ECF4;border-radius:999px;padding:9px 18px;font:600 .85rem/1.45 'Montserrat','Inter',sans-serif}
.cine-charname b{font-weight:700;background:linear-gradient(100deg,#22D3EE,#7474F8);-webkit-background-clip:text;background-clip:text;color:transparent}
@media (max-width:640px){.cine-charname{left:10px;bottom:10px;padding:8px 14px;font-size:.78rem}}

/* -- hero light-leak sweep (.mast) - decorative layer under hero copy -- */
.mast>.container{position:relative;z-index:1}
.ix-leak{position:absolute;right:-24%;bottom:-34%;width:78%;height:125%;border-radius:50%;background:radial-gradient(closest-side,rgba(34,211,238,.5),rgba(68,68,239,.35) 46%,transparent 72%);filter:blur(46px);mix-blend-mode:screen;opacity:.3;pointer-events:none;will-change:transform,opacity;z-index:0}
.ix-leak-static .ix-leak{transform:none!important;opacity:.2!important}
@media (prefers-reduced-motion:reduce){.ix-leak{display:none}}

/* -- service card light-leak hover (.sv) - glow emanates from each card's --ac -- */
.sv::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 30%,rgba(34,211,238,.15) 46%,rgba(68,68,239,.15) 58%,transparent 74%);transform:translateX(-135%);pointer-events:none}
@media (prefers-reduced-motion:no-preference){
  .sv::after{transition:transform .7s ease}
  .sv:hover::after{transform:translateX(135%)}
}
@media (hover:hover){.sv:hover{box-shadow:0 16px 38px rgba(12,12,60,.12),0 24px 54px -20px var(--ac)}}

/* -- services film-strip (desktop, added by interact.js) -- */
.sv-grid.ix-strip{display:flex;overflow-x:auto;gap:22px;margin-top:30px;padding:24px 6px 30px;cursor:grab;user-select:none;-webkit-user-select:none;scrollbar-width:none;-ms-overflow-style:none;background:repeating-linear-gradient(90deg,rgba(12,12,60,.16) 0 14px,transparent 14px 36px) top/100% 9px no-repeat,repeating-linear-gradient(90deg,rgba(12,12,60,.16) 0 14px,transparent 14px 36px) bottom/100% 9px no-repeat}
.sv-grid.ix-strip::-webkit-scrollbar{display:none}
.sv-grid.ix-strip .sv{flex:0 0 min(300px,72vw)}
.sv-grid.ix-strip.ix-drag{cursor:grabbing}
.sv-grid.ix-strip.ix-drag .sv{transition:none}

/* -- clapperboard wipe (section transitions, added by interact.js) -- */
.ix-wipe{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:6}
.ix-wipe::before{content:"";position:absolute;top:-25%;bottom:-25%;left:0;width:52%;background:linear-gradient(90deg,transparent,rgba(34,211,238,.32) 38%,rgba(68,68,239,.32) 62%,transparent);transform:translateX(-140%) skewX(-30deg);animation:ixclap .8s cubic-bezier(.6,.05,.28,.99) forwards}
@keyframes ixclap{to{transform:translateX(330%) skewX(-30deg)}}
.ix-wipe-fade{background:linear-gradient(115deg,rgba(34,211,238,.16),rgba(68,68,239,.16));animation:ixfade .4s ease forwards}
.ix-wipe-fade::before{display:none;animation:none}
@keyframes ixfade{to{opacity:0}}
@media (prefers-reduced-motion:reduce){.ix-wipe{display:none}}

/* -- artband dust particles (between video and scrim; copy stays on top) -- */
.ix-dust{position:absolute;inset:0;pointer-events:none;z-index:1;opacity:.45;will-change:transform,opacity}
.ix-dust i{position:absolute;display:block;border-radius:50%;background:radial-gradient(circle,rgba(255,241,224,.9),rgba(34,211,238,.35) 60%,transparent 75%);animation:ixdrift 9s ease-in-out infinite}
@keyframes ixdrift{0%,100%{transform:translate3d(0,0,0);opacity:.12}30%{opacity:.7}50%{transform:translate3d(14px,-22px,0);opacity:.5}80%{opacity:.25}}
.ix-dust-static{background:radial-gradient(560px 300px at 82% 18%,rgba(34,211,238,.14),transparent 68%),radial-gradient(520px 300px at 12% 86%,rgba(68,68,239,.14),transparent 66%)}
@media (prefers-reduced-motion:reduce){.ix-dust{display:none}}

/* -- creative work gallery (cine-workgallery) -- */
.cine-workgallery .wg-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:36px}
.wg-card{position:relative;margin:0;border-radius:16px;overflow:hidden;border:1.5px solid var(--line);background:#fff;box-shadow:var(--shadow);transition:transform .35s,box-shadow .35s,border-color .35s}
.wg-card img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block}
.wg-card figcaption{padding:13px 16px;font:600 .88rem/1.4 'Lexend',sans-serif;color:var(--ink);border-top:1px solid var(--line);background:#fff;position:relative;z-index:2}
.wg-card::after{content:"";position:absolute;inset:0;background:linear-gradient(115deg,transparent 32%,rgba(34,211,238,.2) 47%,rgba(68,68,239,.2) 59%,transparent 76%);transform:translateX(-135%);pointer-events:none;z-index:1}
@media (hover:hover){.wg-card:hover{transform:translateY(-6px);border-color:#7474F8;box-shadow:0 24px 52px -18px rgba(68,68,239,.38),0 10px 26px rgba(34,211,238,.16)}}
@media (prefers-reduced-motion:no-preference){
  .wg-card::after{transition:transform .75s ease}
  .wg-card:hover::after{transform:translateX(135%)}
}
@media (max-width:1020px){.cine-workgallery .wg-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:620px){.cine-workgallery .wg-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.wg-card,.wg-card:hover{transform:none}}


/* lx:base */
[hidden]{display:none!important}
#omsHeroPoster{display:none!important}
html,body{overflow-x:hidden}
body.lx-home{background:#FFFFFF}
[id]{scroll-margin-top:90px}
#lx-stmts{background:#FFFFFF}
body.lx-lock{overflow:hidden}
.lx-kicker{display:inline-block;font:700 .74rem 'IBM Plex Mono',monospace;letter-spacing:.32em;text-transform:uppercase;color:#0E7490}
.lx-j-copy .lx-kicker{color:#22D3EE}
.lx-rec{display:inline-block;width:9px;height:9px;border-radius:50%;background:#4444EF;box-shadow:0 0 10px rgba(68,68,239,.9);animation:lxblink 1.15s steps(1) infinite}
@keyframes lxblink{50%{opacity:.25}}
.lx-btn{display:inline-flex;align-items:center;gap:10px;font:700 .95rem 'Lexend',sans-serif;letter-spacing:.02em;padding:15px 30px;border-radius:999px;text-decoration:none;transition:box-shadow .3s,background .3s,color .3s;will-change:transform}
.lx-btn-em{background:linear-gradient(110deg,#4444EF,#7474F8);color:#fff;box-shadow:0 12px 30px rgba(68,68,239,.4)}
.lx-btn-em:hover{box-shadow:0 16px 40px rgba(68,68,239,.55),0 0 0 1px rgba(34,211,238,.35),0 0 26px rgba(34,211,238,.3);color:#fff}
.lx-btn-ghost{border:1.5px solid rgba(12,12,48,.35);color:#0C0C30;background:rgba(255,255,255,.7);backdrop-filter:blur(6px)}
.lx-btn-ghost:hover{border-color:#0E7490;color:#0E7490;box-shadow:0 0 24px rgba(34,211,238,.3)}
#lxCursor{position:fixed;left:0;top:0;z-index:9999;width:22px;height:22px;margin:-11px 0 0 -11px;border:1.5px solid #22D3EE;border-radius:50%;pointer-events:none;opacity:0;transition:width .25s,height .25s,margin .25s,opacity .25s,background .25s;display:flex;align-items:center;justify-content:center}
#lxCursor.lx-cur-live{opacity:1}
#lxCursor.lx-cur-big{width:46px;height:46px;margin:-23px 0 0 -23px;background:rgba(34,211,238,.12)}
#lxCursor.lx-cur-label{width:64px;height:64px;margin:-32px 0 0 -32px;background:rgba(255,255,255,.92);border-color:#1212C0}
#lxCursor span{font:700 .6rem 'IBM Plex Mono',monospace;letter-spacing:.14em;color:#0C0C30}
@media (pointer:coarse),(max-width:767px),(prefers-reduced-motion:reduce){#lxCursor{display:none}}
@media (prefers-reduced-motion:reduce){.lx-rec{animation:none}.lx-btn{transition:none}}
/* /lx:base */

/* lx:nav */
.header.lx-nav{position:sticky;top:0;z-index:90;background:rgba(255,255,255,.92);border-bottom:1px solid rgba(16,24,40,.08);backdrop-filter:blur(14px);transition:background .4s,border-color .4s,box-shadow .4s,transform .45s}
.header.lx-nav.scrolled{background:rgba(255,255,255,.88);backdrop-filter:blur(14px);border-bottom-color:rgba(16,24,40,.08);box-shadow:0 14px 40px rgba(16,24,40,.1)}
.header.lx-nav.hide{transform:translateY(-110%)}
/* lx:navsolid — subpage state: frosted glass from the start (no transparent-over-hero) */
.header.lx-nav.lx-solid{background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom-color:rgba(16,24,40,.08)}
.header.lx-nav.lx-solid.scrolled{box-shadow:0 14px 40px rgba(16,24,40,.1)}
.lx-nav-in{max-width:var(--max);margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:22px;min-height:74px}
.lx-nav .lx-brand{display:flex;align-items:center;gap:11px;font-family:'Lexend',sans-serif;font-weight:700;font-size:1.12rem;color:#0C0C30;line-height:1.2}
.lx-nav .lx-brand-bx{width:40px;height:40px;border-radius:11px;background:linear-gradient(110deg,#4444EF,#7474F8);display:grid;place-items:center;color:#fff;font:700 .92rem 'IBM Plex Mono',monospace;box-shadow:0 8px 20px rgba(68,68,239,.4)}
.lx-nav .lx-brand-tx small{display:block;font:700 .62rem 'IBM Plex Mono',monospace;letter-spacing:.3em;color:#0E7490}
.header.lx-nav.scrolled .lx-brand-tx small,.header.lx-nav.lx-solid .lx-brand-tx small{color:#0E7490}
.lx-nav .lx-links{display:flex;align-items:center;gap:4px;margin-left:auto}
.lx-nav .lx-links a{position:relative;padding:9px 13px;font:600 .9rem 'Lexend',sans-serif;color:#39434E}
.lx-nav .lx-links a:hover,.lx-nav .lx-links a.lx-on{color:#0C0C30}
.header.lx-nav.scrolled .lx-brand,.header.lx-nav.lx-solid .lx-brand{color:#0C0C30}
.header.lx-nav.scrolled .lx-links a,.header.lx-nav.lx-solid .lx-links a{color:#39434E}
.header.lx-nav.scrolled .lx-links a:hover,.header.lx-nav.scrolled .lx-links a.lx-on,.header.lx-nav.lx-solid .lx-links a:hover,.header.lx-nav.lx-solid .lx-links a.lx-on{color:#0C0C30}
.header.lx-nav.scrolled .lx-tc,.header.lx-nav.lx-solid .lx-tc{color:#0E7490}
.header.lx-nav.scrolled .lx-menu-btn,.header.lx-nav.lx-solid .lx-menu-btn{border-color:rgba(12,12,48,.4);color:#0C0C30}
.header.lx-nav.scrolled .lx-menu-btn span,.header.lx-nav.lx-solid .lx-menu-btn span{background:#0C0C30}
.lx-nav .lx-links a::after{content:"";position:absolute;left:13px;right:13px;bottom:4px;height:2px;background:linear-gradient(90deg,transparent,#22D3EE 30%,#4444EF 55%,transparent 80%);background-size:220% 100%;opacity:0;transition:opacity .25s}
.lx-nav .lx-links a:hover::after,.lx-nav .lx-links a.lx-on::after{opacity:1;animation:lxscan 1.4s linear infinite}
@keyframes lxscan{from{background-position:120% 0}to{background-position:-120% 0}}
.lx-tc{display:inline-flex;align-items:center;gap:8px;font:700 .74rem 'IBM Plex Mono',monospace;letter-spacing:.08em;color:#0E7490}
.lx-tc b{font-weight:700;min-width:11ch;display:inline-block}
.lx-nav .lx-cta{display:inline-flex;align-items:center;font:700 .84rem 'Lexend',sans-serif;color:#fff;background:linear-gradient(110deg,#4444EF,#7474F8);padding:11px 22px;border-radius:999px;box-shadow:0 10px 26px rgba(68,68,239,.42);transition:box-shadow .3s;will-change:transform}
.lx-nav .lx-cta:hover{color:#fff;box-shadow:0 14px 34px rgba(68,68,239,.55),0 0 22px rgba(34,211,238,.35)}
.lx-menu-btn{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;background:none;border:1.5px solid rgba(12,12,48,.4);border-radius:10px;width:46px;height:42px;padding:0 11px;cursor:pointer;color:#0C0C30;font-size:0}
.lx-menu-btn span{display:block;height:2px;background:#0C0C30;border-radius:2px;transition:transform .3s}
.lx-menu-btn:hover{border-color:#22D3EE}
.lx-menu{position:fixed;inset:0;z-index:2300;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);opacity:0;transition:opacity .4s}
.lx-menu.open{opacity:1}
.lx-menu-bg{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.lx-menu-bg .lx-wave{position:absolute;left:-10%;right:-10%;height:120px;background:repeating-linear-gradient(90deg,rgba(14,116,144,.18) 0 3px,transparent 3px 14px);-webkit-mask-image:linear-gradient(180deg,transparent,#000 50%,transparent);mask-image:linear-gradient(180deg,transparent,#000 50%,transparent);animation:lxwavemove 9s linear infinite}
.lx-menu-bg .w1{top:16%}
.lx-menu-bg .w2{bottom:14%;animation-duration:13s;animation-direction:reverse;opacity:.6}
@keyframes lxwavemove{from{transform:translateX(0)}to{transform:translateX(28px)}}
.lx-menu-bg .lx-strip{position:absolute;top:0;bottom:0;right:12%;width:44px;background:repeating-linear-gradient(180deg,rgba(16,24,40,.05) 0 26px,transparent 26px 40px);border-left:1px solid rgba(16,24,40,.08);border-right:1px solid rgba(16,24,40,.08)}
.lx-menu-bg .lx-beam{position:absolute;top:-20%;width:260px;height:140%;background:linear-gradient(180deg,rgba(255,193,94,.2),transparent 70%);transform:skewX(-16deg);filter:blur(6px)}
.lx-menu-bg .b1{left:6%}
.lx-menu-bg .b2{left:38%;background:linear-gradient(180deg,rgba(111,111,209,.18),transparent 70%);transform:skewX(12deg)}
.lx-menu-in{position:relative;height:100%;display:flex;flex-direction:column;max-width:var(--max);margin:0 auto;padding:26px 24px}
.lx-menu-head{display:flex;align-items:center;justify-content:space-between}
.lx-menu-x{background:none;border:1.5px solid rgba(12,12,48,.4);color:#0C0C30;border-radius:50%;width:44px;height:44px;font-size:1.05rem;cursor:pointer;transition:border-color .25s,transform .25s}
.lx-menu-x:hover{border-color:#1212C0;transform:rotate(90deg)}
.lx-menu-nav{display:flex;flex-direction:column;justify-content:center;flex:1;gap:2px}
.lx-menu-nav a{display:flex;align-items:baseline;gap:18px;font:600 clamp(1.7rem,4.6vw,3rem)/1.28 'Lexend',sans-serif;color:#0C0C30;padding:6px 0;opacity:0;transform:translateY(26px);transition:opacity .5s,transform .5s,color .25s}
.lx-menu-nav a small{font:700 .8rem 'IBM Plex Mono',monospace;color:#0E7490;letter-spacing:.2em}
.lx-menu-nav a:hover{color:#1212C0}
.lx-menu.open .lx-menu-nav a{opacity:1;transform:none}
.lx-menu.open .lx-menu-nav a:nth-child(1){transition-delay:.08s}
.lx-menu.open .lx-menu-nav a:nth-child(2){transition-delay:.16s}
.lx-menu.open .lx-menu-nav a:nth-child(3){transition-delay:.24s}
.lx-menu.open .lx-menu-nav a:nth-child(4){transition-delay:.32s}
.lx-menu.open .lx-menu-nav a:nth-child(5){transition-delay:.40s}
.lx-menu.open .lx-menu-nav a:nth-child(6){transition-delay:.48s}
.lx-menu-foot{display:flex;align-items:center;justify-content:space-between;font:700 .74rem 'IBM Plex Mono',monospace;letter-spacing:.24em;color:#5A6472}
.lx-menu-foot a{color:#0E7490}
@media (max-width:960px){.lx-nav .lx-links{display:none}.lx-tc{display:none}}
@media (max-width:760px){.lx-nav .lx-cta{display:none}.lx-nav-in{min-height:62px}}
@media (prefers-reduced-motion:reduce){
  .header.lx-nav,.lx-menu,.lx-menu-nav a,.lx-menu-x{transition:none}
  .lx-menu-nav a{opacity:1;transform:none}
  .lx-menu-bg .lx-wave{animation:none}
  .lx-nav .lx-links a:hover::after,.lx-nav .lx-links a.lx-on::after{animation:none;background-position:50% 0}
}
/* /lx:nav */

/* lx:hero */
.lx-hero{position:relative;background:#FFFFFF;display:flex;align-items:center;min-height:70vh;padding:64px 0 84px}
.lx-hero-grid{max-width:var(--max);margin:0 auto;width:100%;padding:0 24px;display:grid;grid-template-columns:minmax(0,10fr) minmax(0,11fr);gap:52px;align-items:center}
.lx-hero-copy h1{font:600 clamp(2.3rem,4.6vw,4rem)/1.06 'Lexend',sans-serif;color:#0C0C30;max-width:13ch;margin:16px 0 0}
.lx-hero-copy p{margin:22px 0 0;max-width:56ch;font-size:1.12rem;line-height:1.75;color:#5A6472}
.lx-hero-cta{display:flex;flex-wrap:wrap;gap:16px;margin-top:34px}
.lx-hero-frame{position:relative;overflow:hidden;border-radius:22px;border:1px solid #E4E7EC;box-shadow:0 24px 60px rgba(16,24,40,.14);background:#0B0616;aspect-ratio:16/10}
.lx-hero-frame video.cqfx{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover}
.lx-hero-frame canvas#omsLiquid{position:absolute;inset:0;z-index:1;width:100%;height:100%;pointer-events:none}
.lx-cue{display:flex;align-items:center;justify-content:flex-start;gap:16px;margin-top:46px;transition:opacity .45s;pointer-events:none}
.lx-cue.lx-off{opacity:0}
.lx-cue-label{font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.34em;color:#0C0C30}
.lx-cue-line{position:relative;width:170px;height:2px;background:rgba(16,24,40,.16);border-radius:2px;overflow:visible}
.lx-cue-line::before{content:"";position:absolute;left:0;top:0;bottom:0;width:40%;background:linear-gradient(90deg,#0E7490,#1212C0);border-radius:2px;animation:lxcuefill 2.6s ease-in-out infinite}
.lx-cue-head{position:absolute;top:50%;left:0;width:10px;height:10px;margin:-5px 0 0 -5px;border-radius:50%;background:#0E7490;box-shadow:0 0 12px rgba(14,116,144,.55);animation:lxcuehead 2.6s ease-in-out infinite}
@keyframes lxcuefill{0%{width:4%}55%{width:96%}100%{width:4%}}
@keyframes lxcuehead{0%{left:4%}55%{left:96%}100%{left:4%}}
.lx-cue-rec{display:inline-flex;align-items:center;gap:7px;font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.2em;color:#1212C0}
@media (max-width:900px){
  .lx-hero-grid{grid-template-columns:minmax(0,1fr);gap:38px}
}
@media (max-width:767px){
  .lx-hero{min-height:0;padding:44px 0 64px}
  .lx-hero-frame canvas#omsLiquid{display:none}
  .lx-hero-frame{border-radius:18px;aspect-ratio:4/3}
  .lx-hero.lx-glow .lx-hero-frame::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(360px 300px at 72% 26%,rgba(34,211,238,.16),transparent 70%),radial-gradient(300px 260px at 22% 80%,rgba(68,68,239,.12),transparent 70%)}
}
@media (prefers-reduced-motion:reduce){
  .lx-hero-frame canvas#omsLiquid{display:none}
  .lx-cue{transition:none}
  .lx-cue-line::before,.lx-cue-head{animation:none}
  .lx-cue-line::before{width:60%}
  .lx-cue-head{left:60%}
}
/* /lx:hero */

/* lx:cue */
.lx-rail{position:fixed;right:18px;top:50%;transform:translateY(-50%) translateX(16px);z-index:80;display:flex;flex-direction:column;gap:13px;opacity:0;pointer-events:none;transition:opacity .45s,transform .45s}
.lx-rail.on{opacity:1;transform:translateY(-50%)}
.lx-rail span{position:relative;padding:6px 12px 6px 24px;border-radius:999px;background:rgba(255,255,255,.85);backdrop-filter:blur(8px);border:1px solid rgba(16,24,40,.1);font:700 .72rem 'IBM Plex Mono',monospace;letter-spacing:.22em;text-transform:uppercase;color:#39434E;transition:color .35s}
.lx-rail span::before{content:"";position:absolute;left:10px;top:50%;width:7px;height:7px;margin-top:-4px;border-radius:50%;background:rgba(90,100,114,.45);box-shadow:none;transition:background .35s,box-shadow .35s}
.lx-rail span.on{color:#1212C0}
.lx-rail span.on::before{background:#4444EF;box-shadow:0 0 10px rgba(68,68,239,.8)}
@media (max-width:1023px){.lx-rail{display:none}}
@media (prefers-reduced-motion:reduce){.lx-rail{transition:none}}
/* /lx:cue */

/* lx:journey */
.lx-journey{position:relative;background:#FFFFFF;height:380vh}
.lx-j-stage{position:sticky;top:0;height:100vh;overflow:hidden;display:flex;flex-direction:column;justify-content:center;background:#FFFFFF}
.lx-j-media{position:absolute;inset:16px;z-index:0;overflow:hidden;border-radius:24px;border:1px solid #E4E7EC;box-shadow:0 24px 60px rgba(16,24,40,.18)}
.lx-j-media video{width:100%;height:100%;object-fit:cover;transform:scale(1.18);will-change:transform}
.lx-j-scrim{position:absolute;inset:0;background:linear-gradient(180deg,rgba(9,4,20,.88) 0%,rgba(9,4,20,.5) 34%,rgba(9,4,20,.62) 72%,rgba(9,4,20,.92) 100%)}
.lx-j-copy{position:relative;z-index:2;max-width:var(--max);margin:0 auto;width:100%;padding:0 24px}
.lx-j-copy h2{font:600 clamp(1.9rem,4.4vw,3.2rem)/1.1 'Lexend',sans-serif;color:#fff;margin:14px 0 0}
.lx-j-copy p{margin:14px 0 0;max-width:52ch;color:#C9D4E6;font-size:1.05rem}
.lx-j-chips{position:relative;z-index:2;max-width:var(--max);margin:44px auto 0;width:100%;padding:0 24px;display:grid;grid-template-columns:repeat(7,1fr);gap:12px;list-style:none;counter-reset:none}
.lx-chip{position:relative;border:1px solid rgba(16,24,40,.1);border-radius:14px;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);padding:14px 12px 13px;opacity:.34;transform:translateY(14px);transition:opacity .45s,transform .45s,border-color .45s,box-shadow .45s}
.lx-chip.on{opacity:1;transform:none;border-color:rgba(14,116,144,.5);box-shadow:0 14px 34px rgba(16,24,40,.14),0 0 18px rgba(34,211,238,.14)}
.lx-chip-n{display:block;font:700 .64rem 'IBM Plex Mono',monospace;color:#0E7490;letter-spacing:.2em}
.lx-chip-t{display:block;font:600 .92rem 'Lexend',sans-serif;color:#0C0C30;margin-top:3px}
.lx-chip-d{display:block;font-size:.74rem;line-height:1.5;color:#475467;margin-top:4px}
.lx-v{position:relative;display:block;height:44px;margin-bottom:10px;border-radius:8px;background:rgba(16,24,40,.05);overflow:hidden}
/* 1 brief: document lines draw in */
.lx-v-brief::before{content:"";position:absolute;left:10px;top:8px;width:20px;height:26px;border:1.5px solid rgba(16,24,40,.5);border-radius:3px}
.lx-v-brief b{position:absolute;left:38px;height:2px;background:#0E7490;border-radius:2px;width:0;transition:width .6s ease}
.lx-v-brief b:nth-child(1){top:12px}.lx-v-brief b:nth-child(2){top:20px;transition-delay:.15s}.lx-v-brief b:nth-child(3){top:28px;transition-delay:.3s}
.lx-chip.on .lx-v-brief b:nth-child(1){width:46%}.lx-chip.on .lx-v-brief b:nth-child(2){width:38%}.lx-chip.on .lx-v-brief b:nth-child(3){width:28%}
/* 2 script: cards arrange */
.lx-v-script b{position:absolute;top:9px;width:18px;height:26px;border-radius:3px;background:rgba(16,24,40,.08);border:1px solid rgba(16,24,40,.35);transform:translateX(-26px) rotate(-14deg);opacity:0;transition:transform .55s ease,opacity .55s ease}
.lx-v-script b:nth-child(1){left:16%}.lx-v-script b:nth-child(2){left:40%;transition-delay:.14s}.lx-v-script b:nth-child(3){left:64%;transition-delay:.28s}
.lx-chip.on .lx-v-script b{transform:none;opacity:1}
/* 3 shoot: camera rig lights up */
.lx-v-cam::before{content:"";position:absolute;left:12px;top:13px;width:26px;height:18px;border:1.5px solid rgba(16,24,40,.55);border-radius:4px}
.lx-v-cam::after{content:"";position:absolute;left:40px;top:16px;border:6px solid transparent;border-left:9px solid rgba(16,24,40,.5)}
.lx-v-cam b{position:absolute;right:12px;top:10px;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle,#FFC15E 0%,rgba(255,193,94,.25) 55%,transparent 75%);opacity:0;transform:scale(.4);transition:opacity .5s,transform .5s}
.lx-chip.on .lx-v-cam b{opacity:1;transform:none}
/* 4 record: mic waveform */
.lx-v-mic::before{content:"";position:absolute;left:12px;top:9px;width:11px;height:18px;border-radius:6px;background:rgba(16,24,40,.5)}
.lx-v-mic::after{content:"";position:absolute;left:15px;top:29px;width:5px;height:7px;background:rgba(16,24,40,.35)}
.lx-v-mic b{position:absolute;bottom:9px;width:3px;background:#4444EF;border-radius:2px;height:3px;transition:height .4s ease}
.lx-v-mic b:nth-child(1){left:38%}.lx-v-mic b:nth-child(2){left:48%;transition-delay:.1s}.lx-v-mic b:nth-child(3){left:58%;transition-delay:.2s}.lx-v-mic b:nth-child(4){left:68%;transition-delay:.3s}.lx-v-mic b:nth-child(5){left:78%;transition-delay:.4s}
.lx-chip.on .lx-v-mic b:nth-child(odd){height:20px}.lx-chip.on .lx-v-mic b:nth-child(even){height:12px}
/* 5 edit: timeline cuts */
.lx-v-edit::before{content:"";position:absolute;left:10px;right:10px;top:20px;height:6px;border-radius:3px;background:rgba(16,24,40,.1)}
.lx-v-edit b{position:absolute;top:20px;height:6px;border-radius:3px;background:#6F6FD1;transform:scaleX(0);transform-origin:left;transition:transform .5s ease}
.lx-v-edit b:nth-child(1){left:10px;width:26%}.lx-v-edit b:nth-child(2){left:calc(10px + 30%);width:20%;background:#22D3EE;transition-delay:.15s}.lx-v-edit b:nth-child(3){left:calc(10px + 54%);width:24%;background:#4444EF;transition-delay:.3s}
.lx-chip.on .lx-v-edit b{transform:none}
/* 6 publish: upload bar */
.lx-v-pub::before{content:"";position:absolute;left:10px;right:10px;top:24px;height:5px;border-radius:3px;background:rgba(16,24,40,.1)}
.lx-v-pub b{position:absolute;left:10px;right:10px;top:24px;height:5px;border-radius:3px;background:linear-gradient(90deg,#0E7490,#22D3EE);transform:scaleX(0);transform-origin:left;transition:transform 1s ease .1s}
.lx-v-pub::after{content:"\2191";position:absolute;left:10px;top:4px;font:700 12px 'IBM Plex Mono',monospace;color:#0E7490}
.lx-chip.on .lx-v-pub b{transform:none}
/* 7 report: graph rises */
.lx-v-graph b{position:absolute;bottom:8px;width:9%;border-radius:2px 2px 0 0;background:linear-gradient(180deg,#FFC15E,rgba(255,193,94,.3));height:4px;transition:height .55s ease}
.lx-v-graph b:nth-child(1){left:12%}.lx-v-graph b:nth-child(2){left:26%;transition-delay:.1s}.lx-v-graph b:nth-child(3){left:40%;transition-delay:.2s}.lx-v-graph b:nth-child(4){left:54%;transition-delay:.3s}.lx-v-graph b:nth-child(5){left:68%;transition-delay:.4s}
.lx-chip.on .lx-v-graph b:nth-child(1){height:8px}.lx-chip.on .lx-v-graph b:nth-child(2){height:13px}.lx-chip.on .lx-v-graph b:nth-child(3){height:18px}.lx-chip.on .lx-v-graph b:nth-child(4){height:24px}.lx-chip.on .lx-v-graph b:nth-child(5){height:30px}
@media (max-width:1180px){.lx-j-chips{grid-template-columns:repeat(4,1fr)}}
@media (max-width:767px),(prefers-reduced-motion:reduce){
  .lx-journey{height:auto}
  .lx-j-stage{position:relative;height:auto;padding:64px 0 54px}
  .lx-j-media video{transform:none!important}
  .lx-j-chips{grid-template-columns:repeat(2,1fr);margin-top:30px}
  .lx-chip{opacity:1;transform:none}
  .lx-chip .lx-v b{transition:none}
  .lx-v-brief b:nth-child(1){width:46%}.lx-v-brief b:nth-child(2){width:38%}.lx-v-brief b:nth-child(3){width:28%}
  .lx-v-script b{transform:none;opacity:1}
  .lx-v-cam b{opacity:1;transform:none}
  .lx-v-mic b:nth-child(odd){height:20px}.lx-v-mic b:nth-child(even){height:12px}
  .lx-v-edit b{transform:none}
  .lx-v-pub b{transform:none}
  .lx-v-graph b:nth-child(1){height:8px}.lx-v-graph b:nth-child(2){height:13px}.lx-v-graph b:nth-child(3){height:18px}.lx-v-graph b:nth-child(4){height:24px}.lx-v-graph b:nth-child(5){height:30px}
}
@media (max-width:520px){.lx-j-chips{grid-template-columns:1fr 1fr;gap:9px}.lx-chip-d{display:none}}
/* /lx:journey */

/* lx:stmt */
.lx-stmt{position:relative;overflow:hidden;min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 24px}
.lx-stmt .lx-word{font:700 clamp(3.4rem,13vw,10.5rem)/1 'Lexend',sans-serif;letter-spacing:0;color:#0C0C30;display:inline-flex;align-items:center;gap:.18em}
.lx-stmt .lx-sub{margin-top:20px;font:600 .95rem 'Montserrat',sans-serif;letter-spacing:.06em;color:#475467;max-width:44ch;position:relative;z-index:2}
.lx-stmt .lx-word{position:relative;z-index:2}
/* SHOOT: focus-snap blur -> sharp + lens flare sweep */
.lx-stmt-shoot{background:radial-gradient(1000px 620px at 50% 20%,#F2EDFA,#FFFFFF 70%)}
.lx-stmt-shoot .lx-word{filter:blur(16px);opacity:.15;transform:scale(1.05);transition:filter .9s ease,opacity .9s ease,transform .9s ease}
.lx-stmt-shoot.lx-in .lx-word{filter:blur(0);opacity:1;transform:none}
.lx-flare{position:absolute;top:-20%;bottom:-20%;left:0;width:34%;z-index:1;background:linear-gradient(90deg,transparent,rgba(255,193,94,.35) 40%,rgba(34,211,238,.28) 52%,rgba(111,111,209,.22) 64%,transparent);transform:translateX(-160%) skewX(-24deg);pointer-events:none}
.lx-stmt-shoot.lx-in .lx-flare{animation:lxflare 1.3s ease .35s forwards}
@keyframes lxflare{to{transform:translateX(420%) skewX(-24deg)}}
/* RECORD: REC blink + waveform pulse behind */
.lx-stmt-record{background:#F3F3FD}
.lx-stmt-record .lx-word i.lx-rec{width:.16em;height:.16em}
.lx-wavebg{position:absolute;left:0;right:0;top:50%;height:180px;margin-top:-90px;z-index:0;display:flex;align-items:center;justify-content:center;gap:10px;opacity:0;transition:opacity .8s}
.lx-stmt-record.lx-in .lx-wavebg{opacity:.5}
.lx-wavebg b{width:5px;border-radius:3px;background:linear-gradient(180deg,#4444EF,#7474F8);height:20%;animation:lxwv 1.5s ease-in-out infinite;animation-play-state:paused}
.lx-stmt-record.lx-in .lx-wavebg b{animation-play-state:running}
.lx-wavebg b:nth-child(2n){animation-delay:.2s}.lx-wavebg b:nth-child(3n){animation-delay:.45s;background:linear-gradient(180deg,#22D3EE,#A5F3FC)}.lx-wavebg b:nth-child(5n){animation-delay:.7s}
@keyframes lxwv{0%,100%{height:16%}50%{height:88%}}
.lx-stmt-record .lx-word{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}
.lx-stmt-record.lx-in .lx-word{opacity:1;transform:none}
/* CUT: slate snap — band splits like a timeline slice */
.lx-stmt-cut{background:#F6F8FB}
.lx-slice{position:absolute;left:0;right:0;height:50.5%;background:#ECEFF5;z-index:1;transition:transform .8s cubic-bezier(.7,.02,.26,.99) .15s;pointer-events:none}
.lx-slice.t{top:0;border-bottom:2px solid rgba(14,116,144,.5)}
.lx-slice.b{bottom:0;border-top:2px solid rgba(18,18,192,.5)}
.lx-stmt-cut.lx-in .lx-slice.t{transform:translateX(-102%)}
.lx-stmt-cut.lx-in .lx-slice.b{transform:translateX(102%)}
.lx-stmt-cut .lx-word{transform:scale(.94);opacity:0;transition:transform .6s .5s,opacity .6s .5s}
.lx-stmt-cut.lx-in .lx-word{transform:none;opacity:1}
/* STREAM: signal bars + drifting chat dots */
.lx-stmt-stream{background:radial-gradient(900px 560px at 50% 85%,#E8F6FA,#FFFFFF 72%)}
.lx-bars{position:absolute;bottom:12%;left:50%;transform:translateX(-50%);display:flex;align-items:flex-end;gap:7px;z-index:1}
.lx-bars b{width:8px;border-radius:3px 3px 0 0;background:#22D3EE;height:6px;transform:scaleY(0);transform-origin:bottom;transition:transform .5s ease}
.lx-bars b:nth-child(1){height:10px}.lx-bars b:nth-child(2){height:18px;transition-delay:.12s}.lx-bars b:nth-child(3){height:27px;transition-delay:.24s}.lx-bars b:nth-child(4){height:37px;transition-delay:.36s}.lx-bars b:nth-child(5){height:48px;transition-delay:.48s}
.lx-stmt-stream.lx-in .lx-bars b{transform:none}
.lx-chatdots{position:absolute;inset:0;z-index:0;pointer-events:none}
.lx-chatdots b{position:absolute;width:10px;height:10px;border-radius:50%;background:rgba(14,116,144,.55);opacity:0}
.lx-stmt-stream.lx-in .lx-chatdots b{animation:lxdrift 6s ease-in-out infinite}
.lx-chatdots b:nth-child(1){left:12%;top:70%}.lx-chatdots b:nth-child(2){left:24%;top:82%;animation-delay:1.1s!important;background:rgba(116,116,248,.7)}.lx-chatdots b:nth-child(3){left:70%;top:76%;animation-delay:2.2s!important}.lx-chatdots b:nth-child(4){left:82%;top:66%;animation-delay:3s!important;background:rgba(255,193,94,.7)}.lx-chatdots b:nth-child(5){left:56%;top:86%;animation-delay:4.1s!important}.lx-chatdots b:nth-child(6){left:38%;top:64%;animation-delay:5s!important;background:rgba(116,116,248,.7)}
@keyframes lxdrift{0%{transform:translateY(0);opacity:0}12%{opacity:.9}70%{opacity:.5}100%{transform:translateY(-140px);opacity:0}}
.lx-stmt-stream .lx-word{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}
.lx-stmt-stream.lx-in .lx-word{opacity:1;transform:none}
/* PUBLISH: upload bar filling + social tiles popping */
.lx-stmt-publish{background:#F6F8FB}
.lx-upbar{position:absolute;left:50%;bottom:16%;transform:translateX(-50%);width:min(420px,70vw);height:6px;border-radius:3px;background:rgba(16,24,40,.1);z-index:1;overflow:hidden}
.lx-upbar b{position:absolute;inset:0;border-radius:3px;background:linear-gradient(90deg,#0E7490,#22D3EE);transform:scaleX(0);transform-origin:left;transition:transform 1.6s ease .2s}
.lx-stmt-publish.lx-in .lx-upbar b{transform:none}
.lx-tiles{position:absolute;top:14%;left:0;right:0;display:flex;justify-content:center;gap:14px;z-index:1}
.lx-tiles b{width:34px;height:56px;border-radius:8px;border:1.5px solid rgba(16,24,40,.2);background:linear-gradient(160deg,rgba(111,111,209,.35),rgba(34,211,238,.2));transform:scale(0);transition:transform .5s cubic-bezier(.34,1.56,.64,1)}
.lx-tiles b:nth-child(2){transition-delay:.5s;background:linear-gradient(160deg,rgba(68,68,239,.35),rgba(255,193,94,.2))}
.lx-tiles b:nth-child(3){transition-delay:.9s}
.lx-tiles b:nth-child(4){transition-delay:1.3s;background:linear-gradient(160deg,rgba(255,193,94,.32),rgba(68,68,239,.18))}
.lx-stmt-publish.lx-in .lx-tiles b{transform:none}
.lx-stmt-publish .lx-word{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}
.lx-stmt-publish.lx-in .lx-word{opacity:1;transform:none}
/* GROW: rising analytics line + audience dots */
.lx-stmt-grow{background:radial-gradient(1000px 620px at 50% 90%,#EDF7EC,#FFFFFF 74%)}
.lx-growline{position:absolute;left:8%;bottom:20%;width:84%;height:3px;border-radius:2px;background:linear-gradient(90deg,#FFC15E,#22D3EE);transform-origin:left bottom;transform:rotate(-9deg) scaleX(0);z-index:1;box-shadow:0 0 16px rgba(255,193,94,.5);transition:transform 1.4s ease .15s}
.lx-stmt-grow.lx-in .lx-growline{transform:rotate(-9deg) scaleX(1)}
.lx-auds{position:absolute;inset:auto 0 10% 0;height:34%;z-index:0;pointer-events:none}
.lx-auds b{position:absolute;width:8px;height:8px;border-radius:50%;background:rgba(16,24,40,.4);opacity:0;transform:scale(0);transition:opacity .4s,transform .4s cubic-bezier(.34,1.56,.64,1)}
.lx-auds b:nth-child(1){left:16%;bottom:24%}.lx-auds b:nth-child(2){left:30%;bottom:40%;transition-delay:.25s;background:rgba(14,116,144,.7)}.lx-auds b:nth-child(3){left:46%;bottom:52%;transition-delay:.5s}.lx-auds b:nth-child(4){left:62%;bottom:66%;transition-delay:.75s;background:rgba(68,68,239,.7)}.lx-auds b:nth-child(5){left:76%;bottom:78%;transition-delay:1s}.lx-auds b:nth-child(6){left:88%;bottom:90%;transition-delay:1.25s;background:rgba(255,164,36,.85)}
.lx-stmt-grow.lx-in .lx-auds b{opacity:1;transform:none}
.lx-stmt-grow .lx-word{opacity:0;transform:translateY(22px);transition:opacity .7s,transform .7s}
.lx-stmt-grow.lx-in .lx-word{opacity:1;transform:none}
@media (max-width:767px){.lx-stmt{min-height:72vh}}
@media (prefers-reduced-motion:reduce){
  .lx-stmt .lx-word,.lx-stmt .lx-sub{opacity:1!important;transform:none!important;filter:none!important;transition:none!important}
  .lx-flare,.lx-chatdots b,.lx-wavebg b{animation:none!important}
  .lx-wavebg{opacity:.3;transition:none}
  .lx-wavebg b{height:40%}
  .lx-slice{display:none}
  .lx-bars b,.lx-upbar b,.lx-tiles b,.lx-growline,.lx-auds b{transform:none!important;opacity:1;transition:none!important}
}
/* /lx:stmt */

/* lx:services */
.lx-h2{font:600 clamp(1.9rem,4.4vw,3.1rem)/1.12 'Lexend',sans-serif;color:#0C0C30;margin:14px 0 0}
.lx-lead{margin:14px 0 0;color:#475467;font-size:1.05rem;line-height:1.7;max-width:58ch}
.lx-services{position:relative;overflow:hidden;background:#FFFFFF;padding:110px 24px 96px}
.lx-services::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(900px 540px at 84% -10%,rgba(111,111,209,.1),transparent 70%),radial-gradient(760px 480px at 6% 108%,rgba(34,211,238,.07),transparent 70%)}
.lx-sv-in{position:relative;max-width:var(--max);margin:0 auto}
.lx-sv-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:48px;perspective:1300px}
.lx-sv{position:relative;display:flex;flex-direction:column;border:1px solid #E4E7EC;border-radius:18px;background:#FFFFFF;padding:16px 16px 18px;overflow:hidden;text-decoration:none;transform-style:preserve-3d;transition:transform .3s ease,border-color .3s,box-shadow .3s;will-change:transform;box-shadow:0 8px 24px rgba(16,24,40,.08)}
.lx-sv:hover,.lx-sv:focus{border-color:rgba(14,116,144,.5);box-shadow:0 24px 54px rgba(16,24,40,.14),0 0 26px rgba(34,211,238,.12)}
.lx-sv-n{font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.24em;color:var(--ac,#0E7490);margin-top:13px}
.lx-sv h3{font:600 1.04rem 'Lexend',sans-serif;line-height:1.3;color:#0C0C30;margin:7px 0 0}
.lx-sv p{margin:8px 0 0;font-size:.85rem;line-height:1.6;color:#475467}
.lx-sv-tag{position:absolute;top:13px;right:13px;font:700 .6rem 'IBM Plex Mono',monospace;letter-spacing:.18em;text-transform:uppercase;color:#fff;background:var(--ac,#0E7490);border-radius:999px;padding:5px 11px;opacity:0;transform:translateX(18px);transition:opacity .3s,transform .3s;pointer-events:none}
.lx-sv:hover .lx-sv-tag,.lx-sv:focus .lx-sv-tag{opacity:1;transform:none}
.lx-pv{position:relative;display:block;height:96px;border-radius:12px;background:#F6F8FB;border:1px solid #EEF1F5;overflow:hidden;transition:filter .35s,transform .35s;transform:translateZ(0)}
.lx-sv:hover .lx-pv,.lx-sv:focus .lx-pv{filter:saturate(1.15);transform:translateZ(30px) scale(1.03)}
/* OM/01 video: lens focus + clapper snap */
.lx-pv-video .pv-lens{position:absolute;left:50%;top:50%;width:46px;height:46px;margin:-23px 0 0 -23px;border-radius:50%;border:2px solid rgba(14,116,144,.9);box-shadow:inset 0 0 0 7px rgba(255,255,255,.85),inset 0 0 0 9px rgba(68,68,239,.55),0 0 14px rgba(34,211,238,.3);background:radial-gradient(circle,rgba(34,211,238,.6) 0 6px,rgba(12,12,48,.72) 7px);animation:lxpvfocus 3.4s ease-in-out infinite}
@keyframes lxpvfocus{0%,100%{filter:blur(2.6px)}42%,62%{filter:blur(0)}}
.lx-pv-video .pv-slate{position:absolute;left:12px;top:21px;width:28px;height:13px;border-radius:2px;background:rgba(16,24,40,.25)}
.lx-pv-video .pv-stick{position:absolute;left:12px;top:12px;width:28px;height:8px;border-radius:2px;background:repeating-linear-gradient(115deg,#E9EDF5 0 5px,#08081F 5px 10px);transform-origin:left bottom;animation:lxpvclap 3.4s ease-in-out infinite}
@keyframes lxpvclap{0%,18%{transform:rotate(-24deg)}28%,100%{transform:rotate(0)}}
/* OM/02 podcast: waveform + mic glow */
.lx-pv-pod .pv-glow{position:absolute;left:50%;top:50%;width:60px;height:60px;margin:-30px 0 0 -30px;border-radius:50%;background:radial-gradient(circle,rgba(34,211,238,.5),transparent 70%);animation:lxpvglow 2.6s ease-in-out infinite}
@keyframes lxpvglow{0%,100%{opacity:.35;transform:scale(.85)}50%{opacity:.9;transform:scale(1.1)}}
.lx-pv-pod .pv-mic{position:absolute;left:50%;top:24px;width:14px;height:24px;margin-left:-7px;border-radius:7px;background:linear-gradient(180deg,#8A93A8,#4A5568)}
.lx-pv-pod .pv-mic::after{content:"";position:absolute;left:5px;top:26px;width:4px;height:9px;background:rgba(74,85,104,.6)}
.lx-pv-pod b{position:absolute;bottom:16px;width:4px;border-radius:2px;background:linear-gradient(180deg,#22D3EE,#0E7490);height:8px;animation:lxpvwave 1.6s ease-in-out infinite}
.lx-pv-pod b:nth-of-type(1){left:22%}.lx-pv-pod b:nth-of-type(2){left:29%;animation-delay:.15s}.lx-pv-pod b:nth-of-type(3){left:36%;animation-delay:.3s}.lx-pv-pod b:nth-of-type(4){right:36%;animation-delay:.1s}.lx-pv-pod b:nth-of-type(5){right:29%;animation-delay:.25s}.lx-pv-pod b:nth-of-type(6){right:22%;animation-delay:.4s}
@keyframes lxpvwave{0%,100%{height:8px}50%{height:26px}}
/* OM/03 photography: flash + contact sheet */
.lx-pv-photo b{position:absolute;width:24%;height:34%;border-radius:4px;border:1px solid rgba(16,24,40,.15);background:linear-gradient(150deg,rgba(255,193,94,.5),rgba(111,111,209,.4))}
.lx-pv-photo b:nth-of-type(1){left:8%;top:12%}
.lx-pv-photo b:nth-of-type(2){left:38%;top:12%;background:linear-gradient(150deg,rgba(34,211,238,.45),rgba(68,68,239,.35))}
.lx-pv-photo b:nth-of-type(3){left:68%;top:12%}
.lx-pv-photo b:nth-of-type(4){left:8%;top:54%;background:linear-gradient(150deg,rgba(34,211,238,.45),rgba(68,68,239,.35))}
.lx-pv-photo b:nth-of-type(5){left:38%;top:54%}
.lx-pv-photo b:nth-of-type(6){left:68%;top:54%;background:linear-gradient(150deg,rgba(116,116,248,.45),rgba(255,193,94,.35))}
.lx-pv-photo .pv-flash{position:absolute;inset:0;background:radial-gradient(circle at 50% 40%,rgba(255,255,255,.95),rgba(255,255,255,.15) 55%,transparent 75%);opacity:0;animation:lxpvflash 4.2s linear infinite}
@keyframes lxpvflash{0%,86%,100%{opacity:0}88%{opacity:.9}91%{opacity:.12}94%{opacity:.45}96%{opacity:0}}
/* OM/04 livestream: live monitor + chat dots */
.lx-pv-live .pv-mon{position:absolute;left:14px;top:16px;width:56px;height:38px;border:2px solid rgba(16,24,40,.45);border-radius:6px;background:linear-gradient(160deg,rgba(111,111,209,.35),rgba(34,211,238,.16))}
.lx-pv-live .pv-mon::after{content:"";position:absolute;left:20px;bottom:-9px;width:12px;height:3px;background:rgba(16,24,40,.35)}
.lx-pv-live .pv-onair{position:absolute;left:22px;top:22px;width:8px;height:8px;border-radius:50%;background:#4444EF;box-shadow:0 0 9px rgba(68,68,239,.9);animation:lxblink 1.15s steps(1) infinite}
.lx-pv-live b{position:absolute;bottom:14px;width:7px;height:7px;border-radius:50%;background:rgba(14,116,144,.8);opacity:0;animation:lxpvchat 3s ease-in-out infinite}
.lx-pv-live b:nth-of-type(1){right:22%}
.lx-pv-live b:nth-of-type(2){right:14%;animation-delay:1s;background:rgba(116,116,248,.85)}
.lx-pv-live b:nth-of-type(3){right:30%;animation-delay:2s;background:rgba(255,193,94,.85)}
@keyframes lxpvchat{0%{transform:translateY(0);opacity:0}15%{opacity:1}80%{opacity:.4}100%{transform:translateY(-52px);opacity:0}}
/* OM/05 social: vertical reels stack */
.lx-pv-social b{position:absolute;top:50%;width:26px;height:46px;margin-top:-23px;border-radius:6px;border:1.5px solid rgba(16,24,40,.25);background:linear-gradient(170deg,rgba(116,116,248,.4),rgba(111,111,209,.3));animation:lxpvbob 2.8s ease-in-out infinite}
.lx-pv-social b:nth-of-type(1){left:20%}
.lx-pv-social b:nth-of-type(2){left:50%;margin-left:-13px;animation-delay:.4s;background:linear-gradient(170deg,rgba(34,211,238,.4),rgba(116,116,248,.28))}
.lx-pv-social b:nth-of-type(3){right:20%;animation-delay:.8s;background:linear-gradient(170deg,rgba(255,193,94,.4),rgba(34,211,238,.25))}
@keyframes lxpvbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
/* OM/06 audio: EQ bars */
.lx-pv-eq b{position:absolute;bottom:22px;width:6px;border-radius:3px;background:linear-gradient(180deg,#A5F3FC,#22D3EE 60%,#0E7490);height:9px;animation:lxpveq 1.3s ease-in-out infinite}
.lx-pv-eq b:nth-of-type(1){left:20%}.lx-pv-eq b:nth-of-type(2){left:29%;animation-delay:.12s}.lx-pv-eq b:nth-of-type(3){left:38%;animation-delay:.24s}.lx-pv-eq b:nth-of-type(4){left:47%;animation-delay:.36s}.lx-pv-eq b:nth-of-type(5){left:56%;animation-delay:.48s}.lx-pv-eq b:nth-of-type(6){left:65%;animation-delay:.6s}.lx-pv-eq b:nth-of-type(7){left:74%;animation-delay:.72s}
@keyframes lxpveq{0%,100%{height:9px}50%{height:42px}}
/* OM/07 motion: kinetic type */
.lx-pv-motion b{position:absolute;left:0;right:0;top:50%;margin-top:-.6em;text-align:center;font:700 1rem 'Lexend',sans-serif;letter-spacing:.42em;text-indent:.42em;color:#0C0C30;opacity:0;animation:lxpvkin 4.2s ease-in-out infinite}
.lx-pv-motion b:nth-of-type(2){animation-delay:1.4s;color:#0E7490}
.lx-pv-motion b:nth-of-type(3){animation-delay:2.8s;color:#1212C0}
@keyframes lxpvkin{0%{opacity:0;transform:translateY(12px) skewX(-10deg)}5%,24%{opacity:1;transform:none}31%,100%{opacity:0;transform:translateY(-12px) skewX(6deg)}}
/* OM/08 channel: dashboard + calendar */
.lx-pv-dash b{position:absolute;bottom:18px;width:9px;border-radius:2px 2px 0 0;background:linear-gradient(180deg,#6F6FD1,rgba(111,111,209,.25));height:10px;animation:lxpvbar 2.4s ease-in-out infinite}
.lx-pv-dash b:nth-of-type(1){left:16%}
.lx-pv-dash b:nth-of-type(2){left:27%;animation-delay:.25s;background:linear-gradient(180deg,#22D3EE,rgba(34,211,238,.25))}
.lx-pv-dash b:nth-of-type(3){left:38%;animation-delay:.5s;background:linear-gradient(180deg,#FFC15E,rgba(255,193,94,.25))}
@keyframes lxpvbar{0%,100%{height:10px}50%{height:34px}}
.lx-pv-dash .pv-cal{position:absolute;right:14%;top:50%;width:40px;height:34px;margin-top:-17px;border:1.5px solid rgba(16,24,40,.4);border-radius:5px;background:repeating-linear-gradient(90deg,transparent 0 12px,rgba(16,24,40,.15) 12px 13px),repeating-linear-gradient(180deg,transparent 0 10px,rgba(16,24,40,.15) 10px 11px)}
.lx-pv-dash .pv-cal::after{content:"";position:absolute;left:15px;top:12px;width:9px;height:7px;background:#4444EF;border-radius:2px;animation:lxblink 1.6s steps(1) infinite}
@media (max-width:1080px){.lx-sv-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:767px){
  .lx-services{padding:76px 18px 64px}
  .lx-sv-grid{grid-template-columns:1fr 1fr;gap:12px;perspective:none}
  .lx-pv{height:78px}
  .lx-sv h3{font-size:.94rem}
  .lx-sv p{font-size:.78rem}
  .lx-sv-tag{display:none}
}
@media (max-width:520px){.lx-sv-grid{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){
  .lx-sv,.lx-pv,.lx-sv-tag{transition:none}
  .lx-pv{filter:none}
  .lx-sv:hover .lx-pv,.lx-sv:focus .lx-pv{transform:none}
  .lx-pv-video .pv-lens,.lx-pv-video .pv-stick,.lx-pv-pod .pv-glow,.lx-pv-pod b,.lx-pv-photo .pv-flash,.lx-pv-live .pv-onair,.lx-pv-live b,.lx-pv-social b,.lx-pv-eq b,.lx-pv-motion b,.lx-pv-dash b,.lx-pv-dash .pv-cal::after{animation:none}
  .lx-pv-video .pv-lens{filter:none}
  .lx-pv-pod b{height:18px}
  .lx-pv-eq b{height:24px}
  .lx-pv-live b{opacity:.85;transform:translateY(-18px)}
  .lx-pv-social b{transform:none}
  .lx-pv-motion b{opacity:0}
  .lx-pv-motion b:nth-of-type(1){opacity:1;transform:none}
  .lx-pv-dash b{height:24px}
  .lx-sv-tag{opacity:1;transform:none}
}
/* /lx:services */

/* lx:reel */
.lx-reel{position:relative;overflow:hidden;background:#F6F8FB;padding:110px 24px 100px}
.lx-reel::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(820px 500px at 12% -8%,rgba(68,68,239,.07),transparent 70%),radial-gradient(700px 460px at 92% 110%,rgba(34,211,238,.07),transparent 70%)}
.lx-reel-in{position:relative;max-width:var(--max);margin:0 auto}
.lx-reel-panel{position:relative;margin-top:46px;border-radius:22px;overflow:hidden;cursor:pointer;border:1px solid #E4E7EC;background:#0B0616;box-shadow:0 30px 70px rgba(16,24,40,.22)}
.lx-reel-panel:focus{outline:2px solid rgba(34,211,238,.7);outline-offset:3px}
.lx-reel-panel img{display:block;width:100%;aspect-ratio:16/7;object-fit:cover;filter:saturate(1.05) brightness(.92);transform:scale(1.015);transition:transform .7s ease,filter .7s}
.lx-reel-panel:hover img,.lx-reel-panel:focus img{transform:scale(1.055);filter:saturate(1.15) brightness(1)}
.lx-reel-scrim{position:absolute;inset:0;background:radial-gradient(70% 90% at 50% 50%,rgba(9,4,20,0),rgba(9,4,20,.6));pointer-events:none}
.lx-reel-play{position:absolute;left:50%;top:50%;width:110px;height:110px;margin:-55px 0 0 -55px;display:grid;place-items:center;pointer-events:none}
.lx-reel-play::before{content:"";position:absolute;inset:12px;border-radius:50%;background:rgba(11,6,22,.55);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(6px)}
.lx-reel-ring{position:absolute;inset:0;width:100%;height:100%;animation:lxreelring 10s linear infinite}
.lx-reel-ring circle{fill:none;stroke:rgba(255,255,255,.85);stroke-width:1.6;stroke-dasharray:7 6}
@keyframes lxreelring{to{transform:rotate(360deg)}}
.lx-reel-panel:hover .lx-reel-ring{animation-duration:3.5s}
.lx-reel-tri{position:relative;width:0;height:0;border-style:solid;border-width:13px 0 13px 22px;border-color:transparent transparent transparent #fff;margin-left:7px;filter:drop-shadow(0 0 12px rgba(34,211,238,.75))}
.lx-reel-tc{position:absolute;left:20px;bottom:16px;display:inline-flex;align-items:center;gap:9px;font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.22em;color:#A6A6FB}
.lx-reel-modal{position:fixed;inset:0;z-index:2400;display:flex;align-items:center;justify-content:center;padding:4vh 4vw;background:rgba(7,3,16,.88);backdrop-filter:blur(16px) saturate(.9);opacity:0;transition:opacity .35s}
.lx-reel-modal.open{opacity:1}
.lx-reel-stage{position:relative;width:min(1180px,100%)}
.lx-reel-x{position:absolute;right:0;top:-54px;width:44px;height:44px;border-radius:50%;border:1.5px solid rgba(255,255,255,.45);background:rgba(11,6,22,.6);color:#fff;font-size:1.15rem;line-height:1;cursor:pointer;transition:border-color .25s,transform .25s;z-index:5}
.lx-reel-x:hover{border-color:#4444EF;transform:rotate(90deg)}
.lx-reel-frame{position:relative;border-radius:16px;overflow:hidden;background:#000;border:1px solid rgba(255,255,255,.12);box-shadow:0 34px 90px rgba(0,0,0,.7)}
.lx-reel-frame video{display:block;width:100%;aspect-ratio:16/9;background:#000}
.lx-reel-cap{position:absolute;left:0;right:0;bottom:20px;text-align:center;pointer-events:none}
.lx-reel-cap span{display:inline-block;max-width:80%;background:rgba(7,3,16,.75);border:1px solid rgba(255,255,255,.14);color:#fff;font:600 .92rem 'Lexend',sans-serif;letter-spacing:.05em;padding:8px 18px;border-radius:9px}
.lx-reel-ui{margin-top:16px}
.lx-reel-bar{position:relative;height:26px;cursor:pointer}
.lx-reel-bar::before{content:"";position:absolute;left:0;right:0;top:12px;height:3px;border-radius:2px;background:rgba(255,255,255,.22)}
.lx-reel-fill{position:absolute;left:0;top:12px;height:3px;width:0;border-radius:2px;background:linear-gradient(90deg,#22D3EE,#4444EF);box-shadow:0 0 10px rgba(34,211,238,.5);pointer-events:none}
.lx-reel-mk{position:absolute;top:6px;width:15px;height:15px;margin-left:-7px;padding:0;border-radius:50%;border:1.5px solid rgba(255,255,255,.65);background:rgba(11,6,22,.9);cursor:pointer;transition:background .25s,border-color .25s,box-shadow .25s}
.lx-reel-mk:hover{border-color:#7474F8}
.lx-reel-mk.on{background:#22D3EE;border-color:#22D3EE;box-shadow:0 0 10px rgba(34,211,238,.8)}
.lx-reel-mk::after{content:attr(data-lx-name);position:absolute;bottom:24px;left:50%;transform:translateX(-50%);white-space:nowrap;font:700 .58rem 'IBM Plex Mono',monospace;letter-spacing:.14em;color:#A5F3FC;background:rgba(7,3,16,.9);border:1px solid rgba(34,211,238,.3);border-radius:6px;padding:4px 8px;opacity:0;transition:opacity .2s;pointer-events:none}
.lx-reel-mk:hover::after,.lx-reel-mk:focus::after{opacity:1}
.lx-reel-mk[data-lx-ch="0"]::after{left:0;transform:none}
.lx-reel-mk[data-lx-ch="7"]::after{left:auto;right:0;transform:none}
.lx-reel-ctl{display:flex;align-items:center;gap:10px;margin-top:8px;flex-wrap:wrap}
.lx-reel-cbtn{min-width:44px;height:40px;padding:0 14px;border-radius:999px;border:1.5px solid rgba(255,255,255,.4);background:rgba(11,6,22,.6);color:#fff;font:700 .78rem 'IBM Plex Mono',monospace;letter-spacing:.12em;cursor:pointer;transition:border-color .25s,color .25s,box-shadow .25s}
.lx-reel-cbtn:hover{border-color:#22D3EE;color:#A5F3FC;box-shadow:0 0 14px rgba(34,211,238,.3)}
.lx-reel-cbtn[aria-pressed="true"]{border-color:#4444EF;color:#A6A6FB}
.lx-reel-now{margin-left:auto;display:inline-flex;align-items:center;gap:9px;font:700 .7rem 'IBM Plex Mono',monospace;letter-spacing:.2em;color:#A5F3FC;text-transform:uppercase}
@media (max-width:767px){
  .lx-reel{padding:76px 18px 66px}
  .lx-reel-panel img{aspect-ratio:16/10}
  .lx-reel-play{width:84px;height:84px;margin:-42px 0 0 -42px}
  .lx-reel-modal{padding:2vh 3vw}
  .lx-reel-x{top:8px;right:8px}
  .lx-reel-mk::after{display:none}
  .lx-reel-now{display:none}
}
@media (prefers-reduced-motion:reduce){
  .lx-reel-ring{animation:none!important}
  .lx-reel-modal,.lx-reel-panel img,.lx-reel-x,.lx-reel-mk,.lx-reel-cbtn{transition:none}
  .lx-reel-panel:hover img,.lx-reel-panel:focus img{transform:none}
}
/* /lx:reel */

/* lx:cases */
.lx-cases{position:relative;overflow:hidden;background:#FFFFFF;padding:110px 0 100px}
.lx-cases::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(860px 520px at 90% -6%,rgba(34,211,238,.06),transparent 70%),radial-gradient(720px 480px at 4% 112%,rgba(68,68,239,.06),transparent 70%)}
.lx-cw-head{position:relative;max-width:var(--max);margin:0 auto;padding:0 24px}
.lx-cw-filters{position:relative;max-width:var(--max);margin:30px auto 0;padding:0 24px;display:flex;flex-wrap:wrap;gap:10px}
.lx-cw-chip{font:700 .74rem 'IBM Plex Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#475467;background:#FFFFFF;border:1px solid #D5DAE3;border-radius:999px;padding:10px 17px;cursor:pointer;transition:color .25s,background .25s,border-color .25s,box-shadow .25s}
.lx-cw-chip:hover{color:#0C0C30;border-color:rgba(14,116,144,.6)}
.lx-cw-chip.on{color:#0B0616;background:linear-gradient(110deg,#22D3EE,#A5F3FC);border-color:transparent;box-shadow:0 8px 22px rgba(34,211,238,.3)}
.lx-cw-wall{position:relative;margin-top:36px;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;cursor:grab;padding-bottom:22px;scrollbar-width:thin;scrollbar-color:rgba(14,116,144,.5) rgba(16,24,40,.06)}
.lx-cw-wall.lx-drag{cursor:grabbing;scroll-snap-type:none;-webkit-user-select:none;user-select:none}
.lx-cw-track{display:flex;gap:20px;width:max-content;padding:6px 24px 0}
@supports (padding:max(0px)){.lx-cw-track{padding-left:max(24px,calc((100vw - var(--max))/2 + 24px));padding-right:max(24px,calc((100vw - var(--max))/2 + 24px))}}
.lx-case{position:relative;flex:0 0 auto;width:min(430px,80vw);scroll-snap-align:start;border:1px solid #E4E7EC;border-radius:18px;overflow:hidden;background:#FFFFFF;box-shadow:0 8px 24px rgba(16,24,40,.08);transition:border-color .35s,box-shadow .35s,transform .35s}
.lx-case:hover,.lx-case:focus{border-color:rgba(14,116,144,.5);box-shadow:0 26px 60px rgba(16,24,40,.16),0 0 24px rgba(34,211,238,.1);transform:translateY(-6px)}
.lx-case:focus{outline:2px solid rgba(14,116,144,.6);outline-offset:2px}
.lx-case-media{position:relative;aspect-ratio:16/9;overflow:hidden;background:#08081F}
.lx-case-media img{width:100%;height:100%;object-fit:cover;filter:brightness(.92) saturate(1);transform:scale(1.015);transition:filter .5s,transform .5s}
.lx-case:hover .lx-case-media img,.lx-case:focus .lx-case-media img{filter:brightness(1.07) saturate(1.12);transform:scale(1.07)}
.lx-case-ripple{position:absolute;left:50%;top:50%;width:26px;height:26px;margin:-13px 0 0 -13px;border-radius:50%;border:1.5px solid rgba(165,243,252,.85);opacity:0;pointer-events:none}
.lx-case:hover .lx-case-ripple,.lx-case:focus .lx-case-ripple{animation:lxcwrip 1.4s ease-out infinite}
@keyframes lxcwrip{0%{opacity:.8;transform:scale(1)}100%{opacity:0;transform:scale(10)}}
.lx-case-tag{position:absolute;left:13px;top:13px;font:700 .6rem 'IBM Plex Mono',monospace;letter-spacing:.2em;text-transform:uppercase;color:#A5F3FC;background:rgba(7,3,16,.72);border:1px solid rgba(34,211,238,.45);border-radius:999px;padding:5px 11px}
.lx-case-body{padding:16px 18px 20px}
.lx-case-body h3{font:600 1.06rem 'Lexend',sans-serif;color:#0C0C30;margin:0}
.lx-case-meta{margin:13px 0 0;display:grid;gap:7px}
.lx-case-meta>div{display:flex;gap:12px;font-size:.8rem;line-height:1.55;opacity:0;transform:translateY(12px);transition:opacity .4s ease,transform .4s ease}
.lx-case-meta>div:nth-child(2){transition-delay:.06s}
.lx-case-meta>div:nth-child(3){transition-delay:.12s}
.lx-case-meta>div:nth-child(4){transition-delay:.18s}
.lx-case-meta>div:nth-child(5){transition-delay:.24s}
.lx-case:hover .lx-case-meta>div,.lx-case:focus .lx-case-meta>div,.lx-case:focus-within .lx-case-meta>div{opacity:1;transform:none}
.lx-case-meta dt{flex:0 0 96px;font:700 .6rem 'IBM Plex Mono',monospace;letter-spacing:.18em;text-transform:uppercase;color:#0E7490;padding-top:3px}
.lx-case-meta dd{margin:0;color:#475467}
.lx-case-wip{border-style:dashed;border-color:rgba(16,24,40,.25)}
.lx-wip-media{display:grid;place-items:center;background:repeating-linear-gradient(135deg,rgba(16,24,40,.04) 0 14px,transparent 14px 28px),#F6F8FB}
.lx-wip-badge{display:inline-flex;align-items:center;gap:10px;font:700 .72rem 'IBM Plex Mono',monospace;letter-spacing:.26em;color:#1212C0;border:1px solid rgba(18,18,192,.4);background:#F1F1FF;border-radius:999px;padding:10px 18px}
.lx-wip-line{margin:10px 0 0;font-size:.82rem;line-height:1.6;color:#475467}
@media (hover:none){
  .lx-case-meta>div{opacity:1;transform:none}
  .lx-case-media img{filter:brightness(.95)}
}
@media (max-width:767px){
  .lx-cases{padding:76px 0 64px}
  .lx-cw-head,.lx-cw-filters{padding:0 18px}
  .lx-cw-track{padding:6px 18px 0}
  .lx-case{width:min(340px,84vw)}
  .lx-cw-wall{cursor:auto}
}
@media (prefers-reduced-motion:reduce){
  .lx-case,.lx-case-media img,.lx-case-meta>div,.lx-cw-chip{transition:none}
  .lx-case-meta>div{opacity:1;transform:none}
  .lx-case:hover .lx-case-ripple,.lx-case:focus .lx-case-ripple{animation:none}
  .lx-case:hover .lx-case-media img,.lx-case:focus .lx-case-media img{transform:none}
  .lx-case:hover,.lx-case:focus{transform:none}
}
/* /lx:cases */

/* lx:why */
.lx-why{position:relative;overflow:hidden;background:linear-gradient(175deg,#FFFFFF,#F4F1FA 55%,#FFFFFF);padding:110px 0 100px}
.lx-why::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(760px 480px at 6% 0%,rgba(111,111,209,.1),transparent 70%),radial-gradient(700px 460px at 96% 100%,rgba(34,211,238,.06),transparent 70%)}
.lx-why-in{position:relative;max-width:var(--max);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center}
.lx-why-proof{list-style:none;margin:28px 0 0;padding:0;display:grid;gap:14px}
.lx-why-proof li{display:flex;align-items:center;gap:14px;font:600 1rem 'Lexend',sans-serif;color:#0C0C30}
.lx-wp-ic{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font:700 .72rem 'IBM Plex Mono',monospace;font-style:normal;color:#0E7490;background:rgba(14,116,144,.07);border:1px solid rgba(14,116,144,.35);box-shadow:0 0 18px rgba(34,211,238,.12)}
.lx-why .lx-btn{margin-top:30px}
.lx-why-pipe{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.lx-wstage{position:relative;border:1px solid #E4E7EC;border-radius:14px;background:#FFFFFF;box-shadow:0 8px 24px rgba(16,24,40,.08);padding:14px 10px 12px;text-align:center;transition:border-color .35s}
.lx-wstage:hover{border-color:rgba(14,116,144,.45)}
.lx-wstage::after{content:"\2192";position:absolute;right:-13px;top:34%;color:rgba(14,116,144,.65);font-size:.82rem}
.lx-wstage:last-child::after{content:none}
.lx-why.lx-go .lx-wstage{animation:lxwsin .55s ease both}
.lx-why.lx-go .lx-wstage:nth-child(2){animation-delay:.3s}
.lx-why.lx-go .lx-wstage:nth-child(3){animation-delay:.6s}
.lx-why.lx-go .lx-wstage:nth-child(4){animation-delay:.9s}
.lx-why.lx-go .lx-wstage:nth-child(5){animation-delay:1.2s}
@keyframes lxwsin{from{opacity:0;transform:translateY(22px)}}
.lx-ws-viz{position:relative;display:flex;align-items:center;justify-content:center;gap:4px;height:52px;margin-bottom:9px}
.lx-ws-name{display:block;font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.18em;text-transform:uppercase;color:#0C0C30}
.lx-ws-sub{display:block;margin-top:3px;font:500 .62rem 'Lexend',sans-serif;color:#5A6472}
.lx-ws-doc{position:relative;width:30px;height:38px;border-radius:4px;background:rgba(16,24,40,.04);border:1px solid rgba(16,24,40,.3);display:flex;flex-direction:column;gap:4px;padding:7px 5px 0}
.lx-why.lx-go .lx-ws-doc{animation:lxwsdoc .6s ease .25s both}
@keyframes lxwsdoc{from{opacity:0;transform:translateY(10px) rotate(-6deg)}}
.lx-ws-doc u{display:block;height:2px;background:rgba(14,116,144,.75);border-radius:2px;text-decoration:none}
.lx-ws-doc u:nth-child(2){width:70%}
.lx-ws-doc u:nth-child(3){width:85%}
.lx-ws-lens{width:30px;height:30px;border-radius:50%;border:2px solid rgba(16,24,40,.35);background:radial-gradient(circle at 36% 32%,rgba(34,211,238,.55),rgba(12,12,48,.85) 62%);box-shadow:0 0 14px rgba(34,211,238,.22)}
.lx-ws-recdot{width:8px;height:8px;border-radius:50%;background:#4444EF;box-shadow:0 0 10px rgba(68,68,239,.9)}
.lx-why.lx-go .lx-wstage-shoot .lx-ws-recdot{animation:lxblink 1.15s steps(1) infinite .55s}
.lx-ws-rectx{font:700 .56rem 'IBM Plex Mono',monospace;font-style:normal;color:#1212C0;letter-spacing:.14em}
.lx-wstage-edit .lx-ws-viz{flex-direction:column;align-items:center;justify-content:center;gap:6px}
.lx-ws-tl{width:34px;height:7px;border-radius:3px;background:rgba(16,24,40,.08);overflow:hidden}
.lx-ws-tl u{display:block;height:100%;width:100%;border-radius:3px;background:linear-gradient(90deg,#6F6FD1,#22D3EE);text-decoration:none}
.lx-why.lx-go .lx-ws-tl u{animation:lxwsfill 1s ease .85s both}
.lx-why.lx-go .lx-ws-tl:nth-child(2) u{animation-delay:1.05s}
.lx-why.lx-go .lx-ws-tl:nth-child(3) u{animation-delay:1.25s}
@keyframes lxwsfill{from{width:0}}
.lx-ws-up{width:40px;height:7px;border-radius:3px;background:rgba(16,24,40,.08);overflow:hidden}
.lx-ws-up u{display:block;height:100%;width:100%;border-radius:3px;background:linear-gradient(90deg,#4444EF,#7474F8);text-decoration:none}
.lx-why.lx-go .lx-ws-up u{animation:lxwsfill .9s ease 1.15s both}
.lx-ws-tick{font-style:normal;font-size:.8rem;color:#047857}
.lx-why.lx-go .lx-ws-tick{animation:lxwstick .4s ease 2.05s both}
@keyframes lxwstick{from{opacity:0}}
.lx-wstage-rep .lx-ws-viz{align-items:flex-end;gap:5px}
.lx-ws-bar{width:7px;border-radius:2px 2px 0 0;background:linear-gradient(180deg,#22D3EE,rgba(34,211,238,.25));transform-origin:bottom}
.lx-ws-bar:nth-child(1){height:14px}
.lx-ws-bar:nth-child(2){height:22px}
.lx-ws-bar:nth-child(3){height:30px}
.lx-ws-bar:nth-child(4){height:40px}
.lx-why.lx-go .lx-ws-bar{animation:lxwsrise .7s ease both}
.lx-why.lx-go .lx-ws-bar:nth-child(1){animation-delay:1.45s}
.lx-why.lx-go .lx-ws-bar:nth-child(2){animation-delay:1.55s}
.lx-why.lx-go .lx-ws-bar:nth-child(3){animation-delay:1.65s}
.lx-why.lx-go .lx-ws-bar:nth-child(4){animation-delay:1.75s}
@keyframes lxwsrise{from{transform:scaleY(0)}}
@media (max-width:1023px){.lx-why-in{grid-template-columns:1fr;gap:40px}}
@media (max-width:767px){.lx-why{padding:76px 0 64px}.lx-why-pipe{grid-template-columns:1fr 1fr;gap:12px}.lx-wstage::after{content:none}}
@media (prefers-reduced-motion:reduce){
  .lx-wstage{transition:none}
  .lx-why.lx-go .lx-wstage,.lx-why.lx-go .lx-ws-doc,.lx-why.lx-go .lx-ws-tl u,.lx-why.lx-go .lx-ws-up u,.lx-why.lx-go .lx-ws-tick,.lx-why.lx-go .lx-ws-bar,.lx-why.lx-go .lx-wstage-shoot .lx-ws-recdot{animation:none}
}
/* /lx:why */

/* lx:awards */
.lx-awards{position:relative;overflow:hidden;background:radial-gradient(900px 560px at 50% -12%,#FBF3E2,#FFFFFF 62%);padding:110px 0 100px;text-align:center}
.lx-aw-lights{position:absolute;inset:0;pointer-events:none}
.lx-aw-lights i{position:absolute;width:4px;height:4px;border-radius:50%;background:#FFC15E;box-shadow:0 0 12px rgba(255,193,94,.9);opacity:.25;animation:lxawtw 4.4s ease-in-out infinite}
.lx-aw-lights i:nth-child(1){left:8%;top:22%}
.lx-aw-lights i:nth-child(2){left:16%;top:64%;animation-delay:.7s;background:#A5F3FC;box-shadow:0 0 12px rgba(165,243,252,.9)}
.lx-aw-lights i:nth-child(3){left:26%;top:36%;animation-delay:1.6s}
.lx-aw-lights i:nth-child(4){left:38%;top:74%;animation-delay:2.4s;background:#A5F3FC;box-shadow:0 0 12px rgba(165,243,252,.9)}
.lx-aw-lights i:nth-child(5){left:52%;top:18%;animation-delay:.4s}
.lx-aw-lights i:nth-child(6){left:63%;top:60%;animation-delay:1.9s}
.lx-aw-lights i:nth-child(7){left:72%;top:30%;animation-delay:2.9s;background:#A5F3FC;box-shadow:0 0 12px rgba(165,243,252,.9)}
.lx-aw-lights i:nth-child(8){left:84%;top:68%;animation-delay:1.1s}
.lx-aw-lights i:nth-child(9){left:92%;top:26%;animation-delay:3.4s}
.lx-aw-lights i:nth-child(10){left:46%;top:88%;animation-delay:2s;background:#A5F3FC;box-shadow:0 0 12px rgba(165,243,252,.9)}
@keyframes lxawtw{50%{opacity:.85}}
.lx-aw-in{position:relative;max-width:var(--max);margin:0 auto;padding:0 24px}
.lx-aw-in .lx-lead{margin-left:auto;margin-right:auto}
.lx-aw-cities{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px}
.lx-aw-cities span{display:inline-flex;align-items:center;gap:8px;font:700 .7rem 'IBM Plex Mono',monospace;letter-spacing:.2em;text-transform:uppercase;color:#39434E;border:1px solid rgba(16,24,40,.14);border-radius:999px;padding:9px 16px;background:#FFFFFF}
.lx-aw-cities i{width:7px;height:7px;border-radius:50%;background:#E8A33D;box-shadow:0 0 10px rgba(255,193,94,.85);animation:lxawtw 3.6s ease-in-out infinite}
.lx-aw-cities span:nth-child(2) i{animation-delay:.5s}
.lx-aw-cities span:nth-child(3) i{animation-delay:1s}
.lx-aw-cities span:nth-child(4) i{animation-delay:1.5s}
.lx-aw-cities span:nth-child(5) i{animation-delay:2s}
.lx-aw-cities span:nth-child(6) i{animation-delay:2.5s}
.lx-aw-tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:34px auto 0;max-width:1060px}
.lx-aw-tile{position:relative;border:1px solid rgba(232,163,61,.5);border-radius:14px;padding:24px 16px;background:#FFFFFF;box-shadow:0 18px 44px rgba(16,24,40,.1),inset 0 1px 0 rgba(255,193,94,.35);animation:lxawfloat 7s ease-in-out infinite}
.lx-aw-tile:nth-child(2){animation-delay:1.7s}
.lx-aw-tile:nth-child(3){animation-delay:3.4s}
.lx-aw-tile:nth-child(4){animation-delay:5.1s}
.lx-aw-tile::before{content:"";position:absolute;left:16px;right:16px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,193,94,.8),transparent)}
.lx-aw-tile b{display:block;font:600 1rem 'Lexend',sans-serif;color:#0C0C30;line-height:1.4}
.lx-aw-tile span{display:block;margin-top:8px;font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.24em;color:#854D0E}
@keyframes lxawfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-9px)}}
.lx-awards .lx-btn{margin-top:34px}
@media (max-width:1023px){.lx-aw-tiles{grid-template-columns:1fr 1fr}}
@media (max-width:767px){.lx-awards{padding:76px 0 64px}.lx-aw-tiles{grid-template-columns:1fr;max-width:420px}}
@media (prefers-reduced-motion:reduce){.lx-aw-tile{animation:none}.lx-aw-lights i,.lx-aw-cities i{animation:none;opacity:.6}}
/* /lx:awards */

/* lx:testi */
.lx-testi{position:relative;overflow:hidden;background:#F6F8FB;padding:110px 0 100px}
.lx-testi::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(760px 480px at 100% 0%,rgba(111,111,209,.08),transparent 70%),radial-gradient(620px 420px at 0% 100%,rgba(34,211,238,.05),transparent 70%)}
.lx-ts-in{position:relative;max-width:var(--max);margin:0 auto;padding:0 24px}
.lx-ts-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:40px}
.lx-ts-card{position:relative;margin:0;border:1px solid #E4E7EC;border-radius:18px;background:#FFFFFF;box-shadow:0 8px 24px rgba(16,24,40,.08);padding:20px 20px 18px;transition:border-color .35s,transform .35s,box-shadow .35s}
.lx-ts-card:hover{border-color:rgba(14,116,144,.45);transform:translateY(-5px);box-shadow:0 24px 54px rgba(16,24,40,.14)}
.lx-ts-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.lx-ts-type{font:700 .62rem 'IBM Plex Mono',monospace;letter-spacing:.22em;text-transform:uppercase;color:#0E7490;border:1px solid rgba(14,116,144,.4);border-radius:999px;padding:5px 11px;background:rgba(14,116,144,.06)}
.lx-ts-outcome{font:700 .6rem 'IBM Plex Mono',monospace;letter-spacing:.14em;text-transform:uppercase;color:#854D0E}
.lx-ts-mid{display:flex;gap:14px;margin-top:16px}
.lx-ts-wave{flex:0 0 auto;display:flex;align-items:center;gap:3px;height:64px;font-style:normal}
.lx-ts-wave b{width:3px;border-radius:2px;background:linear-gradient(180deg,#22D3EE,#6F6FD1);animation:lxtswave 1.5s ease-in-out infinite}
.lx-ts-wave b:nth-child(1){height:30%}
.lx-ts-wave b:nth-child(2){height:55%;animation-delay:.12s}
.lx-ts-wave b:nth-child(3){height:80%;animation-delay:.24s}
.lx-ts-wave b:nth-child(4){height:60%;animation-delay:.36s}
.lx-ts-wave b:nth-child(5){height:90%;animation-delay:.48s}
.lx-ts-wave b:nth-child(6){height:45%;animation-delay:.6s}
.lx-ts-wave b:nth-child(7){height:70%;animation-delay:.72s}
@keyframes lxtswave{50%{transform:scaleY(.45)}}
.lx-ts-card blockquote{margin:0}
.lx-ts-card blockquote p{margin:0;color:#39434E;font-size:.96rem;line-height:1.7}
.lx-ts-play{position:relative;display:block;height:3px;border-radius:2px;background:rgba(16,24,40,.1);margin-top:16px}
.lx-ts-play u{position:absolute;left:0;top:0;bottom:0;width:34%;border-radius:2px;background:linear-gradient(90deg,#4444EF,#7474F8);text-decoration:none;animation:lxtsplay 6s linear infinite}
@keyframes lxtsplay{from{width:0}to{width:100%}}
.lx-ts-who{margin-top:14px;font:600 .8rem 'Lexend',sans-serif;color:#5A6472}
@media (max-width:1023px){.lx-ts-grid{grid-template-columns:1fr;max-width:660px;margin-left:auto;margin-right:auto}}
@media (max-width:767px){.lx-testi{padding:76px 0 64px}}
@media (prefers-reduced-motion:reduce){.lx-ts-card{transition:none}.lx-ts-card:hover{transform:none}.lx-ts-wave b{animation:none}.lx-ts-play u{animation:none;width:34%}}
/* /lx:testi */

/* lx:pulse */
.lx-pulse{position:relative;overflow:hidden;background:linear-gradient(160deg,#FBF9FE,#FFFFFF 70%);padding:110px 0 100px}
.lx-pulse::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(820px 520px at 0% 100%,rgba(68,68,239,.06),transparent 70%),radial-gradient(700px 480px at 100% 0%,rgba(34,211,238,.06),transparent 70%)}
.lx-pl-in{position:relative;max-width:var(--max);margin:0 auto;padding:0 24px;display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.lx-pl-stats{display:flex;gap:30px;flex-wrap:wrap;margin-top:30px}
.lx-pl-stats>div{min-width:120px}
.lx-pl-stats b{display:block;font:600 2.1rem 'Lexend',sans-serif;color:#0C0C30}
.lx-pl-stats span{display:block;margin-top:4px;font:700 .64rem 'IBM Plex Mono',monospace;letter-spacing:.18em;text-transform:uppercase;color:#5A6472}
.lx-pl-dash{border:1px solid #E4E7EC;border-radius:18px;background:#FFFFFF;box-shadow:0 30px 70px rgba(16,24,40,.12);padding:18px 18px 16px}
.lx-pl-dhead{display:flex;align-items:center;gap:14px}
.lx-pl-live{display:inline-flex;align-items:center;gap:8px;font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.24em;color:#1212C0;border:1px solid rgba(18,18,192,.45);border-radius:999px;padding:6px 13px;background:rgba(68,68,239,.07)}
.lx-pl-tc{font:700 .68rem 'IBM Plex Mono',monospace;letter-spacing:.1em;color:#0E7490}
.lx-pl-dots{margin-left:auto;display:inline-flex;gap:7px}
.lx-pl-dots i{width:9px;height:9px;border-radius:50%}
.lx-pl-dots i:nth-child(1){background:#4444EF;box-shadow:0 0 9px rgba(68,68,239,.8)}
.lx-pl-dots i:nth-child(2){background:#22D3EE;box-shadow:0 0 9px rgba(34,211,238,.8)}
.lx-pl-dots i:nth-child(3){background:#6F6FD1;box-shadow:0 0 9px rgba(111,111,209,.8)}
.lx-pl-dots i:nth-child(4){background:#FFC15E;box-shadow:0 0 9px rgba(255,193,94,.8)}
.lx-pulse.lx-live .lx-pl-dots i{animation:lxpldot 2.4s ease-in-out infinite}
.lx-pulse.lx-live .lx-pl-dots i:nth-child(2){animation-delay:.6s}
.lx-pulse.lx-live .lx-pl-dots i:nth-child(3){animation-delay:1.2s}
.lx-pulse.lx-live .lx-pl-dots i:nth-child(4){animation-delay:1.8s}
@keyframes lxpldot{50%{opacity:.35}}
.lx-pl-meters{display:flex;align-items:flex-end;gap:5px;height:56px;margin-top:16px;padding:9px 12px;background:rgba(16,24,40,.04);border:1px solid rgba(16,24,40,.08);border-radius:12px}
.lx-pl-meters b{flex:1;border-radius:2px 2px 0 0;background:linear-gradient(180deg,#22D3EE,#6F6FD1);transform-origin:bottom}
.lx-pl-meters b:nth-child(odd){height:62%}
.lx-pl-meters b:nth-child(even){height:88%}
.lx-pl-meters b:nth-child(3n){height:44%}
.lx-pl-meters b:nth-child(4n){height:74%}
.lx-pulse.lx-live .lx-pl-meters b{animation:lxplmeter 1.3s ease-in-out infinite alternate}
.lx-pulse.lx-live .lx-pl-meters b:nth-child(2n){animation-duration:1.05s;animation-delay:.2s}
.lx-pulse.lx-live .lx-pl-meters b:nth-child(3n){animation-duration:1.5s;animation-delay:.45s}
.lx-pulse.lx-live .lx-pl-meters b:nth-child(5n){animation-duration:.9s;animation-delay:.1s}
@keyframes lxplmeter{from{transform:scaleY(.35)}to{transform:scaleY(1)}}
.lx-pl-ups{display:grid;gap:9px;margin-top:14px}
.lx-pl-up{display:flex;align-items:center;gap:12px;font:600 .74rem 'Lexend',sans-serif;color:#475467}
.lx-pl-up span{flex:0 0 128px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left}
.lx-pl-up i{flex:1;height:5px;border-radius:3px;background:rgba(16,24,40,.08);overflow:hidden}
.lx-pl-up u{display:block;height:100%;border-radius:3px;background:linear-gradient(90deg,#4444EF,#7474F8);text-decoration:none;transform-origin:left}
.lx-pl-up:nth-child(1) u{width:88%}
.lx-pl-up:nth-child(2) u{width:64%}
.lx-pl-up:nth-child(3) u{width:42%}
.lx-pulse.lx-live .lx-pl-up u{animation:lxplup 2.2s ease both}
.lx-pulse.lx-live .lx-pl-up:nth-child(2) u{animation-duration:2.8s;animation-delay:.35s}
.lx-pulse.lx-live .lx-pl-up:nth-child(3) u{animation-duration:3.4s;animation-delay:.7s}
@keyframes lxplup{from{transform:scaleX(0)}}
.lx-pl-up em{flex:0 0 auto;font:700 .6rem 'IBM Plex Mono',monospace;letter-spacing:.16em;color:#5A6472;font-style:normal}
.lx-pl-graph{display:block;width:100%;height:64px;margin-top:14px}
.lx-pl-graph polyline{fill:none;stroke:#0891B2;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}
.lx-pulse.lx-live .lx-pl-graph polyline{animation:lxplgraph 2.6s ease .5s both}
@keyframes lxplgraph{from{stroke-dashoffset:1}}
@media (max-width:1023px){.lx-pl-in{grid-template-columns:1fr;gap:40px}}
@media (max-width:767px){.lx-pulse{padding:76px 0 64px}.lx-pl-up span{flex-basis:96px}}
@media (prefers-reduced-motion:reduce){
  .lx-pulse.lx-live .lx-pl-dots i,.lx-pulse.lx-live .lx-pl-meters b,.lx-pulse.lx-live .lx-pl-up u,.lx-pulse.lx-live .lx-pl-graph polyline{animation:none}
}
/* /lx:pulse */

/* lx:starter */
.lx-starter{position:relative;overflow:hidden;background:#F6F8FB;padding:110px 0 100px}
.lx-starter::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(780px 500px at 88% 8%,rgba(255,193,94,.1),transparent 70%),radial-gradient(680px 460px at 6% 96%,rgba(34,211,238,.06),transparent 70%)}
.lx-st-in{position:relative;max-width:var(--max);margin:0 auto;padding:0 24px}
.lx-st-fallback{margin-top:30px}
.lx-st-app{margin-top:38px;display:grid;grid-template-columns:1.05fr .95fr;gap:46px;align-items:start}
.lx-st-app[hidden]{display:none}
.lx-st-steps{display:grid;gap:28px}
.lx-st-q{display:block;font:700 .72rem 'IBM Plex Mono',monospace;letter-spacing:.24em;text-transform:uppercase;color:#0E7490;margin-bottom:12px}
.lx-st-chips{display:flex;flex-wrap:wrap;gap:9px}
.lx-st-chip{font:600 .84rem 'Lexend',sans-serif;color:#39434E;background:#FFFFFF;border:1px solid #D5DAE3;border-radius:999px;padding:10px 18px;cursor:pointer;transition:color .25s,background .25s,border-color .25s,box-shadow .25s}
.lx-st-chip:hover{color:#0C0C30;border-color:rgba(14,116,144,.6)}
.lx-st-chip.on{color:#0B0616;background:linear-gradient(110deg,#22D3EE,#A5F3FC);border-color:transparent;box-shadow:0 8px 22px rgba(34,211,238,.3)}
.lx-st-slate{position:relative;border-radius:16px;overflow:hidden;border:1px solid #E4E7EC;background:#FFFFFF;box-shadow:0 30px 70px rgba(16,24,40,.14)}
.lx-st-slate[hidden]{display:none}
.lx-st-clap{display:flex;height:34px;overflow:hidden;border-bottom:1px solid #E4E7EC}
.lx-st-clap i{flex:1;margin:0 -5px;transform:skewX(-24deg);background:#F3EFE4}
.lx-st-clap i:nth-child(even){background:#0C0C30}
.lx-st-sbody{padding:22px 24px 24px}
.lx-st-stitle{display:block;font:700 .72rem 'IBM Plex Mono',monospace;letter-spacing:.3em;text-transform:uppercase;color:#854D0E}
.lx-st-sbody dl{margin:16px 0 0;display:grid;gap:10px}
.lx-st-sbody dl div{display:flex;gap:14px;border-bottom:1px dashed rgba(16,24,40,.15);padding-bottom:9px}
.lx-st-sbody dt{flex:0 0 110px;font:700 .62rem 'IBM Plex Mono',monospace;letter-spacing:.2em;text-transform:uppercase;color:#5A6472;padding-top:3px}
.lx-st-sbody dd{margin:0;font:600 .92rem 'Lexend',sans-serif;color:#0C0C30}
.lx-st-sbody .lx-btn{margin-top:20px}
.lx-st-slate.lx-snap{animation:lxstsnap .5s ease}
@keyframes lxstsnap{from{opacity:0;transform:translateY(16px) rotate(-1deg)}}
@media (max-width:1023px){.lx-st-app{grid-template-columns:1fr}}
@media (max-width:767px){.lx-starter{padding:76px 0 64px}}
@media (prefers-reduced-motion:reduce){.lx-st-chip{transition:none}.lx-st-slate.lx-snap{animation:none}}
/* /lx:starter */

/* lx:footcta */
.lx-footcta{position:relative;overflow:hidden;background:linear-gradient(175deg,#FFFFFF,#F2EDFA 60%,#FFFFFF);padding:130px 0 120px;text-align:center}
.lx-fc-bg{position:absolute;inset:0;pointer-events:none}
.lx-fc-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(16,24,40,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(16,24,40,.05) 1px,transparent 1px);background-size:54px 54px;-webkit-mask-image:radial-gradient(closest-side at 50% 42%,#000,transparent);mask-image:radial-gradient(closest-side at 50% 42%,#000,transparent);animation:lxfcgrid 18s linear infinite}
@keyframes lxfcgrid{from{background-position:0 0,0 0}to{background-position:0 54px,54px 0}}
.lx-fc-wave{position:absolute;left:-10%;right:-10%;top:50%;height:120px;margin-top:-60px;background:repeating-linear-gradient(90deg,rgba(14,116,144,.12) 0 3px,transparent 3px 16px);-webkit-mask-image:linear-gradient(180deg,transparent,#000 50%,transparent);mask-image:linear-gradient(180deg,transparent,#000 50%,transparent);animation:lxwavemove 11s linear infinite}
.lx-fc-sweep{position:absolute;top:-30%;bottom:-30%;left:-24%;width:200px;background:linear-gradient(90deg,transparent,rgba(255,193,94,.16),rgba(34,211,238,.12),rgba(111,111,209,.1),transparent);transform:skewX(-18deg);animation:lxfcsweep 7.5s ease-in-out infinite}
@keyframes lxfcsweep{0%{left:-24%}60%,100%{left:118%}}
.lx-fc-in{position:relative;max-width:var(--max);margin:0 auto;padding:0 24px}
.lx-fc-in .lx-h2{margin-left:auto;margin-right:auto;max-width:16ch}
.lx-footcta .lx-btn{margin-top:34px}
@media (max-width:767px){.lx-footcta{padding:90px 0 84px}}
@media (prefers-reduced-motion:reduce){.lx-fc-grid,.lx-fc-wave,.lx-fc-sweep{animation:none}.lx-fc-sweep{display:none}}
/* /lx:footcta */

/* lx:launcher-headings - launcher group titles are <p class="cq3-ht"> (was h6, broke the outline);
   mirrors the .cq3-pane h6 rules in cq.css (engine file, untouched) */
.cq3-pane .cq3-ht{display:none;margin:16px 0 10px;color:#5d677a;font-size:0.8125rem;letter-spacing:.2em;text-transform:uppercase;font-weight:700}
.cq3-panes.f .cq3-pane .cq3-ht{display:block}
.cq3-pane:first-child .cq3-ht{margin-top:0}
/* lx:launcher-headings end */

/* lx:darkcut */
.lx-darkcut-case{background:#FFFFFF;border:1px solid #E4E7EC;border-radius:18px;box-shadow:0 8px 24px rgba(16,24,40,.08)}
.lx-darkcut-case .lx-case-media{background:#08081F}
.lx-darkcut-case .lx-case-media video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.lx-darkcut-cap{margin:12px 0 0;font-size:.74rem;line-height:1.5;color:#667085}
@media (prefers-reduced-motion:reduce){
  .lx-darkcut-case:hover,.lx-darkcut-case:focus{transform:none}
  .lx-darkcut-case .lx-case-media video{display:none}
  .lx-darkcut-case .lx-case-media{background:#08081F url("../img/oms-hero-world-dark.webp") center/cover no-repeat}
}
@media (max-width:768px){
  .lx-darkcut-cap{font-size:.7rem;margin-top:10px}
}
/* lx:darkcut:end */

/* cq-mega two-section header reconcile: control-room burger + REC timecode
   live in a fixed dock pill (the old lx-nav bar is legacyHide-hidden). The
   #lxMenu overlay (z 2300) paints above both the dock and the mega bar. */
.cq-lx-dock{position:fixed;right:20px;bottom:20px;z-index:2200;display:inline-flex;align-items:center;gap:12px;padding:8px 10px 8px 16px;border-radius:999px;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(16,24,40,.1);box-shadow:0 12px 32px rgba(16,24,40,.22)}
.cq-lx-dock .lx-menu-btn{background:#fff}
@media (max-width:960px){.cq-lx-dock{padding:6px;gap:0}.cq-lx-dock .lx-tc{display:none}}

/* om-3d */
/* "The camera in 3D" panel: static poster <img> fallback in the HTML;
   om-3d.js swaps in a <model-viewer> (camera-controls + slow auto-rotate,
   module lazy-loaded from unpkg) only when the stage nears the viewport on
   non-PRM screens >767px with WebGL. Poster stays until the model loads. */
.om3d{width:min(var(--max),calc(100% - 48px));margin:0 auto;padding:70px 0 26px;display:grid;grid-template-columns:1.05fr .95fr;gap:38px;align-items:center}
.om3d-copy p{max-width:48ch;color:var(--body)}
.om3d-hint{display:inline-flex;align-items:center;gap:8px;margin-top:18px;border:1px solid #E4E7EC;border-radius:999px;padding:8px 16px;font:700 .72rem Montserrat,Inter,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--body);background:#fff}
.om3d-hint svg{color:var(--em)}
.om3d-stage{position:relative;height:clamp(300px,40vw,440px);border-radius:22px;overflow:hidden;background:radial-gradient(120% 130% at 50% 22%,#FFFFFF,#F1ECF7 74%);border:1px solid #E4E7EC;box-shadow:0 8px 24px rgba(16,24,40,.08)}
.om3d-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:opacity .5s ease}
.om3d-stage model-viewer{position:absolute;inset:0;width:100%;height:100%;background:transparent;--poster-color:transparent}
.om3d-stage.om3d-live .om3d-poster{opacity:0}
@media (max-width:767px){.om3d{grid-template-columns:1fr;gap:20px;padding:52px 0 10px}.om3d-stage{height:clamp(240px,62vw,340px)}}
@media (prefers-reduced-motion:reduce){.om3d-poster{transition:none}}
/* om-3d end */

/* cq-foot-v3 */
.cqf3{background:#131335;color:#E9ECF3;font-size:.95rem;line-height:1.7;margin-top:0}
.cqf3 a{color:#ACACE2;text-decoration:none}
.cqf3 a:hover{color:#fff;text-decoration:underline}
.cqf3 h4{color:#B7B7EC;font-size:.9rem;letter-spacing:.07em;text-transform:uppercase;margin:0 0 14px;font-weight:700}
.cqf3-wrap{max-width:1200px;margin:0 auto;padding:64px 24px 26px}
.cqf3-cols{display:grid;grid-template-columns:1.4fr 1fr 1.1fr 1.2fr;gap:42px}
.cqf3 ul{list-style:none;margin:0;padding:0}
.cqf3 li{margin:0 0 9px}
.cqf3-logo{max-width:220px;height:auto;display:block;margin:0 0 16px}
.cqf3-blurb{margin:0 0 16px}
.cqf3-socials{display:flex;gap:10px;margin:0 0 22px}
.cqf3-socials a{width:36px;height:36px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.09)}
.cqf3-socials a:hover{background:rgba(255,255,255,.18)}
.cqf3-socials svg{width:17px;height:17px;fill:#ACACE2}
.cqf3-socials a:hover svg{fill:#fff}
.cqf3-news form{display:flex;gap:8px;flex-wrap:wrap;margin:0;background:transparent;border-radius:0;padding:0;min-width:0;max-width:none;box-shadow:none}
.cqf3-news form input[type=email]{flex:1 1 170px;min-width:0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:10px 12px;color:#fff;font:inherit}
.cqf3-news form button{flex:none;border-radius:8px;padding:10px 18px}
.cqf3-news input[type=email]{flex:1 1 170px;min-width:0;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:8px;padding:10px 12px;color:#fff;font:inherit}
.cqf3-news input[type=email]::placeholder{color:#AEAEC2}
.cqf3-news button{background:#9797E2;color:#131335;border:0;border-radius:8px;padding:10px 18px;font-weight:700;font-family:inherit;cursor:pointer}
.cqf3-news button:hover{filter:brightness(1.08)}
.cqf3-news .news-consent{font-size:.8rem;color:#AEAEC2;margin:8px 0 0;flex-basis:100%}
.cqf3-info b{display:block;color:#B7B7EC;font-weight:600}
.cqf3-info li{margin:0 0 13px}
.cqf3-band{border-top:1px solid rgba(255,255,255,.13);margin-top:44px;padding-top:20px}
.cqf3-band h4{margin-bottom:10px}
.cqf3-band ul{display:flex;flex-wrap:wrap;gap:6px 26px}
.cqf3-band li{margin:0}
.cqf3-bottom{border-top:1px solid rgba(255,255,255,.13);margin-top:30px;padding-top:20px;font-size:.85rem;color:#AEAEC2;text-align:center}
@media(max-width:1020px){.cqf3-cols{grid-template-columns:1fr 1fr;gap:34px}}
@media(max-width:600px){.cqf3-cols{grid-template-columns:1fr}.cqf3-wrap{padding:48px 18px 22px}}
/* /cq-foot-v3 */

/* cq-foot-top */
.cqft-waves{line-height:0;margin:0;padding:0}
.cqft-waves svg{display:block;width:100%;height:190px}
.cqft-waves+.cqf3,.cqft+.cqf3{margin-top:0}
@media (max-width:760px){.cqft-waves svg{height:110px}}
/* /cq-foot-top */


/* cq-lightfix */
/* ============================================================
   CAQA family wall (.cqsvc, engine cq.css) — page-scoped LIGHT
   override per light-first mandate (2026-07-12 dark audit).
   Precedents: caqa-data lightfirst.css §3 / VET Website v3.css §5.
   White/ivory wall, white cards, accent-ink labels, dark ink
   titles. !important required: this sheet loads before cq.css.
   ============================================================ */
.cqsvc,.cqsvc::after{background:linear-gradient(180deg,#FFFFFF 0%,#F5F7FA 100%)!important}
.cqsvc{border-top:1px solid #E2E7EE}
.cqsvc::before{background-image:linear-gradient(rgba(68,68,239,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(68,68,239,.05) 1px,transparent 1px)!important}
.cqsvc-head .t{color:#1212C0!important}
.cqsvc-head h2{color:var(--ink)!important}
.cqsvc-head p{color:var(--muted)!important}
.cqsvc-card{background:#fff!important;border:1px solid #E2E7EE!important;box-shadow:0 8px 24px rgba(16,24,40,.06)!important}
.cqsvc-card::before{background:linear-gradient(110deg,#4444EF,#7474F8)!important}
.cqsvc-card:hover{background:#fff!important;border-color:rgba(68,68,239,.45)!important;box-shadow:0 18px 40px rgba(16,24,40,.14)!important}
.cqsvc-card .b{color:#1212C0!important}
.cqsvc-card .s{color:var(--ink)!important}
.cqsvc-card .g{color:var(--muted)!important}
.cqsvc-card:hover .g{color:#1212C0!important}
/* /cq-lightfix */

/* cq-logo-22jul */
.lx-brand-logo{height:44px;width:auto;display:block}
.brand .brand-logo{height:44px;width:auto;display:block}
@media(max-width:640px){.lx-brand-logo,.brand .brand-logo{height:38px}}
