@font-face{font-family:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.woff2)format("woff2");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:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:500;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.woff2)format("woff2");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}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/50a3f1070da3c6cc-s.2xm1k7t3a0pcd.woff2)format("woff2");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:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/b887d91685b8c137-s.330vchwb4izzb.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:italic;font-weight:600;font-display:swap;src:url(../media/3c7c6164b2587822-s.p.16u3vygyjnhr0.woff2)format("woff2");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}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");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:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:500;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");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}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1e219c03c996efbd-s.2qo5md4hn_gum.woff2)format("woff2");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:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b35b0dbffda7f2c4-s.1d9rlgtqyj_-l.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fraunces;font-style:normal;font-weight:600;font-display:swap;src:url(../media/03bda585a99c6450-s.p.32sris142tqlb.woff2)format("woff2");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}@font-face{font-family:Fraunces Fallback;src:local(Times New Roman);ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.0%;size-adjust:115.45%}.IIHefW_className{font-family:Fraunces,Fraunces Fallback}.IIHefW_variable{--font-fraunces:"Fraunces", "Fraunces Fallback"}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");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}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.MOT0tq_className{font-family:Inter,Inter Fallback;font-style:normal}.MOT0tq_variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/4ba802ed8e67eac5-s.0fuxtgzazslqx.woff2)format("woff2");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:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d7a0600e467cf0bd-s.451yigaaz_4mg.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:400;font-display:swap;src:url(../media/dc0d9adbac686440-s.p.3cik_s2si-ft-.woff2)format("woff2");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}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/b8f2b92a9960dd69-s.0we3rzhp_h228.woff2)format("woff2");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:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/28e60ca39c9ae554-s.44izq0ia6orkf.woff2)format("woff2");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Mono;font-style:normal;font-weight:700;font-display:swap;src:url(../media/8d05cfa5faa8406c-s.p.1s123piy9_v1m.woff2)format("woff2");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}@font-face{font-family:Space Mono Fallback;src:local(Arial);ascent-override:81.58%;descent-override:26.3%;line-gap-override:0.0%;size-adjust:137.28%}.vnF5cq_className{font-family:Space Mono,Space Mono Fallback;font-style:normal}.vnF5cq_variable{--font-space-mono:"Space Mono", "Space Mono Fallback"}
:root{--bg:#0a0a0b;--bg-raised:#111114;--surface:#17171b;--surface-soft:#0e0e10;--ink:#f2f0ec;--ink-soft:#a3a1a6;--muted:#68686d;--accent:#8b5cf6;--accent-dim:#7141e0;--accent-soft:#8b5cf624;--cyan:#22d3ee;--pink:#f472b6;--border:#f2f0ec1a;--border-strong:#f2f0ec33;--font-display:var(--font-fraunces), serif;--font-body:var(--font-inter), sans-serif;--font-mono:var(--font-space-mono), monospace;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.4rem;--text-4xl:3.2rem;--text-5xl:4.4rem;--text-6xl:6rem;--leading-tight:1.02;--leading-heading:1.15;--leading-body:1.65;--container:1280px;--header-height:5rem;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4.5rem;--space-7:7rem;--radius-sm:.3rem;--radius-md:.6rem;--radius-lg:1rem;--radius-pill:999px;--ease-out:cubic-bezier(.22, 1, .36, 1);--transition-fast:.16s var(--ease-out);--transition-base:.28s var(--ease-out);--transition-slow:.6s var(--ease-out)}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + 1rem)}body{padding-top:var(--header-height);background:var(--bg);color:var(--ink);font-family:var(--font-body);font-size:var(--text-base);line-height:var(--leading-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}img,svg,video,canvas{max-width:100%;display:block}img{height:auto}button,input,textarea,select{font:inherit}button{cursor:pointer;color:inherit;background:0 0;border:none}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6,p{margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}::selection{background:var(--accent);color:#fff}.container{width:min(calc(100% - 3rem), var(--container));margin-inline:auto}.section{padding-block:var(--space-7)}.section-raised{background:var(--bg-raised);border-block:1px solid var(--border)}.mono{font-family:var(--font-mono)}.eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--accent);align-items:center;gap:.6rem;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);width:1.4rem;height:1px}.section-header{max-width:680px}.section-title{font-size:clamp(2rem, 3.6vw, var(--text-4xl));line-height:var(--leading-heading);margin-top:.9rem;font-weight:500}.section-description{color:var(--ink-soft);margin-top:1.2rem;font-size:1.1rem}.heading-lg{font-size:clamp(2.2rem, 4vw, var(--text-4xl));line-height:var(--leading-heading);font-weight:500}.heading-sm{font-size:clamp(1.5rem, 2.4vw, var(--text-2xl));line-height:var(--leading-heading);font-weight:500}.italic{font-style:italic}.btn{border-radius:var(--radius-pill);min-height:2.9rem;font-family:var(--font-body);font-size:var(--text-sm);transition:transform var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);border:1px solid #0000;justify-content:center;align-items:center;gap:.6rem;padding:.7rem 1.5rem;font-weight:600;line-height:1;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--ink);color:var(--bg)}.btn-primary:hover{background:var(--accent);color:#fff}.btn-secondary{border-color:var(--border-strong);color:var(--ink);background:0 0}.btn-secondary:hover{border-color:var(--ink)}.site-header{z-index:1000;mix-blend-mode:difference;padding-block:1.1rem;position:fixed;top:0;left:0;right:0}.nav{justify-content:space-between;align-items:center;display:flex}.brand{line-height:1;font-family:var(--font-display);color:var(--ink);align-items:center;gap:.6rem;font-size:1.1rem;font-weight:600;display:inline-flex}.brand-mark{width:1.75rem;height:1.75rem;display:block}.nav-toggle{color:var(--ink);font-family:var(--font-mono);font-size:var(--text-sm);letter-spacing:.04em;align-items:center;gap:.75rem;display:flex}.nav-toggle-bars{flex-direction:column;gap:.3rem;display:flex}.nav-toggle-bars span{background:var(--ink);width:1.6rem;height:1px;transition:transform var(--transition-base), opacity var(--transition-base);display:block}.nav-toggle.is-open .nav-toggle-bars span:first-child{transform:translateY(.35rem)rotate(45deg)}.nav-toggle.is-open .nav-toggle-bars span:last-child{transform:translateY(-.35rem)rotate(-45deg)}.nav-overlay{z-index:999;padding:var(--space-4);background:var(--bg);opacity:0;visibility:hidden;transition:opacity var(--transition-base), transform var(--transition-base), visibility 0s linear var(--transition-base);flex-direction:column;justify-content:center;display:flex;position:fixed;inset:0;transform:translateY(-12px)}.nav-overlay.is-open{opacity:1;visibility:visible;transition:opacity var(--transition-base), transform var(--transition-base), visibility 0s linear 0s;transform:translateY(0)}.nav-overlay-list{flex-direction:column;display:flex}.nav-overlay-item{border-bottom:1px solid var(--border);align-items:baseline;gap:1.25rem;padding-block:.6rem;display:flex}.nav-overlay-item:first-child{border-top:1px solid var(--border)}.nav-overlay-index{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--muted)}.nav-overlay-link{font-family:var(--font-display);color:var(--ink-soft);transition:color var(--transition-fast);font-size:clamp(2.4rem,7vw,4.6rem);font-weight:500}.nav-overlay-link:hover,.nav-overlay-link.active{color:var(--ink)}.nav-overlay-footer{margin-top:var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.nav-overlay-social{color:var(--ink-soft);gap:1.5rem;font-size:.9rem;display:flex}.nav-overlay-social a:hover{color:var(--accent)}.nav-overlay-contact{color:var(--ink-soft);font-size:.9rem}.hero{align-items:center;min-height:92vh;padding-top:clamp(5rem,10vw,8rem);padding-bottom:clamp(4rem,8vw,6rem);display:flex;position:relative;overflow:hidden}.webgl-canvas{z-index:-3;pointer-events:none;position:absolute;inset:0}.webgl-canvas canvas{display:block;width:100%!important;height:100%!important}.hero-blob{z-index:-2;filter:blur(40px);background:radial-gradient(circle at 25% 30%,#8b5cf640,#0000 45%),radial-gradient(circle at 75% 60%,#22d3ee2e,#0000 45%),radial-gradient(circle at 50% 85%,#f472b626,#0000 40%);animation:18s ease-in-out infinite alternate blob-drift;position:absolute;inset:-20%}@keyframes blob-drift{0%{transform:translate(0)scale(1)}to{transform:translate(-3%,2%)scale(1.08)}}.hero-diagonal{z-index:-1;background:linear-gradient(to bottom, transparent, var(--accent), transparent);opacity:.4;width:1px;height:140%;position:absolute;top:-20%}.hero-diagonal.d1{left:12%;transform:rotate(14deg)}.hero-diagonal.d2{right:18%;transform:rotate(-10deg)}.hero-eyebrow-row{align-items:center;gap:1rem;display:flex}.hero-title{font-size:clamp(3rem, 8vw, var(--text-6xl));line-height:var(--leading-tight);letter-spacing:-.02em;max-width:16ch;margin-top:1.6rem;font-weight:500}.hero-title em{color:var(--accent);font-style:italic}.hero-description{max-width:540px;color:var(--ink-soft);margin-top:1.75rem;font-size:clamp(1.05rem,1.3vw,1.2rem);line-height:1.65}.hero-actions{flex-wrap:wrap;gap:.85rem;margin-top:2.25rem;display:flex}.hero-foot{margin-top:var(--space-6);padding-top:var(--space-3);border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1.5rem;display:flex}.hero-foot-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}.hero-foot-value{color:var(--ink-soft);margin-top:.4rem;font-size:1rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.word-mask{vertical-align:top;display:inline-block;overflow:hidden}.word-inner{will-change:transform;display:inline-block}.line-mask{display:block;overflow:hidden}.line-inner{will-change:transform, opacity;display:block}.marquee{border-block:1px solid var(--border);padding-block:1.5rem;overflow:hidden}.marquee-track{gap:3rem;width:max-content;animation:32s linear infinite marquee-scroll;display:flex}.marquee-item{font-family:var(--font-display);color:var(--muted);white-space:nowrap;align-items:center;gap:3rem;font-size:clamp(1.4rem,2.6vw,2rem);display:flex}.marquee-item span.dot{color:var(--accent);font-size:1rem}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.pull-quote{max-width:920px}.pull-quote-text{font-size:clamp(1.8rem,4vw,3.2rem);font-weight:500;line-height:1.25}.pull-quote-cite{font-family:var(--font-mono);color:var(--muted);margin-top:1.75rem;font-size:.85rem;display:block}.case-study{padding-block:var(--space-6);border-bottom:1px solid var(--border)}.case-study:first-child{padding-top:0}.case-study:last-child{border-bottom:none}.case-study-head{margin-bottom:var(--space-4);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.case-study-head h3{font-size:clamp(1.8rem,3.4vw,2.6rem)}.case-study-meta{font-family:var(--font-mono);color:var(--muted);gap:1.5rem;font-size:.8rem;display:flex}.case-study-visual{margin-top:var(--space-4)}.case-study-body{gap:var(--space-4);margin-top:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.case-study-col-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.05em;text-transform:uppercase;color:var(--accent)}.case-study-col p{color:var(--ink-soft);margin-top:.75rem;font-size:.98rem;line-height:1.65}.case-study-services{flex-wrap:wrap;gap:.5rem;margin-top:1.5rem;display:flex}.case-study-service-tag{border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--ink-soft);padding:.3rem .8rem;font-size:.78rem}.img-slot{background-position:50%;background-repeat:no-repeat;background-size:cover;position:relative;overflow:hidden}.cover-art{aspect-ratio:4/3;border-radius:var(--radius-md);position:relative;overflow:hidden}.cover-art-mesh{background-image:radial-gradient(circle at 20% 20%, var(--c1) 0%, transparent 55%), radial-gradient(circle at 80% 30%, var(--c2) 0%, transparent 50%), radial-gradient(circle at 50% 85%, var(--c1) 0%, transparent 45%);background-color:var(--bg-raised)}.cover-art-lines{background-image:repeating-linear-gradient(115deg, var(--c1) 0px, var(--c1) 2px, transparent 2px, transparent 14px);background-color:var(--bg-raised);position:relative}.cover-art-lines:after{content:"";background:radial-gradient(circle at 70% 70%, var(--c2) 0%, transparent 55%);opacity:.6;position:absolute;inset:0}.cover-art-grid{background-image:linear-gradient(var(--c1) 1px, transparent 1px), linear-gradient(90deg, var(--c1) 1px, transparent 1px);background-size:22px 22px;background-color:var(--bg-raised);position:relative}.cover-art-grid:after{content:"";background:radial-gradient(circle at 30% 60%, var(--c2) 0%, transparent 50%);opacity:.7;position:absolute;inset:0}.cover-art-noise{background-image:radial-gradient(var(--c1) 1px, transparent 1.2px);background-size:7px 7px;background-color:var(--bg-raised);position:relative}.cover-art-noise:after{content:"";background:radial-gradient(circle at 60% 40%, var(--c2) 0%, transparent 50%);opacity:.65;position:absolute;inset:0}.filter-row{margin-top:var(--space-4);flex-wrap:wrap;gap:.6rem;display:flex}.filter-pill{border:1px solid var(--border-strong);border-radius:var(--radius-pill);color:var(--ink-soft);transition:all var(--transition-fast);background:0 0;padding:.5rem 1.1rem;font-size:.88rem}.filter-pill:hover{border-color:var(--ink);color:var(--ink)}.filter-pill.active{border-color:var(--accent);background:var(--accent-soft);color:var(--ink)}.work-grid{gap:var(--space-4);margin-top:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.work-card{display:block}.work-card-meta{justify-content:space-between;align-items:baseline;margin-top:1.1rem;display:flex}.work-card-title{transition:color var(--transition-fast);font-size:1.3rem;font-weight:500}.work-card:hover .work-card-title{color:var(--accent)}.work-card-category{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.work-card-desc{color:var(--ink-soft);max-width:46ch;margin-top:.5rem;font-size:.95rem}.numbered-list{margin-top:var(--space-6);flex-direction:column;display:flex}.numbered-item{gap:var(--space-4);padding-block:var(--space-4);border-bottom:1px solid var(--border);grid-template-columns:5rem 1fr;display:grid}.numbered-item:first-child{border-top:1px solid var(--border)}.numbered-index{font-family:var(--font-mono);color:var(--accent);font-size:1rem}.numbered-title{font-size:clamp(1.4rem,2.2vw,1.9rem);font-weight:500}.numbered-text{max-width:640px;color:var(--ink-soft);margin-top:.75rem;font-size:1.02rem}.numbered-detail-list{flex-direction:column;gap:.6rem;margin:1.25rem 0 0;padding:0;list-style:none;display:flex}.numbered-detail-list li{color:var(--ink);align-items:flex-start;gap:.6rem;font-size:.95rem;display:flex}.numbered-detail-list svg{color:var(--accent);flex-shrink:0;margin-top:.2rem}.value-grid{gap:var(--space-4);margin-top:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.value-item{border-top:1px solid var(--border-strong);padding-top:1.5rem}.value-item h3{font-size:1.2rem}.value-item p{color:var(--ink-soft);margin-top:.7rem;font-size:.98rem}.stat-strip{flex-wrap:wrap;display:flex}.stat-strip-item{padding:1.6rem var(--space-3);border-left:1px solid var(--border);flex:200px}.stat-strip-item:first-child{border-left:none;padding-left:0}.stat-strip-value{font-family:var(--font-display);font-size:var(--text-2xl);color:var(--ink)}.stat-strip-label{color:var(--muted);margin-top:.45rem;font-size:.88rem}.cta{text-align:center;position:relative}.cta-title{font-size:clamp(2.2rem, 5vw, var(--text-5xl));margin-top:1rem}.cta-desc{max-width:480px;color:var(--ink-soft);margin:1.2rem auto 0;font-size:1.1rem}.cta-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:.85rem;margin-top:2.25rem;display:flex}.reveal{opacity:0;transition:opacity var(--transition-slow), transform var(--transition-slow);will-change:opacity, transform;transform:translateY(22px)}.reveal.is-visible{opacity:1;transform:translate(0,0)}.reveal-left{transform:translate(-22px)}.reveal-left.is-visible{transform:translate(0,0)}.reveal-right{transform:translate(22px)}.reveal-right.is-visible{transform:translate(0,0)}.reveal-delay-1{transition-delay:80ms}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}.reveal-delay-4{transition-delay:.32s}.reveal-delay-5{transition-delay:.4s}.reveal-delay-6{transition-delay:.48s}.site-footer{padding-block:var(--space-6) var(--space-4);border-top:1px solid var(--border)}.footer-top{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding-bottom:var(--space-5);flex-wrap:wrap;display:flex}.footer-brand{font-family:var(--font-display);align-items:center;gap:.85rem;max-width:10ch;font-size:clamp(2rem,4vw,3rem);display:inline-flex}.footer-brand-mark{width:clamp(1.75rem,3vw,2.5rem);height:clamp(1.75rem,3vw,2.5rem);display:block}.footer-links{gap:var(--space-6);display:flex}.footer-column{flex-direction:column;gap:.8rem;display:flex}.footer-heading{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:.2rem}.footer-column a{color:var(--ink-soft);transition:color var(--transition-fast);font-size:.95rem}.footer-column a:hover{color:var(--accent)}.footer-icon-row{color:var(--ink-soft);align-items:center;gap:.6rem;display:flex}.footer-icon-row svg{color:var(--accent);flex-shrink:0}.footer-bottom{padding-top:var(--space-4);border-top:1px solid var(--border);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.footer-legal-links{gap:1.25rem;display:flex}.footer-legal-links a{color:var(--muted);transition:color var(--transition-fast)}.footer-legal-links a:hover{color:var(--ink)}.page-header{padding-top:clamp(7rem,12vw,10rem);padding-bottom:var(--space-6);position:relative;overflow:hidden}.breadcrumb{color:var(--muted);font-size:var(--text-sm);align-items:center;gap:.5rem;margin-bottom:1.75rem;display:flex}.breadcrumb a{color:var(--muted);transition:color var(--transition-fast)}.breadcrumb a:hover{color:var(--ink)}.breadcrumb span:last-child{color:var(--ink-soft)}.page-header-title{max-width:14ch;margin-top:1rem}.page-header-description{max-width:620px;color:var(--ink-soft);margin-top:1.5rem;font-size:1.1rem}.faq-list{margin-top:var(--space-6);flex-direction:column;max-width:820px;display:flex}.faq-item{border-bottom:1px solid var(--border);padding-block:1.6rem}.faq-item:first-child{border-top:1px solid var(--border)}.faq-question{font-size:1.1rem;font-weight:500}.faq-answer{max-width:700px;color:var(--ink-soft);margin-top:.7rem}.contact-section{padding-top:0}.contact-grid{gap:var(--space-6);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;display:grid}.contact-info{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;display:flex}.contact-info-item{align-items:flex-start;gap:1rem;display:flex}.contact-info-icon{border-radius:var(--radius-md);background:var(--accent-soft);width:2.75rem;height:2.75rem;color:var(--accent);flex-shrink:0;place-items:center;display:grid}.contact-info-label{font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}.contact-info-item p:last-child,.contact-info-item a{color:var(--ink);margin-top:.3rem;font-size:1rem}.contact-info-item a:hover{color:var(--accent)}.contact-social-row{color:var(--ink-soft);gap:.85rem;margin-top:.5rem;display:flex}.contact-form{gap:var(--space-3);flex-direction:column;display:flex}.form-field{flex-direction:column;gap:.5rem;display:flex}.form-field label{font-size:var(--text-sm);font-weight:600}.form-field input,.form-field textarea{border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--ink);font-family:var(--font-body);resize:vertical;transition:border-color var(--transition-fast);padding:.85rem 1rem;font-size:1rem}.form-field input::placeholder,.form-field textarea::placeholder{color:var(--muted)}.form-field input:focus,.form-field textarea:focus{border-color:var(--accent);outline:none}.contact-form .btn{align-self:flex-start;margin-top:.5rem}.form-success{border-radius:var(--radius-md);background:var(--accent-soft);max-height:0;color:var(--accent);opacity:0;transition:opacity var(--transition-base), max-height var(--transition-base), margin-top var(--transition-base);margin-top:0;padding:0;font-size:.95rem;font-weight:600;overflow:hidden}.form-success.is-visible{opacity:1;max-height:4rem;margin-top:.75rem;padding:.9rem 1rem}.legal-content{max-width:760px}.legal-content h2{margin-top:var(--space-5);font-size:1.4rem;line-height:var(--leading-heading)}.legal-content h2:first-child{margin-top:0}.legal-content p{color:var(--ink-soft);margin-top:1rem;font-size:1rem}.legal-content ul{color:var(--ink-soft);flex-direction:column;gap:.6rem;margin:1rem 0 0;padding-left:1.25rem;display:flex}.legal-content li{font-size:1rem}.legal-content a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.legal-content strong{color:var(--ink)}@media (max-width:900px){.work-grid,.value-grid{grid-template-columns:1fr}.numbered-item{grid-template-columns:1fr;gap:.75rem}.case-study-body{grid-template-columns:1fr}.stat-strip-item{border-left:none;border-top:1px solid var(--border);padding-top:1.25rem;padding-left:0}.stat-strip-item:first-child{border-top:none;padding-top:0}.contact-grid{grid-template-columns:1fr}}@media (max-width:640px){.hero{min-height:auto}.hero-foot{align-items:flex-start;gap:var(--space-3);flex-direction:column}.hero-actions .btn{width:100%}.hero-actions{flex-direction:column;align-items:stretch}.nav-overlay-link{font-size:clamp(2rem,10vw,3rem)}.footer-top{flex-direction:column}.footer-links{gap:var(--space-5);flex-wrap:wrap}.cta-actions{flex-direction:column;align-items:stretch}.cta-actions .btn{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.hero-blob{animation:none}}
