.site-header{padding:28px 3vw;border-bottom:1px solid var(--line)}.brand-name{font-size:23px;letter-spacing:-1px;font-weight:500}.brand-dot{color:var(--accent)}.primary-nav{font-size:10px;gap:25px}.doors-main{padding:0 18px}.door-panels{display:flex;gap:7px;height:calc(100svh - 265px);min-height:470px;max-height:850px}.door{position:relative;isolation:isolate;flex:1;min-width:0;overflow:hidden;color:#fff;background:#1a1b19;transition:flex .6s}.door:after{position:absolute;z-index:0;inset:0;content:'';background:linear-gradient(180deg,#0004 0%,transparent 30%,#0002 50%,#000d 100%);pointer-events:none}.door>img{width:100%;height:100%;object-fit:cover;transition:transform .8s,filter .8s}.door-0>img{object-position:51% 50%}.door-1>img{object-position:51% 40%}.door-2>img{object-position:54% 50%}.door-3>img{object-position:48% 50%}.door-bottom{position:absolute;z-index:1;bottom:24px;left:22px;right:15px}.door-bottom>span{font-size:8px;letter-spacing:1px;color:#e0dfd5}.door-bottom h2{font:normal clamp(24px,2.7vw,44px)/1.05 Georgia,serif;letter-spacing:-.9px;margin:12px 0 14px;max-width:250px}.door-bottom p{margin:0;font-size:10px;opacity:.8}.door-bottom p>span{margin-left:15px}.door:hover,.door:focus-visible{flex:1.17}.door:hover>img{transform:scale(1.04)}body[data-view=home] .site-footer{display:none}body[data-view=home]{padding-bottom:18px}.collection-main{padding:35px 4vw 0;max-width:1800px;margin:auto}.collection-heading{padding:10px 0 30px}.collection-heading h1{font:normal clamp(48px,6vw,88px)/1 Georgia,serif;letter-spacing:-3px}.four-doors-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px}.four-doors-grid .work-open{padding:24px;background:var(--mat);transition:background .2s}.four-doors-grid .work-open:hover{background:var(--mat-hover)}.four-doors-grid .work img{height:auto;aspect-ratio:4/5;object-fit:contain}.four-doors-grid .work figcaption{font-size:10px;color:var(--muted);padding:13px 0}.next-collection h2{font-family:Georgia,serif;letter-spacing:-2px}.site-footer{padding-left:4vw;padding-right:4vw}.site-footer>a:first-child{letter-spacing:-.5px}@media(max-width:1000px){.door-panels{height:600px;min-height:0}.door-bottom{left:17px}.door-bottom h2{font-size:29px}.four-doors-grid{gap:25px 18px}.four-doors-grid .work-open{padding:18px}}@media(max-width:700px){.site-header{padding:24px 6vw}.brand-name{font-size:21px}.doors-main{padding:0 12px}.door-panels{display:grid;grid-template-columns:1fr;height:auto;max-height:none;gap:12px}.door{height:460px}.door>img{object-fit:cover}.door-3>img{object-fit:cover}.door-bottom{bottom:30px;left:24px}.door-bottom h2{font-size:44px;max-width:270px;letter-spacing:-1px}.door-bottom p{font-size:11px}.door-bottom>span{font-size:9px}.collection-main{padding:30px 6vw 0}.collection-heading{align-items:start;gap:15px}.collection-heading h1{font-size:45px;letter-spacing:-2px}.four-doors-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 13px}.four-doors-grid .work-open{padding:12px}.four-doors-grid .work img{aspect-ratio:3/4}.four-doors-grid figcaption{font-size:16px;gap:7px}}
:root body[data-view=home] .doors-main{padding-top:18px}
@media(min-width:701px){:root body[data-view=home] .door-panels{height:calc(100svh - 188px)}}

/* Card titles carry the invitation; the upper artwork stays unobstructed. */
.door-bottom { right: 22px; padding-right: 40px; }
.door-bottom h2 { margin-bottom: 0; }
.door-action { position: absolute; right: 0; bottom: 6px; display: grid; place-items: center; width: 42px; height: 42px; color: #fff; transition: transform .2s; }
.door:hover .door-action, .door:focus-visible .door-action { transform: translate(2px,-2px); }
body[data-view=gallery] .collection-main { padding: 0 4vw; }
body[data-view=gallery] .collection-heading { align-items: center; padding: 20px 0; gap: 20px; }
body[data-view=gallery] .collection-heading h1,
body[data-view=gallery] .next-collection h2 { font: normal 30px/1 Georgia, serif; letter-spacing: -.5px; }
.compact-count { flex-shrink: 0; font-size: 14px; color: var(--muted); }
@media(max-width:700px) {
  .door-bottom { padding-right: 48px; }
  body[data-view=gallery] .collection-heading { align-items: start; }
  body[data-view=gallery] .collection-heading h1,
  body[data-view=gallery] .next-collection h2 { font-size: 26px; }
  .compact-count { font-size: 12px; padding-top: 6px; }
}

.back-to-top { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; }

/* All directional controls share one arrow, size, and stroke. */
.arrow-icon { display: inline-block; width: 26px; height: 26px; flex-shrink: 0; vertical-align: middle; }
.arrow-diagonal { transform: rotate(45deg); }
.arrow-right { transform: rotate(90deg); }
.arrow-left { transform: rotate(-90deg); }
.viewer-original { display: inline-flex; align-items: center; gap: 8px; }
.next-collection { justify-content: flex-start; gap: 20px; }
.next-collection > div { display: grid; gap: 10px; }

/* Start focus on the viewer context; Tab reaches the Close control. */
.viewer-category:focus { outline: none; }

.next-collection-title { display: inline-flex; justify-content: flex-start; align-items: center; width: fit-content; max-width: 100%; gap: 12px; }
