@font-face{font-family:Unbounded;src:url('/fonts/Unbounded/Unbounded-VariableFont_wght.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Onest;src:url('/fonts/Onest/Onest-VariableFont_wght.ttf') format('truetype');font-weight:100 900;font-display:swap}
@font-face{font-family:Space Grotesk;src:url('/fonts/Space_Grotesk/SpaceGrotesk-VariableFont_wght.ttf') format('truetype');font-weight:300 700;font-display:swap}
@font-face{font-family:IBM Plex Mono;src:url('/fonts/IBM_Plex_Mono/IBMPlexMono-SemiBold.ttf') format('truetype');font-weight:600;font-display:swap}
@property --ring-progress{syntax:'<percentage>';inherits:false;initial-value:0%}

:root{
  --bg:#090b0a;--band:#10180d;--surface:#141a16;--surface-2:#1b211d;--surface-3:#202922;
  --border:#2a332d;--text:#f5f7f5;--muted:#9da79f;--muted-2:#68736b;--acid:#b7ff3c;--lime:#b7ff3c;
  --blue:#75a8ff;--mint:#49d697;--purple:#a985ff;--amber:#ffb84d;--rose:#ff6678;
  --content:1240px;--frame:1280px;--header:88px;--radius:16px;--ease:cubic-bezier(.2,.8,.2,1)
}

*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:smooth}
body{margin:0;min-width:1180px;background:var(--bg);color:var(--text);font-family:Onest,Arial,sans-serif;line-height:1.45;overflow-x:hidden}
button,input,textarea,select{font:inherit}
button,a{color:inherit}
a{text-decoration:none}
img{display:block;max-width:100%}
[hidden]{display:none!important}
h1,h2,h3,p{margin-top:0}
h1,h2,h3{font-family:Unbounded,Arial,sans-serif;letter-spacing:0}
h1{font-size:64px;line-height:1.08;margin-bottom:28px;font-weight:700}
h2{font-size:42px;line-height:1.14;margin-bottom:24px;font-weight:650}
h3{font-size:20px;line-height:1.28;margin-bottom:16px;font-weight:650}
p{color:var(--muted);font-size:16px}
em{font-style:normal;color:var(--acid)}

#app{opacity:1;transition:opacity .22s ease}
#app.is-changing{opacity:.25}
.section-inner{width:var(--content);margin:0 auto;position:relative}
.header-inner,.footer-inner{width:var(--frame);margin:0 auto;position:relative}
.full-bleed{width:100vw;margin-left:calc(50% - 50vw)}
.section{padding:84px 0;background:var(--bg)}
.section.compact-top{padding-top:28px}
.section-lead{max-width:760px;margin-bottom:38px}

.tone-lime{--tone:var(--lime)}.tone-blue{--tone:var(--blue)}.tone-mint{--tone:var(--mint)}
.tone-purple{--tone:var(--purple)}.tone-amber{--tone:var(--amber)}.tone-rose{--tone:var(--rose)}

.color-theme-lime{--theme-accent:#b7ff3c;--theme-primary:#253518;--theme-dark:#161d12;--theme-card:#1b211d;--theme-border:#2a332d;--theme-darkest:#141816;--theme-band:#10180d}
.color-theme-blue{--theme-accent:#75a8ff;--theme-primary:#181d35;--theme-dark:#12161d;--theme-card:#1b1d21;--theme-border:#2a2f38;--theme-darkest:#141518;--theme-band:#0d1118}
.color-theme-purple{--theme-accent:#a985ff;--theme-primary:#261835;--theme-dark:#15121d;--theme-card:#1d1b21;--theme-border:#302a38;--theme-darkest:#151418;--theme-band:#120d18}
.color-theme-amber{--theme-accent:#ffb84d;--theme-primary:#352f18;--theme-dark:#1d1912;--theme-card:#211f1b;--theme-border:#383128;--theme-darkest:#181614;--theme-band:#18140d}
.color-theme-rose{--theme-accent:#ff6678;--theme-primary:#35181e;--theme-dark:#1d1215;--theme-card:#211b1d;--theme-border:#382a2e;--theme-darkest:#181416;--theme-band:#180d10}
.color-theme{--acid:var(--theme-accent);--surface:var(--theme-card);--surface-2:var(--theme-dark);--border:var(--theme-border);--band:var(--theme-band)}

.site-header{height:var(--header);position:sticky;top:0;z-index:50;background:rgba(9,11,10,.87);border-bottom:1px solid var(--border);backdrop-filter:blur(16px)}
.site-header-home{background:rgba(9,11,10,.34)}
.header-inner{height:100%;display:flex;align-items:center;gap:36px}
.brand{position:relative;width:max-content;min-width:346px;height:64px;overflow:hidden;isolation:isolate}
.brand-layer{height:64px;display:flex;align-items:center;gap:10px}
.brand-mark{width:64px;height:64px;flex:none;background:#b7ff3c;mask:url('/svgs/logo.svg') center/contain no-repeat;-webkit-mask:url('/svgs/logo.svg') center/contain no-repeat}
.brand-copy{display:flex;flex-direction:column;line-height:1}
.brand-copy strong{color:var(--text);font:700 20px/1.15 'Space Grotesk',sans-serif}
.brand-copy small{margin-top:5px;color:#adadad;font-size:13px;font-weight:650}
.brand-layer-fill{position:absolute;inset:0;pointer-events:none;clip-path:circle(0 at var(--pointer-x,50%) var(--pointer-y,50%));transition:clip-path .58s var(--ease)}
.brand-layer-fill .brand-mark{background:#f5f7f5}
.brand-layer-fill .brand-copy strong,.brand-layer-fill .brand-copy small{color:#b7ff3c}
.brand:hover .brand-layer-fill,.brand:focus-visible .brand-layer-fill{clip-path:circle(430px at var(--pointer-x,50%) var(--pointer-y,50%))}
.brand:focus-visible{outline:2px solid var(--acid);outline-offset:4px}
.site-nav{height:100%;display:flex;align-items:center;gap:45px;margin-left:auto}
.nav-item{appearance:none;border:0;background:none;position:relative;display:grid;place-items:center;height:100%;padding:0;color:var(--muted);font-size:13px;cursor:pointer;white-space:nowrap}
.nav-item::after{content:'';position:absolute;left:0;right:0;bottom:24px;height:2px;border-radius:2px;background:var(--acid);transform:scaleX(0);transform-origin:left;transition:transform .32s var(--ease)}
.nav-item.active{color:var(--text);font-weight:650}
.nav-item.active::after,.nav-item:hover::after,.nav-item:focus-visible::after{transform:scaleX(1)}
.site-nav:hover .nav-item.active:not(:hover)::after{transform:scaleX(0);transform-origin:right}
.directions-nav-wrap{height:100%;position:relative}
.directions-menu{position:absolute;top:74px;left:50%;width:285px;padding:10px;background:#111713;border:1px solid var(--border);border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.45);opacity:0;visibility:hidden;transform:translate(-50%,-8px) scale(.97);transform-origin:top;transition:.25s var(--ease)}
.directions-menu.is-open{opacity:1;visibility:visible;transform:translate(-50%,0) scale(1)}
.directions-menu a{display:grid;grid-template-columns:92px 1fr;gap:10px;padding:14px;border-radius:8px;color:var(--muted);transition:background .2s,color .2s,transform .2s}
.directions-menu a:hover{background:color-mix(in srgb,var(--tone) 8%,var(--surface-2));color:var(--text);transform:translateX(3px)}
.directions-menu b{color:var(--tone,var(--acid));font:600 11px Unbounded}.directions-menu span{font-size:13px}
.header-inner>.button{width:160px;min-width:160px;padding:0 12px;font-size:14px;transform:translateY(3px)}
.header-inner>.button:hover{transform:translateY(1px)}
.header-inner>.button:active{transform:translateY(3px) scale(.98)}

.button{--fill:var(--text);height:48px;min-width:160px;padding:0 22px;border:1px solid transparent;border-radius:12px;display:inline-grid;place-items:center;position:relative;overflow:hidden;isolation:isolate;font-weight:750;font-size:15px;white-space:nowrap;cursor:pointer;transition:color .32s var(--ease),border-color .32s,transform .2s var(--ease),box-shadow .3s;background:transparent}
.button span{position:relative;z-index:2;pointer-events:none}
.button::before{content:'';position:absolute;z-index:0;left:var(--pointer-x,50%);top:var(--pointer-y,50%);width:250%;aspect-ratio:1;border-radius:50%;background:var(--fill);transform:translate(-50%,-50%) scale(0);transition:transform .58s var(--ease)}
.button:hover::before,.button:focus-visible::before{transform:translate(-50%,-50%) scale(1)}
.button:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(183,255,60,.12)}
.button:active{transform:translateY(0) scale(.98)}
.button:disabled{opacity:.55;cursor:wait}
.button-primary{background:var(--acid);color:var(--bg);--fill:#f5f7f5}
.button-secondary{--button-hover:var(--acid);background:var(--surface-2);color:var(--text);border-color:var(--border);--fill:var(--button-hover)}
.button-secondary:hover{color:var(--bg);border-color:var(--button-hover)}
.button-tone{background:var(--tone,var(--purple));color:#0b0d0c;--fill:var(--text)}
.button-row{display:flex;gap:16px;align-items:center}

.section-label{width:max-content;min-width:108px;height:30px;padding:0 14px 0 12px;border:1px solid var(--border);border-radius:999px;background:var(--surface-2);display:flex;align-items:center;gap:10px;color:var(--tone,var(--acid));font-size:10px;font-weight:700;text-transform:uppercase;margin-bottom:24px;transition:color .45s var(--ease),background .45s var(--ease),border-color .45s var(--ease)}
.section-label span{width:8px;height:8px;border-radius:50%;background:var(--tone,var(--acid));box-shadow:0 0 16px color-mix(in srgb,var(--tone,var(--acid)) 70%,transparent);transition:background .45s var(--ease),box-shadow .45s var(--ease)}
.services-overview-page .pricing-card .section-label.tone-blue{--tone:#75a8ff;color:#75a8ff;background:#181d35;border-color:#2a2f38}

.home-hero{--home-background:url('/imgs/background-1920х1080.webp');--home-background:image-set(url('/imgs/background-1920х1080.webp') 1x,url('/imgs/background-3840х2160.webp') 2x);min-height:1168px;margin-top:calc(var(--header) * -1);padding-top:calc(var(--header) + 15px);background:#090b0a;position:relative;overflow:hidden;isolation:isolate}
.home-hero::before{content:'';position:absolute;z-index:-2;inset:0;background-image:var(--home-background);background-size:auto;background-position:center 0;background-repeat:no-repeat}
.home-hero::after{content:'';position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(183,255,60,.10) 0%,rgba(9,11,10,0) 48%,rgba(9,11,10,.34) 72%,#090b0a 100%),linear-gradient(90deg,rgba(9,11,10,.08),transparent 24%,transparent 76%,rgba(9,11,10,.08))}
.hero-content{height:auto;min-height:600px;padding-top:0;position:relative}
.hero-content h1{font-size:66px;max-width:800px;margin-bottom:24px}
.hero-content>p{max-width:620px;color:#eef3eb;font-size:16px;text-shadow:0 1px 12px rgba(0,0,0,.5)}
.hero-content .button-row{margin-top:44px}
.hero-social{position:absolute;right:0;bottom:46px}
.social-links{display:flex;gap:16px;align-items:center}
.social-link{--fill:var(--acid);--social-fill-size:48px;--social-inset:0px;position:relative;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:transparent;color:inherit;font:inherit;cursor:pointer;display:grid;place-items:center;isolation:isolate;transition:transform .25s}
.social-fill{position:absolute;z-index:0;left:50%;top:50%;width:var(--social-fill-size);height:var(--social-fill-size);border-radius:50%;overflow:hidden;transform:translate(-50%,-50%)}
.social-fill::before{content:'';position:absolute;left:calc(var(--pointer-x,50%) - var(--social-inset));top:calc(var(--pointer-y,50%) - var(--social-inset));width:250%;aspect-ratio:1;border-radius:50%;background:var(--fill);transform:translate(-50%,-50%) scale(0);transition:transform .58s var(--ease)}
.social-link:hover .social-fill::before,.social-link:focus-visible .social-fill::before{transform:translate(-50%,-50%) scale(1)}
.social-link img{position:relative;z-index:1;width:42px;height:42px;transition:filter .3s,transform .35s var(--ease)}
.social-link:hover{transform:translateY(-4px) rotate(-3deg)}
.social-link:hover img{filter:brightness(0);transform:scale(.82) rotate(5deg)}
.social-copy-status{position:absolute;z-index:3;left:50%;bottom:-25px;padding:4px 7px;border:1px solid var(--border);border-radius:5px;background:#111714;color:var(--text);font-size:10px;line-height:1;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,4px);transition:opacity .2s,transform .2s}
.social-link.is-copied .social-copy-status{opacity:1;transform:translate(-50%,0)}
.hero-social .social-link{--social-inset:4px;width:56px;height:56px}
.hero-social .social-link img{width:48px;height:48px}
.hero-directions{padding-top:20px}
.hero-directions>h2{font-size:46px;margin-bottom:18px}.hero-directions>p{margin-bottom:30px}
.direction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.direction-card{height:290px;padding:28px;border:1px solid var(--border);border-radius:16px;background:rgba(15,20,17,.94);display:flex;flex-direction:column;transform-style:preserve-3d;transition:transform .36s var(--ease),background .58s var(--ease),border-color .58s var(--ease)}
.direction-card:hover{background:#1a221d;border-color:color-mix(in srgb,var(--tone) 42%,var(--border));transform:perspective(800px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-7px)}
.direction-card h3{font-size:22px}.direction-card p{font-size:14px}.direction-card .button{flex:0 0 auto;min-height:52px;margin-top:auto;width:max-content;background:var(--tone);color:var(--bg);border-color:transparent;--fill:var(--text)}

.numbered-grid{display:grid;gap:28px}.numbered-grid.cols-2{grid-template-columns:repeat(2,1fr)}.numbered-grid.cols-3{grid-template-columns:repeat(3,1fr)}.numbered-grid.cols-4{grid-template-columns:repeat(4,1fr)}
.numbered-card{--tone:var(--acid);min-height:190px;padding:28px;border:1px solid var(--border);border-radius:16px;background:var(--surface);transition:transform .36s var(--ease),background .36s,border-color .36s,box-shadow .36s;transform:perspective(700px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}
.numbered-card:hover{transform:perspective(700px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-7px);background:color-mix(in srgb,var(--surface) 82%,var(--acid) 18%);border-color:color-mix(in srgb,var(--acid) 55%,var(--border))}
.card-rail{height:16px;display:flex;align-items:center;color:var(--tone,var(--acid));margin-bottom:20px;font:650 11px 'IBM Plex Mono',monospace}
.card-number{flex:none;font-family:'IBM Plex Mono',monospace;font-weight:600}.rail-line{height:2px;background:var(--tone);margin-left:7px;flex:1;transform:scaleX(0);transform-origin:right;transition:transform .58s var(--ease)}
.rail-dot{width:10px;height:10px;flex:none;border-radius:50%;background:var(--tone)}
.numbered-card:hover .rail-line{transform:scaleX(1)}
.numbered-card h3{font-family:Onest;font-size:19px}.numbered-card p{font-size:14px;margin-bottom:0}

.interactive-card{transition:transform .36s var(--ease),background .36s,border-color .36s,box-shadow .36s;transform:perspective(800px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}
.interactive-card:hover{box-shadow:none}

.process-block{height:440px;position:relative;margin-top:30px;overflow:visible}
.process-steps{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);gap:18px;padding:0 20px}
.process-step{min-height:330px;text-align:center;cursor:crosshair;transition:transform .9s var(--ease);transition-delay:calc(var(--step-index) * 110ms);transform:translateY(0)}
.process-block.is-assembled .process-step{transform:translateY(var(--drop))}
.process-hit-zone{width:112px;height:112px;margin:0 auto 14px;display:grid;place-items:center}
.process-circle{width:78px;height:78px;border-radius:50%;background:#111714;border:1px solid var(--border);display:grid;place-items:center;position:relative}
.process-circle::before{display:none}
.process-circle::after{--ring-progress:0%;content:'';position:absolute;inset:-7px;border-radius:50%;background:conic-gradient(from -90deg,#f5f7f5 0 var(--ring-progress),transparent var(--ring-progress) 100%);mask:radial-gradient(circle,transparent 64%,#000 66%);-webkit-mask:radial-gradient(circle,transparent 64%,#000 66%);transition:--ring-progress .72s var(--ease)}
.process-step:hover .process-circle::after,.process-step:focus-within .process-circle::after{--ring-progress:var(--ring-target)}
.process-circle span{font:600 28px 'IBM Plex Mono',monospace;color:var(--tone)}
.process-step h3{font-family:Onest;font-size:16px;margin:0 auto 10px;max-width:190px}.process-step p{font-size:13px;line-height:1.3;margin:0 auto;max-width:190px}
.process-line{position:absolute;z-index:1;left:0;top:0;width:100%;height:320px;overflow:visible;pointer-events:none;clip-path:inset(0 100% 0 0);transition:clip-path 1.5s .35s var(--ease)}
.process-line path{fill:none;stroke:var(--acid);stroke-width:3;stroke-dasharray:8 7;stroke-dashoffset:0}
.process-block.is-assembled .process-line{clip-path:inset(0)}
.process-block.is-assembled .process-line path{animation:process-line-flow .9s linear infinite}
@keyframes process-line-flow{to{stroke-dashoffset:-30}}

.cta-band{background:var(--band);padding:84px 0;min-height:300px;display:flex;align-items:center;transition:background .45s var(--ease)}
.cta-layout{display:flex;align-items:flex-start;justify-content:space-between;gap:60px}.cta-layout h2{max-width:900px;margin-bottom:22px}.cta-layout p{max-width:760px}.cta-layout .button{margin-top:10px}

.page-hero{padding:15px 0 28px;background:var(--bg)}
.page-hero h1{font-size:62px;max-width:1040px}.page-hero>.section-inner>p{max-width:700px;margin-bottom:34px}
.tab-rail{--tab-x:0px;--tab-width:200px;--tab-tone:var(--acid);--tab-active-tone:var(--acid);position:relative;height:62px;padding:5px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2);display:flex;align-items:stretch;overflow:hidden;transition:background .45s var(--ease),border-color .45s var(--ease)}
.tab-rail[data-tone="lime"]{--tab-tone:var(--lime)}.tab-rail[data-tone="blue"]{--tab-tone:var(--blue)}.tab-rail[data-tone="purple"]{--tab-tone:var(--purple)}.tab-rail[data-tone="amber"]{--tab-tone:var(--amber)}.tab-rail[data-tone="rose"]{--tab-tone:var(--rose)}
.tab-rail[data-active-tone="lime"]{--tab-active-tone:var(--lime)}.tab-rail[data-active-tone="blue"]{--tab-active-tone:var(--blue)}.tab-rail[data-active-tone="purple"]{--tab-active-tone:var(--purple)}.tab-rail[data-active-tone="amber"]{--tab-active-tone:var(--amber)}.tab-rail[data-active-tone="rose"]{--tab-active-tone:var(--rose)}
.tab-indicator{position:absolute;z-index:0;top:5px;bottom:5px;left:0;width:var(--tab-width);transform:translateX(var(--tab-x));border-radius:10px;background:var(--tab-tone);transition:width .4s var(--ease),transform .4s var(--ease),background .45s var(--ease)}
.tab-link{position:relative;z-index:1;flex:1;border:0;background:transparent;color:var(--muted);display:grid;place-items:center;font-size:13px;font-weight:650;cursor:pointer;transition:color .35s;white-space:nowrap}
.tab-link::after{content:'';position:absolute;left:50%;bottom:8px;width:22px;height:2px;border-radius:2px;background:var(--tab-active-tone);opacity:0;transform:translateX(-50%) scaleX(0);transition:opacity .25s var(--ease),transform .32s var(--ease),background .4s var(--ease)}
.tab-link:hover,.tab-link.is-active{color:var(--bg)}
.tab-rail.is-previewing .tab-link.is-active{color:var(--text)}
.tab-rail.is-previewing .tab-link.is-active::after{opacity:1;transform:translateX(-50%) scaleX(1)}
.tab-rail.is-previewing .tab-link:hover,.tab-rail.is-previewing .tab-link:focus-visible{color:var(--bg)}
.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}
.pricing-card{min-height:520px;padding:28px;border:1px solid var(--border);border-radius:16px;background:var(--surface);display:flex;flex-direction:column;transition:transform .36s var(--ease),background .58s var(--ease),border-color .58s var(--ease)}
.pricing-card.featured{background:var(--theme-primary,#253518);border-color:var(--acid)}
.pricing-card:hover{background:color-mix(in srgb,var(--surface) 82%,var(--acid) 18%);border-color:color-mix(in srgb,var(--acid) 48%,var(--border));transform:perspective(800px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-7px)}
.pricing-card.featured:hover{background:color-mix(in srgb,var(--theme-primary,#253518) 84%,var(--acid) 16%);border-color:var(--acid)}
.pricing-card .section-label{margin-bottom:30px}.pricing-card h3{font-size:22px}.pricing-card>p{min-height:54px;font-size:14px}.pricing-card .price{font:650 22px Unbounded;margin:25px 0;color:var(--text)}
.pricing-card.featured .price{color:var(--acid)}
.pricing-card ul{list-style:none;padding:0;margin:0 0 26px;color:var(--muted);font-size:14px}.pricing-card li{margin:11px 0;padding-left:28px;position:relative}.pricing-card li::before{content:'✓';position:absolute;left:0;color:var(--mint);font-weight:800}.pricing-card .button{width:100%;margin-top:auto}
.wide-note{margin-top:28px;padding:30px;border:1px solid var(--border);border-radius:14px;background:var(--surface-2)}.wide-note h3{font-family:Onest}.wide-note p{margin:0}

.config-progress{position:sticky;z-index:20;top:calc(var(--header) + 12px);padding:18px 22px;border:1px solid var(--border);border-radius:12px;background:color-mix(in srgb,var(--theme-card,var(--surface)) 96%,transparent);box-shadow:0 14px 40px rgba(0,0,0,.28);backdrop-filter:blur(14px);transition:border-color .3s,background .3s,box-shadow .3s}
.config-progress-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:13px}.config-progress-heading>span{color:var(--muted);font-size:13px}.config-progress-heading strong{color:var(--muted);font:600 13px 'IBM Plex Mono',monospace}.config-progress-heading b{color:var(--acid);font:inherit}.config-progress-heading i{font:inherit;font-style:normal}
.config-progress-track{display:flex;gap:7px}.config-progress-step{position:relative;flex:1;height:7px;padding:0;border:0;border-radius:2px;background:var(--surface-3);cursor:pointer;overflow:hidden;transition:background .35s var(--ease),transform .25s var(--ease)}
.config-progress-step::before{content:'';position:absolute;inset:0;background:var(--acid);transform:scaleX(0);transform-origin:left;transition:transform .45s var(--ease)}.config-progress-step.is-active::before{transform:scaleX(1)}.config-progress-step.is-active{box-shadow:0 0 0 1px color-mix(in srgb,var(--acid) 55%,transparent)}.config-progress-step:hover,.config-progress-step:focus-visible{transform:translateY(-2px);outline:none}
.configurator-layout{display:grid;grid-template-columns:minmax(0,820px) 1fr;gap:32px;align-items:start}
.config-groups{position:relative;display:grid;gap:28px}.config-group{scroll-margin-top:300px;padding:28px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}
.config-title{display:flex;align-items:baseline;gap:25px}.config-title span{flex:none;color:var(--acid);font:650 13px/1 'IBM Plex Mono',monospace}.config-title h2{font:650 24px Onest;margin-bottom:20px}
.config-options{display:grid;gap:12px}.config-option{min-height:54px;padding:10px 16px;border:1px solid var(--border);border-radius:10px;background:var(--theme-darkest,var(--surface-2));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;transition:background .3s,border-color .3s,transform .3s,opacity .3s}.config-option[hidden]{display:none}
.config-option:hover{transform:translateX(4px);border-color:color-mix(in srgb,var(--acid) 55%,var(--border))}.config-option.is-selected{background:var(--theme-primary,#213517);border-color:var(--acid)}.config-option.is-disabled{opacity:.58}.config-option.is-disabled:hover{transform:none;border-color:var(--border)}.config-option.is-included{border-style:dashed}
.config-group-empty,.config-empty-state{margin:0;padding:20px;border:1px dashed var(--theme-border,var(--border));border-radius:12px;color:var(--muted);font-size:13px}.config-empty-state{min-height:120px;display:grid;place-items:center;text-align:center}
.config-option input[name="service"]{position:absolute;width:1px;height:1px;padding:0;opacity:0;overflow:hidden;clip:rect(0,0,0,0)}.config-option-choice{min-width:0;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:14px;cursor:pointer}.config-option-choice:has(input:focus-visible){outline:1px solid var(--acid);outline-offset:4px;border-radius:4px}.checkmark{width:16px;height:16px;border:1px solid var(--border);border-radius:4px;background:var(--theme-darkest,#111713);transition:.2s}.config-option.is-selected .checkmark{background:var(--acid);border-color:var(--acid);box-shadow:inset 0 0 0 4px var(--theme-primary,#213517)}
.option-copy{min-width:0;display:flex;flex-direction:column}.option-copy b{font-size:14px}.option-copy b em{display:inline-block;margin-left:8px;padding:3px 6px;border:1px solid var(--acid);border-radius:4px;color:var(--acid);font:600 12px 'IBM Plex Mono',monospace;font-style:normal;text-transform:uppercase}.option-copy small{color:var(--muted-2);margin-top:3px}.option-controls{display:flex;align-items:center;justify-content:flex-end;gap:12px}.option-controls>strong{font-size:13px;color:var(--muted);white-space:nowrap}.config-option.is-selected .option-controls>strong{color:var(--acid)}.option-reason,.option-price-note{grid-column:1/-1;padding-left:34px;color:var(--muted-2);font-size:11px;cursor:pointer}.option-price-note{color:var(--muted)}.quantity-control{width:118px;height:34px;display:grid;grid-template-columns:32px 1fr 32px;border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--surface-2)}.quantity-control button{padding:0;border:0;background:transparent;color:var(--acid);font-size:18px;cursor:pointer}.quantity-control button:hover{background:color-mix(in srgb,var(--acid) 10%,transparent)}.quantity-control input{width:52px;height:32px;padding:0 2px;border:0;border-inline:1px solid var(--border);border-radius:0;background:transparent;color:var(--text);text-align:center;font:600 12px 'IBM Plex Mono',monospace;-moz-appearance:textfield}.quantity-control input::-webkit-inner-spin-button,.quantity-control input::-webkit-outer-spin-button{appearance:none;margin:0}.quantity-control input:disabled,.quantity-control button:disabled{opacity:.45}.config-group-requirement{margin:12px 0 0;color:#ff6678;font-size:12px}.config-group.is-required-missing{border-color:#ff6678}
.config-questions{min-width:0;grid-column:1/-1;display:grid;gap:12px;margin-top:8px;padding:16px 0 4px 34px;border-top:1px solid var(--border)}.config-questions[hidden]{display:none}.config-question{min-width:0;display:grid;grid-template-columns:minmax(170px,.8fr) minmax(220px,1.2fr);align-items:center;gap:8px 16px}.config-question[hidden]{display:none}.config-question>*{min-width:0;max-width:100%}.config-question>label{display:grid;gap:3px}.config-question>label b{font-size:12px}.config-question>label small{color:var(--muted);font-size:10px}.config-question>input,.config-question>select,.config-question>textarea{box-sizing:border-box;width:100%;max-width:100%;min-height:42px;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);color:var(--text);font:500 12px Onest;outline:none}.config-question>textarea{resize:vertical}.config-question input:focus,.config-question select:focus,.config-question textarea:focus{border-color:var(--acid)}.question-options{display:flex;flex-wrap:wrap;gap:8px}.question-options label{display:flex;align-items:center;gap:6px;padding:8px;border:1px solid var(--border);border-radius:7px;font-size:11px}.question-boolean{display:flex!important;grid-template-columns:16px auto!important;align-items:center;gap:8px}.question-boolean input,.question-options input{width:16px;height:16px}.question-error{grid-column:2;color:#ff6678;font-size:10px}.config-question.is-invalid>input,.config-question.is-invalid>select,.config-question.is-invalid>textarea{border-color:#ff6678}
.config-summary{position:sticky;top:112px;display:grid;gap:24px}.summary-card{padding:28px;border:1px solid var(--border);border-radius:16px;background:var(--surface);overflow:hidden}.summary-card.featured{border-color:var(--acid);background:var(--theme-primary,#14200f)}.summary-card h2{font:650 25px Onest}.summary-lines>div,.summary-rule>div,.summary-breakdown>div{display:flex;justify-content:space-between;gap:20px;padding:9px 0;color:var(--muted);font-size:13px}.summary-lines b{color:var(--text)}.summary-rule{border-top:1px solid #9da79f;margin-top:18px;padding-top:12px}.summary-rule b,.summary-breakdown b{color:var(--acid)}.summary-breakdown:not(:empty){margin-top:8px;padding-top:8px;border-top:1px solid var(--border)}.summary-warnings{height:0;display:grid;gap:7px;margin-top:10px;overflow:hidden;transition:height .46s var(--ease),margin-top .46s var(--ease)}.summary-warnings.is-empty{margin-top:0}.summary-warnings p{margin:0;padding:8px 10px;border:1px solid color-mix(in srgb,#ffb84d 50%,var(--border));border-radius:7px;color:#ffd18b;font-size:10px;line-height:1.4}.summary-total{display:block;font:650 30px Unbounded;margin:24px 0;overflow-wrap:anywhere}.summary-card .button{width:100%}.quick-contact p{font-size:13px;margin:18px 0 3px}.quick-contact>a:not(.button){font:600 20px Onest}.quick-contact .button{margin-top:25px}
.summary-warning-group{border:1px solid color-mix(in srgb,#ffb84d 50%,var(--border));border-radius:7px;background:color-mix(in srgb,#ffb84d 5%,transparent);color:#ffd18b;font-size:10px;line-height:1.4;overflow:hidden}.summary-warning-group summary{min-height:34px;padding:7px 9px;display:grid;grid-template-columns:minmax(0,1fr) auto 14px;align-items:center;gap:7px;cursor:pointer;list-style:none}.summary-warning-group summary::-webkit-details-marker{display:none}.summary-warning-group summary b{min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:color-mix(in srgb,#ffb84d 14%,transparent);display:grid;place-items:center;font:650 10px 'IBM Plex Mono',monospace}.summary-warning-group summary i{font:600 17px/1 Onest;font-style:normal;text-align:center;transition:transform .3s var(--ease)}.summary-warning-group[open] summary i{transform:rotate(45deg)}.summary-warning-group ul{margin:0;padding:2px 10px 9px 25px;border-top:1px solid color-mix(in srgb,#ffb84d 24%,var(--border));color:var(--muted);display:grid;gap:6px}.summary-warning-group li{padding-top:6px}.summary-warning-external{border-color:color-mix(in srgb,var(--rose) 45%,var(--border));background:color-mix(in srgb,var(--rose) 5%,transparent);color:#ffadb7}.summary-warning-external summary b{background:color-mix(in srgb,var(--rose) 14%,transparent)}.summary-warning-external ul{border-top-color:color-mix(in srgb,var(--rose) 22%,var(--border))}
.contact-methods{display:grid;gap:8px;margin-top:8px}
.contact-method{appearance:none;width:100%;min-height:62px;padding:7px 8px;border:0;border-radius:10px;background:transparent;display:grid;grid-template-columns:48px 1fr;align-items:center;gap:14px;color:var(--text);text-align:left;cursor:pointer;transition:background .42s var(--ease),transform .3s var(--ease)}
.contact-method:hover,.contact-method:focus-visible{background:color-mix(in srgb,var(--acid) 8%,transparent);transform:translateY(-3px);outline:none}
.contact-method-icon{--fill:var(--acid);width:44px;height:44px;border-radius:13px;overflow:hidden;position:relative;display:grid;place-items:center;isolation:isolate}
.contact-method-icon::before{content:'';position:absolute;z-index:0;left:50%;top:50%;width:150%;aspect-ratio:1;border-radius:50%;background:var(--fill);transform:translate(-50%,-50%) scale(0);transition:transform .58s var(--ease)}
.contact-method-icon img{position:relative;z-index:1;width:38px;height:38px;transition:filter .34s var(--ease),transform .4s var(--ease)}
.contact-method:hover .contact-method-icon::before,.contact-method:focus-visible .contact-method-icon::before{transform:translate(-50%,-50%) scale(1)}
.contact-method:hover .contact-method-icon img,.contact-method:focus-visible .contact-method-icon img{filter:brightness(0);transform:scale(.82) rotate(5deg)}
.contact-method-copy{min-width:0;position:relative;display:flex;flex-direction:column}
.contact-method-copy small,.contact-card .contact-method-copy small{margin:0;color:var(--muted);font-size:12px;line-height:1.2}
.contact-method-copy strong{overflow:hidden;color:var(--text);font:650 18px/1.25 Onest;text-overflow:ellipsis;white-space:nowrap}
.contact-copy-status{position:absolute;right:0;top:0;color:var(--acid);font-size:11px;opacity:0;transition:opacity .25s}
.contact-method.is-copied .contact-copy-status{opacity:1}
.quick-contact .button{margin-top:25px}

.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px}.projects-grid.three-cols{grid-template-columns:repeat(3,1fr)}
.project-card{padding:24px;border:1px solid var(--border);border-radius:16px;background:var(--surface);display:flex;flex-direction:column;transition:transform .36s var(--ease),background .5s var(--ease),border-color .5s var(--ease)}
.project-visual{display:block;height:320px;border-radius:12px;margin-bottom:22px;background:var(--theme-darkest,#101511);border:1px solid var(--border);position:relative;overflow:hidden;cursor:pointer}
.project-visual>img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .7s var(--ease),filter .5s var(--ease)}
.project-card:hover .project-visual>img{transform:scale(1.025);filter:saturate(1.06)}
.project-placeholder::before{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,color-mix(in srgb,var(--tone,var(--acid)) 10%,transparent),transparent 80%);transform:translateX(-100%);transition:transform .9s var(--ease)}
.project-card:hover .project-placeholder::before,.project-stage:hover::before{transform:translateX(100%)}
.project-card .section-label{margin:0 0 18px}.project-card h3{font-size:21px}.project-card .button{margin-top:auto;width:100%}
.portfolio-projects .project-card:hover{background:var(--theme-primary);border-color:var(--acid)}
.color-theme .button:hover{box-shadow:0 12px 30px color-mix(in srgb,var(--acid) 15%,transparent)}
.home-projects .project-card{border:0;background:transparent;padding:0}.home-projects .project-visual{height:390px}

.contact-layout{display:grid;grid-template-columns:780px 1fr;gap:38px;align-items:start}.contact-form{padding:28px;border:1px solid var(--border);border-radius:16px;background:var(--surface);display:grid;gap:24px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
label{display:grid;gap:10px;color:var(--text);font-size:14px;font-weight:600}input,textarea,select{width:100%;border:1px solid var(--border);border-radius:11px;background:var(--surface-2);color:var(--text);padding:14px 16px;outline:none;transition:border-color .25s,box-shadow .25s}input:focus,textarea:focus,select:focus{border-color:var(--acid);box-shadow:0 0 0 3px rgba(183,255,60,.08)}textarea{resize:vertical}.file-field{height:52px;padding:0 16px;border:1px solid var(--border);border-radius:10px;display:flex;align-items:center;color:var(--muted);cursor:pointer}.consent{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);align-items:center;column-gap:10px;row-gap:6px;font-weight:400;color:var(--muted)}.consent input{position:absolute;left:0;top:1px;width:18px;height:18px;margin:0;padding:0;opacity:0}.consent input+span{width:18px;height:18px;border:1px solid var(--border);border-radius:4px;transition:border-color .25s,box-shadow .25s,background .25s}.consent input:checked+span{background:var(--acid);box-shadow:inset 0 0 0 4px var(--surface)}.field-invalid>input:not([type="checkbox"]),.field-invalid>textarea,.field-invalid>select{border-color:var(--rose);box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 12%,transparent)}.field-invalid>input:not([type="checkbox"]):focus,.field-invalid>textarea:focus,.field-invalid>select:focus{border-color:var(--rose);box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 18%,transparent)}.consent.field-invalid>input+span{border-color:var(--rose);box-shadow:0 0 0 3px color-mix(in srgb,var(--rose) 12%,transparent)}.field-error{display:block;width:100%;color:var(--rose);font-size:12px;font-weight:500;line-height:1.25}.consent .field-error{grid-column:2;margin-left:0}.contact-form>.button{width:100%}.contact-aside{display:grid;gap:24px}.contact-card{padding:28px;border:1px solid var(--border);border-radius:16px;background:var(--surface)}.contact-card.featured{border-color:var(--acid);background:#14200f}.contact-card p{margin:18px 0 3px}.contact-card>a{font:650 21px Onest}.contact-card small{display:block;color:var(--muted);margin-top:28px}.contact-card ul{display:grid;grid-template-columns:1fr 1fr;gap:22px;list-style:none;padding:0;margin:25px 0 0}.contact-card li{color:var(--muted);font-size:14px}.contact-card li::before{content:'•';color:var(--acid);margin-right:5px}
input[data-inline-validation="true"]::placeholder,textarea[data-inline-validation="true"]::placeholder{color:var(--rose);opacity:1}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.contact-main-fields{grid-template-columns:repeat(3,minmax(0,1fr))}
.contact-builder{min-width:0;margin:0;padding:0;border:0;display:grid;gap:14px}.contact-builder legend{margin-bottom:14px;padding:0;color:var(--text);font-size:15px;font-weight:650}.contact-entries{display:grid;gap:18px}.contact-entry{position:relative;display:grid;gap:10px}.contact-entry+.contact-entry{padding-top:18px;border-top:1px solid var(--border)}
.contact-entry-heading{height:20px;display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;font-weight:550}.contact-entry-remove{width:26px;height:26px;padding:0;border:0;border-radius:50%;background:transparent;color:var(--muted);font-size:22px;line-height:1;cursor:pointer;transition:color .2s,background .2s,transform .2s}.contact-entry-remove:hover,.contact-entry-remove:focus-visible{background:color-mix(in srgb,var(--rose) 12%,transparent);color:var(--rose);outline:none;transform:rotate(6deg)}
.contact-type-picker{height:46px;padding:4px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.contact-type-button{min-width:0;padding:0 8px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:12px;font-weight:650;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease),transform .2s}.contact-type-button:hover,.contact-type-button:focus-visible{color:var(--text);outline:none}.contact-type-button.is-active{background:var(--acid);color:var(--bg)}
.contact-value-field{display:block}.contact-value-field input{height:52px}.contact-add-button{width:max-content;padding:3px 0;border:0;background:transparent;color:var(--muted);font-size:13px;font-weight:600;cursor:pointer;transition:color .2s,transform .2s}.contact-add-button span{display:inline-grid;width:20px;height:20px;margin-right:7px;border:1px solid var(--border);border-radius:50%;place-items:center;color:var(--acid);transition:border-color .2s,background .2s,color .2s}.contact-add-button:hover,.contact-add-button:focus-visible{color:var(--text);outline:none;transform:translateX(3px)}.contact-add-button:hover span,.contact-add-button:focus-visible span{border-color:var(--acid);background:var(--acid);color:var(--bg)}.contact-limit{color:var(--muted-2);font-size:12px}
.faq-list{display:grid;gap:16px}.faq-item{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden;transition:border-color .3s,background .3s}.faq-item:hover,.faq-item.is-open{border-color:#465249;background:var(--surface-2)}.faq-item button{width:100%;height:72px;padding:0 24px;border:0;background:none;color:var(--text);display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer}.faq-item button b{font:700 32px Onest;color:var(--acid);transition:transform .35s}.faq-item>div{display:grid;grid-template-rows:0fr;transition:grid-template-rows .4s var(--ease)}.faq-item>div p{overflow:hidden;margin:0;padding:0 24px;transition:padding .4s}.faq-item.is-open>div{grid-template-rows:1fr}.faq-item.is-open>div p{padding:0 24px 24px}.faq-item.is-open button b{transform:rotate(45deg)}

.direction-hero{padding:14px 0 70px;background:var(--bg)}.direction-hero-layout{display:grid;grid-template-columns:1.45fr .75fr;gap:70px;align-items:center}.direction-hero h1{font-size:62px}.direction-hero p{max-width:700px;margin-bottom:0}.direction-hero .button-row{margin-top:30px}.direction-hero .button-tone{background:var(--tone,var(--acid))}
.direction-hero.tone-purple .button-secondary{--button-hover:var(--purple)}
.direction-mock{height:360px;border:1px solid var(--border);border-radius:18px;background:var(--surface);overflow:hidden;transform:perspective(700px) rotateY(-3deg);transition:transform .5s var(--ease)}.direction-mock:hover{transform:perspective(700px) rotateY(0) translateY(-5px)}.mock-bar{height:48px;padding:0 14px;background:var(--surface-2);display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.mock-bar i{width:8px;height:8px;border-radius:50%;background:var(--rose)}.mock-bar i:nth-child(2){background:var(--amber)}.mock-bar i:nth-child(3){background:var(--mint)}.mock-bar span{margin-left:8px}.mock-empty{height:calc(100% - 48px);position:relative;background:linear-gradient(145deg,var(--surface),#0c120e)}.mock-empty::before,.mock-empty::after{content:'';position:absolute;border:1px solid var(--border);border-radius:12px;background:var(--surface-2)}.mock-empty::before{left:22px;right:22px;top:24px;height:92px}.mock-empty::after{left:22px;right:70px;bottom:24px;height:130px;border-color:color-mix(in srgb,var(--tone) 45%,var(--border))}
.mock-web .mock-bar{position:relative;z-index:2;background:#161d12}.mock-web .mock-empty{overflow:hidden;background:#eef1f5}.mock-web .mock-empty::before,.mock-web .mock-empty::after{display:none}.mock-web .mock-empty>img{width:100%;height:auto;max-width:none;transform:translateY(0);transform-origin:center top;transition:transform 1.25s var(--ease),filter .6s var(--ease)}.mock-web:hover .mock-empty>img{transform:translateY(-34px);filter:saturate(1.04)}
.fact-band{height:150px;background:var(--band);display:flex;align-items:center;transition:background .45s var(--ease)}.fact-band>.section-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:50px}.fact-band strong{display:block;color:var(--tone,var(--acid));font:600 21px Unbounded}.fact-band span{display:block;max-width:180px;color:var(--muted);font-size:14px;line-height:1.05}
.fact-band.tone-purple{background:#120d18}
.fact-band span em{color:var(--tone,var(--acid));font-style:normal;font-weight:750}

.data-direction-hero{--tone:var(--blue);min-height:437px;height:auto;padding:15px 0 70px;background:var(--bg)}
.data-direction-hero-layout{min-height:351px;height:auto;display:grid;grid-template-columns:773px 447px;gap:20px;align-items:start}
.data-direction-copy h1{font-size:68px;line-height:.96;margin-bottom:25px}
.data-direction-copy>p{width:690px;min-height:51px;margin-bottom:0;font-size:18px;line-height:1.3}
.data-direction-copy>.button{margin-top:30px;background:var(--blue)}
.data-parser-mock{height:351px;border:1px solid var(--border);border-radius:22px;background:#141816;overflow:hidden;transition:transform .45s var(--ease),border-color .45s,background .45s}
.data-parser-mock:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--blue) 45%,var(--border));background:#171d19}
.data-mock-title{height:35px;padding:0 15px;background:var(--surface-2);display:flex;align-items:center;color:var(--text);font:500 13px 'Space Grotesk',sans-serif}
.data-mock-body{height:316px;padding:15px 20px 14px 13px;display:grid;grid-template-columns:107px 1fr;gap:9px}
.data-mock-nav{padding:13px 9px;border:1px solid var(--border);border-radius:14px;background:#0e1110;display:flex;flex-direction:column;gap:18px}
.data-mock-nav span{display:flex;align-items:center;gap:7px;color:var(--muted-2);font-size:10px;white-space:nowrap}.data-mock-nav i{width:7px;height:7px;border-radius:50%;background:#141816}.data-mock-nav span.active{color:var(--text);font-weight:600}.data-mock-nav span.active i{background:var(--blue);box-shadow:0 0 12px rgba(110,164,255,.55)}
.data-mock-content{min-width:0;display:grid;grid-template-rows:52px 1fr;gap:10px}.data-mock-stats{display:flex;gap:28px}.data-mock-stats span{display:flex;flex-direction:column}.data-mock-stats small{color:var(--muted);font-size:10px}.data-mock-stats strong{font:700 27px/1.15 'Space Grotesk',sans-serif}.data-mock-stats span:last-child strong{color:var(--rose)}
.data-mock-table{padding:9px 11px;border:1px solid var(--border);border-radius:14px;background:#0e1110;overflow:hidden}.data-mock-row{min-height:31px;border-top:1px solid var(--border);display:grid;grid-template-columns:1.45fr .95fr .9fr .75fr;align-items:center;gap:8px;color:var(--muted);font-size:8px}.data-mock-row:first-child{border:0}.data-mock-row span{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.data-mock-row:not(.data-mock-head) span:first-child{color:var(--text)}.data-mock-head{min-height:25px;color:var(--muted-2);font-weight:600}.data-mock-row .price-cell{color:var(--blue)}
.data-fact-band{height:150px;background:#0d1118;display:flex;align-items:center}.data-fact-band>.section-inner{width:1160px;display:grid;grid-template-columns:repeat(4,1fr);gap:75px}.data-fact-band strong{display:block;margin-bottom:3px;color:var(--blue);font:600 24px/1 'Unbounded',sans-serif}.data-fact-band span{display:block;max-width:215px;color:var(--muted);font-size:18px;line-height:.9}
.data-content-section{padding:71px 0 0;background:var(--bg)}
.data-content-section .section-label,.data-solutions-section .section-label{margin-bottom:25px}
.data-content-section h2,.data-solutions-section h2{font-size:48px;line-height:1.2;margin-bottom:25px}
.data-content-section .section-lead,.data-solutions-section .section-lead{max-width:none;margin-bottom:25px;font-size:15px;line-height:22px}
.data-cards{gap:35px}.data-cards .numbered-card{height:190px;min-height:190px;padding:19px 22px;border-radius:18px;position:relative;overflow:hidden}.data-cards .card-rail{margin-bottom:17px}.data-cards .numbered-card h3{margin-bottom:16px;font-size:18px}.data-cards .numbered-card p{max-width:346px;font-size:15px;line-height:1.2}
.data-cards .has-source-logos h3,.data-cards .has-source-logos p{max-width:240px}.source-logos{position:absolute;right:22px;bottom:20px;display:grid;place-items:center;gap:6px}.source-logos img{width:58px;height:58px;object-fit:contain;filter:saturate(.88);transition:transform .38s var(--ease),filter .38s,opacity .38s}.source-logos-3{grid-template-columns:repeat(3,30px);gap:6px}.source-logos-3 img{width:30px;height:30px}.source-logos-4{grid-template-columns:repeat(2,32px);gap:7px}.source-logos-4 img{width:32px;height:32px}.has-source-logos:hover .source-logos img{filter:saturate(1.12);transform:translateY(-3px) scale(1.04)}.has-source-logos:hover .source-logos img:nth-child(2){transition-delay:40ms}.has-source-logos:hover .source-logos img:nth-child(3){transition-delay:80ms}.has-source-logos:hover .source-logos img:nth-child(4){transition-delay:120ms}
.data-direction-cta{height:390px;min-height:390px;margin-top:25px;padding:0}.data-direction-cta .cta-layout{top:25px}.data-direction-cta .cta-layout h2{font-size:48px;line-height:1.05;margin-bottom:22px}.data-direction-cta .cta-layout p{font-size:15px;line-height:1.3}.data-direction-cta .cta-layout .button{width:240px;margin-top:0}
.data-solutions-section{padding:71px 0 119px;background:var(--bg)}.data-pricing-grid{gap:35px}.data-solution-card{height:559px;min-height:559px;padding:32px 25px;border-radius:22px}.data-solution-card h3{font-size:26px}.data-solution-card>p{min-height:56px;font-size:15px}.data-solution-card .price{font-size:26px;margin:24px 0}.data-solution-card ul{font-size:15px}.data-solutions-section .wide-note{height:150px;margin-top:25px;padding:38px 25px;border-radius:16px}.data-solutions-section .wide-note h3{font-size:24px;margin-bottom:20px}.data-solutions-section .wide-note p{font-size:15px}

.parser-project-hero{height:365px;padding:15px 0 0}
.parser-project-page .button-secondary{--button-hover:var(--blue)}
.parser-project-head{height:350px;display:grid;grid-template-columns:720px 500px;gap:20px;align-items:start}
.parser-project-copy .breadcrumbs{height:16px;margin:0 0 30px;color:var(--muted);font-size:11px;font-weight:800}
.parser-project-copy .section-label{margin-bottom:25px}.parser-project-copy h1{font-size:68px;line-height:1;margin-bottom:20px}.parser-project-copy>p:not(.breadcrumbs){max-width:687px;margin-bottom:20px;font-size:18px;line-height:1.3}.parser-project-copy .button-row{margin-top:20px}.parser-project-copy .button:first-child{width:260px}.parser-project-copy .button:last-child{width:230px}
.parser-project-meta{height:302px;margin:46px 0 0;padding:22px 15px;border:1px solid #2a2f38;border-radius:20px;background:#1b1d21;display:flex;flex-direction:column}
.parser-project-meta div{min-height:49px;padding:0 14px;display:grid;grid-template-columns:190px 1fr;align-items:center;gap:20px}.parser-project-meta dt{color:var(--muted);font-size:15px}.parser-project-meta dd{margin:0;color:var(--text);font-size:15px;text-align:right}.parser-project-meta .parser-tech{min-height:50px;margin-top:4px;border:1px solid #2a2f38;border-radius:12px;background:#181d22}.parser-project-meta .parser-tech dt{font-size:13px}.parser-project-meta .parser-tech dd{font-size:13px;font-weight:700}
.parser-project-sources{padding:71px 0 0}.parser-project-task{padding:71px 0 25px}.parser-project-sources .section-label,.parser-project-task .section-label{margin-bottom:25px}.parser-project-sources h2,.parser-project-task h2{font-size:48px;line-height:1.2;margin-bottom:25px}.parser-project-sources .section-lead,.parser-project-task .section-lead{max-width:none;margin-bottom:25px;font-size:15px;line-height:22px}
.parser-source-grid{gap:24px}.parser-source-card{height:190px;min-height:190px;padding:19px 22px;position:relative;overflow:hidden}.parser-source-card .card-rail{margin-bottom:17px}.parser-source-card h3{max-width:155px;font-size:18px;line-height:1.08}.parser-source-card>img{position:absolute;right:20px;bottom:18px;width:68px;height:68px;object-fit:contain;transition:transform .42s var(--ease),filter .42s var(--ease)}.parser-source-card:hover>img{transform:translateY(-4px) scale(1.06);filter:saturate(1.12)}
.parser-project-task .numbered-grid{gap:35px}.parser-project-task .numbered-card{height:200px;padding:19px 22px}.parser-project-task .card-rail{margin-bottom:19px}.parser-project-task .numbered-card h3{font-size:18px}.parser-project-task .numbered-card p{font-size:14px;line-height:1.35}
.parser-project-cta{height:390px;min-height:390px;padding:0}.parser-project-cta .cta-layout h2{font-size:48px;line-height:1.02;margin-bottom:22px}.parser-project-cta .cta-layout p{font-size:15px}.parser-project-cta .button{width:240px}
.parser-demo-section{padding:71px 0 119px}.parser-browser{height:560px;border:1px solid var(--border);border-radius:20px;background:#141816;overflow:hidden;transition:transform .45s var(--ease),border-color .45s var(--ease)}.parser-browser:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--blue) 45%,var(--border))}
.parser-browser-title{height:46px;padding:0 20px;background:#1b211d;display:flex;align-items:center;font:500 13px 'Space Grotesk',sans-serif}.parser-browser-body{height:514px;padding:18px;display:grid;grid-template-columns:298px 1fr;gap:44px}.parser-browser-nav{padding:24px 14px;border:1px solid var(--border);border-radius:12px;background:#0e1110;display:flex;flex-direction:column;gap:25px}.parser-browser-nav span{display:flex;align-items:center;gap:10px;color:var(--muted-2);font-size:13px}.parser-browser-nav i{width:9px;height:9px;border-radius:50%;background:#141816}.parser-browser-nav span.active{color:var(--text);font-weight:650}.parser-browser-nav span.active i{background:var(--blue);box-shadow:0 0 14px color-mix(in srgb,var(--blue) 45%,transparent)}
.parser-browser-content{min-width:0;display:grid;grid-template-rows:64px 1fr;gap:18px}.parser-browser-stats{display:flex;gap:30px}.parser-browser-stats span{min-width:130px;display:flex;flex-direction:column}.parser-browser-stats small{color:var(--muted);font-size:13px}.parser-browser-stats strong{font:700 30px/1.2 'Space Grotesk',sans-serif}.parser-browser-stats span:last-child strong{color:var(--rose)}.parser-browser-table{height:380px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:#0e1110;overflow:hidden}.parser-browser-row{height:41px;border-top:1px solid var(--border);display:grid;grid-template-columns:2fr 1fr .8fr .8fr;align-items:center;gap:18px;color:var(--muted);font-size:12px}.parser-browser-row:first-child{border:0}.parser-browser-row span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.parser-browser-row:not(.parser-browser-head) span:first-child{color:var(--text)}.parser-browser-head{height:33px;color:var(--muted-2);font-weight:650}.parser-browser-row .price-cell{color:var(--blue)}

.project-head{display:grid;grid-template-columns:1.25fr .75fr;gap:70px}.breadcrumbs{font-size:13px}.project-meta{margin:0;padding:28px;border:1px solid var(--border);border-radius:16px;background:var(--theme-card,var(--surface-2))}.project-meta div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--border)}.project-meta div:last-child{border:0}.project-meta dt{flex:none;color:var(--muted)}.project-meta dd{max-width:300px;margin:0;text-align:right;line-height:1.35}.project-meta dd small{display:block;margin-top:5px;color:var(--muted);font-size:11px;line-height:1.35}.project-meta .project-role,.project-meta .project-stack{align-items:flex-start}.project-meta .project-stack dd{font-size:13px}.project-stage{height:640px;border:1px solid var(--border);border-radius:18px;background:var(--theme-card,var(--surface));position:relative;overflow:hidden}.velovolt-preview{background:#0d100e}.velovolt-preview-scroll{height:100%;overflow-y:auto;scrollbar-width:none;scroll-behavior:smooth;overscroll-behavior:contain}.velovolt-preview-scroll::-webkit-scrollbar{display:none}.velovolt-preview-scroll:focus-visible{outline:2px solid var(--acid);outline-offset:-3px}.velovolt-preview-scroll>img{width:100%;height:auto;max-width:none}.velovolt-preview-controls{position:absolute;z-index:3;right:18px;top:50%;display:grid;gap:10px;transform:translateY(-50%)}.preview-scroll-button.button{width:48px;min-width:48px;height:48px;padding:0;border-radius:8px;background:rgba(20,26,22,.94);backdrop-filter:blur(8px)}.preview-scroll-button img{position:relative;z-index:2;width:22px;height:22px;filter:brightness(0) invert(1);transition:filter .3s var(--ease),transform .3s var(--ease)}.preview-scroll-button:hover img{filter:brightness(0);transform:scale(.9)}.preview-scroll-button:disabled{opacity:.32;cursor:default}.preview-scroll-button:disabled::before{transform:translate(-50%,-50%) scale(0)}.preview-scroll-button:disabled:hover{transform:none;box-shadow:none}.preview-scroll-button:disabled:hover img{filter:brightness(0) invert(1);transform:none}.legal-copy{max-width:940px}.legal-copy h2{font-size:26px;margin-top:48px}.legal-copy p{font-size:17px;line-height:1.8}.legal-copy a{color:var(--acid)}.legal-cookie-settings.button{display:inline-flex;width:auto;min-width:250px;margin-top:8px}
.footer-inner{grid-template-columns:1.8fr repeat(4,1fr) auto;gap:38px}.footer-column a,.footer-column button{padding:0;border:0;background:none;color:var(--muted);font:inherit;font-size:13px;text-align:left;cursor:pointer;transition:color .2s,transform .2s}.footer-column a:hover,.footer-column button:hover{color:var(--acid);transform:translateX(3px)}.footer-column button:focus-visible{outline:1px solid var(--acid);outline-offset:3px}
.cookie-consent{position:fixed;z-index:90;left:18px;bottom:18px;width:min(430px,calc(100vw - 36px));padding:22px;border:1px solid var(--border);border-radius:8px;background:#121713;box-shadow:0 18px 60px rgba(0,0,0,.42);opacity:0;transform:translateY(14px);transition:opacity .25s var(--ease),transform .25s var(--ease)}.cookie-consent.is-visible{opacity:1;transform:translateY(0)}.cookie-consent h2{margin:0 0 11px;font-size:21px}.cookie-consent p{margin:0 0 8px;color:var(--muted);font-size:11px;line-height:1.45}.cookie-consent .cookie-consent-more{margin-top:12px;margin-bottom:16px}.cookie-consent a{color:var(--text);text-decoration:underline;text-underline-offset:3px}.cookie-consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.cookie-consent-actions .button{width:100%;height:44px;min-height:44px;padding:0 18px}
.consent>b{min-width:0;color:inherit;font:inherit;line-height:1.35;white-space:normal}.consent a{color:var(--text);text-decoration:underline;text-underline-offset:2px}
.velovolt-demo-trigger{position:absolute;z-index:2;inset:0;width:100%;border:0;background:transparent;cursor:pointer}.velovolt-demo-trigger:focus-visible{outline:2px solid var(--acid);outline-offset:-4px}.velovolt-demo-overlay{position:absolute;z-index:4;inset:0;background:rgba(4,7,5,.76);backdrop-filter:blur(3px);display:grid;place-items:center;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .32s var(--ease),visibility .32s}.velovolt-demo-overlay .button{width:250px;pointer-events:auto;transform:translateY(14px);transition:transform .36s var(--ease)}.velovolt-preview.is-demo-open .velovolt-demo-overlay{opacity:1;visibility:visible}.velovolt-preview.is-demo-open .velovolt-demo-overlay .button{transform:translateY(0)}.velovolt-preview-controls{z-index:6}
.breadcrumbs{display:flex;align-items:center;gap:8px;margin:0 0 16px;color:var(--muted);font-size:13px}.breadcrumbs a{color:var(--muted);transition:color .25s var(--ease)}.breadcrumbs a:hover,.breadcrumbs a:focus-visible{color:var(--acid);outline:none}.breadcrumbs [aria-current="page"]{color:var(--text)}
.seo-answer-section{background:var(--bg)}main[data-configurator-kind]>.section.seo-answer-section{padding:24px 0 0}.seo-answer-lead{max-width:940px}.seo-answer-lead strong,.hero-content>p strong,.direction-hero p strong,.data-direction-copy>p strong{color:var(--text);font-weight:700}.seo-answer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:32px;margin-top:38px}.seo-answer-grid article{padding-top:22px;border-top:1px solid var(--theme-border,var(--border));transition:border-color .35s var(--ease),transform .35s var(--ease)}.seo-answer-grid article:hover{border-color:var(--theme-accent,var(--acid));transform:translateY(-4px)}.seo-answer-grid h3{margin:0 0 12px;font-size:21px}.seo-answer-grid p{margin:0;color:var(--muted);font-size:15px;line-height:1.6}.seo-answer-grid a{color:var(--theme-accent,var(--acid));text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.contact-owner{display:grid;gap:4px;margin:0 0 18px}.contact-owner strong{color:var(--text);font-size:18px}.contact-owner span{color:var(--muted);font-size:12px}
.config-mobile-dock{display:none}
.velovolt-preview-scroll{overflow:hidden;overscroll-behavior:none}
.not-found{min-height:900px;display:grid;place-items:center;text-align:center}.not-found img{margin:0 auto 25px}.not-found p{color:var(--acid)}.not-found .button{margin:20px auto}

.site-footer{margin-top:20px;padding:58px 0 28px;border-top:1px solid var(--border);background:#0c0f0d}.footer-inner{display:grid;grid-template-columns:2fr repeat(3,1fr) auto;gap:55px;align-items:start}.footer-brand .brand{min-width:auto}.footer-brand p{font-size:13px;max-width:340px;margin-top:18px}.footer-column{display:flex;flex-direction:column;gap:3px}.footer-column strong{margin-bottom:16px;font-size:14px}.footer-column a{color:var(--muted);font-size:13px;transition:color .2s,transform .2s}.footer-column a:hover{color:var(--acid);transform:translateX(3px)}.site-footer .social-link{--social-fill-size:42px;width:42px;height:42px}.site-footer .social-link img{width:34px;height:34px}.footer-meta{grid-column:1/-1;display:flex;justify-content:space-between;color:var(--muted-2);font-size:11px;margin-top:35px}
.site-scroll-top{position:fixed;z-index:80;right:24px;bottom:24px;width:58px;height:58px;padding:0;border:0;background:transparent;cursor:pointer;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(14px);transition:opacity .3s var(--ease),visibility .3s,transform .3s var(--ease)}.site-scroll-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.site-scroll-top img{position:absolute;inset:0;width:100%;height:100%;filter:brightness(0) invert(1);transition:opacity .38s var(--ease),transform .38s var(--ease)}.site-scroll-top-circle{opacity:0;transform:scale(.78) rotate(-12deg)}.site-scroll-top:hover .site-scroll-top-square,.site-scroll-top:focus-visible .site-scroll-top-square{opacity:0;transform:scale(.78) rotate(12deg)}.site-scroll-top:hover .site-scroll-top-circle,.site-scroll-top:focus-visible .site-scroll-top-circle{opacity:1;transform:scale(1) rotate(0)}.site-scroll-top:focus-visible{outline:2px solid var(--acid);outline-offset:4px;border-radius:50%}
.mobile-menu-toggle,.mobile-nav-cta{display:none}

[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease) var(--reveal-delay,0ms),transform .7s var(--ease) var(--reveal-delay,0ms)}
.no-js [data-reveal]{opacity:1;transform:none}
[data-reveal].is-visible{opacity:1;transform:translateY(0)}
.interactive-card[data-reveal].is-visible{transform:perspective(800px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));transition:opacity .7s var(--ease) var(--reveal-delay,0ms),transform .36s var(--ease),background .58s var(--ease),border-color .58s var(--ease)}
.numbered-card.interactive-card[data-reveal].is-visible:hover,.direction-card.interactive-card[data-reveal].is-visible:hover,.pricing-card.interactive-card[data-reveal].is-visible:hover{transform:perspective(800px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-7px)}
.loading-screen{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:24px;background:var(--bg)}.loading-screen img{width:96px;animation:logo-pulse 1.5s ease infinite}.loading-screen span{color:var(--muted)}.error-screen img{width:120px}.error-screen h1{font-size:38px;margin:0}.error-screen p{max-width:500px;text-align:center}
@keyframes logo-pulse{50%{transform:scale(.92);filter:brightness(1.35)}}

.modal-backdrop{position:fixed;z-index:100;inset:0;background:rgba(0,0,0,.78);backdrop-filter:blur(10px);display:grid;place-items:center;opacity:0;animation:modal-in .3s forwards}.application-modal,.status-modal{width:560px;padding:36px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 30px 90px rgba(0,0,0,.55);position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:22px;transform:translateY(15px) scale(.97);animation:panel-in .4s var(--ease) forwards}.application-modal>*,.status-modal>*{min-width:0}.modal-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;background:none;color:var(--muted);font-size:30px;cursor:pointer}.application-modal h2,.status-modal h2{font-size:30px;margin:0}.application-modal p,.status-modal p{margin:0}.application-modal .button{width:100%}.status-modal{text-align:center;justify-items:center}.status-modal>img{width:120px;height:120px}.status-modal .button{margin-top:10px}
.application-modal[data-config-contact]{width:min(720px,calc(100vw - 48px));max-height:calc(100vh - 48px);overflow-y:auto}
@keyframes modal-in{to{opacity:1}}@keyframes panel-in{to{transform:none}}

.is-carousel-ready{--carousel-gutter:24px;width:calc(100% + (var(--carousel-gutter) * 2));max-width:none;margin-top:-12px;margin-bottom:-10px;margin-left:calc(var(--carousel-gutter) * -1);padding:12px var(--carousel-gutter) 10px;display:flex!important;gap:24px!important;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y;cursor:grab}
.is-carousel-ready::-webkit-scrollbar{display:none}.is-carousel-ready.is-dragging{cursor:grabbing}
.is-carousel-ready>[data-reveal]{opacity:1;transform:translateY(0);transition:transform .36s var(--ease),background .58s var(--ease),border-color .58s var(--ease)}
.is-carousel-ready>.interactive-card[data-reveal]{transform:perspective(800px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}
.is-carousel-ready>.interactive-card[data-reveal]:hover,.is-carousel-ready>.interactive-card[data-reveal]:focus-within{transform:perspective(800px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg)) translateY(-7px)}

@media(min-width:1921px){.home-hero{--home-background:url('/imgs/background-2560х1440.webp');--home-background:image-set(url('/imgs/background-2560х1440.webp') 1x,url('/imgs/background-3840х2160.webp') 1.5x)}}
@media(min-width:3000px){.home-hero{--home-background:url('/imgs/background-3840х2160.webp')}}

@media(min-width:1041px) and (max-width:1199px){
  body{min-width:0}
  .full-bleed{width:100%;margin-left:0}
  .section-inner,.header-inner,.footer-inner{width:calc(100% - 48px);max-width:1040px}
  .header-inner{gap:20px}.brand{min-width:260px}.site-nav{gap:26px}.header-inner>.button{width:150px;min-width:150px}
  .data-direction-hero{height:auto}.data-direction-hero-layout{width:100%;height:auto;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:24px}.data-direction-copy>p{width:auto}
  .data-fact-band>.section-inner{width:calc(100% - 80px);gap:34px}
  .parser-project-hero,.parser-project-head{height:auto}.parser-project-head{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:28px}.parser-project-meta{height:auto;margin-top:42px}
  .contact-layout{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr)}
  .footer-inner{grid-template-columns:1.5fr repeat(3,1fr);gap:38px}.footer-inner>.social-links{grid-column:4}
}

@media(max-width:1040px){
  body{min-width:0}
  .full-bleed{width:100%;margin-left:0}
  .section-inner,.header-inner,.footer-inner{width:calc(100% - 48px);max-width:1040px}
  :root{--header:72px}
  html{scroll-padding-top:84px}
  body.mobile-menu-open{overflow:hidden}
  .site-header{height:var(--header);background:rgba(9,11,10,.94);backdrop-filter:blur(18px)}
  .site-header-home{background:rgba(9,11,10,.56)}
  .header-inner{gap:12px;justify-content:space-between}
  .header-inner .brand{z-index:2;min-width:0;height:52px}.header-inner .brand-layer{height:52px;gap:8px}.header-inner .brand-mark{width:52px;height:52px}.header-inner .brand-copy strong{font-size:17px}.header-inner .brand-copy small{font-size:9px;margin-top:4px}
  .mobile-menu-toggle{z-index:3;width:46px;height:46px;padding:11px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer}
  .mobile-menu-toggle span{width:22px;height:2px;border-radius:2px;background:var(--text);transition:transform .3s var(--ease),opacity .2s}
  .site-header.is-menu-open .mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.site-header.is-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0}.site-header.is-menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .site-nav{position:absolute;z-index:1;top:100%;left:50%;width:calc(100% + 48px);height:auto;max-height:min(620px,calc(100dvh - var(--header) - 16px));margin:0;padding:24px 24px calc(24px + env(safe-area-inset-bottom));background:rgba(9,11,10,.98);border-top:1px solid var(--border);border-radius:0 0 14px 14px;box-shadow:0 24px 48px rgba(0,0,0,.34);display:flex;flex-direction:column;align-items:stretch;gap:4px;overflow-y:auto;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-10px);transition:opacity .28s var(--ease),visibility .28s,transform .35s var(--ease)}
  .site-header.is-menu-open .site-nav{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
  .site-nav>.nav-item,.directions-nav-wrap>.nav-item{width:100%;height:52px;padding:0 14px;display:flex;justify-content:space-between;color:var(--text);font-size:17px;text-align:left}
  .nav-item::after{left:14px;right:14px;bottom:5px}.directions-nav-wrap{height:auto}
  .directions-nav-wrap>.nav-item::before{content:'+';order:2;color:var(--acid);font:600 22px 'IBM Plex Mono',monospace;transition:transform .3s}.directions-nav-wrap>.nav-item[aria-expanded="true"]::before{transform:rotate(45deg)}
  .directions-menu{position:static;width:100%;max-height:0;margin:0;padding:0 8px;border:0;border-radius:10px;box-shadow:none;overflow:hidden;opacity:1;visibility:visible;transform:none;background:transparent;transition:max-height .35s var(--ease),padding .35s var(--ease),margin .35s var(--ease)}
  .directions-menu.is-open{max-height:260px;margin:2px 0 10px;padding:8px;transform:none;background:#111713;border:1px solid var(--border)}
  .directions-menu a{grid-template-columns:105px 1fr;padding:12px}.directions-menu span{font-size:12px}
  .mobile-nav-cta{display:block;margin-top:auto;padding-top:20px}.mobile-nav-cta .button{width:100%}
  .header-inner>.button{display:none}
  .tab-rail{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}.tab-rail::-webkit-scrollbar{display:none}.tab-link{flex:0 0 220px;padding-inline:14px}
  .config-progress{top:calc(var(--header) + 8px);padding:14px 15px;border-radius:10px}.config-progress-heading{margin-bottom:9px}.config-progress-heading>span,.config-progress-heading strong{font-size:11px}.config-progress-track{gap:4px}.config-progress-step{height:6px}
  .data-direction-hero{height:auto}.data-direction-hero-layout{width:100%;height:auto;grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr);gap:24px}.data-direction-copy>p{width:auto}
  .data-fact-band>.section-inner{width:calc(100% - 80px);gap:34px}
  .parser-project-hero,.parser-project-head{height:auto}.parser-project-head{grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:28px}.parser-project-meta{height:auto;margin-top:42px}
  .contact-layout{grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr)}
  .footer-inner{grid-template-columns:1.5fr repeat(3,1fr);gap:38px}.footer-inner>.social-links{grid-column:4}
}

@media(min-width:741px) and (max-width:1040px){
  .home-hero{--home-background:url('/imgs/background-1426x1162-tablet.webp?v=20260725-2')}
  .seo-answer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
  .direction-grid.is-carousel-ready>.direction-card{flex:0 0 250px;width:250px;height:auto;min-height:290px}
  .pricing-grid.is-carousel-ready>.pricing-card{flex:0 0 394px;width:394px}
  .configurator-layout{grid-template-columns:minmax(0,1fr) 300px;gap:24px}
  .config-groups{gap:18px}.config-group{scroll-margin-top:245px;padding:20px 18px}.config-title{align-items:flex-start;gap:12px}.config-title span{padding-top:6px}.config-title h2{font-size:21px}
  .config-option{min-width:0;min-height:66px;padding:11px 12px;grid-template-columns:minmax(0,1fr);gap:10px}.option-controls{min-width:0;grid-column:1;justify-content:space-between;padding-left:32px}.option-controls>strong{font-size:12px}.option-copy b{font-size:13px}.option-copy small{font-size:11px}.option-reason{padding-left:32px}.config-questions{padding-left:32px}.config-question{grid-template-columns:minmax(0,1fr);gap:7px}.question-error{grid-column:1}
  .config-summary{top:92px;gap:16px}.summary-card{padding:18px}.summary-card h2{font-size:20px}.summary-total{font-size:26px;margin:18px 0}.summary-lines>div,.summary-rule>div{gap:10px;padding:7px 0;font-size:11px}.quick-contact p{font-size:11px}.quick-contact>a:not(.button){font-size:16px}.summary-card .button{font-size:12px}
}

@media(max-width:740px){
  :root{--header:72px;--radius:14px}
  html{scroll-padding-top:84px}
  body{width:100%;overflow-x:hidden}
  body.mobile-menu-open{overflow:hidden}
  .full-bleed{width:100%;margin-left:0}
  .section-inner,.header-inner,.footer-inner{width:calc(100% - 32px);max-width:none}
  .section{padding:58px 0}.section.compact-top{padding-top:20px}
  h1{font-size:40px;line-height:1.08;margin-bottom:22px}h2{font-size:30px;line-height:1.16;margin-bottom:18px}h3{font-size:18px}p{font-size:15px}
  .section-lead{margin-bottom:28px}
  .section-label{height:28px;margin-bottom:18px;padding-inline:11px;font-size:9px}

  .site-header{height:var(--header);background:rgba(9,11,10,.94);backdrop-filter:blur(18px)}
  .site-header-home{background:rgba(9,11,10,.56)}
  .header-inner{gap:12px;justify-content:space-between}
  .header-inner .brand{z-index:2;min-width:0;height:52px}.header-inner .brand-layer{height:52px;gap:8px}.header-inner .brand-mark{width:52px;height:52px}.header-inner .brand-copy strong{font-size:17px}.header-inner .brand-copy small{font-size:9px;margin-top:4px}
  .mobile-menu-toggle{z-index:3;width:46px;height:46px;padding:11px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer}
  .mobile-menu-toggle span{width:22px;height:2px;border-radius:2px;background:var(--text);transition:transform .3s var(--ease),opacity .2s}
  .site-header.is-menu-open .mobile-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.site-header.is-menu-open .mobile-menu-toggle span:nth-child(2){opacity:0}.site-header.is-menu-open .mobile-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .site-nav{position:absolute;z-index:1;top:100%;left:50%;width:calc(100% + 32px);height:auto;max-height:min(620px,calc(100dvh - var(--header) - 16px));margin:0;padding:24px 16px calc(24px + env(safe-area-inset-bottom));background:rgba(9,11,10,.98);border-top:1px solid var(--border);border-radius:0 0 14px 14px;box-shadow:0 24px 48px rgba(0,0,0,.34);display:flex;flex-direction:column;align-items:stretch;gap:4px;overflow-y:auto;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-10px);transition:opacity .28s var(--ease),visibility .28s,transform .35s var(--ease)}
  .site-header.is-menu-open .site-nav{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
  .site-nav>.nav-item,.directions-nav-wrap>.nav-item{width:100%;height:52px;padding:0 14px;display:flex;justify-content:space-between;color:var(--text);font-size:17px;text-align:left}
  .nav-item::after{left:14px;right:14px;bottom:5px}.directions-nav-wrap{height:auto}
  .directions-nav-wrap>.nav-item::before{content:'+';order:2;color:var(--acid);font:600 22px 'IBM Plex Mono',monospace;transition:transform .3s}.directions-nav-wrap>.nav-item[aria-expanded="true"]::before{transform:rotate(45deg)}
  .directions-menu{position:static;width:100%;max-height:0;margin:0;padding:0 8px;border:0;border-radius:10px;box-shadow:none;overflow:hidden;opacity:1;visibility:visible;transform:none;background:transparent;transition:max-height .35s var(--ease),padding .35s var(--ease),margin .35s var(--ease)}
  .directions-menu.is-open{max-height:260px;margin:2px 0 10px;padding:8px;transform:none;background:#111713;border:1px solid var(--border)}
  .directions-menu a{grid-template-columns:105px 1fr;padding:12px}.directions-menu span{font-size:12px}
  .mobile-nav-cta{display:block;margin-top:auto;padding-top:20px}.mobile-nav-cta .button{width:100%}
  .header-inner>.button{display:none}

  .button{width:100%;min-width:0;height:50px;padding-inline:18px}.button-row{width:100%;align-items:stretch;flex-direction:column;gap:10px}
  .home-hero{--home-background:url('/imgs/background-668x668-phone.webp?v=20260725-2');min-height:0;margin-top:calc(var(--header) * -1);padding:calc(var(--header) + 24px) 0 58px}
  .hero-content{height:auto;padding:0 0 30px}.hero-content h1{max-width:100%;font-size:38px;line-height:1.1;margin-bottom:18px}.hero-content>p{font-size:15px;line-height:1.5}.hero-content .button-row{margin-top:44px}.hero-social{position:static;margin-top:30px}.hero-social .social-link{width:52px;height:52px}.hero-social .social-link img{width:44px;height:44px}
  .hero-directions{padding-top:36px}.hero-directions>h2{font-size:30px}.hero-directions>p{margin-bottom:24px}.direction-grid{grid-template-columns:1fr;gap:14px}.direction-card{height:auto;min-height:250px;padding:22px}.direction-card .button{width:100%}

  .numbered-grid,.numbered-grid.cols-2,.numbered-grid.cols-3,.numbered-grid.cols-4{grid-template-columns:1fr;gap:14px}.numbered-card{min-height:170px;padding:22px}.numbered-card h3{font-size:18px}
  .process-block{height:auto;margin-top:18px;padding:8px 0;overflow:hidden}.process-steps{grid-template-columns:1fr;gap:0;padding:0}.process-line{display:none}
  .process-block::before{content:'';position:absolute;z-index:0;left:42px;top:51px;bottom:91px;width:3px;background:repeating-linear-gradient(to bottom,var(--acid) 0 8px,transparent 8px 15px);background-position:center 0;transform:scaleY(0);transform-origin:top;transition:transform 1.1s var(--ease);animation:mobile-process-flow .7s linear infinite}
  .process-block.is-assembled::before{transform:scaleY(1)}
  .process-step{z-index:1;min-height:126px;display:grid;grid-template-columns:86px minmax(0,1fr);grid-template-rows:auto 1fr;column-gap:14px;text-align:left;cursor:default;opacity:.35;transform:translateY(16px);transition:transform .65s var(--ease),opacity .65s var(--ease);transition-delay:calc(var(--step-index) * 85ms)}.process-block.is-assembled .process-step{opacity:1;transform:none}
  .process-hit-zone{grid-column:1;grid-row:1/3;width:86px;height:86px;margin:0}.process-circle{width:66px;height:66px}.process-circle span{font-size:23px}.process-step h3{grid-column:2;margin:13px 0 6px;max-width:none;font-size:16px}.process-step p{grid-column:2;margin:0;max-width:230px;font-size:13px}.process-step:active .process-circle::after{--ring-progress:var(--ring-target)}
  @keyframes mobile-process-flow{to{background-position:center 30px}}

  .cta-band{min-height:0;padding:58px 0}.cta-layout{flex-direction:column;align-items:stretch;gap:26px}.cta-layout h2{max-width:100%}.cta-layout p{margin-bottom:0}.cta-layout .button{margin-top:0}
  .page-hero{padding:22px 0 24px}.page-hero h1{max-width:100%;font-size:38px}.page-hero>.section-inner>p{margin-bottom:26px}
  .tab-rail{height:58px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;overscroll-behavior-x:contain}.tab-rail::-webkit-scrollbar{display:none}.tab-link{flex:0 0 158px;padding:0 12px;font-size:12px}.portfolio-tabs .tab-link{flex-basis:150px}
  .pricing-grid{grid-template-columns:1fr;gap:14px}.pricing-card,.data-solution-card{height:auto;min-height:500px;padding:22px}.pricing-card>p,.data-solution-card>p{min-height:0}.wide-note,.data-solutions-section .wide-note{height:auto;padding:22px}.support-grid{grid-template-columns:1fr}

  .config-section{padding-top:28px}.configurator-layout{grid-template-columns:1fr;gap:28px}.config-groups{gap:16px}
  main[data-configurator-kind]{padding-bottom:calc(94px + env(safe-area-inset-bottom))}.config-group{scroll-margin-top:225px;padding:20px 18px}.config-title{align-items:flex-start;gap:12px}.config-title span{padding-top:6px}.config-title h2{font-size:21px}.config-option{min-width:0;min-height:66px;padding:11px 12px;grid-template-columns:minmax(0,1fr);gap:10px}.option-controls{min-width:0;grid-column:1;justify-content:space-between;padding-left:32px}.option-controls>strong{font-size:12px}.option-copy b{font-size:13px}.option-copy small{font-size:11px}.option-reason,.option-price-note{padding-left:32px}.config-questions{padding-left:32px}.config-question{grid-template-columns:minmax(0,1fr);gap:7px}.question-error{grid-column:1}.config-summary{position:static;gap:16px}.summary-card{padding:22px}.summary-total{font-size:25px}.summary-lines>div,.summary-rule>div,.summary-breakdown>div{font-size:12px}
  .config-mobile-dock{position:fixed;z-index:45;left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));min-height:72px;padding:9px;border:1px solid var(--theme-accent,var(--acid));border-radius:12px;background:rgba(13,17,14,.94);box-shadow:0 12px 34px rgba(0,0,0,.42);backdrop-filter:blur(16px);display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,1.15fr);align-items:center;gap:8px}.config-mobile-total{min-width:0;padding-left:4px;display:grid;gap:3px}.config-mobile-total small{color:var(--muted);font-size:10px}.config-mobile-total strong{color:var(--text);font:650 14px/1.2 Onest;overflow-wrap:anywhere}.config-mobile-dock .button{width:100%;min-width:0;min-height:52px;height:auto;padding:8px 10px;font-size:11px;line-height:1.15;white-space:normal}.config-mobile-dock .button span{position:relative;z-index:2}.config-mobile-dock[hidden]{display:none}#app:has(main[data-configurator-kind])~.site-scroll-top{bottom:104px}

  .projects-grid,.projects-grid.three-cols{grid-template-columns:1fr;gap:16px}.project-card{padding:18px}.project-visual,.home-projects .project-visual{height:240px}.home-projects{gap:34px}
  .contact-layout{grid-template-columns:1fr;gap:20px}.contact-form,.contact-card{padding:20px}.form-grid,.contact-main-fields{grid-template-columns:1fr;gap:16px}.contact-type-picker{height:auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.contact-type-button{min-height:40px;padding:0 5px}.contact-aside{gap:16px}.contact-card ul{grid-template-columns:1fr;gap:12px}.file-field{height:auto;min-height:52px}.consent{align-items:start;font-size:11px;white-space:nowrap}.consent .field-error{white-space:normal}.faq-item button{height:auto;min-height:68px;padding:15px 18px;gap:14px}.faq-item button span{font-size:14px}.faq-item.is-open>div p{padding:0 18px 20px}

  .direction-hero{padding:22px 0 48px}.direction-hero-layout{grid-template-columns:1fr;gap:32px}.direction-hero-layout>*,.data-direction-hero-layout>*{min-width:0}.direction-hero h1{font-size:38px}.direction-mock{height:300px;transform:none}.fact-band,.data-fact-band{height:auto;padding:34px 0}.fact-band>.section-inner,.data-fact-band>.section-inner{width:calc(100% - 32px);grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}.fact-band strong,.data-fact-band strong{font-size:17px}.fact-band span,.data-fact-band span{max-width:none;font-size:13px;line-height:1.2}
  .data-direction-hero{height:auto;padding:22px 0 48px}.data-direction-hero-layout{grid-template-columns:1fr;gap:30px}.data-direction-copy h1{font-size:38px;line-height:1.05}.data-direction-copy>p{width:auto;min-height:0;font-size:15px}.data-direction-copy>.button{margin-top:24px}.data-parser-mock{height:310px}.data-mock-body{height:275px;padding:12px;grid-template-columns:1fr}.data-mock-nav{display:none}.data-mock-stats{gap:18px}.data-mock-stats strong{font-size:23px}.data-mock-row{grid-template-columns:1.5fr .9fr .7fr;font-size:7px}.data-mock-row span:nth-child(3){display:none}.data-content-section,.data-solutions-section{padding:58px 0}.data-content-section h2,.data-solutions-section h2{font-size:30px}.data-cards{gap:14px}.data-cards .numbered-card{height:auto;min-height:190px;padding:20px}.source-logos{right:18px;bottom:18px}.data-direction-cta,.parser-project-cta{height:auto;min-height:0;padding:58px 0}.data-direction-cta .cta-layout{top:0}.data-direction-cta .cta-layout h2,.parser-project-cta .cta-layout h2{font-size:30px}.data-direction-cta .cta-layout .button,.parser-project-cta .button{width:100%}

  .project-head{grid-template-columns:1fr;gap:26px}.project-meta{padding:20px}.project-meta div{align-items:flex-start;flex-direction:column;gap:5px}.project-meta dd{max-width:none;text-align:left}.project-meta .project-role,.project-meta .project-stack{align-items:flex-start}.project-stage{height:480px}.velovolt-preview-controls{right:10px}.preview-scroll-button.button{width:44px;min-width:44px;height:44px}.velovolt-demo-overlay .button{width:calc(100% - 64px)}
  .parser-project-hero{height:auto;padding:22px 0 36px}.parser-project-head{height:auto;grid-template-columns:1fr;gap:24px}.parser-project-copy .breadcrumbs{height:auto;margin-bottom:22px}.parser-project-copy h1{font-size:38px}.parser-project-copy>p:not(.breadcrumbs){font-size:15px}.parser-project-copy .button-row{margin-top:24px}.parser-project-copy .button:first-child,.parser-project-copy .button:last-child{width:100%}.parser-project-meta{height:auto;margin:0;padding:16px}.parser-project-meta div{min-height:0;padding:11px 8px;grid-template-columns:110px 1fr;gap:10px}.parser-project-meta dt,.parser-project-meta dd{font-size:12px}.parser-project-sources,.parser-project-task,.parser-demo-section{padding:58px 0}.parser-project-sources h2,.parser-project-task h2{font-size:30px}.parser-source-grid{gap:14px}.parser-source-card{height:auto;min-height:170px}.parser-browser{height:500px}.parser-browser-body{height:454px;padding:12px;grid-template-columns:1fr;gap:12px}.parser-browser-nav{display:none}.parser-browser-content{grid-template-rows:auto 1fr;gap:12px}.parser-browser-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.parser-browser-stats span{min-width:0}.parser-browser-stats strong{font-size:22px}.parser-browser-table{height:auto;padding:9px}.parser-browser-row{height:38px;grid-template-columns:1.6fr .8fr .7fr;gap:7px;font-size:9px}.parser-browser-row span:nth-child(3){display:none}

  .seo-answer-grid{grid-template-columns:1fr;gap:22px;margin-top:28px}.seo-answer-grid article{padding-top:16px}.seo-answer-grid h3{font-size:18px}.seo-answer-grid p{font-size:14px}.breadcrumbs{overflow-x:auto;white-space:nowrap;scrollbar-width:none}.breadcrumbs::-webkit-scrollbar{display:none}
  .legal-copy h2{font-size:21px;margin-top:38px}.legal-copy p{font-size:15px;line-height:1.65;overflow-wrap:anywhere}.not-found{min-height:650px}.not-found img{width:min(250px,70vw)}
  .site-footer{padding:46px 0 24px}.footer-inner{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 20px}.footer-brand{grid-column:1/-1}.footer-brand .brand{height:58px}.footer-brand .brand-layer{height:58px}.footer-brand .brand-mark{width:58px;height:58px}.footer-inner>.social-links{grid-column:1/-1}.footer-meta{grid-column:1/-1;flex-direction:column;gap:7px;margin-top:10px}.footer-column strong{margin-bottom:10px}.footer-column a{padding:3px 0}
  .site-scroll-top{right:14px;bottom:14px;width:48px;height:48px}
  .modal-backdrop{padding:12px;place-items:center}.application-modal,.status-modal,.application-modal[data-config-contact]{width:100%;max-width:560px;max-height:calc(100dvh - 24px);padding:24px 18px;gap:17px;overflow-y:auto}.application-modal h2,.status-modal h2{padding-right:30px;font-size:24px}.status-modal>img{width:90px;height:90px}.modal-close{right:8px;top:7px}

  .is-carousel-ready{--carousel-gutter:16px}
  .direction-grid.is-carousel-ready>.direction-card{flex:0 0 min(250px,calc(100vw - 48px));width:min(250px,calc(100vw - 48px));height:auto;min-height:250px}
  .numbered-grid.is-carousel-ready>.numbered-card{flex:0 0 330px;width:330px;height:160px;min-height:160px;padding:16px 18px}
  .numbered-grid.is-carousel-ready .card-rail{margin-bottom:10px}.numbered-grid.is-carousel-ready .numbered-card h3{margin-bottom:8px;font-size:16px}.numbered-grid.is-carousel-ready .numbered-card p{font-size:12px;line-height:1.25}
  .numbered-grid.is-carousel-ready .source-logos{right:12px;bottom:12px;transform:scale(.78);transform-origin:right bottom}
  .pricing-grid.is-carousel-ready>.pricing-card{flex:0 0 100%;width:100%}
}

@media(max-width:480px){
  h1{font-size:34px}h2{font-size:27px}.page-hero h1,.direction-hero h1,.data-direction-copy h1,.parser-project-copy h1{font-size:34px}
  .header-inner .brand-copy small{max-width:178px;white-space:nowrap}.hero-content h1{font-size:33px}.hero-content{height:auto}.home-hero{background-position:center 0}
  .fact-band>.section-inner,.data-fact-band>.section-inner{grid-template-columns:1fr 1fr}
  .contact-type-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.contact-type-button:last-child{grid-column:1/-1}
  .project-stage{height:420px}.parser-project-meta div{grid-template-columns:1fr}.parser-project-meta dd{text-align:left}
  .footer-inner{grid-template-columns:1fr}.footer-brand,.footer-inner>.social-links,.footer-meta{grid-column:1}.footer-column{padding-top:4px;border-top:1px solid var(--border)}
}

@media(max-width:380px){
  h1,.page-hero h1,.direction-hero h1,.data-direction-copy h1,.parser-project-copy h1{font-size:32px}
  .direction-hero h1{font-size:30px}
  .hero-content h1{font-size:30px}
}

@media(max-width:340px){
  h2,.cta-layout h2{font-size:24px}
  h1,.page-hero h1,.direction-hero h1,.data-direction-copy h1,.parser-project-copy h1{font-size:29px}
  .direction-hero h1{font-size:26px}
  .hero-content h1{font-size:26px}
  .consent{font-size:9px}
}

.summary-lines{height:0;overflow:hidden;transition:height .42s var(--ease)}

@media(hover:none){
  .tab-link:hover{color:var(--muted)}
  .tab-link.is-active{color:var(--bg)}
  .interactive-card:hover,.numbered-card:hover,.direction-card:hover,.pricing-card:hover,.project-card:hover,.direction-mock:hover,.data-parser-mock:hover,.parser-browser:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

@media(max-width:740px){
  .cookie-consent{left:12px;right:12px;bottom:12px;width:auto;max-height:calc(100dvh - 24px);padding:17px;overflow-y:auto}.cookie-consent h2{font-size:19px}.cookie-consent p{font-size:10px}.cookie-consent-actions .button{height:42px;min-height:42px;font-size:12px}.legal-cookie-settings.button{width:100%;min-width:0}
}
