@font-face{font-family:Switzer;src:url(fonts/Switzer-Light.woff2) format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(fonts/Switzer-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(fonts/Switzer-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(fonts/Switzer-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:"Instrument Serif";src:url(fonts/InstrumentSerif-Italic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Fira Code;src:url(fonts/FiraCode-Variable.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}@font-face{font-family:Gilroy Heavy;src:url(fonts/gilroy/Gilroy-Heavy.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Gilroy Black;src:url(fonts/gilroy/Gilroy-Black.woff2) format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Gilroy Bold;src:url(fonts/gilroy/Gilroy-Bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Gilroy Bold;src:url(fonts/gilroy/Gilroy-Regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Gilroy Bold;src:url(fonts/gilroy/Gilroy-Medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Gilroy Bold;src:url(fonts/gilroy/Gilroy-ExtraBold.woff2) format("woff2");font-weight:800;font-style:normal;font-display:swap}:root{--color-accent: #1E90FF;--font-display: "Switzer", "Switzer Placeholder", sans-serif;--font-mono: "Fira Code", monospace;--text-2xs: .5625rem;--text-xs: .625rem;--text-sm: .75rem;--text-base: 1rem;--text-lg: 1.75rem;--text-xl: 3rem;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4.5rem;--gutter: clamp(1rem, .6rem + 1.2vw, 1.5rem);--content-max: 1600px;--meta-spacing: 10px;--card-swap-distance: calc(2 * var(--meta-spacing) + 7px);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-slow: cubic-bezier(.25, .46, .45, .94)}[data-surface=dark]{--color-bg: #000000;--color-ink: #ffffff;--color-ink-muted: rgba(255, 255, 255, .55);--color-line: rgba(255, 255, 255, .2);--color-line-solid: #333333}[data-surface=light]{--color-bg: #fffaed;--color-ink: #000000;--color-ink-muted: rgba(0, 0, 0, .55);--color-line: rgba(0, 0, 0, .15);--color-line-solid: #d9d5c9}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}html{scrollbar-width:none;-ms-overflow-style:none}html::-webkit-scrollbar{display:none}body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--color-bg);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-sm);line-height:1.4;-webkit-font-smoothing:antialiased}#main{flex:1 0 auto}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}@media (min-width: 810px) and (hover: hover){a:hover{color:var(--color-accent)}}ul{margin:0;padding:0;list-style:none}h1,h2,h3,p{margin:0}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.skip-link{position:absolute;left:-9999px;top:0;background:var(--color-accent);color:#fff;padding:var(--space-2) var(--space-4);z-index:100}.skip-link:focus{left:0}.text-link{font-family:var(--font-display);font-weight:700;font-size:var(--text-base);letter-spacing:-.01em;text-transform:uppercase;transition:color .25s var(--ease-out)}@media (min-width: 810px) and (hover: hover){.text-link:hover{color:var(--color-accent);animation:text-link-blur-pulse .45s var(--ease-out)}}@keyframes text-link-blur-pulse{0%{filter:blur(0)}40%{filter:blur(4px)}to{filter:blur(0)}}@media (prefers-reduced-motion: reduce){.text-link:hover{animation:none}}.glass-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:10px 12px 12px;border-radius:999px;cursor:pointer}@media (min-width: 810px) and (hover: hover){.glass-btn:hover{color:var(--color-accent)}}.is-connect-accent{color:var(--color-accent);transition:color .4s var(--ease-out)}.glass-btn__label{font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:16px;line-height:normal;text-box-trim:trim-both;text-box-edge:cap alphabetic;text-transform:uppercase;white-space:nowrap;position:relative;z-index:1;transition:color .25s var(--ease-out)}.glass-btn__glass{position:absolute;left:50%;top:0;width:100%;height:4px;transform:translate(-50%);z-index:2;pointer-events:none;border-radius:0;transition:left .4s var(--ease-out),top .4s var(--ease-out),width .4s var(--ease-out),height .4s var(--ease-out),transform .4s var(--ease-out);-webkit-mask-image:radial-gradient(closest-side,#000 65%,transparent 100%);mask-image:radial-gradient(closest-side,#000 65%,transparent 100%)}.nav__prev .glass-btn__glass{left:0%;top:0;width:4px;height:100%;transform:translate(0)}.nav__next .glass-btn__glass{left:100%;top:0;width:4px;height:100%;transform:translate(-100%)}.nav__index-face{font-family:var(--font-mono)}.nav__prev .glass-btn__label,.nav__next .glass-btn__label{font-family:var(--font-mono);font-weight:400;word-spacing:-5.6px}.nav-arrow__prefix{font-weight:700}@media (min-width: 810px) and (hover: hover){.glass-btn:hover .glass-btn__glass{top:50%;width:calc(100% + 40px);height:100%;transform:translate(-50%,-50%)}}@media (min-width: 810px) and (hover: hover){.nav__prev:hover .glass-btn__glass,.nav__next:hover .glass-btn__glass{left:50%;top:0;transform:translate(-50%)}}.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-2) var(--space-4);padding-block:2px;padding-inline:calc(var(--ruler-size) - 10px);background:var(--color-bg);transition:transform .6s var(--ease-out)}body.project-page .nav{position:fixed;top:0;left:0;right:0;transition:transform .6s var(--ease-out)}@media (min-width: 810px){body.project-page .nav:has(.nav__prev){display:grid;grid-auto-flow:column;grid-auto-columns:1fr}body.project-page .nav__prev{justify-self:start}body.project-page .nav__next{justify-self:end}}.nav__face{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}.nav--entering{transform:translateY(-100%)}.footer__contact--time{font-variant-numeric:tabular-nums}.nav__mobile-toggle{display:none;background:none;border:0;color:var(--color-ink);font:inherit}.nav__menu{display:contents}.nav__menu-bg,.nav__contacts{display:none}.nav__slots{display:contents}.project-strip{display:flex;overflow:hidden;padding:var(--ruler-size) 0 var(--space-6);touch-action:pan-y}.project-strip__track{display:flex;align-items:flex-start;gap:var(--meta-spacing);padding:0 var(--gutter);will-change:transform}.project-card{flex:0 0 auto;width:365px;cursor:default}.project-strip.is-column{overflow:visible;touch-action:auto}.project-strip.is-column .project-strip__track{flex-direction:column;padding-inline:0;gap:var(--block-inset)}.project-strip.is-column .project-card{width:100%}.project-strip.is-column .project-card__meta{padding-inline:var(--edge-inline-padding)}.project-card__frame{width:100%;height:auto;overflow:hidden;background:var(--color-line);transform-origin:top;transform:scaleY(0);transition:transform .7s var(--ease-out)}.project-strip.is-revealed .project-card__frame{transform:scaleY(1)}.project-card__frame--skip-reveal{transform:scaleY(1)!important;transition:none!important}.project-card__frame--expanding{position:fixed;z-index:10000;transition:top .4s var(--ease-out),left .4s var(--ease-out),width .4s var(--ease-out),height .4s var(--ease-out)}.project-card__frame img{width:100%;height:100%;object-fit:cover;display:block}.project-card__frame:not(.project-card__frame--expanding){position:relative}.project-card__fill{position:absolute;inset:0;background:var(--fill, #FFA07A);transform-origin:center top;pointer-events:none}body.cards-open .project-card__fill{transform:scaleY(0)}.project-card__frame--expanding .project-card__fill{transform:scaleY(0)!important}.card-lens{position:fixed;left:0;top:0;pointer-events:none;z-index:3;visibility:hidden}.card-lens.is-live{visibility:visible}.peek-eye{position:relative;display:inline-block}.peek-eye__pupil{position:absolute;left:0;top:0;clip-path:inset(var(--pupil-top, 47%) var(--pupil-right, 32%) var(--pupil-bottom, 43%) var(--pupil-left, 32%))}.peek-eye__lids{position:relative}.project-card__meta{display:flex;flex-direction:column;gap:1px;padding-top:var(--meta-spacing);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:-.02em;text-transform:uppercase;color:#000;-webkit-font-smoothing:auto;text-rendering:optimizeLegibility;opacity:0;transform:translateY(12px);transition:color .4s var(--ease-slow),opacity .6s var(--ease-out),transform .6s var(--ease-out)}.project-strip.is-revealed .project-card__meta{opacity:1;transform:none}.project-card__meta--skip-reveal{opacity:1!important;transform:none!important;transition:color .4s var(--ease-slow)!important}.project-card:focus-within .project-card__meta{color:var(--color-accent)}@media (min-width: 810px) and (hover: hover){.project-card:hover .project-card__meta{color:var(--color-accent)}}.project-card__slug,.project-card__year{line-height:7px;z-index:1}.project-card__slug{font-weight:600}.project-card__wrap{position:relative;height:25px;z-index:0}.project-card__glass-plaque{position:absolute;left:-5px;height:16px;z-index:1}.project-card__glass-plaque--category{top:-8px}.project-card__glass-plaque--view{top:17px}.project-card__text-crop{position:absolute;inset:0;overflow:hidden}.project-card__text-track{position:absolute;inset-inline-start:0;top:0;transition:transform .4s var(--ease-slow)}.project-card:focus-within .project-card__text-track{transform:translateY(calc(-1 * var(--card-swap-distance)))}@media (min-width: 810px) and (hover: hover){.project-card:hover .project-card__text-track{transform:translateY(calc(-1 * var(--card-swap-distance)))}}.project-card__category,.project-card__view{position:absolute;inset-inline-start:0;display:block;line-height:7px;white-space:nowrap}.project-card__category{top:9px}.project-card__view{top:calc(9px + var(--card-swap-distance))}.works-columns{padding-top:calc(var(--ruler-size) + 14px);padding-left:var(--ruler-size);padding-right:var(--gutter);padding-bottom:var(--space-8);display:grid;grid-template-columns:max-content minmax(160px,340px) 1fr;align-items:start;gap:30px}.works-column__heading{font-family:var(--font-display);font-weight:700;font-size:var(--text-sm);letter-spacing:.4px;text-transform:uppercase;margin-bottom:var(--space-2)}.works-list__row{display:block;padding:0;margin-bottom:8px;line-height:1;text-box-trim:trim-both;text-box-edge:cap alphabetic;font-family:var(--font-mono);font-weight:700;font-size:var(--text-sm);text-transform:uppercase;color:#afaea7;transition:color .2s var(--ease-out)}.works-list__row:focus-visible,.works-list__row.is-related{font-weight:400;color:var(--color-accent)}@media (min-width: 810px) and (hover: hover){.works-list__row:hover{font-weight:400;color:var(--color-accent)}}.works-list__row.is-tag-active{font-weight:400;color:var(--color-accent)}@media (max-width: 809.98px){.works-columns{grid-template-columns:1fr;gap:var(--space-6)}}.works-preview{margin-top:17px;width:100%;aspect-ratio:3 / 4;pointer-events:none;opacity:0;transition:opacity .25s var(--ease-out);z-index:15;background:var(--color-line);overflow:hidden}.works-preview.is-visible{opacity:1}.works-preview img{width:100%;height:100%;object-fit:cover}@media (max-width: 1199.98px){.works-preview{display:none}.works-columns{grid-template-columns:max-content 1fr}}.info-hero{position:relative;width:100%;min-height:70vh;overflow:hidden}.info-hero__bg{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.info-hero__overlay{position:relative;z-index:1;display:flex;align-items:flex-end;gap:var(--space-6);min-height:70vh;padding:var(--space-6) var(--gutter);color:#fff}.info-hero__plus{font-weight:700;text-transform:uppercase;white-space:nowrap}.info-hero__highlights{font-weight:700;text-transform:uppercase;font-size:var(--text-lg);line-height:1.3;max-width:75ch}.info-clients{padding:var(--space-7) var(--gutter)}.info-clients h2{font-size:var(--text-lg);font-weight:700;margin-bottom:var(--space-5)}.info-clients__body{display:flex;gap:var(--space-7);align-items:flex-start;flex-wrap:wrap}.info-clients__photo{width:min(20vw,200px);aspect-ratio:2 / 3;object-fit:cover;background:var(--color-line)}.info-clients__list{font-size:var(--text-xl);font-weight:700}.info-clients__list li{color:var(--color-ink-muted);line-height:1.3}.info-clients__list li.is-active{color:var(--color-ink)}.info-bio{padding:var(--space-8) var(--gutter);display:flex;gap:var(--space-8);align-items:flex-start;flex-wrap:wrap}.info-bio__text{flex:1 1 480px;max-width:60ch}.info-bio__text h2{font-size:var(--text-lg);font-weight:700;line-height:1.25;margin-bottom:var(--space-5)}.info-bio__text p{font-size:var(--text-sm);line-height:1.5;color:var(--color-ink-muted);margin-bottom:var(--space-4)}.info-bio__portrait{flex:0 1 260px;width:min(22vw,260px);height:auto}.info-grid{padding:0 var(--gutter) var(--space-8);display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-6)}.info-grid__col h3{font-family:var(--font-mono);font-size:var(--text-xs);text-transform:uppercase;color:var(--color-ink-muted);margin-bottom:var(--space-3)}.info-grid__list{font-size:var(--text-xs);line-height:1.7}.info-dates{display:flex;gap:var(--space-7);flex-wrap:wrap}.info-dates div{display:flex;flex-direction:column;font-weight:700;text-transform:uppercase}@media (max-width: 1199.98px){.info-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 809.98px){.info-grid{grid-template-columns:repeat(2,1fr);gap:var(--space-5)}.info-bio{flex-direction:column}.info-hero__overlay{flex-direction:column;align-items:flex-start;gap:var(--space-3)}}body.project-page{height:100vh;display:flex;flex-direction:column;overflow:hidden}body.scroll-unlocked{height:auto;overflow:visible}:root{--hero-chrome-height: 37px;--block-gap: 0px;--block-full: calc(100vh - 2 * var(--hero-chrome-height))}:root{--edge-inline-padding: calc(var(--ruler-size) - 10px + 12px);--block-edge-pad: clamp(0px, calc((100vw - 768px) * 26 / 432), 26px);--text-edge-floor: var(--edge-inline-padding);--media-min-aspect: 1;--block-inset: 14px}.pblock{display:flex;align-items:stretch;gap:var(--block-inset);height:auto;padding-inline:var(--block-edge-pad);margin-top:var(--edge-inline-padding)}.pblock:first-child{margin-top:0}.pblock__text{order:2}.pblock__media{order:1}.pblock__text{display:flex;flex-direction:column;justify-content:center;flex:0 0 27%;height:auto;padding-inline:calc(var(--text-edge-floor) - var(--block-edge-pad))}.sticky-group{position:relative;margin-top:var(--edge-inline-padding)}.sticky-group:first-child{margin-top:0}.sticky-group>.pblock{height:var(--block-full)}.sticky-group__text-scope{position:absolute;inset:0;width:100%;padding-inline:var(--block-edge-pad);pointer-events:none}.sticky-group__text-scope .pblock__text{position:sticky;top:var(--hero-chrome-height);height:var(--block-full);width:27%;margin-left:auto;pointer-events:auto}.pblock__media--placeholder{visibility:hidden}.sticky-group__media-scope{position:absolute;inset:0;width:100%;padding-inline:var(--block-edge-pad);pointer-events:none}.sticky-group__media-scope .pblock__media{position:sticky;top:var(--hero-chrome-height);height:var(--block-full);width:calc(73% - var(--block-inset));overflow:hidden;pointer-events:auto}.sticky-group__media-layer{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;display:block;opacity:0;transition:opacity .6s var(--ease-out)}.sticky-group__media-layer.is-active{opacity:1}.sticky-group--row-media .pblock__media-row{flex-direction:row}.sticky-group--row-media .pblock__media-row .pblock__tile{flex-grow:0;flex-shrink:0;flex-basis:0;min-width:0;min-height:0;transition:flex-basis .6s var(--ease-slow);position:relative}@media (max-width: 767px){.sticky-group--row-media .pblock__media-row{flex-direction:column}}.pblock__text-inner{display:flex;flex-direction:column;justify-content:center;width:100%;padding-block:var(--block-inset)}.pblock__media{position:relative;flex:1 1 auto;height:auto;aspect-ratio:var(--media-min-aspect);max-height:var(--block-full);align-self:flex-start;min-width:0}.pblock__media-grid{position:absolute;inset:0;display:grid;gap:var(--block-inset);grid-auto-flow:dense}.pblock__tile{overflow:hidden}.pblock__tile--span-col{grid-column:span 2}.pblock__tile--span-row{grid-row:span 2}.pblock__media-row{position:absolute;inset:0;display:flex;flex-direction:row;gap:var(--block-inset)}.pblock__media-row .pblock__tile{flex:1 1 0;height:100%;min-width:0}.pblock:has(.pblock__media-row){container:pblock-row / inline-size}@container pblock-row (max-width: 1110px){.pblock__media:has(.pblock__media-row){height:auto;aspect-ratio:auto;max-height:none}.pblock__media-row{position:static;flex-direction:column}.pblock__media-row .pblock__tile{flex:none;width:100%;height:auto;min-width:0;min-height:0}.pblock--dieline .pblock__tile>div{width:100%!important}.pblock:has(.pblock__media-row) .pblock__text,.pblock:has(.pblock__media-row) .pblock__text-inner{justify-content:flex-start}}@media (max-width: 767px){.pblock__media-row{flex-direction:column}.pblock__media-row .pblock__tile{width:100%;height:auto;min-width:0;min-height:0}.pblock--dieline .pblock__media{height:auto;aspect-ratio:auto;max-height:none}.pblock--dieline .pblock__media-row{position:static}.pblock--dieline .pblock__media-row .pblock__tile{flex:none}.pblock--dieline .pblock__tile>div{width:100%!important}}.pblock__tile img,.pblock__tile video{width:100%;height:100%;object-fit:cover;object-position:center;display:block}.pblock__tile--contain{background:#000}.pblock__tile--contain video,.pblock__tile--contain img{object-fit:contain}.pblock--cta .pblock__tile--contain video,.pblock--cta .pblock__tile--contain img{object-fit:cover;object-position:center bottom}.cta-window{--cta-card: transparent;--cta-on-card: transparent;--cta-muted: transparent;--cta-line: transparent;--cta-rim: none;--cta-fade: .9s var(--ease-out);position:absolute;z-index:3;top:10%;left:50%;transform:translate(-50%);width:min(1320px,calc(100% + 2 * var(--block-edge-pad) - 2 * var(--text-edge-floor)));padding:var(--text-edge-floor);color:var(--cta-on-card);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.5;isolation:isolate;transition:color var(--cta-fade)}.cta-window.is-revealed{--cta-card: var(--color-ink);--cta-on-card: var(--color-bg);--cta-muted: color-mix(in srgb, var(--color-bg) 60%, transparent);--cta-line: var(--color-bg);--cta-rim: var(--glass-rim)}.cta-window__glass{position:absolute;inset:0;z-index:-1;pointer-events:none}.cta-window__glass-strip{position:absolute;pointer-events:none}.cta-window__glass-full{position:absolute;inset:0;pointer-events:none}.cta-window__glass-full[hidden],.cta-window__glass-strip[hidden],.cta-window__glass--off{display:none}.cta-window__glass-bake{position:absolute;inset:0;overflow:hidden;pointer-events:none}.cta-window__glass-bake[hidden]{display:none}.cta-window__glass-bake-inner{position:absolute}.cta-window__glass-bake img{position:absolute;max-width:none;display:block}.cta-window__glass{transition:opacity .25s var(--ease-out)}.cta-window.is-scrolling{--cta-rim: var(--glass-rim)}.cta-window:after{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;box-shadow:var(--cta-rim);transition:box-shadow var(--cta-fade)}.cta-window.is-scrolling:after{transition-duration:.15s}.cta-window.is-scrolling .cta-window__glass,.cta-window.is-scrolling .cta-swap__glass{opacity:0;visibility:hidden;transition:none}.cta-window__card{display:grid;grid-template-columns:1fr 1fr;background:var(--cta-card);transition:background-color var(--cta-fade)}.cta-window__col{--cta-pad: 32px;display:flex;flex-direction:column;justify-content:center;gap:16px;min-width:0;padding:var(--cta-pad)}.cta-window__col--intro{gap:22px;justify-content:space-between}.cta-window__col:not(.cta-window__col--intro){gap:20px}.cta-window__col+.cta-window__col{border-left:2px dashed var(--cta-line);transition:border-color var(--cta-fade)}.cta-window__ticket{margin:0;font-size:var(--text-sm);line-height:1.35;letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.cta-window__time{font-weight:700}.cta-window__col--intro{container-type:inline-size}.cta-window__title{font-family:Gilroy Black,Gilroy Heavy,Gilroy Bold,sans-serif;font-weight:900;font-size:clamp(26px,13cqi,64px);line-height:.95;letter-spacing:normal;word-spacing:normal;text-transform:uppercase;margin:0}.cta-window__title i{font-style:normal}.cta-window__lead{margin:0;font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:var(--text-sm);letter-spacing:.02em;text-transform:uppercase;line-height:1.35;white-space:nowrap}.cta-window__fields{container:cta-fields / inline-size;display:grid;grid-template-columns:1fr max-content 2.4em;column-gap:12px;row-gap:20px;align-content:center;align-items:center}.cta-window__fields>.cta-window__message-box,.cta-window__fields>.cta-window__error,.cta-window__fields>.cta-window__file-name,.cta-window__fields>.cta-window__input,.cta-window__fields>.cta-window__actions{grid-column:1 / -1}.cta-window__fields>.cta-window__error,.cta-window__fields>.cta-window__file-name{margin:-14px 0}.cta-window__file-name:empty{display:none}.cta-window__bracket{justify-self:center;white-space:nowrap;color:var(--cta-muted);pointer-events:none;transition:color var(--cta-fade)}.cta-window__bracket--strong{grid-column:3;grid-row:1;padding-bottom:6px;font-weight:700;color:var(--cta-on-card)}.cta-window__fields>.cta-window__optional:not(.cta-window__file-name){grid-column:2;justify-self:start;white-space:nowrap}.cta-window__fields>.cta-window__bracket{grid-column:3}.cta-window__buttons{display:flex;gap:8px;min-width:0}.cta-window__toggle{font-family:var(--font-mono);font-size:14px;width:calc(11ch + 26px);padding:0}.cta-window__sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;padding:0}.cta-window__row{display:flex;flex-wrap:wrap;align-items:center;gap:8px;min-width:0}.cta-window__row .cta-window__optional{white-space:nowrap}.cta-window__field{display:flex;flex-direction:column;gap:4px;border:0;margin:0;padding:0;min-width:0}.cta-window__label{padding:0;text-transform:uppercase;font-weight:700}.cta-window__optional,.cta-window__hint{font-weight:400;text-transform:none;color:var(--cta-muted);transition:color var(--cta-fade)}.cta-window__input,.cta-window__channel{width:100%;margin:0;padding:6px 0;border:0;border-bottom:1px solid var(--cta-line);border-radius:0;background:transparent;color:var(--cta-on-card);font:inherit;outline:none;transition:color var(--cta-fade),border-color var(--cta-fade)}.cta-window__input::placeholder{color:var(--cta-muted);opacity:1;transition:color var(--cta-fade)}.cta-window__message{resize:none;height:auto;overflow:hidden;scrollbar-width:thin;scrollbar-color:var(--cta-muted) transparent}.cta-window__message-box{position:relative;display:flex;min-height:0}.cta-window__message-box[hidden]{display:none}.cta-window__message-box>.cta-window__message{flex:1}.cta-window__ruler{position:absolute;top:0;right:0;bottom:6px;width:22px;cursor:ns-resize;touch-action:none;user-select:none}.cta-window__ruler[hidden]{display:none}.cta-window__ruler-tick{position:absolute;right:3px;transform:translate(50%);height:1px;width:6px;background:var(--cta-on-card);transition:width .16s var(--ease-slow),height .16s var(--ease-slow)}.cta-window__ruler.is-dragging .cta-window__ruler-tick{transition:none}.cta-window__message-preview{text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text}.cta-window__contact{position:relative;grid-column:1 / -1;display:grid;grid-template-columns:subgrid;align-items:center;border-bottom:1px solid var(--cta-line);transition:border-color var(--cta-fade)}.cta-window__contact .cta-window__input,.cta-window__contact .cta-window__channel{border-bottom:0;padding-top:0}.cta-window__channel{grid-column:2 / 4;grid-row:1;text-align:left;text-transform:uppercase;font-weight:700;cursor:pointer}.cta-window__arrow{display:inline-block;transition:transform .4s var(--ease-slow)}.cta-window__channel[aria-expanded=true]+.cta-window__bracket .cta-window__arrow{transform:rotate(180deg)}.cta-window__channels{position:absolute;grid-column:2 / 4;top:100%;left:-8px;right:0;z-index:5;margin:0;padding:6px 8px 8px;list-style:none}.cta-window__channels-bg{position:absolute;inset:0;z-index:-1;background:var(--color-bg);transform:scaleY(0);transform-origin:top;will-change:transform}.cta-window__channels>li{position:relative}.cta-window__channels[hidden]{display:none}.cta-window__channel-option{display:block;width:100%;padding:4px 0;border:0;background:none;color:var(--color-ink);font:inherit;font-weight:400;text-align:left;text-transform:uppercase;white-space:nowrap;cursor:pointer}.cta-window__channel-option:after{content:attr(data-label);display:block;height:0;overflow:hidden;visibility:hidden}.cta-window__channel-option:focus-visible{font-style:italic;outline:none}@media (min-width: 810px) and (hover: hover){.cta-window__channel-option:hover{font-style:italic;outline:none}}.cta-swap{--swap-h: 40px;--swap-glass: calc((var(--swap-h) - 16px) / 2);position:relative;display:block;height:var(--swap-h);overflow:hidden;cursor:pointer;transition:background-color .4s var(--ease-slow),color .4s var(--ease-slow),border-color var(--cta-fade)}.cta-swap__track{display:flex;flex-direction:column;transition:transform .4s var(--ease-slow)}.cta-swap__a,.cta-swap__b{display:flex;align-items:center;justify-content:center;height:var(--swap-h);line-height:1;font-family:var(--font-mono);font-size:14px;letter-spacing:-.02em;text-transform:uppercase;white-space:nowrap}.cta-swap__glass{position:absolute;left:50%;transform:translate(-50%);height:calc(2 * var(--swap-glass));z-index:1;pointer-events:none}.cta-swap__glass--top{top:calc(-1 * var(--swap-glass))}.cta-swap__glass--bottom{top:calc(var(--swap-h) - var(--swap-glass))}.cta-window:not(.is-revealed) .cta-swap__glass{visibility:hidden}.cta-swap:not(.is-swapping) .cta-swap__glass{visibility:hidden}.cta-swap input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.cta-swap:focus-visible .cta-swap__track,.cta-swap:has(input:focus-visible) .cta-swap__track,.cta-swap:has(input:checked) .cta-swap__track{transform:translateY(calc(-1 * var(--swap-h)))}@media (min-width: 810px) and (hover: hover){.cta-swap:hover:not(:disabled) .cta-swap__track{transform:translateY(calc(-1 * var(--swap-h)))}}.cta-swap:focus-visible,.cta-swap:has(input:focus-visible){outline:1px solid var(--cta-on-card);outline-offset:2px}.cta-window__chips,.cta-window__attach{display:flex;align-items:center;gap:8px;min-width:0}.cta-window__toggle{--swap-h: 32px;flex:0 0 auto;padding:0 12px}.cta-window__toggle:after{content:"";position:absolute;inset:0;z-index:2;border:1px solid var(--cta-line);pointer-events:none;transition:border-color var(--cta-fade)}.cta-window__toggle:has(input:focus-visible),.cta-window__toggle:has(input:checked){background:var(--cta-on-card);color:var(--cta-card)}@media (min-width: 810px) and (hover: hover){.cta-window__toggle:hover{background:var(--cta-on-card);color:var(--cta-card)}}.cta-window__file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.cta-window__actions{display:flex;flex-direction:column;gap:8px}.cta-window__send{width:100%;padding:0;border:1px solid var(--cta-on-card);background:var(--cta-on-card);color:var(--cta-btn-fg, #fff)}.cta-window__send:focus-visible{background:var(--cta-btn-fg, #fff);color:var(--cta-on-card)}@media (min-width: 810px) and (hover: hover){.cta-window__send:hover:not(:disabled){background:var(--cta-btn-fg, #fff);color:var(--cta-on-card)}}.cta-window__send:disabled{opacity:.6;cursor:default}.cta-window:not(.is-revealed) .cta-window__send{background:transparent;border-color:transparent;color:transparent}.cta-window__error{margin:0;font-weight:700}.cta-window__error:before{content:"// "}.cta-window__error:empty{display:none}.cta-window__status{margin:0}.cta-window__status:empty{display:none}.cta-window__status a{color:inherit;text-decoration:underline;font-weight:700}.cta-window.is-sent .cta-window__field{opacity:.35;pointer-events:none}.cta-window.is-composing .cta-window__card{height:100%}.cta-window.is-composing .cta-window__fields{grid-template-rows:1fr auto;align-content:stretch}.cta-window.is-composing .cta-window__fields>:not(.cta-window__message-box):not(.cta-window__actions){display:none}.cta-window.is-composing .cta-window__message-box{grid-column:1 / -1;height:100%}.cta-window.is-composing .cta-window__message{height:100%}.cta-window.is-composing .cta-window__actions{grid-column:1 / -1}.cta-window.is-composing-wide .cta-window__card{grid-template-columns:1fr}.cta-window.is-composing-wide .cta-window__col--intro{display:none}.cta-window.is-composing-wide .cta-window__col+.cta-window__col{border-left:0;border-top:0}.cta-window.is-composing-wide .cta-window__message{overflow-y:auto;padding-right:34px;scrollbar-width:none}.cta-window.is-composing-wide .cta-window__message::-webkit-scrollbar{display:none}.cta-window__trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}@container cta-fields (max-width: 380px){.cta-window__fields>.cta-window__buttons{grid-column:1 / -1}.cta-window__fields>.cta-window__buttons .cta-window__toggle{flex:1 1 0;width:auto}.cta-window__fields>.cta-window__buttons:has(input[name=job-type])+.cta-window__optional,.cta-window__fields>.cta-window__buttons:has(input[name=job-type])+.cta-window__optional+.cta-window__bracket{display:none}.cta-window__fields>.cta-window__buttons:has(.cta-window__file){grid-column:1 / 3}.cta-window__fields>.cta-window__buttons .cta-window__file{flex:0 0 auto;width:calc((100cqi - 8px)/2)}.cta-window__fields>.cta-window__buttons:has(.cta-window__file)+.cta-window__optional{display:none}.cta-window__fields>.cta-window__buttons:has(.cta-window__file):after{content:"optional";align-self:center;white-space:nowrap;font-weight:400;text-transform:none;color:var(--cta-muted)}.cta-window__channel{font-size:0;grid-column:3 / 4;align-self:stretch}.cta-window__channels{grid-column:1 / -1;left:auto;right:0;width:max-content;padding-right:calc(12px + 2.4em)}.cta-window__bracket--strong{font-weight:400;color:var(--cta-muted)}.cta-window__contact .cta-window__input{grid-column:1 / 3}}@container cta-fields (max-width: 184px){.cta-window__fields>.cta-window__buttons:has(.cta-window__file):after{content:none}}@media (max-width: 767px){.pblock--cta .pblock__media{aspect-ratio:auto;height:var(--block-full);max-height:none}.cta-window{top:calc(var(--ruler-size) + 12px)}.cta-window__card{grid-template-columns:1fr}.cta-window__col,.cta-window__col:not(.cta-window__col--intro){--cta-pad: 16px;gap:10px}.cta-window__col+.cta-window__col{border-left:0;border-top:2px dashed var(--cta-line)}.cta-window__title{font-size:clamp(19px,8.4cqi,26px)}.cta-window__ticket{letter-spacing:.06em}.cta-window__ticket [data-city]{display:none}.cta-window__lead{letter-spacing:.05em}.cta-window__ticket,.cta-window__title,.cta-window__lead{text-box:trim-both cap alphabetic}.cta-window__field{gap:2px}.cta-window__fields{row-gap:12px}.cta-window__fields>.cta-window__error,.cta-window__fields>.cta-window__file-name{margin:-8px 0}}.pblock--text-only .pblock__text,.pblock--media-only .pblock__media{flex:1 1 auto}.pblock--text-only,.pblock--text-only .pblock__text{height:auto}.pblock--text-only .hero-text-overlay__phase[data-phase=meta] .project-sidebar__meta,.pblock--text-only .hero-text-overlay__phase[data-phase=work] .project-sidebar__section,.pblock--text-only .hero-text-overlay__phase[data-phase=team] .project-sidebar__section,.pblock--text-only .hero-text-overlay__phase[data-phase=summary] .project-sidebar__section h2{width:27%;margin-left:auto}@media (max-width: 767px){.pblock--text-only .hero-text-overlay__phase[data-phase=meta] .project-sidebar__meta,.pblock--text-only .hero-text-overlay__phase[data-phase=work] .project-sidebar__section,.pblock--text-only .hero-text-overlay__phase[data-phase=team] .project-sidebar__section,.pblock--text-only .hero-text-overlay__phase[data-phase=summary] .project-sidebar__section h2{width:100%;margin-left:0}}.pblock--centered-text .hero-text-overlay__phase[data-phase] .project-sidebar__meta,.pblock--centered-text .hero-text-overlay__phase[data-phase] .project-sidebar__section,.pblock--centered-text .hero-text-overlay__phase[data-phase] .project-sidebar__section h2{width:100%;margin-left:0}.pblock--centered-text{--centered-text-w: 545px}.pblock--centered-text .pblock__text-inner{padding-inline:0;width:min(var(--centered-text-w),100%);margin-inline:auto}.pblock--centered-text .project-sidebar__section p{text-align:justify;text-align-last:center}.pblock--centered-text .project-sidebar__section p:has(.project-work-tag){text-align:center;text-align-last:center;text-wrap:balance}.pblock--centered-text .project-work-tag{display:inline-block;margin-inline:.5ch}.pblock--centered-text .project-sidebar__section{text-align:center}.pblock--centered-text .project-sidebar__meta div{justify-content:center;text-align:center}.pblock--centered-text .project-sidebar__meta dt,.pblock--centered-text .project-sidebar__meta dd,.pblock--centered-text .project-sidebar__section h2,.pblock--centered-text .project-sidebar__section p{font-family:Gilroy Bold,sans-serif}body.media-focus .pblock:not(.pblock--text-only):not(.pblock--media-only) .pblock__text{display:none}body.media-focus .sticky-group__text-scope{display:none}body.media-focus .sticky-group__media-scope .pblock__media{width:100%}.pblock--carousel .pblock__media{overflow:visible}.carousel-viewport.project-strip{position:absolute;inset:0;left:calc(-1 * var(--block-edge-pad));right:calc(-1 * var(--block-edge-pad));width:auto;padding:0}.carousel-track.project-strip__track{align-items:center;padding-inline:0;height:100%;gap:0}.pblock__text--placeholder{visibility:hidden}@media (max-width: 767px){.pblock{flex-direction:column}.pblock__text{order:1;flex:0 0 auto;height:auto;max-height:100%}.pblock__media{order:2;flex:0 0 auto;align-self:stretch}.pblock__text-inner{padding-block:var(--block-inset) 0}}@media (max-width: 767px){.sticky-group>.pblock{height:auto}.sticky-group:has(.sticky-group__media-scope) .pblock__media{width:100%;height:calc(100vh - var(--hero-chrome-height));aspect-ratio:auto;max-height:none}.sticky-group:has(.sticky-group__media-scope)>.pblock>.pblock__media{order:1}.sticky-group:has(.sticky-group__media-scope)>.pblock>.pblock__text{order:2}.sticky-group__text-scope .pblock__text{width:100%;margin-left:0;height:auto}.sticky-group .pblock__text,.sticky-group .pblock__media{background:var(--color-bg)}.sticky-group>.pblock:not(:first-child)>.pblock__text--placeholder,.sticky-group>.pblock:not(:first-child)>.pblock__media--placeholder{display:none}.sticky-group>.pblock{margin-top:var(--block-inset)}}.hero-snap-block{height:calc(100vh - 2 * var(--hero-chrome-height));margin-top:var(--block-gap)}body.project-page #main{position:relative}body.scroll-unlocked .footer{position:fixed;bottom:0;left:0;right:0}@media (max-width: 809.98px){body.scroll-unlocked .footer{position:relative;inset:auto}body.scroll-unlocked #blocks-root,body.scroll-unlocked #project-root{padding-bottom:0!important}}body.project-page #main,body.project-page #project-root{flex:1 1 auto;min-height:0;display:flex;flex-direction:column;width:100%}.project-layout{flex:1 1 auto;flex-shrink:0;display:flex;min-height:0;width:100%;padding-top:var(--nav-height);padding-bottom:0}.project-gallery{flex:0 0 73%;height:100%;overflow-x:hidden;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch}.project-gallery::-webkit-scrollbar{display:none}.project-gallery__track{display:flex;flex-direction:row;align-items:center;gap:16px;height:100%;padding-left:20px}.project-gallery__item{flex-shrink:0;height:100%;position:relative;background:var(--color-line);display:flex;align-items:center;justify-content:center}.project-gallery__item img{height:100%;width:100%;object-fit:contain}.project-hero{position:fixed;inset:0;z-index:5000;overflow:hidden;background:var(--color-line)}.project-hero img{width:100%;height:100%;object-fit:cover;display:block}body.project-page .nav--hero-mode,body.project-page .footer--hero-mode{background:transparent;z-index:5001}body.project-page .nav--hero-mode.is-adaptive-white,body.project-page .footer--hero-mode.is-adaptive-white{color:#fff}.project-sidebar{flex:0 0 27%;height:100%;overflow-y:auto;display:flex;flex-direction:column;justify-content:center;padding-top:var(--ruler-size);padding-right:var(--gutter);padding-bottom:var(--space-3);padding-left:14px}.project-sidebar__meta{margin:0 0 14px}.project-sidebar__meta div{display:flex;gap:3px;font-size:var(--text-sm);text-transform:uppercase;text-align:left}.is-dark-bg{--w-text: 500;--w-strong: 800}.is-dark-bg .pblock:not(.pblock--centered-text) .project-sidebar__section h2,.is-dark-bg .pblock:not(.pblock--centered-text) .project-sidebar__meta dt{font-size:calc(var(--text-sm) + 1px)}.is-dark-bg .pblock:not(.pblock--centered-text) .project-sidebar__meta div{align-items:baseline}.project-sidebar__meta dt{font-family:var(--font-mono);font-weight:var(--w-strong, 700);color:var(--color-ink);margin:0}.project-sidebar__meta dd{margin:0;font-family:var(--font-mono);font-weight:var(--w-text, 400);color:var(--color-ink)}.project-sidebar__section{margin-bottom:14px;text-align:left}.project-sidebar__section h2{font-family:var(--font-mono);font-weight:var(--w-strong, 700);font-size:var(--text-sm);text-transform:uppercase;color:var(--color-ink);margin-bottom:var(--space-2)}.project-sidebar__section p{font-family:var(--font-mono);font-weight:var(--w-text, 400);font-size:var(--text-sm);text-transform:uppercase;color:var(--color-ink);white-space:pre-line;line-height:1.4}.project-sidebar__section p+p{margin-top:1.4em}.project-work-tag{display:block}.project-work-tag.is-tag-active{color:var(--color-accent)}.hero-collage-scene{position:relative;width:100%;height:100%;overflow:visible}.hero-collage__card{position:absolute;width:auto;display:block;object-fit:contain;border-radius:6px;box-shadow:0 20px 60px #00000080;cursor:grab;user-select:none;touch-action:none}.hero-guide-container{width:73%;overflow:hidden;background:#000;transition:width .45s var(--ease-out);outline:none!important;box-shadow:1px 0 #000}.hero-guide-container svg{outline:none!important}.hero-guide-container *{outline:none!important}.hero-guide-container.is-expanded{width:100%}.hero-texture-stack{position:absolute;inset:0;z-index:0;pointer-events:none;outline:none;-webkit-tap-highlight-color:transparent}.hero-texture-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;outline:none;border:none}.hero-texture-img--current{cursor:none;-webkit-mask-image:var(--peel-mask, radial-gradient(circle at var(--peel-x, 50%) var(--peel-y, 50%), transparent 0, transparent calc(var(--peel-r, 0px) - 1px), black var(--peel-r, 0px), black 100%));mask-image:var(--peel-mask, radial-gradient(circle at var(--peel-x, 50%) var(--peel-y, 50%), transparent 0, transparent calc(var(--peel-r, 0px) - 1px), black var(--peel-r, 0px), black 100%))}.hero-text-overlay.is-adaptive-white dt,.hero-text-overlay.is-adaptive-white dd,.hero-text-overlay.is-adaptive-white h2,.hero-text-overlay.is-adaptive-white p{color:#fff}.hero-text-overlay dt,.hero-text-overlay dd,.hero-text-overlay h2,.hero-text-overlay p{transition:color .6s var(--ease-out)}.hero-text-overlay.is-landed dt,.hero-text-overlay.is-landed dd,.hero-text-overlay.is-landed h2,.hero-text-overlay.is-landed p{color:#b70300}.hero-text-overlay__phase{display:grid;grid-template-rows:1fr}.hero-text-line{position:relative}.hero-text-line:before{content:attr(data-text);visibility:hidden}.hero-text-line__typed{position:absolute;inset:0}.hero-text-overlay__phase.is-revealed{grid-template-rows:1fr}.hero-text-overlay__phase-inner{overflow:hidden;min-height:0;opacity:0;transform:translateY(6px);transition:opacity .4s var(--ease-out),transform .4s var(--ease-out)}.hero-text-overlay__phase.is-revealed .hero-text-overlay__phase-inner{opacity:1;transform:translateY(0)}.project-sidebar__summary-viewport{overflow:hidden}.project-sidebar__summary-text{font-family:var(--font-mono);font-weight:400;font-size:var(--text-sm);text-transform:uppercase;color:var(--color-ink);white-space:pre-line;line-height:1.4;margin:0}.project-photorow{width:100vw;flex-shrink:0;margin-top:10px}.project-photorow__slide{width:100vw;display:flex;align-items:center;justify-content:center}.project-photorow__slide:not(:last-child){margin-bottom:10px}.project-photorow__img{max-width:100%;max-height:100%;width:auto;height:auto;cursor:pointer}.project-photorow__back-to-top{display:flex;align-items:center;justify-content:center;padding:10px 0}.project-lightbox{position:fixed;inset:0;z-index:10000;background:#000;opacity:0;pointer-events:none;transition:opacity .3s var(--ease-out)}.project-lightbox.is-open{opacity:1;pointer-events:auto}.pblock--fit{height:auto;justify-content:center}.pblock--fit .pblock__media{flex:1 1 auto;height:auto;max-height:none;aspect-ratio:auto;display:flex;flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:var(--block-inset);background:none}.pblock--fit .pblock__tile{flex:0 1 auto;max-width:100%;height:auto}.pblock--fit .pblock__tile img{width:100%;height:100%;object-fit:contain}.pblock--live{height:auto;justify-content:center}.pblock--cv{display:block;padding-inline:0;--cv-frame: 360px;--cv-gap: clamp(var(--block-inset), 100cqw - 2 * var(--cv-frame), var(--block-inset) * 3)}.pblock--cv .wrap{max-width:980px;margin:0 auto;padding-inline:var(--text-edge-floor);container-type:inline-size;display:flex;flex-direction:column;gap:calc(var(--block-inset) * 2)}.pblock--cv .main-row,.pblock--cv .format-demo__frames,.pblock--cv .layout-grid,.pblock--cv .side-by-side{width:100%;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto;column-gap:var(--cv-gap);row-gap:var(--block-inset);justify-content:center}.pblock--cv .main-row{display:flex;flex-wrap:wrap}.pblock--cv .main-item{margin:0;flex:0 1 var(--cv-frame);min-width:0;text-align:center}.pblock--cv .main-item figcaption,.pblock--cv .format-demo__tag{font-family:var(--font-mono);font-weight:var(--w-strong, 700);font-size:var(--text-sm);line-height:1.4;letter-spacing:normal;text-transform:uppercase;color:var(--color-ink)}.pblock--cv .main-item figcaption{margin-bottom:var(--space-2)}.pblock--cv .format-demo{position:relative}.pblock--cv .format-demo__frames{display:flex;align-items:flex-start;flex-wrap:wrap}.pblock--cv .format-demo__tag{position:absolute;left:0;top:0}.pblock--cv .format-demo__text{width:100%;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto}.pblock--cv .layout-grid{display:flex;flex-wrap:wrap}.pblock--cv .side-by-side{display:flex;flex-wrap:wrap;align-items:flex-start;row-gap:calc(var(--block-inset) * 2)}.pblock--cv .side-by-side__text{flex:1 1 var(--cv-frame);min-width:0;margin:0;text-align:left}@container (max-width: 853.98px){.pblock--cv .format-demo__tag{position:static;flex:0 0 100%;margin:0 0 calc(var(--space-2) - var(--block-inset))}}@container (max-width: 733.98px){.pblock--cv .format-demo__tag{flex-basis:min(var(--cv-frame),100%)}}.pblock--cv .pblock__text{padding-inline:0;order:0}.pblock--cv .format-demo__text .pblock__text-inner,.pblock--cv .side-by-side__text .pblock__text-inner{padding-block:0}.pblock--cv .format-demo__text .project-sidebar__section,.pblock--cv .side-by-side__text .project-sidebar__section,.pblock--cv .cv-head:not(.pblock--centered-text) .project-sidebar__section{width:100%;margin-left:0;text-align:center}.pblock--cv .format-demo__text .project-sidebar__section p,.pblock--cv .side-by-side__text .project-sidebar__section p,.pblock--cv .cv-head:not(.pblock--centered-text) .project-sidebar__section p{text-align:justify;text-align-last:center}.pblock--cv .cv-head:not(.pblock--centered-text) .pblock__text-inner{padding-inline:0;width:100%;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto}.pblock--cv .cv-head .pblock__text-inner{padding-bottom:0}.pblock--cv .hero-text-overlay__phase:last-child .project-sidebar__section{margin-bottom:0}.pblock--cv .cv-head .project-sidebar__section h2:last-child{margin-bottom:0}.pblock--cv .cv-cta{width:100%;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto;--block-edge-pad: var(--text-edge-floor)}.pblock--cv .cv-cta .pblock__media{width:100%;height:auto;aspect-ratio:auto;max-height:none}.pblock--cv .cv-cta .cta-window{position:relative;top:auto}.pblock--cv.pblock--cta{padding-block:var(--page-pad)}@media (min-width: 768px){.pblock--cv .cv-cta .cta-window{width:min(calc(100% + 2 * var(--text-edge-floor)),100cqw)}}.cv-live{--live-line-h: 1.4;--live-line: calc(var(--text-sm) * var(--live-line-h));--live-row-gap: calc(var(--block-inset) * 2);--live-gap: var(--live-row-gap) var(--cv-gap);--live-fields-gap: 18px;--live-field-gap: 6px;--live-input-pad: 6px;--live-drop-pad: 18px;--live-drop-gap: 4px;--live-frame-h: calc(min(360px, 100cqw) * 600 / 360);--live-editor-h: calc( 15 * var(--live-line) + 6 * var(--live-field-gap) + 4 * (2 * var(--live-input-pad) + 1px) + 2 * var(--live-drop-pad) + var(--live-drop-gap) + 2px + 4 * var(--live-fields-gap) );min-height:calc(var(--live-frame-h) + var(--live-row-gap) + var(--live-editor-h))}@container (min-width: 734px){.cv-live{min-height:max(var(--live-frame-h),var(--live-editor-h))}}.pblock--cv :is(.cv-wide,.cv-table,.cv-steps,.cv-compare,.cv-palette){width:100%;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.4}.pblock--cv .cv-wide{display:flex;flex-direction:column;gap:var(--block-inset)}.pblock--cv .cv-wide .main-item{flex:none;width:100%}.pblock--cv .cv-wide .pblock__tile{margin-inline:auto}.pblock--cv .cv-table{display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));column-gap:var(--block-inset);border-top:1px solid var(--color-line-solid)}.cv-table__head{font-weight:var(--w-strong, 700);text-transform:uppercase}.cv-table__head,.cv-table__cell{padding-block:var(--space-2);border-bottom:1px solid var(--color-line-solid)}.cv-table__cell--key{font-weight:var(--w-strong, 700)}@container (max-width: 599.98px){.pblock--cv .cv-table{grid-template-columns:minmax(0,1fr)}.cv-table__head{display:none}.cv-table__cell{border-bottom:0;padding-block:0 var(--space-2)}.cv-table__cell--key{border-top:1px solid var(--color-line-solid);padding-top:var(--space-2)}.cv-table__cell:not(.cv-table__cell--key):before{content:attr(data-label);display:block;font-weight:var(--w-strong, 700);text-transform:uppercase;color:var(--color-ink-muted, inherit)}}.pblock--cv .cv-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:calc(var(--block-inset) * 2) var(--cv-gap)}.cv-steps li{display:grid;gap:var(--space-2);align-content:start}.cv-steps__tag{color:var(--color-accent);font-weight:var(--w-strong, 700)}.cv-steps__title{font-weight:var(--w-strong, 700);text-transform:uppercase}.cv-steps p{margin:0}.pblock--cv .cv-compare{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));gap:calc(var(--block-inset) * 2) var(--cv-gap)}.cv-compare__pair{display:grid;gap:var(--space-2);justify-items:center}.cv-compare__title{font-weight:var(--w-strong, 700);text-transform:uppercase}.cv-compare__imgs{display:flex;gap:var(--block-inset);justify-content:center}.cv-palette__list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));gap:var(--space-2) var(--cv-gap)}.cv-palette__list li{display:flex;align-items:center;gap:var(--space-2)}.cv-palette__list i{width:20px;height:20px;border:1px solid;border-radius:50%;flex:none}.cv-palette__hex{margin-left:auto;font-variant-numeric:tabular-nums}.cv-palette__scale{height:12px;margin-top:calc(var(--block-inset) * 2)}.cv-palette__scale-labels{display:flex;justify-content:space-between;margin-top:var(--space-2)}.cv-app-frame{position:relative;overflow:hidden}.cv-app-frame iframe{position:absolute;left:0;top:0;border:0;transform-origin:0 0;pointer-events:none}.pblock--cv .cv-app{--app-w: min(1388px, calc(100vw - 2 * var(--text-edge-floor)));width:var(--app-w);margin-inline:calc((100% - var(--app-w)) / 2);border:1px solid var(--color-line-solid);overflow:hidden}.cv-app iframe{display:block;width:100%;height:clamp(600px,90svh,900px);border:0}.is-zoomable{cursor:zoom-in}@media (hover: hover) and (pointer: fine){.is-zoomable{cursor:none}}.project-lightbox__img{position:fixed;object-fit:contain;transition:top .4s var(--ease-out),left .4s var(--ease-out),width .4s var(--ease-out),height .4s var(--ease-out)}.project-lightbox__prev,.project-lightbox__next{position:fixed;top:50%;transform:translateY(-50%);z-index:10001}.project-lightbox__prev{left:calc(var(--ruler-size) - 10px)}.project-lightbox__next{right:calc(var(--ruler-size) - 10px)}.project-lightbox__prev.is-adaptive-white,.project-lightbox__next.is-adaptive-white{color:#fff}.project-lightbox__close{position:fixed;top:calc(var(--ruler-size) - 10px);right:calc(var(--ruler-size) - 10px);z-index:10001}.project-lightbox__close.is-adaptive-white{color:#fff}.project-lightbox:not(.is-open) .project-lightbox__close{visibility:hidden}@media (max-width: 809.98px){.project-lightbox__prev,.project-lightbox__next{display:none}body.project-page{height:auto;overflow:visible;display:block}.project-layout{flex-direction:column}.project-gallery{flex:0 0 auto;width:100%;height:clamp(280px,90vw,480px)}.project-sidebar{flex:0 0 auto;width:100%;height:auto;overflow-y:visible;padding-left:calc(24px + var(--gutter))}}.footer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-template-areas:"left home right";align-items:center;column-gap:var(--space-2);row-gap:var(--space-2);padding-block:2px;padding-inline:calc(var(--ruler-size) - 10px);transition:transform .6s var(--ease-out);position:relative;z-index:20;background:var(--color-bg)}body.project-page .footer{transition:transform .6s var(--ease-out)}.footer--entering{transform:translateY(100%)}.footer>*{white-space:nowrap}.footer__home{grid-area:home;justify-self:center}.footer>.nav__prev,.footer>.footer__contact--time{grid-area:left;justify-self:start}.footer>.nav__next,.footer>.footer__contact--email{grid-area:right;justify-self:end}.footer--stacked{grid-template-areas:"left . right" "home home home"}.footer--short .nav-arrow__name{display:none}.footer--column{grid-template-columns:minmax(0,1fr);grid-template-areas:"left" "right" "home"}.footer.footer--column>*{justify-self:center}.footer>:not(.footer__home):not(.footer__contact):not(.nav__prev):not(.nav__next){opacity:0;visibility:hidden;pointer-events:none;grid-area:left}:root{--guide-color: #dc3945;--footer-top: 100vh}.nav-guide{position:fixed;background:var(--guide-color);z-index:15;pointer-events:none;opacity:0}.nav-guide--flight{opacity:1;transition:top .35s var(--ease-out),left .35s var(--ease-out),right .35s var(--ease-out)}.nav-guide--tracking{opacity:1}.nav-guide--h{left:0;right:0;height:1px}.nav-guide--v{top:0;bottom:0;width:1px}.nav-guide--boxed{position:absolute}.nav-guide--top{top:calc(var(--nav-height) - 1px)}.nav-guide--bottom{top:calc(var(--footer-top) + 1px)}.nav-guide--left{left:-10px}.nav-guide--right{right:-10px}:root{--guide-refract: 3px}.nav-guide--v:not(.nav-guide--boxed){background:linear-gradient(to bottom,var(--guide-color) var(--nav-height),transparent var(--nav-height) calc(var(--nav-height) + var(--ruler-size)),var(--guide-color) calc(var(--nav-height) + var(--ruler-size)))}.nav-guide--v:not(.nav-guide--boxed):after{content:"";position:absolute;left:var(--guide-refract);top:var(--nav-height);width:1px;height:var(--ruler-size);background:var(--guide-color)}.nav-guide--h:not(.nav-guide--boxed){background:linear-gradient(to right,transparent var(--ruler-size),var(--guide-color) var(--ruler-size))}.nav-guide--h:not(.nav-guide--boxed):after{content:"";position:absolute;left:0;top:var(--guide-refract);width:var(--ruler-size);height:1px;background:var(--guide-color)}.nav-guide--faint.nav-guide--flight,.nav-guide--faint.nav-guide--tracking{opacity:.5}[data-reveal]{opacity:0;transform:translateY(12px);transition:opacity .6s var(--ease-out),transform .6s var(--ease-out)}[data-reveal].is-visible{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){[data-reveal]{opacity:1;transform:none;transition:none}}@media (min-width: 810px) and (max-width: 1199.98px){:root{--text-lg: 1.5rem;--text-xl: 2.25rem}}@media (max-width: 809.98px){:root{--text-lg: 1.25rem;--text-xl: 1.75rem}.nav__mobile-toggle{display:inline-flex;margin-left:auto}.nav__logo{display:none}.nav__menu{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;padding:var(--ruler-size) calc(var(--ruler-size) - 10px) var(--space-2)}.nav.is-open .nav__menu{display:flex}.nav__menu-bg{display:block;position:absolute;inset:0;z-index:-1;background:var(--color-bg);transform:scaleY(0);transform-origin:top;will-change:transform}.nav__slots{display:flex;flex-direction:column;align-items:flex-end}.nav.is-contacts .nav__contacts{display:flex;flex-direction:column;align-items:flex-start}.nav__contact{padding:6px 12px;color:var(--color-accent);font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:12px;text-transform:uppercase;white-space:nowrap}.nav__slots>*{position:relative!important;left:auto!important;top:auto!important;display:inline-flex!important;pointer-events:auto!important}.project-gallery{height:clamp(320px,90vw,520px)}}:root{--ruler-size: 24px;--glass-rim: inset 0 1px 0 0 rgba(255, 255, 255, .9), inset 1px 0 0 0 rgba(255, 255, 255, .55), inset -1px 0 0 0 rgba(255, 255, 255, .55), inset 0 -1px 0 0 rgba(255, 255, 255, .3), inset 0 0 6px 0 rgba(255, 255, 255, .22)}.figma-ruler{position:fixed;z-index:9999;pointer-events:none;font-family:Fira Code,monospace;font-size:12px;font-weight:400;color:#000;isolation:isolate;transition:transform .6s var(--ease-out)}.figma-ruler--top.figma-ruler--retreat{transform:translateY(-100%)}.figma-ruler--left.figma-ruler--retreat{transform:translate(-100%)}.figma-ruler--corner.figma-ruler--retreat{transform:translate(-100%,-100%)}:root{--nav-height: 0px}.figma-ruler--top{top:var(--nav-height);left:var(--ruler-size);right:0;height:var(--ruler-size)}.figma-ruler--left{top:calc(var(--nav-height) + var(--ruler-size));left:0;height:calc(var(--footer-top) - var(--nav-height) - var(--ruler-size));width:var(--ruler-size)}.figma-ruler--corner{top:var(--nav-height);left:0;width:var(--ruler-size);height:var(--ruler-size)}.figma-ruler--top,.figma-ruler--left,.figma-ruler--corner{transition:top .6s var(--ease-out)}.figma-ruler__glass{position:absolute;inset:0;backdrop-filter:blur(0px) saturate(1.3);-webkit-backdrop-filter:blur(0px) saturate(1.3)}.figma-ruler--stroke-only,.glass{box-shadow:var(--glass-rim)}.glass-btn__glass.glass,.project-card__glass-plaque.glass,.cta-swap__glass.glass,.figma-ruler__glass.glass,.cta-window__glass-strip.glass,.cta-window__glass-full.glass{box-shadow:none}.figma-ruler__ticks{position:absolute;inset:0}.figma-ruler__tick{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;white-space:nowrap}.figma-ruler--top .figma-ruler__tick{top:2.5px;bottom:1px;transform:translate(-50%)}.figma-ruler--left .figma-ruler__tick{left:2.5px;right:.5px;padding-bottom:1px;transform:translateY(-50%) rotate(-90deg)}.figma-ruler__tick-mark{width:1px;height:4px;background:#000;flex-shrink:0}@media (prefers-reduced-motion: reduce){.figma-ruler__glass{transition:none}}body.has-footer-expanse #blocks-root,body.has-footer-expanse #project-root{padding-bottom:0!important}body.has-footer-expanse #main{min-height:calc(100vh - var(--nav-height, 0px) - var(--footer-h, 0px))}body.has-footer-expanse .footer{position:sticky;top:var(--bar-stick, 0px);bottom:0;left:auto;right:auto}.footer-expanse{position:relative;z-index:14;display:flex;flex-direction:column;padding:30px var(--edge-inline-padding) 30px;background:var(--color-bg);color:var(--color-ink)}.footer-expanse:not(.footer-expanse--template) :is(.footer-expanse__edge,.footer-expanse__frame){display:none}.footer-expanse__edge{position:absolute;left:0;right:0;top:0;height:1px;background:var(--color-accent)}.footer-expanse__height{position:absolute;right:var(--edge-inline-padding);top:6px;padding:3px 5px;border-radius:2px;background:var(--color-accent);color:#fff;font:400 10px/1 var(--font-mono);font-variant-numeric:tabular-nums}.footer-expanse__grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr);gap:24px 40px;margin-bottom:32px;font-family:var(--font-mono);font-size:var(--text-sm);line-height:20px;text-transform:uppercase}.footer-expanse__col{display:grid;row-gap:2px;align-content:start}.footer-expanse__col h2{font-size:inherit;font-weight:var(--w-strong, 700);margin:0 0 var(--space-2)}.footer-expanse__col p{margin:0;display:flex;gap:1.5ch;font-weight:var(--w-text, 400)}.footer-expanse__col p b{font-weight:var(--w-strong, 700);min-width:9ch}.footer-expanse__col [data-stat]{font-variant-numeric:tabular-nums}.footer-expanse__mood{display:grid;align-content:space-between;height:174px}.sea-dot{display:inline-block;width:.209em;height:.208em;margin:0 .04em;vertical-align:-.014em}.sea-dot svg{display:block;width:100%;height:100%;overflow:visible}.footer-expanse .is-veiled+.sea-dot{visibility:hidden}.footer-expanse__swatch i .sea-dot{display:block;width:100%;height:100%;margin:0}.footer-expanse__mood-line{color:var(--mood, var(--color-ink));font-family:Gilroy Black,Gilroy Heavy,Gilroy Bold,sans-serif;font-weight:900;font-size:var(--mood-fs, 32px);line-height:var(--mood-lh, 1);transform:translateY(var(--mood-shift, 0));white-space:nowrap;text-transform:uppercase}.footer-expanse__copy{position:relative;display:inline-flex;gap:1.5ch;padding:0;border:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;text-align:left;cursor:pointer}.footer-expanse__copy:focus-visible{font-style:italic;font-weight:var(--w-text, 400);outline:none}@media (min-width: 810px) and (hover: hover){.footer-expanse__copy:hover{font-style:italic;font-weight:var(--w-text, 400);outline:none}}.footer-expanse__col .footer-expanse__visit-contact{color:var(--color-accent);font-weight:var(--w-strong, 700)}.footer-expanse__swatches{gap:14px!important;flex-wrap:wrap;align-items:center;height:20px}.footer-expanse__swatch{display:inline-flex;align-items:center;gap:6px;font-size:10px}.footer-expanse__swatch i{width:14px;height:14px;border:1px solid;border-radius:50%;flex:none}.footer-expanse .is-veiled,.footer-expanse__bar .is-veiled{color:transparent}.footer-expanse__slot{height:var(--slot-h, 125px);flex:none}.footer-expanse__mark{width:100%;margin-bottom:calc(var(--gap-g, 56px) - 30px);position:sticky;top:var(--mark-stick, 0px)}.footer-expanse__grow-room{height:var(--grow-room, 0px);flex:none}.footer-expanse__select{position:relative;display:block}.footer-expanse__word{display:block;overflow:visible}.footer-expanse__word text{font-family:Gilroy Black,Gilroy Heavy,Gilroy Bold,sans-serif;font-weight:900}.footer-expanse__ink text{fill:var(--color-ink)}.footer-expanse__overlap text{fill:var(--color-accent)}.footer-expanse__frame{position:absolute;left:0;right:0;bottom:0;outline:1px solid var(--color-accent);pointer-events:none}.footer-expanse__handle{position:absolute;width:7px;height:7px;background:#fff;border:1px solid var(--color-accent)}.footer-expanse__handle--tl{left:-4px;top:-4px}.footer-expanse__handle--tr{right:-4px;top:-4px}.footer-expanse__handle--bl{left:-4px;bottom:-4px}.footer-expanse__handle--br{right:-4px;bottom:-4px}.footer-expanse__size{position:absolute;left:50%;top:calc(100% + 8px);transform:translate(-50%);padding:3px 5px;border-radius:2px;background:var(--color-accent);color:#fff;font:400 10px/1 var(--font-mono);white-space:nowrap}.footer>.footer-expanse__bar{position:absolute!important;inset:0;grid-area:auto!important;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;column-gap:var(--space-2);padding-block:2px;padding-inline:calc(var(--ruler-size) - 10px);opacity:0!important;visibility:hidden!important;pointer-events:none!important;transition:opacity .2s var(--ease-out),visibility 0s linear .2s}.footer>.footer-expanse__bar.is-on{opacity:1!important;visibility:visible!important;transition:opacity .2s var(--ease-out)}.footer>.footer-expanse__bar.is-done{pointer-events:auto!important}.footer-expanse__bar>*{white-space:nowrap}.footer-expanse__rights{justify-self:start}.footer-expanse__thanks{justify-self:center}.footer-expanse__top{justify-self:end;cursor:pointer}.footer-expanse__lens{position:absolute;inset:0;z-index:0;pointer-events:none;box-shadow:inset 0 1px var(--color-line-solid),inset 0 -1px var(--color-line-solid)}.footer-expanse__bar>.glass-btn{position:relative;z-index:1}.footer.footer--lensed{background:transparent}.footer.footer--lensed>:not(.footer-expanse__bar){opacity:0!important;visibility:hidden!important;transition:opacity .2s var(--ease-out),visibility 0s linear .2s}.footer.footer--expanse-column{grid-template-columns:minmax(0,1fr);grid-template-areas:"left" "right" "home"}.footer.footer--expanse-column>*{justify-self:center}.footer.footer--expanse-column>.footer-expanse__bar{justify-self:stretch;grid-template-columns:minmax(0,1fr);row-gap:2px;justify-items:center;align-content:center}.footer--expanse-column .footer-expanse__top{order:-1}.footer--expanse-column .footer-expanse__thanks{order:0}.footer--expanse-column .footer-expanse__rights{order:1}.footer--expanse-column .footer-expanse__rights,.footer--expanse-column .footer-expanse__thanks,.footer--expanse-column .footer-expanse__top{justify-self:center}@media (max-width: 809.98px){body.has-footer-expanse .footer{bottom:auto}.footer-expanse__grid{grid-template-columns:minmax(0,1fr);row-gap:28px}.footer-expanse__col p{white-space:normal}.footer-expanse__mood{height:auto!important;row-gap:4px}.footer-expanse__mood-line{line-height:1.05}}.site-hint{position:fixed;z-index:10003;display:flex;align-items:center;height:13px;padding:0 6px;background:#afaea7;color:#000;font-family:var(--font-mono);font-weight:450;font-size:10px;line-height:13px;text-transform:none;white-space:nowrap;pointer-events:none;animation:site-hint 1.2s var(--ease-out) forwards}.site-hint--cursor{left:0;top:0;animation:site-hint-in .15s var(--ease-out) both;will-change:transform}@keyframes site-hint-in{0%{opacity:0}}.site-hint--on-dark{color:#fff}@keyframes site-hint{0%{opacity:0;transform:translateY(3px)}15%,75%{opacity:1;transform:none}to{opacity:0}}.project-cover-hero{position:relative;width:100%;height:100vh;flex-shrink:0;overflow:hidden;background:var(--color-line)}.project-cover-hero img{display:block;width:100%;height:100%;object-fit:cover}.hero-lamps{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.hero-lamps .lamp--power{opacity:0}.hero-lamps .lamp--net{animation:lamp-net calc(2.75s + var(--a) * 1.5s) step-end calc(var(--b) * -4s) infinite}.hero-lamps .lamp--disk{animation:lamp-disk calc(6s + var(--c) * 3s) step-end calc(var(--e) * -9s) infinite}.hero-lamps .stuck{animation:none;opacity:0}@keyframes lamp-net{0%{opacity:0}6%{opacity:1}11%{opacity:0}14%{opacity:1}30%{opacity:0}33%{opacity:1}51%{opacity:0}56%{opacity:1}60%{opacity:0}63%{opacity:1}82%{opacity:0}85%{opacity:1}to{opacity:1}}@keyframes lamp-disk{0%{opacity:1}18%{opacity:0}21%{opacity:1}24%{opacity:0}27%{opacity:1}64%{opacity:0}68%{opacity:1}to{opacity:1}}body.case-longread .pblock--cv .pblock__text .project-sidebar__section,body.case-longread .pblock--cv .pblock__text .project-sidebar__section p,body.case-longread .pblock--cv .pblock__text .project-sidebar__section h2{text-align:left;text-align-last:auto}body.case-longread .pblock--cv .pblock__text .project-sidebar__section p{font-family:var(--font-display);font-weight:400;font-size:1rem;line-height:1.55;text-transform:none;max-width:68ch}body.case-longread .pblock--cv .pblock__text .project-sidebar__section p+p{margin-top:.8em}body.case-longread .pblock--cv .format-demo__text .project-sidebar__section h2{margin-top:var(--space-2)}body.case-longread .pblock--cv .cv-head .pblock__text .project-sidebar__section h2{font-family:Gilroy Bold,sans-serif;font-size:var(--text-lg);line-height:1.15;text-transform:none;margin-bottom:var(--space-3, 12px)}body.case-longread .pblock--cv .cv-head .pblock__text .project-sidebar__section p{font-size:1.125rem}body.case-longread .pblock--cv .cv-head .pblock__text-inner{max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto;width:100%}.pblock--chapter .cv-chapter{width:100%;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto;padding-top:calc(var(--block-inset) * 2);border-top:1px solid var(--color-ink);display:grid;gap:var(--space-2)}.cv-chapter__num{font-family:var(--font-mono);font-weight:var(--w-strong, 700);font-size:var(--text-sm);color:var(--color-accent)}.cv-chapter__title{margin:0;font-family:Gilroy Bold,sans-serif;font-size:var(--text-xl);line-height:1;font-weight:700}body.case-longread .cv-table__cell,body.case-longread .cv-steps p,body.case-longread .cv-palette__list li>span:not(.cv-palette__hex){font-family:var(--font-display);font-size:.9375rem;line-height:1.45}body.case-longread .cv-table__cell--key{font-weight:600}body.case-longread .cv-steps__title{font-family:Gilroy Bold,sans-serif;font-size:1.125rem;text-transform:none}body.case-longread .cv-compare__title{font-weight:var(--w-strong, 700)}body.case-longread .pblock--cv .cv-caption .project-sidebar__section p{font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.45;color:var(--color-ink-muted)}:root{--cv-radius: 24px;--cv-tile-pad: 24px}@media (max-width: 800px){:root{--cv-tile-pad: 16px}}body.case-wide .pblock--cv .wrap{max-width:calc(1320px + 2 * var(--text-edge-floor));padding-inline:var(--text-edge-floor);gap:calc(var(--block-inset) * 2)}body.case-wide .pblock--cv+.pblock--cv:not(.pblock--chapter){padding-top:calc(var(--block-inset) * 2)}body.case-wide .pblock--cv :is(.cv-wide,.cv-table,.cv-steps,.cv-compare,.cv-palette,.cv-tiles,.cv-pair,.main-row,.format-demo__frames,.layout-grid,.side-by-side){width:100%;max-width:none;margin-inline:0}body.case-wide .pblock--cv :is(.cv-head .pblock__text-inner,.wrap>.format-demo__text,.cv-steps--list,.wrap>.cv-caption),body.case-wide .pblock--chapter .cv-chapter{width:100%;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto}body.case-wide .pblock--cv .pblock__text .project-sidebar__section p{max-width:none}body.case-wide .pblock--cv :is(.pblock__text,.cv-wide,.cv-table,.cv-steps,.cv-compare,.cv-palette,.cv-tiles){font-family:Gilroy Bold,sans-serif;font-weight:400}body.case-wide .cv-chapter__title{font-family:Gilroy Bold,sans-serif;font-size:var(--text-xl);line-height:1.1}body.case-wide .cv-chapter__num{font-family:Gilroy Bold,sans-serif;font-size:var(--text-sm);font-weight:700;color:var(--color-accent)}body.case-wide .pblock--cv .cv-head .pblock__text .project-sidebar__section h2{font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:var(--text-lg);line-height:1.2;text-transform:none;letter-spacing:0;margin-bottom:var(--block-inset)}body.case-wide .pblock--cv .cv-head .pblock__text .project-sidebar__section p{font-family:Gilroy Bold,sans-serif;font-weight:400;font-size:1.125rem;line-height:1.6}body.case-wide .pblock--cv .pblock__text .project-sidebar__section p,body.case-wide .cv-table__cell,body.case-wide .cv-steps p,body.case-wide .cv-palette__list li>span:not(.cv-palette__hex){font-family:Gilroy Bold,sans-serif;font-weight:400;font-size:1rem;line-height:1.55;text-transform:none}body.case-wide .pblock--cv .cv-tile .project-sidebar__section h2,body.case-wide .cv-steps__title,body.case-wide .cv-table__cell.cv-table__cell--key,body.case-wide .cv-compare__title{font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:1rem;line-height:1.35;text-transform:none;letter-spacing:0;margin:0}body.case-wide .pblock--cv .cv-tile .project-sidebar__section h2{margin-bottom:var(--space-2)}body.case-wide :is(.cv-steps__tag,.cv-table__head){font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:var(--text-sm);line-height:1.4;text-transform:uppercase;letter-spacing:.04em}body.case-wide .cv-steps__tag{color:var(--color-accent)}body.case-wide .cv-table__head{color:var(--color-ink-muted)}body.case-wide .pblock--cv .main-item figcaption,body.case-wide .pblock--cv .cv-compare figcaption,body.case-wide .cv-palette__hex,body.case-wide .pblock--cv .cv-caption .project-sidebar__section p{font-family:Gilroy Bold,sans-serif;font-weight:400;font-size:var(--text-sm);line-height:1.5;text-transform:none;letter-spacing:0;color:var(--color-ink-muted)}body.case-wide .pblock--cv .wrap>.cv-caption .project-sidebar__section p{text-align:center;text-align-last:center}body.case-wide .pblock--cv .wrap>.cv-wide+.cv-caption{margin-top:calc(var(--block-inset) * -1)}body.case-wide .pblock--cv .cv-wide .main-item{display:flex;flex-direction:column}body.case-wide .pblock--cv .cv-wide .main-item figcaption{order:2;margin:var(--block-inset) auto 0;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));text-align:center}body.case-wide .pblock--cv .cv-tile .format-demo__text{width:100%;max-width:none;margin:0}body.case-wide .pblock--cv .wrap>.cv-tiles:has(>.cv-tile:only-child){max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto}body.case-wide .pblock--cv .cv-wide .pblock__tile{margin-inline:auto;border-radius:var(--cv-radius)}body.case-wide .pblock--cv :is(.cv-tiles,.cv-steps--cells,.cv-steps--flow){display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--block-inset);margin-block:0;padding:0;list-style:none}body.case-wide .cv-tile{grid-column:span var(--span, 12);display:flex;flex-direction:column;gap:var(--space-2);padding:var(--cv-tile-pad);border-radius:var(--cv-radius);background:color-mix(in srgb,var(--color-ink) 4%,transparent)}body.case-wide .cv-tile .pblock__text-inner{padding-block:0}body.case-wide .pblock--cv :is(.cv-tiles,.cv-steps--cells,.cv-steps--flow){grid-auto-rows:1fr}@media (max-width: 800px){body.case-wide .pblock--cv :is(.cv-tiles,.cv-steps--cells,.cv-steps--flow){grid-auto-rows:auto}}body.case-wide .cv-tile:nth-child(4n+1){background:var(--tile-c1, color-mix(in srgb, var(--color-ink) 4%, transparent))}body.case-wide .cv-tile:nth-child(4n+2){background:var(--tile-c2, var(--tile-c1, color-mix(in srgb, var(--color-ink) 4%, transparent)))}body.case-wide .cv-tile:nth-child(4n+3){background:var(--tile-c3, var(--tile-c1, color-mix(in srgb, var(--color-ink) 4%, transparent)))}body.case-wide .cv-tile:nth-child(4n+4){background:var(--tile-c4, var(--tile-c1, color-mix(in srgb, var(--color-ink) 4%, transparent)))}body.case-wide .cv-tile :is(p,.cv-steps__tag){color:var(--color-ink)}body.case-wide .cv-tile.cv-tile--plain{background:color-mix(in srgb,var(--color-ink) 4%,transparent)}body.case-wide .cv-tile.cv-tile--dark{background:var(--case-dark, #1A1B18);color:#f2f1ee}body.case-wide .cv-tile.cv-tile--dark :is(p,h2,strong,.cv-steps__tag,.cv-steps__title){color:inherit}body.case-wide .cv-tile.cv-tile--dark p{opacity:.75}body.case-wide .cv-compare-split__label{font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:1rem}body.case-wide .cv-compare-split__grid{list-style:none;margin:var(--space-2) 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(var(--block-inset) * 2) var(--block-inset)}body.case-wide .cv-compare-split__grid li{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);text-align:center}body.case-wide .cv-compare-split__grid img{width:min(100%,96px);height:auto;aspect-ratio:1;object-fit:contain}body.case-wide .cv-compare-split__grid span{font-family:Gilroy Bold,sans-serif;font-size:var(--text-sm);line-height:1.35;color:inherit;opacity:.75}@media (max-width: 800px){body.case-wide .cv-compare-split__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}body.case-wide .cv-palette--tiles .cv-tile.cv-palette__tile{justify-content:space-between;min-height:140px}body.case-wide .cv-palette__tile strong{font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:1rem;line-height:1.3}body.case-wide .cv-palette__tile .cv-palette__hex{color:inherit;opacity:.8;margin:0}body.case-wide .cv-palette--tiles .cv-palette__scale-tile{min-height:96px}body.case-wide .cv-palette__scale-tile .cv-palette__scale-labels{display:flex;justify-content:space-between;margin:0;font-size:var(--text-sm);font-weight:700}body.case-wide .pblock--cta-flow .cta-window{padding-inline:0}.cv-app-frame.is-zoomable{cursor:zoom-in}.cv-zoom__box{position:absolute;overflow:hidden;border-radius:var(--cv-radius, 0);transition:top .4s var(--ease-out),left .4s var(--ease-out),width .4s var(--ease-out),height .4s var(--ease-out)}.cv-zoom__box iframe{position:absolute;left:0;top:0;border:0;transform-origin:0 0;pointer-events:none;transition:transform .4s var(--ease-out)}body.case-wide .pblock--cv .cv-app{--app-w: 100%;width:100%;margin-inline:0}body.case-wide .pblock--cv .cv-app-row{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:calc(var(--block-inset) * 2);width:100%}body.case-wide .cv-app-row>.cv-app{grid-column:span 8}body.case-wide .cv-app-row>.cv-app--mobile{grid-column:span 4}@media (max-width: 800px){body.case-wide .cv-app-row>.cv-app{grid-column:1 / -1}body.case-wide .cv-app-row>.cv-app--mobile{display:none}}body.case-wide .pblock--chapter .cv-chapter{border-top:0}body.case-wide .cv-chapter__num,body.case-wide .cv-steps--list .cv-steps__tag{justify-self:start;width:fit-content;height:fit-content;padding:2px 6px;border-radius:6px;color:var(--case-accent-ink, var(--color-ink));background:var(--case-accent, transparent)}body.case-wide:not([style*=--case-accent]) :is(.cv-chapter__num,.cv-steps--list .cv-steps__tag){color:var(--color-accent);padding:0}body.case-wide :is(.cv-steps--cells,.cv-steps--flow) .cv-steps__title{font-size:1.125rem}body.case-wide .cv-steps p{color:var(--color-ink-muted)}body.case-wide .pblock--cv .cv-steps--list{display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:1fr;gap:0;margin-block:0;padding:0}@media (min-width: 801px){body.case-wide .pblock--cv .cv-table{grid-auto-rows:1fr}body.case-wide .pblock--cv .cv-table{column-gap:0}body.case-wide :is(.cv-table__head,.cv-table__cell){padding-right:var(--block-inset)}}@media (max-width: 800px){body.case-wide .pblock--cv .cv-steps--list{grid-auto-rows:auto}}body.case-wide .pblock--cv .cv-steps--list{border-radius:var(--cv-radius);background:color-mix(in srgb,var(--color-ink) 4%,transparent);overflow:hidden}body.case-wide .cv-steps--list li{display:grid;grid-template-columns:3rem minmax(0,1fr);align-content:start;column-gap:var(--block-inset);row-gap:var(--space-2);padding:var(--cv-tile-pad)}body.case-wide .cv-steps--list li+li{border-top:1px solid var(--color-line-solid)}body.case-wide .cv-steps--list li{min-height:var(--list-row-h, 0)}body.case-wide .cv-pair .cv-tiles>.cv-tile{min-height:var(--stack-tile-h, 0)}body.case-wide .cv-steps--list li>:not(.cv-steps__tag){grid-column:2}body.case-wide .cv-steps--list .cv-steps__tag{grid-row:span 2}.cv-app-frame--stroke{outline:1px solid var(--color-line-solid);outline-offset:-1px}body.case-wide .pblock--cv .wrap>.cv-col-text{width:100%;max-width:calc(2 * var(--cv-frame) + var(--cv-gap));margin-inline:auto}body.case-wide .pblock--cv .wrap>.cv-wide.cv-nopair .cv-app-frame{width:100%!important}body.case-wide .pblock--cv .cv-pair{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:calc(var(--block-inset) * 2);align-items:center}body.case-wide .cv-pair>:first-child{grid-column:span var(--span)}body.case-wide .cv-pair>.cv-pair__text{grid-column:span calc(12 - var(--span));display:flex;flex-direction:column;gap:calc(var(--block-inset) * 2);min-width:0}body.case-wide .cv-pair .cv-app-frame{width:100%!important}body.case-wide .cv-pair .cv-tiles>.cv-tile{grid-column:1 / -1}body.case-wide .cv-pair .cv-caption .project-sidebar__section p{text-align:left;text-align-last:auto}@media (max-width: 800px){body.case-wide .cv-tile,body.case-wide .cv-pair>:first-child,body.case-wide .cv-pair>.cv-pair__text{grid-column:1 / -1}body.case-wide .pblock--cv .cv-pair{row-gap:var(--block-inset)}body.case-wide .cv-table__cell:not(.cv-table__cell--key):before{font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:var(--text-sm)}}:root{--page-pad: calc(var(--ruler-size) + var(--block-inset))}#info-root{--profile-pad: var(--page-pad)}.profile-hero{position:relative;padding:var(--profile-pad) var(--edge-inline-padding) 0;min-height:calc(100svh - var(--nav-height, 0px) - var(--footer-h, 37px));overflow:hidden}.profile-hero__text{position:relative;z-index:1;max-width:60%}.profile-hero__lead{margin:0 0 var(--block-inset);font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:clamp(2rem,3.6vw,3.5rem);line-height:1.04;letter-spacing:-.02em;color:var(--color-ink)}.profile-hero__note{margin:0 0 var(--block-inset);max-width:44ch;font-family:var(--font-display);font-size:clamp(1rem,1.4vw,1.25rem);line-height:1.45;color:var(--color-ink)}.profile-hero__lead span{display:block}.profile-cv{display:inline-block}.profile-hero__banner{position:absolute;right:var(--edge-inline-padding);bottom:0;width:min(76%,1240px);height:auto;pointer-events:none}.profile-mosaic{--cols: 4;display:grid;grid-template-columns:repeat(var(--cols),minmax(0,1fr));grid-auto-rows:calc((100vw - (var(--cols) - 1) * var(--block-inset)) / var(--cols) * 4 / 3);grid-auto-flow:dense;gap:var(--block-inset);margin-top:calc(var(--block-inset) * 2);padding-bottom:var(--profile-pad)}.profile-mosaic__tile{width:100%;height:100%;overflow:hidden}.profile-mosaic__tile img{width:100%;height:100%;object-fit:cover;display:block}.profile-mosaic__tile--big{grid-column:span 2;grid-row:span 2}.profile-mosaic__tile--tall{grid-row:span 2}@media (max-width: 809.98px){.profile-hero{min-height:0}.profile-hero__text{max-width:none}.profile-hero__banner{position:static;display:block;width:100%;margin-top:calc(var(--block-inset) * 2)}.profile-mosaic{--cols: 2}}.tape-layer{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.tape-layer--back{z-index:0}.profile-hero__banner{z-index:1}.tape-layer--front{z-index:2}.profile-hero__text{z-index:3}.profile-hero.is-tape-hover{cursor:grab}.profile-hero.is-tape-grab{cursor:grabbing}.tape-panel{position:fixed;left:34px;bottom:54px;z-index:10002;width:min(420px,calc(100vw - 68px));padding:12px;background:#fff;color:#000;border:1px solid #000;font:12px/1.4 var(--font-mono)}.tape-panel p{margin:6px 0}.tape-panel__btns{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.tape-panel button{font:inherit;padding:4px 8px;border:1px solid #000;background:#ff0;cursor:pointer}.tape-panel textarea{width:100%;font:inherit}.pblock--cv .cv-open{display:flex;flex-direction:column;align-items:center;gap:var(--block-inset)}.pblock--cv .cv-open__frame{display:block;width:100%}.pblock--cv .cv-open__btn{color:var(--color-accent)}@media (max-width: 767px){.sticky-group--scheme .pblock__media{height:auto;aspect-ratio:auto;max-height:none}.sticky-group--scheme .pblock__media-grid{position:static;display:block;height:auto}.sticky-group--scheme .pblock__tile{aspect-ratio:var(--scheme-ratio);height:auto}.sticky-group--scheme .pblock__tile img{object-fit:contain}}@media (min-width: 768px){.sticky-group--scheme>.pblock{height:auto}.sticky-group--scheme .pblock__media{aspect-ratio:var(--scheme-ratio);max-height:none}}.pblock--cta-flow{height:auto;padding-block:var(--page-pad)}.pblock--cta-flow .pblock__media{height:auto;aspect-ratio:auto;max-height:none}.pblock--cta-flow .cta-window{position:relative;top:auto}.hero-text-line.is-was{color:color-mix(in srgb,currentColor 35%,transparent)}.hero-text-line.is-next{color:var(--color-accent)}.pblock__media--natural{aspect-ratio:auto;max-height:none;height:auto}.pblock__media--natural .pblock__media-grid{position:static}.pblock--palette .pblock__media{display:flex;gap:var(--block-inset)}.palette-stripe{flex:1 1 0;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:10px;padding:24px}.palette-stripe--outlined{box-shadow:inset 0 0 0 1px currentColor}.palette-stripe__name{font-family:var(--font-display);font-size:var(--text-lg);line-height:1.1}.palette-stripe__codes{margin:0;font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.6}.palette-stripe__codes div{display:flex;gap:8px}.palette-stripe__codes dt{opacity:.6;min-width:4.5em}.palette-stripe__codes dd{margin:0}@media (max-width: 767px){.pblock--palette .pblock__media{flex-direction:column;aspect-ratio:auto;max-height:none;height:auto}.palette-stripe{flex:0 0 auto;min-height:120px;padding:16px}}.project-sidebar__section p.is-subhead{font-family:var(--font-mono);font-weight:var(--w-strong, 700);font-size:var(--text-sm);text-transform:uppercase;color:var(--color-ink)}.pblock__svg-anim{width:100%;height:100%}.pblock__svg-anim svg{display:block;width:100%;height:100%}body.case-wide .cv-board__screen{position:relative}body.case-wide .cv-board__mark{position:absolute;box-sizing:border-box;border-radius:8px;box-shadow:0 0 0 200vmax #0000;transition:box-shadow .3s var(--ease-out)}body.case-wide .cv-board__mark b{position:absolute;left:-11px;top:-11px;z-index:1;min-width:22px;height:22px;padding:0 6px;box-sizing:border-box;border-radius:11px;display:grid;place-items:center;background:#000;color:#fff;box-shadow:0 0 0 2px #fff;font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:11px;line-height:1}body.case-wide .cv-board__mark.is-active{z-index:1;box-shadow:0 0 0 200vmax #00000073}@media (max-width: 800px){body.case-wide .cv-board__mark b{left:-8px;top:-8px;min-width:16px;height:16px;padding:0 4px;font-size:9px;box-shadow:0 0 0 1.5px #fff}}body.case-wide .pblock--cv .cv-wide--cols{display:grid;grid-template-columns:repeat(var(--cols, 2),minmax(0,1fr));gap:var(--block-inset)}@media (max-width: 800px){body.case-wide .pblock--cv .cv-wide--cols{grid-template-columns:minmax(0,1fr)}}body.case-wide .cv-option{gap:var(--space-2)}body.case-wide .cv-option__body{margin-block:var(--space-2)}body.case-wide .cv-option__body .main-item{width:100%}body.case-wide .cv-option__body .pblock__tile{border-radius:calc(var(--cv-radius) / 2)}body.case-wide .cv-mock-cards{display:flex;gap:var(--block-inset)}body.case-wide .cv-mock-card{flex:0 1 160px;display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:calc(var(--cv-radius) / 2);background:#fff;color:#000}body.case-wide .cv-mock-card__pack{width:100%;aspect-ratio:1;object-fit:contain;background:#f1f1f1;margin-bottom:6px}body.case-wide .cv-mock-card__name{font-family:Gilroy Bold,sans-serif;font-weight:700;font-size:1rem;line-height:1.2}body.case-wide .cv-mock-card__meta{font-family:Gilroy Bold,sans-serif;font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:#6b6b6b}body.case-wide .cv-mock-card__switch{display:flex;gap:4px;margin-top:4px}body.case-wide .cv-mock-card__switch span{flex:1;padding:4px 6px;border:1px solid #000;border-radius:4px;font-family:Gilroy Bold,sans-serif;font-size:var(--text-sm);text-align:center}body.case-wide .cv-mock-card__switch span.is-on{background:#000;color:#fff}body.case-wide .cv-mock-form{display:flex;flex-direction:column;gap:8px;padding:16px;border-radius:calc(var(--cv-radius) / 2);background:#fff;color:#000;font-family:Gilroy Bold,sans-serif}body.case-wide .cv-mock-form__chip{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border-radius:6px;background:#f1f1f1;font-size:.875rem}body.case-wide .cv-mock-form__chip strong{font-size:1rem}body.case-wide .cv-mock-form__chip small{font-size:var(--text-sm);color:#6b6b6b}body.case-wide .cv-mock-form__field{display:flex;flex-direction:column;gap:2px;padding:8px 0;border-bottom:1px solid #000;font-size:.875rem}body.case-wide .cv-mock-form__label{font-size:var(--text-sm);text-transform:uppercase;letter-spacing:.04em;color:#6b6b6b}body.case-wide .cv-mock-form__button{align-self:flex-start;margin-top:6px;padding:8px 14px;border-radius:6px;background:#000;color:#fff;font-size:.875rem}body.case-wide .cv-option>p{margin:0;font-family:Gilroy Bold,sans-serif;font-weight:400;font-size:1rem;line-height:1.55}.pblock--cv .cv-app--scaled{position:relative;overflow:hidden;height:clamp(600px,90svh,900px)}.pblock--cv .cv-app--scaled iframe{transform-origin:0 0}body.case-wide .cv-options--uniform .cv-option__body .pblock__tile{aspect-ratio:1440 / 980!important;background:#fff}body.case-wide .cv-options--uniform .cv-option__body .pblock__tile img{object-fit:contain}.cv-inline-svg{background:#000}.cv-inline-svg>svg{display:block;width:100%;height:auto}body.case-wide .cv-option__shot--pad{background:#fff;padding:24px;box-sizing:border-box;aspect-ratio:auto!important}body.case-wide .cv-option__shot--pad img{height:auto;object-fit:contain}@media (max-width: 800px){body.case-wide .pblock--cv :is(.cv-pair,.cv-app-row){grid-template-columns:minmax(0,1fr)}}@media (max-width: 800px){body.case-wide .cv-app-row>.cv-app--mobile{display:none}}.hero-text-line.is-edit,.cv-chapter__title.is-edit{color:#1e90ff!important}#nl-badge-frame,#nl-hud-frame{display:none!important}
