@import url('https://fonts.googleapis.com/css2?family=Caveat:wght@400;500&display=swap');
.rooms-page .room-photos .room-main-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.rooms-page .room-amenities-heading h4{text-transform:none;letter-spacing:0;color:#21190f}
.rooms-hero{height:355px;background-position:center 55%}.rooms-hero-content{padding-top:105px}.rooms-hero h1{font-size:clamp(40px,4.3vw,60px);margin-bottom:10px}.rooms-hero-content>p{line-height:1.5}.rooms-hero .hero-script{font:36px/.95 'Caveat',cursive;color:#edc579;top:115px;right:15px}.rooms-crumb-bar{height:50px}.rooms-page{padding:20px 0 26px;background:#fcfaf6 url('assets/leaf.svg') right top/160px no-repeat}.rooms-page:before{background:url('assets/leaf.svg') center/contain no-repeat;width:160px;height:500px;left:-20px;top:150px;opacity:.8}.rooms-page:after{display:none}.rooms-page>.container,.rooms-crumb-bar>.container,.rooms-hero>.container{width:91%;max-width:1320px}
.rooms-page .room-tabs{gap:12px;margin-bottom:18px}.rooms-page .room-tabs button{height:78px;border-radius:7px;gap:20px;padding:12px}.rooms-page .room-tabs strong{font-size:17px}.rooms-page .room-tabs small{font-size:11px}.rooms-page .room-tabs [aria-selected=true]{background:linear-gradient(110deg,#b97c36,#70400e)}
.rooms-page .room-panel,.rooms-page .room-panel:nth-of-type(even){grid-template-columns:1.15fr 1fr;gap:18px;padding:0;border:0;background:transparent;box-shadow:none;border-radius:0;overflow:visible;align-items:stretch}.rooms-page .room-photos{position:relative;padding:8px;background:#fff;box-shadow:0 9px 28px #6b482014;border-radius:10px;grid-template-rows:minmax(430px,1fr) 115px;gap:10px;min-height:640px}.rooms-page .room-main-photo{height:100%;border-radius:6px}.rooms-page .room-main-photo>b{border-radius:8px;background:#0c0b09e0;font-size:12px;padding:10px 15px}.rooms-page .room-main-photo>.room-photo-count{left:20px;right:auto;bottom:18px;background:none;border-radius:0;font-size:14px;padding:0 0 10px;border-bottom:2px solid #dfb767}.rooms-page .room-photo-strip,.rooms-page .room-photo-strip button{height:115px}.rooms-page .room-photo-strip{gap:9px}.room-photo-prev,.room-photo-next{position:absolute;z-index:4;top:39%;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid #e7ca98;background:#fffaf2;color:#a45d13;font-size:34px;line-height:1;cursor:pointer;padding:0 0 4px}.room-photo-prev{left:13px}.room-photo-next{right:13px}
.rooms-page .room-details{padding:24px 0 0;background:transparent;border-radius:0;display:flex;flex-direction:column;min-width:0}.rooms-page .room-details>.eyebrow{margin-bottom:9px}.rooms-page .room-name h3{font-size:31px;margin-bottom:9px}.rooms-page .room-details>p{font-size:13px;line-height:1.55;margin-bottom:21px;color:#6a6661}.room-highlights{display:grid;grid-template-columns:repeat(3,1fr);background:#f8eddc;padding:20px 13px;border-radius:10px;margin-bottom:16px}.room-highlights>div{display:flex;align-items:center;gap:10px;padding:0 10px;border-right:1px solid #dca764}.room-highlights>div:last-child{border:0}.room-highlights .icon{width:27px;height:27px;flex-shrink:0;color:#a96218}.room-highlights strong{display:block;font-size:11px;color:#16130f}.room-highlights small{display:block;font-size:10px;line-height:1.4;color:#73695e;margin-top:5px}.room-amenities-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.rooms-page .room-amenities-heading h4{font:500 20px var(--serif);margin:0}.room-amenities-heading>span{font:20px 'Caveat',cursive;color:#a1601c}
.rooms-page .room-facilities{grid-template-columns:repeat(4,minmax(0,1fr));gap:13px 8px;margin-bottom:20px}.rooms-page .room-facilities li{flex-direction:column;text-align:center;gap:7px;font-size:11px;line-height:1.35;justify-content:flex-start;min-height:105px}.rooms-page .room-facilities .icon{box-sizing:content-box;width:28px;height:28px;padding:18px;border-radius:50%;background:#f8eddb;color:#ad6619}.rooms-page .room-facilities li span{max-width:100px}
.room-reserve-row{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:auto;align-items:start}.rooms-page .room-reserve-row .room-tariff{margin:0;padding:17px 18px;min-height:96px;border-radius:8px}.rooms-page .room-tariff strong{font-size:33px;white-space:nowrap}.rooms-page .room-tariff b{font-size:12px}.rooms-page .room-tariff span{font-size:10px;line-height:1.5}.rooms-page .room-reserve-row .room-actions{grid-template-columns:1fr;gap:7px;border:0;padding:0;margin:0}.rooms-page .room-actions .button{min-height:44px;font-size:13px;padding:10px}.rooms-page .room-actions .gold{background:linear-gradient(110deg,#b77d3d,#76400d)}.room-reassurance{display:flex;justify-content:space-between;gap:9px;padding:19px 0 0;font-size:10px;color:#5b4430}
.room-love{padding:35px 0;background:linear-gradient(#160e07df,#160e07df),url('assets/rooms-hero-premium.jpg') center 65%/cover;color:#fff;border-bottom:1px solid #9c773a66}.room-love>.container{display:grid;grid-template-columns:1.35fr repeat(4,1fr) 1.1fr;gap:22px;align-items:center;width:90%;max-width:1300px}.room-love h2{font:400 29px/1.2 var(--serif);color:#fff;margin:0}.room-love>.container>div{display:grid;justify-items:center;text-align:center;border-left:1px solid #ba944d66;padding-left:18px}.room-love .icon{box-sizing:content-box;width:28px;height:28px;padding:15px;border:1px solid #d1a450;border-radius:50%;color:#ebbd60;margin-bottom:10px}.room-love strong{font-size:14px;font-weight:500}.room-love small{font-size:11px;color:#e5d8c3;margin-top:5px}.room-love p{font:27px/1 'Caveat',cursive;color:#e4c994;text-align:center;transform:rotate(-7deg);margin:0}
@media(min-width:801px) and (max-width:1150px){.rooms-page .room-tabs strong{font-size:14px}.rooms-page .room-tabs small{font-size:10px}.rooms-page .room-tabs .icon{width:32px}.rooms-page .room-panel,.rooms-page .room-panel:nth-of-type(even){grid-template-columns:1.1fr 1fr;gap:20px}.rooms-page .room-name h3{font-size:27px}.rooms-page .room-details>p{font-size:12px}.room-highlights{padding:16px 6px}.room-highlights>div{padding:0 7px;gap:6px}.room-highlights .icon{width:22px;height:22px}.room-highlights strong{font-size:10px}.room-highlights small{font-size:9px}.rooms-page .room-facilities .icon{padding:14px;width:25px;height:25px}.rooms-page .room-facilities li{font-size:10px;min-height:90px}.room-amenities-heading>span{font-size:16px}.rooms-page .room-photos{min-height:600px;grid-template-rows:minmax(420px,1fr) 100px}.rooms-page .room-photo-strip,.rooms-page .room-photo-strip button{height:100px}.rooms-page .room-tariff strong{font-size:27px}.rooms-page .room-reserve-row .room-tariff{padding:15px 10px}.room-love>.container{grid-template-columns:1.3fr repeat(4,1fr)}.room-love p{display:none}.room-love h2{font-size:25px}.room-love strong{font-size:12px}}
@media(max-width:800px){.rooms-hero{height:360px}.rooms-hero .hero-script{display:none}.rooms-page .room-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}.rooms-page .room-tabs button{height:75px;min-width:0}.rooms-page .room-tabs strong{font-size:15px}.rooms-page .room-panel,.rooms-page .room-panel:nth-of-type(even){grid-template-columns:1fr}.rooms-page .room-photos{min-height:0;grid-template-rows:440px 95px}.rooms-page .room-photo-strip,.rooms-page .room-photo-strip button{height:95px}.rooms-page .room-details{padding:15px 5px}.rooms-page .room-facilities li{font-size:11px}.rooms-crumb-bar p{display:none}.room-love>.container{grid-template-columns:repeat(2,1fr);gap:25px}.room-love h2{grid-column:1/-1;text-align:center}.room-love p{display:none}.room-love>.container>div{border:0;padding:0}}
@media(max-width:480px){.rooms-hero{height:365px}.rooms-hero-content{padding-top:130px}.rooms-hero h1{font-size:40px}.rooms-hero-content>p{font-size:12px}.rooms-page .room-tabs button{gap:10px;padding:9px}.rooms-page .room-tabs .icon{width:26px;height:26px}.rooms-page .room-tabs strong{font-size:13px}.rooms-page .room-tabs small{font-size:9px}.rooms-page .room-photos{grid-template-rows:330px 70px}.rooms-page .room-photo-strip,.rooms-page .room-photo-strip button{height:70px}.rooms-page .room-photo-strip{gap:5px}.room-highlights{padding:15px 5px}.room-highlights>div{flex-direction:column;text-align:center;padding:0 5px}.room-highlights strong{font-size:10px}.room-highlights small{font-size:9px}.room-amenities-heading>span{font-size:16px}.rooms-page .room-facilities{gap:10px 5px}.rooms-page .room-facilities .icon{padding:13px;width:22px;height:22px}.rooms-page .room-facilities li{font-size:10px;min-height:90px}.rooms-page .room-tariff strong{font-size:26px}.rooms-page .room-tariff b{font-size:10px}.rooms-page .room-reserve-row .room-tariff{padding:15px 9px}.room-reassurance{font-size:8px;gap:6px}.rooms-page .room-name h3{font-size:28px}}
@media(max-width:540px){
  .rooms-hero{background-size:cover;background-position:center 42%;}
}

/* Keep every room thumbnail in one rail; extra photographs scroll horizontally. */
.rooms-page .room-photo-strip{
  display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;
  scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#bd8a43 #f1e6d5;padding-bottom:6px;
}
.rooms-page .room-photo-strip::-webkit-scrollbar{height:7px}
.rooms-page .room-photo-strip::-webkit-scrollbar-track{background:#f1e6d5;border-radius:8px}
.rooms-page .room-photo-strip::-webkit-scrollbar-thumb{background:#bd8a43;border-radius:8px}
.rooms-page .room-photo-strip button{flex:0 0 calc((100% - 27px)/4);scroll-snap-align:start}
@media(max-width:600px){.rooms-page .room-photo-strip button{flex-basis:calc((100% - 15px)/4)}}

/* Match the restaurant gallery controls: arrows replace the visible scrollbar. */
.rooms-page .room-photo-strip{padding:0 42px 6px;scrollbar-width:none}
.rooms-page .room-photo-strip::-webkit-scrollbar{display:none}
.rooms-page .room-photo-prev,.rooms-page .room-photo-next{top:auto;bottom:calc(8px + (115px - 40px)/2);width:32px;height:32px;font-size:27px;padding:0 0 3px;background:#f5e6cc;border-color:#dfbf86;box-shadow:0 2px 7px #6d431b1c}
.rooms-page .room-photo-prev{left:11px}.rooms-page .room-photo-next{right:11px}
@media(max-width:800px){.rooms-page .room-photo-prev,.rooms-page .room-photo-next{bottom:calc(8px + (95px - 40px)/2)}}
@media(max-width:540px){.rooms-page .room-photo-strip{padding-inline:34px}.rooms-page .room-photo-prev{left:7px}.rooms-page .room-photo-next{right:7px}.rooms-page .room-photo-prev,.rooms-page .room-photo-next{bottom:calc(8px + (70px - 40px)/2);width:28px;height:28px;font-size:23px}}
