:root{--bg:#05091a;--surface:#0b1830;--line:#16294a;--cyan:#0ea5e9;--sky:#7dd3fc;--deep:#0284c7;--text:#dcebff;--muted:#6b8bad;--gutter:clamp(16px, 5vw, 64px);--section:clamp(5rem, 12vw, 9rem);color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:400 1.125rem/1.6 Urbanist,system-ui,sans-serif}h1,h2,h3,p,ol,ul,dl,dd,blockquote{margin:0}a{color:inherit}:focus-visible{outline:2px solid var(--sky);outline-offset:4px;border-radius:2px}::selection{background:var(--cyan);color:var(--bg)}.wrap{width:100%;max-width:1240px;padding-inline:var(--gutter);margin-inline:auto}.skip{background:var(--cyan);color:var(--bg);z-index:10;padding:.75rem 1rem;font-weight:700;position:absolute;top:-4rem;left:1rem}.skip:focus{top:1rem}h1{letter-spacing:-.035em;font-size:clamp(2.75rem,8.5vw,7rem);font-weight:800;line-height:.95}h1>span{white-space:nowrap;display:block}h2{letter-spacing:-.03em;max-width:18ch;font-size:clamp(2.25rem,5.5vw,4.25rem);font-weight:800;line-height:1.02}h2,h3{text-wrap:balance}p{text-wrap:pretty}h3{letter-spacing:-.01em;font-weight:700;line-height:1.15}.lead{color:var(--muted);max-width:58ch;margin-top:1.5rem;font-size:clamp(1.125rem,1.6vw,1.3rem)}.accent{color:var(--cyan)}.logo{letter-spacing:.02em;align-items:center;gap:.5em;font-size:1.125rem;text-decoration:none;display:inline-flex}.logo-a{font-weight:800}.logo-c{color:var(--cyan);font-weight:400}.gem{background:var(--cyan);width:.45em;height:.45em;rotate:45deg}.site-header{align-items:center;gap:2rem;padding-block:1.75rem;display:flex}.site-header nav{gap:1.75rem;margin-left:auto;display:flex}.site-header nav a,.lang{color:var(--muted);font-size:1rem;text-decoration:none;transition:color .2s}.site-header nav a:hover,.lang:hover{color:var(--text)}.lang{border:1px solid var(--line);border-radius:4px;padding:.35rem .75rem}@media (width<=860px){.site-header nav{display:none}.site-header .lang{margin-left:auto}}.btn{background:var(--cyan);color:var(--bg);border-radius:4px;padding:1rem 1.5rem;font-weight:700;text-decoration:none;transition:background .2s;display:inline-block}.btn:hover{background:var(--sky)}.link{color:var(--text);text-underline-offset:.3em;text-decoration-color:var(--cyan);font-weight:600}.hero{grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:center;gap:2rem;min-height:calc(100svh - 6rem);padding-block:2rem 4rem;display:grid}.actions{flex-wrap:wrap;align-items:center;gap:1.5rem 2rem;margin-top:2.5rem;display:flex}.where{color:var(--muted);margin-top:3rem;font-size:1rem}.hero-art{width:100%;max-height:70svh}@media (width<=860px){.hero{grid-template-columns:1fr;min-height:0}.hero-art{order:-1;width:45%;max-height:200px;margin-left:auto}}.section{padding-block:var(--section)}.pairs{margin-top:clamp(3rem,7vw,5rem)}.pairs-head,.pair{grid-template-columns:minmax(0,1fr) 5rem minmax(0,1.25fr);gap:1.5rem;display:grid}.pairs-head{color:var(--muted);padding-bottom:1rem;font-size:1rem}.pair{border-top:1px solid var(--line);padding-block:2rem}.problem h3{color:var(--muted);font-size:1.25rem}.problem p{color:var(--muted);max-width:38ch;margin-top:.5rem;font-size:1rem}.answer h3{font-size:clamp(1.5rem,2.6vw,2rem)}.answer p{max-width:44ch;margin-top:.5rem}.bridge{background:linear-gradient(90deg, var(--line), var(--cyan));height:1px;margin-top:.85rem;position:relative}.bridge:after{content:"";background:var(--cyan);width:9px;height:9px;position:absolute;top:-4px;right:-4px;rotate:45deg}.quote{color:var(--sky);max-width:24ch;margin-top:clamp(4rem,9vw,7rem);font-size:clamp(1.75rem,4vw,3rem);font-style:italic;font-weight:300;line-height:1.2}@media (width<=700px){.pairs-head{display:none}.pair{grid-template-columns:1fr;gap:1rem}.bridge{background:linear-gradient(180deg, var(--line), var(--cyan));width:1px;height:2rem;margin:0 0 0 4px}.bridge:after{inset:auto auto -4px -4px}}.split{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:start;gap:3rem;display:grid}.split-title{position:sticky;top:2rem}.services details{border-top:1px solid var(--line)}.services details:last-child{border-bottom:1px solid var(--line)}.services summary{letter-spacing:-.02em;cursor:pointer;justify-content:space-between;align-items:center;gap:1.5rem;padding-block:1.5rem;font-size:clamp(1.4rem,3vw,2.25rem);font-weight:700;line-height:1.15;list-style:none;transition:color .2s;display:flex}.services summary::-webkit-details-marker{display:none}.services summary:hover,.services details[open] summary{color:var(--sky)}.marker{border:2px solid var(--muted);flex:none;width:14px;height:14px;transition:background .25s,border-color .25s,scale .25s;rotate:45deg}.services details[open] .marker{background:var(--cyan);border-color:var(--cyan);scale:1.3}.services details p{color:var(--muted);max-width:52ch;padding-bottom:1.75rem}@media (width<=860px){.split{grid-template-columns:1fr}.split-title{position:static}}.process-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4rem;margin-top:2rem;display:grid}.crux-wrap{place-items:center;height:80svh;display:grid;position:sticky;top:10svh}.crux{width:100%;height:100%;overflow:visible}.crux .guide{fill:none;stroke:var(--line);stroke-width:1.5px;stroke-dasharray:2 8}.crux .faint{fill:var(--line)}.crux .seg{stroke:var(--cyan);stroke-width:2px;stroke-dasharray:1}.crux text{fill:var(--text);font:700 20px Urbanist,sans-serif}.star polygon{transform-box:fill-box;transform-origin:50%;filter:drop-shadow(0 0 14px var(--glow))}.steps{padding:0 0 15svh;list-style:none}.step{flex-direction:column;justify-content:center;min-height:70svh;display:flex}.num{width:2.5rem;height:2.5rem;color:var(--bg);isolation:isolate;place-items:center;font-weight:800;display:grid;position:relative}.num:before{content:"";background:var(--cyan);z-index:-1;position:absolute;inset:.35rem;rotate:45deg}.step h3{letter-spacing:-.03em;margin-top:1.25rem;font-size:clamp(2rem,4.5vw,3.25rem);font-weight:800}.step p{max-width:38ch;color:var(--muted);margin-top:.75rem}.js .crux .seg{stroke-dashoffset:1px}.js .crux .seg.on{stroke-dashoffset:0}.js .star{opacity:.2}.js .star polygon{filter:none;scale:.7}.js .star.on{opacity:1}.js .star.on polygon{filter:drop-shadow(0 0 14px var(--glow));scale:1}.js .step{opacity:.3}.js .step.on{opacity:1}@media (width<=860px){.process-grid{grid-template-columns:1fr;gap:0}.crux-wrap{z-index:1;background:var(--bg);height:auto;box-shadow:0 1.5rem 1.5rem var(--bg);padding-block:1rem;top:0}.crux{height:32svh}.crux text{font-size:30px}.step{min-height:55svh}}.industries{letter-spacing:-.025em;margin-top:clamp(2.5rem,6vw,4rem);padding:0;font-size:clamp(1.75rem,4.6vw,3.5rem);font-weight:700;line-height:1.3;list-style:none}.industries li{display:inline}.industries li:not(:last-child):after{content:"";vertical-align:.2em;background:var(--cyan);width:.22em;height:.22em;margin-inline:.5em;display:inline-block;rotate:45deg}.contact{background:var(--surface);border-top:2px solid var(--cyan);padding-block:var(--section)}.contact-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:end;gap:3rem;display:grid}.contact h2{font-size:clamp(3rem,8vw,6.5rem)}.contact .lead{color:var(--text);margin:0 0 2rem}.contact dl{gap:1rem;margin-top:2.5rem;display:grid}.contact dt{color:var(--cyan);font-size:.9rem;font-weight:700}.contact dd a{text-decoration-color:var(--line);text-underline-offset:.25em;overflow-wrap:anywhere}.contact dd a:hover{text-decoration-color:var(--cyan)}.tagline{color:var(--muted);margin-top:2.5rem;font:.95rem ui-monospace,SFMono-Regular,Menlo,monospace}@media (width<=860px){.contact-grid{grid-template-columns:1fr}}.site-footer{color:var(--muted);flex-wrap:wrap;align-items:center;gap:1rem 2rem;padding-block:2rem;font-size:.95rem;display:flex}.site-footer .lang{margin-left:auto}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}:root{interpolate-size:allow-keywords}.services details::details-content{block-size:0;transition:block-size .35s ease, content-visibility .35s allow-discrete;overflow:hidden}.services details[open]::details-content{block-size:auto}.crux .seg{transition:stroke-dashoffset .9s}.star,.star polygon,.step{transition:opacity .5s,scale .5s,filter .5s}}
