.booking-main{padding:75px 0 95px;background:radial-gradient(circle at 85% 0%,#1b3552 0%,#071426 42%,#050c17 100%);color:#f7f7fa}.booking-eyebrow{color:#d6aa49;letter-spacing:.18em;font-size:.8rem;font-weight:700}.booking-main h1{font-size:clamp(2.3rem,6vw,4.7rem);font-weight:900;margin:12px 0}.booking-lead{color:#bdc8d5;max-width:750px;font-size:1.1rem;margin-bottom:35px}.booking-panel{background:#102039;border:1px solid #34445d;border-radius:18px;padding:clamp(20px,4vw,38px);box-shadow:0 15px 45px #0003}.booking-panel h2{font-size:1.65rem;margin-bottom:24px}.booking-panel h3{font-size:1.1rem;color:#e8bb5a;margin-top:25px}.booking-panel a{color:#f5c65c}.booking-panel .form-label{color:#f1f4f9;font-weight:600}.booking-panel .form-control,.booking-panel .form-select{background:#fff;color:#182333;min-height:48px;border:2px solid #cad2dc}.booking-panel textarea.form-control{min-height:130px}.booking-panel .form-control:focus,.booking-panel .form-select:focus{border-color:#eac45c;box-shadow:0 0 0 3px #eac45c55}.captcha-row{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.captcha-code{display:inline-block;min-width:150px;padding:9px 22px;background:#f6e9c2;color:#15223a;border:2px dashed #a88233;border-radius:8px;font-size:2rem;font-weight:900;letter-spacing:.23em;transform:skew(-3deg);user-select:none}.captcha-input{max-width:260px}.booking-disclaimer,.booking-panel .form-text{color:#b7c6d9;font-size:.9rem}.booking-disclaimer{margin:25px 0}.booking-aside p{color:#d3dce8;line-height:1.65}@media(max-width:767px){.booking-main{padding:35px 0 55px}.booking-panel{border-radius:12px}.booking-panel .btn-lg{width:100%}}
/* Native mobile date input with one decorative calendar glyph. */
.booking-date-picker{position:relative;display:block;width:100%;min-width:0}
.booking-date-picker input[type="date"]{display:block;width:100%;min-width:0;min-height:54px;padding:12px 60px 12px 14px!important;font-size:16px;box-sizing:border-box;color-scheme:light;position:relative;z-index:2;cursor:pointer;-webkit-appearance:auto;appearance:auto}
/* The real browser date indicator stays above the artwork and receives the tap. */
.booking-date-picker input[type="date"]::-webkit-calendar-picker-indicator{position:absolute;right:0;top:0;width:56px;height:100%;margin:0;padding:0;opacity:.01;cursor:pointer;pointer-events:auto}
.booking-calendar-button{position:absolute;right:6px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:44px;height:42px;padding:0;border:1px solid #c4a35c;border-radius:9px;background:#f8ebc9;color:#182a42;z-index:3;pointer-events:none}
.booking-date-picker input[type="date"]:focus-visible{outline:3px solid #eac45c;outline-offset:2px}
@media(max-width:767.98px){.booking-date-picker input[type="date"]{min-height:54px;padding-right:66px!important}.booking-calendar-button{width:46px;height:44px}}

/* Mobile date field: constrain native date-control intrinsic width to the form column. */
@media (max-width:767.98px){
  .booking-panel,.booking-panel form,.booking-panel .row,.booking-panel .row>[class*="col-"]{min-width:0;max-width:100%;}
  .booking-date-picker{width:100%;max-width:100%;min-width:0;overflow:hidden;box-sizing:border-box;}
  .booking-date-picker input[type="date"]{width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;display:block;overflow:hidden;font-size:16px!important;}
  .booking-calendar-button{right:6px;flex-shrink:0;}
}

/* Mobile-safe date control: neutralize WebKit intrinsic sizing and Bootstrap gutter overflow. */
.booking-panel,.booking-panel form,.booking-panel .row,.booking-panel .row > * {box-sizing:border-box;min-width:0;}
.booking-date-picker {position:relative;width:100%;max-width:100%;min-width:0;box-sizing:border-box;}
.booking-date-picker #date {display:block;inline-size:100%;max-inline-size:100%;min-inline-size:0;width:100%;max-width:100%;min-width:0;box-sizing:border-box;-webkit-appearance:none;appearance:none;padding-inline:12px 58px!important;}
@media(max-width:767.98px){
 .booking-main .container,.booking-main .col-lg-8,.booking-panel,.booking-panel form {min-width:0;max-width:100%;}
 .booking-panel .row {min-width:0;}
 .booking-panel .row > [class*="col-"] {min-width:0;max-width:100%;}
 .booking-date-picker {overflow:clip;}
 .booking-date-picker #date {inline-size:100%!important;max-inline-size:100%!important;min-inline-size:0!important;font-size:16px!important;}
}
