.suite-detail{background:var(--cream);color:var(--ink)}
.suite-detail-main{width:min(100% - 64px,1360px);margin-inline:auto;padding-bottom:110px;--pad:clamp(24px,4vw,60px)}
.suite-breadcrumb{padding:24px 0;font-size:13px;border-bottom:1px solid var(--line)}
.suite-breadcrumb a{color:#75584c}
.detail-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);background:#e9ddcf}
.detail-hero-image{height:600px;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden;background:#e9ddcf}
.detail-main-photo{position:relative;min-height:0;width:100%;padding:0;overflow:hidden;background:#e9ddcf;cursor:zoom-in}
.detail-main-photo img{display:block;width:100%;height:100%;object-fit:contain}
.detail-thumbnails{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:10px;background:#e9ddcf;min-width:0}
.detail-thumbnail{width:100%;min-width:0;aspect-ratio:4/3;padding:0;border:1px solid transparent;background:#e9ddcf;overflow:hidden;cursor:pointer}
.detail-thumbnail img{display:block;width:100%;height:100%;object-fit:cover;opacity:.85;transition:opacity .2s}
.detail-thumbnail:hover img{opacity:.9}
.detail-thumbnail.active{border-color:var(--brown)}
.detail-thumbnail.active img{opacity:1}
.detail-thumbnail:focus-visible{outline:0;border-color:var(--brown)}
.detail-hero-copy{min-width:0;padding:40px clamp(28px,4vw,64px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.detail-hero-copy h1{font-size:clamp(65px,6.8vw,98px);line-height:.9;letter-spacing:-.06em;margin:20px 0 26px}
.detail-hero-copy h1 em,.detail-section-head h2 em{color:#ab6d4f}
.detail-hero-copy>p{max-width:370px;font-size:17px;line-height:1.7}
.detail-hero-details{display:flex;flex-wrap:wrap;gap:9px;margin:26px 0 28px}
.detail-hero-details span{border:1px solid #5d403433;padding:7px 11px;font-size:12px}
.reserve-button{display:inline-flex;align-items:center;gap:16px;background:var(--ink);color:var(--cream);padding:16px 21px;font:inherit;font-size:13px;border:0;cursor:pointer}
.reserve-button span{font-size:19px;line-height:1}
.detail-section{padding:88px var(--pad) 0}
.detail-section-head{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start;padding-bottom:54px}
.detail-section-head h2{font-size:clamp(50px,5.3vw,78px);line-height:.95}
.detail-section-head p{max-width:420px;font-size:16px;line-height:1.75}
.detail-amenities{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.detail-amenities div{padding:25px 20px 25px 0;font-size:15px}
.detail-amenities div+div{border-left:1px solid var(--line);padding-left:25px}
.detail-gallery{padding:88px var(--pad) 0}
.detail-gallery-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:300px 300px;gap:12px}
.detail-gallery-grid figure{margin:0;overflow:hidden;background:#dfd1c5;min-width:0}
.detail-gallery-grid figure:first-child{grid-row:span 2}
.gallery-photo{position:relative;display:block;width:100%;height:100%;padding:0;background:transparent;cursor:zoom-in}
.detail-gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}
.gallery-photo:hover img{transform:scale(1.035)}
.detail-reserve{margin:88px var(--pad) 0;padding:55px clamp(28px,5vw,65px);background:#b7785a;color:var(--cream);display:flex;justify-content:space-between;align-items:center;gap:40px}
.detail-reserve h2{font-size:clamp(46px,5vw,72px);line-height:.94;margin-top:14px}
.detail-reserve .reserve-button{background:var(--cream);color:var(--ink);white-space:nowrap}
.reserve-dialog{width:min(570px,calc(100% - 28px));max-width:570px;background:var(--cream);color:var(--ink);overflow:auto}
.reserve-dialog-content{padding:65px 48px 42px}
.reserve-dialog h2{font-size:clamp(45px,5vw,68px);line-height:.9;margin:22px 0}
.reserve-dialog h2 em{color:#ab6d4f}
.reserve-dialog-content>p{line-height:1.7;margin-bottom:25px}
.reserve-dialog .solid-button{width:100%;margin:5px 0 15px}
.reserve-dialog #reserve-result h3{font-size:34px;margin:25px 0 15px}
.reserve-dialog #reserve-result p{margin-bottom:24px}
.reserve-dialog #reserve-result .solid-button{width:auto}
.photo-lightbox{width:min(1120px,calc(100% - 40px));max-width:1120px;max-height:calc(100svh - 32px);background:#251a17;color:var(--cream);overflow:hidden;padding:0}
.photo-lightbox[open]{animation:none}
.photo-lightbox::backdrop{background:#160f0deb}
.lightbox-header{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 16px 0 24px;font-size:16px}
.lightbox-close{width:44px;height:44px;background:none;color:inherit;font-size:32px;line-height:1}
.lightbox-stage{position:relative;height:min(760px,calc(100svh - 164px));padding:0 64px}
.lightbox-stage img{display:block;width:100%;height:100%;object-fit:contain}
.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);width:44px;height:48px;background:#36211f;color:var(--cream);font-size:38px;line-height:1}
.lightbox-prev{left:10px}.lightbox-next{right:10px}
.lightbox-caption{min-height:58px;padding:16px 24px;display:flex;justify-content:space-between;gap:20px;font-size:14px;line-height:1.6}
#lightbox-count{white-space:nowrap;color:#d2b9a9}
@media(max-width:1000px) and (min-width:761px){
.detail-hero-copy{padding:32px 26px}.detail-hero-copy h1{font-size:76px}.detail-hero-copy>p{font-size:16px}
.detail-section-head{gap:32px}.detail-amenities{grid-template-columns:repeat(2,1fr)}.detail-amenities div:nth-child(3){border-left:0;padding-left:0}
}
@media(max-width:760px){
.suite-detail-main{width:100%;padding-bottom:70px}
.suite-breadcrumb{padding:18px 24px;font-size:12px}
.detail-hero{display:flex;flex-direction:column}
.detail-hero-image{height:500px;grid-template-rows:minmax(0,1fr) auto;order:2}
.detail-hero-copy{padding:48px 26px 44px}
.detail-hero-copy h1{font-size:72px}
.detail-hero-copy>p{font-size:16px}
.detail-thumbnails{gap:5px;padding:8px}
.detail-thumbnail{aspect-ratio:4/3;padding:0}
.detail-section{padding:68px 24px 0}
.detail-section-head{display:block;padding-bottom:35px}
.detail-section-head h2{font-size:57px;margin-bottom:27px}
.detail-amenities{display:block}
.detail-amenities div{padding:18px 0}
.detail-amenities div+div{border-left:0;border-top:1px solid var(--line);padding-left:0}
.detail-gallery{padding:70px 24px 0}
.detail-gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:320px 180px 180px;gap:7px}
.detail-gallery-grid figure:first-child{grid-column:span 2;grid-row:span 1}
.detail-reserve{display:block;margin:70px 24px 0;padding:44px 25px}
.detail-reserve .reserve-button{margin-top:30px}
.reserve-dialog-content{padding:58px 25px 30px}
.reserve-dialog h2{font-size:48px}
.photo-lightbox{width:calc(100% - 16px)}
.lightbox-header{padding-left:16px}
.lightbox-stage{padding:0 40px;height:calc(100svh - 210px)}
.lightbox-nav{width:32px;height:44px;font-size:32px}.lightbox-prev{left:4px}.lightbox-next{right:4px}
.lightbox-caption{padding:16px;font-size:13px}
}
@media(prefers-reduced-motion:reduce){.gallery-photo img{transition:none}.photo-lightbox[open]{animation:none}}
