/* Existing gallery room canvas with one transparent vector logo. */

#viewport .review-top,#viewport #story .review-top{border:0;padding:24px 0 0;position:relative;z-index:1}
#viewport .review-brand,#viewport #story .review-brand{width:min(100%,440px);height:160px;filter:none;transform:none}
#viewport .review-top:before{display:none!important}
#viewport .review-page{isolation:isolate}
html[data-scroll=story] #camera{visibility:hidden}
#viewport .review-content{padding-bottom:calc(var(--gallery-dock) + 22px + env(safe-area-inset-bottom))}
#viewport .review-content .review-footer{font-size:10px;justify-content:center;padding:16px 0 0;border-top-color:#bd9e5d20}
#viewport .review-content .review-layout{padding-bottom:24px}
#viewport .contact-layout{padding-top:22px}
.contact-tools{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:4px 0 10px}.contact-tools button{font-size:11px;color:#d1b782;padding:0;min-height:36px;border-bottom:1px solid #bda16a40}.contact-copy-status{font-size:10px;color:#c6baa5}
#project a{position:relative;z-index:1;pointer-events:auto!important;touch-action:manipulation}
/* Collection keeps a large exhibit and a visible, separate control strip. */
#viewport #collection{inset:0;width:100%;height:100%;padding:32px 5% 14px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:126px minmax(0,1fr);gap:12px 5%;background:#080604}
#collection:before{background:linear-gradient(#08060430,#08060480),url('assets/room-blank-alcove.webp') center/cover no-repeat}
#collection:after{pointer-events:none}
#collection .page-brand{grid-column:2;grid-row:1;width:100%;height:126px;align-self:start;filter:none}
#collection .page-brand:before{display:none}
#collection #mosaic{position:relative;inset:auto;grid-column:1;grid-row:1/3;align-self:center;justify-self:center;height:100%;width:auto;max-width:100%;aspect-ratio:310/490;transform:none;border:0;background:url('assets/collection-wall.webp') 4.28% 27.4%/619.26% 218.84% no-repeat;box-shadow:0 14px 40px #0009}
#collection #photo{position:relative;inset:auto;grid-column:1;grid-row:1/3;align-self:stretch;width:100%;height:100%;min-height:0;margin:0;display:flex;flex-direction:column}
#collection #hero{height:calc(100% - 28px);max-height:none;width:100%;min-height:0;object-fit:contain;background:transparent}
#collection #caption{height:24px;font-size:10px;margin:4px 0 0;line-height:1.3}
#collection .collection-copy{grid-column:2;grid-row:2;display:flex;flex-direction:column;gap:12px;justify-content:center;overflow:visible;min-width:0;padding:0;pointer-events:auto}
#collection .collection-copy h1{display:block;font-size:clamp(24px,3vw,38px);line-height:1.15;margin:0}
#collection .collection-copy .eyebrow,#collection .collection-intro{display:none}
#collection #filters{display:flex;align-items:center;justify-content:flex-start;gap:12px;min-height:32px;flex-wrap:wrap}
#collection #galleryCue{font-size:10px;white-space:normal}
#collection .photo-controls{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:8px 12px;min-height:44px;z-index:20;flex-shrink:0}
#collection .photo-controls button{font-size:12px;min-height:44px;padding:0 4px}
#collection .photo-controls #count{font-size:11px}
#collection #play{border-bottom:1px solid #c6ab78;min-width:44px}
#collection .collection-action{font-size:12px;min-height:36px;margin:0}
@media(orientation:portrait){
 #viewport #collection{padding:27px 6% 10px;grid-template-columns:minmax(0,1fr);grid-template-rows:90px 48px minmax(0,1fr) 32px 44px 32px;gap:7px}
 #collection .page-brand{grid-column:1;grid-row:1;width:100%;height:90px;max-width:300px;justify-self:center}
 #collection .collection-copy{display:contents}
 #collection .collection-copy h1{grid-column:1;grid-row:2;text-align:center;font-size:clamp(21px,5.7vw,29px);line-height:1.12;max-width:25ch;justify-self:center}
 #collection #mosaic,#collection #photo{grid-column:1;grid-row:3;height:100%;max-height:100%;min-height:0}
 #collection #mosaic{align-self:stretch}
 #collection #photo{width:100%}
 #collection #filters{grid-column:1;grid-row:4;justify-content:center;flex-wrap:nowrap}
 #collection .photo-controls{grid-column:1;grid-row:5;justify-content:center;gap:7px;flex-wrap:nowrap}
 #collection .collection-action{grid-column:1;grid-row:6;justify-self:center;font-size:11px}
 #collection #caption{font-size:10px;letter-spacing:0;line-height:1.3}
 #viewport .review-brand,#viewport #story .review-brand{height:145px;width:100%;max-width:400px}
 #viewport .review-top,#viewport #story .review-top{padding-top:22px}
 #viewport #story .portrait .portrait-raster{height:clamp(150px,calc(100svh - 310px),400px)}
}
@media(orientation:landscape) and (max-height:600px){
 #viewport #collection{grid-template-rows:110px minmax(0,1fr);padding:24px 5% 10px;gap:6px 5%}
 #collection .page-brand{height:110px;max-width:330px}
 #collection .collection-copy{gap:7px;justify-content:flex-start}
 #collection .collection-copy h1{font-size:23px}
 #collection #filters{min-height:26px}
 #collection .photo-controls{gap:6px 10px;min-height:38px}
 #collection .photo-controls button{min-height:38px;font-size:11px}
 #collection .collection-action{font-size:11px;min-height:30px}
 #viewport .review-top,#viewport #story .review-top{padding-top:16px}
 #viewport .review-brand,#viewport #story .review-brand{height:115px;width:330px}
 #viewport #story .portrait .portrait-raster{height:calc(100svh - 238px)}
}


body[data-photo=open] #collection #mosaic{opacity:.25!important}

@media(orientation:landscape) and (max-height:600px){#viewport #story .portrait .portrait-raster{height:calc(100svh - 250px)}}
@media(orientation:landscape) and (max-height:600px){
 #viewport #story .review-content{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.2fr);column-gap:6%;row-gap:12px;padding-top:16px}
 #viewport #story .review-top{grid-column:2;grid-row:1;padding:0}
 #viewport #story .about-layout{display:contents}
 #viewport #story .portrait{grid-column:1;grid-row:1/3;position:sticky;top:16px;align-self:start}
 #viewport #story .portrait .portrait-raster{height:calc(100svh - 125px)}
 #viewport #story .about-layout>article{grid-column:2;grid-row:2}
 #viewport #story .review-footer{grid-column:1/-1}
}

/* v57 room materials continue across the entire page, never inside a logo tile. */
#viewport .review-page:before{position:fixed;inset:0;background:linear-gradient(#08060440,#080604b5),url('assets/room-blank-alcove.webp') 60% center/cover no-repeat;z-index:-1}
.unified-brand{display:block;width:100%;height:100%;object-fit:contain;object-position:center;filter:drop-shadow(0 1px 3px #0007)}
#viewport .review-brand,#viewport #story .review-brand,#collection .page-brand{background:none;border:0;overflow:visible}
#viewport .review-brand .unified-brand,#collection .page-brand .unified-brand{width:100%;height:100%;max-width:none}
body[data-photo=open] #collection #photo,body[data-photo=closing] #collection #photo{opacity:1;visibility:visible}
#collection #photo{will-change:transform,opacity;-webkit-backface-visibility:hidden;backface-visibility:hidden}
body[data-photo=closing] #collection #mosaic{opacity:.25!important;pointer-events:none}
body[data-photo=open] #collection .page-brand,body[data-photo=closing] #collection .page-brand{filter:brightness(.62)}
