:root{--oa-night:#0e0d0d;--oa-blue:#1c3659;--oa-gray:#e5e5e5;--oa-muted:#6b6b6b}.single-hotel{background:#fff;color:var(--oa-night);font-family:Manrope,Arial,Helvetica,sans-serif}.single-hotel .oa-site-header{background:#fff;border-bottom:1px solid var(--oa-gray);padding:18px 32px}.single-hotel .oa-site-footer{background:#fff;color:var(--oa-night);border-top:1px solid var(--oa-gray);margin-top:0}.oa-hotel-page{background:#fff}.oa-hotel-container{width:min(1360px,calc(100% - 64px));margin:0 auto;padding:28px 0 96px}.oa-breadcrumbs{display:flex;flex-wrap:wrap;gap:9px;color:#767676;font-size:11px;letter-spacing:.03em;margin:0 0 30px}.oa-breadcrumbs a,.oa-text-link{color:var(--oa-blue)}.oa-hotel-title{display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,300px);align-items:end;gap:40px;margin-bottom:30px}.oa-hotel-eyebrow{font-size:11px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--oa-blue);margin:0 0 10px}.oa-hotel-title h1,.oa-hotel-page h2,.oa-hotel-page h3{font-family:'Lessa Serif',Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}.oa-hotel-title h1{font-size:clamp(44px,5.1vw,80px);line-height:.94;margin:0;max-width:960px}.oa-hotel-location{font-size:17px;margin:14px 0 0}.oa-hotel-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:19px}.oa-hotel-tags span{border:1px solid #d6d6d6;padding:7px 10px;color:#454545;font-size:11px}.oa-hotel-claim{font:italic clamp(22px,2.2vw,32px)/1.15 'Lessa Serif',Georgia,serif;margin:0 0 4px;padding-left:26px;border-left:1px solid var(--oa-blue);color:var(--oa-blue)}.oa-hero-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:repeat(2,clamp(142px,19vw,275px));gap:4px;margin:0}.oa-hero-gallery__item{margin:0;overflow:hidden;background:#ededed}.oa-hero-gallery__item--1{grid-row:1/3}.oa-hero-gallery__item--2{grid-column:2/4}.oa-hero-gallery--3{grid-template-columns:2fr 1fr}.oa-hero-gallery--3 .oa-hero-gallery__item--2{grid-column:auto}.oa-hero-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.oa-hero-gallery__item:hover img{transform:scale(1.025)}.oa-hero-gallery--single{display:block;height:min(62vw,650px);margin:0;overflow:hidden;background:#eee}.oa-hero-gallery--single img{display:block;width:100%;height:100%;object-fit:cover}.oa-hotel-facts{display:grid;grid-template-columns:repeat(4,1fr);margin:0 0 76px;border-bottom:1px solid var(--oa-gray)}.oa-hotel-facts div{padding:20px 22px 22px;border-right:1px solid var(--oa-gray);display:flex;flex-direction:column;gap:4px}.oa-hotel-facts div:first-child{padding-left:0}.oa-hotel-facts div:last-child{border:0}.oa-hotel-facts strong{font-size:13px;font-weight:700}.oa-hotel-facts span{font-size:12px;color:var(--oa-muted)}.oa-hotel-intro{display:grid;grid-template-columns:minmax(0,1.32fr) minmax(330px,.85fr);gap:clamp(42px,8vw,126px);padding-bottom:76px;border-bottom:1px solid var(--oa-gray)}.oa-hotel-intro h2,.oa-room-section>h2,.oa-editorial-points h2,.oa-services h2,.oa-environment h2{font-size:clamp(34px,3.3vw,54px);line-height:1;margin:0 0 24px}.oa-hotel-copy{font:18px/1.62 Manrope,Arial,sans-serif;max-width:650px}.oa-hotel-copy p:first-child{margin-top:0}.oa-reservation-panel{display:flex;flex-direction:column;align-items:stretch;gap:15px}.oa-primary-button{display:flex;justify-content:space-between;align-items:center;background:var(--oa-night);color:#fff;padding:18px 20px;font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;transition:background .2s ease,transform .2s ease}.oa-primary-button:hover{background:var(--oa-blue)}.oa-primary-button:active{transform:translateY(1px)}.oa-primary-button--small{width:max-content;margin-top:24px;padding:14px 17px;font-size:11px}.oa-text-link{font-size:12px;font-weight:800;letter-spacing:.04em;width:max-content;border-bottom:1px solid var(--oa-blue);padding-bottom:3px}.oa-location-card{border:1px solid #dedede;padding:19px;margin-top:6px}.oa-location-card h2{font-size:20px;margin:0 0 15px}.oa-location-card p{font-size:13px;line-height:1.45;margin:10px 0}.oa-map-art{position:relative;min-height:156px;background:linear-gradient(125deg,transparent 47%,#e6e7e6 48%,#e6e7e6 51%,transparent 52),linear-gradient(25deg,transparent 40%,#e9e9e9 41%,#e9e9e9 44%,transparent 45%),#f4f4f2;overflow:hidden}.oa-map-art:before,.oa-map-art:after{content:"";position:absolute;inset:20% -15%;border-top:1px solid #d5d5d5;transform:rotate(-24deg)}.oa-map-art:after{transform:rotate(36deg)}.oa-map-art span{position:absolute;z-index:1;left:56%;top:42%;width:18px;height:18px;background:var(--oa-blue);border:3px solid #fff;border-radius:50%;box-shadow:0 1px 4px rgba(0,0,0,.18)}.oa-room-section{padding:76px 0;border-bottom:1px solid var(--oa-gray)}.oa-room-layout{display:grid;grid-template-columns:1.14fr .86fr;gap:clamp(30px,5vw,70px);align-items:start}.oa-room-carousel{position:relative;overflow:hidden;background:#eee}.oa-room-carousel__viewport{overflow:hidden}.oa-room-carousel__track{display:flex;transition:transform .42s cubic-bezier(.2,.8,.2,1);touch-action:pan-y}.oa-room-carousel__slide{flex:0 0 100%;aspect-ratio:1.25;margin:0}.oa-room-carousel__slide img{display:block;width:100%;height:100%;object-fit:cover}.oa-carousel-control{position:absolute;top:50%;z-index:1;transform:translateY(-50%);border:1px solid rgba(255,255,255,.72);background:rgba(14,13,13,.62);color:#fff;width:39px;height:39px;font-size:19px;cursor:pointer}.oa-carousel-control--prev{left:13px}.oa-carousel-control--next{right:13px}.oa-carousel-dots{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);display:flex;gap:7px}.oa-carousel-dots button{width:7px;height:7px;padding:0;border:1px solid #fff;border-radius:50%;background:transparent;cursor:pointer}.oa-carousel-dots .is-active{background:#fff}.oa-room-copy h3{font-size:clamp(30px,3vw,47px);line-height:1;margin:0 0 16px}.oa-room-copy>p{font-size:16px;line-height:1.6;margin:0}.oa-feature-list,.oa-editorial-list{list-style:none;padding:0;margin:25px 0 0}.oa-feature-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;font-size:13px}.oa-feature-list li:before{content:'+';color:var(--oa-blue);font-weight:800;margin-right:7px}.oa-editorial-points{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:76px 0;border-bottom:1px solid var(--oa-gray)}.oa-editorial-points article{padding:0 clamp(25px,4vw,70px)}.oa-editorial-points article:first-child{padding-left:0;border-right:1px solid var(--oa-gray)}.oa-editorial-points article:last-child{padding-right:0}.oa-editorial-points h2{font-size:36px}.oa-editorial-list{display:grid;gap:15px;font-size:15px;line-height:1.45}.oa-editorial-list li{padding-left:22px;position:relative}.oa-editorial-list li:before{content:'✓';position:absolute;left:0;color:var(--oa-blue);font-weight:800}.oa-services{padding:76px 0;border-bottom:1px solid var(--oa-gray)}.oa-services ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;padding:0;margin:30px 0 0;border-top:1px solid var(--oa-gray);border-left:1px solid var(--oa-gray)}.oa-services li{min-height:96px;padding:22px;border-right:1px solid var(--oa-gray);border-bottom:1px solid var(--oa-gray);display:flex;align-items:flex-end;font-size:14px}.oa-services li:before{content:'+';color:var(--oa-blue);font-size:20px;margin-right:9px;line-height:1}.oa-environment{padding:76px 0;border-bottom:1px solid var(--oa-gray)}.oa-environment p{max-width:900px;font:17px/1.65 Manrope,Arial,sans-serif;margin:0}
@media(max-width:900px){.oa-hotel-container{width:min(100% - 40px,1360px)}.oa-hotel-title,.oa-hotel-intro,.oa-room-layout{grid-template-columns:1fr;gap:30px}.oa-hotel-claim{max-width:560px}.oa-hotel-intro{gap:42px}.oa-reservation-panel{display:grid;grid-template-columns:1fr 1fr;align-items:start}.oa-reservation-panel>.oa-primary-button{grid-column:1/-1}.oa-location-card{margin-top:0}.oa-editorial-points{gap:40px}.oa-services ul{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:640px){.single-hotel .oa-site-header{padding:15px 20px}.oa-hotel-container{width:calc(100% - 32px);padding-top:20px;padding-bottom:58px}.oa-breadcrumbs{margin-bottom:23px;gap:7px}.oa-hotel-title{margin-bottom:22px;gap:18px}.oa-hotel-title h1{font-size:42px}.oa-hotel-claim{font-size:22px;padding-left:14px}.oa-hero-gallery{grid-template-columns:1fr 1fr;grid-template-rows:260px 130px 130px;gap:3px}.oa-hero-gallery__item--1{grid-column:1/3;grid-row:auto}.oa-hero-gallery__item--2{grid-column:auto;grid-row:auto}.oa-hotel-facts{grid-template-columns:1fr 1fr;margin-bottom:48px}.oa-hotel-facts div{padding:15px 10px;border-bottom:1px solid var(--oa-gray)}.oa-hotel-facts div:nth-child(odd){padding-left:0}.oa-hotel-facts div:nth-child(even){border-right:0}.oa-hotel-intro,.oa-room-section,.oa-services,.oa-environment{padding-bottom:52px}.oa-room-section,.oa-services,.oa-environment{padding-top:52px}.oa-reservation-panel{display:flex}.oa-location-card{width:100%}.oa-hotel-intro h2,.oa-room-section>h2,.oa-editorial-points h2,.oa-services h2,.oa-environment h2{font-size:37px}.oa-hotel-copy{font-size:16px}.oa-room-layout{gap:28px}.oa-room-copy h3{font-size:34px}.oa-feature-list{grid-template-columns:1fr}.oa-editorial-points{grid-template-columns:1fr;padding:52px 0;gap:44px}.oa-editorial-points article,.oa-editorial-points article:first-child,.oa-editorial-points article:last-child{padding:0;border:0}.oa-editorial-points h2{font-size:34px}.oa-services ul{grid-template-columns:1fr 1fr}.oa-services li{min-height:78px;padding:15px;font-size:13px}.oa-primary-button--small{width:100%}.oa-map-art{min-height:135px}}
/* The shared footer keeps its dark shell on hotel pages. */
.single-hotel .oa-site-footer{background:#0c0c0c!important;color:#fff!important;border-top:0}
.single-hotel .oa-hotel-intro{padding-bottom:var(--oa-hotel-section-space,76px)}
.single-hotel .oa-room-section,.single-hotel .oa-services,.single-hotel .oa-environment,.single-hotel .oa-related-hotels{padding-top:var(--oa-hotel-section-space,76px);padding-bottom:var(--oa-hotel-section-space,76px)}
.oa-related-hotels{border-bottom:1px solid var(--oa-gray)}
.oa-related-hotels__eyebrow{margin:0 0 10px;color:var(--oa-blue);font:800 11px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}
.oa-related-hotels__heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:30px}.oa-related-hotels__heading h2{margin:0;font:400 clamp(34px,3.3vw,54px)/1 var(--oa-heading-font,Georgia),serif}.oa-related-hotels__heading button{width:44px;height:44px;border:1px solid #bbb;background:#fff;cursor:pointer}.oa-related-hotels__grid{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.oa-related-hotels__grid::-webkit-scrollbar{display:none}.oa-related-hotels__grid>article{flex:0 0 min(390px,82vw);scroll-snap-align:start}
.oa-related-hotels__image{display:block;aspect-ratio:1.35;overflow:hidden;background:#eee}
.oa-related-hotels__image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.oa-related-hotels article:hover img{transform:scale(1.035)}
.oa-related-hotels h3{margin:17px 0 12px;font:400 27px/1.05 var(--oa-heading-font,Georgia),serif}
.oa-related-hotels__link{display:inline-flex;gap:12px;border-bottom:1px solid var(--oa-blue);padding-bottom:4px;color:var(--oa-blue);font:700 11px/1 Arial,sans-serif;text-transform:uppercase}
@media(max-width:760px){.oa-related-hotels__heading{align-items:center}.single-hotel .oa-room-section,.single-hotel .oa-services,.single-hotel .oa-environment,.single-hotel .oa-related-hotels{padding-top:calc(var(--oa-hotel-section-space,76px) * .7);padding-bottom:calc(var(--oa-hotel-section-space,76px) * .7)}}
.oa-section-number{margin:0 0 13px;color:var(--oa-blue);font:800 11px/1 Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}.oa-inline-services{margin-top:28px}.oa-inline-services h3{margin:0 0 16px;font-size:25px}.oa-inline-services ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:0;padding:0}.oa-inline-services li{border:1px solid #d8d8d8;padding:8px 11px;font-size:12px}.oa-hotel-activities{padding:var(--oa-hotel-section-space,36px) 0;border-bottom:1px solid var(--oa-gray)}.oa-hotel-activities h2{margin:0 0 24px;font-size:clamp(34px,3.3vw,54px);line-height:1}.oa-hotel-activities>div{max-width:900px;font:17px/1.65 Manrope,Arial,sans-serif}.oa-hotel-activities .oa-text-link{display:inline-block;margin-top:18px}.oa-room-description{margin:0 0 22px!important}.oa-room-features-title{margin:28px 0 0;font:700 12px/1 Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}
@media(max-width:640px){.oa-hotel-activities{padding:52px 0}.oa-hotel-activities h2{font-size:37px}.oa-inline-services{margin-top:28px}}
/* Unified vertical rhythm for hotel pages. One variable controls every section. */
.single-hotel .oa-hotel-container{padding-bottom:var(--oa-hotel-section-space,36px)}
.single-hotel .oa-hotel-facts{margin-bottom:0}
.single-hotel .oa-hotel-intro,.single-hotel .oa-hotel-activities,.single-hotel .oa-room-section,.single-hotel .oa-services,.single-hotel .oa-environment,.single-hotel .oa-related-hotels{padding-top:var(--oa-hotel-section-space,36px);padding-bottom:var(--oa-hotel-section-space,36px)}
.single-hotel .oa-hotel-intro{gap:clamp(28px,5vw,72px)}
.single-hotel .oa-room-layout{gap:clamp(24px,4vw,52px)}
.single-hotel .oa-room-reason--closing{margin-top:calc(var(--oa-hotel-section-space,36px) * .55)}
.oa-hotel-section-heading{grid-column:1/-1;width:100%;min-width:0}
.oa-hotel-section-heading .oa-section-number{display:flex;align-items:center;gap:22px;margin-bottom:22px;white-space:nowrap}
.oa-hotel-section-heading .oa-section-number span{flex:0 0 auto}
.oa-hotel-section-heading .oa-section-number i{display:block;flex:0 1 180px;height:2px;background:currentColor;opacity:.65}
.oa-hotel-section-heading .oa-section-number b{min-width:0;font:400 clamp(16px,1.65vw,25px)/1.15 var(--oa-body-font,Arial),Arial,sans-serif;letter-spacing:0;color:#61748d;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis}
.single-hotel .oa-hotel-lead-title{width:100%;max-width:none!important;margin:0 0 26px!important;font-size:clamp(38px,5.2vw,76px)!important;line-height:1.02!important;text-wrap:balance}
.single-hotel .oa-room-section>h2{width:100%;max-width:none!important;text-wrap:balance}
@media(max-width:760px){.oa-hotel-section-heading .oa-section-number{flex-wrap:wrap;gap:10px 14px;white-space:normal}.oa-hotel-section-heading .oa-section-number i{flex:1 1 70px}.oa-hotel-section-heading .oa-section-number b{flex:1 0 100%;font-size:15px}.single-hotel .oa-hotel-lead-title{font-size:clamp(34px,10vw,52px)!important;margin-bottom:20px!important}}
@media(max-width:640px){.single-hotel .oa-hotel-intro,.single-hotel .oa-hotel-activities,.single-hotel .oa-room-section,.single-hotel .oa-services,.single-hotel .oa-environment,.single-hotel .oa-related-hotels{padding-top:calc(var(--oa-hotel-section-space,36px) * .72);padding-bottom:calc(var(--oa-hotel-section-space,36px) * .72)}.single-hotel .oa-hotel-container{padding-bottom:calc(var(--oa-hotel-section-space,36px) * .72)}}
.single-hotel .oa-hotel-contact{display:none!important}

.oa-room-section>.oa-section-number{margin-bottom:34px}
