/* The Infinite Viewing: dedicated editorial layout. No global case styles changed. */
.is-backrooms { background: #f3f0e6; }
.is-backrooms .case-top { padding: 16px 3.3vw; background: #181911; color: #fbf5d8; }
.is-backrooms .case-top a:hover { text-decoration-color: #dacc71; }
.is-backrooms .case-hero { display: none; }
.is-backrooms .case-sections { padding: 0; }
.is-backrooms .case-nav { margin: 0; background: #f7f5ef; }
.br-case { --br-dark:#191b15; --br-muted:#727364; --br-cream:#f3f0e6; --br-yellow:#ffcd37; color: var(--br-dark); background:var(--br-cream); font-family: 'DM Sans',Arial,sans-serif; line-height:1.35; }
.br-case *, .br-case *::before, .br-case *::after { box-sizing: border-box; }
.br-case figure,.br-case h2,.br-case p { margin: 0; }
.br-case img { display: block; max-width: 100%; }
.br-case a { color: inherit; }
.br-case a:focus-visible { outline: 2px solid #dba200; outline-offset: 4px; }
.br-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.br-cover { display:grid; place-items:center; background:#56410a; overflow:hidden; }
.br-cover img { width:auto; height:auto; max-height:calc(100svh - 115px); max-width:100%; object-fit:contain; }
.br-index { background:#191a13; color:#eeebd4; display:flex; justify-content:center; align-items:center; gap:clamp(20px,4vw,75px); padding:20px 5vw; font-size:clamp(11px,.95vw,13px); font-weight:600; letter-spacing:.025em; }
.br-index a { display:inline-flex; align-items:center; gap:10px; text-decoration:none; border-bottom:1px solid transparent; padding:5px 0; }
.br-index a:hover { border-color:#e4c754; }
.br-index a span { color:#d7b94c; font-weight:700; }
.br-panel { scroll-margin-top:calc(var(--header-height,62px) + 14px); }
.br-kicker { display:inline-block; text-transform:uppercase; letter-spacing:.13em; font-size:11px; font-weight:700; line-height:1.5; }
.br-idea-panel { padding:clamp(54px,7.5vw,110px) clamp(14px,4vw,70px) clamp(65px,8vw,125px); background:#e1dec6; }
.br-section-heading { max-width:1500px; margin:0 auto 22px; color:#4b4a2e; }
.br-idea-image { max-width:1500px; margin:0 auto!important; }
.br-idea-image img { width:100%; height:auto; object-fit:contain; box-shadow:0 14px 48px #26251a25; }
.br-idea-image figcaption { text-align:right; padding-top:14px; font-size:12px; }
.br-idea-image figcaption a { text-decoration:none; border-bottom:1px solid currentColor; }
.br-listing-panel { padding:clamp(65px,8vw,125px) 3.3vw clamp(75px,8vw,120px); background:#f3f0e6; }
.br-listing-intro { display:flex; justify-content:space-between; align-items:end; gap:32px; max-width:1300px; margin:0 auto 30px; }
.br-listing-intro h2,.br-final-heading h2 { font-family:'Space Grotesk','DM Sans',Arial,sans-serif; font-size:clamp(43px,6.4vw,100px); font-weight:600; line-height:.96; letter-spacing:-.074em; margin:16px 0 0; }
.br-listing-intro p { max-width:310px; font-size:clamp(15px,1.3vw,19px); line-height:1.48; padding-bottom:5px; }
.br-browser { max-width:1300px; margin:0 auto; overflow:hidden; border:1px solid #c8c6b7; box-shadow:0 24px 70px #23261a16; background:#fff; }
.br-browser-bar { display:flex; align-items:center; justify-content:space-between; min-height:38px; padding:0 15px; border-bottom:1px solid #deded8; background:#f8f8f5; color:#71736e; font-size:11px; font-weight:600; }
.br-browser-lights { display:flex; gap:5px; }
.br-browser-lights i { display:block; width:8px; height:8px; border-radius:50%; background:#d5d5ce; }
.br-browser-status { color:#7a7d57; font-weight:700; }
.br-browser iframe { display:block; width:100%; height:min(810px,79svh); min-height:520px; border:0; background:#fff; }
.br-links { display:flex; gap:24px; justify-content:space-between; align-items:start; max-width:1300px; margin:22px auto 0; font-size:12px; color:#55594d; }
.br-links > span { max-width:370px; }
.br-links > div { display:flex; flex-wrap:wrap; gap:14px 28px; justify-content:flex-end; }
.br-links a { white-space:nowrap; font-size:12px; text-decoration:none; border-bottom:1px solid var(--br-dark); padding-bottom:5px; color:var(--br-dark); font-weight:700; }
.br-links a:hover { color:#8e7323; border-color:#8e7323; }
.br-final-panel { padding:clamp(65px,8vw,130px) 3.3vw clamp(65px,8vw,130px); background:#24251b; color:#f7f1d3; }
.br-final-heading { max-width:1300px; margin:0 auto 55px; }
.br-final-heading .br-kicker { color:#e3ce73; }
.br-final-heading h2 { margin-bottom:18px; }
.br-final-heading p { font-size:clamp(15px,1.2vw,19px); color:#c4c0a5; }
.br-final-grid { max-width:1300px; margin:0 auto; display:grid; grid-template-columns:minmax(0,.68fr) minmax(0,1fr); align-items:center; gap:clamp(22px,4vw,70px); }
.br-final-grid figure { display:flex; flex-direction:column; align-items:center; min-width:0; gap:16px; }
.br-final-grid img { width:100%; height:auto; object-fit:contain; }
.br-poster img { max-height:min(780px,83svh); width:auto; }
.br-ooh img { max-height:680px; }
.br-final-grid figcaption { width:100%; border-top:1px solid #77775d; padding-top:12px; text-align:left; text-transform:uppercase; letter-spacing:.11em; color:#b8b49a; font-size:10px; font-weight:700; }
@media(max-width:700px){
  .is-backrooms .case-top {padding:14px 5vw;}
  .br-cover img { max-height:none; width:100%; }
  .br-index { padding:15px 5vw; gap:10px; justify-content:space-between; font-size:10px; }
  .br-index a { display:block; line-height:1.4; }
  .br-index a span { display:block; margin-bottom:3px; }
  .br-idea-panel {padding:43px 0 65px;}
  .br-section-heading {padding:0 5vw; margin-bottom:16px;}
  .br-idea-image img {width:100%; max-height:none; box-shadow:none;}
  .br-idea-image figcaption {padding:14px 5vw 0;}
  .br-listing-panel {padding:63px 5vw 76px;}
  .br-listing-intro {display:block; margin-bottom:24px;}
  .br-listing-intro h2 {font-size:clamp(42px,11vw,64px);margin:11px 0 18px;}
  .br-listing-intro p { max-width:480px; font-size:15px; }
  .br-browser {margin-inline:-5.56vw; border-left:0; border-right:0; box-shadow:none;}
  .br-browser iframe {height:70svh; min-height:490px; }
  .br-links {display:block; font-size:12px; margin-top:20px;}
  .br-links>div {justify-content:flex-start; margin-top:18px; gap:14px 23px;}
  .br-final-panel {padding:74px 5vw 85px;}
  .br-final-heading {margin-bottom:35px;}
  .br-final-heading h2 {font-size:clamp(41px,10.5vw,66px);}
  .br-final-grid {grid-template-columns:1fr;gap:48px;}
  .br-poster img {max-height:none; width:min(100%,440px);}
  .br-ooh img {max-height:none;}
}
@media(prefers-reduced-motion:reduce){.br-case * {scroll-behavior:auto!important}}
