@font-face{font-family:Goodly;src:url(/assets/fonts/goodly-semibold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Goodly;src:url(/assets/fonts/goodly-bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}:root{--surface:#101417;--surface-container:#1c2024;--surface-variant:#323539;--surface-lowest:#0b0f12;--on-surface:#e0e2e8;--on-surface-variant:#c6c6cb;--white:#fff;--accent:#d3ff00;--on-accent:#161e00;--outline:#8f9095;--outline-variant:#45474b;--divider-dim:#272b30;--radius-full:9999px;--margin:24px;--section-gap:96px;--stack-sm:12px;--stack-md:24px;--gutter:32px;--font:"Sora", system-ui, -apple-system, "Segoe UI", sans-serif;--font-brand:"Goodly", "Sora", system-ui, sans-serif}@media (min-width:768px){:root{--margin:80px;--section-gap:160px}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--on-surface);background-color:var(--surface);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;font-weight:400;line-height:1.6;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.material-symbols-outlined{vertical-align:middle;-webkit-user-select:none;user-select:none;font-size:20px;line-height:1}.container{width:100%;padding-left:var(--margin);padding-right:var(--margin)}.section{padding-top:var(--section-gap);padding-bottom:var(--section-gap)}.section--flush-top{padding-top:0}.section--center{text-align:center;align-items:center;gap:var(--stack-md);flex-direction:column;display:flex}.section--cta{gap:var(--gutter)}.headline-xl{letter-spacing:-.04em;margin:0;font-size:clamp(40px,9vw,80px);font-weight:600;line-height:1.1}.headline-lg{letter-spacing:-.02em;color:var(--white);margin:0;font-size:32px;font-weight:600;line-height:1.2}@media (min-width:768px){.headline-lg{font-size:48px}}.headline-md{color:var(--white);margin:0;font-size:24px;font-weight:600;line-height:1.4}.label{letter-spacing:.1em;text-transform:uppercase;color:var(--on-surface-variant);font-size:12px;font-weight:600;line-height:1;display:inline-block}.label--accent{color:var(--accent)}.btn{border-radius:var(--radius-full);letter-spacing:.1em;text-transform:uppercase;border:0;justify-content:center;align-items:center;padding:12px 24px;font-size:12px;font-weight:600;transition:transform .2s,background-color .3s,color .3s;display:inline-flex}.btn--primary{background-color:var(--accent);color:var(--on-accent)}.btn--primary:hover{transform:scale(1.05)}.btn--lg{padding:16px 32px}.link-arrow{letter-spacing:.1em;text-transform:uppercase;color:var(--white);align-items:center;gap:8px;font-size:12px;font-weight:600;transition:color .3s;display:inline-flex}.link-arrow .material-symbols-outlined{font-size:16px}.link-arrow:hover{color:var(--accent)}.link-arrow--underline{border-bottom:1px solid #0000;padding-bottom:4px}.link-arrow--underline:hover{border-color:var(--accent)}.icon-btn{border-radius:var(--radius-full);border:1px solid var(--outline-variant);width:48px;height:48px;color:var(--white);background:0 0;justify-content:center;align-items:center;transition:background-color .3s,border-color .3s;display:inline-flex}.icon-btn:hover{background-color:var(--surface-variant);border-color:var(--surface-variant)}.nav{z-index:50;background-color:#0000;border-bottom:1px solid #0000;width:100%;transition:background-color .4s,border-color .4s;position:fixed;top:0;left:0}.nav.is-scrolled{background-color:var(--surface);border-bottom-color:var(--outline-variant)}.nav__inner{padding-top:var(--stack-md);padding-bottom:var(--stack-md);justify-content:space-between;align-items:center;display:flex}.nav__logo{letter-spacing:-.03em;color:var(--white);font-size:24px;font-weight:600}.nav__links{align-items:center;gap:32px;display:none}.nav__link{color:var(--on-surface-variant);transform-origin:bottom;will-change:transform;white-space:nowrap;font-size:16px;transition:color .3s,transform .14s ease-out}.nav__link:hover,.nav__link.is-active{color:var(--accent)}.nav__cta,.nav__cta--mobile{display:none}.nav__toggle{color:var(--white);background:0 0;border:0;display:inline-flex}.nav__toggle .material-symbols-outlined{font-size:28px}@media (min-width:768px){.nav__links{display:flex}.nav__cta{display:inline-flex}.nav__cta--mobile,.nav__toggle{display:none}}@media (max-width:767px){.nav__links{align-items:flex-start;gap:var(--stack-md);width:100%;padding:var(--stack-md) var(--margin) var(--gutter);background-color:var(--surface);border-bottom:1px solid var(--outline-variant);flex-direction:column;position:absolute;top:100%;left:0}.nav__links.is-open{display:flex}.nav__cta--mobile{margin-top:var(--stack-sm);display:inline-flex}}.hero{background-color:var(--surface);width:100%;height:100svh;position:relative;overflow:hidden}.hero__slides{position:absolute;inset:0}.hero__slide{background-position:50%;background-size:cover;background-color:var(--surface-container);opacity:0;pointer-events:none;transition:opacity .8s ease-in-out;display:flex;position:absolute;inset:0}.hero__slide.is-active{opacity:1;pointer-events:auto;z-index:2}.hero__overlay{background:linear-gradient(to right, var(--surface) 0%, #101417cc 45%, #10141700 100%);position:absolute;inset:0}.hero__content{z-index:2;align-self:flex-end;align-items:flex-start;gap:var(--stack-md);flex-direction:column;max-width:900px;padding-bottom:128px;display:flex;position:relative}.hero__title{letter-spacing:-.03em;color:var(--white);text-wrap:balance;margin:0;font-size:clamp(30px,6vw,58px);font-weight:600;line-height:1.1}.hero__subtitle{color:var(--on-surface-variant);max-width:36ch;margin:0;font-size:18px;line-height:1.6}.hero__controls{z-index:3;justify-content:space-between;align-items:center;display:flex;position:absolute;bottom:48px;left:0;right:0}.hero__nav,.progress{gap:16px;display:flex}.progress__track{background-color:var(--divider-dim);width:60px;height:2px;position:relative;overflow:hidden}.progress__bar{background-color:var(--accent);width:0;height:100%;position:absolute;top:0;left:0}.progress__track.is-active .progress__bar{width:100%;transition:width 5s linear}.services{grid-template-columns:1fr;column-gap:96px;display:grid}@media (min-width:768px){.services{grid-template-columns:1fr 1fr}}.services__item{border-bottom:1px solid var(--outline-variant);transform-origin:0;will-change:transform;padding:32px 0;transition:border-color .3s,transform .16s ease-out;display:block}.services__item .headline-md{transition:color .3s}.services__item:hover{border-bottom-color:var(--accent)}.services__item:hover .headline-md{color:var(--accent)}.stats{border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);grid-template-columns:repeat(2,1fr);gap:32px;padding:48px 0;display:grid}@media (min-width:768px){.stats{grid-template-columns:repeat(4,1fr);gap:48px}}.stats__item{gap:var(--stack-sm);flex-direction:column;display:flex}.stats__value{color:var(--white)}.work-teaser{flex-direction:column;align-items:center;gap:48px;display:flex}.work-teaser__media{aspect-ratio:16/7;border-radius:20px;width:100%;display:block;position:relative;overflow:hidden}.work-teaser__media img{object-fit:cover;width:100%;height:100%;transition:transform .7s}.work-teaser__media:hover img{transform:scale(1.05)}.work-teaser__overlay{justify-content:flex-end;align-items:flex-start;gap:var(--stack-sm);background:linear-gradient(#0b0f1200 25%,#0b0f1259 55%,#0b0f12d9 100%);flex-direction:column;padding:clamp(24px,5vw,56px);display:flex;position:absolute;inset:0}.work-teaser__title{letter-spacing:-.02em;color:var(--white);max-width:18ch;margin:0;font-size:clamp(24px,3.5vw,40px);font-weight:600;line-height:1.15}.work-teaser__cta{letter-spacing:.1em;text-transform:uppercase;color:var(--white);align-items:center;gap:8px;margin-top:4px;font-size:12px;font-weight:600;transition:color .3s;display:inline-flex}.work-teaser__cta .material-symbols-outlined{font-size:16px}.work-teaser__media:hover .work-teaser__cta{color:var(--accent)}.quote{max-width:46rem;color:var(--on-surface-variant);margin:0;font-style:italic;line-height:1.5}.footer{background-color:var(--surface);border-top:1px solid var(--outline-variant);width:100%}.footer__inner{align-items:center;gap:var(--stack-md);padding-top:var(--stack-md);padding-bottom:var(--stack-md);text-align:center;flex-direction:column;display:flex}.footer__brand{color:var(--white);font-size:18px;font-weight:600}.footer__links{flex-wrap:wrap;justify-content:center;gap:24px;display:flex}.footer__links a{letter-spacing:.1em;text-transform:uppercase;color:var(--on-surface-variant);font-size:12px;font-weight:600;transition:color .3s}.footer__links a:hover{color:var(--white)}.footer__copy{letter-spacing:.1em;text-transform:uppercase;color:var(--outline);font-size:12px;font-weight:600}@media (min-width:768px){.footer__inner{text-align:left;flex-direction:row;justify-content:space-between;gap:0}}.preloader{z-index:200;background-color:var(--surface);will-change:transform;flex-direction:column;justify-content:center;align-items:center;gap:24px;transition:transform .7s cubic-bezier(.76,0,.24,1);display:flex;position:fixed;inset:0}html.no-preload .preloader{display:none}.preloader.is-done{transform:translateY(-100%)}.preloader__logo{letter-spacing:-.02em;color:var(--white);font-size:24px;font-weight:600}.preloader__logo span{color:var(--accent)}.preloader__logo-img{object-fit:contain;width:auto;max-width:60vw;height:44px}.preloader__track{background-color:var(--divider-dim);border-radius:2px;width:200px;max-width:60vw;height:2px;overflow:hidden}.preloader__bar{background-color:var(--accent);transform-origin:0;width:100%;height:100%;display:block;transform:scaleX(0)}.preloader__count{letter-spacing:.1em;color:var(--on-surface-variant);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-smooth iframe{pointer-events:none}.reveal{opacity:0;will-change:opacity, transform;transition:opacity .8s,transform .8s cubic-bezier(.22,1,.36,1);transform:translateY(28px)}.reveal.is-in{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}.hero__slide{transition:opacity .2s linear!important}.preloader{display:none!important}.reveal{opacity:1!important;transform:none!important}}.nav__logo,.footer__brand,.preloader__logo{font-family:var(--font-brand)}.nav__logo{letter-spacing:0;font-size:28px}.footer__brand{font-size:21px}.preloader__logo{font-size:26px}.brand__accent{color:var(--accent)}
.wrap{max-width:1280px;margin-inline:auto}.page-header{padding-top:clamp(140px,18vh,208px)}.page-header__label{margin-bottom:var(--stack-md)}.page-header__title{margin-bottom:var(--stack-sm);max-width:60rem}.page-header__intro{color:var(--on-surface-variant);max-width:42rem;margin:var(--stack-sm) 0 0;font-size:18px;line-height:1.6}.rowlist{border-top:1px solid var(--outline-variant)}.rowlist__row{border-bottom:1px solid var(--outline-variant);align-items:flex-start;gap:var(--stack-md);flex-direction:column;padding:48px 0;transition:border-color .3s;display:flex}.rowlist__head{align-items:center;gap:var(--gutter);display:flex}.rowlist__no{color:var(--on-surface-variant)}.rowlist__title{transition:color .3s}.rowlist__desc{color:var(--on-surface-variant);max-width:28rem;margin:0;font-size:16px}.rowlist--interactive .rowlist__row{cursor:pointer}.rowlist--interactive .rowlist__row:hover{border-bottom-color:var(--accent)}.rowlist--interactive .rowlist__row:hover .rowlist__title{color:var(--accent)}@media (min-width:768px){.rowlist__row{flex-direction:row;justify-content:space-between;align-items:center}.rowlist__desc{text-align:right}}.band{background-color:var(--surface-lowest);border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);padding:128px var(--margin);text-align:center;align-items:center;gap:var(--stack-md);flex-direction:column;display:flex}.media-wide{aspect-ratio:21/9;background-color:var(--surface-container);border-radius:2rem;width:100%;overflow:hidden}.media-wide img{object-fit:cover;width:100%;height:100%}.story{gap:var(--gutter);grid-template-columns:1fr;display:grid}.story__body{gap:var(--stack-md);flex-direction:column;display:flex}.story__body p{color:var(--on-surface-variant);margin:0;font-size:18px;line-height:1.6}@media (min-width:768px){.story{grid-template-columns:repeat(12,1fr)}.story__label{grid-column:span 4;align-self:start;position:sticky;top:128px}.story__body{grid-column:span 8}}.team{gap:var(--gutter);grid-template-columns:1fr;display:grid}@media (min-width:768px){.team{grid-template-columns:repeat(3,1fr)}}.team__photo{aspect-ratio:3/4;background-color:var(--surface-variant);border-radius:2rem;width:100%;margin-bottom:16px;overflow:hidden}.team__photo img{object-fit:cover;width:100%;height:100%}.team__meta{justify-content:space-between;align-items:center;display:flex}.team__role{color:var(--accent)}.statgrid{border-top:1px solid var(--outline-variant);border-left:1px solid var(--outline-variant);grid-template-columns:repeat(2,1fr);display:grid}@media (min-width:768px){.statgrid{grid-template-columns:repeat(4,1fr)}}.statgrid__cell{border-right:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);gap:var(--stack-sm);text-align:center;flex-direction:column;align-items:center;padding:32px;display:flex}.statgrid__value{color:var(--white)}.filters-section{padding-top:clamp(48px,7vh,88px)}.grid-section{padding-top:56px;padding-bottom:120px}.filters{gap:var(--gutter);border-bottom:1px solid var(--outline-variant);margin-bottom:0;padding-bottom:16px;display:flex;overflow-x:auto}.filters__btn{color:var(--on-surface-variant);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 0 8px;font-size:16px;transition:color .3s}.filters__btn:hover{color:var(--white)}.filters__btn.is-active{color:var(--white);border-bottom-color:var(--accent)}.pf-grid{flex-direction:column;gap:120px;display:flex}.pf-row{gap:var(--gutter);grid-template-columns:1fr;align-items:start;display:grid}.pf-item{flex-direction:column;display:flex}.pf-item img{object-fit:cover;background-color:var(--surface-variant);border-radius:20px;width:100%;transition:transform .6s}.pf-item:hover img{transform:scale(1.02)}.pf-lg img{aspect-ratio:4/3}.pf-sm img{aspect-ratio:2/3}.pf-cap{padding-top:var(--stack-sm);border-top:1px solid var(--outline-variant);justify-content:space-between;align-items:baseline;gap:16px;margin-top:10px;display:flex}.pf-cap__meta{color:var(--on-surface-variant);white-space:nowrap;font-size:16px}@media (min-width:768px){.pf-row{grid-template-columns:repeat(12,1fr)}.pf-row--lg-left .pf-lg{grid-column:1/span 7}.pf-row--lg-left .pf-sm{grid-column:9/span 4;margin-top:96px}.pf-row--lg-right .pf-lg{grid-column:6/span 7}.pf-row--lg-right .pf-sm{grid-column:1/span 4;margin-top:96px}}.testimonial{background-color:var(--surface-lowest);border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);padding:var(--section-gap) var(--margin);text-align:center;align-items:center;gap:var(--stack-md);flex-direction:column;display:flex}.testimonial__quote{max-width:60rem;color:var(--white)}.testimonial__author{color:var(--accent)}.project-back{width:fit-content;margin-bottom:48px;display:flex}.project-back .material-symbols-outlined{font-size:16px}.project-hero{padding-top:clamp(130px,17vh,200px)}.project-hero__cat{margin-bottom:var(--stack-md);display:block}.project-hero__title{letter-spacing:-.04em;color:var(--white);margin:0 0 var(--stack-md);max-width:15ch;font-size:clamp(44px,8.5vw,104px);font-weight:600;line-height:1.02}.project-hero__lead{color:var(--on-surface-variant);max-width:40ch;margin:0;font-size:clamp(18px,2.2vw,24px);line-height:1.5}.project-visual{padding-top:clamp(48px,8vh,96px)}.project-visual__frame{aspect-ratio:16/9;background:var(--surface-container);border-radius:24px;width:100%;overflow:hidden}.project-visual__frame--tall{aspect-ratio:4/3}@media (min-width:768px){.project-visual__frame--tall{aspect-ratio:3/2}}.project-visual__img{object-fit:cover;will-change:transform;width:100%;height:100%;transform:scale(1.12)}.project-meta{padding-top:clamp(48px,8vh,88px)}.project-meta__grid{border-top:1px solid var(--outline-variant);border-bottom:1px solid var(--outline-variant);grid-template-columns:repeat(2,1fr);gap:24px;padding:28px 0;display:grid}@media (min-width:768px){.project-meta__grid{grid-template-columns:repeat(var(--meta-cols,4), minmax(0, 1fr));gap:0 32px;padding:32px 0}}.project-meta__cell{flex-direction:column;gap:10px;display:flex}.project-meta__val{color:var(--white);font-size:20px;line-height:1.35}.project-overview__grid{gap:var(--gutter);grid-template-columns:1fr;display:grid}.project-overview__label{padding-top:6px}.project-overview__body{flex-direction:column;align-items:flex-start;gap:24px;display:flex}.project-overview__body p{color:var(--on-surface-variant);margin:0;font-size:18px;line-height:1.7}.project-overview__lead{letter-spacing:-.01em;color:var(--white)!important;font-size:clamp(22px,2.6vw,30px)!important;line-height:1.4!important}.project-overview__cta{margin-top:16px}@media (min-width:768px){.project-overview__grid{grid-template-columns:3fr 9fr;gap:80px}.project-overview__label{align-self:start;position:sticky;top:128px}}.project-next{height:clamp(360px,60vh,620px);margin-top:var(--section-gap);display:block;position:relative;overflow:hidden}.project-next__bg{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:scale(1.02)}.project-next:hover .project-next__bg{transform:scale(1.08)}.project-next__overlay{background:linear-gradient(#0b0f1259 0%,#0b0f1280 55%,#0b0f12eb 100%);position:absolute;inset:0}.project-next__inner{align-items:flex-end;padding-bottom:clamp(40px,7vh,80px);display:flex;position:absolute;inset:0}.project-next__inner .wrap{align-items:flex-start;gap:var(--stack-sm);flex-direction:column;width:100%;display:flex}.project-next__title{letter-spacing:-.03em;color:var(--white);font-size:clamp(36px,6vw,76px);font-weight:600;line-height:1.05;transition:color .3s}.project-next:hover .project-next__title{color:var(--accent)}.project-next__cta{margin-top:8px}.project-cta{gap:var(--stack-md)}.contact{gap:var(--gutter);flex-direction:column;display:flex}.contact__info{flex-direction:column;gap:48px;display:flex}.contact__details{border-top:1px solid var(--outline-variant);flex-direction:column;gap:32px;max-width:24rem;padding-top:32px;display:flex}.contact__dl{flex-direction:column;gap:24px;margin:0;display:flex}.contact__dl div{flex-direction:column;gap:8px;display:flex}.contact__dl dt{color:var(--on-surface-variant)}.contact__dl dd{color:var(--white);margin:0;font-size:16px}.contact__dl a:hover{color:var(--accent)}.contact__social{gap:24px;display:flex}.contact__social a{color:var(--on-surface-variant);transition:color .3s}.contact__social a:hover{color:var(--accent)}@media (min-width:768px){.contact{flex-direction:row;align-items:flex-start;gap:96px}.contact__info,.contact__form-col{flex:1}}.form-card{background-color:var(--surface-container);border:1px solid var(--outline-variant);border-radius:24px;padding:32px}@media (min-width:768px){.form-card{padding:48px}}.form,.form-row{flex-direction:column;gap:32px;display:flex}@media (min-width:640px){.form-row{flex-direction:row}.form-row .field{flex:1}}.field{flex-direction:column;gap:8px;display:flex;position:relative}.field label{color:var(--on-surface-variant)}.field input,.field textarea,.field select{border:0;border-bottom:1px solid var(--outline-variant);width:100%;color:var(--white);font-family:var(--font);background:0 0;padding:8px 0;font-size:16px;transition:border-color .3s}.field textarea{resize:vertical;min-height:96px}.field select{appearance:none;cursor:pointer}.field select option{background-color:var(--surface-container);color:var(--on-surface)}.field input::placeholder,.field textarea::placeholder{color:#c6c6cb80}.field input:focus,.field textarea:focus,.field select:focus{border-bottom-color:var(--accent);outline:none}.field__chevron{pointer-events:none;color:var(--on-surface-variant);position:absolute;bottom:8px;right:0}.field--error input,.field--error textarea,.field--error select{border-bottom-color:var(--error,#ffb4ab)}.field-error{color:#ffb4ab;font-size:12px}.alert{border-radius:12px;margin-bottom:24px;padding:16px 20px;font-size:14px}.alert--success{color:var(--accent);background:#d3ff001f;border:1px solid #d3ff0066}.alert--error{color:#ffb4ab;background:#ffb4ab1a;border:1px solid #ffb4ab66}.btn--plain{text-transform:none;letter-spacing:normal;gap:8px;font-size:16px}.btn--plain .material-symbols-outlined{font-size:18px}
