/* The Burrow – Virtual walkthroughs */
.bbc-wt { --bbc-accent: #242424; --bbc-ink: #242424; --bbc-muted: #5b5b5b; --bbc-line: #e2e2e2; --bbc-card: #fff; --bbc-on-accent: #fff; --bbc-tile: #f2f2f2; --bbc-hover: #000; color: var(--bbc-ink); }
.bbc-wt *, .bbc-wt *::before, .bbc-wt *::after { box-sizing: border-box; }

.bbc-wt-filters { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 0 0 26px; }
.bbc-wt-filters button { font: inherit; font-size: 14px; padding: 8px 20px; border-radius: 4px; letter-spacing: .06em; text-transform: uppercase; font-size: 13px; border: 1.5px solid var(--bbc-line); background: var(--bbc-card); color: var(--bbc-ink); cursor: pointer; }
.bbc-wt-filters button:hover { border-color: var(--bbc-accent); }
.bbc-wt-filters button.is-on { background: var(--bbc-accent); border-color: var(--bbc-accent); color: var(--bbc-on-accent); }

.bbc-wt-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 340px), 1fr)); gap: 26px; }
.bbc-wt-card { background: var(--bbc-card); border: 1px solid var(--bbc-line); border-radius: 8px; overflow: hidden; display: flex; flex-direction: column; transition: box-shadow .2s, transform .2s; }
.bbc-wt-card:hover { box-shadow: 0 12px 30px rgba(0, 0, 0, .10); transform: translateY(-3px); }
.bbc-wt-card[hidden] { display: none; }

.bbc-wt-cover { position: relative; display: block; width: 100%; aspect-ratio: 3 / 2; padding: 0; border: 0; background: var(--bbc-tile); cursor: pointer; overflow: hidden; }
.bbc-wt-cover:disabled { cursor: default; }
.bbc-wt-cover img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .5s ease; }
.bbc-wt-card:hover .bbc-wt-cover img { transform: scale(1.04); }
.bbc-wt-play { position: absolute; inset: 0; margin: auto; width: 74px; height: 74px; border-radius: 50%; display: grid; place-items: center; background: rgba(255, 255, 255, .94); color: #242424; font-weight: 700; font-size: 18px; box-shadow: 0 6px 20px rgba(0, 0, 0, .25); transition: transform .2s; }
.bbc-wt-cover:hover .bbc-wt-play, .bbc-wt-cover:focus-visible .bbc-wt-play { transform: scale(1.08); }
.bbc-wt-cover:focus-visible, .bbc-wt-open:focus-visible, .bbc-wt-filters button:focus-visible, .bbc-wt-close:focus-visible { outline: 2px solid var(--bbc-accent); outline-offset: 2px; }

.bbc-wt-info { padding: 18px 20px 20px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.bbc-wt-meta { display: flex; flex-wrap: wrap; gap: 6px; }
.bbc-wt-meta span { font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: var(--bbc-muted); background: var(--bbc-tile); padding: 3px 10px; border-radius: 3px; }
.bbc-wt-info h3 { margin: 0; font-size: 19px; line-height: 1.3; }
.bbc-wt-info h3 a { color: inherit; text-decoration: none; }
.bbc-wt-info h3 a:hover { color: var(--bbc-accent); }
.bbc-wt-info p { margin: 0; font-size: 14.5px; line-height: 1.55; color: var(--bbc-muted); }
.bbc-wt-open { margin-top: auto; align-self: flex-start; font: inherit; font-weight: 600; font-size: 13px; letter-spacing: .08em; text-transform: uppercase; color: var(--bbc-accent); background: none; border: 0; padding: 8px 0 0; cursor: pointer; }
.bbc-wt-open:hover { text-decoration: underline; }

.bbc-wt-modal { position: fixed; inset: 0; z-index: 100000; background: rgba(20, 20, 20, .9); display: flex; align-items: center; justify-content: center; padding: 3vh 3vw; }
.bbc-wt-modal[hidden] { display: none; }
.bbc-wt-dialog { width: min(1400px, 100%); height: min(860px, 100%); display: flex; flex-direction: column; background: #111; border-radius: 8px; overflow: hidden; }
.bbc-wt-bar { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 10px 14px 10px 18px; color: #fff; background: #242424; }
.bbc-wt-bar strong { font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.bbc-wt-close { flex: none; width: 38px; height: 38px; border-radius: 50%; border: 0; background: rgba(255, 255, 255, .12); color: #fff; font-size: 26px; line-height: 1; cursor: pointer; }
.bbc-wt-close:hover { background: rgba(255, 255, 255, .25); }
.bbc-wt-frame { flex: 1; position: relative; }
.bbc-wt-frame iframe, .bbc-wt-embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
@media (max-width: 600px) { .bbc-wt-modal { padding: 0; } .bbc-wt-dialog { border-radius: 0; height: 100%; } }
html.bbc-wt-lock { overflow: hidden; }

.bbc-wt-single .bbc-wt-embed { position: relative; aspect-ratio: 16 / 9; border-radius: 8px; overflow: hidden; background: #111; margin-bottom: 18px; }
@media (max-width: 600px) { .bbc-wt-single .bbc-wt-embed { aspect-ratio: 4 / 5; } }
.bbc-wt-single .bbc-wt-meta { margin-bottom: 14px; }
.bbc-wt-btn { display: inline-block; background: var(--bbc-accent); color: var(--bbc-on-accent) !important; padding: 13px 28px; border-radius: 4px; font-weight: 600; font-size: 14px; letter-spacing: .08em; text-transform: uppercase; text-decoration: none !important; }
.bbc-wt-btn:hover { background: var(--bbc-hover); }
