/* Landscape proportions share one scale; portrait and the original home camera are retained. */
@media(orientation:landscape) and (min-width:650px){
 :root{--gallery-dock:44px}
 #room-navigation{height:calc(44px + env(safe-area-inset-bottom));min-height:44px;padding-inline:5%}
 #room-navigation #back,#room-navigation .room-toggle{font-size:11px;min-height:40px}
 body>header{top:10px;right:5%}body>header #replay{font-size:11px;min-height:32px}
 #viewport .review-content{max-width:1180px;padding:12px 5% calc(var(--gallery-dock) + 36px)}
 #viewport .review-top,#viewport #story .review-top{padding:0;margin:0;min-width:0}
 #viewport .review-brand,#viewport #story .review-brand,#collection .page-brand{width:min(100%,290px);max-width:290px;height:82px;margin:0 auto;transform:none;justify-self:center}
 #viewport .review-content h1,#viewport .review-content .contact-intro h1{font-size:28px;line-height:1.13;margin-bottom:18px}
 #viewport .review-content .eyebrow{font-size:10px;letter-spacing:.15em;margin-bottom:12px}
 #viewport .review-content p,#viewport .review-content .contact-intro>p:not(.eyebrow):not(.intro){font-size:14px;line-height:1.6;margin-bottom:20px}
 #viewport .review-content .intro{font-size:15px;line-height:1.5;margin-bottom:22px}
 #viewport #story .review-content{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);column-gap:7%;row-gap:12px;align-items:start}
 #viewport #story .review-top{grid-column:2;grid-row:1}
 #viewport #story .about-layout{grid-column:2;grid-row:2;display:block;margin:0;padding:0;min-width:0}
 #viewport #story .about-copy{max-width:57ch}
 #viewport #story .review-content>.portrait{grid-column:1;grid-row:1/3;position:sticky;top:12px;width:min(100%,300px);margin:0 auto;align-self:start}
 #viewport #story .portrait .portrait-raster{height:min(460px,calc(100svh - var(--gallery-dock) - 66px));max-height:none;min-height:0;background-position:center bottom}
 #viewport #story .portrait figcaption{min-height:42px;height:auto;padding:7px 0 8px;line-height:1.35}
 #viewport #story .portrait strong{font-size:12px}#viewport #story .portrait span{font-size:11px;margin-top:5px}
 #viewport #story .review-footer{grid-column:1/-1}
 #viewport .review-content .contact-layout{padding-top:18px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:8%;align-items:start}
 #viewport .review-content .enquiry{padding-top:20px;grid-template-columns:22px minmax(0,1fr);gap:12px}
 #viewport .review-content .enquiry h2{font-size:25px}
 #viewport .review-content .enquiry p:not(.eyebrow){font-size:13px;line-height:1.6}
 #viewport #collection{padding:14px 5% calc(var(--gallery-dock) + 14px);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);grid-template-rows:82px minmax(0,1fr);gap:8px 6%;align-items:start}
 #collection .page-brand{grid-column:2;grid-row:1}
 #collection #mosaic,#collection #photo{grid-column:1;grid-row:1/3;height:100%;max-height:100%;min-height:0;align-self:stretch}
 #collection #mosaic{width:auto;max-width:100%;justify-self:center}
 #collection .collection-copy{grid-column:2;grid-row:2;gap:9px;justify-content:flex-start;min-height:0;align-self:start}
 #collection .collection-copy h1{font-size:27px;line-height:1.14;max-width:26ch;margin:0}
 #collection #filters{min-height:28px;gap:12px}#collection #filters button{font-size:12px;min-height:28px}#collection #galleryCue{font-size:10px}
 #collection .photo-controls{min-height:38px;gap:10px;flex-wrap:nowrap}
 #collection .photo-controls button{font-size:12px;min-height:38px}#collection .photo-controls #count{font-size:11px}
 #collection .collection-action{font-size:12px;min-height:36px}
 #collection #caption{font-size:11px;height:26px;line-height:1.3}
}
@media(orientation:landscape) and (min-width:650px) and (max-height:320px){
 :root{--gallery-dock:38px}
 #room-navigation{height:calc(38px + env(safe-area-inset-bottom));min-height:38px}
 #room-navigation #back,#room-navigation .room-toggle{font-size:10px;min-height:34px}
 #viewport .review-content{padding-top:8px}
 #viewport .review-brand,#viewport #story .review-brand,#collection .page-brand{width:260px;max-width:100%;height:64px}
 #viewport #story .review-content{row-gap:6px;column-gap:6%}
 #viewport #story .review-content>.portrait{top:8px;width:min(100%,260px)}
 #viewport #story .portrait .portrait-raster{height:calc(100svh - var(--gallery-dock) - 58px)}
 #viewport #story .portrait figcaption{min-height:40px;padding:5px 0 7px}
 #viewport #story .portrait strong{font-size:11px}#viewport #story .portrait span{font-size:10px;margin-top:4px}
 #viewport .review-content h1,#viewport .review-content .contact-intro h1{font-size:25px;line-height:1.12;margin-bottom:14px}
 #viewport .review-content .eyebrow{font-size:9px;margin-bottom:9px}
 #viewport .review-content p,#viewport .review-content .contact-intro>p:not(.eyebrow):not(.intro){font-size:13px;line-height:1.55}
 #viewport .review-content .intro{font-size:14px;line-height:1.45}
 #viewport .review-content .contact-layout{padding-top:12px}
 #viewport #collection{padding-top:9px;padding-bottom:calc(var(--gallery-dock) + 9px);grid-template-rows:64px minmax(0,1fr);row-gap:5px}
 #collection .collection-copy{gap:5px}#collection .collection-copy h1{font-size:23px;max-width:26ch}
 #collection #filters{min-height:24px}#collection #filters button{min-height:24px;font-size:11px}
 #collection #galleryCue{font-size:9px}#collection .photo-controls,#collection .photo-controls button{min-height:32px}
 #collection .collection-action{display:none}
}
@media(orientation:landscape) and (min-width:650px){
 #room-navigation:before{height:calc(100% + 20px);background:linear-gradient(transparent,#080604e8 40%,#080604fa 80%)}
 #viewport #story .portrait .portrait-raster{height:min(460px,calc(100svh - var(--gallery-dock) - 82px))}
 #viewport .review-content h1,#collection .collection-copy h1{text-wrap:balance}
 #viewport .review-content .enquiry:first-child{padding-top:0}
}
@media(orientation:landscape) and (min-width:650px) and (max-height:320px){#viewport #story .portrait .portrait-raster{height:calc(100svh - var(--gallery-dock) - 70px)}}

/* Review 13: wall-mounted brand and copy share deliberate landscape alignments. */
body:not([data-page=home])>header #replay{display:none!important}
@media(orientation:landscape) and (min-width:650px){
 #viewport .review-brand,#viewport #story .review-brand,#collection .page-brand{width:250px;max-width:100%;height:74px;margin:0 0 0 auto;justify-self:end}
 #viewport .review-top,#viewport #story .review-top{justify-content:flex-end;border:0}
 #viewport #story .review-content{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);column-gap:6%;row-gap:10px}
 #viewport #story .about-copy{max-width:56ch}
 #viewport #story .review-content h1{font-size:27px;max-width:27ch;text-wrap:initial}
 #viewport #story.review-page:before{background:linear-gradient(90deg,#080604f5 0%,#080604e8 22%,#080604b0 33%,transparent 53%),linear-gradient(#08060440,#080604b5),url('assets/room-blank-alcove.webp') 60% center/cover no-repeat}
 #viewport #story .portrait:before{display:none}
 #viewport #story .review-top:before{display:none}
 #viewport #project .review-top{height:74px}
 #viewport #project .review-content .contact-layout{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:6%;padding-top:8px}
 #viewport #project .contact-intro h1{font-size:27px;text-wrap:initial}
 #viewport #collection{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);grid-template-rows:74px minmax(0,1fr);column-gap:6%}
 #collection .collection-copy h1{font-size:26px;max-width:28ch;text-wrap:initial}
 #collection .collection-copy{align-items:flex-start;text-align:left}
 #collection #filters,#collection .photo-controls{justify-content:flex-start}
}
@media(orientation:landscape) and (min-width:650px) and (max-height:320px){
 #viewport .review-brand,#viewport #story .review-brand,#collection .page-brand{width:230px;height:60px}
 #viewport #project .review-top{height:60px}
 #viewport #collection{grid-template-rows:60px minmax(0,1fr)}
 #viewport #story .review-content h1,#viewport #project .contact-intro h1{font-size:24px}
 #collection .collection-copy h1{font-size:23px}
}

/* Review 14: align the visible first white letter, not the decorative brass rule. */
@media(orientation:landscape) and (min-width:650px){
 #viewport .review-brand,#viewport #story .review-brand,#collection .page-brand{margin:0;justify-self:start;transform:translateX(-25.8px)}
 #viewport .review-top,#viewport #story .review-top{justify-content:flex-start}
 #viewport #project .review-brand{margin-left:calc(48.3% + 34px)}
}

@media(orientation:landscape) and (min-width:650px) and (max-height:320px){#viewport .review-brand,#viewport #story .review-brand,#collection .page-brand{transform:translateX(-29.02px)}}
