.concept-photo{position:relative;display:block;border:0;padding:0;background:var(--soft);overflow:hidden;cursor:pointer}
.concept-photo img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.concept-photo:hover img{transform:scale(1.025)}
.about-detail.concept-photo{border:8px solid white;box-shadow:0 8px 30px #30291f18}
.about-detail.concept-photo img{object-position:46% 42%}

.access-preview{display:flex;align-items:center;gap:18px;margin:0 0 25px;padding:13px;background:var(--soft);border:1px solid var(--line);border-radius:17px}
.access-preview-photo{width:82px;height:96px;flex-shrink:0;border-radius:11px}
.access-preview-photo img{object-position:50% 50%}
.access-preview strong{display:block;font:400 22px/1.2 var(--serif);color:var(--ink);margin-bottom:8px}
.access-preview p{font-size:14px;line-height:1.5;margin:0;color:var(--ink-soft)}

.amenity-visuals{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;max-width:550px;width:100%;margin:auto;align-self:center}
.amenity-visual-heading{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;color:var(--ink);padding:0 2px 5px;font-size:14px;font-weight:600}

.amenity-featured{grid-column:1;grid-row:2/4;height:414px;border-radius:22px}
.amenity-featured img{object-position:52% 54%}
.amenity-small{height:200px;border-radius:17px}
.amenity-small.kitchen-scene img{object-position:48% 55%}
.amenity-small.wash-scene img{object-position:38% 44%}
.scene-caption{position:absolute;left:0;right:0;bottom:0;padding:36px 14px 15px;background:linear-gradient(transparent,#241c14cc);color:white;text-align:left;font-size:14px;line-height:1.4;letter-spacing:0}
.amenity-inline-image{display:flex;align-items:center;gap:13px;padding:0;border:0;background:none;text-align:left;margin-top:16px;color:var(--ink)}
.amenity-inline-image img{width:86px;height:66px;object-fit:cover;object-position:50% 48%;border-radius:11px;flex-shrink:0}
.amenity-inline-image>span{font-size:14px;line-height:1.4}

.corporate-image-note{display:flex;align-items:center;gap:17px;max-width:340px;padding:9px 15px 9px 9px;margin:23px 0 27px;border:1px solid #ffffff28;border-radius:17px;background:#ffffff0c;color:white;text-align:left}
.corporate-image-note img{width:122px;height:93px;object-fit:cover;object-position:47% 55%;border-radius:11px;flex-shrink:0}
.corporate-image-note>span{font-size:15px;line-height:1.45}

.gallery-filters{flex-wrap:wrap;justify-content:flex-end}

.gallery-item{height:245px}

.gallery-item>span{font-size:14px;line-height:1.4;padding:40px 15px 16px}
.lightbox-bottom{align-items:center;gap:20px}
#lightbox-caption{line-height:1.5}
@media(max-width:1100px){.amenity-visuals{max-width:510px}.access-preview{gap:14px}.access-preview strong{font-size:20px}.access-preview p{font-size:14px}}
@media(max-width:980px){.amenity-visuals{max-width:550px}.gallery-filters{justify-content:flex-start}}
@media(max-width:720px){.access-preview{margin-top:2px;padding:12px;gap:14px}.access-preview-photo{width:76px;height:91px}.access-preview strong{font-size:21px}.amenity-visuals{grid-template-columns:1.25fr 1fr;gap:12px;max-width:480px}.amenity-featured{height:324px;border-radius:18px}.amenity-small{height:156px;border-radius:15px}.amenity-visual-heading{font-size:14px;gap:7px}.scene-caption{font-size:13px;padding:32px 11px 12px}.amenity-inline-image img{width:78px;height:61px}.corporate-image-note{max-width:330px;margin-block:20px 24px}.corporate-image-note img{width:111px;height:86px}.gallery-item{height:215px}.gallery-item>span{font-size:12px;padding:34px 11px 12px}.lightbox-bottom{gap:12px;font-size:13px}}
@media(max-width:380px){.amenity-featured{height:288px}.amenity-small{height:138px}.scene-caption{font-size:12px;padding-inline:9px}.gallery-item{height:195px}.access-preview-photo{width:66px;height:88px}.access-preview strong{font-size:19px}.access-preview p{font-size:13px}}

.amenity-inline-image.meal-scene{width:min(350px,100%);gap:15px;padding:9px;margin-top:18px;background:var(--soft);border-radius:15px}
.amenity-inline-image.meal-scene img{width:144px;height:98px;object-position:50% 55%}
.amenity-inline-image.meal-scene>span{font:400 21px/1.25 var(--serif)}
.gallery-section .section-heading{margin-bottom:30px}
@media(max-width:720px){.amenity-inline-image.meal-scene{gap:13px}.amenity-inline-image.meal-scene img{width:132px;height:91px}.amenity-inline-image.meal-scene>span{font-size:20px}.gallery-section .section-heading{margin-bottom:24px}}
@media(max-width:380px){.amenity-inline-image.meal-scene img{width:118px;height:82px}}
