@font-face { font-family: 'DM Mono'; src: url('https://fonts.gstatic.com/s/dmmono/v14/aFTU7PB1QTsUX8KYthqQBK6PYK0.woff2'); font-display: swap; }
* { margin: 0; padding: 0; box-sizing: border-box; -webkit-tap-highlight-color: transparent; }
body { font-family: 'DM Mono', monospace; background-color: #0b0b1a; color: #eaddcf; overflow-x: hidden; background-image: linear-gradient(rgba(189, 168, 142, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(189, 168, 142, 0.05) 1px, transparent 1px); background-size: 30px 30px; }

header { padding: 2rem; display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid rgba(189, 168, 142, 0.2); }
.back-btn { color: #d65d0e; text-decoration: none; font-weight: bold; font-size: 1.2rem; }
h1 { font-size: 2.5rem; text-transform: uppercase; letter-spacing: 5px; text-shadow: 0 0 15px rgba(234, 221, 207, 0.2); }

.room-container { display: flex; flex-wrap: wrap; max-width: 1200px; margin: 0 auto; padding: 2rem; gap: 3rem; }
.left-col { flex: 1 1 60%; display: flex; flex-direction: column; gap: 2rem; }
.right-col { flex: 1 1 30%; }
.room-image { width: 100%; border: 2px solid #bda88e; box-shadow: 0 0 20px rgba(0,0,0,0.5); }
.room-description { font-size: 1.1rem; line-height: 1.8; border-left: 3px solid #d65d0e; padding-left: 1rem; text-transform: uppercase; }

.artists-title { font-size: 1.2rem; letter-spacing: 3px; margin-bottom: 1.5rem; color: #d65d0e; border-bottom: 1px solid rgba(214, 93, 14, 0.3); padding-bottom: 0.5rem; }
.artist-list { list-style: none; }
.artist-list li { font-size: 1.3rem; font-weight: bold; padding: 1rem 0; border-bottom: 1px dashed rgba(189, 168, 142, 0.2); cursor: pointer; transition: all 0.3s ease; display: flex; justify-content: space-between; }
.artist-list li:hover { color: #d65d0e; padding-left: 10px; }

.modal-overlay { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(11, 11, 26, 0.95); z-index: 1000; display: none; justify-content: center; align-items: flex-start; padding: 2rem 0; overflow-y: auto; }
.modal-overlay.active { display: flex; }
.bio-box { background-color: #eaddcf; color: #3e3228; border: 2px solid #bda88e; padding: 2.5rem; width: 90%; max-width: 600px; border-radius: 20px; position: relative; text-align: center; margin: auto; }
.close-btn { position: absolute; top: 15px; right: 20px; font-size: 1.5rem; cursor: pointer; background: none; border: none; font-family: 'DM Mono'; }
.bio-img { width: 180px; height: 180px; border-radius: 50%; object-fit: cover; border: 4px solid #3e3228; margin-bottom: 1.5rem; background-color: #bda88e; }
.bio-name { font-size: 1.8rem; margin-bottom: 1rem; text-transform: uppercase; }
.bio-text { font-size: 1rem; line-height: 1.6; margin-bottom: 2rem; text-align: justify; }
.bio-link-btn { display: block; width: 100%; text-align: center; background-color: #3e3228; color: #eaddcf; padding: 1rem; text-decoration: none; font-weight: bold; border-radius: 5px; text-transform: uppercase; }
.bio-link-btn:hover { background-color: #d65d0e; }
@media (max-width: 768px) { h1 { font-size: 1.8rem; } .room-container { flex-direction: column; } }
