/* Shared search form and vehicle photography across the public site. */
.detail-hero-wrapper .single-section .vehicle-detail-img-wrap { overflow: hidden !important; padding: 0; }
.search-section--home .search-section-hero { padding-bottom: 0 !important; }
.home-search-overlap { display: flow-root; padding-top: 24px; background: linear-gradient(to bottom,var(--color-primary,#c41e3a) 50%,#fff 50%); }
.home-search-overlap .container { display: flow-root; }
.home-search-overlap .booking-search-form,
.home-search-overlap .booking-search-bar { margin-bottom: 0; }
.search-section--home .search-section-hero-checkbox { background: #fff; }
.search-section--home .search-section-hero-checkbox .booking-search-below .form-check-label { color: #1a1a1a !important; }
.search-section--home .search-section-body { padding: 0 !important; }
.vehicle-search-promo { display: none !important; }
.booking-search-actions { padding: 12px 0 0; background: #fff; }
.booking-search-actions button { min-height: 44px; }
#vehicleSearchForm { border: 2px solid #ffc107; border-radius: 8px; padding: 8px 10px; background: #fff; }
#vehicleSearchForm .booking-search-bar { border: 0; padding: 0; box-shadow: none; }
#detailDateForm .booking-search-actions { padding: 12px 8px 8px; border: 2px solid #ffc107; border-top: 0; border-radius: 0 0 8px 8px; }
#detailDateForm .detail-date-form-wrapper { border-bottom: 0; border-radius: 8px 8px 0 0; }
.detail-hero-wrapper { background: linear-gradient(to bottom,var(--color-primary,#c41e3a) 0 120px,#fff 120px) !important; padding-top: 24px !important; }
.detail-hero-wrapper .single-section { background: transparent !important; }
.detail-date-hero { background: transparent; padding: 0; }
.detail-date-form-wrapper { border: 2px solid #ffc107; border-radius: 8px; background: #fff; box-shadow: 0 2px 8px rgb(0 0 0 / 6%); margin-bottom: 0 !important; }
.detail-date-hero .search-section-hero-checkbox { background: #fff; }
.detail-date-hero .search-section-hero-checkbox .container { padding: 0; }
.search-section .booking-card__img-wrap,
.vehicle-detail-img-wrap,
.rental-section .vehicle-img-wrap .lazy-container {
    position: relative;
    aspect-ratio: 1.45;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    overflow: hidden !important;
    background: #fff !important;
}
.rental-section .vehicle-img-wrap .lazy-container::before { display: none; }
.search-section .booking-card__img-wrap .booking-card__img,
.vehicle-detail-img-wrap .vehicle-detail-img,
.rental-section .vehicle-img-wrap .lazy-container img {
    position: absolute !important;
    width: var(--photo-width,100%) !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    left: var(--photo-left,0%) !important;
    top: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translateY(var(--photo-y,-50%)) !important;
    object-fit: contain !important;
    margin: 0 !important;
}
@media (max-width: 991px) {
    .home-search-overlap { padding-top: 12px; }
    #vehicleSearchForm .booking-search-bar,
    #detailDateForm .detail-date-form-wrapper { padding: 8px 10px; }
    #vehicleSearchForm .booking-search-form__inner,
    #detailDateForm .booking-search-form__inner { flex-direction: column; gap: 0; }
    #vehicleSearchForm .booking-search-field,
    #detailDateForm .booking-search-field { width: 100%; min-width: 0; padding: 8px 4px; gap: 2px; border-right: 0; border-bottom: 1px solid #e5e7eb; }
    #vehicleSearchForm .booking-search-field__row,
    #detailDateForm .booking-search-field__row { min-height: 44px; }
    #vehicleSearchForm .booking-search-field--date .booking-search-field__row,
    #detailDateForm .booking-search-field--date .booking-search-field__row { display: grid; grid-template-columns: 20px minmax(0,1fr) 88px; gap: 6px; }
    #vehicleSearchForm .booking-search-field__input,
    #detailDateForm .booking-search-field__input { min-width: 0; width: 100%; }
    #vehicleSearchForm .booking-search-field--date .booking-search-field__input,
    #detailDateForm .booking-search-field--date .booking-search-field__input { font-size: 14px !important; }
    #vehicleSearchForm .booking-search-field__time,
    #detailDateForm .booking-search-field__time { min-width: 0; width: 88px; padding: 8px 4px !important; }
    .detail-hero-wrapper { padding-bottom: 60px !important; }
}
