.booking-single-page .hero{min-height:0;height:auto;background:#0d1b2a;padding:120px 24px 30px}.booking-single-page .hero-bg,.booking-single-page .hero-overlay{display:none}.booking-single-page .hero-content{position:relative;padding:0;max-width:1180px;margin:auto;width:100%}.booking-single-page .hero-title{font-size:clamp(30px,4vw,50px)}.booking-single-page section.main{padding:10px 24px 70px;background:#0d1b2a}.booking-single-page section.main>.container{max-width:1180px}
.booking-folio{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid #ffffff20;border-radius:24px;overflow:hidden;background:#142735;color:white}.booking-photo{position:relative;min-height:600px;background:#102b39}.booking-photo>img{position:absolute;width:100%;height:100%;object-fit:cover}.booking-photo::after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 45%,#071a2be6);pointer-events:none}.booking-photo-caption{position:absolute;z-index:1;bottom:32px;left:28px;right:28px;display:grid;gap:12px}.booking-photo-caption span,.booking-eyebrow{font:11px/1.5 'DM Sans',sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#a4dedb}.booking-photo-caption strong{font:28px/1.2 'Archivo Black',sans-serif;text-transform:uppercase}
.booking-content{padding:36px}.booking-content h2{font:30px/1.2 'Archivo Black',sans-serif;margin:10px 0 24px;color:white}.booking-content label{display:block;font:500 13px/1.5 'DM Sans',sans-serif;margin:16px 0 8px;color:#edf5f6}.booking-content label span{font-size:11px;color:#a1b5bf;font-weight:400}.booking-content input,.booking-content select{width:100%;min-width:0;border:1px solid #ffffff35;border-radius:10px;padding:13px 12px;background:#0c1d2b;color:white;font:16px/1.4 'DM Sans',sans-serif;min-height:48px}.booking-content input:focus,.booking-content select:focus{outline:2px solid #6ed2cf;outline-offset:2px}.booking-input-row{display:grid;grid-template-columns:.55fr 1fr;gap:16px}
.booking-status,.booking-reassurance{font:13px/1.6 'DM Sans',sans-serif;color:#bdcdd5;margin:14px 0}.booking-content .booking-breakdown{margin:20px 0;padding:18px;border:1px solid #ffffff1c;border-radius:14px;background:#0d1d2b}.booking-content .booking-line{display:flex;justify-content:space-between;align-items:baseline;gap:18px;font:13px/1.6 'DM Sans',sans-serif;padding:8px 0;color:#c5d5de}.booking-content .booking-line strong{text-align:right;color:white;max-width:68%}.booking-content .booking-total{border-top:1px solid #ffffff20;margin-top:5px;padding-top:14px}.booking-content .booking-deposit{border:0;background:transparent;color:#98e3d5}.booking-content .booking-deposit strong{font-size:21px;color:#98e3d5}
.booking-cta{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;padding:16px 20px;border-radius:12px;background:#2a9892;color:#fff;text-decoration:none;font:600 14px/1.5 'DM Sans',sans-serif}.booking-cta:hover{background:#32aaa1}.booking-cta[aria-disabled=true]{opacity:.45;cursor:not-allowed}.booking-cta:focus-visible{outline:3px solid #b7eee6;outline-offset:4px}.booking-private-link{display:block;color:#9cdedb;margin-top:24px;font:13px/1.6 'DM Sans',sans-serif}.booking-content [hidden]{display:none!important}
@media(max-width:700px){.booking-single-page .hero{padding:110px 20px 20px}.booking-single-page section.main{padding:0 12px 45px}.booking-folio{grid-template-columns:1fr;border-radius:18px}.booking-photo{min-height:190px}.booking-photo-caption{bottom:20px;left:20px}.booking-photo-caption strong{font-size:23px}.booking-content{padding:24px 20px}.booking-content h2{font-size:25px;margin-bottom:16px}.booking-input-row{gap:12px}.booking-content .booking-line{gap:10px}.booking-content .booking-line strong{max-width:64%}}
.booking-single-page nav,.booking-single-page nav.scrolled{background:#0d1b2af5}.booking-single-page nav .nav-logo-text strong,.booking-single-page nav.scrolled .nav-logo-text strong,.booking-single-page nav .nav-links a,.booking-single-page nav.scrolled .nav-links a,.booking-single-page nav .nav-hamburger{color:#f4f8fa}.booking-content .booking-line>span{color:#c5d5de}.booking-content .booking-line{border-bottom:1px solid #ffffff16}.booking-content .booking-error{color:#ffadb4;font:13px/1.6 'DM Sans',sans-serif}
