/* V28 - enforce full-viewport centered booking bar independent of inherited layouts */
html,body{overflow-x:clip!important}
body.pp-v12:not(.home-v12) main>section.pp-booking-section{position:relative!important;left:50%!important;right:auto!important;transform:translateX(-50%)!important;width:100vw!important;max-width:100vw!important;min-width:100vw!important;margin:0!important;padding:0 20px 54px!important;box-sizing:border-box!important;background:#fff!important;display:flex!important;justify-content:center!important;align-items:flex-start!important;float:none!important;clear:both!important}
body.pp-v12:not(.home-v12) main>section.pp-booking-section>.pp-booking-container{position:relative!important;left:auto!important;right:auto!important;transform:none!important;width:100%!important;max-width:1250px!important;flex:0 1 1250px!important;margin:-28px auto 0!important;box-sizing:border-box!important;float:none!important}
body.pp-v12:not(.home-v12) main>section.pp-booking-section form.booking.pp-booking-form{width:100%!important;max-width:100%!important}
@media(max-width:600px){body.pp-v12:not(.home-v12) main>section.pp-booking-section{padding:0 14px 35px!important}body.pp-v12:not(.home-v12) main>section.pp-booking-section>.pp-booking-container{margin:14px auto 0!important}}
/* Room photo gallery: consistent tiles and accessible lightbox */
.pp-room-gallery{padding:50px 24px 65px;background:#faf8f5}
.pp-room-gallery .pp-room-inner{max-width:1200px;margin:auto}
.pp-room-gallery h2{text-align:center;font:normal clamp(28px,3vw,42px) Georgia,serif;margin:0 0 12px;color:#201a16}
.pp-room-gallery p{text-align:center;color:#746c65;margin:0 0 28px}
.pp-room-photo-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.pp-room-photo-grid a{display:block;overflow:hidden;border-radius:9px;aspect-ratio:4/3;background:#eee}
.pp-room-photo-grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .3s}
.pp-room-photo-grid a:hover img{transform:scale(1.045)}
.pp-lightbox{position:fixed;inset:0;background:rgba(0,0,0,.93);z-index:99999;display:none;align-items:center;justify-content:center;padding:64px 64px 45px;box-sizing:border-box}
.pp-lightbox.is-open{display:flex}.pp-lightbox img{max-width:100%;max-height:100%;object-fit:contain}
.pp-lightbox button{position:absolute;background:#fff;border:0;border-radius:50%;width:44px;height:44px;cursor:pointer;font-size:26px;color:#222}
.pp-lightbox .close{right:20px;top:20px}.pp-lightbox .prev{left:12px;top:50%}.pp-lightbox .next{right:12px;top:50%}
@media(max-width:850px){.pp-room-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:500px){.pp-room-photo-grid{grid-template-columns:1fr 1fr;gap:8px}.pp-lightbox{padding:55px 8px}.pp-lightbox .prev{left:4px}.pp-lightbox .next{right:4px}}
