/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--paper:#f5f5f3;--ink:#111;--muted:#9a9a96;--line:#111111d1;--blue:#173cd5}*{box-sizing:border-box}html{background:var(--paper);color:var(--ink);scroll-behavior:smooth}body{background:var(--paper);min-height:100vh;color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.18}a{color:inherit;text-decoration:none}button,input{color:inherit;font:inherit}button,a{-webkit-tap-highlight-color:transparent}img,video{max-width:100%;display:block}::selection{background:var(--blue);color:#fff}.site-header,.portfolio-header{z-index:20;letter-spacing:-.035em;justify-content:space-between;align-items:flex-start;gap:24px;min-height:80px;padding:14px 12px;font-size:clamp(15px,1.28vw,19px);display:flex;position:relative}.brand-link,.portfolio-header nav a{font-weight:700}.brand-link:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.portfolio-header a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.text-link:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.project-next a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.about-page a:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.header-muted,.portfolio-header__identity>span{color:var(--muted)}.eyebrow{letter-spacing:.03em;text-transform:uppercase;margin:0;font-family:Courier New,Courier,monospace;font-size:12px}.public-entry{grid-template-rows:auto 1fr auto;min-height:100svh;display:grid}.public-header{justify-content:flex-start}.public-entry__content{align-self:end;max-width:1180px;padding:40px 12px 7vh}.public-entry__content h1{letter-spacing:-.075em;max-width:900px;margin:18px 0 8px;font-size:clamp(66px,12.8vw,190px);font-weight:500;line-height:.82}.public-entry__intro{letter-spacing:-.04em;max-width:620px;margin:28px 0;font-size:clamp(20px,2.2vw,34px)}.text-link{border-bottom:1px solid;gap:10px;padding-bottom:3px;font-weight:700;display:inline-flex}.public-footer,.access-footer,.portfolio-footer{justify-content:space-between;align-items:flex-end;min-height:36px;padding:8px 12px;font-family:Courier New,Courier,monospace;font-size:12px;display:flex}.access-page{grid-template-rows:auto 1fr auto;min-height:100svh;display:grid}.access-header{justify-content:flex-start}.access-panel{grid-template-columns:minmax(280px,.7fr) minmax(420px,1.3fr);align-items:end;gap:7vw;padding:28px 12px 7vh;display:grid}.access-panel__intro h1{letter-spacing:-.07em;margin:10px 0 8px;font-size:clamp(50px,7.5vw,120px);font-weight:500;line-height:.88}.access-panel__intro>p:last-child{letter-spacing:-.035em;max-width:500px;margin:24px 0 0;font-size:clamp(18px,2vw,30px)}.access-form{border-top:1px solid var(--line);padding-top:9px}.access-form label{text-transform:uppercase;margin-bottom:30px;font-family:Courier New,Courier,monospace;font-size:12px;display:block}.access-form__row{border-bottom:1px solid var(--line);grid-template-columns:1fr auto;display:grid}.access-form input{letter-spacing:-.045em;background:0 0;border:0;border-radius:0;outline:0;width:100%;padding:9px 0 11px;font-size:clamp(28px,4vw,62px)}.access-form input::placeholder{color:#b5b5b1}.access-form input:focus-visible{box-shadow:0 2px 0 var(--blue)}.access-form button{cursor:pointer;background:0 0;border:0;align-self:end;padding:0 0 15px 28px;font-weight:700}.access-form button:hover{color:var(--blue)}.access-form button:disabled{cursor:wait;opacity:.5}.form-error{color:#b31515;margin:10px 0 0;font-size:13px}.portfolio-site{min-height:100svh}.portfolio-header{background:linear-gradient(to bottom, var(--paper) 78%, transparent);position:sticky;top:0}.portfolio-header__identity{gap:14px;display:flex}.portfolio-header nav{white-space:nowrap}.portfolio-header nav a:hover,.project-next a:hover,.about-page a:hover{color:var(--blue)}.portfolio-footer{z-index:10;position:relative}.intro-letter-backdrop{z-index:40;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#f5f5f329;place-items:start center;padding:22px 12px 16px;display:grid;position:fixed;inset:66px 0 0;overflow:auto}.intro-letter{border:1px solid var(--line);background:#fff;grid-template-rows:auto 1fr auto;width:min(730px,100vw - 24px);min-height:min(76svh,840px);max-height:calc(100svh - 104px);display:grid;overflow:hidden;box-shadow:0 18px 70px #11111124}.intro-letter__topline{justify-content:space-between;align-items:flex-start;gap:24px;padding:12px 12px 0;display:flex}.intro-letter__close{cursor:pointer;background:0 0;border:0;width:48px;height:48px;font-size:48px;font-weight:300;line-height:.8}:is(.intro-letter__close:hover,.intro-letter__close:focus-visible){color:var(--blue)}.intro-letter__close:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.intro-letter__copy{letter-spacing:-.025em;align-content:start;min-height:0;padding:48px clamp(28px,5vw,64px);font-size:clamp(15px,1.05vw,18px);line-height:1.2;display:grid;overflow-y:auto}.intro-letter__copy p{margin:0}.intro-letter__copy p+p{margin-top:1em}.intro-letter__copy a{color:var(--blue);text-underline-offset:.15em;text-decoration:underline}.intro-letter__hint{color:var(--muted);text-transform:uppercase;margin:0;padding:0 12px 12px;font-family:Courier New,Courier,monospace;font-size:11px}.work-layout{grid-template-columns:minmax(300px,34%) 1fr;gap:12px;min-height:calc(100svh - 116px);padding:0 12px;display:grid}.work-preview{background:var(--paper);align-self:start;height:calc(100svh - 124px);display:block;position:sticky;top:80px;overflow:hidden}.work-preview>img,.work-preview>video{object-fit:contain;object-position:center;width:100%;height:100%;animation:.25s ease-out both preview-in}.work-preview>video{background:var(--paper)}@keyframes preview-in{0%{opacity:0;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}.system-preview{background:var(--blue);color:#fff;letter-spacing:-.075em;align-content:space-between;width:100%;height:100%;padding:16px;font-size:clamp(50px,7.3vw,116px);font-weight:700;line-height:.74;display:grid;overflow:hidden}.system-preview>span:nth-child(2){margin-left:12%}.system-preview__grid{letter-spacing:0;border-top:1px solid #fff;border-left:1px solid #fff;grid-template-columns:repeat(3,1fr);font-family:Courier New,Courier,monospace;font-size:12px;font-weight:400;line-height:1;display:grid}.system-preview__grid i{border-bottom:1px solid #fff;border-right:1px solid #fff;min-height:54px;padding:7px;font-style:normal}.work-index{border-top:1px solid var(--line)}.work-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(250px,1.1fr) minmax(280px,.9fr);align-content:start;gap:12px;min-height:clamp(82px,10.8vh,112px);padding:8px 0 7px;transition:color .14s;display:grid;position:relative}:is(.work-row:hover,.work-row:focus-visible){color:var(--blue);outline:0}.work-row__number{font-family:Courier New,Courier,monospace;font-size:11px;position:absolute;bottom:7px;right:0}.work-row h2{letter-spacing:-.06em;margin:0;padding-right:8px;font-size:clamp(22px,2.15vw,36px);font-weight:600;line-height:.92}.work-row dl,.project-facts{letter-spacing:-.025em;margin:0;font-size:clamp(13px,1.25vw,18px)}.work-row dl>div,.project-facts>div{grid-template-columns:48px 1fr;gap:2px;display:grid}.work-row dt,.project-facts dt{font-family:Courier New,Courier,monospace;font-size:.82em}.work-row dd,.project-facts dd{margin:0;font-weight:700}.work-row__mobile-preview{display:none}.project-page{padding:0 12px}.project-gallery{column-count:4;column-gap:8px}.project-gallery--single{column-count:1;width:min(560px,42vw);margin:0 auto}.project-featured-media{width:min(1320px,82vw);margin:0 auto 8px}.project-featured-media .project-media{margin-bottom:0;display:block}.project-featured-media video{object-fit:contain;max-height:calc(100svh - 112px)}.project-media-groups{gap:24px;margin-bottom:24px;display:grid}.project-media-group__grid{grid-template-columns:repeat(auto-fit,minmax(min(180px,45vw),1fr));align-items:start;gap:8px;display:grid}.project-media-group .project-media{margin-bottom:0;display:block}.project-media{break-inside:avoid;vertical-align:top;width:100%;margin:0 0 8px;display:inline-block;overflow:hidden}.project-media:first-child:last-child{width:100%}.project-media img,.project-media video{object-fit:contain;border-radius:12px;width:100%;height:auto}.project-media video{background:#111}.project-video-trigger{cursor:zoom-in;background:#111;border:0;border-radius:12px;width:100%;padding:0;display:block}.project-video-trigger:focus-visible{outline:2px solid var(--blue);outline-offset:3px}.media-lightbox-backdrop{z-index:60;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#f5f5f333;place-items:center;padding:22px 12px 16px;display:grid;position:fixed;inset:66px 0 0;overflow:auto}.media-lightbox{border:1px solid var(--line);background:#fff;grid-template-rows:auto minmax(0,1fr) auto;width:min(1180px,100vw - 24px);max-height:calc(100svh - 104px);display:grid;overflow:hidden;box-shadow:0 18px 70px #1111112e}.media-lightbox__topline{justify-content:space-between;align-items:flex-start;gap:24px;padding:12px 12px 10px;display:flex}.media-lightbox__close{cursor:pointer;background:0 0;border:0;width:48px;height:48px;font-size:48px;font-weight:300;line-height:.8}:is(.media-lightbox__close:hover,.media-lightbox__close:focus-visible){color:var(--blue)}.media-lightbox__close:focus-visible{outline:2px solid var(--blue);outline-offset:2px}.media-lightbox>video{object-fit:contain;background:#111;width:100%;max-height:calc(100svh - 190px)}.media-lightbox__caption{margin:0;padding:10px 12px 12px;font-family:Courier New,Courier,monospace;font-size:11px}.project-media figcaption{padding:6px 2px 0;font-family:Courier New,Courier,monospace;font-size:11px}.project-system-gallery{background:var(--blue);color:#fff;border-top:1px solid #fff;border-left:1px solid #fff;grid-template-columns:repeat(3,1fr);min-height:calc(100svh - 106px);display:grid}.project-system-card{border-bottom:1px solid #fff;border-right:1px solid #fff;flex-direction:column;justify-content:space-between;min-height:30vh;padding:10px;display:flex}.project-system-card span{font-family:Courier New,Courier,monospace;font-size:12px}.project-system-card strong{letter-spacing:-.055em;font-size:clamp(24px,3vw,48px);line-height:.9}.project-information{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(180px,.7fr) minmax(220px,.85fr) minmax(560px,2.3fr);gap:14px;margin-top:8px;padding:10px 0 48px;display:grid}.project-title-block h1{letter-spacing:-.065em;margin:8px 0 0;font-size:clamp(28px,3.2vw,50px);font-weight:600;line-height:.86}.project-facts>div{grid-template-columns:64px 1fr;margin-bottom:5px}.project-description{letter-spacing:-.025em;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;font-size:clamp(14px,1.15vw,18px);display:grid}.project-description p{margin:0}.project-statement{font-weight:700}.project-next{grid-template-columns:1fr 2fr;align-content:end;gap:14px;min-height:170px;padding:40px 0 14px;display:grid}.project-next>span{text-transform:uppercase;font-family:Courier New,Courier,monospace;font-size:12px}.project-next a{letter-spacing:-.06em;font-size:clamp(30px,4vw,58px);font-weight:600;line-height:.9}.about-page{padding:0 12px 60px}.about-intro{max-width:1300px;min-height:55svh;padding-top:9vh}.about-intro h1{letter-spacing:-.065em;max-width:1250px;margin:20px 0 0;font-size:clamp(48px,7.2vw,112px);font-weight:500;line-height:.9}.about-copy{border-top:1px solid var(--line);letter-spacing:-.04em;grid-template-columns:1fr 1fr;gap:22px;padding:12px 0 70px 34%;font-size:clamp(20px,2.45vw,38px);display:grid}.about-copy p{margin:0}.about-table{border-top:1px solid var(--line);grid-template-columns:34% 1fr;gap:12px;padding:10px 0 80px;display:grid}.about-table__label,.about-columns h2{text-transform:uppercase;font-family:Courier New,Courier,monospace;font-size:12px;font-weight:400}.about-table h2{letter-spacing:-.055em;max-width:920px;margin:0;font-size:clamp(30px,4.4vw,70px);font-weight:600;line-height:.92}.about-table .meta{color:var(--muted);margin:8px 0 38px}.about-table ul{max-width:920px;margin:0;padding:0;font-size:clamp(16px,1.65vw,24px);list-style:none}.about-table li{border-top:1px solid #1113;padding:7px 0}.about-columns{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:12px;padding-top:10px;display:grid}.about-columns>div{padding-right:8%}.about-columns p{letter-spacing:-.025em;margin:28px 0 0;font-size:clamp(16px,1.5vw,22px)}@media (max-width:1200px){.project-gallery{column-count:3}.project-gallery--single{column-count:1;width:min(520px,72vw)}}@media (max-width:900px){.portfolio-header{align-items:flex-start}.portfolio-header__identity{gap:1px;display:grid}.portfolio-header__identity>span{max-width:300px;font-size:12px}.work-layout{min-height:auto;display:block}.work-preview{display:none}.work-row{grid-template-columns:1fr;gap:8px;min-height:0;padding-bottom:8px;display:grid}.work-row h2{max-width:85%;font-size:clamp(24px,5.8vw,42px)}.work-row dl{max-width:560px}.work-row__number{top:13px;bottom:auto}.work-row__mobile-preview{background:var(--paper);height:min(72svh,740px);display:block;overflow:hidden}.work-row__mobile-preview>img,.work-row__mobile-preview>video,.work-row__mobile-preview>.system-preview{object-fit:contain;object-position:center;width:100%;height:100%}.work-row__mobile-preview>video{background:var(--paper)}.project-information{grid-template-columns:1fr 1fr}.project-gallery{column-count:2}.project-gallery--single{column-count:1;width:min(520px,72vw)}.project-description{grid-column:1/-1}.about-copy{padding-left:0}}@media (max-width:650px){body{font-size:15px}.site-header,.portfolio-header{min-height:72px;padding:10px 8px}.portfolio-header{gap:8px}.portfolio-header__identity>span{display:none}.portfolio-header nav{font-size:14px}.intro-letter-backdrop{padding:10px 8px 8px;inset:58px 0 0}.intro-letter{width:100%;min-height:calc(100svh - 76px);max-height:calc(100svh - 76px)}.media-lightbox-backdrop{padding:10px 8px 8px;inset:58px 0 0}.media-lightbox{width:100%;max-height:calc(100svh - 76px)}.media-lightbox>video{max-height:calc(100svh - 154px)}.intro-letter__copy{padding:32px 22px;font-size:16px;line-height:1.22}.public-entry__content,.access-panel,.project-page,.about-page{padding-left:8px;padding-right:8px}.public-entry__content h1{font-size:clamp(60px,23vw,104px)}.public-footer,.access-footer,.portfolio-footer{padding-left:8px;padding-right:8px}.access-panel{flex-direction:column;justify-content:flex-end;align-items:stretch;gap:13vh;display:flex}.access-panel__intro h1{font-size:clamp(58px,20vw,92px)}.access-form label{margin-bottom:14px}.access-form input{font-size:30px}.work-layout{padding:0 8px}.work-row__mobile-preview{height:62svh}.project-gallery{column-count:2;column-gap:8px}.project-gallery--single{column-count:1;width:100%}.project-featured-media{width:100%}.project-media,.project-media:first-child:last-child{min-height:0;margin-bottom:8px}.project-system-gallery{grid-template-columns:repeat(2,1fr)}.project-system-card{min-height:26vh}.project-information{padding-bottom:40px;display:block}.project-title-block,.project-facts,.project-description{margin-bottom:32px}.project-description{display:block}.project-description p+p{margin-top:18px}.project-next{display:block}.project-next>span{margin-bottom:18px;display:block}.about-intro{min-height:46svh;padding-top:5vh}.about-intro h1{font-size:clamp(46px,14vw,76px)}.about-copy,.about-table,.about-columns{display:block}.about-copy{font-size:24px}.about-copy p+p{margin-top:28px}.about-table__label,.about-columns h2{margin-bottom:24px}.about-columns>div{border-top:1px solid #1113;padding:10px 0 42px}.about-columns p{margin-top:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
