.portfolio-page,.project-page{--bg:#171717;--ink:#ede9df;--muted:#a6a39c;--copper:#d0a783;--line:#ffffff20}.project-wrap{width:min(1320px,calc(100% - 112px));margin-inline:auto}.project-kicker{font:500 10px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--copper);margin:0}.portfolio-intro{padding:92px 0 75px;display:grid;grid-template-columns:1.5fr .7fr;align-items:end;gap:70px}.portfolio-intro h1,.project-not-found h1{font:normal clamp(65px,7.2vw,108px)/1.03 Georgia,serif;letter-spacing:-.055em;margin:24px 0 0}.portfolio-intro h1 em,.project-outro h2 em,.project-empty h2 em,.project-section-heading h2 em,.project-not-found h1 em{font-weight:400;color:var(--copper)}.portfolio-intro-note{justify-self:end;max-width:285px}.portfolio-star{font-size:42px;color:var(--copper)}.portfolio-intro-note p{font-size:16px;line-height:1.85;color:var(--muted);margin:21px 0 15px}.project-text-link{display:inline-flex;align-items:center;gap:24px;min-height:44px;border-bottom:1px solid var(--line);font-size:12px;line-height:1.6}.project-text-link:hover{color:var(--copper);border-color:var(--copper)}.project-browser{scroll-margin-top:110px}.project-toolbar{display:grid;grid-template-columns:1fr minmax(230px,330px);gap:35px;align-items:end;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.project-category-filters{display:flex;flex-wrap:wrap;gap:9px}.project-category-filters button{border:1px solid var(--line);color:var(--muted);background:transparent;min-height:44px;padding:10px 18px;font-size:12px;border-radius:0;transition:background .2s,color .2s}.project-category-filters button:hover{border-color:var(--copper);color:var(--ink)}.project-category-filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:var(--bg)}.project-search-label{display:block;font-size:10px;letter-spacing:.07em;color:var(--muted);margin-bottom:9px}.project-search-field{display:flex;align-items:center;gap:12px;min-height:47px;border-bottom:1px solid #ffffff40}.project-search-field>span{font-size:25px;color:var(--copper)}.project-search input{width:100%;min-width:0;color:var(--ink);background:none;border:0;padding:10px 0;font-size:14px;outline-offset:2px}.project-search input::placeholder{color:#85847e}.project-search input::-webkit-search-cancel-button{display:none}.project-search-field button{border:0;background:none;color:var(--ink);min-width:44px;min-height:44px;font-size:21px}.project-results-bar{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 0;color:var(--muted);font-size:10px;letter-spacing:.04em}.project-results-bar p{margin:0}.project-view-switch{display:flex;gap:12px}.project-view-switch button{display:flex;align-items:center;gap:7px;min-height:44px;background:none;color:var(--muted);border:0;padding:0 5px;font-size:10px}.project-view-switch button>span{font-size:19px}.project-view-switch button[aria-pressed=true]{color:var(--copper)}.project-results{display:grid;gap:0}.portfolio-card{display:grid;grid-template-columns:1.1fr 1fr;gap:55px;padding:42px 0;border-bottom:1px solid var(--line);align-items:center;min-width:0}.portfolio-card:first-child{padding-top:16px}.portfolio-cover{position:relative;display:block;aspect-ratio:16/10;background:#222322;border:1px solid var(--line);overflow:hidden}.portfolio-cover img{width:100%;height:100%;object-fit:contain;display:block;transition:filter .3s;filter:saturate(.8)}.portfolio-cover:hover img{filter:saturate(1)}.portfolio-cover .cover-arrow{position:absolute;right:15px;bottom:15px;width:43px;height:43px;display:grid;place-items:center;background:var(--bg);border:1px solid #d0a78366;color:var(--copper);font-size:23px}.portfolio-cover-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font:normal 52px Georgia,serif;color:var(--copper)}.portfolio-card-content{min-width:0;padding:12px 0}.portfolio-card-meta{display:flex;align-items:center;gap:15px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.portfolio-card-meta>span:first-child{color:var(--copper);font-family:ui-monospace,monospace}.portfolio-card h2{font:normal clamp(35px,3.7vw,59px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:22px 0;overflow-wrap:anywhere}.portfolio-card h2 a:hover{color:var(--copper)}.portfolio-card-description{font-size:16px;line-height:1.85;color:var(--muted);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin:0 0 24px}.portfolio-card-tags{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:26px}.portfolio-card-tags span,.project-stack span{display:inline-block;border:1px solid var(--line);padding:5px 10px;font-size:10px;line-height:1.6;color:var(--muted)}.project-results[data-view=grid]{grid-template-columns:1fr 1fr;gap:50px 35px}.project-results[data-view=grid] .portfolio-card{display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:0 0 30px}.project-results[data-view=grid] .portfolio-card h2{font-size:42px;margin:16px 0}.project-results[data-view=grid] .portfolio-cover{aspect-ratio:16/10}.project-results[data-view=grid] .portfolio-card-description{-webkit-line-clamp:3}.project-results[data-view=grid] .portfolio-card-content{display:flex;flex-direction:column;align-items:flex-start;flex:1}.project-results[data-view=grid] .portfolio-card-content>.project-text-link{margin-top:auto}.project-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;background:var(--copper);border:1px solid var(--copper);color:var(--bg);font-size:12px;font-weight:600;padding:14px 20px;line-height:1.7}.project-button:hover{background:#e2bfa0}.project-empty{padding:70px 24px 95px;text-align:center;border-bottom:1px solid var(--line)}.project-empty>span{font-size:35px;color:var(--copper)}.project-empty h2{font:normal 55px/1.1 Georgia,serif;letter-spacing:-.04em;margin:24px 0}.project-empty p{font-size:16px;color:var(--muted);margin-bottom:30px}.project-outro{text-align:center;padding:90px 0 110px}.project-outro h2{font:normal clamp(42px,4.6vw,74px)/1.12 Georgia,serif;letter-spacing:-.04em;margin:25px 0 35px}.project-noscript{font-size:16px;color:var(--muted);padding-block:50px}.project-noscript a{text-decoration:underline}.project-breadcrumbs{display:flex;gap:18px;align-items:center;flex-wrap:wrap;padding:27px 0 35px;font-size:11px;color:var(--muted)}.project-breadcrumbs a{display:inline-flex;align-items:center;min-height:44px}.project-breadcrumbs a:hover{color:var(--copper)}.project-detail-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px;padding:10px 0 50px}.project-detail-heading h1{font:normal clamp(58px,7vw,106px)/1.06 Georgia,serif;letter-spacing:-.055em;margin:24px 0 0;overflow-wrap:anywhere}.project-detail-heading>.project-button{margin-bottom:5px;flex:none}.project-external{position:relative;flex-wrap:wrap;gap:8px 18px}.project-external .project-new-tab{display:block;width:100%;font-weight:400;font-size:9px;line-height:1.4;opacity:.75;text-align:center}.project-external.project-text-link{max-width:180px;padding-bottom:11px}.project-external.project-text-link .project-new-tab{text-align:left;font-size:9px;margin-top:-4px}.project-detail-art{margin:0;background:#20211f;border:1px solid var(--line);aspect-ratio:16/8.5;display:flex;align-items:center;justify-content:center;overflow:hidden}.project-detail-art img{width:100%;height:100%;object-fit:contain}.project-detail-body{display:grid;grid-template-columns:280px 1fr;gap:100px;align-items:start;padding:75px 0 95px;border-bottom:1px solid var(--line)}.project-facts{display:flex;flex-direction:column;gap:30px}.project-facts>div>p{font-size:16px;color:var(--ink);margin:13px 0 0}.project-stack{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.project-stack span{font-size:11px;padding:6px 12px}.project-description h2{font:normal 51px/1.1 Georgia,serif;letter-spacing:-.04em;margin:20px 0 30px}.project-description-text p,#project-description-text p{font-size:18px;line-height:1.9;color:#c9c7bf;margin:0 0 1.45em;white-space:pre-line;overflow-wrap:anywhere}.project-description-text p:last-child,#project-description-text p:last-child{margin-bottom:0}.project-related{padding:70px 0 80px;border-bottom:1px solid var(--line)}.project-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:40px}.project-section-heading h2{font:normal 54px/1.1 Georgia,serif;letter-spacing:-.04em;margin:20px 0 0}.project-news-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px}.project-news-card{min-width:0}.project-news-image{aspect-ratio:16/9;background:#222322;border:1px solid var(--line);overflow:hidden;margin-bottom:22px}.project-news-image img{width:100%;height:100%;object-fit:contain}.project-news-card time{display:block;font-size:10px;color:var(--copper);letter-spacing:.08em;margin-bottom:14px}.project-news-card h3{font:normal 30px/1.25 Georgia,serif;letter-spacing:-.025em;margin:0 0 17px}.project-news-card h3 a:hover{color:var(--copper)}.project-news-card p{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 20px}.project-next{display:flex;gap:50px;justify-content:space-between;align-items:flex-end;padding:55px 0 90px}.project-next>div>a{display:flex;align-items:center;gap:35px;min-height:70px}.project-next h2{font:normal clamp(38px,4vw,64px)/1.1 Georgia,serif;letter-spacing:-.04em;margin:20px 0 0;overflow-wrap:anywhere}.project-next>div>a>span{font-size:40px;color:var(--copper);margin-top:15px}.project-next>div>a:hover h2{color:var(--copper)}.project-next>.project-text-link{flex-shrink:0}.project-not-found{padding:90px 0 120px}.project-not-found>p:not(.project-kicker){font-size:18px;color:var(--muted);max-width:480px;margin:30px 0;line-height:1.8}
@media(max-width:1050px){.project-wrap{width:calc(100% - 64px)}.portfolio-intro{gap:45px;grid-template-columns:1.5fr .8fr}.portfolio-intro h1{font-size:78px}.portfolio-card{gap:35px}.project-detail-body{grid-template-columns:230px 1fr;gap:55px}.project-detail-heading{gap:25px}.project-detail-heading h1{font-size:74px}.project-detail-heading>.project-button{font-size:10px;padding-inline:15px}.project-description h2{font-size:45px}}
@media(max-width:760px){.project-wrap{width:calc(100% - 40px)}.portfolio-intro{display:block;padding:50px 0 42px}.portfolio-intro h1{font-size:clamp(53px,10.6vw,78px);margin-top:20px}.portfolio-intro-note{display:grid;grid-template-columns:32px 1fr;gap:0 20px;max-width:none;margin-top:31px}.portfolio-star{font-size:33px}.portfolio-intro-note p{margin:0;font-size:16px;line-height:1.75;max-width:450px}.portfolio-intro-note .project-text-link{grid-column:2;justify-self:start;margin-top:12px}.project-toolbar{grid-template-columns:1fr;gap:22px;padding:22px 0}.project-category-filters{gap:8px}.project-category-filters button{font-size:12px;padding-inline:15px}.project-search input{font-size:16px}.project-search-label{font-size:11px}.project-results-bar{padding:17px 0;font-size:10px}.project-view-switch{gap:10px}.project-view-switch button{font-size:9px}.project-view-switch button>span{font-size:18px}.project-results,.project-results[data-view=grid]{display:grid;grid-template-columns:1fr;gap:0}.portfolio-card,.project-results[data-view=grid] .portfolio-card{display:flex;flex-direction:column;align-items:stretch;gap:20px;padding:32px 0}.portfolio-card:first-child,.project-results[data-view=grid] .portfolio-card:first-child{padding-top:8px}.portfolio-cover,.project-results[data-view=grid] .portfolio-cover{aspect-ratio:16/10}.portfolio-card-content{padding:0}.portfolio-card h2,.project-results[data-view=grid] .portfolio-card h2{font-size:43px;margin:16px 0 19px;line-height:1.12}.portfolio-card-description{font-size:16px;line-height:1.8;margin-bottom:20px;-webkit-line-clamp:4}.portfolio-card-tags{margin-bottom:20px}.portfolio-card-tags span{font-size:11px;padding:6px 10px}.portfolio-card .project-text-link{font-size:13px;min-height:48px}.project-empty{padding:45px 0 65px}.project-empty h2{font-size:45px}.project-empty p{font-size:16px}.project-outro{padding:60px 0 75px}.project-outro h2{font-size:clamp(38px,8.6vw,59px);margin-top:23px}.project-outro .project-kicker{font-size:9px}.project-breadcrumbs{gap:12px;padding:18px 0 24px;font-size:10px}.project-detail-heading{display:block;padding:0 0 30px}.project-detail-heading h1{font-size:clamp(48px,11.2vw,74px);margin-top:19px;line-height:1.08}.project-detail-heading>.project-button{font-size:12px;margin-top:28px;padding:13px 20px}.project-detail-art{aspect-ratio:16/10}.project-detail-body{display:flex;flex-direction:column-reverse;gap:35px;padding:42px 0 50px}.project-description h2{font-size:43px;margin:17px 0 25px}#project-description-text p{font-size:17px;line-height:1.9}.project-facts{border-top:1px solid var(--line);padding-top:28px;width:100%;display:grid;grid-template-columns:1fr 1fr;gap:25px}.project-facts>div>p{font-size:16px}.project-stack span{font-size:10px;padding:5px 9px}.project-facts>.project-text-link{grid-column:1/-1;justify-self:start}.project-related{padding:44px 0 50px}.project-section-heading{display:block;margin-bottom:28px}.project-section-heading h2{font-size:43px;margin-top:18px}.project-section-heading>.project-text-link{margin-top:20px}.project-news-list{grid-template-columns:1fr;gap:38px}.project-news-card h3{font-size:29px}.project-news-card p{font-size:16px}.project-news-image{margin-bottom:20px}.project-next{display:block;padding:42px 0 60px}.project-next h2{font-size:40px}.project-next>div>a{gap:25px;justify-content:space-between}.project-next>div>a>span{font-size:34px}.project-next>.project-text-link{margin-top:25px}.project-not-found{padding:65px 0 90px}.project-not-found h1{font-size:62px}.project-not-found>p:not(.project-kicker){font-size:16px}}
@media(max-width:380px){.portfolio-intro h1{font-size:51px}.project-card h2{font-size:39px}.project-kicker{font-size:9px}.project-view-switch button{font-size:8px}.project-results-bar{gap:8px}.project-detail-heading h1{font-size:46px}.project-news-card h3{font-size:27px}}
@media(prefers-reduced-motion:reduce){.portfolio-page *,.project-page *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.project-news-image{display:block}.project-detail-art[hidden],.project-related[hidden],.project-next[hidden],.project-empty[hidden],.project-not-found[hidden],.project-detail[hidden]{display:none}.portfolio-page .skip-link,.project-page .skip-link{background:var(--ink);color:var(--bg)}@media(max-width:760px){.project-view-switch{display:none}.project-results-bar{min-height:60px}.portfolio-card-content>.project-text-link{min-height:48px}}
