:root{
  --canvas:#ffffff; --ink:#010110; --carbon:#111117; --graphite:#22222a;
  --fog:#73737c; --ash:#d9d9d9; --mist:#f4f4f6; --paper:#fafafb;
  --ember:#635bff; --iris:#635bff; --iris-soft:#ecebff; --teal:#072723;
  --up:#0f9d58; --dn:#e5484d;
  --line:rgba(1,1,16,.12); --line-2:rgba(1,1,16,.07); --line-d:rgba(255,255,255,.10);
  --serif:'Source Serif 4',Georgia,'Times New Roman',serif;
  --sans:'Inter',ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;
  --maxw:1200px;
}
*{box-sizing:border-box}
html{overflow-x:clip;scroll-behavior:smooth}
body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);
  font-size:16px;line-height:1.5;letter-spacing:-0.02em;-webkit-font-smoothing:antialiased;overflow-x:clip;font-weight:400}
a{color:inherit;text-decoration:none}
img,svg,iframe,video,canvas{display:block;max-width:100%}
h1,h2,h3,h4{margin:0;font-family:var(--serif);font-weight:400;line-height:1.07;color:var(--ink);letter-spacing:-0.03em}
p{margin:0}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 28px}

.bgfx{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.bgfx canvas{position:absolute;inset:0;width:100%;height:100%}
.bgfx .orb{position:absolute;border-radius:50%;filter:blur(90px);opacity:.5}
.bgfx .o1{width:520px;height:520px;background:radial-gradient(circle,rgba(99,91,255,.14),transparent 70%);left:-160px;top:-120px;animation:drift1 26s ease-in-out infinite alternate}
.bgfx .o2{width:460px;height:460px;background:radial-gradient(circle,rgba(7,39,35,.06),transparent 70%);right:-140px;top:40%;animation:drift2 30s ease-in-out infinite alternate}
@keyframes drift1{to{transform:translate(120px,90px)}}
@keyframes drift2{to{transform:translate(-110px,-70px)}}
.ann,main,.foot{position:relative;z-index:1}
.nav{position:relative;z-index:60}

.eyebrow{font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--iris)}
.display{font-size:clamp(40px,6vw,72px);line-height:1.02;letter-spacing:-0.035em;font-weight:400}
.h-lg{font-size:clamp(32px,4.4vw,54px);line-height:1.05;letter-spacing:-0.03em;font-weight:400}
.h-md{font-size:clamp(24px,3vw,34px);line-height:1.1;letter-spacing:-0.03em;font-weight:400}
.muted{color:var(--fog)}
.accent{color:var(--iris)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-family:var(--sans);font-weight:500;
  font-size:15px;padding:13px 24px;border-radius:100px;cursor:pointer;border:1px solid transparent;white-space:nowrap;
  letter-spacing:-0.02em;transition:background .16s,color .16s,border-color .16s,transform .16s;line-height:1}
