.rental-page {color:#183653;}
.rental-page .text-primary,.rental-page .rental-icon {color:#0d4087!important;}
.rental-page h2 {font-size:clamp(25px,3vw,36px);line-height:1.2;}
.rental-page h3 {font-size:22px;line-height:1.3;}
.rental-page .rental-heart {width:240px;max-width:100%;display:block;margin:0 auto 20px;}
.rental-page .rental-facts > div {padding:24px;border:1px solid #dce8ee;border-radius:16px;background:#fff;}
.rental-page .rental-facts {--bs-gutter-x:0;gap:24px;display:grid;grid-template-columns:1fr 1fr;}
.rental-page .rental-facts > div {width:auto;}
.rental-page li {margin-bottom:10px;}
.rental-reservation {background:#eef5f9;}
.rental-page .rental-form-card {border:1px solid #dce8ee;border-radius:16px;box-shadow:none;}
.rental-page fieldset {margin:24px 0 0;padding:0;border:0;min-width:0;}
.rental-page legend {font-size:20px;font-weight:600;color:#0d4087;margin-bottom:16px;}
.rental-page .rental-submit-actions {margin-top:24px;padding-top:20px;border-top:1px solid #dce8ee;}
.rental-calendar-instructions {padding:16px;border-left:3px solid #0d4087;background:#fff;border-radius:0 12px 12px 0;}
.front-rental-calendar {background:#fff;border:1px solid #dce8ee;border-radius:16px;overflow:hidden;}
.front-rental-calendar table {width:100%;table-layout:fixed;margin-bottom:0;}
.front-rental-calendar th {background:#eef5f9;color:#183653;font-size:13px;padding:12px 0;text-align:center;}
.front-rental-calendar td {height:48px;padding:2px;text-align:center;vertical-align:middle;border-color:#e1e9ef;}
.front-rental-calendar .day-number {display:inline-flex;justify-content:center;align-items:center;width:100%;max-width:44px;min-height:44px;border:0;border-radius:10px;font-size:14px;font-weight:600;}
.front-rental-calendar .available .day-number {background:#e8f5ed;color:#205c37;}
.front-rental-calendar .booked .day-number {background:#fbe9e9;color:#8f2631;text-decoration:line-through;}
.front-rental-calendar .blocked .day-number,.front-rental-calendar .past .day-number {background:#edf0f3;color:#566572;text-decoration:line-through;}
.front-rental-calendar .outside-month .day-number {background:transparent;color:#748391;}
.front-rental-calendar .selectable .day-number:hover {box-shadow:inset 0 0 0 2px #0d4087;}
.front-rental-calendar :is(.selected-start,.selected-end) .day-number {background:#0d4087;color:white;text-decoration:none;}
.front-rental-calendar .selected-range .day-number {background:#dae8f7;color:#0d4087;}
.front-rental-calendar .day-number:disabled {cursor:default;opacity:1;}
.calendar-legend {display:flex;flex-wrap:wrap;gap:12px;font-size:13px;}
.calendar-legend span::before {content:'';display:inline-block;width:10px;height:10px;margin-right:6px;border-radius:50%;}
.calendar-legend .available::before {background:#205c37;}
.calendar-legend .booked::before {background:#8f2631;}
.calendar-legend .blocked::before {background:#566572;}
.rental-page .gallery-img {aspect-ratio:4/3;object-fit:cover;border-radius:12px;}
.rental-gallery {background:#f7fafc;}
.rental-page .modal {z-index:1060;}
.rental-page .modal-img,.rental-page #modal-img {max-height:85vh;object-fit:contain;}
.rental-page .errorlist {color:#972934;padding-left:20px;}
.rental-page .rental-unavailable {background:white;padding:16px;border-radius:12px;}
.rental-page [id] {scroll-margin-top:150px;}
.rental-bookings .card-header {gap:16px;flex-wrap:wrap;}
@media(max-width:767.98px) {
 .rental-page .rental-facts {grid-template-columns:1fr;}
 .rental-page .rental-facts > div {padding:20px;}
 .rental-page .card-body {padding:20px!important;}
 .rental-page .btn {min-height:44px;white-space:normal;}
 .rental-page .rental-submit-actions .btn {width:100%;}
 .front-rental-calendar .btn {min-width:44px;}
 .rental-bookings .ux-order-list {min-width:0;}
}
/* Keep the shared shop table spacing out of the seven-column calendar. */
.frontend-theme .rental-page .front-rental-calendar table th {padding:12px 0;background:#eef5f9;color:#183653;}
.frontend-theme .rental-page .front-rental-calendar table td {padding:2px;height:48px;}
.frontend-theme .rental-page .front-rental-calendar .day-number {padding:0;}
