@keyframes icon_float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes fadeUp{to{opacity:1;transform:translateY(0)}}@keyframes pressPulse{0%,to{transform:scale(1.02)}50%{transform:scale(1.05)}}@keyframes cardPulse{0%{transform:scale(1)}50%{transform:scale(1.06)}to{transform:scale(1.02)}}@keyframes heartbeat{0%,6%,to{text-shadow:0 0 0 transparent;transform:scale(1)}2%{text-shadow:0 0 6px var(--accent);transform:scale(1.02)}4%{text-shadow:0 0 12px var(--accent);transform:scale(1.03)}}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@font-face{font-family:"Source Sans Pro";font-style:normal;font-weight:400;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xK3dSBYKcSV-LCoeQqfX1RYOo3qNa7lqDY.woff2)format("woff2")}@font-face{font-family:"Source Sans Pro";font-style:normal;font-weight:600;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3i54rwmhduz8A.woff2)format("woff2")}@font-face{font-family:"Source Sans Pro";font-style:normal;font-weight:700;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwmhduz8A.woff2)format("woff2")}@font-face{font-family:"Source Sans Pro";font-style:normal;font-weight:800;font-display:swap;src:url(https://fonts.gstatic.com/s/sourcesanspro/v23/6xKydSBYKcSV-LCoeQqfX1RYOo3ig4vwlxdu.woff2)format("woff2")}:root{--clr-bg:#0b0b0d;--clr-surface:#131316;--clr-text:#eae8f1;--clr-muted:#b8b5c7;--clr-border:#2a2a33;--clr-overlay:rgba(0, 0, 0, .45);--clr-generic:rgb(130, 80, 202);--clr-it:rgb(74, 158, 255);--clr-dev:rgb(40, 167, 69);--clr-web:rgb(255, 157, 77);--clr-brand:rgb(255, 77, 109);--radius-xl:20px;--radius-lg:16px;--radius-md:12px;--radius-sm:10px;--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--maxw:1200px;--shadow-elev:0 8px 30px rgba(0, 0, 0, .35);--shadow-soft:0 2px 10px rgba(0, 0, 0, .25);--card-lift:translateY(-6px);--nav-h:25px;--nav-icon:32px;--ham-nudge-y:-2px;--nav-chip-bg:color-mix(in oklab, var(--clr-bg) 85%, #000 15% / .75);--nav-chip-border:rgba(255, 255, 255, .08)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.with-fixed-header main{padding-top:calc(var(--nav-h) + env(safe-area-inset-top,0) - 20px);transition:padding-top 220ms cubic-bezier(.22,.61,.36,1)}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:"Source Sans Pro",Helvetica,sans-serif;color:var(--clr-text);background:var(--clr-bg);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}*,::after,::before{box-sizing:border-box}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;-webkit-tap-highlight-color:transparent}button,input{font:inherit;color:inherit}button{background:0 0;border:0;cursor:pointer}input{background:var(--clr-surface);border:1px solid var(--clr-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}::selection{background:color-mix(in oklab,var(--clr-generic) 40%,#fff 0%);color:#fff}.container{width:min(100% - 2rem,var(--maxw));margin-inline:auto}.center{display:grid;place-items:center}.hidden{display:none!important}.mt-8{margin-top:var(--space-8)}.site-header{position:fixed;inset-inline:0;top:0;z-index:1000;font-size:16px;font-weight:700;transform:translateY(-100%);transition:transform .35s ease;background:color-mix(in oklab,var(--clr-bg) 90%,#000 10%/.75);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--clr-border)}.site-header.is-visible{transform:translateY(0)}.navbar{justify-content:flex-start;gap:var(--space-6);padding:.65rem 1rem}.brand,.nav-center,.navbar{display:flex;align-items:center}.nav-center{margin-left:auto;gap:.75rem}.nav-links a{padding:.5rem .75rem;border-radius:999px}.nav-links a:hover{background:#1a1a22}.brand{gap:.6rem}.brand img,.hamburger{width:var(--nav-icon);height:var(--nav-icon)}.brand img{border-radius:8px}.hamburger{display:none!important;padding:0;border:0;align-items:center;justify-content:center;line-height:0;transform:translateY(var(--ham-nudge-y));font-size:22px}.hero{position:relative;min-height:100dvh;display:grid;place-items:center;overflow:hidden}.hero::after{pointer-events:none;z-index:1}.hero__image{position:absolute;inset:0;background-position:center center;background-size:cover;background-repeat:no-repeat;opacity:0;transition:opacity .75s ease-in-out;will-change:transform}.hero::after,.hero__image.overlay::after{content:"";position:absolute;inset:0}.hero__image.loaded{opacity:1;filter:brightness(1.04) contrast(1.03) saturate(1.02)}@media (prefers-reduced-motion:reduce){.hero__image{transform:none!important}}.reveal{opacity:0;transform:translateY(8px)}.title{display:unset;width:auto;max-width:25vw;margin-bottom:15px}.hero__title{margin:0;line-height:1.02;font-weight:800;font-size:clamp(2.25rem,5vw + .25rem,5rem);color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.35)}.hero__subtitle{margin:.28em 0 2.5em;color:#fff9;font-size:clamp(1rem,1.2vw + .5rem,1.35rem)}.hero_long{display:block}.hero_short{display:none}.hero__pillars{display:grid;gap:clamp(32px,6vw,96px);grid-auto-flow:column;max-width:90vw}.hero__pillars .pillar{font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.9)}.hero__pillars .pillar::after{content:"";position:absolute;left:50%;bottom:-8px;width:0;height:2px;background:var(--accent, currentColor);opacity:.9;transition:width .18s ease,left .18s ease}.hero__pillars .pillar:hover{color:#fff}.hero__pillars .pillar:hover::after{width:100%;left:0}@media (min-width:1024px){.hero--punct{position:absolute;inset:0;display:grid;grid-template-rows:1fr auto auto;padding:clamp(24px,4vw,56px);pointer-events:none;z-index:99}.hero__cluster,.hero__pillars{align-self:end;pointer-events:auto}.hero__cluster{padding-left:20px}.hero__pillars{grid-template-columns:repeat(4,1fr);padding-top:clamp(16px,3vh,28px);padding-bottom:clamp(12px,3vh,16px)}.hero__pillars .pillar{justify-self:center}}.location{margin-bottom:.5rem;color:#fff;font-weight:700;letter-spacing:.01em;-webkit-text-stroke:.35px rgba(0,0,0,.45);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-shadow:0 1px 1px rgba(0,0,0,.55),0 0 8px rgba(0,0,0,.25)}.card{background:var(--clr-surface);border:2px solid var(--clr-border);border-radius:var(--radius-xl);padding:var(--space-6);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;touch-action:manipulation;-webkit-tap-highlight-color:transparent;transform-origin:center;will-change:transform}.card[data-pillar=it]{border-color:color-mix(in oklab,var(--clr-it) 80%,var(--clr-border) 20%)}.card[data-pillar=dev]{border-color:color-mix(in oklab,var(--clr-dev) 80%,var(--clr-border) 20%)}.card[data-pillar=web]{border-color:color-mix(in oklab,var(--clr-web) 80%,var(--clr-border) 20%)}.card[data-pillar=brand]{border-color:color-mix(in oklab,var(--clr-brand) 80%,var(--clr-border) 20%)}.card:hover{transform:var(--card-lift);box-shadow:var(--shadow-elev)}.card-title{font-weight:800;font-size:clamp(1.25rem,1.1rem + 1vw,1.75rem);margin:0 0 .25rem}.card-desc,.cross-nav p{color:var(--clr-muted);margin:0 0 1rem}.card[data-pillar=it]{--glow:74, 158, 255}.card[data-pillar=dev]{--glow:40, 167, 69}.card[data-pillar=web]{--glow:255, 157, 77}.card[data-pillar=brand]{--glow:255, 77, 109}.btn{display:flex;align-items:center;justify-content:center;text-align:center;gap:.5rem;border-radius:25px;padding:.7rem 1.1rem;font-weight:700;border:1.5px solid currentColor;transition:transform .2s ease,background .2s ease,color .2s ease;white-space:normal;line-height:1.2;min-width:0}.btn--solid{background:currentColor;color:#fff;border-color:transparent}.btn:active{transform:translateY(1px) scale(.98)}.btn--it{background-color:var(--clr-it)}.btn--dev{background-color:var(--clr-dev)}.btn--web{background-color:var(--clr-web)}.btn--brand{background-color:var(--clr-brand)}.btn--generic{background-color:var(--clr-generic)}.btn-row{display:flex;gap:.75rem;align-items:stretch}.btn-row .btn{flex:1 1 0}.grid{display:grid;gap:var(--space-8)}.grid .card{display:flex;flex-direction:column}.card .btn-row{margin-top:auto;padding-top:var(--space-8)}.grid-4{grid-template-columns:repeat(4,1fr)}.section{padding:clamp(3rem,8vh,6rem)0}.cta-footer h3,.section h1,.section h2{margin:0 0 .5rem;font-size:clamp(2rem,1.6rem + 2vw,3rem)}.section p.lead{color:var(--clr-muted);font-size:clamp(1rem,.9rem + .6vw,1.25rem)}.cta-footer{background:#101012;border-radius:var(--radius-xl);padding:var(--space-10);text-align:center;box-shadow:var(--shadow-soft)}.cta-footer h3{font-size:clamp(1.5rem,1.1rem + 1.2vw,2rem)}.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.site-footer{padding:2rem 0;color:var(--clr-muted);font-size:.9rem}.lang,.pillar-page .section h1{position:relative}.lang-btn,.lang-menu{background:color-mix(in oklab,var(--clr-border) 40%,#fff 0%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.lang-btn{width:var(--nav-icon);height:var(--nav-icon);padding:0;display:inline-grid;place-items:center;font-size:16px;font-weight:700;border-radius:10px;border:1px solid transparent}.lang-menu{position:absolute;right:0;top:calc(100% + 8px);background:#000;background:linear-gradient(to bottom,#000 0,rgba(0,0,0,.9) 15%,rgba(0,0,0,.8) 60%,rgba(0,0,0,.6) 100%);border:1px solid var(--clr-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);padding:.35rem;min-width:132px;display:none;z-index:1200}.lang-item,.lang.is-open .lang-menu{display:block}.lang-item{width:100%;text-align:left;padding:.5rem .75rem;border-radius:.65rem}.lang-item:hover{background:#1a1a22}.cross-nav a,.lang-item.is-current{font-weight:800}.cross-nav{margin-top:var(--space-8);margin-bottom:var(--space-8);border-radius:var(--radius-xl);padding:var(--space-6);box-shadow:var(--shadow-soft);overflow:hidden}.cross-nav p{margin:.35rem 0;font-size:1.05rem}.cross-nav a{text-underline-offset:.2em;transition:text-shadow .15s ease}.cross-nav a:hover{text-decoration:none;text-shadow:0 0 8px currentColor}.link-it{color:var(--clr-it)}.link-dev{color:var(--clr-dev)}.link-web{color:var(--clr-web)}.link-brand{color:var(--clr-brand)}.section:has(+.container .cross-nav),.section:has(+section .cross-nav){padding-bottom:var(--space-1)}.cross-nav__title{margin:0 0 .35rem;font-weight:800;font-size:1rem;color:var(--clr-muted);text-transform:uppercase;letter-spacing:.06em}.pillar-page .cross-nav{position:relative;border:0;border-left:3px solid color-mix(in oklab,var(--accent) 75%,transparent);padding-left:calc(var(--space-5) + 12px)}.pillar-it{--accent:var(--clr-it)}.pillar-dev{--accent:var(--clr-dev)}.pillar-web{--accent:var(--clr-web)}.pillar-brand{--accent:var(--clr-brand)}.pillar-about{--accent:var(--clr-generic)}.pillar-services{--accent:var(--clr-border)}.pillar-page .section h1::after{content:"";display:block;width:64px;height:4px;border-radius:999px;margin-top:.5rem;background:color-mix(in oklab,var(--accent) 85%,#fff 0%)}.pillar-page ::selection{background:color-mix(in oklab,var(--accent) 45%,#000 0%);color:#fff}.pillar-page li::marker{color:var(--accent)}.pillar-page .site-header{border-bottom-color:color-mix(in oklab,var(--accent) 50%,var(--clr-border) 50%)}.hero__pillars .pillar{position:relative;color:#fff;text-decoration:none;animation:heartbeat 8s ease-in-out infinite}.hero__pillars .pillar:nth-child(1){animation-delay:0s}.hero__pillars .pillar:nth-child(2){animation-delay:2s}.hero__pillars .pillar:nth-child(3){animation-delay:4s}.hero__pillars .pillar:nth-child(4){animation-delay:6s}@media (prefers-reduced-motion:reduce){.hero__pillars .pillar,.hero__pillars .pillar::after{animation:none!important}.with-fixed-header main{transition:none}}@media (max-width:768px){.hero_long{display:none!important}.hero_short{display:block!important}.work-media{aspect-ratio:4/3;max-height:clamp(160px,60vw,240px)}.sticky-title{position:sticky!important;top:calc(var(--nav-h) + env(safe-area-inset-top,0) + 0px);z-index:900;padding-block:.25rem .5rem;background:var(--clr-bg)}.hero__cluster,.hero__pillars{font-family:system-ui,-apple-system,Segoe UI,Inter,Roboto,"Helvetica Neue",Arial,sans-serif!important;position:absolute;z-index:3}.hero__pillars{left:0;right:0;bottom:calc(max(16px,env(safe-area-inset-bottom)) + 6px);padding-inline:16px;display:flex;justify-content:center;align-items:center;gap:clamp(12px,4vw,24px);max-width:none;overflow:hidden}.hero__pillars .pillar{font-weight:500;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;display:inline-block;color:#fff;text-transform:capitalize;letter-spacing:.04em;line-height:1.4;text-decoration:none;text-shadow:0 0 .001px rgba(255,255,255,.04),0 0 .001px rgba(0,0,0,.01),0 2px 6px rgba(0,0,0,.22)}.hero__cluster{left:1rem;right:1rem;bottom:calc(42px + env(safe-area-inset-bottom));text-align:left}.navbar.container{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem}.hero__pillars .pillar::after{transition:width .18s ease,left .18s ease,opacity .4s ease}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6)0,rgba(0,0,0,.25) 28%,transparent 52%);pointer-events:none;z-index:1}.with-fixed-header main{padding-top:calc(var(--nav-h) + env(safe-area-inset-top,0) - 20px)}.cross-nav{margin-bottom:var(--space-0)}.hero{min-height:100svh}.hero__image{object-position:70% 40%;display:block;transform:scale(1.05);transform-origin:70% 40%;background-position:initial!important}.title{display:none}.location{position:absolute;left:50%;transform:translateX(-50%);bottom:calc(16px + env(safe-area-inset-bottom) + 76px);white-space:nowrap;max-width:92vw;overflow:hidden;text-overflow:ellipsis}.navbar{padding:.55rem .75rem}.nav-center{display:none}.hamburger{display:inline-flex!important;font-size:32px}.grid-4{grid-template-columns:1fr}.btn{padding:.65rem 1rem}.card{padding:var(--space-5);touch-action:manipulation;-webkit-tap-highlight-color:transparent}.section{padding:2rem 0}.cta-footer{padding:var(--space-2);border-radius:var(--radius-lg)}.cta-footer h3{margin-bottom:.35rem}}@media (min-width:1024px){.title{display:none}.location{color:#fff;font-weight:700;letter-spacing:.01em;text-shadow:0 2px 8px rgba(0,0,0,.55);-webkit-text-stroke:.25px rgba(0,0,0,.35);margin-top:.25rem}.hero{position:relative}.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.6)0,rgba(0,0,0,.25) 28%,transparent 52%);pointer-events:none;z-index:1}}.hero__pillars,.hero__tagline{opacity:0}.animate-hero-tagline{animation:fadeSlideDown .8s ease-out forwards}.animate-hero-pillars{animation:fadeSlideUp .8s ease-out forwards}.work-samples{margin-top:-8rem;text-align:left}.work-heading{font-size:clamp(1.5rem,2vw,2rem);font-weight:600;margin-bottom:2rem;color:#fff}.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:2rem}.work-card{position:relative;overflow:hidden;border-radius:.5rem;background:var(--clr-surface, #131316);box-shadow:0 4px 16px rgba(0,0,0,.25);transition:transform .4s ease,box-shadow .4s ease}.work-media{aspect-ratio:16/9;max-height:clamp(180px,52vw,260px);overflow:hidden;background:#0f0f12}.work-media>img,.work-media>video{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.work-desc,.work-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.work-desc{-webkit-line-clamp:3}.work-actions{margin:1rem 1.5rem .5rem;font-weight:600}.stretched-link{position:relative}.stretched-link::after{content:"";position:absolute;inset:0}.work-card:hover{transform:translateY(-6px);box-shadow:0 8px 24px rgba(0,0,0,.35)}.work-card img{width:100%;height:auto;display:block}.work-title{font-size:1.125rem;font-weight:600;margin:1rem 1.5rem .5rem;color:#fff}.work-desc{margin:0 1.5rem .5rem;font-size:.95rem;color:#ccc;line-height:1.5}@media (max-width:768px){.work-samples{padding-block:6rem}.work-grid{gap:1.5rem}.work-title{font-size:1rem}.work-desc{font-size:.9rem}}.work-samples .work-heading::after{content:"";display:block;width:64px;height:4px;border-radius:999px;margin-top:.5rem;background:color-mix(in oklab,var(--accent) 85%,#fff 0%)}body.landing .site-header{transform:translateY(0)!important;transition:none!important;border-bottom:none!important;background:color-mix(in oklab,var(--clr-border) 40%,#fff 0%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);font-size:16px;font-weight:700}body:not(.landing) .mobile-menu{background:rgba(0,0,0,.5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-menu .nav-links a{padding:.55rem .7rem;border-radius:.5rem}.pillar-brand .work-media.logo{display:grid;place-items:center;aspect-ratio:1/1;background:var(--clr-surface, #131316);overflow:hidden}.pillar-brand .work-media.logo>img{width:100%;height:100%;object-fit:contain;object-position:center;padding:clamp(8px,3vw,16px)}.pillar-brand .yt{position:relative;background:#000}.pillar-brand .yt img{width:100%;height:100%;object-fit:cover;display:block}.pillar-brand .yt .yt-play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;border:2px solid color-mix(in oklab,var(--accent) 65%,#fff 0%);background:rgba(0,0,0,.45);display:grid;place-items:center;cursor:pointer}.pillar-brand .yt .yt-play::before{content:"";border-style:solid;border-width:10px 0 10px 16px;border-color:transparent transparent transparent #fff;margin-left:3px}.pillar-brand .yt .yt-play:focus-visible{outline:2px solid var(--accent);outline-offset:3px}#cs-lightbox{position:fixed;inset:0;display:none;place-items:center;background:color-mix(in oklab,var(--clr-bg) 70%,#000 30%/.85);z-index:2000;padding:clamp(8px,2vw,24px)}#cs-lightbox.open{display:grid}#cs-lightbox img{max-width:min(92vw,1300px);max-height:86vh;width:auto;height:auto;object-fit:contain;border-radius:.5rem;box-shadow:0 20px 50px rgba(0,0,0,.45)}#cs-lightbox .lb-close{position:absolute;top:clamp(8px,2vw,16px);right:clamp(8px,2vw,16px);background:var(--clr-overlay);color:var(--clr-text);border:1px solid var(--clr-border);border-radius:.5rem;padding:.4rem .6rem;cursor:pointer}#cs-lightbox .lb-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}figure{margin:1em auto}.noscript-nav{display:none}