@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-cyrillic-ext-wght-normal.C8S-KRRz.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-cyrillic-wght-normal.Dvxsihut.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-greek-wght-normal.DL7QRZyv.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-vietnamese-wght-normal.usUDDRr7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-ext-wght-normal.Ch3YOpNY.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-wght-normal.DHIcAJRg.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#0a0908;--bg-raised:#131110;--glass:rgb(var(--ink-rgb) / .04);--glass-strong:rgb(var(--ink-rgb) / .07);--ink:#f4f1ec;--ink-soft:#a39b92;--ink-faint:#6d665f;--accent:#ff5a1f;--accent-soft:rgb(var(--accent-rgb) / .18);--bg-rgb:10 9 8;--raised-rgb:19 17 16;--ink-rgb:244 241 236;--accent-rgb:255 90 31;--accent-hi-rgb:255 138 76;--surface:#151311;--surface-2:#161412;--surface-hi:#1c1917;--surface-lo:#0f0d0c;--heading-from:#fff;--heading-to:#9c948b;--on-accent:#fff;--field:#00000059;--ok:var(--ok);--err:var(--err);--logo-filter:grayscale(1) brightness(0) invert(1);--shadow:#000000d9;--page-bg:var(--bg);--brand:var(--accent);--line:rgb(var(--ink-rgb) / .09);--line-strong:rgb(var(--ink-rgb) / .16);--font:"Manrope Variable", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--max:76rem;--gutter:clamp(1.25rem, 5vw, 3rem);--radius:1rem;--ease:cubic-bezier(.22, 1, .36, 1);color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font:400 1.0625rem/1.65 var(--font);-webkit-font-smoothing:antialiased;margin:0;overflow-x:clip}img,svg{max-width:100%;display:block}a{color:inherit}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}.wrap{max-width:var(--max);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(5rem,11vw,9rem);position:relative}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);align-items:center;gap:.5rem;margin:0 0 1.25rem;font-size:.78rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);width:6px;height:6px;box-shadow:0 0 12px var(--accent);border-radius:50%}h1,h2,h3{letter-spacing:-.035em;margin:0;font-weight:500;line-height:1.05}h1{font-size:clamp(2.25rem,8.6vw,5.75rem)}h2{margin-bottom:1.25rem;font-size:clamp(2rem,5vw,3.75rem)}h3{letter-spacing:-.02em;font-size:1.3rem;font-weight:600}p{max-width:60ch;margin:0 0 1rem}.muted{color:var(--ink-soft)}.gradient-text{background:linear-gradient(180deg, var(--heading-from) 30%, var(--heading-to));color:#0000;-webkit-background-clip:text;background-clip:text;padding-bottom:.12em}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:clamp(2.5rem,6vw,4rem);display:flex}.section-head h2{margin:0}.section-head p{max-width:34ch;margin:0}.skip{background:var(--accent);color:var(--on-accent);z-index:100;padding:.75rem 1rem;position:absolute;top:0;left:-999px}.skip:focus{left:0}.announce{border-bottom:1px solid var(--line);color:var(--ink-soft);font-size:.82rem}.announce .wrap{justify-content:center;align-items:center;gap:.6rem;height:2.4rem;display:flex}.announce a{color:var(--ink);font-weight:600;text-decoration:none}.announce a:hover{color:var(--accent)}.announce .dot{background:var(--ok);width:6px;height:6px;box-shadow:0 0 10px var(--ok);border-radius:50%}.site-header{z-index:50;background:rgb(var(--bg-rgb) / .7);-webkit-backdrop-filter:blur(14px)saturate(140%);border-bottom:1px solid var(--line);position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;gap:1rem;height:4.25rem;display:flex}.brand{letter-spacing:-.02em;white-space:nowrap;align-items:center;gap:.6rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{width:28px;height:28px}.brand-mark rect{fill:var(--accent)}.brand-mark path{stroke:var(--on-accent)}.nav{gap:2rem;font-size:.92rem;display:flex}.nav a{color:var(--ink-soft);text-decoration:none;transition:color .2s}.nav a:hover{color:var(--ink)}.header-cta{gap:.6rem;display:flex}.btn{background:var(--accent);color:var(--on-accent);font:inherit;cursor:pointer;box-shadow:0 0 0 0 var(--accent-soft), 0 8px 30px -8px rgb(var(--accent-rgb) / .6);transition:transform .3s var(--ease), box-shadow .3s, background .2s;border:1px solid #0000;border-radius:999px;align-items:center;gap:.5rem;padding:.8rem 1.35rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{box-shadow:0 0 0 6px var(--accent-soft), 0 12px 36px -8px rgb(var(--accent-rgb) / .7);transform:translateY(-2px)}.btn--glass{background:var(--glass-strong);border-color:var(--line-strong);color:var(--ink);box-shadow:none}.btn--glass:hover{background:rgb(var(--ink-rgb) / .12);box-shadow:none}.btn--text{box-shadow:none;color:var(--ink);background:0 0;padding-inline:.5rem}.btn--text:hover{box-shadow:none;color:var(--accent)}.btn--sm{padding:.55rem 1.05rem;font-size:.85rem}.btn .arrow{transition:transform .3s var(--ease)}.btn:hover .arrow{transform:translate(3px)}.js .reveal{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease);transform:translateY(28px)}.js .d1{transition-delay:90ms}.js .d2{transition-delay:.18s}.js .d3{transition-delay:.27s}.js .reveal.in{opacity:1;transform:none}.js h2.reveal{opacity:1;clip-path:inset(0 -.2em 100%);transition:clip-path 1.1s var(--ease), transform 1.1s var(--ease);transform:translateY(.4em)}.js h2.reveal.in{clip-path:inset(-.3em -.2em -.35em);transform:none}.section--dark{--bg:#0a0908;--bg-rgb:10 9 8;--ink:#f4f1ec;--ink-rgb:244 241 236;--ink-soft:#a39b92;--ink-faint:#6d665f;--surface:#151311;--surface-2:#161412;--surface-hi:#1c1917;--surface-lo:#0f0d0c;--heading-from:#fff;--heading-to:#9c948b;--line:#f4f1ec17;--line-strong:#f4f1ec29;--glass:#f4f1ec0a;--glass-strong:#f4f1ec12;--shadow:#000000d9}.section--brand{--bg:color-mix(in srgb, var(--brand) 95%, #000);--bg-rgb:110 32 6;--ink:#fff;--ink-rgb:255 255 255;--ink-soft:#fff;--ink-faint:#ffffffd9;--surface-hi:#ffffff29;--surface-lo:#ffffff0f;--heading-from:#fff;--heading-to:#ffe3d6;--line:#ffffff38;--line-strong:#ffffff52;--accent:#fff;--accent-rgb:255 255 255;--shadow:#5a190059}.section--brand ::selection{color:var(--brand);background:#fff}.section--dark,.section--brand{--fade:clamp(5rem, 10vw, 8rem);color:var(--ink);padding-block:calc(var(--fade) + clamp(3rem, 6vw, 5rem));background:var(--bg) linear-gradient(to bottom, var(--page-bg) calc(var(--fade) * 0), color-mix(in srgb, var(--bg) 3%, var(--page-bg)) calc(var(--fade) * .15), color-mix(in srgb, var(--bg) 12%, var(--page-bg)) calc(var(--fade) * .3), color-mix(in srgb, var(--bg) 30%, var(--page-bg)) calc(var(--fade) * .45), color-mix(in srgb, var(--bg) 55%, var(--page-bg)) calc(var(--fade) * .6), color-mix(in srgb, var(--bg) 78%, var(--page-bg)) calc(var(--fade) * .75), color-mix(in srgb, var(--bg) 93%, var(--page-bg)) calc(var(--fade) * .88), var(--bg) calc(var(--fade) * 1), var(--bg) calc(100% - var(--fade) * 1), color-mix(in srgb, var(--bg) 93%, var(--page-bg)) calc(100% - var(--fade) * .88), color-mix(in srgb, var(--bg) 78%, var(--page-bg)) calc(100% - var(--fade) * .75), color-mix(in srgb, var(--bg) 55%, var(--page-bg)) calc(100% - var(--fade) * .6), color-mix(in srgb, var(--bg) 30%, var(--page-bg)) calc(100% - var(--fade) * .45), color-mix(in srgb, var(--bg) 12%, var(--page-bg)) calc(100% - var(--fade) * .3), color-mix(in srgb, var(--bg) 3%, var(--page-bg)) calc(100% - var(--fade) * .15), var(--page-bg) calc(100% - var(--fade) * 0))}.services{grid-template-columns:repeat(auto-fit,minmax(15.5rem,1fr));gap:1rem;display:grid}.service{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg, var(--glass-strong), transparent);transition:border-color .4s, transform .4s var(--ease);padding:1.75rem;position:relative;overflow:hidden}.service:after{content:"";aspect-ratio:1;background:radial-gradient(closest-side, rgb(var(--accent-rgb) / .35), transparent);opacity:0;pointer-events:none;width:80%;transition:opacity .5s;position:absolute;inset:auto -30% -60% auto}.service:hover{border-color:rgb(var(--accent-rgb) / .45)}.service:hover:after{opacity:1}.service,.js .service.reveal.in{transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg)) translateY(var(--lift,0px))}.service:hover{--lift:-4px}.service.tilt{transition:border-color .4s,transform .25s ease-out}.service.tilt:after{aspect-ratio:auto;background:radial-gradient(16rem circle at var(--mx,50%) var(--my,50%), rgb(var(--accent-rgb) / .16), transparent 65%);width:auto;inset:0}.service .icon{border:1px solid var(--line-strong);background:var(--surface-2);width:44px;height:44px;color:var(--accent);border-radius:12px;place-items:center;margin-bottom:2.5rem;font-weight:700;display:grid}.service h3{margin-bottom:.5rem}.service p{color:var(--ink-soft);margin:0;font-size:.97rem}.work{overflow:hidden}.stack{--card:clamp(13rem, 22vw, 18rem);--step:calc(var(--card) * .4);margin:clamp(1rem,4vw,3rem) 0 0}.stack ol{perspective:1400px;width:calc(var(--card) + (var(--n) - 1) * var(--step));height:calc(var(--card) + 5rem);margin:0 auto;padding:0;list-style:none;position:relative}.stack li{width:var(--card);z-index:calc(var(--n) - var(--i));transform-origin:50% 0;transform:translateX(calc((var(--n) - 1) * var(--step) / 2)) translateY(calc(var(--i) * -.85rem)) scale(calc(1 - var(--i) * .06));transition:transform .7s var(--ease);transition-delay:calc(var(--i) * 35ms);position:absolute;top:3.5rem;left:0}.stack ol{--n:4}.stack ol:has(>li:first-child:last-child){--n:1}.stack ol:has(>li:nth-child(2):last-child){--n:2}.stack ol:has(>li:nth-child(3):last-child){--n:3}.stack ol:has(>li:nth-child(4):last-child){--n:4}.stack ol:has(>li:nth-child(5):last-child){--n:5}.stack ol:has(>li:nth-child(6):last-child){--n:6}.stack ol:has(>li:nth-child(7):last-child){--n:7}.stack ol:has(>li:nth-child(8):last-child){--n:8}.stack li:first-child{--i:0}.stack li:nth-child(2){--i:1}.stack li:nth-child(3){--i:2}.stack li:nth-child(4){--i:3}.stack li:nth-child(5){--i:4}.stack li:nth-child(6){--i:5}.stack li:nth-child(7){--i:6}.stack li:nth-child(8){--i:7}.stack-card{color:var(--ink);transition:transform .5s var(--ease);border-radius:16px;text-decoration:none;display:block;position:relative}.stack-shot{aspect-ratio:1;border:1px solid var(--line-strong);background:var(--surface);box-shadow:0 30px 60px -20px var(--shadow);border-radius:16px;transition:border-color .4s;display:block;overflow:hidden}.stack-shot img,.stack-shot .art{object-fit:cover;width:100%;height:100%;display:block}.stack-pill{background:var(--ink);color:var(--bg);white-space:nowrap;opacity:0;transition:opacity .3s, transform .4s var(--ease);pointer-events:none;border-radius:999px;padding:.3rem .8rem;font-size:.82rem;font-weight:600;position:absolute;bottom:calc(100% + .65rem);left:.75rem;transform:translateY(6px)}.stack-hint{text-align:center;color:var(--ink-faint);max-width:none;margin:1.25rem 0 0;font-size:.88rem}@media (hover:hover) and (width>=48.01rem){.stack ol:hover li,.stack ol:focus-within li{transform:translateX(calc(var(--i) * var(--step))) rotateY(-26deg) translateZ(calc(var(--i) * -90px));transition-delay:0s}.stack li:hover .stack-card,.stack-card:focus-visible{transform:translateY(-1.5rem)}.stack li:hover .stack-pill,.stack-card:focus-visible .stack-pill{opacity:1;transform:none}.stack li:hover .stack-shot,.stack-card:focus-visible .stack-shot{border-color:rgb(var(--accent-rgb) / .6)}}@media (hover:none),(width<=48rem){.stack ol{perspective:none;grid-template-columns:repeat(auto-fill,minmax(min(100%,9.5rem),1fr));gap:1rem;width:auto;height:auto;display:grid}.stack li{width:auto;position:relative;top:auto;transform:none}.stack-pill{white-space:normal;opacity:1;background:rgb(var(--bg-rgb) / .75);max-width:calc(100% - 1rem);color:var(--ink);-webkit-backdrop-filter:blur(8px);font-size:.78rem;line-height:1.3;top:.5rem;bottom:auto;left:.5rem;transform:none}.stack-hint{display:none}}.portfolio-band{margin-top:clamp(2rem,5vw,4rem)}.portfolio{padding-bottom:clamp(3rem,7vw,6rem)}.portfolio-band--fade{--band:#f4f3f0;--ink:#161412;--ink-soft:#5f5850;--ink-faint:#8a837b;--line:#1614121a;--line-strong:#16141229;--heading-from:#161412;--heading-to:#6f685f;color:var(--ink);--fade:clamp(16rem, 30vw, 26rem);padding-block:calc(var(--fade) * .85);background:var(--band) linear-gradient(to bottom, var(--bg) calc(var(--fade) * 0), color-mix(in srgb, var(--band) 3%, var(--bg)) calc(var(--fade) * .15), color-mix(in srgb, var(--band) 12%, var(--bg)) calc(var(--fade) * .3), color-mix(in srgb, var(--band) 30%, var(--bg)) calc(var(--fade) * .45), color-mix(in srgb, var(--band) 55%, var(--bg)) calc(var(--fade) * .6), color-mix(in srgb, var(--band) 78%, var(--bg)) calc(var(--fade) * .75), color-mix(in srgb, var(--band) 93%, var(--bg)) calc(var(--fade) * .88), var(--band) calc(var(--fade) * 1), var(--band) calc(100% - var(--fade) * 1), color-mix(in srgb, var(--band) 93%, var(--bg)) calc(100% - var(--fade) * .88), color-mix(in srgb, var(--band) 78%, var(--bg)) calc(100% - var(--fade) * .75), color-mix(in srgb, var(--band) 55%, var(--bg)) calc(100% - var(--fade) * .6), color-mix(in srgb, var(--band) 30%, var(--bg)) calc(100% - var(--fade) * .45), color-mix(in srgb, var(--band) 12%, var(--bg)) calc(100% - var(--fade) * .3), color-mix(in srgb, var(--band) 3%, var(--bg)) calc(100% - var(--fade) * .15), var(--bg) calc(100% - var(--fade) * 0))}.portfolio-area{padding-block:clamp(2.5rem,5vw,4rem);scroll-margin-top:5.5rem}.portfolio-area+.portfolio-area{border-top:1px solid var(--line)}.portfolio-head{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:1rem 3rem;margin-bottom:clamp(1.5rem,4vw,3rem);display:flex}.portfolio-head h3{font-size:clamp(1.75rem,3.6vw,2.75rem)}.portfolio-head .muted{max-width:26rem;margin:0}.portfolio-back{color:var(--ink-soft);margin-top:1.5rem;font-size:.9rem;font-weight:600;text-decoration:none;display:inline-block}.portfolio-back:hover{color:var(--accent)}.gallery{--card:clamp(14rem, 23vw, 21rem);outline:none;position:relative}.gallery:focus-visible .gallery-track{outline:2px solid var(--accent);outline-offset:1rem;border-radius:2rem}.gallery-track{height:calc(var(--card) * 1.28);max-width:calc(var(--card) * 4.4);perspective:1600px;touch-action:pan-y;-webkit-user-select:none;user-select:none;margin:0 auto;padding:0;list-style:none;position:relative}.gallery-item{--d:0;--ad:0;width:var(--card);margin-left:calc(var(--card) / -2);z-index:calc(10 - var(--ad));transform:translateX(calc(var(--d) * (.72 - .1 * var(--ad)) * var(--card))) translateY(calc(var(--ad) * .07 * var(--card))) scale(calc(1 - var(--ad) * .14)) rotateY(calc(var(--d) * -9deg));transition:transform .75s var(--ease), opacity .5s;position:absolute;top:0;left:50%}.gallery-item[data-pos="-3"]{--d:-3;--ad:3}.gallery-item[data-pos="-2"]{--d:-2;--ad:2}.gallery-item[data-pos="-1"]{--d:-1;--ad:1}.gallery-item[data-pos="1"]{--d:1;--ad:1}.gallery-item[data-pos="2"]{--d:2;--ad:2}.gallery-item[data-pos="3"]{--d:3;--ad:3}.gallery-item[data-pos=far]{--ad:4;opacity:0;pointer-events:none}.gallery-item:not([data-pos="0"]){cursor:pointer}.gallery-track{cursor:grab}.gallery.dragging .gallery-item{transition:none}.gallery.dragging .gallery-track{cursor:grabbing}.gallery-card{aspect-ratio:4/5;background:#ddd9d3;border-radius:clamp(1.5rem,3vw,2.25rem);transition:box-shadow .5s;display:block;overflow:hidden;box-shadow:0 30px 60px -30px #281e1473}.gallery-item[data-pos="0"] .gallery-card{box-shadow:0 40px 80px -30px #281e148c}.gallery-card img,.gallery-card video,.gallery-card .art{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.gallery-ui{justify-content:center;align-items:center;gap:1rem;margin-top:1.25rem;display:flex}.gallery-dots{background:#16141214;border-radius:999px;gap:.35rem;padding:.45rem .6rem;display:flex}.gallery-dots button{cursor:pointer;width:7px;height:7px;transition:width .35s var(--ease), background .3s;background:#16141247;border:0;border-radius:999px;padding:0}.gallery-dots button[aria-current=true]{background:var(--ink);width:20px}.gallery-dots button{position:relative}.gallery-dots button:after{content:"";position:absolute;inset:-12px -3px}.gallery-caption{text-align:center;max-width:none;margin:.9rem 0 0;font-size:.95rem}.gallery-caption span{color:var(--ink-faint);margin-left:.35rem}@media (width<=48rem){.gallery{--card:min(58vw, 19rem)}.gallery-item{transform:translateX(calc(var(--d) * .58 * var(--card))) translateY(calc(var(--ad) * .06 * var(--card))) scale(calc(1 - var(--ad) * .14)) rotateY(calc(var(--d) * -9deg))}.gallery-item[data-pos="-3"],.gallery-item[data-pos="-2"],.gallery-item[data-pos="2"],.gallery-item[data-pos="3"]{opacity:0;pointer-events:none}}.mock{display:grid;position:relative}.mock .bar{border-bottom:1px solid var(--line);gap:5px;padding:10px 12px;display:flex}.mock .bar i{background:var(--line-strong);border-radius:50%;width:7px;height:7px}.mock .art{aspect-ratio:16/10}.mock--phone .art{aspect-ratio:9/16}.mock--card .art{aspect-ratio:4/3}.mock .lines{gap:7px;padding:12px;display:grid}.mock .lines i{background:var(--line-strong);border-radius:4px;height:7px}.mock .lines i:nth-child(2){width:70%}.mock .lines i:nth-child(3){background:var(--accent);opacity:.8;width:45%}.g1{background:radial-gradient(circle at 30% 30%,#ff8a4c,#b8330c 55%,#2a0d04)}.g2{background:radial-gradient(circle at 70% 20%,#e8ff6a,#7fb800 50%,#1c2a00)}.g3{background:radial-gradient(circle at 30% 70%,#7aa7ff,#2c4fd6 55%,#0a1030)}.g4{background:radial-gradient(circle at 60% 40%,#ffc6d9,#d94f86 55%,#2b0616)}.g5{background:linear-gradient(160deg,#3a3531,#141210)}.g6{background:radial-gradient(circle at 50% 30%,#ffe2b8,#c98a3a 55%,#2a1a06)}.real{aspect-ratio:4/3}.real--phone{aspect-ratio:9/16}.real--desk{aspect-ratio:16/10}.real img,.real video{object-fit:cover;width:100%;height:100%;display:block}.filters{flex-wrap:wrap;gap:.5rem;margin:-1.5rem 0 2.5rem;display:none}.filters-ready .filters{display:flex}.filters button{font:inherit;border:1px solid var(--line-strong);background:var(--glass);color:var(--ink-soft);cursor:pointer;border-radius:999px;padding:.5rem 1rem;font-size:.88rem;font-weight:600;transition:color .2s,border-color .2s,background .2s}.filters button:hover{color:var(--ink)}.filters button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.view-all{text-align:center;max-width:none;margin:clamp(1.5rem,4vw,3rem) 0 0}.work-page h1{font-size:clamp(2.4rem,6vw,4.5rem)}.work-page .filters{margin-top:0}.work-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));align-items:start;gap:2.5rem 1.25rem;display:grid}.work-card{color:var(--ink);gap:.3rem;text-decoration:none;display:grid}.work-card[hidden]{display:none}.work-card .shot{border:1px solid var(--line-strong);background:var(--surface);transition:transform .5s var(--ease), border-color .4s;border-radius:14px;margin-bottom:.6rem;overflow:hidden}.work-card .shot.real--phone{width:62%}.work-card:hover .shot,.work-card:focus-visible .shot{border-color:rgb(var(--accent-rgb) / .5);transform:translateY(-4px)}.work-card-title{font-size:1.05rem;font-weight:600}.work-card-meta{color:var(--ink-faint);font-size:.88rem}.case-hero{padding-block:clamp(3rem,8vw,6rem) clamp(2rem,5vw,3.5rem)}.case-back{margin:0 0 2rem;font-size:.9rem}.case-back a{color:var(--ink-soft);text-decoration:none}.case-back a:hover{color:var(--ink)}.case-hero h1{text-wrap:balance;max-width:18ch}.case-lede{color:var(--ink-soft);max-width:48ch;margin:1.5rem 0 0;font-size:clamp(1.1rem,2vw,1.35rem)}.case-facts{border-top:1px solid var(--line);flex-wrap:wrap;gap:1.25rem 3rem;margin:2.5rem 0 0;padding-top:1.5rem;display:flex}.case-facts div{gap:.2rem;display:grid}.case-facts dt{letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.75rem;font-weight:600}.case-facts dd{margin:0;font-weight:500}.case-facts a{color:var(--ink);text-decoration-color:var(--accent);text-underline-offset:4px}.case-media{margin-bottom:clamp(3rem,8vw,6rem)}.case-frame{border:1px solid var(--line-strong);background:var(--surface);box-shadow:0 40px 80px -30px var(--shadow);border-radius:18px;margin-inline:auto;overflow:hidden}.case-frame .bar{border-bottom:1px solid var(--line);gap:6px;padding:12px 14px;display:flex}.case-frame .bar i{background:var(--line-strong);border-radius:50%;width:9px;height:9px}.case-frame img,.case-frame video{width:100%;height:auto;display:block}.case-frame--phone{border-radius:28px;max-width:min(380px,80vw)}.case-frame--card{max-width:60rem}.case-story{max-width:44rem;margin-bottom:clamp(3rem,8vw,6rem);font-size:1.1rem;line-height:1.75}.case-story h2{margin:2.5rem 0 1rem;font-size:clamp(1.5rem,3vw,2rem)}.case-story h3{margin:2rem 0 .75rem}.case-story p,.case-story ul,.case-story ol{color:var(--ink-soft);max-width:none}.case-story strong{color:var(--ink)}.case-story a{color:var(--ink);text-decoration-color:var(--accent);text-underline-offset:4px}.case-story img{border-radius:12px;margin-block:1.5rem}.case-story blockquote{border-left:2px solid var(--accent);color:var(--ink);margin:2rem 0;padding-left:1.25rem;font-size:1.2rem}.case-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,22rem),1fr));gap:1.25rem;margin-bottom:clamp(3rem,8vw,6rem);display:grid}.case-gallery figure{border:1px solid var(--line);background:var(--surface);border-radius:14px;margin:0;overflow:hidden}.case-gallery img{width:100%;height:auto;display:block}.case-next{padding-top:0}.next-link{border-block:1px solid var(--line);gap:.5rem;margin-bottom:3rem;padding-block:2.5rem;text-decoration:none;display:grid}.next-title{letter-spacing:-.035em;font-size:clamp(2rem,5vw,3.5rem);font-weight:500;line-height:1.1;transition:opacity .3s}.next-link:hover .next-title{opacity:.8}.case-cta{align-items:center}.case-cta h2{margin-bottom:.75rem}.case-cta-actions{justify-content:flex-end;display:flex}.journey{position:relative}.journey-stage{padding-block:clamp(5rem,11vw,9rem)}.journey-eyebrow{transform-origin:50%;will-change:transform}.journey-title{color:var(--ink);margin:0 0 clamp(2.5rem,6vw,4rem);font-size:clamp(2rem,5vw,3.75rem)}.jw{will-change:transform, opacity;display:inline-block}.road,.road-dot{display:none}.journey-steps{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.jstep{border-top:1px solid var(--line-strong);padding:1.75rem 1.5rem;position:relative}.jnode{display:none}.jnum{color:var(--accent);margin-bottom:1.25rem;font-size:.85rem;font-weight:700;display:block}.jcard h3{margin-bottom:.5rem;font-size:1.2rem}.jcard p{color:var(--ink-soft);margin:0;font-size:.95rem}.journey.live{height:420vh}.journey.live .journey-stage{height:100svh;min-height:560px;padding:0;display:flex;position:sticky;top:0;overflow:hidden}.journey.live .journey-stage:before{content:"";background-image:radial-gradient(rgb(var(--ink-rgb) / .13) 1px, transparent 1.2px);pointer-events:none;background-size:26px 26px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(70% 60% at 50% 60%,#000 20%,#0000 75%);mask-image:radial-gradient(70% 60% at 50% 60%,#000 20%,#0000 75%)}.journey.live .journey-inner{flex-direction:column;width:100%;padding-top:clamp(6rem,13vh,8rem);padding-bottom:clamp(2rem,6vh,4rem);display:flex;position:relative}.journey.live .journey-eyebrow{align-self:flex-start;margin-bottom:1rem}.journey.live .jw{opacity:0}.journey.live .journey-map{opacity:0;flex:1;min-height:16rem;margin:2rem 0 5rem;position:relative}.journey.live .road{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.journey.live:not(.tall) .road--wide,.journey.live.tall .road--tall{display:block}.road path{fill:none;vector-effect:non-scaling-stroke;stroke-linecap:round}.road-bed{stroke:rgb(var(--ink-rgb) / .07);stroke-width:22px}.road-line{stroke:rgb(var(--ink-rgb) / .22);stroke-width:1.5px;stroke-dasharray:2 10}.road-glow path{stroke:var(--accent);stroke-width:3px;stroke-dasharray:0 100000}.road-glow{filter:drop-shadow(0 0 6px rgb(var(--accent-rgb) / .9)) drop-shadow(0 0 16px rgb(var(--accent-rgb) / .45))}.journey.live .road-dot{z-index:3;width:14px;height:14px;box-shadow:0 0 0 3px var(--accent), 0 0 18px 6px rgb(var(--accent-rgb) / .7), 0 0 50px 16px rgb(var(--accent-rgb) / .3);opacity:0;background:#fff;border-radius:50%;margin:-7px 0 0 -7px;transition:opacity .3s;display:block;position:absolute}.journey.live .road-dot:after{content:"";border:1px solid rgb(var(--accent-rgb) / .6);border-radius:50%;animation:1.6s ease-out infinite ping;position:absolute;inset:-10px}@keyframes ping{0%{opacity:1;transform:scale(.4)}to{opacity:0;transform:scale(1.6)}}.journey.live .journey-steps{display:block;position:absolute;inset:0}.journey.live .jstep{--show:0;border:0;width:0;height:0;padding:0;position:absolute}.journey.live .jnode{z-index:2;background:var(--bg);border:2px solid rgb(var(--ink-rgb) / .25);width:18px;height:18px;transition:background .4s, border-color .4s, box-shadow .4s, transform .4s var(--ease);border-radius:50%;display:block;position:absolute;top:-9px;left:-9px}.journey.live .jstep.reached .jnode{background:var(--accent);border-color:var(--accent);box-shadow:0 0 14px 3px rgb(var(--accent-rgb) / .55)}.journey.live .jstep.current .jnode{box-shadow:0 0 0 6px rgb(var(--accent-rgb) / .18), 0 0 24px 6px rgb(var(--accent-rgb) / .6);transform:scale(1.3)}.journey.live .jcard{border:1px solid var(--line);background:rgb(var(--bg-rgb) / .72);backdrop-filter:blur(10px);width:min(15rem,22vw);opacity:var(--show);border-radius:14px;padding:1rem 1.15rem 1.1rem;transition:border-color .4s,box-shadow .4s;position:absolute;left:0}.journey.live:not(.tall) .jstep--down .jcard{transform:translate(-50%, calc((1 - var(--show)) * 18px));top:1.6rem}.journey.live:not(.tall) .jstep--up .jcard{transform:translate(-50%, calc((1 - var(--show)) * -18px));bottom:1.6rem}.journey.live .jstep.current .jcard{border-color:rgb(var(--accent-rgb) / .45);box-shadow:0 0 0 1px rgb(var(--accent-rgb) / .12), 0 18px 50px -18px rgb(var(--accent-rgb) / .45)}.journey.live .jnum{letter-spacing:.08em;margin-bottom:.4rem}.journey.live .jcard h3{margin-bottom:.3rem;font-size:1.05rem}.journey.live .jcard p{font-size:.88rem;line-height:1.5}.journey.live.tall{height:380vh}.journey.live.tall .journey-map{margin:1rem 0 .5rem}.journey.live.tall .jcard{width:calc(var(--room,16rem) - 1.5rem);transform:translate(calc((1 - var(--show)) * 16px), -50%);padding:.7rem .9rem;top:0;left:1.5rem}.journey.live.tall .jcard h3{font-size:.98rem}.journey.live.tall .jcard p{font-size:.82rem}.about{grid-template-columns:repeat(auto-fit,minmax(17rem,1fr));align-items:center;gap:clamp(2rem,5vw,4rem);display:grid}.team{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.avatar{aspect-ratio:3/4;border-radius:var(--radius);border:1px solid var(--line-strong);background:linear-gradient(180deg, var(--surface-hi), var(--surface-lo));color:var(--ink-soft);place-items:end start;padding:1rem;font-size:.85rem;display:grid}.avatar:nth-child(2){transform:translateY(2.5rem)}.avatar--photo{margin:0;padding:0;position:relative;overflow:hidden}.avatar--photo img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.avatar--photo figcaption{background:linear-gradient(transparent, rgb(var(--bg-rgb) / .85));width:100%;color:var(--ink);gap:.1rem;padding:2.5rem 1rem 1rem;font-size:.9rem;display:grid;position:relative}.avatar--photo figcaption span{color:var(--ink-soft);font-size:.8rem}.stats{flex-wrap:wrap;gap:2.5rem;margin-top:2.5rem;display:flex}.stats b{letter-spacing:-.04em;color:var(--ink);font-size:2.25rem;font-weight:600;display:block}.stats span{color:var(--ink-soft);font-size:.85rem}.contact-card{border:1px solid var(--line-strong);border-radius:calc(var(--radius) * 1.75);background:var(--bg-raised);isolation:isolate;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:clamp(2rem,5vw,4rem);padding:clamp(1.75rem,5vw,4rem);display:grid;position:relative;overflow:hidden}.contact-card:before{content:"";z-index:-1;aspect-ratio:1;background:radial-gradient(closest-side, rgb(var(--accent-rgb) / .35), transparent);filter:blur(30px);width:60%;position:absolute;inset:-40% -20% auto auto}.contact-direct{gap:.35rem;margin-top:2rem;font-size:.95rem;display:grid}.contact-direct .download{margin-top:.75rem;font-weight:600}.contact-direct a{color:var(--ink);text-decoration-color:var(--accent);text-underline-offset:4px}form{gap:1rem;display:grid}.field-row{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1rem;display:grid}label{color:var(--ink-soft);gap:.45rem;font-size:.85rem;font-weight:600;display:grid}input,select,textarea{font:inherit;border:1px solid var(--line-strong);background:var(--field);color:var(--ink);border-radius:.75rem;width:100%;padding:.85rem 1rem;font-size:1rem;transition:border-color .2s,box-shadow .2s}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft);outline:none}textarea{resize:vertical;min-height:9rem}select option{background:var(--bg-raised)}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}form .btn{justify-self:start}.form-status{min-height:1.5rem;margin:0;font-size:.95rem;font-weight:600}.form-status.ok{color:var(--ok)}.form-status.err{color:var(--err)}footer{border-top:1px solid var(--line);color:var(--ink-faint);padding-block:2rem;font-size:.88rem}footer .wrap{flex-wrap:wrap;justify-content:space-between;gap:1rem;display:flex}footer a{color:var(--ink-soft);text-decoration:none}footer a:hover{color:var(--ink)}@media (width<=60rem){.nav{display:none}}@media (width<=48rem){.header-cta .btn--glass,.announce .hide-sm{display:none}.avatar:nth-child(2){transform:translateY(1.5rem)}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.js .reveal{opacity:1;clip-path:none;transform:none}}.cursor-glow[data-astro-cid-2xu27y2b]{display:none}@media (hover:hover) and (pointer:fine){html.glow-cursor,html.glow-cursor *{cursor:none!important}html.glow-cursor input,html.glow-cursor textarea,html.glow-cursor select,html.glow-cursor [contenteditable]{cursor:auto!important}html.glow-cursor .cursor-glow[data-astro-cid-2xu27y2b]{z-index:9999;pointer-events:none;opacity:0;width:12px;height:12px;transition:opacity .25s, width .3s var(--ease), height .3s var(--ease), margin .3s var(--ease), background .3s;background:#111;border-radius:50%;margin:-6px 0 0 -6px;display:block;position:fixed;top:0;left:0;box-shadow:0 0 0 1px #ffffff8c,0 0 10px 3px #00000038,0 0 22px 6px #00000014}html.glow-cursor .cursor-glow[data-astro-cid-2xu27y2b].on{opacity:1}html.glow-cursor .cursor-glow[data-astro-cid-2xu27y2b].over{background:#11111129;width:32px;height:32px;margin:-16px 0 0 -16px}html.glow-cursor .cursor-glow[data-astro-cid-2xu27y2b].down{width:10px;height:10px;margin:-5px 0 0 -5px}html.glow-cursor .cursor-glow[data-astro-cid-2xu27y2b].on-dark{background:#fff;box-shadow:0 0 0 1px #00000059,0 0 10px 3px #ffffff47,0 0 22px 6px #ffffff1a}html.glow-cursor .cursor-glow[data-astro-cid-2xu27y2b].on-dark.over{background:#fff3}html.glow-cursor .cursor-glow[data-astro-cid-2xu27y2b].typing{opacity:0}}
