.booking-page{max-width:1200px}.booking-header{max-width:760px;margin-left:auto;margin-right:auto}.booking-chip{font-size:0.75rem;letter-spacing:0.12em;padding:0.35rem 0.85rem;border-radius:999px;background:rgba(202,0,8,0.12);color:var(--bs-primary);font-weight:700}.booking-title{font-size:clamp(2.2rem,4vw,3rem);font-weight:700;color:#0f172a}.booking-subtitle{color:#475569;font-size:1.05rem}.booking-alert{max-width:760px;margin-left:auto;margin-right:auto}.booking-grid{display:grid;gap:clamp(1.75rem,3vw,2.75rem)}.booking-form-card,.booking-info-card{border-radius:28px;background:#ffffff;box-shadow:0 28px 60px -35px rgba(15,23,42,0.3);overflow:hidden}.booking-form-card{padding:clamp(1.75rem,2.5vw,2.5rem);display:flex;flex-direction:column;gap:1.75rem}.booking-form-header{display:flex;flex-direction:column;gap:0.75rem}.booking-form-title{font-size:1.9rem;font-weight:600;margin:0;color:#0f172a}.booking-form-subtitle{color:#475569;margin:0}.booking-label{font-weight:600;color:#1f2937;letter-spacing:0.03em;text-transform:uppercase;font-size:0.78rem}.booking-select{border-radius:14px;padding:0.8rem 1rem;border:1px solid rgba(15,23,42,0.12);background-color:rgba(15,23,42,0.03)}.booking-select:focus{border-color:var(--bs-primary);box-shadow:0 0 0 0.25rem rgba(202,0,8,0.15);background-color:#fff}.booking-input{border-radius:14px;border:1px solid rgba(15,23,42,0.12);background-color:rgba(15,23,42,0.03)}.booking-input:focus{border-color:var(--bs-primary);box-shadow:0 0 0 0.25rem rgba(202,0,8,0.15);background-color:#fff}.booking-dates-card,.booking-extras-card{padding:1.5rem;border-radius:22px;background:rgba(15,23,42,0.02);border:1px solid rgba(15,23,42,0.08)}.booking-section-title{font-size:1.2rem;font-weight:600;margin-bottom:0.75rem;color:#111827}.booking-section-subtitle{font-size:0.95rem;color:#475569}.booking-addon{border:1px solid rgba(15,23,42,0.18);border-radius:18px;padding:0.75rem 0.95rem;background:#fff;transition:border-color 0.2s ease,box-shadow 0.2s ease}.booking-addon:hover,.booking-addon:focus-within{border-color:var(--bs-primary);box-shadow:0 12px 30px -20px rgba(202,0,8,0.6)}.booking-addon .form-check-input{width:1.1rem;height:1.1rem}.booking-addon .form-check-input:checked{background-color:var(--bs-primary);border-color:var(--bs-primary);box-shadow:0 0 0 0.1rem rgba(202,0,8,0.2)}.addon-title{display:block;font-weight:600;color:#111827;text-transform:uppercase;font-size:0.8rem}.addon-caption{display:block;font-size:0.75rem;color:#6b7280}.booking-form-footer{display:flex;flex-direction:column;gap:1.25rem;margin-top:1.5rem}.booking-submit-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.65rem;border-radius:999px;padding:0.95rem 1.7rem;font-weight:600}.booking-disclaimer{font-size:0.82rem;color:#64748b;text-align:center}.booking-disclaimer a{color:inherit;text-decoration:underline}.booking-disclaimer a:hover,.booking-disclaimer a:focus-visible{color:var(--bs-primary)}.booking-info-card{display:flex;flex-direction:column;background:linear-gradient(135deg,#131e30 0%,#1d2a40 100%);color:#f1f5f9;min-height:0}.booking-info-body{padding:clamp(1.75rem,2.5vw,2.5rem);display:flex;flex-direction:column;gap:1.5rem}.booking-info-title{font-size:1.7rem;font-weight:600;margin:0;color:#f8fafc}.booking-info-text{color:rgba(241,245,249,0.85);margin:0}.booking-info-text a{color:inherit;text-decoration:none;display:flex;margin-top:-10px!important;padding-top:0rem!important}.booking-detail-list{display:flex;flex-direction:column;gap:1.1rem}.booking-detail-item{display:flex;gap:1rem;align-items:flex-start}.booking-detail-icon{font-size:1.6rem;padding:0.45rem;border-radius:14px;background:rgba(248,250,252,0.15);color:#f8fafc}.booking-detail-label{display:block;font-size:0.75rem;text-transform:uppercase;letter-spacing:0.12em;font-weight:600;color:rgba(226,232,240,0.65)}.booking-detail-value{display:inline-block;font-weight:600;color:#f1f5f9}.booking-detail-value a{color:inherit;text-decoration:none}.booking-detail-value a:hover,.booking-detail-value a:focus-visible{color:var(--bs-primary)}.booking-quick-actions{display:flex;flex-direction:column;gap:0.75rem}.booking-action-btn{display:inline-flex;align-items:center;justify-content:center;gap:0.6rem;border-radius:999px;padding:0.85rem 1.5rem;font-weight:600}.booking-quick-actions .btn-outline-primary{color:#fff;background:#0f172a;border-color:rgba(255,255,255,0.4)}.booking-quick-actions .btn-outline-primary:hover,.booking-quick-actions .btn-outline-primary:focus-visible{color:#fff;background:color-mix(in srgb,#0f172a 85%,white);border-color:rgba(255,255,255,0.65)}.booking-action-dark{border-color:rgba(248,250,252,0.3)!important;color:#f8fafc!important}.booking-action-dark:hover,.booking-action-dark:focus-visible{background:rgba(248,250,252,0.15)!important}.long-hire-pill{display:flex;align-items:flex-start;gap:0.75rem;margin-top:0.75rem;padding:0.95rem 1rem;border-radius:18px;border:1px solid rgba(13,110,253,0.18);background:linear-gradient(135deg,rgba(13,110,253,0.08),rgba(15,23,42,0.04));color:#0b2042}.long-hire-pill .material-symbols-outlined{color:#0d6efd;font-size:1.4rem}.long-hire-title{font-weight:700;font-size:0.95rem;letter-spacing:0.02em}.long-hire-caption{margin:0;color:#334155;font-size:0.9rem}.flatpickr-input[readonly]{background-color:rgba(15,23,42,0.03)}.flatpickr-calendar{border-radius:16px;box-shadow:0 28px 60px -35px rgba(15,23,42,0.35);border:1px solid rgba(15,23,42,0.12)}.flatpickr-day.today{border-color:var(--bs-primary);color:var(--bs-primary)}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange{background:var(--bs-primary);border-color:var(--bs-primary)}.grecaptcha-badge{visibility:hidden}.booking-form-card{order:1}.booking-info-card{order:2}@media (min-width:768px){.booking-quick-actions{flex-direction:row;gap:0}.booking-action-btn{flex:1;width:auto;min-width:0}.booking-page{padding-left:3rem!important;padding-right:3rem!important}}@media (min-width:992px){.booking-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr);align-items:flex-start}.booking-form-card{order:1}.booking-info-card{order:2;align-self:flex-start}}@media (max-width:575.98px){.booking-header{text-align:center}.booking-quick-actions .btn{width:100%}.booking-info-card,.booking-form-card{border-radius:22px}}