.placard{position:fixed;left:50%;bottom:calc(16vh + 54px);transform:translateX(-50%);z-index:25;min-width:300px;max-width:min(560px,86vw);padding:14px 20px;
  background:linear-gradient(160deg,rgba(28,22,16,.94),rgba(12,9,7,.94));border:1px solid var(--line);outline:1px solid rgba(201,164,92,.1);outline-offset:3px;text-align:center;animation:pin .4s var(--ease-snap)}
.placard .a{font:10px var(--caps);letter-spacing:.24em;color:var(--gold);text-transform:uppercase}
.placard .t{font:italic 500 24px/1.1 var(--serif);margin:4px 0}
.placard .v{font-size:14px;color:var(--parch-mute)}
.wings{display:flex;gap:8px;margin-bottom:14px}
.viewer{position:fixed;inset:0;z-index:70;display:grid;place-items:center}
.vw-bg{position:absolute;inset:0;background:rgba(6,4,3,.92);backdrop-filter:blur(8px);animation:fi .4s}
@keyframes fi{from{opacity:0}}
.vw-in{position:relative;width:min(1200px,94vw);max-height:90vh;overflow:auto;display:grid;grid-template-columns:1.25fr 1fr;gap:34px;padding:34px;
  background:linear-gradient(160deg,#1c1610,#0e0b08);border:1px solid var(--line);animation:pin .5s var(--ease-candle)}
.vw-imgs{display:grid;gap:12px}
.vw-imgs figure{margin:0;position:relative;cursor:zoom-in}
.vw-imgs img{width:100%;display:block;max-height:62vh;object-fit:contain;background:#000}
.vw-imgs figcaption{font:10px var(--caps);letter-spacing:.22em;color:var(--parch-mute);text-transform:uppercase;margin-top:6px;display:flex;justify-content:space-between}
.vw-txt h3{font:italic 500 44px/1.02 var(--serif);margin:6px 0}
.vw-txt .meta{font:11px var(--caps);letter-spacing:.22em;text-transform:uppercase;color:var(--gold)}
.vw-txt p{color:var(--parch-dim)}
.vw-txt .st{display:inline-block;font:10px var(--caps);letter-spacing:.2em;padding:4px 8px;border:1px solid var(--line);color:var(--parch-mute)}
.vw-x{position:absolute;top:16px;right:16px}
.thumbs{display:flex;gap:6px;flex-wrap:wrap}.thumbs img{width:64px;height:64px;object-fit:cover;cursor:pointer;opacity:.7}.thumbs img:hover{opacity:1}
.zoom{position:fixed;inset:0;z-index:90;background:#000;display:grid;place-items:center;cursor:zoom-out}
.zoom img{max-width:100vw;max-height:100vh;object-fit:contain}
.roomcard{position:fixed;left:6vw;top:22vh;z-index:22;pointer-events:none}
.roomcard .tc-w{font:italic 500 clamp(48px,7vw,96px)/.9 var(--serif);text-shadow:5px 5px 0 #000b;transform:skewX(-6deg)}
.roomcard .tc-s{font:12px var(--caps);letter-spacing:.4em;color:var(--gold-hi);margin-top:10px}
.roomcard{animation:tcin 3.2s var(--ease-cine) forwards}
@media (max-width:800px){.vw-in{grid-template-columns:1fr;padding:20px}.vw-txt h3{font-size:32px}}
