.room-facts{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:24px 0}
.room-facts span{display:flex;flex-direction:column;gap:5px;border:1px solid var(--line);border-radius:14px;padding:14px 10px;text-align:center;font-size:11px;color:var(--muted)}
.room-facts strong{font-size:28px;line-height:1;color:var(--ink)}
.room-guide-instruction{color:var(--muted)}
.room-step-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:24px 0}
.room-step-picker button{font:700 12px/1.4 Arial,sans-serif;min-height:68px;display:flex;align-items:center;justify-content:center;gap:9px;padding:11px 8px;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:13px;cursor:pointer}
.room-step-picker button span{font-size:11px;opacity:.75}
.room-step-picker button[aria-pressed=true]{background:var(--ink);color:var(--white);border-color:var(--ink)}
.room-step-picker button:hover{border-color:var(--ink)}
.room-step-picker button:focus-visible,.room-next:focus-visible{outline:3px solid #be5a21;outline-offset:4px}
.room-step{margin:28px 0 0;padding:0 0 24px;border-bottom:1px solid var(--line)}
.room-step h3{margin:0 0 22px!important;max-width:650px}
.room-step h3:focus{outline:none}
.room-step-layout{display:grid;grid-template-columns:minmax(180px,270px) minmax(0,1fr);gap:26px;align-items:start}
.room-shot{margin:0!important;min-width:0}
.room-shot-image{position:relative;overflow:hidden;border-radius:16px;background:#d4ddc6;border:1px solid #c2cdb5}
.room-shot-image img{width:100%;height:auto;max-height:none;margin:0;border-radius:0;object-fit:fill}
.room-map-overlay{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.room-highlight{fill:#ffe36725;stroke:#fff5a4;stroke-width:5.5;stroke-dasharray:13 7}
.room-route-shadow{fill:none;stroke:#1e3c2d;stroke-width:17;stroke-linecap:round;stroke-linejoin:round;opacity:.9}
.room-route-line{fill:none;stroke:#ffe86f;stroke-width:7;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:15 17}
.room-map-number circle{fill:#fffdf6;stroke:#243f34;stroke-width:4}
.room-map-number text{font:800 30px Arial,sans-serif;fill:#243f34;text-anchor:middle}
.room-map-number.current circle{fill:#ffe36d;stroke-width:5}
.room-shot figcaption{color:var(--muted);font-size:11px;line-height:1.6;margin-top:11px}
.room-shot-counter{display:block;color:var(--ink);font-size:11px;font-weight:700;margin-bottom:5px}
.room-step-copy p{margin:0 0 16px!important;font-size:14px;line-height:1.75}
.room-next{margin-top:6px;padding:10px 0;color:var(--ink);font:700 13px/1.5 Arial,sans-serif;border:0;border-bottom:1px solid var(--ink);background:transparent;cursor:pointer;text-align:left}
.room-entry-note{padding:22px;border:1px solid var(--line);border-radius:17px;background:#edf1e6;margin-top:25px}
.room-entry-note h3{margin-top:0!important}
.room-entry-note p{font-size:13px!important}
@media(max-width:1050px) and (min-width:801px){.room-step-layout{grid-template-columns:1fr}.room-shot{width:min(320px,100%);justify-self:center}.room-step-picker{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.room-facts{gap:5px}.room-facts span{padding:11px 5px;font-size:10px}.room-facts strong{font-size:24px}.room-step-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.room-step-picker button{min-height:47px;justify-content:flex-start;padding:11px 14px}.room-step-layout{grid-template-columns:1fr;gap:20px}.room-shot{width:min(330px,100%);justify-self:center}.room-step-copy p{font-size:14px}.room-entry-note{padding:18px}}
