.profile-card-3d{--pointer-x:50%;--pointer-y:50%;--rotate-x:0deg;--rotate-y:0deg;--shine-opacity:.04;contain:paint;perspective:900px;border-radius:30px;min-height:540px;position:relative;overflow:hidden}.profile-card-3d:before{content:"";background:radial-gradient(circle at var(--pointer-x) var(--pointer-y), #497eff57, transparent 58%);filter:blur(34px);opacity:calc(var(--shine-opacity) * 2.2);transition:opacity .22s var(--ease);border-radius:30px;position:absolute;inset:-18px}.profile-card-shell{contain:paint;transform:rotateX(var(--rotate-x)) rotateY(var(--rotate-y));transform-style:preserve-3d;transition:transform .22s var(--ease);background:radial-gradient(circle at 74% 48%,#17526c57,#0000 15rem),radial-gradient(circle at 18% 16%,#534c9152,#0000 14rem),linear-gradient(145deg,#272541 0%,#1b1d35 48%,#071927 100%);border:1px solid #ffffff14;border-radius:24px;position:absolute;inset:0;overflow:hidden}.profile-card-hy,.profile-card-glare{z-index:3;pointer-events:none;position:absolute;inset:0}.profile-card-hy{opacity:var(--shine-opacity);mix-blend-mode:screen;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y), #fffffff5 0%, #ffffff7a 13%, #ffffff14 28%, transparent 46%), repeating-linear-gradient(-35deg, #85fff7 0 9%, #7a95ff 9% 18%, #d875ff 18% 27%, #a8ff61 27% 36%);-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='170' viewBox='0 0 220 170'%3E%3Cg transform='rotate(-18 110 85)'%3E%3Ctext x='38' y='108' font-family='Arial, Helvetica, sans-serif' font-size='78' font-weight='650' fill='white'%3EHY%3C/text%3E%3C/g%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='170' viewBox='0 0 220 170'%3E%3Cg transform='rotate(-18 110 85)'%3E%3Ctext x='38' y='108' font-family='Arial, Helvetica, sans-serif' font-size='78' font-weight='650' fill='white'%3EHY%3C/text%3E%3C/g%3E%3C/svg%3E");-webkit-mask-size:180px 138px;mask-size:180px 138px;-webkit-mask-repeat:repeat;mask-repeat:repeat;-webkit-mask-position:calc(var(--pointer-x) * .18) calc(var(--pointer-y) * .18);mask-position:calc(var(--pointer-x) * .18) calc(var(--pointer-y) * .18);transition:opacity .22s var(--ease)}.profile-card-glare{z-index:4;opacity:.18;background:radial-gradient(circle at var(--pointer-x) var(--pointer-y), #ffffff47, transparent 30%);mix-blend-mode:overlay}.profile-card-avatar{z-index:2;object-fit:contain;object-position:center bottom;filter:saturate(.72)contrast(1.02)brightness(.88);width:100%;height:90%;position:absolute;bottom:-8%;left:0;right:0}.profile-card-heading{z-index:5;text-align:center;position:absolute;top:60px;left:22px;right:22px;transform:translateZ(22px)}.profile-card-heading h3{color:#e8e9ffc7;text-shadow:0 2px 18px #00000047;margin:0;font-size:clamp(40px,4.9vw,60px);font-weight:800;line-height:.96}.profile-card-heading p{color:#e8e9ff94;margin:6px 0 0;font-size:17px;font-weight:700}@media (width<=1180px){.profile-card-3d{min-height:560px}}@media (width<=520px){.profile-card-3d{min-height:460px}.profile-card-avatar{width:100%;left:0;right:0}.profile-card-heading{top:38px}.profile-card-heading h3{font-size:34px}.profile-card-heading p{font-size:14px}}.project-masonry{width:100%;margin-top:24px;position:relative}.project-masonry-slot{color:#ffffffc7;cursor:pointer;text-align:left;transform-origin:50%;will-change:transform, width, height, opacity;opacity:1;filter:blur();background:radial-gradient(circle at 72% 24%,#ffffff14,#0000 11rem),linear-gradient(135deg,#ffffff0e,#0000 46%),#10141a;border:1px solid #ffffff16;border-radius:10px;flex-direction:column;justify-content:space-between;align-items:flex-start;padding:16px;display:flex;position:absolute;top:0;left:0;overflow:hidden;box-shadow:inset 0 1px #ffffff0b,inset 0 0 0 1px #ffffff05}.project-masonry-slot:before{content:"";opacity:.58;pointer-events:none;background:linear-gradient(120deg,#0000 18%,#ffffff0b 34%,#0000 52%),radial-gradient(circle at 22% 72%,#6d8a9b1f,#0000 9rem);position:absolute;inset:0}.project-masonry-slot:hover{border-color:#ffffff29}.project-masonry-slot>span,.project-masonry-slot>strong{z-index:1;position:relative}.project-masonry-slot>span{color:#ffffff75;font-size:12px;font-weight:700}.project-masonry-slot>strong{color:#ffffffc7;max-width:15em;font-size:clamp(17px,1.8vw,26px);line-height:1.05}.project-masonry-slot-image{background:#080b10;padding:0}.project-masonry-slot-image:before{z-index:1;opacity:1;background:linear-gradient(#0000000f,#0000 38%,#0000006b),radial-gradient(circle at 78% 20%,#ffffff1a,#0000 12rem)}.project-masonry-slot-image img,.project-masonry-slot-image video{object-fit:cover;width:100%;height:100%;transition:transform .42s var(--ease);display:block;position:absolute;inset:0}.project-masonry-slot-image video{z-index:0;background:#05070b}.project-masonry-slot-image:hover img,.project-masonry-slot-image:hover video{transform:scale(1.035)}.project-masonry-slot-contain{background:radial-gradient(circle at 50% 18%,#ffffff14,#0000 16rem),#101112}.project-masonry-slot-contain img{object-fit:contain;padding:12px}.project-masonry-slot-contain:hover img{transform:scale(1.01)}.project-masonry-slot-video{cursor:default}.project-masonry-slot-video:hover video{transform:none}.project-masonry-slot-video-placeholder{cursor:default}.project-masonry-slot-video-placeholder:hover{border-color:#ffffff2e}.project-masonry-slot-previewable{cursor:zoom-in}.project-masonry-slot-image>span,.project-masonry-slot-image>strong{text-shadow:0 2px 14px #0000009e;margin:16px}.project-masonry-slot-image>span{color:#ffffffa3}.project-masonry-slot-image>strong{color:#ffffffe0;align-self:stretch;max-width:calc(100% - 32px)}.project-masonry-slot-featured{box-shadow:inset 0 1px #ffffff0b,0 18px 44px #00000047}.project-masonry-slot-featured:before{background:linear-gradient(#00000008,#0000 44%,#00000061),radial-gradient(circle at 76% 18%,#aea0d629,#0000 16rem)}.project-masonry-slot-featured>strong{font-size:clamp(21px,2.2vw,34px)}.video-state-control{z-index:2;color:#f5f8fae6;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);cursor:pointer;opacity:.92;min-height:44px;transition:opacity .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease);background:#05080c8f;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:10px;padding:10px 15px 10px 12px;display:inline-flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-state-control:hover{opacity:1;background:#070b10ad;border-color:#ffffff5c}.video-native-hint{pointer-events:none;color:#fff6e0eb;background:#130e087a;border-color:#ffd98e52;box-shadow:0 0 24px #d59e3b29}.video-state-control.is-playing{opacity:0;pointer-events:none;transform:translate(-50%,-50%)scale(.94)}.video-state-control span{flex:none;width:18px;height:18px;position:relative}.video-state-control.is-paused span:before{content:"";border-top:7px solid #0000;border-bottom:7px solid #0000;border-left:11px solid #f5f8fae6;width:0;height:0;position:absolute;top:2px;left:5px}.video-state-control.is-playing span:before,.video-state-control.is-playing span:after{content:"";background:#f5f8fae6;border-radius:1px;width:5px;height:14px;position:absolute;top:2px}.video-state-control.is-playing span:before{left:4px}.video-state-control.is-playing span:after{right:4px}.video-state-control strong{color:#f5f8fae6;font-size:13px;font-weight:700;line-height:1}.video-placeholder-frame{background:linear-gradient(135deg,#e5d2a32e,#0000 44%),radial-gradient(circle at 70% 26%,#ffffff2e,#0000 18rem),linear-gradient(#080a0c1a,#080a0c7a);place-items:center;display:grid;position:absolute;inset:0}.video-placeholder-frame i{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#06080a52;border:1px solid #ffffff3d;border-radius:999px;width:clamp(54px,7vw,92px);height:clamp(54px,7vw,92px);position:relative}.video-placeholder-frame i:before{content:"";border-top:10px solid #0000;border-bottom:10px solid #0000;border-left:15px solid #f6f8f4d1;width:0;height:0;position:absolute;top:50%;left:50%;transform:translate(-35%,-50%)}.video-placeholder-frame em{color:#f6f8f480;letter-spacing:.08em;font-size:11px;font-style:normal;font-weight:700;position:absolute;bottom:16px;right:18px}.project-lightbox{z-index:120;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:radial-gradient(circle at 50% 0,#788da029,#0000 34rem),#000000db;place-items:center;padding:clamp(18px,4vw,56px);display:grid;position:fixed;inset:0}.project-lightbox figure{width:min-content;max-width:min(92vw,1320px);max-height:88vh;margin:0;position:relative}.project-lightbox img{object-fit:contain;background:#05070b;border:1px solid #ffffff29;border-radius:8px;width:auto;max-width:min(92vw,1320px);max-height:82vh;display:block;box-shadow:0 26px 90px #00000075}.project-lightbox figcaption{color:#f5f8fadb;justify-content:space-between;align-items:center;gap:18px;margin-top:14px;display:flex}.project-lightbox figcaption span{color:#f5f8fa7a;font-size:12px;font-weight:700}.project-lightbox figcaption strong{font-size:clamp(18px,2vw,28px);line-height:1.1}.project-lightbox button{color:#f5f8fae0;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;background:#04070a94;border:1px solid #fff3;border-radius:999px;min-height:40px;padding:0 14px;position:absolute;top:14px;right:14px}.project-lightbox button:hover{background:#04070ac2;border-color:#ffffff5c}.project-masonry-slot-cold{background:radial-gradient(circle at 72% 24%,#709bbc3d,#0000 11rem),linear-gradient(135deg,#0d151d,#1b2730 54%,#465a61)}.project-masonry-slot-violet{background:radial-gradient(circle at 72% 24%,#a486d238,#0000 11rem),linear-gradient(135deg,#111019,#25243b 54%,#5a5371)}.project-masonry-slot-graphite{background:radial-gradient(circle at 72% 24%,#dae0dd21,#0000 11rem),linear-gradient(135deg,#0d0f12,#24282d 54%,#5a605e)}.project-masonry-slot-warm{background:radial-gradient(circle at 72% 24%,#e0d2a038,#0000 11rem),linear-gradient(135deg,#14120d,#2a2417 54%,#6f6544)}.project-masonry-slot-mineral{background:radial-gradient(circle at 72% 24%,#97b5ae33,#0000 11rem),linear-gradient(135deg,#0d1413,#1d2c2a 54%,#526b65)}@media (width<=760px){.project-masonry{margin-top:18px}.project-masonry-slot{padding:14px}.project-masonry-slot-featured{box-shadow:none}.video-state-control{min-height:40px;padding:9px 13px 9px 11px}.project-lightbox{padding:14px}.project-lightbox figcaption{flex-direction:column;align-items:flex-start;gap:6px}}@media (prefers-reduced-motion:reduce){.project-masonry,.project-masonry-slot{transition:none}}.specular-button{--sb-radius:18px;--sb-tint:#fff;--sb-tint-opacity:0;--sb-blur:0px;--sb-text-color:#f5f5f5;border-radius:var(--sb-radius);color:var(--sb-text-color);background:color-mix(in srgb, var(--sb-tint) calc(var(--sb-tint-opacity) * 100%), transparent);-webkit-backdrop-filter:blur(var(--sb-blur));letter-spacing:.01em;cursor:pointer;border:none;outline:none;justify-content:center;align-items:center;margin:0;font-family:inherit;font-weight:500;line-height:1;transition:transform .15s;display:inline-flex;position:relative;box-shadow:inset 0 1px #ffffff0a,0 8px 24px #00000040}.specular-button:active{transform:scale(.97)}.specular-button:focus-visible{outline:2px solid color-mix(in srgb, var(--sb-text-color) 60%, transparent);outline-offset:3px}.specular-button:disabled{cursor:default;opacity:.55}.specular-button:disabled:active{transform:none}.specular-button--sm{padding:10px 22px;font-size:.85rem}.specular-button--md{padding:14px 30px;font-size:1rem}.specular-button--lg{padding:18px 40px;font-size:1.15rem}.specular-button__fx{z-index:1;pointer-events:none;position:absolute;inset:-20px}.specular-button__fx canvas{width:100%;height:100%;display:block}.specular-button__label{z-index:2;position:relative}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#07090d;--panel:#10141b;--panel-soft:#151a22;--text:#f0f2f3;--muted:#9aa3ad;--subtle:#66707b;--line:#ffffff1a;--line-strong:#ffffff2e;--accent:#c8d5d9;--accent-dark:#242c32;--max:1660px;--radius:8px;--ease:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:clip}body{min-width:320px;color:var(--text);background:radial-gradient(circle at 18% 8%,#6f868f29,#0000 28rem),linear-gradient(#080a0e 0%,#07090d 44%,#0b0d11 100%);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Microsoft YaHei,sans-serif;line-height:1.6;overflow-x:clip}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}h1,h2,h3,p{text-wrap:pretty;margin-top:0}h1,h2,h3{text-wrap:balance}:focus-visible{outline-offset:4px;outline:2px solid #e4ecefe6}.section-shell{width:min(var(--max), calc(100% - 64px));margin:0 auto}.motion-ready .reveal{opacity:0;filter:blur(10px);transition:opacity .78s var(--ease), filter .9s var(--ease), transform .9s var(--ease);will-change:opacity, filter, transform;transform:translateY(28px)}.motion-ready .reveal.is-visible{opacity:1;filter:blur();will-change:auto;transform:translate(0,0)}.motion-ready .reveal-stagger:not(.category-launcher)>*{opacity:0;filter:blur(8px);transition:opacity .7s var(--ease), filter .82s var(--ease), transform .82s var(--ease);transition-delay:calc(var(--reveal-index,0) * 72ms);will-change:opacity, filter, transform;transform:translateY(22px)}.motion-ready .reveal-stagger.is-visible:not(.category-launcher)>*{opacity:1;filter:blur();will-change:auto;transform:translate(0,0)}.motion-ready .site-header.reveal{transform:translate(-50%)translateY(-10px)}.motion-ready .site-header.reveal.is-visible{transform:translate(-50%)translateY(0)}.motion-ready.motion-reduced .reveal,.motion-ready.motion-reduced .reveal-stagger:not(.category-launcher)>*{filter:none;transition:opacity .36s ease-out,filter linear,transform linear;transform:none}.motion-ready.motion-reduced .site-header.reveal,.motion-ready.motion-reduced .site-header.reveal.is-visible{transform:translate(-50%)}.site-header{z-index:20;width:min(var(--max), calc(100% - 64px));color:#ffffffd1;-webkit-backdrop-filter:blur(22px)saturate(1.1);backdrop-filter:blur(22px)saturate(1.1);background:linear-gradient(135deg,#ffffff1b,#ffffff08 44%,#ffffff12),#070a0ead;border:1px solid #ffffff1f;border-radius:999px;grid-template-columns:minmax(160px,1fr) auto minmax(160px,1fr);align-items:center;gap:18px;height:64px;padding:0 12px 0 18px;display:grid;position:fixed;top:14px;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffffff21,0 16px 44px #0000003d}.site-header:before{z-index:-1;border-radius:inherit;content:"";opacity:.9;background:linear-gradient(90deg,#56b4ff29,#0000 34%,#e7b75421),#ffffff05;position:absolute;inset:5px}.site-header:after{content:"";opacity:.54;background:linear-gradient(90deg,#0000,#e4ecef9e,#0000);height:1px;position:absolute;bottom:-1px;left:21%;right:21%}.brand{letter-spacing:0;white-space:nowrap;min-width:0;transition:color .18s var(--ease), transform .18s var(--ease);justify-self:start;align-items:center;gap:10px;font-size:14px;font-weight:700;display:inline-flex;position:relative}.brand:before{content:"";background:radial-gradient(circle at 35% 35%,#ffffffeb,#56b4ff6b 42%,#56b4ff14);border:1px solid #e4ecefb8;border-radius:999px;flex:none;width:11px;height:11px;box-shadow:0 0 16px #56b4ff6b,0 0 28px #e7b7541f}.brand:hover{color:#fff;transform:translateY(-1px)}.nav{color:#e6ecf0b8;background:#0003;border:1px solid #ffffff1b;border-radius:999px;justify-self:center;gap:4px;padding:5px;font-size:13px;display:flex;box-shadow:inset 0 0 18px #0003}.header-spacer{justify-self:end;min-width:0}.header-spacer:before{content:"PORTFOLIO / 2026";color:#ffffff94;white-space:nowrap;background:#ffffff09;border:1px solid #ffffff1a;border-radius:999px;align-items:center;min-height:34px;padding:0 13px;font-size:11px;font-weight:700;line-height:1;display:inline-flex}.nav a{min-height:34px;transition:color .18s var(--ease), background .18s var(--ease), transform .18s var(--ease);border-radius:999px;align-items:center;padding:0 15px;display:inline-flex}.nav a:hover{color:var(--text);background:#ffffff13;transform:translateY(-1px)}.nav a[href=\#works]{color:#f5fbff;background:linear-gradient(135deg,#56b4ff38,#fff1),#ffffff0b;box-shadow:inset 0 0 0 1px #56b4ff1f,0 0 18px #56b4ff1a}.hero.section-shell{width:100%;margin:0}.hero{align-items:stretch;min-height:100svh;padding:0;display:flex;position:relative}.hero:after{z-index:4;content:"";pointer-events:none;background:radial-gradient(at 50% 72%,#479cdc1f,#0000 38%),linear-gradient(#07090d00 0%,#07090db3 52%,#07090d 100%);height:clamp(150px,22vh,260px);position:absolute;bottom:-1px;left:0;right:0}.hero-stage{background:linear-gradient(90deg,#07090deb 0%,#07090dbd 34%,#07090d33 72%),radial-gradient(circle at 72% 36%,#dee8e847,#0000 18rem),radial-gradient(circle at 88% 74%,#845c4638,#0000 16rem),#0d1117;align-items:center;width:100%;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero-stage:before{z-index:1;content:"";-webkit-backdrop-filter:blur(2px)saturate(.92);backdrop-filter:blur(2px)saturate(.92);pointer-events:none;background:linear-gradient(90deg,#04060ac7 0%,#04060a85 38%,#04060a29 74%),linear-gradient(#ffffff14,#0000 26%,#00000057 100%);position:absolute;inset:0}.hero-stage:after{z-index:1;content:"";pointer-events:none;background:radial-gradient(circle at 28% 42%,#ffffff14,#0000 18rem);position:absolute;inset:0}.hero-art{pointer-events:none;position:absolute;inset:0}.hero-video{object-fit:cover;opacity:.76;width:100%;height:100%;position:absolute;inset:0}.hero-content{z-index:2;width:min(var(--max), calc(100% - 96px));max-width:none;margin:0 auto;padding:clamp(128px,16vh,196px) 0 clamp(88px,12vh,140px);position:relative}.hero-kicker{color:var(--accent);letter-spacing:.16em;text-transform:uppercase;margin-bottom:18px;font-size:12px;font-weight:700}h1{letter-spacing:0;max-width:920px;margin-bottom:24px;font-size:clamp(46px,6vw,92px);line-height:.98}.split-parent{text-wrap:balance;white-space:pre-wrap}.split-char,.split-space,.split-word,.split-line{will-change:transform, opacity;display:inline-block}.split-char,.split-word{opacity:0;backface-visibility:hidden;transform:translateY(.54em)}.hero-title-line{display:block}.hero h1>.hero-title-subline{color:#ffffffad;margin-top:8px;font-weight:300;display:block}h2{letter-spacing:0;margin-bottom:18px;font-size:clamp(32px,3.5vw,62px);line-height:1.04}h3{margin-bottom:12px;font-size:21px;line-height:1.2}.hero-copy{max-width:560px;color:var(--muted);font-size:18px}.identity-row,.tool-stack,.tool-list{flex-wrap:wrap;gap:10px;padding:0;list-style:none;display:flex}.identity-row{margin:22px 0 0}.identity-row span,.tool-stack span,.tool-list li{border:1px solid var(--line);color:#ffffffb8;background:#ffffff09;border-radius:999px;font-size:13px}.identity-row span{padding:8px 12px}.actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.button{border:1px solid var(--line-strong);border-radius:var(--radius);min-width:132px;min-height:48px;transition:transform .22s var(--ease), border-color .22s var(--ease), background .22s var(--ease);justify-content:center;align-items:center;font-weight:700;display:inline-flex}.button:hover{border-color:#ffffff57;transform:translateY(-2px)}.button.primary{color:#080a0e;background:#e4ecef}.button.ghost{color:var(--text);background:#ffffff0a}@media (width>=1181px){.hero-content{width:min(1680px,100% - 64px);padding-top:clamp(130px,17vh,190px);padding-bottom:clamp(90px,11vh,130px)}.hero-kicker{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);color:#ebf4f6e0;letter-spacing:.14em;background:#ffffff0e;border:1px solid #ffffff29;border-radius:999px;width:fit-content;margin-bottom:24px;padding:10px 16px;font-size:13px}.hero h1{max-width:min(1280px,72vw);margin-bottom:34px;font-size:clamp(82px,8.6vw,148px);line-height:.9}.hero h1>.hero-title-subline{max-width:12em;margin-top:18px;font-size:.62em;line-height:1.04}.hero-copy{max-width:780px;font-size:20px;line-height:1.75}.actions{gap:18px;margin-top:38px}.hero .button{min-width:156px;min-height:56px;padding:0 28px;font-size:16px}.identity-row{gap:14px;margin-top:32px}.identity-row span{padding:12px 18px;font-size:15px}}.section-block{padding:118px 0}.section-heading{max-width:840px;margin-bottom:42px}.section-heading.centered{text-align:center;margin-left:auto;margin-right:auto}.section-heading.centered p{margin-left:auto;margin-right:auto}.section-heading.compact{margin-bottom:28px}.capability-top{grid-template-columns:minmax(0,1fr) minmax(400px,540px);align-items:start;gap:32px;margin-bottom:28px;display:grid}.capability-top .section-heading{margin-bottom:0}.software-grid{grid-template-columns:repeat(5,minmax(0,1fr));justify-self:end;gap:10px;width:min(100%,540px);display:grid}.software-grid span{--float-x:0px;--float-y:0px;aspect-ratio:1;border:1px solid var(--line);color:#ffffffb3;min-width:0;transform:translate3d(var(--float-x), var(--float-y), 0) scale(1);transition:transform .18s var(--ease), border-color .22s var(--ease), background .22s var(--ease);background:linear-gradient(145deg,#ffffff0e,#0000 46%),#ffffff07;border-radius:6px;place-items:center;font-size:13px;font-weight:700;display:grid;overflow:hidden}.software-grid img{object-fit:contain;pointer-events:none;width:78%;height:78%;display:block}.software-grid span:hover{transform:translate3d(var(--float-x), var(--float-y), 0) scale(1.12);background:linear-gradient(145deg,#ffffff16,#0000 46%),#ffffff0d;border-color:#ffffff42}.section-note{color:#ffffffb8;background:linear-gradient(90deg,#ffffff12,#ffffff06),#ffffff06;border:1px solid #ffffff1c;border-radius:999px;width:fit-content;max-width:680px;margin-bottom:14px;padding:7px 12px 7px 34px;font-size:15px;line-height:1.35;position:relative}.section-note:before{content:"";background:#e6f1f42e;border:1px solid #e6f1f4b8;border-radius:999px;width:9px;height:9px;position:absolute;top:50%;left:13px;transform:translateY(-50%);box-shadow:0 0 14px #c8d5d942}.section-heading p:not(.section-note){max-width:720px;color:var(--muted);font-size:17px;line-height:1.85}.section-heading h2{display:inline-block;position:relative}.section-heading.centered h2:after{content:"";opacity:.64;background:linear-gradient(90deg,#0000,#e4ecefb3,#0000);height:1px;position:absolute;bottom:-10px;left:14%;right:14%}.category-launcher{perspective:1200px;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:min(1120px,100%);margin-left:auto;margin-right:auto;display:grid}.category-launcher button{--tilt-x:0deg;--tilt-y:0deg;--press-x:0px;--press-y:10px;border:1px solid var(--line);border-radius:var(--radius);min-height:clamp(240px,18vw,268px);color:var(--text);font:inherit;text-align:center;cursor:pointer;transform:translateY(0) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) scale(1);transform-style:preserve-3d;backface-visibility:hidden;contain:paint;will-change:transform;transition:transform .26s var(--ease), border-color .24s var(--ease), background .24s var(--ease), box-shadow .26s var(--ease);background:linear-gradient(145deg,#ffffff0e,#0000 42%),#ffffff08;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:relative;overflow:hidden}#works{z-index:5;margin-top:clamp(-88px,-6vw,-54px);padding-top:clamp(96px,10vw,138px);padding-bottom:78px;position:relative}.image-marquee-section{padding:10px 0 34px;overflow:hidden}.image-marquee-section+.section-block{padding-top:82px}.image-marquee{pointer-events:none;width:calc(100% + 64px);margin-left:-32px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 9% 91%,#0000);mask-image:linear-gradient(90deg,#0000,#000 9% 91%,#0000)}.image-marquee-track{will-change:transform;gap:16px;width:max-content;animation:44s linear infinite image-marquee-scroll;display:flex}.marquee-frame{background:radial-gradient(circle at 24% 18%,#ffffff14,#0000 26%),#0b0f14;border:1px solid #75c6ff75;border-radius:16px;flex:none;height:340px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #daf0ff14,inset 0 0 26px #3a9bff1c,0 0 0 1px #379aff29,0 0 26px #3e9cff2e,0 20px 52px #00000052}.marquee-frame:before{z-index:1;content:"";opacity:.46;pointer-events:none;background:linear-gradient(#ffffff0d,#0000 28%,#00000038),linear-gradient(120deg,#0000 0 44%,#ffffff0f 48%,#0000 54%);position:absolute;inset:0}.marquee-frame img{object-fit:cover;object-position:center;pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.marquee-frame-wide{width:540px}.marquee-frame-portrait{width:290px}.marquee-frame-square{width:380px}@keyframes image-marquee-scroll{0%{transform:translate(0,0)}to{transform:translate(-50%)}}@keyframes border-flow{0%{background-position:0%}to{background-position:200%}}.category-launcher button>*{z-index:1;position:relative}.category-card-game-concept{text-align:left;background:linear-gradient(90deg,#020914eb 0%,#040f1db8 45%,#03080f38 100%),#040a12f0;border-color:#56b4ffd1;border-radius:24px;align-items:flex-start;padding:clamp(26px,3.2vw,44px);box-shadow:inset 0 0 0 1px #67bfff52,inset 0 0 24px #3097ff29,inset 0 -34px 60px #0000006b,0 0 0 1px #2f8eff47,0 0 22px #2689ff29}.category-launcher .category-card-game-concept{text-align:left;border-color:#56b4ffd1;align-items:flex-start}.category-card-game-concept:before{border-radius:inherit;content:"";background:linear-gradient(90deg, #020914e0 0%, #040d1a94 43%, #01050a14 100%), radial-gradient(circle at 18% 28%, #42a0ff29, transparent 34%), var(--category-image) center / 104% auto no-repeat;clip-path:inset(0 round 24px);filter:saturate(.92)contrast(1.05);opacity:.94;backface-visibility:hidden;will-change:transform, opacity, filter;transition:transform .42s var(--ease), opacity .28s var(--ease), filter .28s var(--ease);position:absolute;inset:0;transform:translateZ(0)scale(1.01)}.category-card-game-concept:after{content:"";filter:drop-shadow(0 0 8px #3f9dffb8);opacity:.88;pointer-events:none;height:auto;transform:translate3d(var(--press-x), 0, -1px);transition:opacity .26s var(--ease), transform .26s var(--ease), inset .26s var(--ease);background:linear-gradient(#3f9dff,#3f9dff) 0 0/22px 2px no-repeat,linear-gradient(#3f9dff,#3f9dff) 0 0/2px 22px no-repeat,linear-gradient(#3f9dff,#3f9dff) 100% 0/22px 2px no-repeat,linear-gradient(#3f9dff,#3f9dff) 100% 0/2px 22px no-repeat,linear-gradient(#3f9dff,#3f9dff) 0 100%/22px 2px no-repeat,linear-gradient(#3f9dff,#3f9dff) 0 100%/2px 22px no-repeat,linear-gradient(#3f9dff,#3f9dff) 100% 100%/22px 2px no-repeat,linear-gradient(#3f9dff,#3f9dff) 100% 100%/2px 22px no-repeat;border-radius:18px;position:absolute;inset:18px}.category-launcher button:after{content:"";filter:blur(12px);opacity:0;height:18px;transform:translate3d(var(--press-x), var(--press-y), 0) scaleX(.78);backface-visibility:hidden;transition:opacity .26s var(--ease), transform .26s var(--ease);background:#0000006b;border-radius:50%;position:absolute;bottom:-10px;left:18px;right:18px}.category-launcher button:hover{transform:translateY(-6px) rotateX(var(--tilt-x)) rotateY(var(--tilt-y)) scale(1.018);background:linear-gradient(145deg,#ffffff16,#0000 42%),#ffffff0d;border-color:#ffffff38;box-shadow:inset 0 -18px 30px #00000038}.category-card-game-concept:hover{background:#040a12f0;border-color:#55b0ffe6;box-shadow:inset 0 0 0 1px #7bcfff6b,inset 0 0 28px #379eff33,inset 0 -34px 60px #00000075,0 0 0 1px #3ca0ff47,0 0 24px #2a8eff2e}.category-launcher .category-card-game-concept:hover{border-color:#6dc3fffa}.category-card-game-concept:hover:before{opacity:1;filter:saturate(1.02)contrast(1.09);transform:translateZ(0)scale(1.01)}.category-card-game-concept:hover:after{opacity:1;inset:16px}.category-launcher button:hover:after{opacity:1;transform:translate3d(var(--press-x), var(--press-y), 0) scaleX(.96)}.category-launcher .category-card-game-concept:after{filter:none;opacity:0;height:auto;transform:translate3d(var(--press-x), 0, -1px);background:0 0;border-radius:18px;inset:18px}.category-launcher .category-card-game-concept:hover:after{opacity:0;transform:translate3d(var(--press-x), 0, -1px);inset:16px}.category-launcher span{max-width:12em;transition:color .22s var(--ease), transform .26s var(--ease), text-shadow .26s var(--ease);font-size:clamp(26px,2.5vw,40px);font-weight:700;line-height:1.05}.category-launcher em{color:#ffffffa3;max-width:18em;transition:color .22s var(--ease), transform .26s var(--ease);margin-top:12px;font-size:clamp(14px,1.35vw,18px);font-style:normal;line-height:1.45}.category-launcher strong{color:var(--muted);transition:border-color .22s var(--ease), color .22s var(--ease), transform .26s var(--ease), box-shadow .26s var(--ease);margin-top:26px;font-size:14px;font-weight:500}.category-launcher button:hover span{transform:translateY(-3px)}.category-launcher button:hover em{transform:translateY(2px)}.category-launcher button:hover strong{transform:translateY(4px)}.category-card-game-concept span{color:#f4f8ff;text-shadow:0 8px 24px #00000075;max-width:9em}.category-card-game-concept em{color:#55a9ff;text-shadow:0 0 18px #3394ff38}.category-card-game-concept strong{color:#eef7ff;background:radial-gradient(circle at 18% 18%,#58b9ff3d,#0000 48%),#030f1eb8;border:1px solid #63bcffb8;border-radius:999px;justify-content:center;align-self:flex-start;align-items:center;min-width:112px;min-height:36px;padding:0 16px;font-size:15px;display:inline-flex;box-shadow:inset 0 0 18px #42a6ff33,0 0 18px #36a0ff3d}.category-card-game-concept strong:after{content:none}.category-card-commerce-photo{text-align:left;background:linear-gradient(90deg,#120c04d1 0%,#32230c7a 48%,#ffecc21a 100%),#0e0b06eb;border-color:#e2ae52d6;border-radius:24px;align-items:flex-start;padding:clamp(26px,3.2vw,44px);box-shadow:inset 0 0 0 1px #f5cc7e57,inset 0 0 24px #dea64229,inset 0 -34px 60px #00000061,0 0 0 1px #d2973942,0 0 22px #d69a3924}.category-launcher .category-card-commerce-photo{text-align:left;border-color:#e2ae52d6;align-items:flex-start}.category-card-commerce-photo:before{border-radius:inherit;content:"";background:linear-gradient(90deg, #0d0a05c7 0%, #2c1e0a80 45%, #fff3da14 100%), radial-gradient(circle at 20% 24%, #efc56c2e, transparent 35%), var(--category-image) center / 104% auto no-repeat;clip-path:inset(0 round 24px);filter:saturate(.96)contrast(1.02);opacity:.95;backface-visibility:hidden;will-change:transform, opacity, filter;transition:transform .42s var(--ease), opacity .28s var(--ease), filter .28s var(--ease);position:absolute;inset:0;transform:translateZ(0)scale(1.01)}.category-card-commerce-photo:hover{background:#120c04e6;border-color:#f5c76ee6;box-shadow:inset 0 0 0 1px #ffda916b,inset 0 0 28px #dea64233,inset 0 -34px 60px #0000006b,0 0 0 1px #e5ab4942,0 0 24px #d69a3929}.category-launcher .category-card-commerce-photo:hover{border-color:#f5c76efa}.category-card-commerce-photo:hover:before{opacity:1;filter:saturate(1.03)contrast(1.06);transform:translateZ(0)scale(1.01)}.category-launcher .category-card-commerce-photo:after{filter:none;opacity:0;transform:translate3d(var(--press-x), 0, -1px);background:0 0}.category-launcher .category-card-commerce-photo:hover:after{opacity:0;transform:translate3d(var(--press-x), 0, -1px)}.category-card-commerce-photo span{color:#fff8e8;text-shadow:0 8px 24px #00000061;max-width:9em}.category-card-commerce-photo em{color:#f0bd64;text-shadow:0 0 18px #e2a94133}.category-card-commerce-photo strong{color:#fff9eb;background:radial-gradient(circle at 18% 18%,#f5c9703d,#0000 48%),#301f08b8;border:1px solid #efc167c2;border-radius:999px;justify-content:center;align-self:flex-start;align-items:center;min-width:112px;min-height:36px;padding:0 16px;font-size:15px;display:inline-flex;box-shadow:inset 0 0 18px #ebb54a33,0 0 18px #d89b382e}.category-card-commerce-photo strong:after{content:none}.category-launcher .specular-button.category-card{contain:layout style;isolation:isolate;border-color:#0000;border-radius:24px;overflow:visible;box-shadow:inset 0 -34px 60px #0006}.category-launcher .specular-button.category-card:hover{border-color:#0000;box-shadow:inset 0 -34px 60px #00000070}.category-launcher .specular-button__fx{z-index:2;pointer-events:none;max-width:none;display:block;position:absolute;inset:-20px}.category-launcher .specular-button__label{z-index:3;align-items:inherit;width:100%;max-width:none;text-align:inherit;flex-direction:column;justify-content:center;display:flex;position:relative}.category-launcher .specular-button__label>*{z-index:3;position:relative}.works-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.works-dialog{z-index:40;background:radial-gradient(circle at 50% 8%, rgba(var(--dialog-accent,255, 255, 255), .07), transparent 34rem), #020408d1;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.works-dialog-panel{--dialog-accent:255, 255, 255;--dialog-accent-soft:255, 255, 255;--dialog-max-height:min(820px, calc(100vh - 56px));width:min(1280px,100%);max-height:var(--dialog-max-height);border:1px solid rgba(var(--dialog-accent), .22);background:linear-gradient(#ffffff09,#0000 18%),#080b10;border-radius:14px;padding:0;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff12,inset 0 0 0 1px #ffffff09,0 30px 90px #00000080}.works-dialog-panel:before{z-index:2;content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(90deg, rgba(var(--dialog-accent), .16), transparent 24%, transparent 76%, rgba(var(--dialog-accent), .12)) border-box, linear-gradient(180deg, rgba(var(--dialog-accent), .04), transparent 16%, transparent 84%, rgba(var(--dialog-accent), .035)) border-box;opacity:.58;position:absolute;inset:1px}.works-dialog-scroll{z-index:1;max-height:var(--dialog-max-height);overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-color:rgba(var(--dialog-accent), .42) #ffffff0b;scrollbar-width:thin;background:#080b10;border-radius:13px;padding:30px 18px 30px 30px;position:relative;overflow:auto}.works-dialog-panel-detail .works-dialog-scroll:after{z-index:3;content:"";pointer-events:none;background:linear-gradient(#0000 0%,#080b10d6 62%,#080b10 100%);border-radius:0 0 13px 13px;height:70px;margin:-70px -18px 0 -30px;display:block;position:sticky;bottom:-30px}.works-dialog-scroll::-webkit-scrollbar{width:10px}.works-dialog-scroll::-webkit-scrollbar-track{background:#ffffff0a;border-radius:999px;margin:14px 0}.works-dialog-scroll::-webkit-scrollbar-thumb{background:rgba(var(--dialog-accent), .38);background-clip:content-box;border:3px solid #0000;border-radius:999px}.works-dialog-scroll::-webkit-scrollbar-thumb:hover{background:rgba(var(--dialog-accent), .52);background-clip:content-box}.works-dialog-panel-game-concept{--dialog-accent:86, 180, 255;--dialog-accent-soft:42, 142, 255}.works-dialog-panel-commerce-photo{--dialog-accent:231, 183, 84;--dialog-accent-soft:212, 151, 46}.works-dialog-header{z-index:5;grid-template-columns:minmax(0,1fr) auto auto;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px;display:grid;position:relative}.works-dialog-header h3{margin-bottom:0;font-size:clamp(30px,4vw,52px);line-height:1}.works-dialog-header p:not(.section-note){max-width:780px;color:var(--muted);margin:12px 0 0;font-size:16px;line-height:1.8}.dialog-close,.dialog-secondary{border:1px solid rgba(var(--dialog-accent), .38);min-width:72px;min-height:44px;color:var(--text);background:linear-gradient(180deg, rgba(var(--dialog-accent), .11), rgba(var(--dialog-accent), .045)), #0a0e13;font:inherit;cursor:pointer;transition:background .18s var(--ease), border-color .18s var(--ease);border-radius:6px;box-shadow:inset 0 0 0 1px #0000002e}.dialog-close:hover{border-color:rgba(var(--dialog-accent), .58);background:rgba(var(--dialog-accent), .095)}.dialog-secondary{color:#ffffffc7}.dialog-secondary:hover{border-color:rgba(var(--dialog-accent), .58);background:rgba(var(--dialog-accent), .095)}.dialog-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.project-brief{border:1px solid rgba(var(--dialog-accent), .12);background:rgba(var(--dialog-accent), .08);border-radius:10px;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0 0 24px;display:grid;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff06}.project-brief-item{min-height:148px;transition:background .22s var(--ease), transform .22s var(--ease);background:linear-gradient(145deg,#ffffff0e,#ffffff05),#0c1016;padding:18px;position:relative}.project-brief-item:before{content:"";background:rgba(var(--dialog-accent), .5);width:7px;height:7px;box-shadow:0 0 14px rgba(var(--dialog-accent-soft), .24);border-radius:999px;position:absolute;top:18px;right:18px}.project-brief-item:hover{background:linear-gradient(145deg, rgba(var(--dialog-accent), .105), #ffffff06), #0c1016;transform:translateY(-2px)}.project-brief dt{color:rgba(var(--dialog-accent), .82);letter-spacing:0;margin-bottom:12px;font-size:12px;font-weight:700}.project-brief dd{color:#f4f7fad6;margin:0;font-size:14px;line-height:1.75}.work-card,.capability-card{border:1px solid var(--line);border-radius:var(--radius);transition:transform .24s var(--ease), border-color .24s var(--ease), background .24s var(--ease);background:#ffffff09}.work-card{--work-accent:255, 255, 255;--work-accent-soft:255, 255, 255;border-color:rgba(var(--work-accent), .16);min-height:100%;padding:14px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffff0b,inset 0 0 0 1px #ffffff05}.work-card:after{content:"";pointer-events:none;border-radius:inherit;background:linear-gradient(rgba(var(--work-accent), .24), rgba(var(--work-accent), .24)), linear-gradient(145deg, #ffffff1f, transparent 32%, transparent 68%, rgba(var(--work-accent), .12));opacity:.58;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);mask-image:linear-gradient(#000 0 0),linear-gradient(#000 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.work-card>*{z-index:1;position:relative}.work-card-game-concept{--work-accent:86, 180, 255;--work-accent-soft:42, 142, 255}.work-card-commerce-photo{--work-accent:231, 183, 84;--work-accent-soft:212, 151, 46}.work-card-clickable{cursor:pointer}.work-card:hover,.capability-card:hover{background:#ffffff0e}.work-card:hover{box-shadow:inset 0 1px 0 #ffffff0f, inset 0 0 0 1px rgba(var(--work-accent), .06), 0 14px 34px #00000038}.capability-card:hover{border-color:#ffffff42}.work-card>button{border:1px solid rgba(var(--work-accent), .42);color:#ffffffd1;background:rgba(var(--work-accent), .072);width:100%;min-height:42px;font:inherit;cursor:pointer;transition:background .18s var(--ease), border-color .18s var(--ease);border-radius:6px;margin-top:18px;padding:0 42px 0 18px;position:relative}.work-card>button:after{content:">";color:rgba(var(--work-accent), .92);transition:transform .18s var(--ease);position:absolute;top:50%;right:18px;transform:translateY(-50%)}.work-card>button:hover{border-color:rgba(var(--work-accent), .58);background:rgba(var(--work-accent), .1)}.work-card>button:hover:after{transform:translate(4px,-50%)}.work-cover{background:#11161d;border-radius:6px;height:330px;position:relative;overflow:hidden}.work-cover img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0;transform:scale(1.01)}.work-cover:before{z-index:1;content:"";background:linear-gradient(#0000000a,#0000 46%,#00000094),linear-gradient(120deg,#ffffff21,#0000 38%),radial-gradient(circle at 70% 32%,#ffffff21,#0000 9rem);position:absolute;inset:0}.work-cover strong{z-index:2;color:#ffffffc2;text-align:right;text-wrap:balance;max-width:calc(100% - 36px);font-size:clamp(22px,3vw,44px);font-weight:700;line-height:.95;position:absolute;bottom:16px;right:18px}.work-cover span{z-index:2;color:#ffffff9e;letter-spacing:.08em;font-size:13px;position:absolute;top:14px;left:18px}.tone-warm{background:linear-gradient(135deg,#17120f,#34312a 48%,#716d62)}.tone-steel{background:linear-gradient(135deg,#0b1118,#1f2a30 48%,#53656a)}.tone-graphite{background:linear-gradient(135deg,#0c0d10,#25282b 52%,#71716a)}.tone-ember{background:linear-gradient(135deg,#16100d,#33221b 52%,#765b42)}.tone-mineral{background:linear-gradient(135deg,#101411,#25322d 52%,#69766b)}.tone-violet{background:linear-gradient(135deg,#111018,#272536 52%,#6c687b)}.work-meta{justify-content:space-between;gap:16px;margin-top:22px;display:flex}.work-meta p,.work-summary{color:var(--muted)}.work-meta p{border:1px solid rgba(var(--work-accent), .28);width:fit-content;color:rgba(var(--work-accent), .88);background:rgba(var(--work-accent), .058);border-radius:999px;margin-bottom:7px;padding:3px 8px;font-size:13px;line-height:1.35}.work-meta span{color:var(--subtle);font-size:13px}.work-summary{color:#dae1e6c7;text-wrap:pretty;min-height:82px;transition:color .22s var(--ease);margin-bottom:18px;font-size:15px;line-height:1.82}.tool-list{margin:0}.tool-list li,.tool-stack span{padding:6px 9px}.work-card h3{color:#fffffff0;transition:color .22s var(--ease), transform .22s var(--ease);margin-bottom:0;position:relative}.work-card h3:after{content:"";background:linear-gradient(90deg, rgba(var(--work-accent), .72), transparent);opacity:0;transform-origin:0;height:1px;transition:opacity .22s var(--ease), transform .26s var(--ease);position:absolute;bottom:-5px;left:0;right:0;transform:scaleX(.36)}.work-card:hover h3{color:#fff;transform:translateY(-1px)}.work-card:hover h3:after{opacity:1;transform:scaleX(1)}.work-card:hover .work-summary{color:#eef4f8e6}.work-card .tool-list li{transition:border-color .18s var(--ease), color .18s var(--ease), background .18s var(--ease), transform .18s var(--ease)}.work-card:hover .tool-list li{border-color:rgba(var(--work-accent), .26);color:#ffffffd6;background:rgba(var(--work-accent), .066)}.work-card .tool-list li:hover{transform:translateY(-2px)}.capability-grid{--spotlight-x:50%;--spotlight-y:50%;--spotlight-pad-x:36px;--spotlight-pad-y:36px;--spotlight-opacity:0;perspective:1000px;isolation:isolate;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid;position:relative}.capability-grid:before{inset:calc(var(--spotlight-pad-y) * -1) calc(var(--spotlight-pad-x) * -1);z-index:0;content:"";pointer-events:none;background:radial-gradient(260px circle at calc(var(--spotlight-x) + var(--spotlight-pad-x)) calc(var(--spotlight-y) + var(--spotlight-pad-y)), #8173ff26, #4cbcff12 38%, #4cbcff05 62%, transparent 82%);opacity:var(--spotlight-opacity);transition:opacity .24s var(--ease);position:absolute}.capability-card{--glow-x:50%;--glow-y:50%;--glow-intensity:0;z-index:1;transform-style:preserve-3d;will-change:transform;padding:28px;position:relative;overflow:hidden}.capability-card:before{z-index:0;border-radius:inherit;content:"";pointer-events:none;background:radial-gradient(190px circle at var(--glow-x) var(--glow-y), rgba(142, 116, 255, calc(var(--glow-intensity) * .78)), rgba(72, 199, 255, calc(var(--glow-intensity) * .3)) 36%, rgba(72, 199, 255, calc(var(--glow-intensity) * .08)) 58%, transparent 76%);opacity:.95;padding:1px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.capability-card:after{z-index:0;content:"";pointer-events:none;opacity:calc(var(--glow-intensity) * .44);transition:opacity .22s var(--ease);background-image:radial-gradient(circle,#a68fffb3 0 1px,#0000 1.8px),radial-gradient(circle,#57dbff73 0 1px,#0000 1.8px);background-position:24px 28px,80px 96px;background-size:84px 74px,110px 96px;position:absolute;inset:0}.capability-particle{z-index:2;pointer-events:none;background:rgba(var(--capability-glow-color), .95);width:4px;height:4px;box-shadow:0 0 10px rgba(var(--capability-glow-color), .82), 0 0 18px rgba(var(--capability-glow-color), .28);border-radius:999px;position:absolute}.capability-particle:before{content:"";border-radius:inherit;background:rgba(var(--capability-glow-color), .16);position:absolute;inset:-3px}.capability-ripple{z-index:2;pointer-events:none;background:radial-gradient(circle, rgba(var(--capability-glow-color), .46) 0%, rgba(var(--capability-glow-color), .22) 34%, transparent 74%);border-radius:50%;position:absolute}.capability-card h3,.capability-card p{z-index:1;position:relative}.capability-card p{color:var(--muted);margin-bottom:0}.about{grid-template-columns:minmax(280px,.45fr) minmax(0,1fr);align-items:center;gap:48px;padding-bottom:92px;display:grid;position:relative}.about:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000,#56b4ff57,#e7b75442,#0000);height:1px;position:absolute;bottom:18px;left:0;right:0;box-shadow:0 0 24px #56b4ff14,0 0 42px #e7b7540f}.about-content{align-self:auto}.about-content>p:not(.eyebrow){max-width:850px;color:var(--muted);font-size:17px}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:34px 0;display:grid}.stat-item{border:1px solid var(--line);border-radius:var(--radius);background:#ffffff08;padding:18px}.stat-item strong{margin-bottom:4px;font-size:28px;line-height:1;display:block}.stat-item span{color:var(--muted);font-size:13px}.contact{flex-direction:column;justify-content:center;min-height:auto;padding:44px 0 116px;display:flex}.contact h2{max-width:1120px;margin-bottom:54px}.contact-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.contact-grid a,.contact-grid span{color:#ffffffc2;overflow-wrap:anywhere;align-items:center;min-height:120px;padding:24px;display:flex}.contact-grid>*+*{border-left:1px solid var(--line)}.contact-grid a{transition:background .18s var(--ease), color .18s var(--ease)}.contact-grid a:hover{color:var(--text);background:#ffffff0b}@media (width<=1180px){.about{grid-template-columns:1fr}.hero-stage{min-height:100svh}.works-grid,.capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.category-launcher,.capability-top{grid-template-columns:1fr}.software-grid{grid-template-columns:repeat(5,minmax(0,1fr));justify-self:stretch;gap:8px;width:100%}}@media (width<=760px){.section-shell,.site-header{width:min(100% - 32px, var(--max))}.hero.section-shell{width:min(100% - 32px, var(--max));margin:0 auto}.site-header{grid-template-columns:auto minmax(0,1fr);gap:10px;height:58px;padding:0 8px 0 13px;top:10px}.nav{justify-self:end;gap:2px;padding:4px;font-size:12px}.nav a{min-height:32px;padding:0 10px}.brand{text-overflow:ellipsis;max-width:9em;font-size:13px;overflow:hidden}.brand:before{width:9px;height:9px}.header-spacer{display:none}.hero{align-items:center;gap:32px;min-height:auto;padding:92px 0 0}.hero-stage{border:1px solid var(--line);border-radius:18px;min-height:720px;display:block}.hero-content{width:auto;max-width:760px;margin:0;padding:34px 24px}h1{font-size:46px}.section-block{padding:82px 0}#works{margin-top:-34px;padding-top:76px;padding-bottom:58px}.image-marquee-section{padding:6px 0 24px}.image-marquee-section+.section-block{padding-top:66px}.image-marquee{width:calc(100% + 32px);margin-left:-16px}.image-marquee-track{gap:10px;animation-duration:32s}.marquee-frame{border-radius:12px;height:236px}.marquee-frame-wide{width:370px}.marquee-frame-portrait{width:188px}.marquee-frame-square{width:256px}.about{padding-bottom:72px}.contact{padding:34px 0 108px}.works-grid,.capability-grid,.stats-grid,.contact-grid{grid-template-columns:1fr}.software-grid span{font-size:11px}.works-dialog{padding:14px}.works-dialog-panel{--dialog-max-height:calc(100vh - 28px);padding:0}.works-dialog-scroll{padding:16px}.works-dialog-header{grid-template-columns:1fr}.dialog-secondary,.dialog-close{width:100%}.project-brief{grid-template-columns:repeat(2,minmax(0,1fr))}.project-brief-item{min-height:auto}.work-cover{height:270px}.contact-grid>*+*{border-top:1px solid var(--line);border-left:0}}@media (width<=520px){.site-header{grid-template-columns:minmax(0,1fr) auto;padding-right:6px}.brand{max-width:6.6em}.nav{overscroll-behavior-x:contain;scrollbar-width:none;max-width:min(230px,58vw);overflow-x:auto}.nav::-webkit-scrollbar{display:none}.nav a{flex:none;padding:0 9px}h1{font-size:40px}h2{font-size:32px}.project-brief{grid-template-columns:1fr}.actions,.button{width:100%}.hero-stage{min-height:760px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.motion-ready.motion-reduced .reveal,.motion-ready.motion-reduced .reveal-stagger:not(.category-launcher)>*{transition-duration:.36s,.01ms,.01ms!important}.image-marquee-track{animation-duration:60s!important;animation-timing-function:linear!important;animation-iteration-count:infinite!important}.works-dialog-panel:before,.work-card:after{animation:none!important}}
