:root{--bg: oklch(.16 .025 270);--bg-raised: oklch(.21 .03 270);--ink: oklch(.95 .012 250);--ink-dim: oklch(.72 .025 260);--cyan: oklch(.8 .12 215);--violet: oklch(.64 .2 300);--line: oklch(.32 .035 270);--grad-brand: linear-gradient(110deg, var(--cyan), oklch(.68 .16 270) 55%, var(--violet));--font-display: "Clash Display", sans-serif;--font-body: "Satoshi", sans-serif;--ease-out: cubic-bezier(.22, 1, .36, 1);color-scheme:dark}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:clamp(1rem,.95rem + .3vw,1.125rem);line-height:1.65;overflow-x:hidden;position:relative}::selection{background:var(--cyan);color:#080c1a}.ambient{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden}.comb-cluster{position:absolute;aspect-ratio:1}.comb{width:100%;height:100%;display:block}.comb__mesh polygon{fill:none;stroke:color-mix(in oklch,var(--cyan) 62%,transparent);stroke-width:2;opacity:.22}.comb-cluster[data-tint=violet] .comb__mesh polygon{stroke:color-mix(in oklch,var(--violet) 62%,transparent)}.comb__hex{fill:color-mix(in oklch,var(--cyan) 75%,transparent);opacity:0;filter:blur(4px);transform-box:fill-box;transform-origin:center;will-change:opacity,transform;animation:hex-pulse var(--cell-dur, 8s) ease-in-out infinite}.comb-cluster[data-tint=violet] .comb__hex{fill:color-mix(in oklch,var(--violet) 75%,transparent)}@keyframes hex-pulse{0%,to{opacity:0;transform:scale(.7)}50%{opacity:.6;transform:scale(1)}}.dust__mote{position:absolute;border-radius:50%;background:color-mix(in oklch,var(--cyan) 78%,white);box-shadow:0 0 6px color-mix(in oklch,var(--cyan) 60%,transparent);opacity:0;will-change:opacity,transform;animation:mote-drift var(--cell-dur, 14s) ease-in-out infinite}.dust__mote[data-tint=violet]{background:color-mix(in oklch,var(--violet) 78%,white);box-shadow:0 0 6px color-mix(in oklch,var(--violet) 60%,transparent)}@keyframes mote-drift{0%,to{opacity:0;transform:translateY(10px)}50%{opacity:var(--o, .5);transform:translateY(-10px)}}.circuit-cluster{position:absolute;aspect-ratio:1}.circuit{width:100%;height:100%;display:block}.circuit-board{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:.18;-webkit-mask-image:linear-gradient(180deg,transparent,#000 5%,#000 95%,transparent);mask-image:linear-gradient(180deg,transparent,#000 5%,#000 95%,transparent)}.circuit__trace{fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.circuit__pad--live{transform-box:fill-box;transform-origin:center;will-change:opacity;animation:circuit-blink var(--cell-dur, 3s) ease-in-out infinite}@keyframes circuit-blink{0%,to{opacity:.12}50%{opacity:.85}}.circuit__pulse{fill:none;stroke:#9fe9f5;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:6 94;stroke-dashoffset:0;filter:drop-shadow(0 0 5px rgba(120,225,245,.7));will-change:stroke-dashoffset;animation:circuit-pulse var(--cell-dur, 4s) linear infinite}.circuit-cluster[data-tint=violet] .circuit__pulse,.circuit__pulse[data-tint=violet]{stroke:#cbb0ff;filter:drop-shadow(0 0 5px rgba(180,140,255,.7))}@keyframes circuit-pulse{0%{stroke-dashoffset:0}to{stroke-dashoffset:-100}}.glow-orb{position:absolute;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,color-mix(in oklch,var(--cyan) 58%,transparent),transparent 68%);filter:blur(48px);opacity:0;mix-blend-mode:screen;will-change:opacity,transform;animation:orb-drift var(--cell-dur, 30s) ease-in-out infinite}.glow-orb[data-tint=violet]{background:radial-gradient(circle,color-mix(in oklch,var(--violet) 58%,transparent),transparent 68%)}@keyframes orb-drift{0%,to{opacity:0;transform:translate(0) scale(.9)}50%{opacity:var(--o, .15);transform:translate(var(--dx, 0),var(--dy, 0)) scale(1.06)}}.ping-ring{position:absolute;translate:-50% -50%;border-radius:50%;border:1.5px solid color-mix(in oklch,var(--cyan) 70%,transparent);opacity:0;will-change:opacity,transform;animation:ping-out var(--cell-dur, 10s) ease-out infinite}.ping-ring[data-tint=violet]{border-color:color-mix(in oklch,var(--violet) 70%,transparent)}@keyframes ping-out{0%{opacity:0;transform:scale(.35)}12%{opacity:.45}70%{opacity:0;transform:scale(2)}to{opacity:0;transform:scale(2)}}.hero,main,.footer{position:relative;z-index:1}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:5rem 1.5rem 4rem;overflow:hidden}.hero__bg{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(62% 56% at 50% 50%,color-mix(in oklch,var(--bg) 62%,transparent),transparent 78%),linear-gradient(180deg,color-mix(in oklch,var(--bg) 30%,transparent),color-mix(in oklch,var(--bg) 58%,transparent) 60%,var(--bg)),url(/hero-bg.jpg) center 40% / cover no-repeat;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 40%,transparent 96%);mask-image:linear-gradient(180deg,#000 0%,#000 40%,transparent 96%);animation:hero-pan 32s ease-in-out infinite alternate;transform-origin:center}@keyframes hero-pan{0%{transform:scale(1.06) translateY(0)}to{transform:scale(1.12) translateY(-1.5%)}}.hero__inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.hero__word{animation:dx-reveal .6s var(--ease-out) 1.55s both}.hero__loc{animation:dx-reveal .6s var(--ease-out) 1.75s both}@keyframes dx-reveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@keyframes hero-rise{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}.hero__lockup{display:flex;flex-direction:column;align-items:center;gap:clamp(.4rem,1.4vw,1rem)}.hero__mark{position:relative;width:clamp(190px,33vw,430px);aspect-ratio:528 / 321}.mark-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;filter:drop-shadow(0 14px 30px rgba(0,0,0,.55));will-change:transform}.mark-x{z-index:1;transform-origin:50% 50%;animation:dx-x-enter 1.6s ease .15s both,dx-wave-x 30s ease-in-out 4.4s infinite}.mark-d{z-index:2;transform-origin:50% 50%;animation:dx-d-flyin 1.6s ease .15s both,dx-wave-d 30s ease-in-out 4.4s infinite}@keyframes dx-d-flyin{0%{opacity:0;transform:translate(-90%) translateY(-5%) rotate(-8deg) scale(.88)}30%{opacity:0;transform:translate(-90%) translateY(-5%) rotate(-8deg) scale(.88);animation-timing-function:cubic-bezier(.5,0,.3,1)}38%{opacity:1}60%{transform:translate(8%) translateY(0) rotate(2.5deg) scale(1.22)}72%{transform:translate(-2%) translateY(0) rotate(-1deg) scale(.97)}86%{transform:translate(1%) translateY(0) rotate(0) scale(1.006)}to{opacity:1;transform:translate(0) translateY(0) rotate(0) scale(1)}}@keyframes dx-x-enter{0%{opacity:0;transform:translate(0) translateY(16%) rotate(7deg) scale(.55);animation-timing-function:cubic-bezier(.34,1.56,.64,1)}18%{opacity:1}32%{transform:translate(0) translateY(-2%) rotate(-2deg) scale(1.06);animation-timing-function:ease-out}46%{transform:translate(0) translateY(0) rotate(0) scale(1)}58%{transform:translate(0) translateY(0) rotate(0) scale(1);animation-timing-function:cubic-bezier(.2,.75,.3,1)}66%{transform:translate(2%) translateY(0) rotate(0) scale(1.3)}80%{transform:translate(0) translateY(0) rotate(0) scale(.96)}92%{transform:translate(0) translateY(0) rotate(0) scale(1.018)}to{transform:translate(0) translateY(0) rotate(0) scale(1)}}@keyframes dx-wave-d{0%,0.7%{transform:scale(1)}2.1%{transform:scale(1.07)}4%{transform:scale(1)}to{transform:scale(1)}}@keyframes dx-wave-x{0%,1.6%{transform:scale(1)}3.1%{transform:scale(1.07)}5%{transform:scale(1)}to{transform:scale(1)}}.mark-impact{position:absolute;left:50%;top:48%;width:26%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.95),rgba(120,205,255,.55) 38%,transparent 70%);opacity:0;z-index:3;pointer-events:none;animation:dx-impact .5s ease-out .98s both}@keyframes dx-impact{0%{opacity:0;transform:scale(.2)}40%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1.9)}}.mark-shine{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;pointer-events:none;overflow:hidden;mix-blend-mode:screen;-webkit-mask:url(/devoflex-mark.svg) center / 100% 100% no-repeat;mask:url(/devoflex-mark.svg) center / 100% 100% no-repeat}.mark-shine:before{content:"";position:absolute;top:-25%;left:0;width:42%;height:150%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.85),transparent);transform:translate(-260%) skew(-14deg);will-change:transform;animation:mark-shine 30s ease-in-out 4.4s infinite}@keyframes mark-shine{0%{transform:translate(-260%) skew(-14deg)}5.7%{transform:translate(520%) skew(-14deg)}to{transform:translate(520%) skew(-14deg)}}@property --shock{syntax: "<percentage>"; inherits: true; initial-value: 0%;}.hero__shock{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;--shock: 0%;opacity:0;background:url(/circuit-tile.svg) center / 150px 150px repeat;mix-blend-mode:screen;filter:blur(.6px) drop-shadow(0 0 5px rgba(95,230,245,.22));-webkit-mask:radial-gradient(circle at 50% 50%,transparent calc(var(--shock) - 44%),rgba(0,0,0,.1) calc(var(--shock) - 34%),rgba(0,0,0,.5) calc(var(--shock) - 21%),#000 calc(var(--shock) - 10%),rgba(0,0,0,.45) calc(var(--shock) - 2%),transparent calc(var(--shock) + 8%));mask:radial-gradient(circle at 50% 50%,transparent calc(var(--shock) - 44%),rgba(0,0,0,.1) calc(var(--shock) - 34%),rgba(0,0,0,.5) calc(var(--shock) - 21%),#000 calc(var(--shock) - 10%),rgba(0,0,0,.45) calc(var(--shock) - 2%),transparent calc(var(--shock) + 8%));animation:dx-shock 1.9s cubic-bezier(.05,.82,.2,1) 1.4s both}.hero__shock:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;mix-blend-mode:screen;filter:blur(9px);background:radial-gradient(circle at 50% 50%,transparent calc(var(--shock) - 34%),rgba(130,210,235,.012) calc(var(--shock) - 25%),rgba(150,222,245,.07) calc(var(--shock) - 12%),rgba(130,210,235,.012) calc(var(--shock) - 1%),transparent calc(var(--shock) + 8%))}@keyframes dx-shock{0%{--shock: 0%;opacity:0}14%{opacity:.42}42%{opacity:.42}to{--shock: 132%;opacity:0}}.hero__word{margin:0;line-height:0}.hero__word-img{display:block;width:clamp(220px,44vw,520px);height:auto;filter:drop-shadow(0 4px 14px rgba(0,0,0,.55))}.hero__loc{margin:1.5rem 0 0;color:var(--ink);font-size:.9rem;letter-spacing:.22em;text-transform:uppercase;opacity:.85}.hero__scroll{position:absolute;bottom:1.75rem;left:50%;translate:-50% 0;z-index:1;width:26px;height:42px;border:1.5px solid color-mix(in oklch,var(--ink) 45%,transparent);border-radius:999px;display:grid;place-items:start center;padding-top:7px}.hero__scroll span{width:4px;height:9px;border-radius:4px;background:var(--cyan);animation:scroll-dot 1.8s var(--ease-out) infinite}@keyframes scroll-dot{0%{transform:translateY(0);opacity:1}70%{transform:translateY(14px);opacity:0}to{transform:translateY(0);opacity:0}}.section{max-width:72rem;margin-inline:auto;padding:clamp(4.5rem,9vw,7.5rem) clamp(1.5rem,6vw,4rem)}.section__head{margin-bottom:clamp(2.5rem,5vw,3.5rem);max-width:42rem}.section__eyebrow{display:inline-block;font-size:.8rem;letter-spacing:.26em;text-transform:uppercase;color:var(--cyan);margin-bottom:.6rem}.section__head h2{font-family:var(--font-display);font-weight:700;font-size:clamp(2rem,5vw,3.25rem);line-height:1.05;letter-spacing:-.02em;margin:0 0 .6rem}.section__head p{color:var(--ink-dim);margin:0}.products__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(1.25rem,3vw,2rem)}.product{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:18px;background:var(--bg-raised);text-decoration:none;color:var(--ink);overflow:hidden;transition:transform .3s var(--ease-out),border-color .3s var(--ease-out)}.product:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--accent);opacity:.85;z-index:2}.product--cyan{--accent: var(--cyan)}.product--violet{--accent: var(--violet)}.product:hover{transform:translateY(-4px);border-color:color-mix(in oklch,var(--accent) 55%,var(--line))}.product__media{aspect-ratio:1100 / 688;overflow:hidden;border-bottom:1px solid var(--line);background:var(--bg)}.product__img{width:100%;height:100%;object-fit:cover;object-position:top center;display:block;transition:transform .5s var(--ease-out)}.product:hover .product__img{transform:scale(1.04)}.product__body{padding:clamp(1.6rem,3vw,2.25rem)}.product__domain{font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.product__name{font-family:var(--font-display);font-weight:700;font-size:clamp(1.6rem,3vw,2.1rem);margin:.5rem 0 .35rem}.product__pitch{font-weight:700;margin:0 0 .6rem}.product__desc{color:var(--ink-dim);margin:0 0 1.4rem}.product__link{color:var(--accent);font-weight:700}.product:hover .product__link{text-decoration:underline}.about__grid{max-width:48rem}.about__lead{font-family:var(--font-display);font-weight:500;font-size:clamp(1.3rem,2.6vw,1.8rem);line-height:1.4;margin:0;text-wrap:balance}.info__grid{display:grid;grid-template-columns:max-content 1fr;gap:.9rem 2.5rem;margin:0;max-width:40rem}.info__term{font-size:.8rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-dim);align-self:center}.info__value{margin:0;font-size:1.05rem;color:var(--ink)}.info__email{color:var(--cyan);text-decoration:none}.info__email:hover{text-decoration:underline}@media (max-width: 520px){.info__grid{grid-template-columns:1fr;gap:.2rem 0}.info__term{margin-top:.9rem}}.footer{border-top:1px solid var(--line);padding:2.5rem clamp(1.5rem,6vw,4rem);display:flex;flex-wrap:wrap;align-items:center;gap:1rem 1.75rem;max-width:72rem;margin-inline:auto}.footer__logo{display:block;filter:drop-shadow(0 3px 8px rgba(0,0,0,.55))}.footer__copy{color:var(--ink-dim);font-size:.88rem;margin:0}.reveal{opacity:0;transform:translateY(28px);transition:opacity .8s var(--ease-out),transform .8s var(--ease-out)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.hero__bg,.hero__inner,.hero__scroll span{animation:none}.product{transition:none}.mark-d,.mark-x,.mark-impact,.hero__word,.hero__loc{animation:none}.mark-shine,.hero__shock{display:none}.comb__hex{animation:none;opacity:.22}.dust__mote{animation:none;opacity:.3}.circuit__pulse{display:none}.circuit__pad--live{animation:none;opacity:.5}.glow-orb{animation:none;opacity:var(--o, .12)}.ping-ring{display:none}}
