.gallery-hero{display:grid;grid-template-columns:1fr 1fr;min-height:480px;background:#17130e;color:#fff}
.gallery-hero-copy{align-self:center;min-width:0;padding:50px clamp(24px,5vw,80px)}
.gallery-kicker{color:#bb894d;font-size:.74rem;font-weight:700;letter-spacing:.22em}
.gallery-property{margin:22px 0 0!important;font-size:clamp(.9rem,1.25vw,1.12rem);white-space:nowrap}
.gallery-hero h1{font-family:serif;font-size:clamp(2rem,3.15vw,3.2rem);line-height:1.25;margin:12px 0 20px;white-space:nowrap;letter-spacing:-.04em}
.gallery-hero-copy>p:last-of-type{max-width:530px;color:#e7ded1}
.gallery-hero>img{width:100%;height:100%;max-height:610px;object-fit:cover}
.gallery-jump{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.gallery-jump a{border:1px solid #bb894d;padding:9px 14px;text-decoration:none;font-size:.85rem}
.gallery-jump a:hover,.gallery-jump a:focus-visible{background:#bb894d;color:#17130e}
.gallery-content{width:min(1200px,90vw);margin:auto}
.gallery-section{padding:68px 0;border-bottom:1px solid var(--line);scroll-margin-top:20px}
.gallery-section-head{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}
.gallery-section h2,.gallery-interior-intro h2,.gallery-all-videos h2{font-family:serif;font-size:clamp(1.7rem,2.8vw,2.4rem);line-height:1.35;margin:6px 0 10px}
.gallery-section-head p,.gallery-interior-intro p{margin:0;max-width:760px;color:var(--muted)}
.gallery-count{flex:none;min-width:58px;text-align:right;font-size:.87rem;font-variant-numeric:tabular-nums}
.gallery-stage{position:relative;background:#17130e}
.gallery-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;overscroll-behavior-inline:contain;scrollbar-width:none}
.gallery-track::-webkit-scrollbar{display:none}
.gallery-slide{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start}
.gallery-open{display:block;width:100%;border:0;padding:0;background:#17130e;cursor:zoom-in}
.gallery-open img{display:block;width:100%;height:min(64vw,650px);min-height:420px;object-fit:contain}
.gallery-open:focus-visible{outline:3px solid #d4aa62;outline-offset:-3px}
.gallery-slide figcaption{display:flex;justify-content:space-between;gap:16px;padding:12px 18px;color:#fff;font-size:.9rem}
.gallery-slide figcaption span:last-child{color:#d4aa62;font-variant-numeric:tabular-nums}
.gallery-controls{position:absolute;z-index:2;inset:0 0 44px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;padding:0 14px}
.gallery-controls button{pointer-events:auto;width:48px;height:56px;border:1px solid rgba(255,255,255,.7);border-radius:4px;background:rgba(18,16,14,.75);color:#fff;font-size:2.1rem;line-height:1;cursor:pointer}
.gallery-controls button:hover,.gallery-controls button:focus-visible{background:#fff;color:#17130e}
.gallery-interior-intro{padding-top:65px}
.gallery-interior-intro+.gallery-section{padding-top:30px}
.gallery-photo-note{margin:18px 0 0;color:var(--muted);font-size:.86rem}
.gallery-room-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px;font-size:.9rem}
.gallery-room-links a,.gallery-video-type>a{text-underline-offset:4px}
.gallery-video-section{margin-top:38px}
.gallery-video-section h3{font-size:1.1rem;margin:0 0 16px}
.gallery-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.gallery-video{margin:0;background:#fff;max-width:650px}
.gallery-video video{display:block;width:100%;aspect-ratio:16/9;background:#17130e}
.gallery-video figcaption{display:flex;justify-content:space-between;padding:10px 14px;gap:10px}
.gallery-video figcaption span{color:var(--muted);font-size:.85rem}
.gallery-all-videos{padding-top:64px;scroll-margin-top:20px}
.gallery-all-videos>p{color:var(--muted);margin:0 0 24px}
.gallery-video-type{min-width:0}
.gallery-video-type h3{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px;margin:0 0 10px;font-size:1.2rem}
.gallery-video-type h3 small{font-size:.83rem;font-weight:400;color:var(--muted)}
.gallery-video-type>a{display:inline-block;margin-top:12px}
.gallery-next{margin:70px 0;padding:38px;background:#17130e;color:#fff;text-align:center}
.gallery-next h2{margin:0 0 10px;font-family:serif}
.gallery-next p{margin:0 auto 24px;max-width:760px}
.gallery-dialog{position:fixed;max-width:min(95vw,1380px);max-height:95vh;width:100%;padding:12px;border:0;background:#17130e;color:#fff}
.gallery-dialog::backdrop{background:rgba(0,0,0,.88)}
.gallery-dialog[open]{display:flex;align-items:center;justify-content:space-between;gap:12px}
.gallery-dialog figure{margin:0;min-width:0}
.gallery-dialog img{display:block;max-width:100%;max-height:84vh;margin:auto;object-fit:contain}
.gallery-dialog figcaption{text-align:center;padding:8px}
.gallery-close{position:absolute;right:8px;top:8px;width:44px;height:44px;border:0;background:#fff;color:#17130e;font-size:2rem;cursor:pointer}
.gallery-dialog-arrow{flex:none;width:42px;height:56px;border:1px solid #aa937b;background:#251e17;color:#fff;font-size:2.2rem;cursor:pointer}
@media(max-width:900px){.gallery-hero{grid-template-columns:1fr}.gallery-hero-copy{padding:42px 5vw}.gallery-hero>img{height:54vw;max-height:360px}.gallery-video-grid{grid-template-columns:1fr}}
@media(max-width:680px){.gallery-hero h1{font-size:clamp(1.85rem,8vw,2.55rem)}.gallery-property{white-space:normal}.gallery-section{padding:48px 0}.gallery-section-head{align-items:start}.gallery-open img{height:68vw;min-height:250px}.gallery-controls{padding:0 8px}.gallery-controls button{width:40px;height:48px;font-size:1.8rem}.gallery-interior-intro{padding-top:48px}.gallery-interior-intro+.gallery-section{padding-top:28px}.gallery-slide figcaption{font-size:.8rem}.gallery-dialog{max-width:100vw;width:100%;padding:55px 4px 12px}.gallery-dialog[open]{gap:2px}.gallery-dialog-arrow{width:30px;font-size:1.5rem}.gallery-dialog img{max-height:72vh}}
@media(max-width:355px){.gallery-hero h1{font-size:1.7rem}.gallery-jump a{font-size:.78rem;padding:7px 10px}}
.guide-header{position:sticky;top:0;z-index:20;box-shadow:0 2px 12px rgba(0,0,0,.12)}
.gallery-section,.gallery-all-videos,.gallery-video-section[id],.gallery-video[id]{scroll-margin-top:96px}
@media(max-width:680px){.guide-header{padding:10px 5vw;gap:8px}.guide-header nav{gap:8px 14px}.gallery-section,.gallery-all-videos,.gallery-video-section[id],.gallery-video[id]{scroll-margin-top:140px}}
