.hero-reservation{position:absolute;z-index:4;left:4%;right:4%;bottom:72px;background:rgba(255,255,255,.96);color:#163d36;border:1px solid #fff;border-radius:22px;box-shadow:0 18px 70px #071f3566;padding:17px 24px;backdrop-filter:blur(28px)}
.reservation-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}.reservation-heading strong{font-size:22px;letter-spacing:-.6px}.reservation-heading span{font-size:12px;color:#486259}.hero-reservation .booking-strip{margin:0;padding:0;background:none;box-shadow:none;border:0;width:100%;max-width:none}.hero-reservation .booking-form{padding:0;gap:12px}.hero-reservation .booking-form input,.hero-reservation .booking-form select{background:#f0f5f1;border:1px solid #b9cfc6;border-radius:9px;padding:10px;color:#102e27;min-height:46px}.hero-reservation .booking-form .button{background:linear-gradient(120deg,#07675e,#183c70);color:#fff;min-height:55px;box-shadow:0 7px 20px #164c4933;font-size:16px}.hero-reservation .date-note{margin:0;font-size:10px}.signature-hero{min-height:780px;height:calc(100svh - 125px);max-height:1060px}.signature-copy{padding-bottom:255px}.signature-copy h1{font-size:clamp(46px,6vw,86px)}.arrival-pass{top:25%;bottom:auto}.header-book{box-shadow:0 4px 16px #1d5e4933}
.studio-shell{display:grid;grid-template-columns:minmax(0,1fr) 310px;border:1px solid #cfded7;border-radius:28px;overflow:hidden;background:linear-gradient(130deg,#edf4ed,#e0e9f4);box-shadow:0 25px 90px #244d3314}.studio-stage{position:relative;min-height:640px;overflow:hidden;background:radial-gradient(ellipse at 45% 35%,#f7f6eb,#d5e1df 70%)}.studio-cover{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.studio-start{position:absolute;inset:0;display:grid;place-items:center;background:linear-gradient(0deg,#102c3966,transparent)}.studio-start .button{box-shadow:0 16px 70px #071b39aa;padding:22px 32px;font-size:17px}.studio-canvas{position:absolute;inset:0}.studio-canvas canvas{display:block;width:100%;height:100%;touch-action:none;outline-offset:-5px}.studio-caption{position:absolute;left:20px;bottom:18px;right:20px;pointer-events:none;background:#ffffffd9;border-radius:10px;padding:9px 13px;font-size:11px;color:#28483f}.studio-status{position:absolute;top:15px;left:20px;right:20px;color:#173e35;background:#ffffffdf;border-radius:10px;padding:10px;pointer-events:none}.studio-status:empty{display:none}.studio-panel{padding:26px;background:#ffffffb8;backdrop-filter:blur(18px);display:flex;flex-direction:column;gap:16px}.studio-panel label{font-size:11px;text-transform:uppercase;letter-spacing:.1em}.studio-panel select{display:block;width:100%;margin-top:10px;font:inherit;font-size:16px;letter-spacing:0;text-transform:none;padding:12px;border:1px solid #b8cfc4;border-radius:9px;background:#fff;color:#153d32}.studio-panel p{margin:0}.studio-bed{font-size:13px}.studio-controls{display:grid;gap:14px}.studio-presets,.studio-tools,.studio-lights{display:flex;flex-wrap:wrap;gap:5px}.studio-panel button:not(.button){border:1px solid #c2d6cd;border-radius:9px;padding:10px;background:#fff;color:#20483a;font:inherit;font-size:11px;cursor:pointer;min-height:40px}.studio-panel button[aria-pressed=true]{background:#184b40;color:white;border-color:#184b40}.studio-help,.studio-detail-copy{font-size:11px;line-height:1.6;color:#436052}.studio-details{display:flex;flex-wrap:wrap;gap:5px}.studio-reference{width:100%;border-radius:12px}.studio-expanded .studio-shell{grid-template-columns:minmax(0,1fr) 280px}.studio-expanded{max-width:none;width:96%}.studio-expanded .studio-stage{min-height:80svh}.studio-photo-toggle{font-size:13px!important}.studio-room-link{font-size:12px}.room-studio .section-heading>p{font-size:12px;max-width:410px}
.service-grid{gap:18px!important}.service-grid article{overflow:hidden;border:1px solid #d6e3db;border-radius:22px;padding-top:0!important;background:#ffffffbd;box-shadow:0 12px 36px #1538270b}.service-photo{height:180px;margin:0 -30px 25px;background-repeat:no-repeat;background-color:#eee;background-size:cover}.service-photo-0{background-image:url('/assets/airport.webp');background-position:center}.service-photo-1{background-image:url('/assets/bs-rental-archive.jpg');background-size:190% auto;background-position:100% 41%}.service-photo-2{background-image:url('/assets/bs-rental-archive.jpg');background-size:490% auto;background-position:60% 55%}.service-photo-3{background-image:url('/assets/breakfast-archive.jpg');background-size:140% auto;background-position:45% 48%}.service-provenance{font-size:11px;color:#556d61;margin-top:18px}.film-classification{font-size:10px!important;text-transform:none!important;background:#152b32b3!important;pointer-events:none}.film-disclosure{max-width:760px;font-size:11px;line-height:1.6}
@media(max-width:1000px){.studio-shell{grid-template-columns:minmax(0,1fr) 260px}.studio-panel{padding:20px}.hero-reservation{left:3%;right:3%;padding:15px}.arrival-pass{display:none}.signature-copy{padding-bottom:260px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){.signature-hero{min-height:840px;height:auto;max-height:none;margin:8px!important}.signature-copy{padding:80px 22px 360px!important}.signature-copy h1{font-size:44px;line-height:1.05}.signature-copy>p{font-size:13px;max-width:90%}.hero-reservation{bottom:58px;padding:15px;left:12px;right:12px;border-radius:16px}.reservation-heading{display:block}.reservation-heading strong{font-size:18px}.reservation-heading span{display:none}.hero-reservation .booking-form{display:grid;grid-template-columns:1fr 1fr!important;gap:10px}.hero-reservation .booking-form label{padding:0!important;border:0!important;min-width:0;font-size:10px}.hero-reservation .booking-form input,.hero-reservation .booking-form select{width:100%;font-size:14px;min-width:0}.hero-reservation .booking-form .button{grid-column:1/-1;width:100%}.hero-reservation .date-note{grid-column:1/-1;font-size:9px}.signature-bottom{left:20px!important;right:20px!important;bottom:16px!important}.signature-bottom>span{display:none}.signature-bottom-group{width:100%;justify-content:space-between}.studio-shell,.studio-expanded .studio-shell{grid-template-columns:1fr}.studio-stage{min-height:400px}.studio-panel{gap:12px}.studio-presets button{flex:1}.studio-caption{font-size:10px;left:10px;right:10px;bottom:10px}.service-photo{height:170px}.service-grid article{padding:0 20px 22px!important}.service-photo{margin:0 -20px 20px}.service-grid article h3{font-size:20px}.service-grid article p{font-size:12px}.studio-expanded .studio-stage{min-height:65svh}}
@media(max-width:400px){.service-grid{grid-template-columns:1fr!important}.signature-copy h1{font-size:38px}.hero-reservation .booking-form{gap:8px}.reservation-heading strong{font-size:16px}}
@media(prefers-reduced-motion:reduce){.room-studio *,.hero-reservation *{scroll-behavior:auto!important;transition:none!important}}
@media(prefers-contrast:more){.studio-panel,.hero-reservation{background:white}.studio-caption{background:white;color:black}}
[hidden]{display:none!important}
.signature-hero{min-height:680px}
.service-photo-1{background-size:300% auto;background-position:100% 40%}
.service-photo-2{background-size:650% auto;background-position:58% 53%}
@media(max-width:700px){
 .signature-hero{display:block;min-height:0;height:auto;padding:22px 16px 55px!important}
 .signature-topline{display:none}
 .signature-copy{padding:0!important;margin:12px 0 18px!important;max-width:100%}
 html[lang] .signature-copy h1{font-size:34px;line-height:1.17;letter-spacing:-1px}
 .signature-copy .eyebrow{margin-bottom:12px;font-size:9px}
 .signature-copy>p:not(.eyebrow){font-size:12px;line-height:1.55;margin:12px 0;max-width:100%}
 .signature-actions{gap:16px}.signature-actions>.button{display:none}.signature-watch{font-size:11px}.signature-watch>span{width:30px;height:30px}
 .hero-reservation{position:relative;left:auto;right:auto;bottom:auto;padding:13px;margin:18px 0 0}
 .reservation-heading{margin-bottom:8px}.reservation-heading strong{font-size:17px}
 .hero-reservation .booking-form{gap:8px}.hero-reservation .booking-form label{letter-spacing:0}
 .hero-reservation .booking-form .button{min-height:48px;font-size:14px}
 .hero-reservation .booking-form input,.hero-reservation .booking-form select{min-height:42px;padding:8px}
 .service-grid article:nth-child(odd){padding-left:20px!important}
}
