:root{--c-bg: #141316;--c-bg-alt: #2b2b2b;--c-surface-panel: #1c1b1e;--c-surface-faq: #1f1f1f;--c-surface-hover: #3a3a3a;--c-primary: #ea0044;--c-primary-hover: #c8003a;--c-primary-light: #ff1a5c;--c-text: #fafafa;--c-text-bright: #f7f7f7;--c-text-muted: #b8b8b8;--c-text-nav: #dedede;--c-text-pill: #f0f0f0;--c-white: #ffffff;--c-black: #000000;--c-border-50: rgb(130 130 130 / 50%);--c-border-30: rgb(130 130 130 / 30%);--c-border-20: rgb(130 130 130 / 20%);--c-border-control: rgb(130 130 130 / 75%);--c-emperor: #545454;--c-emperor-50: rgb(84 84 84 / 50%);--c-white-60: rgb(255 255 255 / 60%);--font-sans: "Titillium Web", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-hand: "Fuzzy Bubbles", var(--font-sans);--fw-regular: 400;--fw-semibold: 600;--fw-bold: 700;--t-h1-size: 60px;--t-h1-lh: 66px;--t-h1-ls: -1.2px;--t-h2-size: 32px;--t-h2-lh: 32px;--t-h2-ls: -1.28px;--t-h3-size: 24px;--t-h3-lh: 33.6px;--t-h3-ls: 0;--t-h4-size: 20px;--t-h4-lh: 26px;--t-h4-ls: 0;--t-h4-lh-28: 28px;--t-h4-lh-30: 30px;--t-h4-ls-semi: -.38px;--t-body18-size: 18px;--t-body18-lh: 27px;--t-body-size: 16px;--t-body-lh: 17.92px;--t-body-lh-22: 22.4px;--t-body-lh-24: 24px;--t-body-ls-semi: -.32px;--t-body-lh-26: 25.6px;--t-cap14-size: 14px;--t-cap14-lh: 15.68px;--t-cap14-ls: -.14px;--t-cap13-size: 13px;--t-cap13-lh: 14.56px;--t-cap13-ls: -.13px;--t-cap12-size: 12px;--t-cap12-lh: 12.7px;--t-hero-1: 116px;--t-hero-1-ls: -2.32px;--t-hero-2: 160px;--t-hero-2-ls: -3.2px;--t-footer-name: 138px;--t-footer-name-ls: -3px;--cycle-bleed-top: .25em;--cycle-bleed-bottom: .4em;--s-xxs: 4px;--s-xs: 8px;--s-s: 12px;--s-m: 16px;--s-l: 24px;--s-xl: 32px;--s-2xl: 48px;--s-3xl: 64px;--s-section: 120px;--container: 992px;--container-pad: 44px;--container-outer: 1080px;--col-services-left: 523px;--col-services-right: 442px;--col-about-left: 370px;--col-about-right: 582px;--col-faq-left: 595px;--col-faq-right: 373px;--sticky-top: 140px;--r-card: 24px;--r-pill: 28px;--r-tile: 16px;--r-sm: 12px;--r-xs: 10px;--r-full: 999px;--sh-float: 0 12px 32px rgb(0 0 0 / 40%);--sh-row: 0 .597px .597px -.938px rgb(0 0 0 / 7%), 0 1.811px 1.811px -1.875px rgb(0 0 0 / 7%), 0 4.787px 4.787px -2.813px rgb(0 0 0 / 6%), 0 15px 15px -3.75px rgb(0 0 0 / 3%);--sh-btn-primary: 0 .482px .867px -1.167px rgb(234 0 68 / 68%), 0 1.831px 3.295px -2.333px rgb(234 0 68 / 61%), 0 8px 14.4px -3.5px rgb(234 0 68 / 30%);--sh-btn-inset: inset .318px .438px .325px -1.188px rgb(255 255 255 / 91%), inset .966px 1.328px .985px -2.375px rgb(255 255 255 / 84%), inset 2.553px 3.51px 2.604px -3.563px rgb(255 255 255 / 66%), inset 8px 11px 8.161px -4.75px rgb(255 255 255 / 5%);--ease-out: cubic-bezier(.22, 1, .36, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--d-fast: .15s;--d-hover: .2s;--d-card: .25s;--d-base: .3s;--d-reveal: .5s;--d-enter: .6s;--d-name: .7s;--z-content: 1;--z-widget: 990;--z-nav: 1000;--z-popover: 1100;--z-cursor: 9999;--glass-bg: rgb(130 130 130 / 10%);--glass-blur: blur(24px)}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;scroll-padding-top:104px;scroll-padding-bottom:96px}body{background-color:var(--c-bg);color:var(--c-text);font-family:var(--font-sans);font-size:var(--t-body-size);font-weight:var(--fw-regular);line-height:var(--t-body-lh-22);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip}img,picture,video,canvas,svg{display:block;max-width:100%}img{height:auto}input,button,textarea,select{font:inherit;color:inherit}button{background:none;border:0;padding:0;cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{list-style:none;padding:0}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}:focus-visible{outline:2px solid var(--c-focus, var(--c-primary));outline-offset:2px;border-radius:2px}.cta-card,.service-card--accent{--c-focus: var(--c-white)}:focus:not(:focus-visible){outline:none}[tabindex="-1"]:focus,[tabindex="-1"]:focus-visible{outline:none}::selection{background:var(--c-primary);color:var(--c-white)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;transition-delay:0s!important;scroll-behavior:auto!important}}.t-h1{font-size:var(--t-h1-size);line-height:var(--t-h1-lh);letter-spacing:var(--t-h1-ls);font-weight:var(--fw-bold)}.t-h2{font-size:var(--t-h2-size);line-height:var(--t-h2-lh);letter-spacing:var(--t-h2-ls);font-weight:var(--fw-bold)}.t-h3{font-size:var(--t-h3-size);line-height:var(--t-h3-lh);font-weight:var(--fw-bold)}.t-h4{font-size:var(--t-h4-size);line-height:var(--t-h4-lh);font-weight:var(--fw-regular)}.t-h4-bold{font-size:var(--t-h4-size);line-height:var(--t-h4-lh);font-weight:var(--fw-bold)}.t-body{font-size:var(--t-body-size);line-height:var(--t-body-lh);font-weight:var(--fw-regular)}.t-body-22{font-size:var(--t-body-size);line-height:var(--t-body-lh-22);font-weight:var(--fw-regular)}.t-body-semi{font-size:var(--t-body-size);line-height:var(--t-body-lh-24);letter-spacing:var(--t-body-ls-semi);font-weight:var(--fw-semibold)}.t-cap13{font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh);letter-spacing:var(--t-cap13-ls);font-weight:var(--fw-regular)}.t-cap12{font-size:var(--t-cap12-size);line-height:var(--t-cap12-lh);font-weight:var(--fw-regular)}.t-accent{color:var(--c-primary)}.t-muted{color:var(--c-text-muted)}.container{width:100%;max-width:var(--container-outer);margin-inline:auto;padding-inline:var(--container-pad)}.container>*{max-width:var(--container);margin-inline:auto}@media(max-width:600px){.container{padding-inline:20px}}.section{position:relative}.site-main{position:relative;z-index:var(--z-content)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:50%;transform:translate(-50%);z-index:calc(var(--z-cursor) + 1);background:var(--c-primary);color:var(--c-white);padding:var(--s-s) var(--s-l);border-radius:var(--r-full);transition:top var(--d-fast) var(--ease-out)}.skip-link:focus{top:var(--s-m)}.js [data-reveal]{opacity:0;transform:translateY(24px);transition:opacity var(--d-reveal) var(--ease-out),transform var(--d-reveal) var(--ease-out)}.js [data-reveal].is-animating{will-change:opacity,transform}.js [data-reveal].is-revealed{opacity:1;transform:none;will-change:auto}.js [data-reveal]:focus-within{opacity:1;transform:none}.js [data-rotate-in]{opacity:0;transform:rotate(-12deg) translateY(200px);transition:opacity var(--d-enter) var(--ease-out),transform var(--d-enter) var(--ease-out)}.js [data-rotate-in].is-in{opacity:1;transform:none}.js [data-reveal].is-animating,.js [data-rotate-in].is-animating{will-change:opacity,transform}@media(prefers-reduced-motion:reduce){.js [data-reveal],.js [data-rotate-in]{opacity:1;transform:none}}.js [data-page-transition].is-leaving{opacity:0}@media(prefers-reduced-motion:reduce){.js [data-page-transition].is-leaving{opacity:1}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-xs);border-radius:var(--r-full);white-space:nowrap;transition:background-color var(--d-fast) var(--ease-out),color var(--d-fast) var(--ease-out),transform var(--d-fast) var(--ease-out)}.btn:active{transform:scale(.98)}.btn__icon{display:flex;flex-shrink:0}.btn__icon svg{width:16px;height:16px}.btn--primary{height:44px;padding:var(--s-xs) var(--s-m);background:var(--c-primary);color:var(--c-white);font-size:var(--t-body-size);line-height:var(--t-body-lh);box-shadow:var(--sh-btn-primary),var(--sh-btn-inset)}.btn--primary:hover{background:var(--c-primary-hover)}.btn--dark{padding:10px var(--s-m);background:var(--c-black);color:var(--c-white);font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh)}.btn--dark:hover{background:var(--c-surface-hover)}.link-all{display:inline-flex;align-items:center;gap:var(--s-xxs);font-size:var(--t-body-size);line-height:var(--t-body-lh);color:var(--c-text-muted);transition:color var(--d-fast) var(--ease-out)}.link-all:hover{color:var(--c-white)}.link-all svg{width:16px;height:16px}.nav{position:fixed;top:32px;left:50%;transform:translate(-50%);z-index:var(--z-nav);height:56px;width:570px;padding:12px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--c-border-50);border-radius:var(--r-pill);transition:width var(--d-base) var(--ease-out)}.nav__inner{display:flex;align-items:center;height:100%;gap:0}.nav__brand{display:flex;align-items:center;gap:var(--s-xs);flex-shrink:0;margin-right:auto}.nav__photo{width:32px;height:32px;border-radius:50%;object-fit:cover;flex-shrink:0}.nav__name{color:var(--c-text);white-space:nowrap}.nav__actions{display:flex;align-items:center;gap:18px;flex-shrink:0;width:var(--nav-actions-w, auto);overflow-x:clip;overflow-y:visible;transition:width var(--d-base) var(--ease-out),opacity var(--d-base) var(--ease-out),visibility var(--d-base) var(--ease-out)}.nav__list{display:flex;align-items:center;gap:18px}.nav__list a{font-size:var(--t-body-size);line-height:var(--t-body-lh);color:var(--c-text-nav);white-space:nowrap;transition:color var(--d-fast) var(--ease-out)}.nav__list a:hover{color:var(--c-white)}.nav__cta{display:inline-flex;align-items:center;justify-content:center;min-width:86px;height:34px;padding:var(--s-xs) var(--s-m);border-radius:var(--r-full);background:var(--c-primary);color:var(--c-white);white-space:nowrap;transition:background-color var(--d-fast) var(--ease-out),transform var(--d-fast) var(--ease-out)}.nav__cta:hover{background:var(--c-primary-hover)}.nav__cta:active{transform:scale(.98)}.nav__menu{display:none;flex-direction:column;gap:3px;padding:var(--s-xs);flex-shrink:0}.nav__menu span{display:block;width:16px;height:2px;background:var(--c-text-nav);transition:background-color var(--d-fast) var(--ease-out)}.nav__menu:hover span{background:var(--c-white)}.nav.is-compact{width:300px}.nav.is-compact .nav__actions{width:0;opacity:0;visibility:hidden;pointer-events:none}.nav.is-compact .nav__menu{display:flex}.nav.is-compact.is-peeking .nav__actions{width:var(--nav-actions-w, auto);opacity:1;visibility:visible;pointer-events:auto}.nav.is-compact.is-peeking .nav__menu{display:none}.nav.is-compact.is-peeking{width:570px}.nav__contact{position:relative}.popover{position:absolute;top:calc(100% + 12px);right:0;z-index:var(--z-popover);width:max-content;min-width:195px;max-width:min(320px,calc(100vw - 32px));padding:var(--s-xs);background:var(--c-surface-panel);border:1px solid var(--c-border-30);border-radius:var(--r-tile);box-shadow:var(--sh-float);opacity:0;transform:translateY(-8px);transition:opacity var(--d-hover) var(--ease-out),transform var(--d-hover) var(--ease-out)}.popover.is-open{opacity:1;transform:none}.popover:before{content:"";position:absolute;left:0;right:0;bottom:100%;height:12px}.nav.is-compact:not(.is-peeking) .popover{opacity:0;visibility:hidden;pointer-events:none}.popover__row{display:flex;align-items:center;gap:var(--s-s);padding:12px 16px;border-radius:var(--r-xs);transition:background-color var(--d-fast) var(--ease-out)}.popover__row:hover{background:var(--c-bg-alt)}.popover__icon{flex-shrink:0;color:var(--c-primary)}.popover__icon svg{width:24px;height:24px}.popover__text{display:flex;flex-direction:column;gap:2px}.popover__title{font-size:15px;line-height:1.2;font-weight:var(--fw-semibold);color:var(--c-text)}.popover__sub{font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh);color:var(--c-text-muted);white-space:nowrap}@media(max-width:1023px){.nav{width:300px}.nav .nav__actions{display:none}.nav .nav__menu{display:flex}.nav.is-open .nav__menu span:nth-child(1){transform:translateY(5px) rotate(45deg)}.nav.is-open .nav__menu span:nth-child(2){opacity:0}.nav.is-open .nav__menu span:nth-child(3){transform:translateY(-5px) rotate(-45deg)}.nav__menu span{transition:transform var(--d-hover) var(--ease-out),opacity var(--d-hover) var(--ease-out),background-color var(--d-fast) var(--ease-out)}}.mobile-menu{position:fixed;inset:0;z-index:calc(var(--z-nav) - 1);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-l);background:var(--c-bg);opacity:0;visibility:hidden;transition:opacity var(--d-base) var(--ease-out),visibility var(--d-base) var(--ease-out)}.mobile-menu.is-open{opacity:1;visibility:visible}.mobile-menu a{font-size:var(--t-h2-size);line-height:var(--t-h2-lh);font-weight:var(--fw-bold);color:var(--c-text);transition:color var(--d-fast) var(--ease-out)}.mobile-menu a:hover{color:var(--c-primary)}.speak{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:var(--z-widget);display:flex;align-items:center;gap:var(--s-l);height:56px;padding:12px 12px 12px 20px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--c-border-50);border-radius:var(--r-pill)}.speak__text{display:flex;flex-direction:column;gap:2px;white-space:nowrap}.speak__title{color:var(--c-text)}.speak__actions{display:flex;gap:var(--s-xs)}.speak__btn{position:relative;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;color:var(--c-white);transition:background-color var(--d-hover) var(--ease-out)}.speak__btn svg{width:20px;height:20px}.speak__btn--mail{background:var(--c-primary)}.speak__btn--mail:hover{background:var(--c-primary-light)}.speak__btn--cal{background:var(--c-bg-alt)}.speak__btn--cal:hover{background:var(--c-surface-hover)}.speak__tip{--tooltip-gap: 18px}.speak__btn:hover .speak__tip,.speak__btn:focus-visible .speak__tip{opacity:1;transform:translate(-50%) translateY(0)}@media(max-width:1023px){.speak{gap:var(--s-xs);padding:var(--s-xs);height:auto}.speak__text{display:none}}.cursor{position:fixed;top:0;left:0;z-index:var(--z-cursor);width:12px;height:12px;border-radius:50%;background:var(--c-primary);pointer-events:none;transition:opacity var(--d-fast) var(--ease-out),width var(--d-fast) var(--ease-out),height var(--d-fast) var(--ease-out)}.cursor.is-large{width:19.2px;height:19.2px}.cursor.is-hidden{opacity:0}@media(pointer:fine){.has-custom-cursor a,.has-custom-cursor button,.has-custom-cursor [role=button],.has-custom-cursor summary{cursor:none}}.is-card-hover .cursor{width:6px;height:6px}@media(pointer:coarse){.cursor{display:none}}@media(forced-colors:active),(prefers-contrast:more){.has-custom-cursor,.has-custom-cursor a,.has-custom-cursor button,.has-custom-cursor [role=button],.has-custom-cursor summary{cursor:auto}.cursor{display:none}}.card{display:flex;flex-direction:column;gap:var(--s-m)}.card__media{position:relative;aspect-ratio:4 / 3;border-radius:var(--r-card);overflow:hidden}.card__img{width:100%;height:100%;object-fit:cover;transition:transform var(--d-card) var(--ease-out)}.card__img--empty{display:block;width:100%;height:100%;background:var(--c-surface-hover)}.card:hover .card__img{transform:scale(1.05)}.card__badge{position:absolute;top:0;left:0;pointer-events:none;padding:var(--s-xs) 14px;border-radius:var(--r-full);background:var(--c-primary);color:var(--c-white);font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh);white-space:nowrap;opacity:0;scale:.6;transition:opacity var(--d-card) var(--ease-out),scale var(--d-card) var(--ease-out)}.card.is-hovered .card__badge{opacity:1;scale:1}.card__foot{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-m)}.card__meta{display:flex;flex-direction:column;gap:var(--s-xxs);min-width:0}.card__title{color:var(--c-text);transition:color var(--d-card) var(--ease-out)}.card__category{color:var(--c-text-muted)}.card__action{display:inline-flex;align-items:center;gap:var(--s-xxs);flex-shrink:0;color:var(--c-text-muted);transition:color var(--d-card) var(--ease-out)}.card__action svg{width:13px;height:13px}.card:hover .card__title,.card:hover .card__action{color:var(--c-primary)}@media(pointer:coarse){.card__badge{display:none}}.service-card{position:sticky;display:flex;flex-direction:column;gap:var(--s-s);padding:var(--s-l);border-radius:var(--r-card);background:var(--c-bg)}.service-card--dark{border:1px solid var(--c-border-50);color:var(--c-text)}.service-card--accent{background:var(--c-primary);color:var(--c-white)}.service-card__icon{width:32px;height:32px}.service-card--dark .service-card__icon{color:var(--c-primary)}.service-card--accent .service-card__icon{color:var(--c-white)}.service-card__title{color:inherit}.service-card__text{color:var(--c-text-muted)}.service-card--accent .service-card__text{color:var(--c-white)}.service-card .pills{margin-top:var(--s-xxs)}@media(max-width:1023px){.service-card{position:static;top:auto}}.tools__label{margin-bottom:var(--s-s)}.tools__grid{display:flex;flex-wrap:wrap;gap:var(--s-s)}.tool{position:relative;display:flex}.tool__tile{display:flex;align-items:center;justify-content:center;width:60px;height:60px;border:1px solid var(--c-border-30);border-radius:var(--r-tile);background:var(--c-bg)}.tool__tile{color:var(--c-text-nav);transition:color var(--d-hover) var(--ease-out)}.tool:hover .tool__tile{color:var(--c-primary)}.tool__icon{width:26px;height:26px}.tool__icon--img{filter:brightness(0) saturate(100%) invert(93%) sepia(0%) saturate(0%) hue-rotate(147deg) brightness(93%) contrast(85%);transition:filter var(--d-hover) var(--ease-out)}.tool:hover .tool__icon--img{filter:brightness(0) saturate(100%) invert(19%) sepia(89%) saturate(6069%) hue-rotate(336deg) brightness(93%) contrast(105%)}.tool:hover .tool__name,.tool:focus-within .tool__name{opacity:1;transform:translate(-50%) translateY(0)}.faq__list{display:flex;flex-direction:column;gap:var(--s-m)}.faq-item{background:var(--c-surface-faq);border:1px solid var(--c-emperor-50);border-radius:var(--r-tile);overflow:hidden}.faq-item__heading{font:inherit}.faq-item__button{display:flex;align-items:center;gap:20px;width:100%;padding:12px 16px;text-align:left;border-bottom:1px solid transparent;transition:border-color var(--d-base) var(--ease-in-out)}.faq-item.is-open .faq-item__button{border-bottom-color:var(--c-emperor-50)}.faq-item__number{flex-shrink:0;font-size:var(--t-body-size);line-height:var(--t-body-lh-24);letter-spacing:var(--t-body-ls-semi);font-weight:var(--fw-semibold);color:var(--c-text-bright)}.faq-item__question{flex:1;min-width:0;font-size:var(--t-body-size);line-height:var(--t-body-lh-24);font-weight:var(--fw-bold);color:var(--c-text-nav)}.faq-item__icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;color:var(--c-text)}.faq-item__bar{fill:currentColor;transform-origin:center;transition:opacity var(--d-base) var(--ease-in-out),transform var(--d-base) var(--ease-in-out)}.faq-item.is-open .faq-item__bar--v{opacity:0;transform:scaleY(0)}.faq-item__panel{height:0;overflow:hidden;visibility:hidden;transition:height var(--d-base) var(--ease-in-out),visibility 0s linear var(--d-base)}.faq-item.is-open .faq-item__panel{visibility:visible;transition:height var(--d-base) var(--ease-in-out),visibility 0s linear 0s}.faq-item__answer{max-width:640px;padding:16px;font-size:var(--t-body-size);line-height:var(--t-body-lh-26);color:var(--c-text-muted)}.work-history{display:flex;flex-direction:column;align-items:center;gap:var(--s-xl)}.work-history>.t-h3{align-self:flex-start}.work-history__list{display:flex;flex-direction:column;gap:var(--s-xs);width:100%}.work-history__panel{width:100%;height:0;overflow:hidden;visibility:hidden;transition:height var(--d-base) var(--ease-in-out),visibility 0s linear var(--d-base)}.work-history.is-open .work-history__panel{visibility:visible;transition:height var(--d-base) var(--ease-in-out),visibility 0s linear 0s}.work-history__panel .work-history__list{padding-top:var(--s-xs)}.work-row{display:flex;align-items:center;justify-content:space-between;gap:var(--s-m);padding:18px;background:var(--c-surface-faq);border:1px solid var(--c-emperor-50);border-radius:var(--r-tile);box-shadow:var(--sh-row)}.work-row__main{display:flex;flex-direction:column;gap:var(--s-xxs);min-width:0}.work-row__company{font-size:var(--t-h4-size);line-height:var(--t-h4-lh-30);letter-spacing:var(--t-h4-ls-semi);font-weight:var(--fw-semibold);color:var(--c-text-bright)}.work-row__role,.work-row__period{font-size:var(--t-cap14-size);line-height:var(--t-cap14-lh);letter-spacing:var(--t-cap14-ls);color:var(--c-text-muted)}.work-row__period{flex-shrink:0;text-align:right}.work-history__toggle{display:inline-flex;align-items:center;justify-content:center;gap:var(--s-xxs);height:36px;padding:12px 12px 12px 16px;border-radius:var(--r-card);background:var(--c-bg-alt);border:1px solid var(--c-bg-alt);box-shadow:var(--sh-row);font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh);letter-spacing:var(--t-cap13-ls);color:var(--c-text);transition:background-color var(--d-fast) var(--ease-out)}.work-history__toggle:hover{background:var(--c-surface-hover);border-color:var(--c-surface-hover)}.work-history__caret{width:12px;height:12px;flex-shrink:0;color:var(--c-primary);transition:transform var(--d-base) var(--ease-in-out)}.work-history.is-open .work-history__caret{transform:rotate(180deg)}.pills{display:flex;flex-wrap:wrap;gap:var(--s-xs)}.pill{padding:var(--s-xs) var(--s-m);border:1px solid var(--c-emperor);border-radius:var(--r-full);color:var(--c-text-pill)}.service-card--accent .pill{border-color:var(--c-white-60);color:var(--c-white)}.pill--tag{font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh);border-color:var(--c-border-50);white-space:nowrap}.tooltip-pill{position:absolute;bottom:calc(100% + var(--tooltip-gap, var(--s-xs)));left:50%;transform:translate(-50%) translateY(8px);padding:var(--s-xxs) var(--s-s);border-radius:var(--r-sm);background:var(--c-primary);color:var(--c-white);font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh);white-space:nowrap;pointer-events:none;opacity:0;transition:opacity var(--d-hover) var(--ease-out),transform var(--d-hover) var(--ease-out)}.tooltip-pill.is-visible{opacity:1;transform:translate(-50%) translateY(0)}@media(pointer:coarse){.tooltip-pill{display:none}}.marquee{position:relative;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 40px,#000 calc(100% - 40px),transparent)}.marquee__track{display:flex;gap:var(--s-xs);width:max-content;will-change:transform}.marquee.is-static{overflow:visible;mask-image:none;-webkit-mask-image:none}.marquee.is-static .marquee__track{flex-wrap:wrap;width:auto;will-change:auto}.archive-hero{padding-top:144px;padding-bottom:var(--s-3xl);text-align:center}.archive-hero__inner{max-width:580px;margin-inline:auto}.archive-hero__title{margin-bottom:var(--s-l)}.archive-hero__sub{color:var(--c-text-muted);font-size:var(--t-body-size);line-height:var(--t-body-lh-26)}.section--archive{padding-bottom:var(--s-section)}.archive-filter{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--s-xs);margin-bottom:var(--s-2xl)}.archive-filter a{padding:var(--s-xs) var(--s-m);border:1px solid var(--c-border-control);border-radius:var(--r-full);font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh);color:var(--c-text-pill);transition:background-color var(--d-fast) var(--ease-out),color var(--d-fast) var(--ease-out),border-color var(--d-fast) var(--ease-out)}.archive-filter a:hover{border-color:var(--c-primary);color:var(--c-white)}.archive-filter a[aria-current=page]{background:var(--c-primary);border-color:var(--c-primary);color:var(--c-white)}.archive-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:var(--s-l);row-gap:23px}.archive-more{display:flex;justify-content:center;margin-top:var(--s-3xl)}.archive-empty{text-align:center;color:var(--c-text-muted)}@media(max-width:1023px){.archive-hero{padding-top:120px}.archive-grid{grid-template-columns:1fr}.section--archive{padding-bottom:var(--s-3xl)}}.project-hero{padding-top:144px;padding-bottom:var(--s-3xl)}.project-hero__inner{max-width:580px;margin-inline:auto}.project-hero__title{margin-bottom:var(--s-l)}.project-hero__meta{display:flex;flex-wrap:wrap;gap:var(--s-l);margin-bottom:var(--s-l)}.project-hero__meta-item{display:flex;gap:var(--s-xxs);font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh)}.project-hero__meta-label{color:var(--c-text-muted)}.project-hero__meta-value{color:var(--c-text)}.project-hero__text{display:flex;flex-direction:column;gap:var(--s-m);margin-bottom:var(--s-l)}.project-hero__text p{font-size:var(--t-body18-size);line-height:var(--t-body18-lh);color:var(--c-text-muted)}.project-hero__scope-label{margin-bottom:var(--s-xs);font-size:var(--t-cap13-size);line-height:var(--t-cap13-lh);color:var(--c-text-muted)}.project-body{display:flex;flex-direction:column;gap:var(--s-m)}.project-figure{border-radius:var(--r-card);overflow:hidden}.project-figure img,.project-figure video{width:100%;height:100%;object-fit:cover}.project-figure--wide{aspect-ratio:992 / 554}.project-pair{display:grid;grid-template-columns:repeat(2,1fr);column-gap:12px;row-gap:16px}.project-pair--short .project-figure{aspect-ratio:490 / 416}.project-pair--tall .project-figure{aspect-ratio:490 / 487}.project-pair--single{grid-template-columns:1fr}.project-pair--single .project-figure{aspect-ratio:992 / 554}.project-block{display:flex;flex-direction:column;gap:12px}.project-block+.project-block{margin-top:28px}.project-block__title{font-size:var(--t-h1-size);line-height:69px;letter-spacing:-1.74px;font-weight:var(--fw-bold);color:var(--c-white)}.project-block__text{display:flex;flex-direction:column;gap:0}.project-block__text p{font-size:var(--t-body18-size);line-height:var(--t-body18-lh);color:var(--c-text-muted)}.project-related{padding-block:var(--s-section)}.project-related__title{margin-bottom:var(--s-3xl)}.project-related__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-l)}.project-related__more{display:flex;justify-content:center;margin-top:var(--s-3xl)}.section--cta{padding-bottom:var(--s-section)}@media(max-width:1023px){.project-hero{padding-top:120px}.project-pair,.project-related__grid{grid-template-columns:1fr}.project-related{padding-block:var(--s-3xl)}.section--cta{padding-bottom:var(--s-3xl)}}.hero{display:flex;flex-direction:column;align-items:center;gap:var(--s-l);padding-top:102px;padding-inline:var(--s-xl);overflow:hidden}.hero__stage{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:1039px;height:400px}.hero__title{display:flex;flex-direction:column;align-items:center;gap:20.59px;width:100%;text-align:center}.hero__line{display:block;font-weight:var(--fw-bold);line-height:.9;text-transform:uppercase;white-space:nowrap;color:var(--c-text-bright);font-size:var(--t-hero-1);letter-spacing:var(--t-hero-1-ls)}.hero__line--accent{color:var(--c-primary);font-size:var(--t-hero-2);letter-spacing:var(--t-hero-2-ls)}.hero__avatar{position:absolute;top:21px;left:50%;width:480px;height:480px;margin-left:-240px;pointer-events:none}.hero__avatar-img{width:100%;height:100%;object-fit:contain}.hero__foot{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--s-l);width:100%;max-width:1136px;padding:0 70px 27px 75px}.hero__tagline{width:305px;font-size:var(--t-h4-size);line-height:var(--t-h4-lh);color:var(--c-text-muted)}.js .hero__title,.js .hero__avatar{opacity:0;transform:translateY(24px);animation:hero-in var(--d-enter) var(--ease-out) forwards}.js .hero__avatar{animation-delay:.15s}@keyframes hero-in{to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.js .hero__title,.js .hero__avatar{opacity:1;transform:none;animation:none}}@media(max-width:1023px){.hero{padding-top:120px;padding-inline:var(--s-l)}.hero__stage{height:auto;padding-block:var(--s-3xl)}.hero__avatar{width:320px;height:320px;margin-left:-160px;top:50%;translate:0 -50%}.hero__foot{flex-direction:column;align-items:center;gap:var(--s-l);padding:0 0 var(--s-l);text-align:center}.hero__tagline{width:100%;max-width:305px}}.section--projects{padding-block:var(--s-section)}.section--projects .t-h1{margin-bottom:var(--s-3xl)}.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--s-l)}.projects-more{display:flex;justify-content:center;margin-top:var(--s-3xl)}@media(max-width:1023px){.projects-grid{grid-template-columns:1fr}.section--projects{padding-block:var(--s-3xl)}}.section--services{padding-block:var(--s-section)}.services{display:grid;grid-template-columns:var(--col-services-left) var(--col-services-right);justify-content:space-between;align-items:start}.services__aside{position:sticky;top:var(--sticky-top);display:flex;flex-direction:column;gap:var(--s-2xl)}.services__list{display:flex;flex-direction:column;gap:var(--s-m);padding-bottom:var(--s-section)}@media(max-width:1023px){.section--services{padding-block:var(--s-3xl)}.services{grid-template-columns:1fr;gap:var(--s-2xl)}.services__aside{position:static;top:auto}.services__list{padding-bottom:0}}.tools{display:flex;flex-direction:column}@media(max-width:1023px){.tools__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(60px,1fr));justify-content:start}}.section--about{padding-block:var(--s-section)}.about__heading{margin-bottom:var(--s-3xl)}.about{display:grid;grid-template-columns:var(--col-about-left) var(--col-about-right);gap:40px;align-items:start}.about__aside{display:flex;flex-direction:column;gap:var(--s-m)}.about__photo{position:relative;width:var(--col-about-left);height:409px;border-radius:var(--r-card);overflow:hidden}.about__photo-img{width:100%;height:100%;object-fit:cover}.about__social{position:absolute;right:var(--s-s);bottom:var(--s-s);display:flex;gap:var(--s-s);padding:var(--s-xs) var(--s-s);border-radius:var(--r-full);background:#141316b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.about__social a{display:flex;color:var(--c-white);transition:transform var(--d-fast) var(--ease-out)}.about__social a:hover{transform:scale(1.1)}.about__social img{width:24px;height:24px}.about__social svg{max-width:16px;max-height:16px}.about__name{color:var(--c-text)}.about__body{display:flex;flex-direction:column;gap:20px}.about__text{color:var(--c-text-muted)}.about__signature{width:auto;max-height:80px;margin-block:var(--s-s)}.about .work-history{margin-top:var(--s-m)}@media(max-width:1023px){.section--about{padding-block:var(--s-3xl)}.about{grid-template-columns:1fr;gap:var(--s-2xl)}.about__photo{width:100%;max-width:var(--col-about-left);height:auto;aspect-ratio:370 / 409}}.section--faq{padding-block:var(--s-section)}.section--faq .t-h1{margin-bottom:var(--s-3xl)}.faq{display:grid;grid-template-columns:var(--col-faq-left) var(--col-faq-right);justify-content:space-between;align-items:start}.faq__aside{position:sticky;top:var(--sticky-top)}.cta-card{display:flex;flex-direction:column;gap:var(--s-s);background:var(--c-primary);border:1px solid var(--c-border-50);border-radius:var(--r-card);box-shadow:var(--sh-float);color:var(--c-white)}.cta-card--sidebar{width:var(--col-faq-right);padding:var(--s-l)}.cta-card--wide{width:100%;padding:var(--s-2xl)}.cta-card__avatar{width:64px;height:64px;border-radius:50%;object-fit:cover;margin-bottom:var(--s-xs)}.t-cta-title{font-size:22px;line-height:1.3;font-weight:var(--fw-bold)}.cta-card__text{color:var(--c-white)}.cta-card__foot{display:flex;align-items:center;gap:var(--s-m);margin-top:auto;padding-top:var(--s-m)}.cta-card__logo-wrap{display:flex;align-items:center;flex-shrink:0;color:var(--c-white)}@media(max-width:1023px){.section--faq{padding-block:var(--s-3xl)}.faq{grid-template-columns:1fr;gap:var(--s-2xl)}.faq__aside{position:static;top:auto}.cta-card--sidebar{width:100%;min-height:0}}.site-footer{position:relative;padding-top:var(--s-section);padding-bottom:var(--s-3xl);overflow:hidden}.footer__claim{display:flex;flex-direction:column;margin-bottom:var(--s-3xl)}.footer__claim-line{display:flex;align-items:baseline;gap:.25em;flex-wrap:wrap}.cycle{position:relative;display:inline-block;vertical-align:baseline;font-family:var(--font-hand);font-weight:var(--fw-bold);color:var(--c-primary);white-space:nowrap;transition:width var(--d-reveal) var(--ease-out)}.cycle__ghost{visibility:hidden}.cycle__clip{position:absolute;left:0;right:0;top:calc(var(--cycle-bleed-top) * -1);bottom:calc(var(--cycle-bleed-bottom) * -1);overflow:hidden}.cycle__word{position:absolute;left:0;top:var(--cycle-bleed-top);display:block;transform:translateY(0);will-change:transform}@media(prefers-reduced-motion:reduce){.cycle__word{will-change:auto}}.footer__cols{display:grid;grid-template-columns:1fr auto 1fr;align-items:start;gap:var(--s-l);padding-bottom:var(--s-3xl)}.footer__col{display:flex;flex-direction:column;gap:var(--s-xs)}.footer__col--start{grid-column:1;justify-self:start}.footer__col--center{grid-column:2;justify-self:center}.footer__col--end{grid-column:3;justify-self:end}.footer__value{color:var(--c-text);transition:color var(--d-fast) var(--ease-out)}.footer__value:hover{color:var(--c-primary)}.footer__social{display:flex;gap:var(--s-xs)}.footer__social a{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;background:var(--c-primary);color:var(--c-white);transition:transform var(--d-fast) var(--ease-out)}.footer__social a:hover{transform:scale(1.1)}.footer__social img{width:24px;height:24px}.footer__social svg{max-width:16px;max-height:16px}.footer__bar{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--s-l);padding-top:var(--s-l);border-top:1px solid var(--c-border-20)}.footer__menu{display:flex;flex-direction:column;gap:var(--s-xs)}.footer__nav-list{display:flex;gap:var(--s-m)}.footer__nav-list a{font-size:var(--t-body-size);line-height:var(--t-body-lh);color:var(--c-text);transition:color var(--d-fast) var(--ease-out)}.footer__nav-list a:hover{color:var(--c-primary)}.footer__name{margin-top:var(--s-3xl);margin-bottom:var(--s-xl);text-align:center;line-height:1}.footer__name span{display:block;font-size:var(--t-footer-name);font-weight:var(--fw-bold);letter-spacing:var(--t-footer-name-ls);color:var(--c-primary);white-space:nowrap}.js .footer__name[data-reveal]{transform:translateY(40px);transition:opacity var(--d-name) var(--ease-out),transform var(--d-name) var(--ease-out)}@media(max-width:1023px){.site-footer{padding-top:var(--s-3xl)}.footer__cols{grid-template-columns:1fr}.footer__bar{flex-direction:column;align-items:flex-start}}
