/* V4: turn the existing sign around its upright axis, into the right-hand path.
   Perspective is anchored at the post, above the arms. No in-plane lean. */
.wood-sign{--sign-width:clamp(168px,14.8vw,200px);width:var(--sign-width);transform:translateX(-50%) perspective(var(--sign-width)) rotateY(42deg);transform-origin:41.5% 0}
.wood-label{left:46%;top:47%;font-size:16px;transform:rotate(6deg)}
@media(min-width:1701px){.wood-sign{--sign-width:210px}}
@media(max-width:700px){.wood-sign{--sign-width:176px}.wood-label{left:44%;font-size:15px}}

/* An actual room first, then its listening shelf. The approved artwork remains. */
.catalog-room{background:#0d1315;min-height:80vh}
.listening-entrance{position:relative;min-height:460px;isolation:isolate;display:flex;align-items:center;padding:100px 8vw 62px;overflow:hidden}
.listening-entrance .room-art{object-position:30% center}
.listening-entrance:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0b111327 15%,#0b111388 47%,#0b1113dc 83%),linear-gradient(transparent 55%,#0d1315)}
.listening-welcome{margin-left:49%;max-width:540px}
.listening-welcome h1{font-size:clamp(42px,5.5vw,76px);line-height:1.04;margin:16px 0 18px}
.listening-welcome>p:last-child{font:20px/1.6 Fell,Georgia,serif;color:#ded5c5;max-width:390px}
.room-collection{max-width:1240px;padding:0 44px 65px;margin:auto}
.feature-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;padding:20px 0}
.feature-heading h2{font:40px/1.15 Fell,Georgia,serif;margin:9px 0 0}
.feature-heading>span{font-size:11px;color:var(--muted);white-space:nowrap;padding-bottom:5px}
.screen-frame{padding:12px;background:#382d20;border:1px solid #8c7350;box-shadow:inset 0 0 0 4px #151b18,0 15px 50px #0005}
.screen-frame video{display:block;width:100%;aspect-ratio:16/9;background:#080a0c}
.feature-caption{padding:17px 0 30px;border-bottom:1px solid #ab8a523b;font-size:12px;line-height:1.7;color:var(--muted)}
.feature-caption strong{font-weight:400;color:#ebd09f}
.catalog-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin:38px 0 10px}
.catalog-heading h2{font:32px Fell,Georgia,serif;margin:0 0 8px}
.catalog-heading p{font-size:12px;color:var(--muted);line-height:1.6}
.catalog-heading .text-link{margin:0;white-space:nowrap}
.sound-review{display:flex;gap:15px;align-items:center;margin:22px 0 14px;background:#1a2423;border:1px solid #455149;padding:13px 16px;font-size:11px;line-height:1.5;color:#c7c9be}
.sound-review button{white-space:nowrap;min-height:44px;background:#e8d0a6;color:#201c17;border:1px solid #cfb484;padding:10px 16px;font-size:12px}
.track-shelf{list-style:none;padding:0;margin:0;border-top:1px solid #997e503b;counter-reset:tracks}
.track-card{padding:25px 0;border-bottom:1px solid #997e503b;counter-increment:tracks}
.track-line{display:flex;align-items:center;gap:24px}
.track-line:before{content:counter(tracks,decimal-leading-zero);font:24px Fell,Georgia,serif;color:#a48c64;min-width:28px}
.track-title{flex:1;min-width:0}.track-title h3{font:27px/1.25 Fell,Georgia,serif;margin:0 0 5px}
.track-title p{font-size:10px;letter-spacing:.05em;color:var(--muted)}
.track-line>a{font-size:11px;color:var(--gold);padding:14px 0;white-space:nowrap}
.track-player{margin:16px 0 0 52px}.track-player summary{cursor:pointer;min-height:44px;display:list-item;list-style-position:inside;font-size:12px;color:var(--gold);padding:12px 0}
.track-player summary:focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.soundcloud-slot{min-height:166px;background:#17201f;border:1px solid #52605777;padding:0;position:relative}
.soundcloud-slot iframe{display:block;border:0;width:100%;height:166px}
.embed-message{font-size:12px;line-height:1.7;padding:22px;color:var(--muted)}
.embed-message a{text-decoration:underline;color:var(--gold)}
.player-loading{position:absolute;inset:0;z-index:1;background:#17201f;display:flex;align-items:center;justify-content:center;font:13px Arial,sans-serif}
.room-exit{margin-top:36px;display:flex;gap:20px;flex-wrap:wrap}
body[data-room=vault] .audio-dock{display:flex}.vault-room .audio-dock{position:relative;margin-top:25px;flex-wrap:wrap;padding:18px;gap:14px}.vault-room .audio-dock audio{width:100%}.vault-room .dock-track{font-size:12px}.vault-room .audio-status{max-width:none}.vault-room .audio-dock.active{position:relative}.vault-room .player-note{margin-bottom:15px}
body:has(.vault-room){padding-bottom:86px}body:has(.vault-room) .interior{min-height:calc(100svh - var(--header))}
@media(max-width:700px){
 .listening-entrance{min-height:520px;padding:285px 22px 30px;display:block}.listening-entrance .room-art{height:370px;object-position:19% center}.listening-entrance:after{background:linear-gradient(transparent 130px,#0d13154d 235px,#0d1315 365px)}
 .listening-welcome{margin:0;position:relative}.listening-welcome h1{font-size:46px;margin:10px 0 14px}.listening-welcome>p:last-child{font-size:18px}
 .room-collection{padding:0 20px 36px}.feature-heading{display:block;padding-top:4px}.feature-heading h2{font-size:32px;margin-bottom:10px}.feature-heading>span{font-size:10px}
 .screen-frame{padding:6px}.feature-caption{font-size:11px;padding-bottom:23px}.catalog-heading{display:block;margin-top:30px}.catalog-heading h2{font-size:28px}.catalog-heading .text-link{margin-top:7px}
 .sound-review{align-items:flex-start;padding:12px;gap:12px}.sound-review button{font-size:11px;padding:9px 11px}.sound-review p{font-size:10px}
 .track-line{gap:12px;flex-wrap:wrap;align-items:flex-start}.track-line:before{font-size:20px;min-width:23px;padding-top:2px}.track-title{flex:1 1 calc(100% - 40px)}.track-title h3{font-size:24px}.track-line>a{margin-left:35px;padding:5px 0;min-height:34px;display:flex;align-items:center}
 .track-player{margin:6px 0 0 35px}.track-card{padding:20px 0}.room-exit{gap:8px}.vault-room .audio-dock{padding:14px}.vault-room .audio-dock audio{width:100%}
}

html:not(.js) .sound-review{display:none}
