:root{--accent: #e10600;--accent-soft: #ff2a1f;--ink: var(--accent);--bg: #ffffff;--mask: #e9e9e9;--line: var(--accent);--font: "Futura PT", "Futura Fallback", "Futura Fallback Arial", "Futura", "Futura Std", "Century Gothic", "Avenir Next", sans-serif;--weight: 450;--pad-x: clamp(.75rem, 2vw, 1.5rem);--header-h: calc(4rem + var(--type-nudge) * 1.4);--feature-info-h: 5.5rem;--ease: cubic-bezier(.25, .1, .25, 1);--type-nudge: 6pt;--col-label: 5.5rem;--col-label-sm: 4.5rem;--pad-x-sm: .85rem;--band-y: 1.05rem;--cell-y: 1.25rem;--rule: 1px solid var(--line);--fs-display: clamp(calc(1.6rem + var(--type-nudge)), calc(3.6vw + var(--type-nudge)), calc(2.8rem + var(--type-nudge)));--fs-page-title: clamp(calc(2rem + var(--type-nudge)), calc(4vw + var(--type-nudge)), calc(3.2rem + var(--type-nudge)));--fs-card-title: clamp(calc(1.15rem + var(--type-nudge)), calc(2vw + var(--type-nudge)), calc(1.55rem + var(--type-nudge)));--fs-lede: clamp(calc(1rem + var(--type-nudge)), calc(1.45vw + var(--type-nudge)), calc(1.15rem + var(--type-nudge)));--fs-body: calc(1rem + var(--type-nudge));--fs-nav: calc(.95rem + var(--type-nudge));--fs-label: .72rem;--track-label: .14em;--label-case: none;--measure: 64ch}*,*:before,*:after{box-sizing:border-box}@font-face{font-family:Futura PT;src:url(/fonts/FuturaCyrillicMedium.woff2) format("woff2"),url(/fonts/FuturaCyrillicMedium.woff) format("woff");font-weight:450;font-style:normal;font-display:swap}@font-face{font-family:Futura Fallback;src:local("Century Gothic"),local("CenturyGothic");size-adjust:83.8%}@font-face{font-family:Futura Fallback Arial;src:local("Arial");size-adjust:90.8%}html{scroll-behavior:smooth;font-size:18px}body{margin:0;min-height:100vh;background:var(--bg);color:var(--accent);font-family:var(--font);font-size:calc(1rem + var(--type-nudge));font-weight:var(--weight);line-height:1.35;letter-spacing:.01em;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button{font:inherit;font-weight:var(--weight);color:inherit}::selection{background:var(--accent);color:#fff}:where(a,button,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}:where(.brand-mark,.header-cta,.feature-arrow,.play-btn,.contact-submit,.skip-link):focus-visible{outline-color:#fff;outline-offset:-4px}:where(.feature-dot):focus-visible{outline-color:#fff;outline-offset:3px}.feature-meta,.works-head .count,.work-card__num,.meta-list .value,.site-footer{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}#works{scroll-margin-top:var(--header-h)}picture{display:contents}img,video{display:block;max-width:100%;height:auto;-webkit-user-drag:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}img[data-fallback]{opacity:0;transition:opacity .18s var(--ease)}img[data-fallback].is-media-ready{opacity:1}.skip-link{position:fixed;top:0;left:0;z-index:200;padding:.7rem 1.1rem;background:var(--accent);color:#fff;font-size:var(--fs-nav);font-weight:var(--weight);transform:translateY(-110%);transition:transform .16s var(--ease)}.skip-link:focus-visible{transform:translateY(0)}.site-header{position:sticky;top:0;z-index:50;display:flex;align-items:stretch;height:var(--header-h);min-height:var(--header-h);background:#fff;border-bottom:var(--rule)}.brand-mark{display:flex;align-items:center;justify-content:center;align-self:stretch;flex:0 0 auto;box-sizing:border-box;height:100%;margin:0;padding:0 .2rem;overflow:hidden;background:var(--accent);color:#fff;font-weight:var(--weight);letter-spacing:-.045em;text-transform:none;border:0}.brand-mark span{display:block;font-size:calc(4rem * .78 + var(--type-nudge));line-height:1;padding:.04em 0 .24em}.header-cta{display:flex;align-items:center;justify-content:center;flex:0 0 auto;padding:0 1.35rem;background:var(--accent);color:#fff;font-size:var(--fs-nav);font-weight:var(--weight);letter-spacing:.01em;border:0;border-left:1px solid rgba(255,255,255,.28);transition:filter .16s var(--ease)}.header-cta:hover,.header-cta.is-active{filter:brightness(1.06)}.primary-nav{display:flex;align-items:center;justify-content:flex-end;gap:clamp(1.1rem,2.4vw,2rem);flex:1 1 auto;margin-left:0;padding:0 clamp(1rem,2vw,1.6rem);background:#fff}.primary-nav a{display:inline-flex;align-items:center;padding:0;min-height:3.35rem;font-size:var(--fs-nav);font-weight:var(--weight);letter-spacing:.01em;color:var(--accent);border:0;background:transparent;transition:opacity .16s var(--ease)}.primary-nav a:hover{opacity:.65}.primary-nav a.is-active{opacity:1;font-weight:var(--weight);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.32em}.header-locale{display:inline-flex;align-items:center;margin-right:.25rem;font-size:var(--fs-label);font-weight:var(--weight);letter-spacing:var(--track-label);color:var(--accent);white-space:nowrap}.feature{position:relative;border-bottom:var(--rule)}.feature-banner{position:relative;width:100%;aspect-ratio:unset;height:calc(100svh - var(--header-h) - var(--feature-info-h));min-height:22rem;overflow:hidden;background:var(--mask);border-bottom:var(--rule);touch-action:pan-y}.feature-viewport{position:absolute;top:0;right:0;bottom:0;left:0}.feature-slide{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .7s var(--ease)}.feature-slide.is-active{opacity:1;visibility:visible;pointer-events:auto;z-index:1}.feature-slide img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;filter:none;transform:none;box-shadow:none}.feature-arrow{position:absolute;top:50%;z-index:4;transform:translateY(-50%);box-sizing:border-box;width:2.75rem;height:2.75rem;margin:0;padding:0;border:1px solid rgba(255,255,255,.9);background:#111111b8;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;line-height:0;-moz-appearance:none;appearance:none;-webkit-appearance:none;transition:background .18s var(--ease),border-color .18s var(--ease)}.feature-arrow svg{display:block;width:1rem;height:1rem;margin:0;overflow:visible}.feature-arrow:hover{background:#e10600e0;border-color:var(--accent)}.feature-arrow--prev{left:.85rem}.feature-arrow--next{right:.85rem}.feature-dots{position:absolute;left:50%;bottom:.9rem;z-index:4;translate:-50% 0;display:flex;gap:.45rem}.feature-dot{position:relative;width:1.6rem;height:1.5rem;padding:0;border:0;border-radius:0;background:transparent;cursor:pointer}.feature-dot:before{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#ffffff73;transition:background .18s var(--ease)}.feature-dot:hover:before{background:#fffc}.feature-dot.is-active:before{background:#fff}.feature-info{display:grid;grid-template-columns:var(--col-label) minmax(0,1.6fr) minmax(0,1fr) minmax(0,.85fr);border-bottom:var(--rule);align-items:stretch}.feature-info>*{padding:var(--band-y) var(--pad-x);border-right:var(--rule);min-width:0}.feature-info>*:last-child{border-right:0}.feature-info:hover .feature-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:.1em}.feature-label{writing-mode:vertical-rl;transform:rotate(180deg);display:flex;align-items:center;justify-content:center;padding:var(--band-y) .5rem;font-size:var(--fs-label);font-weight:var(--weight);letter-spacing:var(--track-label);text-transform:var(--label-case)}.feature-title{margin:0;display:flex;align-items:flex-start;font-size:var(--fs-display);line-height:.95;font-weight:var(--weight);letter-spacing:-.03em;overflow-wrap:break-word}.feature-lede{margin:0;display:flex;align-items:flex-start;font-size:var(--fs-lede);font-weight:var(--weight);line-height:1.2;overflow-wrap:break-word}.feature-mobile-details,.project-mobile-details{display:none;margin:0;font-size:var(--fs-lede);line-height:1.3;overflow-wrap:break-word}.feature-meta{display:grid;align-content:start;gap:.3rem;font-size:var(--fs-label);font-weight:var(--weight);line-height:1.2;letter-spacing:var(--track-label)}.works{border-bottom:var(--rule)}.works-head{display:grid;grid-template-columns:var(--col-label) 1fr auto;border-bottom:var(--rule)}.works-head>*{padding:var(--band-y) var(--pad-x);border-right:var(--rule);font-weight:var(--weight)}.works-head>*:last-child{border-right:0}.works-head .label{font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:var(--label-case);display:flex;align-items:center}.works-head h2{margin:0;font-size:var(--fs-display);line-height:.95;font-weight:var(--weight);letter-spacing:-.03em}.works-head .count{display:flex;align-items:center;font-size:var(--fs-nav);font-weight:var(--weight)}.works-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;border-top:0}.work-card{display:grid;grid-template-rows:auto 1fr;border-right:var(--rule);border-bottom:var(--rule);transition:background .16s var(--ease)}.work-card:nth-child(2n){border-right:0}.work-card:hover{background:color-mix(in srgb,var(--accent) 5%,white)}.work-card__media{position:relative;overflow:hidden;aspect-ratio:var(--card-ratio, 16 / 9);background:var(--mask);border-bottom:var(--rule)}.work-card__media img{display:block;width:100%;height:100%;object-fit:cover;object-position:center center;transform:scale(1);filter:none;transition:transform .5s var(--ease)}.work-card:hover .work-card__media img{transform:scale(1.035)}.work-card__body{display:grid;grid-template-columns:var(--col-label-sm) minmax(0,1fr);min-height:0;align-items:stretch}.work-card__body>*{padding:var(--band-y) var(--pad-x-sm)}.work-card__num{border-right:var(--rule);font-size:var(--fs-label);font-weight:var(--weight);letter-spacing:var(--track-label);text-transform:var(--label-case)}.work-card__text h3{margin:0 0 .35rem;font-size:var(--fs-card-title);font-weight:var(--weight);line-height:1.05;letter-spacing:-.01em}.work-card__text p{margin:0;color:var(--ink);font-size:calc(.92rem + var(--type-nudge));font-weight:var(--weight);line-height:1.3}.project-hero{border-bottom:var(--rule)}.project-hero__media{position:relative;overflow:hidden;aspect-ratio:2 / 1;background:var(--mask);border-bottom:var(--rule);border-top:0}.project-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center center;filter:none;border:0;box-shadow:none}.project-hero__info{display:grid;grid-template-columns:var(--col-label) minmax(0,1.6fr) minmax(0,1fr) minmax(0,.85fr)}.project-hero__info>*{padding:var(--band-y) var(--pad-x);border-right:var(--rule);min-width:0}.project-hero__info>*:last-child{border-right:0}.project-hero__info h1{margin:0;font-size:var(--fs-display);line-height:.95;font-weight:var(--weight);letter-spacing:-.03em}.project-field{display:grid;align-content:start;gap:.3rem}.project-field__label{font-size:var(--fs-label);line-height:1.2;letter-spacing:var(--track-label)}.project-field__value{font-size:var(--fs-lede);line-height:1.2;overflow-wrap:break-word}.project-layout{display:grid;grid-template-columns:var(--col-label) minmax(16rem,.9fr) minmax(0,1.2fr);align-items:start;border-bottom:var(--rule)}.project-layout>*{border-right:var(--rule);padding:var(--cell-y) var(--pad-x) 2rem;min-width:0}.project-layout>*:last-child{border-right:0}.side-label{writing-mode:vertical-rl;transform:rotate(180deg);font-size:var(--fs-label);font-weight:var(--weight);letter-spacing:var(--track-label);text-transform:var(--label-case);display:flex;align-items:center;justify-content:center;min-height:12rem}.meta-list{display:grid;gap:1rem;align-content:start}.meta-list div{padding-bottom:.75rem;border-bottom:var(--rule)}.meta-list .label{display:block;margin-bottom:.2rem;font-size:var(--fs-label);font-weight:var(--weight);letter-spacing:var(--track-label);text-transform:var(--label-case)}.meta-list .value{color:var(--ink);font-size:var(--fs-body);font-weight:var(--weight)}.prose h2{margin:2.2rem 0 1rem;padding-bottom:.5rem;max-width:var(--measure);border-bottom:var(--rule);font-size:var(--fs-card-title);font-weight:var(--weight);line-height:1.1;letter-spacing:-.01em}.prose h2:first-child{margin-top:0}.prose p{margin:0 0 1rem;max-width:var(--measure);color:var(--ink);font-size:var(--fs-body);font-weight:var(--weight);line-height:1.55}.cv-item{display:grid;grid-template-columns:9.5rem minmax(0,1fr);column-gap:1rem;max-width:var(--measure);margin:0 0 1.1rem;color:var(--ink);font-size:var(--fs-body);font-weight:var(--weight);line-height:1.45}.cv-item__when{font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;white-space:nowrap}@media(max-width:760px){.cv-item{grid-template-columns:1fr;row-gap:.15rem}}.prose p.sub,.bio-copy .sub,.contact-intro .sub{color:var(--accent)}.media-stack{display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:.75rem;border-left:0;padding:var(--cell-y) var(--pad-x) 2rem}.media-block{width:100%;margin:0;flex:0 0 auto;background:var(--mask);border:var(--rule)}.media-block img,.media-block video{width:100%;height:auto;display:block;filter:none;border:0}.video-embed{position:relative;overflow:hidden;flex:0 0 auto;aspect-ratio:var(--video-ratio, 16 / 9);width:100%;max-width:100%;height:auto;background:var(--mask);border:var(--rule)}.video-embed iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0;opacity:0;pointer-events:none;transition:opacity .18s var(--ease)}.video-embed.is-playing iframe{opacity:1;pointer-events:auto}.video-embed .video-poster{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;filter:none;transform:none;z-index:1;transition:opacity .18s var(--ease)}.play-btn{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;border:0;cursor:pointer;background:#11111138;z-index:2;transition:opacity .18s var(--ease)}.video-embed.is-playing .video-poster,.video-embed.is-playing .play-btn{opacity:0;visibility:hidden;pointer-events:none}.video-embed.is-starting .play-btn{cursor:wait}:is(.feature-banner,.feature-slide,.work-card__media,.project-hero__media,.media-block).is-media-ready{background:#111}:is(.feature-banner,.feature-slide,.work-card__media,.project-hero__media,.media-block).is-media-error{background:color-mix(in srgb,var(--accent) 7%,white)}.media-open,.bio-portrait{position:relative}.media-retry{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:grid;place-items:center;padding:1rem;background:color-mix(in srgb,var(--mask) 94%,transparent);color:var(--accent);font-size:var(--fs-label);letter-spacing:var(--track-label);text-align:center;pointer-events:none}.play-btn span{display:grid;place-items:center;min-width:5.5rem;padding:.7rem 1.1rem;border-radius:0;background:var(--accent);color:#fff;font-size:calc(.65rem + var(--type-nudge));font-weight:var(--weight);letter-spacing:var(--track-label);text-transform:none;transition:background .16s var(--ease),color .16s var(--ease)}.play-btn:hover span{background:#fff;color:var(--accent)}.pager{display:grid;grid-template-columns:1fr 1fr;border-bottom:var(--rule);font-weight:var(--weight);text-transform:none;letter-spacing:.04em;font-size:var(--fs-nav)}.pager a{padding:var(--band-y) var(--pad-x);border-right:var(--rule)}.pager a:last-child{border-right:0;text-align:right}.pager a:hover{background:var(--accent);color:#fff}.media-caption{display:grid;grid-template-columns:var(--col-label-sm) minmax(0,1fr);align-items:stretch;background:var(--bg);border-top:var(--rule)}.media-caption>*{padding:var(--band-y) var(--pad-x-sm);min-width:0}.media-caption__num{border-right:var(--rule);font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:var(--label-case);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.media-caption__text{font-size:var(--fs-label);letter-spacing:var(--track-label);line-height:1.4}.media-caption__text:empty{display:none}.media-open{display:block;width:100%;height:100%;margin:0;padding:0;border:0;background:none;cursor:zoom-in}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;grid-template-rows:auto minmax(0,1fr);background:var(--mask);color:var(--accent)}.lightbox[hidden]{display:none}body.has-lightbox{overflow:hidden}.lightbox__bar{display:grid;grid-template-columns:var(--col-label) minmax(0,1fr) auto auto auto;align-items:stretch;border-bottom:var(--rule)}.lightbox__bar>*{display:flex;align-items:center;min-width:0;margin:0;padding:var(--band-y) var(--pad-x);border-right:var(--rule)}.lightbox__bar>*:last-child{border-right:0}.lightbox__counter{justify-content:center;padding-inline:.5rem;font-size:var(--fs-label);letter-spacing:var(--track-label);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}.lightbox__close,.lightbox__zoom{justify-content:center;min-width:7rem;border:0;border-right:var(--rule);background:none;color:var(--accent);font-size:var(--fs-label);letter-spacing:var(--track-label);text-transform:none;cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease)}.lightbox__close:hover,.lightbox__zoom:hover{background:var(--accent);color:#fff}.lightbox__stage{display:flex;align-items:center;justify-content:center;min-height:0;overflow:auto;padding:var(--cell-y) calc(var(--pad-x) + 3.25rem);touch-action:pan-y pinch-zoom}.lightbox__img{flex:0 0 auto;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border:var(--rule);background:#fff;cursor:zoom-in}.lightbox.is-zoomed .lightbox__stage{align-items:flex-start;justify-content:flex-start;touch-action:auto}.lightbox.is-zoomed .lightbox__img{max-width:none;max-height:none;cursor:zoom-out}.lightbox__size{font-size:var(--fs-label);letter-spacing:var(--track-label);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;white-space:nowrap;color:var(--accent)}.lightbox__caption{font-size:var(--fs-label);letter-spacing:var(--track-label);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.lightbox__nav{position:absolute;top:calc(50% + var(--lightbox-bar-half, 0px));transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:2.75rem;height:2.75rem;padding:0;border:var(--rule);background:#fff;color:var(--accent);cursor:pointer;transition:background .18s var(--ease),color .18s var(--ease)}.lightbox__nav:hover{background:var(--accent);color:#fff}.lightbox__nav svg{display:block;width:1rem;height:1rem}.lightbox__nav--prev{left:.85rem}.lightbox__nav--next{right:.85rem}.lightbox :focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:760px){.lightbox__bar{grid-template-columns:auto minmax(0,1fr) auto auto}.lightbox__close,.lightbox__zoom{min-width:0}.lightbox__size{display:none}.lightbox__stage{padding:var(--cell-y) .5rem}.lightbox__nav{width:2.2rem;height:2.2rem}}.bio-page{display:grid;grid-template-columns:var(--col-label) minmax(0,22rem) 1fr;align-items:stretch;border-bottom:var(--rule);min-height:calc(100vh - var(--header-h) - 3rem)}.bio-page>*{border-right:var(--rule);padding:var(--cell-y) var(--pad-x) 2rem}.bio-page>*:last-child{border-right:0}.bio-portrait{display:flex;align-items:flex-start;justify-content:center;min-height:0;padding:var(--cell-y) var(--pad-x) 2rem;border:0;border-bottom:var(--rule);overflow:hidden;background:var(--mask)}.bio-portrait img{width:auto;height:auto;max-width:100%;max-height:min(72vh,560px);aspect-ratio:auto;object-fit:contain;border:var(--rule);box-shadow:none;transform:none;filter:none}.bio-copy h1{margin:0 0 .5rem;font-size:var(--fs-page-title);font-weight:var(--weight);line-height:.95;text-transform:none}.bio-copy .sub{margin:0 0 1.25rem;padding-bottom:.85rem;border-bottom:var(--rule);font-size:calc(.85rem + var(--type-nudge));font-weight:var(--weight);letter-spacing:.08em;text-transform:none}.contact-page{display:grid;grid-template-columns:var(--col-label) minmax(0,22rem) 1fr;border-bottom:var(--rule);min-height:calc(100vh - var(--header-h) - 3rem)}.contact-page>*{border-right:var(--rule);padding:var(--cell-y) var(--pad-x) 2rem}.contact-page>*:last-child{border-right:0}.contact-intro h1{margin:0 0 .5rem;font-size:var(--fs-page-title);font-weight:var(--weight);line-height:.95}.contact-intro .sub{margin:0 0 1.25rem;padding-bottom:.85rem;border-bottom:var(--rule);font-size:calc(.85rem + var(--type-nudge));font-weight:var(--weight);letter-spacing:.08em}.contact-intro .lede{margin:0;max-width:var(--measure);color:var(--ink);font-size:var(--fs-body);font-weight:var(--weight);line-height:1.5}.contact-form{display:grid;gap:1.1rem;max-width:48rem}.contact-form .hp{position:absolute;left:-9999px;opacity:0;pointer-events:none}.contact-form label{display:grid;gap:.4rem}.contact-form .label,.contact-setup .label{font-size:var(--fs-label);font-weight:var(--weight);letter-spacing:var(--track-label)}.contact-form input,.contact-form textarea{width:100%;border:var(--rule);background:#fff;color:var(--ink);padding:.85rem .9rem;font:inherit;font-size:calc(1rem + var(--type-nudge));font-weight:var(--weight);line-height:1.4;border-radius:0;outline:none;transition:border-color .16s var(--ease),background .16s var(--ease)}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--accent);background:#fff8f7}.contact-form textarea{resize:vertical;min-height:10rem}.contact-actions{display:grid;gap:.75rem;padding-top:.35rem}.contact-submit{justify-self:start;border:1px solid var(--accent);background:var(--accent);color:#fff;padding:.85rem 1.35rem;font:inherit;font-size:calc(.85rem + var(--type-nudge));font-weight:var(--weight);letter-spacing:.08em;cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease)}.contact-submit:hover:not(:disabled){background:#fff;color:var(--accent)}.contact-submit:disabled{opacity:.55;cursor:wait}.contact-status{margin:0;min-height:1.2em;font-size:calc(.85rem + var(--type-nudge));font-weight:var(--weight)}.contact-status[data-state=ok],.contact-status[data-state=error]{color:var(--accent)}.contact-status a{text-decoration:underline;text-underline-offset:.18em}.contact-setup{max-width:48rem}.contact-setup p{margin:0 0 .85rem;color:var(--ink);font-size:calc(1rem + var(--type-nudge));font-weight:var(--weight);line-height:1.5}.contact-setup ol{margin:0;padding-left:1.2rem;display:grid;gap:.55rem;color:var(--ink);font-size:calc(.95rem + var(--type-nudge));font-weight:var(--weight);line-height:1.45}.contact-setup code{font-size:calc(.85em + var(--type-nudge));font-weight:var(--weight)}.contact-setup a{text-decoration:underline;text-underline-offset:.18em}.site-footer{display:grid;grid-template-columns:1fr 1fr;font-size:var(--fs-label);font-weight:var(--weight);letter-spacing:var(--track-label);text-transform:var(--label-case)}.site-footer>*{padding:var(--band-y) var(--pad-x);border-right:var(--rule)}.site-footer>*:last-child{border-right:0;text-align:right}@media(min-width:761px){.bio-page>.bio-portrait{align-self:start;position:sticky;top:calc(var(--header-h) + 1rem);border-right:0}.bio-page>.bio-copy{border-left:var(--rule)}}@media(min-width:1101px){.project-layout>.project-copy{position:sticky;top:var(--copy-top, var(--header-h));border-right:0}.project-layout>.media-stack{border-left:var(--rule)}}@media(max-width:1100px)and (min-width:761px){.project-layout{grid-template-columns:var(--col-label) 1fr}.project-layout .media-stack{grid-column:1 / -1;border-right:0;border-top:var(--rule);padding-top:0}.feature-info{grid-template-columns:1fr}.feature-info .feature-title{grid-column:1;min-width:0}.feature-info .feature-label,.feature-info .feature-lede,.feature-info .feature-meta{display:none}.feature-info .feature-mobile-details{display:block;grid-column:1;border-right:0;border-top:var(--rule)}}@media(max-width:760px){:root{--header-h: auto}.site-header{flex-wrap:wrap;min-height:0}.brand-mark{flex:0 0 auto;align-self:stretch;height:calc(3.15rem + var(--type-nudge) * 1.4);min-height:calc(3.15rem + var(--type-nudge) * 1.4);padding:0 .16rem;overflow:hidden}.brand-mark span{font-size:calc(3.15rem * .78 + var(--type-nudge));padding:.04em 0 .24em}.header-cta{flex:0 0 auto;min-height:calc(3.15rem + var(--type-nudge) * 1.4);justify-content:center;padding:0 1.15rem;font-size:calc(.9rem + var(--type-nudge))}.primary-nav{flex:1 1 100%;justify-content:space-between;gap:.75rem;padding:0 1rem;border-top:var(--rule);overflow-x:auto}.primary-nav a{min-height:2.7rem;font-size:calc(.88rem + var(--type-nudge));white-space:nowrap}.header-locale{display:none}.feature-banner{aspect-ratio:unset;height:calc(100svh - 6.4rem - var(--feature-info-h) - 1.5rem);min-height:16rem}.feature-arrow{width:2.2rem;height:2.2rem}.feature-arrow svg{width:.8rem;height:.8rem}.feature-arrow--prev{left:.55rem}.feature-arrow--next{right:.55rem}.feature-info,.project-hero__info,.project-layout,.bio-page,.contact-page,.works-head,.pager{grid-template-columns:1fr}.feature-info .feature-title,.feature-info .feature-lede,.feature-info .feature-meta{grid-column:1 / -1}.feature-info .feature-label,.feature-info .feature-lede,.feature-info .feature-meta{display:none}.feature-info .feature-mobile-details{display:block;grid-column:1 / -1}.project-hero__info .feature-label,.project-hero__info .project-field{display:none}.project-hero__info .project-mobile-details{display:block}.feature-info>*,.project-hero__info>*,.project-layout>*,.bio-page>*,.contact-page>*,.works-head>*,.pager a{border-right:0;border-bottom:var(--rule)}.feature-title{font-size:clamp(calc(1.55rem + var(--type-nudge)),calc(7.2vw + var(--type-nudge)),calc(2.25rem + var(--type-nudge)));line-height:1.05;display:block}.feature-lede{font-size:calc(.98rem + var(--type-nudge));line-height:1.5}.feature-meta{gap:.35rem}.project-hero__info h1{font-size:clamp(calc(1.45rem + var(--type-nudge)),calc(7vw + var(--type-nudge)),calc(2.1rem + var(--type-nudge)));line-height:1.08;overflow-wrap:anywhere}.pager a:last-child{text-align:left}.feature-label,.side-label{writing-mode:horizontal-tb;transform:none;min-height:0;justify-content:flex-start;letter-spacing:.04em;font-size:calc(.8rem + var(--type-nudge));padding-top:.75rem;padding-bottom:.75rem}.project-hero__media{aspect-ratio:3 / 2;padding:0}.project-hero__media img{width:100%;height:100%;object-fit:cover}.project-layout .media-stack{order:-1;border-top:0}.works-head{grid-template-columns:minmax(0,1fr) auto}.works-head .label{display:none}.works-head .count{border-left:var(--rule)}.works-grid{grid-template-columns:1fr}.work-card,.work-card:nth-child(2n){border-right:0}.work-card__body{grid-template-columns:3.5rem minmax(0,1fr);min-height:0}.work-card:hover .work-card__media img{transform:none}.site-footer{grid-template-columns:1fr}.site-footer>*:last-child{text-align:left;border-top:var(--rule)}}@media(max-width:420px){.primary-nav{gap:.55rem}.primary-nav a{font-size:calc(.82rem + var(--type-nudge))}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