.btn i{font-size:13px}
.btn-ink{background:var(--ink);color:#fff;border-color:var(--ink)}
.btn-ink:hover{transform:translateY(-1px);background:#1a1a2b}
.btn-ghost{background:transparent;color:var(--ink);border-color:var(--ink)}
.btn-ghost:hover{background:var(--ink);color:#fff}
.btn-lg{padding:15px 28px;font-size:16px}
.mag{will-change:transform}
.tlink{display:inline-flex;align-items:center;gap:7px;color:var(--ink);font-weight:500;font-size:15px;border-bottom:1px solid transparent;transition:border-color .15s,color .15s}
.tlink:hover{color:var(--iris);border-color:var(--iris)}
.tlink i{font-size:12px}

.ann{background:var(--iris);color:#fff;display:flex;gap:16px;align-items:center;justify-content:center;padding:10px 24px;text-align:center;flex-wrap:wrap;font-size:13px;font-weight:500}
.ann .dot{display:none}
.ann .pill{border:1px solid rgba(255,255,255,.6);border-radius:100px;padding:5px 14px;color:#fff;display:inline-flex;align-items:center;gap:7px;cursor:pointer;background:none;font-family:var(--sans);font-size:13px;font-weight:500}
.ann .pill:hover{background:rgba(255,255,255,.14)}
.ann .x{margin-left:2px;background:none;border:0;color:rgba(255,255,255,.85);cursor:pointer;display:flex;font-size:13px}
.ann.hide{display:none}

.nav{position:sticky;top:0;background:rgba(255,255,255,.86);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:24px;padding:12px 28px;min-height:62px}
.brand{display:flex;align-items:center;gap:9px;font-weight:700;font-size:17px;letter-spacing:-0.03em;white-space:nowrap;min-width:0;flex:0 1 auto;color:var(--ink);font-family:var(--sans)}
.brand .sp{width:22px;height:22px;flex:0 0 22px;display:flex;align-items:center;justify-content:center;background:var(--ink);color:#fff;border-radius:6px;font-size:12px}
.nav-links{display:flex;flex-wrap:wrap;gap:2px;margin:0 auto;align-items:center}
.nav-links a{font-family:var(--sans);padding:8px 14px;font-size:14px;font-weight:500;letter-spacing:-0.02em;color:var(--ink);border-radius:100px;transition:color .15s,background .15s}
.nav-links a:hover{color:var(--iris)}
.nav-links a.active{color:var(--iris)}
.nav-links .m-cta{display:none}
.nav-right{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.nav-toggle{display:none;width:42px;height:42px;flex:0 0 42px;border:1px solid var(--line);background:var(--canvas);border-radius:10px;color:var(--ink);cursor:pointer;align-items:center;justify-content:center}
.nav-toggle .ham,.nav-toggle .ham::before,.nav-toggle .ham::after{content:"";display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .25s,opacity .2s}
.nav-toggle .ham{position:relative}
.nav-toggle .ham::before,.nav-toggle .ham::after{position:absolute;left:0}
.nav-toggle .ham::before{top:-6px}.nav-toggle .ham::after{top:6px}
.nav-toggle[aria-expanded="true"] .ham{background:transparent}
.nav-toggle[aria-expanded="true"] .ham::before{transform:translateY(6px) rotate(45deg)}
.nav-toggle[aria-expanded="true"] .ham::after{transform:translateY(-6px) rotate(-45deg)}

.section{padding:84px 0;position:relative}
.s-head{max-width:820px;margin-bottom:44px}
.s-head.center{text-align:center;margin-left:auto;margin-right:auto}
.s-head .eyebrow{display:block;margin-bottom:16px}
.s-head p{margin-top:20px;color:var(--fog);font-size:18px;line-height:1.6;max-width:720px;letter-spacing:-0.02em}
.s-head.center p{margin-left:auto;margin-right:auto}

.hero{position:relative;padding:64px 0 72px}
.hero-grid{display:flex;gap:52px;align-items:center;flex-wrap:wrap}
.hero-head{flex:1 1 440px;min-width:0}
.hero .eyebrow{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;padding:6px 13px;border:1px solid var(--line);border-radius:100px;background:var(--iris-soft);color:var(--iris)}
.hero h1{margin-bottom:22px}
.hero h1 .u{color:var(--iris)}
.hero .sub{font-size:19px;line-height:1.58;color:var(--fog);max-width:520px;margin-bottom:30px;letter-spacing:-0.02em}
.hero-cta{display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.hero-media{flex:1 1 460px;min-width:0}
.ytwrap{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#000;position:relative;aspect-ratio:16/9}
.ytwrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ytbar{position:absolute;left:0;right:0;top:0;z-index:2;display:flex;align-items:center;gap:8px;padding:9px 13px;background:linear-gradient(180deg,rgba(0,0,0,.5),transparent);pointer-events:none;font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#fff}
.ytbar .lv{width:6px;height:6px;border-radius:50%;background:#ff5f57;box-shadow:0 0 8px #ff5f57}
.trust-row{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:26px}
.trust-row .ti{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--fog);font-weight:500}
.trust-row .ti i{color:var(--iris);font-size:13px}

.logostrip{border-block:1px solid var(--line);background:var(--paper)}
.logostrip .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding-top:26px;padding-bottom:26px}
.logostrip .lb{display:flex;align-items:center;gap:9px;color:var(--fog);font-weight:700;font-size:15px;letter-spacing:-0.02em;opacity:.8}
.logostrip .lb i{font-size:17px}

.grid{display:flex;flex-wrap:wrap;gap:20px}
.g2>*{flex:1 1 calc(50% - 10px);min-width:0}
.g3>*{flex:1 1 calc(33.333% - 14px);min-width:0}
.card{background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:28px;transition:border-color .18s,transform .18s}
.card:hover{border-color:var(--ink);transform:translateY(-2px)}
.card .ic{width:44px;height:44px;border-radius:10px;background:var(--iris-soft);display:flex;align-items:center;justify-content:center;color:var(--iris);margin-bottom:16px}
.card .ic i{font-size:18px}
.card h3{font-size:22px;margin-bottom:10px;font-weight:400}
.card p{font-size:15px;color:var(--fog);line-height:1.6;letter-spacing:-0.02em}
.card .num{font-family:var(--serif);font-size:32px;color:var(--iris);line-height:1;margin-bottom:14px}

.split{display:flex;gap:52px;align-items:center;flex-wrap:wrap}
.split.rev{flex-direction:row-reverse}
.split>.txt{flex:1 1 380px;min-width:0}
.split>.media{flex:1 1 440px;min-width:0}
.split .txt .eyebrow{display:block;margin-bottom:14px}
.split .txt h3{font-size:clamp(24px,3vw,32px);margin-bottom:14px;font-weight:400}
.split .txt p{font-size:16px;color:var(--fog);line-height:1.65;margin-bottom:12px;letter-spacing:-0.02em}
.split .txt .btnrow{margin-top:24px}

.klist{list-style:none;padding:0;margin:18px 0 0;display:flex;flex-direction:column;gap:12px}
.klist li{position:relative;padding-left:28px;font-size:15px;color:var(--ink);line-height:1.5;letter-spacing:-0.02em}
.klist li i{position:absolute;left:0;top:3px;color:var(--iris);font-size:13px}
.klist.neg li i{color:var(--fog)}

.frame{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--canvas)}
.frame .fh{display:flex;align-items:center;gap:8px;padding:11px 15px;border-bottom:1px solid var(--line);font-family:var(--sans);font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--fog);font-weight:600}
.frame .fh .lv{width:6px;height:6px;border-radius:50%;background:var(--iris);margin-left:auto}
.frame .fimg{aspect-ratio:16/10;width:100%;max-height:400px}
.frame .fimg img{width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(.85) contrast(1.02);transition:filter .5s}
.frame:hover .fimg img{filter:grayscale(0)}

.dcard{background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:22px}
.dcard.wide{width:100%}
.dcard .dh{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:10px;font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:.07em;font-weight:600}
.dcard .dh .t{color:var(--ink)}
.dcard .dh .v{color:var(--iris)}
.dcard .dh .v.up{color:var(--up)}
.chart-line{width:100%;height:150px;display:block}
.chart-line .area{fill:rgba(99,91,255,.09)}
.chart-line .stroke{fill:none;stroke:var(--iris);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:stroke-dashoffset 1.6s ease}
.chart-line .dot{fill:var(--iris)}
.chart-bars{display:flex;align-items:flex-end;gap:9px;height:150px}
.chart-bars .bar{flex:1;height:100%;background:linear-gradient(180deg,var(--iris),rgba(99,91,255,.4));border-radius:6px 6px 3px 3px;transform-origin:bottom;transform:scaleY(.03);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.chart-bars.play .bar{transform:scaleY(var(--h,.5))}
.donut2{position:relative;width:150px;height:150px;flex:0 0 150px}
.donut2 svg{width:150px;height:150px;transform:rotate(-90deg)}
.donut2 .seg{fill:none;stroke-width:15;stroke-dasharray:0 999;transition:stroke-dasharray 1.1s cubic-bezier(.2,.7,.2,1)}
.donut2 .ctr{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}
.donut2 .ctr b{font-family:var(--serif);font-size:28px;font-weight:400}
.donut2 .ctr span{font-family:var(--sans);font-size:10px;color:var(--fog);text-transform:uppercase;font-weight:600}
.donut-row{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.dleg{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px;font-family:var(--sans);font-size:13px;font-weight:500}
.dleg li{display:flex;align-items:center;gap:9px;color:var(--fog)}
.dleg li i{width:10px;height:10px;flex:0 0 10px;border-radius:3px;display:inline-block}
.dleg li b{color:var(--ink);margin-left:auto;font-weight:600}
.gauge{position:relative;width:100%;max-width:230px;margin:0 auto}
.gauge svg{width:100%;display:block}
.gauge .track{fill:none;stroke:var(--mist);stroke-width:14;stroke-linecap:round}
.gauge .val{fill:none;stroke:var(--iris);stroke-width:14;stroke-linecap:round;stroke-dasharray:0 999;transition:stroke-dasharray 1.5s cubic-bezier(.2,.7,.2,1)}
.gauge .glab{position:absolute;left:0;right:0;bottom:4px;text-align:center}
.gauge .glab b{font-family:var(--serif);font-size:30px;color:var(--ink);display:block}
.gauge .glab span{font-family:var(--sans);font-size:10px;color:var(--fog);text-transform:uppercase;letter-spacing:.08em;font-weight:600}
.kpis{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px}
.kpi{flex:1 1 180px;min-width:0;background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:20px 22px}
.kpi .k{font-family:var(--sans);font-size:12px;color:var(--fog);text-transform:uppercase;letter-spacing:.05em;font-weight:600}
.kpi .n{font-family:var(--serif);font-size:34px;font-weight:400;margin-top:6px;color:var(--ink)}
.kpi .n .fa-arrow-trend-up{font-size:14px;color:var(--up);margin-left:6px}

.cmp-wrap{border:1px solid var(--line);border-radius:8px;overflow:hidden;background:var(--canvas)}
.cmp-scroll{overflow-x:auto}
.cmp{width:100%;border-collapse:collapse;min-width:640px}
.cmp th,.cmp td{padding:16px 22px;text-align:left;font-size:15px;border-bottom:1px solid var(--line-2);vertical-align:top;letter-spacing:-0.02em}
.cmp thead th{font-family:var(--sans);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--fog);font-weight:700;background:var(--paper)}
.cmp thead th:last-child{color:var(--iris)}
.cmp tbody th{color:var(--ink);font-weight:600}
.cmp td{color:var(--fog)}
.cmp td:last-child{color:var(--ink);font-weight:500}
.cmp tbody tr:last-child th,.cmp tbody tr:last-child td{border-bottom:0}

.band-dark{background:var(--carbon);color:#fff;position:relative;z-index:1}
.band-dark h1,.band-dark h2,.band-dark h3,.band-dark h4{color:#fff}
.band-dark .s-head p{color:rgba(255,255,255,.62)}
.band-dark .eyebrow{color:#a8a4ff}
.band-dark .card{background:var(--graphite);border-color:var(--line-d)}
.band-dark .card:hover{border-color:rgba(255,255,255,.28)}
.band-dark .card p{color:rgba(255,255,255,.6)}
.band-dark .card .ic{background:rgba(99,91,255,.2);color:#a8a4ff}
.band-dark .klist li{color:#fff}
.band-dark .dcard{background:var(--graphite);border-color:var(--line-d)}
.band-dark .kpi{background:var(--graphite);border-color:var(--line-d)}
.band-dark .kpi .n{color:#fff}
.band-dark .kpi .k{color:rgba(255,255,255,.58)}
.band-dark .gauge .track{stroke:rgba(255,255,255,.12)}
.band-dark .dcard .dh .t{color:#fff}
.band-dark .dcard .dh .v{color:#a8a4ff}
.band-dark .gauge .glab b{color:#fff}
.band-dark .gauge .glab span{color:rgba(255,255,255,.58)}
.band-dark .donut2 .ctr b{color:#fff}
.band-dark .dleg li{color:rgba(255,255,255,.62)}
.band-dark .dleg li b{color:#fff}

.bloom{border-radius:12px;padding:56px 44px;text-align:center;background:var(--carbon);color:#fff;position:relative;overflow:hidden}
.bloom::after{content:"";position:absolute;inset:0;background:radial-gradient(70% 120% at 50% 0%,rgba(99,91,255,.35),transparent 60%);pointer-events:none}
.bloom>*{position:relative;z-index:1}
.bloom .eyebrow{color:#a8a4ff;display:block;margin-bottom:14px}
.bloom h2{font-size:clamp(28px,4.2vw,46px);margin-bottom:16px;font-weight:400;max-width:740px;margin-left:auto;margin-right:auto;color:#fff}
.bloom p{font-size:16px;color:rgba(255,255,255,.68);max-width:600px;margin:0 auto 28px;line-height:1.6;letter-spacing:-0.02em}

.tst-slider{overflow:visible}
.tst-slider .swiper-slide{height:auto}
.tst-slider .swiper-slide>.t{height:100%}
.tst .t{background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:28px;display:flex;flex-direction:column;gap:16px}
.tst .stars{color:var(--iris);font-size:13px;letter-spacing:3px}
.tst .q{font-family:var(--serif);font-size:19px;line-height:1.4;color:var(--ink);letter-spacing:-0.02em}
.tst .by{display:flex;align-items:center;gap:12px;margin-top:auto}
.tst .by .av{width:42px;height:42px;flex:0 0 42px;border-radius:8px;background:var(--iris-soft);color:var(--iris);display:flex;align-items:center;justify-content:center;font-size:16px}
.tst .by b{font-family:var(--sans);font-size:14px;font-weight:600;color:var(--ink);display:block;letter-spacing:-0.02em}
.tst .by span{font-family:var(--sans);font-size:12px;color:var(--fog)}
.feat-slider{overflow:visible}
.feat-slider .swiper-slide{height:auto}
.feat-slider .swiper-slide>.card{height:100%}
.swiper-pagination{position:static;margin-top:28px}
.swiper-pagination-bullet{width:7px;height:7px;background:var(--ash);opacity:1}
.swiper-pagination-bullet-active{background:var(--iris);width:20px;border-radius:4px}

.faq{max-width:840px;margin:0 auto;display:flex;flex-direction:column;gap:10px}
.faq details{background:var(--canvas);border:1px solid var(--line);border-radius:8px;transition:border-color .15s}
.faq details[open]{border-color:var(--ink)}
.faq summary{list-style:none;cursor:pointer;display:flex;gap:14px;align-items:center;padding:19px 22px}
.faq summary::-webkit-details-marker{display:none}
.faq summary .t{flex:1;font-family:var(--sans);font-size:17px;color:var(--ink);font-weight:600;letter-spacing:-0.02em}
.faq summary .pm{flex:0 0 auto;width:18px;height:18px;position:relative}
.faq summary .pm::before,.faq summary .pm::after{content:"";position:absolute;background:var(--iris)}
.faq summary .pm::before{left:0;right:0;top:8px;height:2px}
.faq summary .pm::after{top:0;bottom:0;left:8px;width:2px;transition:transform .2s}
.faq details[open] summary .pm::after{transform:scaleY(0)}
.faq .ans{padding:0 22px 20px 22px;color:var(--fog);font-size:15px;line-height:1.65;letter-spacing:-0.02em}

.foot{background:var(--canvas);border-top:1px solid var(--line);padding:56px 0 30px;position:relative}
.foot::before{content:"";position:absolute;left:0;right:0;top:0;height:170px;background-image:radial-gradient(var(--ash) 1.1px,transparent 1.3px);background-size:16px 16px;opacity:.5;pointer-events:none;mask-image:linear-gradient(180deg,#000,transparent);-webkit-mask-image:linear-gradient(180deg,#000,transparent)}
.foot .wrap{position:relative}
.foot-top{display:flex;flex-wrap:wrap;gap:40px;justify-content:space-between;align-items:flex-start}
.foot-brand{flex:1 1 320px;max-width:420px}
.foot-brand p{color:var(--fog);font-size:14px;margin-top:14px;line-height:1.7;letter-spacing:-0.02em}
.socials{display:flex;gap:10px;margin-top:18px}
.socials button{width:38px;height:38px;border:1px solid var(--line);background:transparent;border-radius:100px;display:flex;align-items:center;justify-content:center;color:var(--ink);cursor:pointer;padding:0;transition:.15s}
.socials button:hover{color:var(--iris);border-color:var(--iris)}
.socials i{font-size:15px}
.foot-legal{display:flex;flex-direction:column;gap:11px}
.foot-legal h4{font-family:var(--sans);font-size:14px;font-weight:700;color:var(--ink);margin-bottom:4px;letter-spacing:-0.02em}
.foot-legal a{font-family:var(--sans);font-size:14px;color:var(--fog);transition:.15s;letter-spacing:-0.02em}
.foot-legal a:hover{color:var(--iris)}
.foot-coord{margin-top:40px;padding-top:22px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;font-family:var(--sans);font-size:13px;color:var(--fog)}
.foot-coord .brand{font-size:15px}

.ask-btn{position:fixed;right:22px;bottom:22px;z-index:70;display:inline-flex;align-items:center;gap:11px;background:var(--ink);color:#fff;border:0;border-radius:100px;padding:10px 18px 10px 12px;font-family:var(--sans);font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 8px 30px rgba(1,1,16,.25);transition:transform .2s}
.ask-btn:hover{transform:translateY(-2px)}
.ask-btn .ic{width:32px;height:32px;flex:0 0 32px;border-radius:100px;background:rgba(255,255,255,.14);display:flex;align-items:center;justify-content:center;font-size:14px}
.ask-btn .lbl{display:flex;flex-direction:column;align-items:flex-start;line-height:1.2;gap:2px}
.ask-btn .lbl small{font-size:10px;opacity:.75;display:flex;align-items:center;gap:5px;font-weight:500}
.ask-btn .live{width:6px;height:6px;flex:0 0 6px;border-radius:50%;background:#3ad07a;box-shadow:0 0 8px #3ad07a}
.ask-panel{position:fixed;right:22px;bottom:78px;z-index:70;width:360px;max-width:calc(100vw - 32px);background:var(--canvas);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;opacity:0;transform:translateY(10px);pointer-events:none;transition:.2s;box-shadow:0 24px 60px rgba(1,1,16,.22)}
.ask-panel.open{opacity:1;transform:none;pointer-events:auto}
.ask-head{display:flex;align-items:center;gap:11px;padding:15px;border-bottom:1px solid var(--line)}
.ask-head .av{width:34px;height:34px;border-radius:8px;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center}
.ask-head b{display:block;font-size:14px;color:var(--ink);font-weight:600;letter-spacing:-0.02em}
.ask-head span{font-family:var(--sans);font-size:11px;color:var(--fog)}
.ask-body{padding:15px;display:flex;flex-direction:column;gap:10px;max-height:280px;min-height:100px;overflow-y:auto}
.ask-msg{font-size:14px;line-height:1.5;padding:11px 13px;border-radius:10px;max-width:92%;letter-spacing:-0.02em}
.ask-msg.bot{background:var(--mist);color:var(--ink);align-self:flex-start}
.ask-quick{display:flex;flex-direction:column;gap:8px;padding:0 15px 12px}
.ask-quick button{font-size:13px;padding:11px 13px;border:1px solid var(--line);background:transparent;color:var(--ink);cursor:pointer;text-align:left;font-family:var(--sans);border-radius:8px;transition:.15s;letter-spacing:-0.02em;font-weight:500}
.ask-quick button:hover{border-color:var(--iris);color:var(--iris)}
.ask-input{display:flex;gap:8px;padding:13px 15px;border-top:1px solid var(--line)}
.ask-input input{flex:1 1 auto;min-width:0;background:var(--canvas);border:1px solid var(--line);border-radius:100px;color:var(--ink);font-family:var(--sans);font-size:14px;padding:11px 15px;letter-spacing:-0.02em}
.ask-input input::placeholder{color:var(--fog)}
.ask-input input:focus{outline:none;border-color:var(--ink)}
.ask-input button{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:42px;height:42px;background:var(--ink);color:#fff;border:0;border-radius:100px;cursor:pointer;font-size:14px}

.legal{padding:80px 0 72px}
.legal .wrap{max-width:820px}
.legal .eyebrow{margin-bottom:14px;display:block}
.legal h1{font-size:clamp(34px,5vw,54px);margin-bottom:18px;line-height:1.05;font-weight:400}
.legal .updated{font-family:var(--sans);font-size:13px;color:var(--fog);margin-bottom:8px;font-weight:500}
.legal h2{font-size:26px;margin:38px 0 12px;font-weight:400}
.legal h3{font-family:var(--sans);font-size:15px;font-weight:700;color:var(--ink);margin:22px 0 8px;letter-spacing:-0.02em}
.legal h4{font-family:var(--sans);font-size:14px;font-weight:700;color:var(--iris);margin:18px 0 6px;text-transform:uppercase;letter-spacing:.04em}
.legal p,.legal li{font-size:15px;line-height:1.75;color:var(--fog);letter-spacing:-0.02em}
.legal ul{padding-left:20px;margin:12px 0}.legal li{margin:7px 0}
.legal li::marker{color:var(--iris)}
.legal a{color:var(--iris);text-decoration:underline}
.legal strong{color:var(--ink);font-weight:600}
.legal .lsep{height:1px;background:var(--line);margin:40px 0}
.info{background:var(--canvas);border:1px solid var(--line);border-radius:8px;padding:28px}
.info .tag{font-family:var(--sans);color:var(--iris);font-size:12px;letter-spacing:.06em;text-transform:uppercase;margin-bottom:10px;display:block;font-weight:700}
.info h3{font-size:22px;margin-bottom:10px;font-weight:400}
.info p{font-size:14.5px;color:var(--fog);margin-bottom:6px;line-height:1.65;letter-spacing:-0.02em}
.info a{color:var(--iris)}
.info .line{font-family:var(--sans);font-size:14px;color:var(--ink);line-height:1.7;font-weight:500}
.map{margin-top:20px;border:1px solid var(--line);border-radius:8px;overflow:hidden;height:320px}
.map iframe{width:100%;height:100%;border:0}

.anim-ready [data-anim]{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}
.anim-ready [data-anim].in{opacity:1;transform:none}
.anim-ready [data-stagger]>*{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s ease}
.anim-ready [data-stagger].in>*{opacity:1;transform:none}
.anim-ready [data-stagger].in>*:nth-child(2){transition-delay:.07s}
.anim-ready [data-stagger].in>*:nth-child(3){transition-delay:.14s}
.anim-ready [data-stagger].in>*:nth-child(4){transition-delay:.21s}
.anim-ready [data-stagger].in>*:nth-child(5){transition-delay:.28s}
@media(prefers-reduced-motion:reduce){.bgfx canvas,.orb{animation:none!important}}

@media(max-width:960px){
  .nav-links{display:none;position:absolute;top:62px;left:0;right:0;background:var(--canvas);border-bottom:1px solid var(--line);flex-direction:column;padding:12px 20px;gap:0;margin:0}
  .nav-inner.open .nav-links{display:flex}
  .nav-inner.open .nav-links a{padding:14px 4px;border-bottom:1px solid var(--line-2)}
  .nav-inner.open .nav-links .m-cta{display:block;border-bottom:0;padding-top:14px}
  .nav-inner.open .nav-links .m-cta .btn{width:100%}
  .nav-right{margin-left:auto}
  .nav-right>.btn-ink{display:none}
  .nav-toggle{display:flex}
  .g3>*{flex:1 1 calc(50% - 10px)}
  .split{gap:34px}
  .section{padding:64px 0}
  .hero{padding:44px 0 56px}
}
@media(max-width:640px){
  .wrap{padding:0 18px}
  .section{padding:52px 0}
  .g2>*,.g3>*{flex:1 1 100%}
  .hero-cta .btn,.bloom .btn,.split .txt .btnrow .btn{width:100%}
  .bloom{padding:40px 22px}
  .nav-inner{gap:12px;padding:12px 16px}
  .brand{font-size:16px;white-space:normal;line-height:1.15}
  .foot-coord{flex-direction:column;align-items:flex-start;gap:10px}
}
