
.page-the-hotel main section[id]{scroll-margin-top:140px}
.hotel-stack>*+*{margin-top:clamp(50px,7vw,96px)}
.hotel-after{margin-top:clamp(36px,5vw,60px)}
.prose .eyebrow{margin-bottom:16px}
.prose .eyebrow+h2,.prose .eyebrow+h4{margin-top:0}
.hotel-close{font:400 italic clamp(24px,2.8vw,34px)/1.3 var(--serif);color:var(--ink);max-width:880px;margin-bottom:0}
.tour-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(30px,6vw,80px);align-items:start}
.tour-photos{grid-template-columns:1fr 1fr!important;margin-top:24px}
.tour-photos figure{aspect-ratio:3/2!important}
.tour-photos img,.catio-photos img{transform:scale(1.02)}
/* catios: three cards in one row */
.catio-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,30px);align-items:start;margin-top:8px}
.catio-card .pic{aspect-ratio:4/3;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);margin-bottom:20px}
.catio-card .pic img{width:100%;height:100%;object-fit:cover}
.catio-card .prose{font-size:16px;line-height:1.7}
.catio-card .prose .eyebrow{display:block;margin-bottom:6px}
.hotel-close{margin-top:clamp(34px,4vw,50px)!important}
@media (max-width:900px){.catio-cards{grid-template-columns:1fr;gap:36px}}
.tour-grid .section-head{margin-bottom:0}
.tour-video{position:relative;display:block;aspect-ratio:9/16;border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow);background:#18202a;color:#fff;text-decoration:none;margin:0}
.tour-video img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.tour-video::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 50%,rgba(0,0,0,.55));pointer-events:none}
.tour-video .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;background:rgba(255,255,255,.94);display:grid;place-items:center;z-index:1;color:var(--ink);font-style:normal;font-size:22px;padding-left:4px;transition:transform .25s var(--ease)}
.tour-video:hover .play{transform:translate(-50%,-50%) scale(1.06)}
.tour-video span{position:absolute;left:22px;right:22px;bottom:20px;z-index:1;font:400 26px/1.1 var(--serif)}
.tour-video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media (max-width:860px){.tour-grid{grid-template-columns:1fr}.tour-video{width:min(100%,360px);margin-inline:auto}}
@media (max-width:860px){.page-the-hotel main section[id]{scroll-margin-top:130px}}
