.home-root{background-color:var(--color-surface-primary);min-height:100vh;position:relative}html[data-texture=on] .home-root{filter:url(#texture-edge)}.hero-wrapper{z-index:var(--z-layer-texture);width:100%;min-height:60vh;padding:var(--spacing-21) var(--spacing-6) var(--spacing-20);justify-content:center;align-items:flex-end;display:flex;position:relative}.hero-container{justify-content:flex-end;align-items:flex-start;gap:var(--spacing-6);width:100%;max-width:var(--layout-xl);flex-direction:column;margin:0;display:flex}.hero-word{line-height:inherit;vertical-align:bottom;display:inline-block;overflow:hidden}.hero-word-inner{line-height:inherit;will-change:transform, opacity;display:inline-block}@media (prefers-reduced-motion:no-preference){[data-reveal=pending] .hero-word-inner{opacity:0;transform:translateY(100%)}[data-reveal=active] .hero-word-inner{opacity:1;transition:transform var(--duration-expressive) var(--ease-out-quart), opacity var(--duration-fade) var(--ease-out);transition-delay:calc(var(--line-index,0) * var(--hero-reveal-line-stagger,85ms) + var(--hero-reveal-base-delay,.22s));transform:translateY(0)}[data-reveal=pending] .hero-badge{opacity:0;translate:0 28%}[data-reveal=active] .hero-badge{opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart), translate var(--duration-expressive) var(--ease-out-quart), opacity var(--duration-fade) var(--ease-out), background-color var(--duration-subtle) var(--ease-out), border-color var(--duration-subtle) var(--ease-out), box-shadow var(--duration-subtle) var(--ease-out);transition-delay:0s, calc(var(--line-index,0) * var(--hero-reveal-line-stagger,85ms) + var(--hero-reveal-base-delay,.22s)), calc(var(--line-index,0) * var(--hero-reveal-line-stagger,85ms) + var(--hero-reveal-base-delay,.22s)), 0s, 0s, 0s;translate:0}@keyframes hero-avatar-rise{0%{opacity:0;transform:translateY(28%)}to{opacity:1;transform:translateY(0)}}[data-reveal=pending] .hero-avatar{opacity:0}[data-reveal=active] .hero-avatar{animation:hero-avatar-rise var(--duration-expressive) var(--ease-out-quart) both;animation-delay:calc(var(--line-index,0) * var(--hero-reveal-line-stagger,85ms) + var(--hero-reveal-base-delay,.22s))}}.hero-subtitle{align-items:center;gap:var(--spacing-2);margin:0;display:flex}.hero-subtitle-text{font-family:var(--font-sans);font-size:var(--text-body-fluid);line-height:var(--line-height-body);color:var(--color-text-secondary);white-space:nowrap;font-weight:400}.hero-avatar{width:var(--spacing-10);height:var(--spacing-10);border-radius:var(--radius-full);background-color:var(--color-text-secondary);mix-blend-mode:difference;transition:background-color var(--duration-normal) var(--ease-out);flex-shrink:0;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.hero-avatar:hover,.hero-avatar:focus-visible{background-color:var(--color-accent-primary);outline:none}.hero-avatar-img{object-fit:cover;pointer-events:none;width:100%;height:100%;display:block}.hero-title{font-family:var(--font-display);font-size:var(--text-display-fluid);line-height:var(--line-height-display);color:var(--color-text-primary);max-width:var(--layout-md);text-wrap:pretty;margin:0;font-weight:400}.hero-badge{vertical-align:-.36em;border:2px solid var(--color-border-subtle);background-color:var(--color-surface-secondary);width:1.65em;height:1.65em;box-shadow:var(--shadow-badge);cursor:pointer;transform:rotate(var(--badge-rotate,10deg));transition:transform var(--duration-emphasis) var(--ease-out-quart), background-color var(--duration-subtle) var(--ease-out), border-color var(--duration-subtle) var(--ease-out), box-shadow var(--duration-subtle) var(--ease-out);border-radius:.3em;justify-content:center;align-items:center;margin:0 .14em;padding:.22em;text-decoration:none;display:inline-flex}.hero-badge:hover,.hero-badge:focus-visible{outline:none;transform:rotate(0)}.hero-badge:focus-visible{border-color:var(--color-accent-primary)}.hero-badge-svg{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.hero-decor{bottom:var(--spacing-6);right:var(--spacing-6);pointer-events:none;position:absolute}@media (max-width:640px){.hero-wrapper{padding:var(--spacing-18) var(--spacing-6) var(--spacing-14);min-height:85vh}.hero-container{gap:var(--spacing-4)}.hero-subtitle-text{white-space:normal}}@media (min-width:1441px){.hero-wrapper{padding-top:var(--spacing-30)}}@media (prefers-reduced-motion:reduce){.hero-avatar,.hero-badge{transition:none;transform:none}}
.work-wrapper{width:100%;padding:var(--spacing-10) var(--spacing-6) var(--spacing-30);background-color:var(--color-surface-primary);color:var(--color-text-primary);justify-content:center;display:flex;position:relative}.work-container{width:100%;max-width:var(--layout-xl);padding-top:var(--spacing-30);flex-direction:column;flex:1 0 0;display:flex}.work-section-header{width:100%;padding-bottom:var(--spacing-12);display:flex}.work-section-label{font-family:var(--font-mono);font-size:var(--font-size-mono-sm);line-height:var(--line-height-body);color:var(--color-text-secondary);flex:1 0 0;margin:0;font-weight:400;overflow:hidden}.work-label-inner{line-height:inherit;display:inline-block}@media (prefers-reduced-motion:no-preference){.hero-wrapper[data-reveal=pending]~.work-wrapper .work-section-label .work-label-inner{will-change:transform, opacity;opacity:0;transform:translateY(100%)}.hero-wrapper[data-reveal=active]~.work-wrapper .work-section-label .work-label-inner{opacity:1;transition:transform var(--duration-expressive) var(--ease-out-quart) .9s, opacity var(--duration-fade) var(--ease-out) .9s;transform:translateY(0)}}.case-study-container{gap:var(--spacing-16);flex-direction:column;width:100%;display:flex}.case-study-card-link{width:100%;color:inherit;text-decoration:none;display:block}.case-study-card-link:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:4px;border-radius:var(--radius-md)}.case-study-card{align-items:center;gap:var(--spacing-6);width:100%;min-height:652px;padding:var(--spacing-6) 0;flex-direction:column;display:flex}.case-study-header{gap:var(--spacing-8);align-items:flex-start;width:100%;display:flex}.case-study-title{width:341px;font-family:var(--font-display);font-size:var(--font-size-display-lg);font-weight:400;line-height:var(--line-height-display);color:var(--color-text-primary);flex-shrink:0;margin:0;font-style:normal;overflow:hidden}.case-study-header-meta{flex:1 0 0;justify-content:space-between;align-items:center;min-width:0;display:flex}.case-study-number{height:40px;font-family:var(--font-mono);font-size:var(--font-size-mono-sm);font-weight:400;line-height:var(--line-height-body);color:var(--color-text-secondary);align-items:center;display:inline-flex}.case-study-status{isolation:isolate;padding:var(--spacing-3) var(--spacing-6);background-color:var(--color-surface-secondary);border-radius:var(--radius-full);font-family:var(--font-mono);font-size:var(--font-size-mono-xs);font-weight:400;line-height:var(--line-height-body);color:var(--color-text-secondary);white-space:nowrap;justify-content:center;align-items:center;display:inline-flex;position:relative}.case-study-status:before{content:"";opacity:.2;border-radius:inherit;pointer-events:none;z-index:-1;background-image:url(/patterns/stripes-diagonal.png);background-repeat:repeat;background-size:50px 50px;position:absolute;inset:0}.case-study-title-inner{line-height:inherit;display:inline-block}@media (prefers-reduced-motion:no-preference){.case-study-card[data-reveal=pending] .case-study-title-inner{will-change:transform, opacity;opacity:0;transform:translateY(100%)}.case-study-card[data-reveal=pending] .case-study-number,.case-study-card[data-reveal=pending] .case-study-status{will-change:transform, opacity;opacity:0;transform:translateY(12px)}.case-study-card[data-reveal=active] .case-study-title-inner{opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart), opacity var(--duration-fade) var(--ease-out);transform:translateY(0)}.case-study-card[data-reveal=active] .case-study-number{opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart) 60ms, opacity var(--duration-fade) var(--ease-out) 60ms;transform:translateY(0)}.case-study-card[data-reveal=active] .case-study-status{opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart) .12s, opacity var(--duration-fade) var(--ease-out) .12s;transform:translateY(0)}}.case-study-body{gap:var(--spacing-8);align-items:stretch;width:100%;min-height:540px;display:flex}.case-study-column--info{flex-direction:column;flex-shrink:0;width:341px;min-height:540px;display:flex}.case-study-info-blocks{padding-top:var(--spacing-6);flex-direction:column;flex:1 0 0;justify-content:space-between;width:100%;display:flex;position:relative}.case-study-info-blocks:before{content:"";background-color:var(--color-border-default);transform-origin:0;height:1px;position:absolute;top:0;left:0;right:0}.case-study-info-top{gap:var(--spacing-8);flex-wrap:wrap;align-content:flex-start;align-items:flex-start;width:100%;display:flex}.case-study-info-block{gap:var(--spacing-2);flex-direction:column;flex:1 0 0;min-width:154px;max-width:154px;display:flex}.case-study-info-label{font-family:var(--font-mono);font-size:var(--font-size-mono-sm);font-weight:400;line-height:var(--line-height-body);color:var(--color-text-primary);margin:0}.case-study-info-values{flex-direction:column;width:100%;margin:0;padding:0;list-style:none;display:flex}.case-study-info-value{font-family:var(--font-sans);font-size:var(--font-size-body-sm);font-weight:400;line-height:var(--line-height-body);color:var(--color-text-tertiary)}.case-study-description{font-family:var(--font-sans);font-size:var(--font-size-body-md);font-weight:400;line-height:var(--line-height-body);color:var(--color-text-secondary);margin:0}@media (prefers-reduced-motion:no-preference){.case-study-card[data-reveal=pending] .case-study-info-blocks:before{will-change:transform;transform:scaleX(0)}.case-study-card[data-reveal=pending] .case-study-info-block,.case-study-card[data-reveal=pending] .case-study-description{will-change:transform, opacity;opacity:0;transform:translateY(12px)}.case-study-card[data-reveal=active] .case-study-info-blocks:before{transition:transform var(--duration-emphasis) var(--ease-out-quart) .2s;transform:scaleX(1)}.case-study-card[data-reveal=active] .case-study-info-block:first-child{opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart) .26s, opacity var(--duration-fade) var(--ease-out) .26s;transform:translateY(0)}.case-study-card[data-reveal=active] .case-study-info-block:nth-child(2){opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart) .32s, opacity var(--duration-fade) var(--ease-out) .32s;transform:translateY(0)}.case-study-card[data-reveal=active] .case-study-info-block:nth-child(3){opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart) .38s, opacity var(--duration-fade) var(--ease-out) .38s;transform:translateY(0)}.case-study-card[data-reveal=active] .case-study-info-block:nth-child(4){opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart) .44s, opacity var(--duration-fade) var(--ease-out) .44s;transform:translateY(0)}.case-study-card[data-reveal=active] .case-study-description{opacity:1;transition:transform var(--duration-emphasis) var(--ease-out-quart) .52s, opacity var(--duration-fade) var(--ease-out) .52s;transform:translateY(0)}}.case-study-column--image{min-width:0;max-height:600px;padding:var(--spacing-6);background-color:var(--color-surface-secondary);border-radius:var(--radius-md);flex:1 0 0;justify-content:center;align-self:stretch;align-items:stretch;display:flex;position:relative;overflow:hidden}.case-study-image-container{background-color:var(--color-surface-primary);border-radius:var(--radius-md);flex:1 0 0;justify-content:center;align-items:center;min-width:0;display:flex;position:relative;overflow:hidden}.case-study-image{object-fit:cover}.case-study-video{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}@media (prefers-reduced-motion:no-preference){.case-study-card[data-reveal=pending] .case-study-column--image{clip-path:inset(100% 0 0);opacity:0;transform:translateY(8px)}.case-study-card[data-reveal=active] .case-study-column--image{clip-path:inset(0);opacity:1;transition:clip-path var(--duration-emphasis) var(--ease-out-quart) .24s, transform var(--duration-emphasis) var(--ease-out-quart) .24s, opacity var(--duration-fade) var(--ease-out) .24s;transform:translateY(0)}}.case-study-column--image{transition:box-shadow var(--duration-emphasis) var(--ease-out)}.case-study-image,.case-study-video{transform-origin:50%;transition:transform var(--duration-emphasis) var(--ease-out-quart), filter var(--duration-emphasis) var(--ease-out)}html[data-texture=on] .case-study-card-link .case-study-image,html[data-texture=on] .case-study-card-link .case-study-video{filter:saturate(0)}.case-study-card-link:hover .case-study-column--image,.case-study-card-link:focus-visible .case-study-column--image{box-shadow:0 24px 60px #0000001f}.case-study-card-link:hover .case-study-image,.case-study-card-link:hover .case-study-video,.case-study-card-link:focus-visible .case-study-image,.case-study-card-link:focus-visible .case-study-video{transform:scale(1.04)}.case-study-image-container[data-fit=anchor] .case-study-image-anchor{transform-origin:50%;transition:transform var(--duration-emphasis) var(--ease-out-quart)}.case-study-card-link:hover .case-study-image-container[data-fit=anchor] .case-study-image-anchor,.case-study-card-link:focus-visible .case-study-image-container[data-fit=anchor] .case-study-image-anchor{transform:scale(1.04)}.case-study-card-link:hover .case-study-image-container[data-fit=anchor] .case-study-image,.case-study-card-link:focus-visible .case-study-image-container[data-fit=anchor] .case-study-image{transform:none}html[data-texture=on] .case-study-card-link:hover .case-study-image,html[data-texture=on] .case-study-card-link:hover .case-study-video,html[data-texture=on] .case-study-card-link:focus-visible .case-study-image,html[data-texture=on] .case-study-card-link:focus-visible .case-study-video{filter:saturate()}@media (prefers-reduced-motion:reduce){.case-study-card-link:hover .case-study-image,.case-study-card-link:hover .case-study-video,.case-study-card-link:hover .case-study-image-container[data-fit=anchor] .case-study-image-anchor,.case-study-card-link:focus-visible .case-study-image,.case-study-card-link:focus-visible .case-study-video,.case-study-card-link:focus-visible .case-study-image-container[data-fit=anchor] .case-study-image-anchor{transform:none}}.case-study-card[data-case=serval] .case-study-video{border-radius:var(--radius-md);width:auto;max-width:calc(100% - 24px);height:auto;max-height:calc(100% - 24px);margin-inline:auto;inset:auto 0 0}.case-study-image-container[data-fit=float]{padding:var(--float-padding,0);align-items:var(--float-align-y,center);justify-content:var(--float-align-x,center)}.case-study-image-container[data-fit=float] .case-study-image{object-fit:contain;max-width:100%;height:auto}.case-study-image-container[data-fit=float] .case-study-image--lottie{width:auto;max-width:100%;height:100%;max-height:100%;display:block}.case-study-image-container[data-fit=float] .case-study-video{object-fit:contain;width:auto;max-width:100%;height:100%;max-height:100%;position:static;inset:auto}.case-study-image-container[data-fit=anchor]{display:block;position:relative}.case-study-image-anchor{top:var(--anchor-top,0);right:var(--anchor-right,0);bottom:var(--anchor-bottom,auto);left:var(--anchor-left,0);aspect-ratio:var(--anchor-aspect,auto);border-radius:var(--radius-md);position:absolute;overflow:hidden}.case-study-card[data-case=youtube-shorts] .case-study-image--lottie{align-self:flex-start;max-height:calc(100% - 24px)}.case-study-card[data-case=syncscape] .case-study-video{max-height:calc(100% - 48px)}.work-decor{bottom:var(--spacing-6);right:var(--spacing-6);position:absolute}@media (max-width:640px){.work-wrapper{padding:var(--spacing-10) var(--spacing-4) var(--spacing-20)}.work-container{padding-top:var(--spacing-16)}.case-study-card{min-height:0;padding:var(--spacing-4) 0}.case-study-header{align-items:baseline;gap:var(--spacing-3);flex-flow:row}.case-study-header-meta{display:contents}.case-study-number{order:1;height:auto}.case-study-title{width:auto;font-size:var(--font-size-display-sm);order:2}.case-study-status{height:auto;padding:var(--spacing-1) var(--spacing-3);order:3;margin-left:auto}.case-study-body{flex-direction:column;min-height:0}.case-study-column--info{width:100%;min-height:0}.case-study-info-top{display:none}.case-study-description{font-size:var(--font-size-body-sm)}.case-study-info-block{min-width:calc(50% - var(--spacing-4));max-width:calc(50% - var(--spacing-4))}.case-study-column--image{min-height:280px}}@media (max-width:1024px){.case-study-card[data-case=serval] .case-study-video{border-radius:0;width:100%;max-width:none;height:100%;max-height:none;margin-inline:0;top:0;left:0;right:0}}
