html{overflow-x:hidden}
:root{
color-scheme:dark;
--bg:#050A0B;
--panel:rgba(12,20,22,.72);
--card:rgba(255,255,255,.025);
--soft:rgba(255,255,255,.05);
--text:#E6F2F1;
--muted:#7C949A;
--neon:#33BFC0; --neon-2:#108A80; --mint:#7FF0E4;
--edge:rgba(51,191,192,.16);
--line:rgba(255,255,255,.07);
--grid:rgba(255,255,255,.045);
--shade:rgba(0,0,0,.9);
--bar:rgba(5,10,11,.88);
--logo-fx:invert(1) hue-rotate(180deg) brightness(1.5);
--plate:rgba(255,255,255,.94); --wire:#33BFC0; --wireop:.34;
--chipglow:rgba(51,191,192,.22);
--hand1:#F4FAFA;--hand2:#93B6BA;--handline:rgba(4,32,34,.42);
--dotbg:rgba(255,255,255,.16);
--field:#0B1517;
--h:84px;
--wrap:1240px;
}
html[data-theme="light"]{
color-scheme:light;
--bg:#F3FAFA;
--panel:rgba(255,255,255,.80);
--card:rgba(255,255,255,.72);
--soft:rgba(10,60,62,.05);
--text:#0C2426;
--muted:#587478;
--neon:#0E9CA0; --neon-2:#0B6E68;
--mint:#33BFC0;
--edge:rgba(14,156,160,.22);
--line:rgba(10,60,62,.12);
--grid:rgba(10,60,62,.055);
--shade:rgba(11,60,62,.16);
--bar:rgba(243,250,250,.92);
--logo-fx:none;
--plate:#fff;
--wire:#0E9CA0;
--wireop:.5;
--chipglow:rgba(51,191,192,.20);
--hand1:#FFFFFF;--hand2:#AFCBCE;--handline:rgba(11,60,62,.38);
--dotbg:rgba(10,60,62,.16);
--field:#fff;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:140px}
body{
margin:0;background:var(--bg);color:var(--text);
font-family:"Sora",system-ui,sans-serif;overflow-x:hidden;
transition:background-color .3s ease,color .3s ease;
} body::before{
content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
background:
radial-gradient(760px 420px at 12% -8%, rgba(51,191,192,.20), transparent 68%),
radial-gradient(700px 400px at 88% 2%,  rgba(16,138,128,.22), transparent 68%),
radial-gradient(900px 500px at 50% 46%, rgba(51,191,192,.05), transparent 70%);
}
body::after{
content:"";position:fixed;inset:0;z-index:0;pointer-events:none;
background-image:
linear-gradient(to right,  var(--grid) 1px, transparent 1px),
linear-gradient(to bottom, var(--grid) 1px, transparent 1px);
background-size:72px 72px;
-webkit-mask-image:radial-gradient(ellipse 78% 62% at 50% 30%, #000 35%, transparent 78%);
mask-image:radial-gradient(ellipse 78% 62% at 50% 30%, #000 35%, transparent 78%);
} html[data-theme="light"] body::before{
background:
radial-gradient(760px 420px at 12% -8%, rgba(51,191,192,.14), transparent 68%),
radial-gradient(700px 400px at 88% 2%,  rgba(16,138,128,.09), transparent 68%);
}
main,footer{position:relative;z-index:1}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 26px}
a{color:inherit}
img{max-width:100%;display:block}
h1,h2,h3{margin:0;letter-spacing:-.02em;line-height:1.1}
p{margin:0} .topbar{
position:fixed;top:0;left:0;right:0;z-index:49;
display:flex;justify-content:center;font-size:13px;color:var(--muted);
background:var(--bar);
backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
border-bottom:1px solid var(--soft);
transition:transform .3s cubic-bezier(.2,.8,.25,1),opacity .3s ease;
}
.topbar .in{width:100%;max-width:var(--wrap);display:flex;align-items:center;gap:18px;padding:7px 26px}
.topbar a{color:var(--muted);text-decoration:none}
.topbar a:hover{color:var(--neon)}
.topbar .tag{margin-left:auto;color:rgba(124,148,154,.8)}
body.stuck .topbar{transform:translateY(-100%);opacity:0} .nav{
position:fixed;top:48px;left:0;right:0;z-index:50;
display:flex;justify-content:center;padding:0 16px;
transition:top .3s cubic-bezier(.2,.8,.25,1);
}
body.stuck .nav{top:10px}
.shell{
position:relative;width:100%;max-width:var(--wrap);height:var(--h);
display:flex;align-items:center;gap:22px;padding:0 12px 0 16px;
border-radius:16px;background:var(--panel);
backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);
border:1px solid var(--edge);
box-shadow:0 1px 0 rgba(255,255,255,.06) inset, 0 18px 50px -12px var(--shade);
transition:height .3s cubic-bezier(.2,.8,.25,1), box-shadow .3s ease, border-color .3s ease;
}
body.stuck .shell{
height:64px;border-color:rgba(51,191,192,.30);
box-shadow:0 1px 0 rgba(255,255,255,.06) inset, 0 0 34px -6px rgba(51,191,192,.30), 0 18px 50px -14px var(--shade);
}
.shell::before{
content:"";position:absolute;top:-1px;left:14%;right:14%;height:1px;
background:linear-gradient(90deg,transparent,var(--neon),var(--neon-2),transparent);opacity:.9;
} .logo{display:flex;align-items:center;flex:0 0 auto}
.logo img{height:55px;width:auto;filter:var(--logo-fx);
transition:height .3s cubic-bezier(.2,.8,.25,1),filter .3s ease,opacity .2s ease}
body.stuck .logo img{height:42px}
.logo:hover img{opacity:.85} .links{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:2px}
.links > a,.trigger{
position:relative;z-index:2;display:inline-flex;align-items:center;gap:6px;
padding:9px 14px;border-radius:10px;color:var(--muted);text-decoration:none;
font-size:15px;font-weight:500;transition:color .2s ease;
}
.links a:hover,.links a.on{color:var(--text)}
.links a.on{text-shadow:0 0 14px rgba(51,191,192,.7)}
.pill{
position:absolute;z-index:1;top:0;left:0;height:36px;width:0;opacity:0;border-radius:10px;
background:rgba(51,191,192,.10);border:1px solid rgba(51,191,192,.24);
box-shadow:0 0 20px -6px rgba(51,191,192,.6);
transition:transform .3s cubic-bezier(.2,.8,.25,1),width .3s cubic-bezier(.2,.8,.25,1),opacity .2s ease;
pointer-events:none;
}
.has-sub{position:relative;display:flex;align-items:center} .has-sub .sub{display:none}
.trigger svg{display:none}
.drop small,.drop .kid{display:none}
.trigger svg{transition:transform .25s ease;opacity:.8}
.has-sub:hover .trigger svg,.has-sub:focus-within .trigger svg{transform:rotate(180deg)}
.sub{
position:absolute;top:calc(100% + 14px);left:50%;
width:min(660px,calc(100vw - 28px));padding:10px;
display:grid;grid-template-columns:repeat(2,1fr);
border-radius:16px;background:var(--field);border:1px solid var(--edge);
box-shadow:0 30px 60px -22px var(--shade), 0 0 34px -16px rgba(51,191,192,.5);
opacity:0;visibility:hidden;transform:translate(-50%,-6px);
transition:opacity .2s ease,transform .25s cubic-bezier(.2,.8,.25,1),visibility .2s;
}
.has-sub:hover .sub,.has-sub:focus-within .sub{opacity:1;visibility:visible;transform:translate(-50%,0)}
.sub::before{content:"";position:absolute;top:-14px;left:0;right:0;height:14px} .sub .col{display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0;padding:16px 14px}
.sub .col:nth-child(even){border-left:1px solid var(--line)}
.sub .col:nth-child(n+3){border-top:1px solid var(--line)} .sub b{padding:0 10px 14px;color:var(--neon);
font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
line-height:1.5;min-height:calc(3em + 14px)}
.sub a{display:inline-flex;align-items:center;gap:7px;padding:9px 10px;border-radius:10px;
color:var(--text);text-decoration:none;font-size:14px;font-weight:500;line-height:1.4;
transition:background .2s ease,color .2s ease}
.sub a:hover{background:var(--soft);color:var(--neon)}
.sub a i{font-style:normal;color:var(--neon);opacity:0;transform:translateX(-5px);
transition:opacity .2s ease,transform .2s ease}
.sub a:hover i{opacity:1;transform:translateX(0)}
.right{margin-left:auto;display:flex;align-items:center;gap:8px} .tgl{
position:fixed;right:22px;bottom:82px;z-index:60;
display:grid;place-items:center;width:48px;height:48px;padding:0;cursor:pointer;font-size:15px;
color:var(--neon);background:var(--panel);border:1px solid var(--edge);border-radius:50%;
backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);
box-shadow:0 14px 34px -14px var(--shade), 0 0 24px -10px rgba(51,191,192,.8);
transition:transform .18s ease,color .2s ease,border-color .2s ease,box-shadow .2s ease;
}
.tgl:hover{transform:translateY(-2px);border-color:rgba(51,191,192,.5);
box-shadow:0 18px 40px -16px var(--shade), 0 0 32px -6px rgba(51,191,192,.95)}
.tgl:active{transform:translateY(0)} .tgl.top{bottom:22px;opacity:0;pointer-events:none;transform:translateY(8px) scale(.9)}
body.scrolled .tgl.top{opacity:1;pointer-events:auto;transform:none}
body.scrolled .tgl.top:hover{transform:translateY(-2px)}
.tgl .sun{display:none}
html[data-theme="light"] .tgl .sun{display:block}
html[data-theme="light"] .tgl .moon{display:none}
.cta{
font:inherit;font-size:15px;font-weight:600;color:#03211F;text-decoration:none;white-space:nowrap;
padding:11px 18px;border-radius:10px;border:0;cursor:pointer;display:inline-block;
background:linear-gradient(180deg,#7FF0E4,#28B7B8);
box-shadow:0 0 0 1px rgba(255,255,255,.25) inset, 0 0 22px -4px rgba(51,191,192,.8);
transition:transform .16s ease, box-shadow .22s ease;
}
.cta:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(255,255,255,.35) inset, 0 0 34px -2px rgba(51,191,192,1)}
.burger{display:none;background:var(--soft);border:1px solid var(--line);
border-radius:10px;width:40px;height:40px;cursor:pointer;padding:0}
.burger i{display:block;width:16px;height:1.5px;background:var(--text);margin:3.5px auto;border-radius:999px;
transition:transform .25s ease,opacity .2s ease}
.burger[aria-expanded="true"] i:nth-child(1){transform:translateY(5px) rotate(45deg)}
.burger[aria-expanded="true"] i:nth-child(2){opacity:0}
.burger[aria-expanded="true"] i:nth-child(3){transform:translateY(-5px) rotate(-45deg)}
.drop{
position:absolute;top:calc(100% + 10px);left:0;right:0;border-radius:16px;padding:10px;
background:var(--field);
border:1px solid var(--edge);box-shadow:0 22px 50px -16px var(--shade);
display:none;flex-direction:column;gap:2px;max-height:calc(100vh - 130px);overflow:auto;
}
.drop[data-open]{display:flex}
.drop a{color:var(--text);text-decoration:none;font-size:15px;font-weight:500;padding:10px 14px;border-radius:10px}
.drop a:hover{background:rgba(51,191,192,.10)}
.drop small{color:var(--muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:10px 14px 4px}
.drop .kid{padding:8px 14px 8px 24px;font-size:14px;color:var(--muted);position:relative}
.drop .kid::before{content:"";position:absolute;left:14px;top:calc(50% - 2px);width:4px;height:4px;
border-radius:50%;background:var(--neon);opacity:.6}
.drop .cta{margin-top:10px;text-align:center;padding:13px 18px;font-size:15px;color:#03211F;font-weight:600} .hero{position:relative;overflow:hidden;padding:164px 0 32px} .hero::after{
content:"";position:absolute;inset:0;z-index:0;pointer-events:none;border-radius:inherit;
background:radial-gradient(460px circle at var(--mx,72%) var(--my,26%), rgba(51,191,192,.13), transparent 62%);
opacity:0;transition:opacity .45s ease;
}
.hero:hover::after{opacity:1}
.hero .grid{position:relative;z-index:1;display:grid;grid-template-columns:1.12fr .88fr;gap:48px;align-items:center}
.badge{
display:inline-flex;align-items:center;gap:9px;padding:8px 15px;border-radius:999px;
background:rgba(51,191,192,.08);border:1px solid rgba(51,191,192,.25);
font-size:13px;color:var(--text);
}
.badge s{width:7px;height:7px;border-radius:50%;background:var(--neon);text-decoration:none;
box-shadow:0 0 12px var(--neon);animation:blip 2s ease-in-out infinite}
@keyframes blip{50%{opacity:.35}} .hero h1{font-size:clamp(32px,3.6vw,46px);font-weight:700;line-height:1.18;margin:24px 0 22px}
.hero h1 .l{display:block;overflow:hidden;padding-bottom:.09em;margin-bottom:-.09em}
.hero h1 .l > span{display:block;animation:lift .95s cubic-bezier(.19,1,.22,1) both}
@keyframes lift{from{transform:translateY(104%);filter:blur(10px);opacity:0}}
.d1{animation-delay:.04s}.d2{animation-delay:.15s}.d3{animation-delay:.26s}
.d4{animation-delay:.42s}.d5{animation-delay:.52s}.d6{animation-delay:.62s}
.fade-up{animation:lift2 .9s cubic-bezier(.19,1,.22,1) both}
@keyframes lift2{from{transform:translateY(14px);opacity:0}} .roll{display:inline-block;height:1.2em;overflow:hidden;vertical-align:bottom;
transition:width .55s cubic-bezier(.76,0,.24,1)}
.rollin{display:flex;flex-direction:column}
.rollin i{font-style:normal;line-height:1.2;
background:linear-gradient(100deg,var(--mint),var(--neon) 45%,var(--neon-2));
-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{color:var(--muted);font-size:18px;line-height:1.65;max-width:520px}
.btns{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}
.btn2{
display:inline-block;padding:11px 20px;border-radius:10px;text-decoration:none;
font-size:15px;font-weight:600;color:var(--text);
background:var(--soft);border:1px solid var(--line);
transition:border-color .2s ease,background .2s ease;
}
.btn2:hover{border-color:rgba(51,191,192,.45);background:rgba(51,191,192,.08)} .orbit{
--sz:min(520px,92vw);--cx:40%;--cy:42%;--r:calc(var(--sz)*.26);
position:relative;width:var(--sz);height:var(--sz);margin-inline:auto;
transform:translate(calc(var(--px,0)*14px),calc(var(--py,0)*14px));
transition:transform .45s cubic-bezier(.2,.8,.25,1);
}
.orbit::before{
content:"";position:absolute;left:var(--cx);top:var(--cy);width:54%;aspect-ratio:1;
transform:translate(-50%,-50%);border-radius:50%;
background:radial-gradient(circle,rgba(51,191,192,.30),transparent 70%);
filter:blur(30px);animation:pulse 6s ease-in-out infinite;
}
@keyframes pulse{50%{opacity:.5}}
@keyframes spin{to{transform:rotate(360deg)}}
.rings{position:absolute;inset:0;width:100%;height:100%}
.rings *{fill:none;stroke:var(--wire);vector-effect:non-scaling-stroke}
.rings .path{stroke-width:1;opacity:calc(var(--wireop)*.9)}
.rings .dash{stroke-width:1;opacity:calc(var(--wireop)*.7);stroke-dasharray:2 11}  .hub{position:absolute;left:var(--cx);top:var(--cy);width:calc(var(--sz)*.163);aspect-ratio:1;z-index:2;
display:grid;place-items:center;border-radius:6px;
background:radial-gradient(circle at 50% 40%, var(--chipglow), transparent 72%);
animation:hubfloat 9s ease-in-out infinite}
@keyframes hubfloat{
0%,100%{transform:translate(-50%,-50%)}
50%{transform:translate(-50%,calc(-50% - 10px))}
}
.hub-in{position:relative;display:grid;place-items:center;gap:3px;text-align:center;padding:2px;
width:100%;overflow:hidden}
.hub-in > *{transition:opacity .28s ease,transform .28s cubic-bezier(.2,.8,.25,1)}
.hub-in.out > *{opacity:0;transform:translateY(-10px)}
.hub-ico svg{width:calc(var(--sz)*.042);height:calc(var(--sz)*.042);stroke:var(--neon);fill:none;
stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.hub-name{font-size:min(12px,calc(var(--sz)*.024));font-weight:600;letter-spacing:-.01em;line-height:1.15;max-width:94%} .ring{position:absolute;left:var(--cx);top:var(--cy);width:0;height:0;list-style:none;margin:0;padding:0;z-index:1}
.ring li{position:absolute;top:0;left:0;
transform:rotate(var(--a)) translate(var(--r)) rotate(calc(-1 * var(--a))) translate(-50%,-50%)}
.ring b{
display:grid;place-items:center;width:48px;height:48px;border-radius:16px;
background:var(--panel);border:1px solid var(--edge);
backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
box-shadow:0 16px 34px -20px var(--shade);
transition:border-color .4s ease,box-shadow .4s ease;
}
.ring b svg{width:21px;height:21px;stroke:var(--text);opacity:.75;fill:none;
stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;transition:stroke .4s ease}
.ring li.on b{border-color:rgba(51,191,192,.65);
box-shadow:0 0 30px -6px var(--neon), 0 16px 34px -20px var(--shade)}
.ring li.on b svg{stroke:var(--neon);opacity:1}  .hand{position:absolute;left:27.4%;top:19.4%;width:105%;height:auto;z-index:3;
pointer-events:none;max-width:none;
filter:drop-shadow(0 26px 34px rgba(6,40,42,.28));
animation:handfloat 8s ease-in-out infinite}
@keyframes handfloat{50%{transform:translate(-6px,-12px) rotate(-1.2deg)}} .trust{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;margin:30px 0 0;padding:0;
color:var(--muted);font-size:14px}
.trust li{display:flex;align-items:center;gap:8px}
.trust li::before{content:"";width:5px;height:5px;border-radius:50%;
background:var(--neon);box-shadow:0 0 8px var(--neon)} .clients{padding:28px 0 10px;text-align:center}
.clients .kicker{color:var(--neon);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}
.track{margin-top:26px;overflow:hidden;
mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.track ul{display:flex;gap:18px;list-style:none;margin:0;padding:6px 0 14px;width:max-content;
animation:slide 92s linear infinite}
.track:hover ul{animation-play-state:paused}
.track li{
flex:0 0 auto;width:176px;height:112px;display:grid;place-items:center;padding:11px;
border-radius:16px;background:var(--plate);border:1px solid var(--line);
box-shadow:0 14px 30px -22px var(--shade);
transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
}
.track li:hover{transform:translateY(-4px);border-color:rgba(51,191,192,.4);
box-shadow:0 20px 40px -24px var(--shade), 0 0 28px -16px var(--neon)}
.track img{max-height:88px;max-width:100%;width:auto;height:auto;object-fit:contain}
.track li a{display:grid;place-items:center;width:100%;height:100%} .track .cname{color:var(--muted);font-size:14px;font-weight:600;text-align:center;line-height:1.3}
@keyframes slide{to{transform:translateX(-50%)}}  .cflow{--w:min(560px,74vw);position:relative;overflow:hidden;padding-block:34px 2px;margin-top:24px}
.cflow-track{
position:relative;height:calc(var(--w) / 1.6);perspective:1400px;
touch-action:pan-y;cursor:grab;outline:none;
}
.cflow-track.drag{cursor:grabbing}
.cflow-track.drag .cslide{transition:none}
.cslide{
position:absolute;top:0;left:50%;width:var(--w);margin:0 0 0 calc(var(--w) / -2);
border-radius:16px;overflow:hidden;background:var(--soft);border:1px solid var(--line);
box-shadow:0 26px 60px -34px var(--shade);cursor:pointer;
transition:transform .55s cubic-bezier(.22,.7,.28,1),opacity .45s ease,
border-color .3s ease,box-shadow .3s ease;
will-change:transform;
} .cslide.is-active{cursor:default;border-color:rgba(51,191,192,.42);
box-shadow:0 34px 76px -34px var(--shade), 0 0 52px -20px var(--neon)}
.cslide img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;
object-position:top center;pointer-events:none;user-select:none}
.cslide figcaption{
position:absolute;inset:auto 0 0 0;display:flex;align-items:baseline;gap:12px;padding:20px 16px 14px;
background:linear-gradient(0deg,rgba(3,14,15,.94),rgba(3,14,15,.55) 60%,transparent);
}
.cslide figcaption b{color:#EAF7F6;font-size:16px;font-weight:600;letter-spacing:-.01em;
min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cslide figcaption span{flex:0 0 auto;margin-left:auto;color:var(--neon);font-size:13px;
font-weight:500;white-space:nowrap}
.cflow-nav{
position:absolute;top:calc(34px + (var(--w) / 1.6) / 2);transform:translateY(-50%);z-index:5;
width:48px;height:48px;padding:0;border-radius:50%;cursor:pointer;
display:grid;place-items:center;font-size:15px;line-height:1; color:var(--neon);background:var(--panel);border:1px solid var(--edge);
backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);
box-shadow:0 14px 34px -14px var(--shade), 0 0 24px -10px rgba(51,191,192,.8);
transition:border-color .25s ease,transform .25s ease}
.cflow-nav:hover{border-color:rgba(51,191,192,.5);transform:translateY(-50%) scale(1.06)}
.cflow-nav.prev{left:max(16px,calc(50% - var(--w) / 2 - 60px))}
.cflow-nav.next{right:max(16px,calc(50% - var(--w) / 2 - 60px))}
.cflow-dots{display:flex;justify-content:center;gap:9px;margin-top:22px}
.cflow-dots button{width:7px;height:7px;padding:0;border:0;border-radius:50%;cursor:pointer;
background:var(--line);transition:background .25s ease,width .25s ease}
.cflow-dots button.active{width:22px;border-radius:999px;background:var(--neon)}
@media (max-width:700px){
.cflow{--w:min(440px,84vw)}
.cflow-nav{display:none}
} section{scroll-margin-top:110px}
.sec{padding:66px 0}
.sec-head{max-width:640px;margin-bottom:32px}
.sec-head.mid{margin-left:auto;margin-right:auto;text-align:center}
.sec-head.mid em{font-style:normal;color:var(--neon)}
.sec-cta{margin-top:34px;text-align:center}
.kicker{display:inline-block;color:var(--neon);font-size:13px;letter-spacing:.16em;text-transform:uppercase;margin-bottom:14px}
.sec-head h2{font-size:clamp(28px,3.6vw,40px);font-weight:700}
.sec-head p{color:var(--muted);font-size:16px;line-height:1.65;margin-top:16px} .about{display:grid;grid-template-columns:1.05fr .95fr;gap:56px;align-items:start}
.about h2{font-size:clamp(28px,3.6vw,40px);font-weight:600;line-height:1.24;margin-top:12px}
.about-body p{color:var(--muted);font-size:16px;line-height:1.75}
.about-body p + p{margin-top:22px}
.pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:34px;list-style:none;
margin:58px 0 0;padding:34px 0 0;border-top:1px solid var(--line)}
.pillars .top{display:flex;align-items:center;justify-content:space-between;color:var(--neon)}
.pillars .top em{font-style:normal;color:var(--muted);font-size:12px;letter-spacing:.1em}
.pillars b{display:block;margin:18px 0 10px;font-size:16px;font-weight:600}
.pillars p{color:var(--muted);font-size:15px;line-height:1.6} .tl{position:relative;list-style:none;margin:0;padding:0;display:grid;gap:22px}
.tl::before,.tl::after{content:"";position:absolute;left:50%;top:8px;width:2px;
transform:translateX(-50%);border-radius:999px}
.tl::before{bottom:8px;background:var(--line)} .tl::after{height:calc(var(--p,0) * (100% - 16px));
background:linear-gradient(180deg,var(--mint),var(--neon) 40%,var(--neon-2));
box-shadow:0 0 18px -2px var(--neon)}
.tl li{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:64px;
opacity:0;transform:translateY(20px);
transition:opacity .6s ease,transform .6s cubic-bezier(.2,.8,.25,1)}
.tl li.in{opacity:1;transform:none}
.tl li::before{content:"";position:absolute;left:50%;top:30px;z-index:1;
width:14px;height:14px;border-radius:50%;transform:translateX(-50%);
background:var(--bg);border:2px solid var(--line);transition:all .45s ease .1s}
.tl li.in::before{border-color:var(--neon);background:var(--neon);
box-shadow:0 0 0 5px rgba(51,191,192,.12), 0 0 18px -1px var(--neon)}
.tl li > article{grid-column:1;text-align:right}
.tl li:nth-child(even) > article{grid-column:2;text-align:left}
.tl article{padding:24px 26px;border-radius:16px;background:var(--card);border:1px solid var(--line);
transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}
.tl article:hover{border-color:rgba(51,191,192,.35);transform:translateY(-3px);
box-shadow:0 24px 60px -34px var(--shade), 0 0 40px -28px var(--neon)}
.tl em{font-style:normal;font-size:12px;letter-spacing:.14em;color:var(--neon)}
.tl h3{margin:10px 0 9px;font-size:18px;font-weight:600}
.tl p{color:var(--muted);font-size:15px;line-height:1.6}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px} .quote{
position:relative;border-radius:16px;padding:34px;background:var(--panel);
border:1px solid var(--line);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
box-shadow:0 30px 70px -34px var(--shade);
}
.quote .mark{font-size:58px;line-height:1;color:var(--neon);opacity:.35}
.quote p{font-size:clamp(16px,2vw,19px);line-height:1.7;margin:14px 0 28px;min-height:120px}
.who{display:flex;align-items:center;gap:14px}
.who img{width:48px;height:48px;border-radius:50%;object-fit:cover;border:1px solid rgba(51,191,192,.4)}
.who b{display:block;font-size:15px;font-weight:600}
.who span{color:var(--muted);font-size:14px}
.dots{display:flex;gap:9px;margin-top:26px;justify-content:center}
.dot{width:8px;height:8px;border-radius:50%;background:var(--dotbg);border:0;padding:0;cursor:pointer;
transition:background .25s ease,box-shadow .25s ease,width .25s ease}
.dot.active{width:24px;border-radius:999px;background:var(--neon);box-shadow:0 0 12px var(--neon)} .contact{display:grid;grid-template-columns:1fr 1.1fr;gap:24px}
.info{display:grid;gap:14px;align-content:start}
.row{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:16px;
background:var(--card);border:1px solid var(--line)}
.row .ico{flex:0 0 auto;width:36px;height:36px;font-size:16px}
.row .ico svg{width:17px;height:17px;fill:var(--neon)}
.row b{display:block;font-size:15px;font-weight:600;margin-bottom:4px}
.row p,.row a{color:var(--muted);font-size:14px;line-height:1.55;text-decoration:none}
.row a:hover{color:var(--neon)}
form{padding:26px;border-radius:16px;background:var(--card);border:1px solid var(--line);display:grid;gap:14px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
label{display:block;font-size:13px;color:var(--muted);margin-bottom:7px}
input,select,textarea{
width:100%;font:inherit;font-size:15px;color:var(--text);
background:var(--soft);border:1px solid var(--line);border-radius:10px;padding:12px 14px;
transition:border-color .2s ease,box-shadow .2s ease;
}
input:focus,select:focus,textarea:focus{outline:0;border-color:rgba(51,191,192,.55);
box-shadow:0 0 0 3px rgba(51,191,192,.12)}
select option{background:var(--field)}
textarea{resize:vertical;min-height:120px}
.sent{color:var(--neon);font-size:14px;display:none}
.sent[data-show]{display:block} footer{position:relative;overflow:hidden;border-top:1px solid var(--line);
padding:20px 0 18px;margin-top:40px}
.foot-arcs{position:absolute;z-index:0;right:-120px;top:-120px;width:420px;height:420px;pointer-events:none;
background:
repeating-radial-gradient(circle at 100% 0%, rgba(51,191,192,.34) 0 1px, transparent 1px 34px),
radial-gradient(circle at 100% 0%, rgba(51,191,192,.14), transparent 66%);
-webkit-mask-image:radial-gradient(circle at 100% 0%, #000 34%, transparent 78%);
mask-image:radial-gradient(circle at 100% 0%, #000 34%, transparent 78%)} .foot-mark{display:block;width:100%;height:auto;user-select:none}
.foot-note{position:relative;z-index:1;margin:0;padding:0 26px 26px;text-align:center;
color:var(--muted);font-size:13px} body.nav-open .tgl{opacity:0;pointer-events:none} .fade{opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.2,.8,.25,1)}
.fade.in{opacity:1;transform:none}
a:focus-visible,button:focus-visible{outline:2px solid var(--neon);outline-offset:3px}
@media (prefers-reduced-motion:reduce){*{transition-duration:.01ms !important;animation:none !important}
.fade{opacity:1;transform:none}}
@media (max-width:1100px){
.links{display:none}
.burger{display:block}
.shell{gap:0;padding-right:8px}
.hero .grid,.contact,.about{grid-template-columns:1fr}
.pillars{grid-template-columns:1fr 1fr}
.tl li{grid-template-columns:1fr;gap:0;padding-left:38px}
.tl li > article,.tl li:nth-child(even) > article{grid-column:1;text-align:left}
.tl::before,.tl::after{left:7px}
.tl li::before{left:7px}
.hero{padding:140px 0 32px}
.cards{grid-template-columns:1fr 1fr}
.orbit{--sz:min(440px,86vw)}
}
@media (max-width:640px){
.cards,.two,.pillars{grid-template-columns:1fr}
footer{padding:16px 0 14px}
.ring b{width:40px;height:40px;border-radius:10px}
.ring b svg{width:18px;height:18px}
.quote{padding:24px}
.sec{padding:50px 0}
.right .cta{display:none}
.topbar .tag{display:none}
.topbar .in{justify-content:center;padding:7px 18px}
.orbit{--sz:min(360px,88vw)}
}
@media (max-width:480px){
.hero{padding:146px 0 24px}
.btns{flex-direction:column;align-items:stretch}
.btns .cta,.btns .btn2{text-align:center}
.topbar a{font-size:12px}
.topbar .in{gap:12px}
} .svc-top{display:flex;align-items:stretch;justify-content:space-between;gap:40px;margin-bottom:30px}
.svc-top .sec-head{margin-bottom:0}
.rail-top{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;
gap:26px;flex:0 0 auto;padding-top:8px}
.disc{display:inline-flex;align-items:center;gap:10px}
.disc i{font-style:normal;transition:transform .25s cubic-bezier(.2,.8,.25,1)}
.disc:hover i{transform:translateX(4px)}
.arrows{display:flex;gap:9px}
.arrows button{
width:48px;height:48px;padding:0;border-radius:50%;cursor:pointer;font-size:15px; color:var(--neon);background:var(--panel);border:1px solid var(--edge);
backdrop-filter:blur(14px) saturate(160%);-webkit-backdrop-filter:blur(14px) saturate(160%);
box-shadow:0 14px 34px -14px var(--shade), 0 0 24px -10px rgba(51,191,192,.8);
transition:border-color .2s ease,color .2s ease,opacity .2s ease,transform .16s ease;
}
.arrows button:hover:not(:disabled){border-color:rgba(51,191,192,.5);color:var(--neon);transform:translateY(-2px)}
.arrows button:disabled{opacity:.3;cursor:default}
.rail{
display:grid;grid-auto-flow:column;grid-auto-columns:min(420px,82vw);gap:18px;
overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;
padding:4px max(26px,(100vw - var(--wrap))/2 + 26px) 6px;
scroll-padding-left:max(26px,(100vw - var(--wrap))/2 + 26px);
}
.rail::-webkit-scrollbar{display:none}
.rail:focus-visible{outline:2px solid var(--neon);outline-offset:4px;border-radius:16px}
.scard{
scroll-snap-align:start;position:relative;isolation:isolate;overflow:hidden;
min-height:330px;padding:24px 24px 20px;border-radius:16px;text-decoration:none;color:inherit;
display:flex;flex-direction:column;align-items:flex-start;
background:var(--card);border:1px solid var(--line);
transition:transform .3s cubic-bezier(.2,.8,.25,1),border-color .3s ease,box-shadow .3s ease;
}
.scard::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;z-index:2;
background:linear-gradient(90deg,transparent,var(--neon),transparent);
transform:scaleX(.3);opacity:.4;transition:transform .45s cubic-bezier(.2,.8,.25,1),opacity .3s ease}
.scard:hover{transform:translateY(-5px);border-color:rgba(51,191,192,.38);
box-shadow:0 34px 80px -40px var(--shade), 0 0 50px -28px rgba(51,191,192,.9)}
.scard:hover::before{transform:scaleX(1);opacity:1}
.scard > :not(.art){position:relative;z-index:1}
.scard .tag{display:inline-flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.1em;
text-transform:uppercase;color:var(--muted)}
.scard .tag em{font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;font-style:normal;
color:var(--neon);border:1px solid rgba(51,191,192,.3);border-radius:6px;padding:5px 6px}
.scard h3{font-size:24px;font-weight:600;line-height:1.18;margin:18px 0 11px}
.scard > p{color:var(--muted);font-size:14px;line-height:1.65;margin:0;min-height:46px}
.scard ul{list-style:none;width:100%;margin:18px 0 0;padding:0;
border-top:1px solid var(--line)}
.scard li{display:flex;align-items:center;gap:11px;font-size:14px;
padding:12px 2px;border-bottom:1px solid var(--line);
transition:color .2s ease,transform .25s cubic-bezier(.2,.8,.25,1)}
.scard li::before{content:"";flex:0 0 auto;width:5px;height:5px;border-radius:50%;
background:var(--neon);box-shadow:0 0 8px var(--neon);opacity:.8;transition:transform .25s ease}
.scard:hover li{transform:translateX(3px)}
.scard .more{margin-top:auto;padding-top:24px;font-size:13px;font-weight:600;letter-spacing:.09em;
text-transform:uppercase;display:inline-flex;align-items:center;gap:9px}
.scard .more i{font-style:normal;color:var(--neon);transition:transform .25s cubic-bezier(.2,.8,.25,1)}
.scard:hover .more i{transform:translateX(5px)} .scard .art{
position:absolute;z-index:0;right:-96px;bottom:-96px;width:330px;height:330px;pointer-events:none;
background:
repeating-radial-gradient(circle at 100% 100%, rgba(51,191,192,.42) 0 1px, transparent 1px 30px),
radial-gradient(circle at 100% 100%, rgba(51,191,192,.20), transparent 68%);
-webkit-mask-image:radial-gradient(circle at 100% 100%, #000 38%, transparent 80%);
mask-image:radial-gradient(circle at 100% 100%, #000 38%, transparent 80%);
transition:transform .55s cubic-bezier(.2,.8,.25,1),opacity .35s ease;
}
.scard:hover .art{transform:scale(1.14)}
html[data-theme="light"] .scard .art{opacity:.85} .page-head{padding:132px 0 0;position:relative}
.page-head .wrap{max-width:860px;text-align:center}
.page-head h1{font-size:clamp(30px,5vw,50px);line-height:1.12;margin:20px 0 18px;font-weight:700}
.page-head p{color:var(--muted);font-size:16px;line-height:1.7;max-width:620px;margin:0 auto}
.cat + .cat{margin-top:46px}
.cat-head{display:flex;align-items:baseline;gap:16px;margin:0 0 24px;
padding-bottom:16px;border-bottom:1px solid var(--line)}
.cat-n{font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--neon);
border:1px solid rgba(51,191,192,.3);border-radius:6px;padding:6px 7px}
.cat-head h2{font-size:24px;font-weight:600;margin:0}
.cat-head p{color:var(--muted);font-size:14px;margin:0 0 0 auto;text-align:right}
.cards .scard,.cat{scroll-margin-top:130px}  .wcat + .wcat{margin-top:56px}
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:22px 20px}
.tile{margin:0}
.tile img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top center;
border-radius:16px;border:1px solid var(--line);background:var(--soft);
transition:transform .5s cubic-bezier(.2,.8,.25,1),border-color .3s ease,box-shadow .3s ease}
.tile:hover img{transform:translateY(-4px);border-color:rgba(51,191,192,.4);
box-shadow:0 30px 60px -34px var(--shade), 0 0 40px -26px rgba(51,191,192,.85)}
.tile figcaption{display:flex;align-items:baseline;gap:12px;padding:13px 2px 0}
.tile figcaption b{font-size:15px;font-weight:600}
.tile figcaption span{margin-left:auto;color:var(--muted);font-size:12px;letter-spacing:.06em;
text-transform:uppercase;white-space:nowrap} .tile[data-empty]::before{content:attr(data-label);display:grid;place-items:center;
aspect-ratio:16/10;border-radius:16px;border:1px dashed var(--line);background:var(--soft);
color:var(--muted);font-size:13px}
.band{display:flex;align-items:center;gap:32px;flex-wrap:wrap;position:relative;overflow:hidden;
padding:32px;border-radius:16px;background:var(--card);border:1px solid var(--line)}
.band::before{content:"";position:absolute;inset:0;pointer-events:none;
background:repeating-radial-gradient(circle at 100% 0%, rgba(51,191,192,.35) 0 1px, transparent 1px 34px);
-webkit-mask-image:radial-gradient(circle at 100% 0%, #000 10%, transparent 55%);
mask-image:radial-gradient(circle at 100% 0%, #000 10%, transparent 55%)}
.band > div{flex:1 1 320px;position:relative}
.band h2{font-size:24px;font-weight:600;margin:0 0 10px}
.band p{color:var(--muted);font-size:15px;line-height:1.65;margin:0;max-width:52ch}
.band .cta{position:relative}
.band-sec{padding-top:0}
@media (max-width:900px){
.cards{grid-template-columns:1fr 1fr}
.svc-top{display:block}
.svc-top .sec-head{margin-bottom:22px}
.rail-top{flex-direction:row-reverse;align-items:center;justify-content:flex-end;
gap:18px;padding:0 0 26px}
.rail-top .disc{margin-right:auto}
}
@media (max-width:1000px){
.tiles{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
}
@media (max-width:560px){
.tiles{grid-template-columns:1fr}
}
@media (max-width:640px){
.scard{min-height:340px;padding:22px}
.cards{grid-template-columns:1fr}
.band{padding:28px}
.disc{font-size:13px;padding:10px 15px}
.rail-top{flex-direction:column;align-items:stretch;gap:14px;padding:0 0 22px}
.rail-top .disc{margin:0;justify-content:center}
.rail-top .arrows{align-self:flex-end}
.page-head{padding:148px 0 0}
.cat-head{flex-wrap:wrap;gap:12px}
.cat-head h2{flex:1 1 0;min-width:0;font-size:20px}
.cat-head p{margin:6px 0 0;text-align:left;width:100%}
} .entry{max-width:760px;color:var(--muted);font-size:16px;line-height:1.75}
.entry h1,.entry h2,.entry h3,.entry h4{color:var(--text);font-weight:600;line-height:1.25;margin:1.6em 0 .5em}
.entry h1{font-size:32px}
.entry h2{font-size:26px}
.entry h3{font-size:20px}
.entry p,.entry ul,.entry ol,.entry blockquote,.entry figure,.entry table{margin:0 0 1.15em}
.entry a{color:var(--neon)}
.entry ul,.entry ol{padding-left:20px}
.entry li{margin-bottom:.45em}
.entry img{max-width:100%;height:auto;border-radius:16px}
.entry blockquote{border-left:2px solid var(--neon);padding-left:18px;color:var(--text)}
.entry code,.entry pre{background:var(--soft);border:1px solid var(--line);border-radius:6px}
.entry code{padding:2px 6px;font-size:14px}
.entry pre{padding:16px;overflow:auto}
.entry table{width:100%;border-collapse:collapse}
.entry th,.entry td{border:1px solid var(--line);padding:10px 12px;text-align:left}
.entry .alignwide,.entry .alignfull{max-width:none}
.entry .aligncenter{margin-inline:auto;display:block}
.nav-links{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:30px}
.nav-links a,.nav-links .current{padding:9px 15px;border-radius:10px;border:1px solid var(--line);
color:var(--muted);text-decoration:none;font-size:14px}
.nav-links a:hover{color:var(--neon);border-color:rgba(51,191,192,.45)}
.nav-links .current{color:var(--text);background:var(--soft)}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);
clip-path:inset(50%);white-space:nowrap}
.skip-link:focus{left:16px;top:16px;z-index:100000;width:auto;height:auto;clip:auto;clip-path:none;
padding:12px 18px;background:var(--panel);border:1px solid var(--edge);border-radius:10px;color:var(--text)} body.admin-bar .topbar{top:32px}
body.admin-bar .nav{top:80px}
body.admin-bar.stuck .nav{top:42px}
@media (max-width:782px){
body.admin-bar .topbar{top:46px}
body.admin-bar .nav{top:94px}
body.admin-bar.stuck .nav{top:56px}
}