.rental-detail-page{max-width:920px;margin:0 auto 60px}.availability-panel{margin:26px 0;position:static}.availability-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:24px}.availability-heading h2{margin:0}.availability-price{display:flex;align-items:baseline;gap:5px;white-space:nowrap}.availability-price strong{font-size:27px;letter-spacing:-1px}.availability-price small{font-size:12px;font-weight:400;color:#6c7d71}.availability-dates{display:grid;grid-template-columns:1fr 1fr 90px;gap:14px}.availability-calendar-toggle{border:0;background:none;color:#235744;font-size:12px;padding:8px 0;text-align:left;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.availability-panel [hidden]{display:none!important}.availability-feedback{margin:14px 0!important}.availability-feedback.error{color:#b62332}.availability-calendar{border:1px solid #dce3d5;border-radius:12px;padding:15px;margin-bottom:18px;max-width:480px}.calendar-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.calendar-heading button{border:0;border-radius:6px;background:#eef3e9;color:#194438;min-width:34px;min-height:34px;cursor:pointer}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekdays{font-size:11px;text-align:center;margin:14px 0 8px}.calendar-days button{border:1px solid transparent;min-height:40px;border-radius:7px;background:#f0f1ed;color:#8b9188}.calendar-days button.available,.calendar-legend .available{background:#e0f1e3;color:#235f37}.calendar-days button.partial,.calendar-legend .partial{background:#fff0ce;color:#7d5a11}.calendar-days button:not(:disabled){cursor:pointer}.calendar-days button[aria-pressed=true]{outline:2px solid #194438;outline-offset:1px}.calendar-legend{display:flex;gap:8px;flex-wrap:wrap;font-size:10px;margin-top:14px}.calendar-legend span{padding:4px 6px;border-radius:4px;background:#f0f1ed}.rental-option-group{margin:18px 0}.rental-option-group h4{margin:0 0 8px}.rental-option-slots{display:flex;gap:8px;flex-wrap:wrap}.rental-option-slots button{border:1px solid #cbd8c9;background:#fff;color:#194438;padding:11px 14px;border-radius:8px;cursor:pointer;font:inherit;font-size:13px}.rental-option-slots button[aria-pressed=true]{background:#194438;color:#fff;border-color:#194438}.availability-result{padding:15px 0;font-size:20px;font-weight:700;color:#194438}.availability-panel fieldset{border:0;padding:20px 0 0;margin:20px 0 0;border-top:1px solid #dce3d5;min-width:0}.availability-panel legend{font-size:21px;font-weight:650;padding:0}.availability-panel .field{margin-bottom:12px}.availability-panel input{font-size:16px!important}.availability-panel button:focus-visible{outline:3px solid #81ae87;outline-offset:3px}.availability-panel button:disabled{opacity:.5;cursor:default}@media(max-width:540px){.availability-heading{display:block}.availability-heading h2{margin-bottom:10px}.availability-price strong{font-size:28px}.availability-dates{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px}.availability-dates>.field:last-child{grid-column:1/-1;max-width:110px}.availability-panel{padding:18px}.availability-calendar-toggle{font-size:11px}.calendar-days{gap:4px}.calendar-days button{min-height:36px;padding:0}.detail-copy p{line-height:1.65}.detail-copy h1{font-size:28px}}
.rental-option-group{border:1px solid #dce3d5;border-radius:9px;margin:10px 0;padding:0 13px}.rental-option-group summary{cursor:pointer;padding:13px 0;font-size:14px;font-weight:650}.rental-option-group[open] .rental-option-slots{padding:0 0 13px}.rental-option-group[open] summary{color:#194438}
.availability-period{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.availability-period>.field:last-child{grid-column:1/-1;max-width:110px}.availability-period input,.availability-period select{width:100%;min-height:48px;font-size:16px}.availability-panel .availability-heading h2{font-size:24px}.availability-panel .availability-price strong{font-size:27px}.availability-panel .availability-price small{font-size:12px}@media(max-width:540px){.availability-panel .availability-heading{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.availability-panel .availability-heading h2{font-size:21px;margin:0}.availability-panel .availability-price strong{font-size:25px}.availability-period{gap:10px}.availability-period label span{font-size:14px}}
.advanced-search{margin:12px 0}.advanced-search summary{cursor:pointer;color:#194438;font-size:14px;padding:8px 0}.advanced-search-fields{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;padding:16px 0}.advanced-search-fields label span{font-size:12px}.advanced-search-fields input{width:100%;min-height:46px}@media(max-width:700px){.advanced-search-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}
.search-box>.advanced-search{grid-column:1/-1;grid-row:2;margin:10px 0 0;border-top:1px solid #e2e7dc}.search-box>.search-submit{grid-column:1/-1;grid-row:3;margin-top:10px}.search-box .advanced-search-fields select{width:100%;min-height:46px;font-size:16px;border:1px solid #dce3d5;border-radius:7px;padding:10px;background:#fcfdf9;color:#194438}.search-box .advanced-search-fields{padding:12px 0 0}.search-box .advanced-search-fields .field{margin-bottom:8px}@media(max-width:540px){.search-box>.advanced-search{grid-row:auto;margin-top:10px}.search-box>.search-submit{grid-row:auto}.search-box .advanced-search-fields{gap:10px}.search-box .advanced-search-fields .field>span{font-size:12px}}
.availability-panel .booking-title{font-size:21px;margin:0 0 20px}.booking-quote{background:#f0f6ed;border:1px solid #d9e6d2;border-radius:12px;padding:18px;margin:18px 0}.booking-quote .booking-stock{font-weight:650;color:#235744;margin:0 0 8px;font-size:15px}.booking-quote .booking-period-summary{font-size:14px;line-height:1.5;margin:0 0 16px}.booking-total{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-top:1px solid #d9e6d2;padding-top:14px}.booking-total strong{font-size:30px;line-height:1.2;color:#194438}.availability-feedback:empty{display:none}.availability-panel [data-booking-continue]{margin-top:0}
.booking-extras{margin:8px 0 18px;border:1px solid #dce3d5;border-radius:10px;padding:14px}.booking-extras summary{font-weight:650;cursor:pointer}.booking-extras p{font-size:13px}.basket-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 0;border-top:1px solid #e2e7dc}.basket-item input{width:78px;min-width:78px}.booking-quote ul{list-style:none;padding:0;margin:0 0 14px}.booking-quote li{padding:6px 0;font-size:14px}

.cancellation-benefit{font-size:13px;line-height:1.55;margin:12px 0 0;color:#194438}.cancellation-benefit a{text-underline-offset:3px}.collection-location{margin:16px 0}.collection-location>p{margin:0 0 8px}.collection-location summary{cursor:pointer;font-size:13px}.booking-access-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}@media(max-width:700px){.availability-panel{scroll-margin-bottom:85px}.rq-help-panel{max-height:70dvh}#rq-help-toggle{bottom:12px;right:12px;font-size:14px;padding:10px 14px}.availability-panel{padding-bottom:76px}}
