.logo svg .cls-1{fill:#fff}*{box-sizing:border-box}.nav{list-style:none;margin:0;padding:0}html,body{--ccft-cs-background: #000;--ccft-cs-on-surface: #fff;--ccft-cs-primary: hsl(14, 97%, 65%);--ccft-ts-primary: "Corporate S";--ccft-ts-secondary: "Corporate S";--header-h: 120px;--header-h-small: 60px;--col-l1: clamp(20rem, 22vw, 23rem);--col-l2: clamp(26rem, 32vw, 34rem);--col-l3: 500px;--col-l1-1: clamp(16rem, 19.75vw, 19rem);--col-l2-2: clamp(25rem, 32vw, 32rem);--col-l3-3: 400px;margin:0;background:var(--ccft-cs-background);color:var(--ccft-cs-on-surface);font-family:var(--ccft-ts-primary)}body.home{padding-top:0}body:not(.home){padding-top:var(--header-h-small);background-color:#000}html{scrollbar-gutter:stable}.desktop-menu-open{overflow:auto}.body--lock{overflow:hidden;scrollbar-gutter:stable}.site-header{position:fixed;top:0;left:0;right:0;z-index:11000;display:flex;align-items:center;justify-content:center;height:var(--header-h);background:transparent;font-family:Corporate S;transition:height .52s cubic-bezier(.22,1,.36,1),background-color .36s cubic-bezier(.22,1,.36,1),transform .52s cubic-bezier(.22,1,.36,1)}.logo,.logo a{display:flex;align-items:center;justify-content:center;height:100%}.logo svg{display:block;width:360px;height:100px;transition:width .52s cubic-bezier(.22,1,.36,1),height .52s cubic-bezier(.22,1,.36,1),transform .52s cubic-bezier(.22,1,.36,1)}.site-header.is-scrolled{height:var(--header-h-small);background:#000}.site-header.is-scrolled .logo svg{width:154px;height:auto;transform:none}body:not(.home) .site-header{height:var(--header-h-small);background:#000}body.has-site-header.reference-page:has(.project-cover){padding-block-start:0}body.reference-page:has(.project-cover) .site-header{background:transparent}body.reference-page .project-cover{min-block-size:100svh}body:not(.home) .logo svg{width:154px;height:auto;transform:none}.site-header.is-hidden{transform:translateY(-100%)}body.home .site-header{background:transparent;border-bottom-color:transparent}body.home .site-header.is-scrolled{background:#000;border-bottom-color:#222}.nav__toggle,.nav__close{position:fixed;top:calc((var(--header-h) - 2.5rem) / 2);right:1.75rem;z-index:12000;display:inline-flex;align-items:center;justify-content:center;min-width:2.5rem;height:2.5rem;padding:0;background:none;border:none;cursor:pointer;transition:opacity .25s ease,color .25s ease,transform .52s cubic-bezier(.22,1,.36,1),top .52s cubic-bezier(.22,1,.36,1);font:inherit}.site-header.nav__toggle{transition:top .52s cubic-bezier(.22,1,.36,1)}.site-header.is-scrolled .nav__toggle{transition:top .52s cubic-bezier(.22,1,.36,1);top:calc((var(--header-h-small) - 2.5rem) / 2 + 2px)}.nav__toggle{left:1.75rem;right:auto;color:#fff;font-weight:400;letter-spacing:.08em}.nav__toggle img{display:block;width:1.6875rem;height:1.6875rem}.nav__toggle:hover{background:none}.site-header.is-scrolled .nav__close{transition:top .52s cubic-bezier(.22,1,.36,1);top:calc((var(--header-h-small) - 2.5rem) / 2 + 2px)!important}.nav__close{left:1.75rem;right:auto;width:2.5rem;height:2.5rem;padding:0!important;font-size:0;line-height:1;color:#000;opacity:0;pointer-events:none}.nav__close:before,.nav__close:after{content:"";position:absolute;left:50%;top:50%;width:2rem;height:2px;background:currentColor;transform-origin:center}.nav__close:before{transform:translate(-50%,-50%) rotate(45deg)}.nav__close:after{transform:translate(-50%,-50%) rotate(-45deg)}body:not(.home) .nav__toggle{top:calc((var(--header-h-small) - 2.5rem) / 2 + 2px)}body:not(.home) .nav__close{top:calc((var(--header-h-small) - 2.5rem) / 2 + 2px)!important}:root{--fade-duration: 8s;--start-blur: 12px;--start-color: #577149;--end-color: white}body.home .logo svg{opacity:0;filter:blur(var(--start-blur));animation:fadeUnblur var(--fade-duration) cubic-bezier(.16,1,.3,1) forwards;will-change:opacity,filter}body.home .logo svg .cls-1{fill:var(--start-color);animation:colorShift var(--fade-duration) cubic-bezier(.4,0,.2,1) forwards;will-change:fill}@keyframes fadeUnblur{0%{opacity:0;filter:blur(var(--start-blur))}to{opacity:1;filter:none}}@keyframes colorShift{0%{fill:var(--start-color)}to{fill:var(--end-color)}}@media(prefers-reduced-motion:reduce){body.home .logo svg,body.home .logo svg .cls-1{animation:none;opacity:1;filter:none;fill:var(--end-color)}}@media(min-width:1440px){.layout{position:fixed;inset:0;background:#000000f5;backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .28s ease;z-index:11500}.desktop-menu-open .layout{opacity:1;pointer-events:auto}.desktop-menu-open .nav__close{opacity:1;pointer-events:auto;color:#fff}.desktop-menu-open .nav__toggle{opacity:0;pointer-events:none}.layout__header{position:fixed;top:0;left:0;bottom:0;width:var(--col-l1);padding:2rem 2.5rem 2rem 2rem;border-right:1px solid rgba(255,255,255,.08);overflow-y:auto}.nav--header-1{margin:0}.nav--header-1>.nav__item>.nav__link{color:#fff;display:block;font-family:var(--ccft-ts-secondary);font-size:2rem;letter-spacing:.045em;padding:.65rem 0 .65rem 2.5rem;text-decoration:none;transition:color .2s ease,transform .2s ease,opacity .25s ease;opacity:1}.nav--header-1:hover>.nav__item>.nav__link{opacity:.4}.nav--header-1>.nav__item:hover>.nav__link,.nav--header-1>.nav__item[data-open=true]>.nav__link{opacity:1}.nav--header-1>.nav__item[data-open=true]>.nav__link,.nav--header-1>.nav__item:focus-within>.nav__link{transform:translate(.25rem)}.nav--header-2{position:fixed;top:var(--nav-submenu-top, 0px);bottom:0;left:var(--col-l1);width:var(--col-l2);padding:2.5rem 2.5rem 2.5rem 1.5rem;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease,visibility .18s ease,transform .18s ease}.nav--header-1>.nav__item[data-open=true]>.nav--header-2{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.nav--header-2>.nav__item{margin-bottom:2rem}.nav--header-2>.nav__item>.nav__link{display:block;width:100%;padding:.65rem 1.25rem;border-radius:4px;color:#fff;font-weight:400;font-size:2rem;text-decoration:none;transition:color .18s ease,opacity .18s ease;opacity:1}.nav--header-2:hover>.nav__item>.nav__link{opacity:.4}.nav--header-2>.nav__item:hover>.nav__link{opacity:1}.mnav,.mnav__close{display:none!important}}@media(min-width:721px)and (max-width:1439px){.layout{position:fixed;inset:0;background:#000000f5;backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .28s ease;z-index:11500}.desktop-menu-open .layout{opacity:1;pointer-events:auto}.desktop-menu-open .nav__close{opacity:1;pointer-events:auto;color:#fff}.desktop-menu-open .nav__toggle{opacity:0;pointer-events:none}.layout__header{position:fixed;top:0;left:0;bottom:0;width:var(--col-l1-1);padding:2rem 2.5rem 2rem 2rem;border-right:1px solid rgba(255,255,255,.08);overflow-y:auto}.nav--header-1{margin:0}.nav--header-1>.nav__item>.nav__link{color:#fff;display:block;font-family:var(--ccft-ts-secondary);font-size:1.5rem;letter-spacing:.045em;padding:.65rem 0 .65rem 2.5rem;text-decoration:none;transition:color .2s ease,transform .2s ease,opacity .25s ease;opacity:1}.nav--header-1:hover>.nav__item>.nav__link{opacity:.4}.nav--header-1>.nav__item:hover>.nav__link,.nav--header-1>.nav__item[data-open=true]>.nav__link{opacity:1}.nav--header-1>.nav__item[data-open=true]>.nav__link,.nav--header-1>.nav__item:focus-within>.nav__link{transform:translate(.25rem)}.nav--header-2{position:fixed;top:var(--nav-submenu-top, 0px);bottom:0;left:var(--col-l1-1);width:var(--col-l2-2);padding:2.5rem 2.5rem 2.5rem 1.5rem;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(8px);transition:opacity .18s ease,visibility .18s ease,transform .18s ease}.nav--header-1>.nav__item[data-open=true]>.nav--header-2{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.nav--header-2>.nav__item{margin-bottom:2rem}.nav--header-2>.nav__item>.nav__link{display:block;width:100%;padding:.65rem 1.25rem;border-radius:4px;color:#fff;font-weight:400;font-size:1.5rem;text-decoration:none;transition:color .18s ease,opacity .18s ease;opacity:1}.nav--header-2:hover>.nav__item>.nav__link{opacity:.4}.nav--header-2>.nav__item:hover>.nav__link{opacity:1}.mnav,.mnav__close{display:none!important}}@media(max-width:720px){.logo svg{width:min(10.5rem,43.4vw)}.site-header.is-scrolled .logo svg{width:154px}.layout,.nav__close{display:none!important}.nav__toggle{border:0;padding:0;color:#fff;background:none}.body--lock .nav__toggle{display:none!important}.mnav{position:fixed;inset:0;z-index:11500;background:#000000f5;backdrop-filter:blur(2px);display:grid;grid-template-rows:auto 1fr;transform:translate(100%);transition:transform .28s ease}.mnav[aria-hidden=false]{transform:translate(0)}.mnav__header{display:flex;align-items:center;justify-content:space-between;padding:1rem .75rem 1rem 1rem;border-bottom:1px solid rgba(255,255,255,.08)}.mnav__title{color:#fff;font-weight:800;letter-spacing:.08em}.mnav__close{position:relative;width:2.5rem;height:2.5rem;background:none;border:none;color:#fff;font-size:0;line-height:1;padding:0}.mnav__close:before,.mnav__close:after{content:"";position:absolute;left:50%;top:50%;width:1.8rem;height:2px;background:currentColor;transform-origin:center}.mnav__close:before{transform:translate(-50%,-50%) rotate(45deg)}.mnav__close:after{transform:translate(-50%,-50%) rotate(-45deg)}.mnav__body{overflow-y:auto;-webkit-overflow-scrolling:touch;padding:.5rem .75rem 2rem 1rem}.mnav__list{list-style:none;margin:0;padding:0}.mnav__item{margin:.25rem 0}.mnav__row{display:grid;grid-template-columns:1fr auto;align-items:center;gap:.25rem}.mnav__link{display:block;width:100%;padding:.9rem .75rem .9rem 0;color:#fff;text-decoration:none;font-size:1.05rem;font-weight:600;transition:color .18s ease}.mnav__link:active,.mnav__link:focus,.mnav__link:hover{color:#fc784f}.mnav__expander{background:none;border:1px solid rgba(255,255,255,.15);color:#fff;font-size:1rem;line-height:1;padding:.35rem .55rem;border-radius:6px;min-width:2.25rem}.mnav__expander[aria-expanded=true]{border-color:#fc784f;color:#fc784f}.mnav__list--lvl2{padding-left:1rem}.mnav__list--lvl3{padding-left:1.75rem}@keyframes mnav-reveal{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.mnav__list[hidden]{display:none!important}.mnav__list[data-open=true]{animation:mnav-reveal .18s ease}}
