/* A quieter, sharper material study and a coherent finish across the site. */
.header .private-link{border:1px solid #de202e;border-radius:999px;padding:9px 18px!important;background:#dd202b0c;box-shadow:0 0 19px #e2202c1c;white-space:nowrap}
.header .private-link:before{display:none}.header .private-link:hover{background:#de202e17;box-shadow:0 0 24px #e2202c38}
.header nav:first-of-type{gap:clamp(12px,2vw,30px)}
.header nav:first-of-type>a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 20px;border:1px solid #ffffff24;border-radius:999px;background:#ffffff24;transition:background .3s,border-color .3s,box-shadow .3s}
.header nav:first-of-type>a::after{display:none}
.header.ink nav:first-of-type>a,.collection .header nav:first-of-type>a{background:#dedcd9;border-color:#d4d0ca}
body.agency-dark .header nav:first-of-type>a{background:#ffffff20;border-color:#ffffff24}
.header nav:first-of-type>a:hover,.header nav:first-of-type>a:focus-visible{border-color:#de202e;background:#de202e17;box-shadow:0 0 20px #e2202c24}
.header nav:first-of-type>a[aria-current=page]{border-color:#de202e}
@media(min-width:701px) and (max-width:1100px){.header nav:first-of-type{gap:10px;font-size:12px}.header nav:first-of-type>a{padding:9px 12px}}
.manifesto-stage .study-plan{width:min(47vw,850px);height:40svh;right:2vw;bottom:2svh;opacity:0;transform:none;transition:opacity .6s}
.manifesto-stage .study-plan.is-drawing{opacity:1;transition-delay:1s}
.study-plan .reference-plan{width:100%;height:100%;overflow:visible}
.study-plan .reference-plan image{opacity:1;filter:none}
.study-plan .reference-plan .plan-branch{fill:none!important;stroke:#fff!important;stroke-width:94!important;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;animation:none}
.study-plan.is-drawing .reference-plan .plan-branch{animation:reference-branch 3.3s cubic-bezier(.18,.65,.22,1) calc(1s + var(--branch)*.13s) forwards}
.study-plan .plan-complete{fill:white;opacity:0}
.study-plan.is-drawing .plan-complete{animation:reference-complete 1s 3.4s forwards}
@keyframes reference-branch{to{stroke-dashoffset:0}}@keyframes reference-complete{to{opacity:1}}
.manifesto-stage .study-detail{height:36svh;width:100%;right:0;bottom:3svh}
.study-detail .precision-joint{width:min(39vw,620px);height:auto;aspect-ratio:3/2;right:4vw;bottom:0}
.study-detail .joint-piece{inset:0;width:100%;height:100%;object-fit:contain;filter:none;opacity:0;transition:none}
.study-detail .joint-wood{clip-path:inset(0 50.65% 0 0);transform:translateX(-17%)}
.study-detail .joint-stone{clip-path:inset(0 0 0 51.04%);transform:translateX(17%)}
.study-detail .joint-brass{clip-path:inset(0 48.96% 0 49.35%);transform:translateY(-18%);z-index:4}
.study-detail.is-drawing .joint-piece{opacity:1;transform:translate(0,0);transition:opacity .8s 1s,transform 3.1s 1.2s cubic-bezier(.18,.72,.12,1)}
.study-detail.is-drawing .joint-brass{transition-delay:1s,1.85s}
.study-detail .precision-joint:after{inset:14% 47.5% 12%;background:linear-gradient(160deg,transparent,#fff9,transparent);transform:translateY(-40%)}
.study-detail.is-drawing .precision-joint:after{animation:floor-glint 1.5s 4.5s both}
@keyframes floor-glint{0%{opacity:0;transform:translateY(-40%)}40%{opacity:.65}100%{opacity:0;transform:translateY(40%)}}
.study-detail .invisible-door{left:4vw;bottom:0;width:min(35vw,540px);height:auto;aspect-ratio:3/2;perspective:1200px;opacity:0;transform:translateY(10px);transition:opacity 1s,transform 1.3s}
.study-detail.is-drawing .invisible-door{opacity:1;transform:none;transition-delay:1s}
.invisible-door .door-wall{background:url('/assets/concealed-walnut.webp') center/100% 100%;opacity:1;mask-image:none;border-radius:2px;box-shadow:0 12px 28px #24180d19}
.invisible-door .door-leaf{left:35.22%;top:5.66%;width:29.56%;height:90.53%;opacity:1;background:url('/assets/concealed-walnut.webp') 50% 59.77%/338.3% 110.46%;border:0;transform-origin:left center;backface-visibility:hidden;transition:transform 2.2s cubic-bezier(.23,.68,.16,1),box-shadow 2.2s}
.invisible-door .door-leaf:after{display:none}
.study-detail .invisible-door:before{left:35.22%;top:5.66%;width:29.56%;height:90.53%;background:linear-gradient(90deg,#302017 6%,#ba7f41 55%,#ffe6ab);opacity:0;z-index:1;transition:opacity 1.8s}
.invisible-door .door-leaf{z-index:2}
.study-detail .invisible-door:hover:before,.study-detail .invisible-door:focus-visible:before,.study-detail .invisible-door.is-open:before{opacity:1}
.study-detail .invisible-door:hover .door-leaf,.study-detail .invisible-door:focus-visible .door-leaf,.study-detail .invisible-door.is-open .door-leaf{transform:rotateY(-58deg);box-shadow:18px 0 28px -10px #ffcf8980}
.study-detail .invisible-door:after{right:37%;top:52%;z-index:4;background:#f8dec0;box-shadow:0 0 10px #ffd394;width:4px;height:4px;border-radius:50%}
.portfolio-book-stage{background:#171512 url('/assets/lacquered-table.webp') center/cover;color:#f7f3eb;isolation:isolate}
.portfolio-book-stage:before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0008,transparent 40%,#0004);z-index:-1}
.portfolio-book-stage .folio-shell{width:min(87vw,1210px)!important;transform:perspective(2200px) rotateX(8deg) rotateY(-15deg) rotateZ(-2deg)!important;transform-origin:center;filter:drop-shadow(15px 24px 13px #0009) drop-shadow(0 3px 2px #0008)}
.folio-shell .folio-page{color:#28241f;border-radius:3px 8px 8px 3px;overflow:hidden}
.folio-shell .folio-cover{border-radius:5px 14px 14px 5px;border:1px solid #8c8170;box-shadow:inset 3px 0 8px #211b1459,inset 0 1px 2px #c7bca880,inset 0 0 0 3px #d8cdb315;color:#f1e7d5}
.folio-cover-content>span{color:#d6cbbb;text-shadow:0 1px 1px #fff4,0 -1px 1px #1b130d;letter-spacing:.06em}
.portfolio-book-stage .folio-heading h2{color:#faf6ef}.portfolio-book-stage .folio-controls button{color:#eee8df;border-color:#eee8df70;background:transparent}.portfolio-book-stage .folio-reading-copy{color:#e4ddd2}
.agency-city-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;align-self:center;grid-column:1}
.agency-city-card{margin:0;min-width:0;position:relative;overflow:hidden;background:#171717;aspect-ratio:1.45}
.agency-city-card:first-child{grid-column:1/-1;aspect-ratio:2.65}
.agency-city-card img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.72)}
.agency-city-card figcaption{position:absolute;inset:auto 0 0;padding:30px 12px 12px;background:linear-gradient(transparent,#000b);color:#fff;font-size:clamp(12px,1.1vw,18px);letter-spacing:.03em}
@media(max-width:700px){.header .private-link{padding:8px 14px!important}.manifesto-stage .study-plan{width:88vw;height:29svh;bottom:4svh;right:3vw}.manifesto-stage .study-detail{height:26svh;bottom:5svh}.study-detail .invisible-door{width:43vw;left:3vw;bottom:2svh}.study-detail .precision-joint{width:50vw;right:1vw}.portfolio-book-stage .folio-shell{width:91vw!important;transform:perspective(1500px) rotateX(5deg) rotateY(-10deg) rotateZ(-1deg)!important}.agency-city-grid{gap:8px;grid-column:1/-1}.agency-city-card{aspect-ratio:2}.agency-city-card:first-child{aspect-ratio:3.5}}
@media(prefers-reduced-motion:reduce){.portfolio-book-stage .folio-shell{transform:none!important}.study-plan .reference-plan .plan-branch{stroke-dashoffset:0;animation:none!important}.study-plan .plan-complete{opacity:1;animation:none!important}.study-detail .invisible-door,.study-detail .joint-piece{transition:none!important}.invisible-door:after{animation:none!important}}
.invisible-door .door-wall,.invisible-door .door-leaf{background-color:var(--paper,#f1f0ed)}
.mobile-menu .private-link{width:max-content;max-width:100%;padding:12px 22px;border:1px solid #de202e;border-radius:999px;background:#de202e0a;font-size:clamp(23px,6vw,42px)}
@media(min-width:701px) and (max-width:1000px){.header nav:last-of-type{gap:12px;padding-right:58px}.header .private-link{padding:8px 10px!important;font-size:11px}.header .contact-link{font-size:11px}.header nav{gap:18px}}

/* Give the expanded navigation room on small laptops and tablets. */
@media(min-width:701px) and (max-width:1100px){
 .header,.project-detail .header{display:grid;grid-template-columns:64px minmax(0,1fr) 64px;column-gap:8px;height:calc(78px + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(12px,env(safe-area-inset-right,0px)) 0 max(12px,env(safe-area-inset-left,0px));align-items:center}
 .header nav{display:none}
 .header .brand,.project-detail .header .brand{position:static;transform:none;grid-column:2;grid-row:1;justify-self:center;align-items:center;text-align:center;max-width:100%;font-size:clamp(23px,6.9vw,29px);white-space:nowrap}
 .header .menu-toggle,.project-detail .header .menu-toggle{position:static;grid-column:1;grid-row:1;order:0;display:flex;align-items:center;justify-content:center;width:64px;min-height:48px;height:auto;padding:0;margin:0;background:transparent;border-radius:0;color:inherit;font-size:14px;white-space:nowrap}
 .header .menu-toggle::before,.project-detail .header .menu-toggle::before{content:none}
 .header .language-menu{position:relative;grid-column:3;grid-row:1;top:auto;right:auto;justify-self:end;width:64px;font-size:14px}
 .header .language-menu summary{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:48px;width:64px;padding:0;text-align:center}
 .header .language-options{top:calc(100% + 8px);right:0}
 .header .mobile-return{display:none}
}
