.mehl-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
.mehl-booking{clear:both}
.rental-card{margin:28px 0 36px}
.rental-grid{display:grid;grid-template-columns:minmax(170px,.75fr) minmax(0,1.5fr);gap:28px;padding:28px}
.rental-grid>section{min-width:0}
.rental-grid h3{font-size:21px;font-weight:700;line-height:1.3;margin:0 0 20px;color:#b92817;overflow-wrap:anywhere}
.rental-machine img{width:100%;height:auto;display:block}
.rental-dates{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.rental-update .form-group{margin-bottom:18px}
.rental-update .form-control{width:100%;max-width:100%;min-height:44px;font-size:16px}
.rental-update label{display:block;font-weight:700;line-height:1.4;margin-bottom:7px}
.rental-update .checkbox label{font-weight:400;padding-left:24px}
.rental-update .checkbox input{margin-left:-24px;margin-top:5px}
.rental-accessory{padding:16px;background:#f5f5f5;border-left:3px solid #c33420}
.rental-delivery{padding-top:4px}
.rental-update .help-block{font-size:13px;line-height:1.55;color:#666;margin:8px 0 14px}
.rental-update .delivery-check{white-space:normal;width:100%;min-height:44px;margin:10px 0 0}
.rental-summary{background:#f5f5f5;padding:20px;align-self:start}
.rental-summary dl{margin:0}
.rental-summary dl>div{display:flex;justify-content:space-between;gap:12px;margin:0 0 12px;font-size:15px}
.rental-summary dt{font-weight:400}
.rental-summary dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}
.rental-summary .is-hidden{display:none}
.rental-total{border-top:1px solid #ddd;padding-top:15px;margin-top:18px}
.rental-total>span{display:block;font-size:14px}
.rental-total>strong{display:block;color:#b92817;font-size:28px;font-weight:700;line-height:1.4;margin-top:5px}
.rental-summary .btn{width:100%;min-height:44px;white-space:normal}
.rental-insurance{padding:20px 28px;background:#fafafa;border-top:1px solid #eee;font-size:14px;line-height:1.6}
.rental-insurance h4{font-size:17px;line-height:1.4;margin:0 0 10px;font-weight:700}
.rental-insurance p:last-child{margin-bottom:0}
.finalize details{margin:20px 0}.finalize button{margin:12px 0;min-height:44px}.finalize .form-control{min-height:44px;font-size:16px}
#cart-errors[hidden]{display:none}
input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid #cc0c00;outline-offset:3px}
@media(max-width:1199px){.rental-grid{grid-template-columns:minmax(170px,.8fr) minmax(230px,1.2fr);gap:24px}}
@media(max-width:767px){.rental-grid{grid-template-columns:minmax(0,1fr);padding:20px;gap:24px}.rental-machine img{max-width:400px;margin:auto}.rental-grid h3{font-size:21px}.rental-summary{grid-column:auto}.rental-summary dl{display:block}.rental-summary .btn{width:100%}.rental-dates{grid-template-columns:1fr;gap:0}.rental-insurance{padding:18px 20px}.finalize h2{font-size:27px;margin:12px 0 26px}}

/* Customer details and the optional account remain native, keyboard-accessible forms. */
.finalize{margin-top:48px;margin-bottom:40px}
.checkout-contact{padding:28px;border:1px solid #e4e4e4;border-radius:16px;background:#fff;box-shadow:0 4px 20px #00000006}
.finalize label{display:block;font-weight:600;line-height:1.4;margin-bottom:8px}
.finalize .form-group{margin-bottom:22px}
.finalize .form-control{min-height:48px;padding:11px 13px;border:1px solid #c9c9c9;border-radius:8px;box-shadow:none;color:#333;background:#fff;font-size:16px;line-height:1.5}
.finalize .form-control:focus{border-color:#a72416;box-shadow:0 0 0 3px #cc0c0014}
.finalize textarea.form-control{min-height:120px;resize:vertical}
.finalize .checkout-hint{font-size:14px;line-height:1.5;color:#626262;margin:8px 0 0}
.finalize .checkout-account{margin:28px 0;border:1px solid #dedede;border-radius:12px;background:#fafafa;overflow:hidden}
.checkout-account summary{position:relative;display:flex;align-items:center;gap:14px;padding:20px 54px 20px 20px;cursor:pointer;list-style:none;line-height:1.4;transition:background .15s}
.checkout-account summary::-webkit-details-marker{display:none}
.checkout-account summary::marker{content:""}
.checkout-account summary:hover{background:#f1f1f1}
.checkout-account summary:focus-visible{outline:3px solid #a72416;outline-offset:-4px;border-radius:10px}
.checkout-account summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font-size:26px;font-weight:400;color:#555}
.checkout-account[open] summary::after{content:"−"}
.checkout-account-icon{display:flex;align-items:center;justify-content:center;flex:0 0 40px;width:40px;height:40px;top:0;border-radius:50%;background:#fff;color:#a72416;border:1px solid #e5e5e5;font-size:18px}
.checkout-account-title{display:block;min-width:0}
.checkout-account-title strong{display:block;font-size:17px;font-weight:600;color:#333}
.checkout-account-title>span{display:block;color:#626262;font-size:14px;margin-top:4px}
.checkout-optional{display:inline-block;vertical-align:middle;margin-left:7px;padding:3px 7px;border-radius:5px;background:#eaeaea;font-size:12px;font-weight:400;color:#555}
.checkout-account-body{padding:0 20px 22px}
.checkout-account-body>p{padding-top:18px;border-top:1px solid #e1e1e1;margin:0 0 20px;line-height:1.6;color:#555;font-size:15px}
.checkout-passwords{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px}
.checkout-passwords .form-group{margin-bottom:0;min-width:0}
.checkout-next{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:24px;border-top:1px solid #e6e6e6}
.checkout-next p{margin:0;max-width:340px;font-size:14px;line-height:1.5;color:#626262}
.checkout-next p strong{display:block;margin-bottom:4px;font-size:16px;font-weight:600;color:#333}
.checkout-next p span{display:block}
.finalize .checkout-submit{display:inline-flex;align-items:center;justify-content:center;gap:16px;flex-shrink:0;min-height:50px;margin:0;padding:13px 20px;border-radius:9px;font-size:16px;font-weight:600;white-space:normal}
.checkout-submit .glyphicon{top:0;font-size:13px}
#customer-login label:not(:first-of-type){margin-top:18px}
#customer-login button{margin-top:20px}
@media(max-width:1199px){.checkout-next{align-items:flex-start;flex-direction:column;gap:18px}.checkout-next p{max-width:none}}
@media(max-width:767px){.checkout-contact{padding:20px}.checkout-contact>.row{margin-left:-10px;margin-right:-10px}.checkout-contact>.row>.form-group{padding-left:10px;padding-right:10px}.checkout-passwords{grid-template-columns:minmax(0,1fr);gap:20px}.checkout-account summary{padding:18px 42px 18px 16px;gap:10px}.checkout-account summary::after{right:15px}.checkout-account-title strong{font-size:16px}.checkout-account-icon{flex-basis:32px;width:32px;height:32px;font-size:15px}.checkout-optional{margin-left:0}.checkout-account-body{padding:0 16px 20px}.finalize .checkout-submit{width:100%}.finalize #customer-login{margin-top:24px}}

/* The cart and login share the customer form's spacing and controls. */
.rental-panel{min-width:0;background:#fff;border:1px solid #e4e4e4;border-radius:16px;box-shadow:0 4px 20px #00000008;overflow:hidden}
.rental-grid{padding:28px;gap:28px;align-items:start}
.rental-grid h3{font-size:20px;line-height:1.4;margin-bottom:22px}
.rental-machine img{padding:12px;background:#fff;border:1px solid #eee;border-radius:12px}
.rental-update .form-control{min-height:48px;min-width:0;border:1px solid #c9c9c9;border-radius:8px;padding:11px 13px;background:#fff;box-shadow:none;line-height:1.5;color:#333}
.rental-update .form-control:focus{border-color:#a72416;box-shadow:0 0 0 3px #cc0c0014}
.rental-update textarea.form-control{min-height:88px;resize:vertical}
.rental-update label{font-weight:600;margin-bottom:8px}
.rental-update .form-group{margin-bottom:22px}
.rental-dates{gap:14px}
.rental-dates>.form-group{min-width:0}
.rental-accessory{padding:18px;border:1px solid #e4e4e4;border-radius:12px;background:#fafafa}
.rental-delivery{padding:18px;border:1px solid #dedede;border-radius:12px;background:#fafafa;margin-top:26px}
.rental-update .rental-delivery .checkbox{margin:0 0 20px;padding:0 0 16px;border-bottom:1px solid #e1e1e1}
.rental-update .rental-delivery .checkbox label{position:relative;display:flex;align-items:center;min-height:44px;padding-left:30px;margin:0;line-height:1.5;cursor:pointer;font-weight:600}
.rental-update .rental-delivery .checkbox input{position:absolute;left:0;top:50%;width:18px;height:18px;margin:-9px 0 0;accent-color:#b92817;cursor:pointer}
.rental-update .delivery-check{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:14px;padding:11px 12px;border:1px solid #c9c9c9;border-radius:8px;background:#fff;line-height:1.4;font-size:14px;color:#333;transition:background .15s}
.rental-update .delivery-check:hover{background:#f0f0f0;border-color:#aaa}
.rental-update .delivery-check .glyphicon{flex-shrink:0;color:#a72416;top:0}
.rental-update .help-block{color:#626262;line-height:1.6;margin:12px 0 0}
.rental-summary{padding:22px;border:1px solid #e4e4e4;border-radius:12px;background:#fafafa}
.rental-summary h3{color:#333;margin-bottom:24px}
.rental-summary dl>div{gap:10px;margin-bottom:15px;line-height:1.5}
.rental-summary dt{color:#626262}
.rental-summary dd{color:#333}
.rental-total{border-top:1px solid #dedede;padding-top:20px;margin:20px 0 16px}
.rental-total>span{color:#626262;line-height:1.5}
.rental-total>strong{font-size:30px;letter-spacing:-.5px;margin-top:8px}
.rental-summary .rental-recalculate{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:48px;margin:22px 0 0;padding:11px 12px;border:1px solid #c9c9c9;border-radius:8px;background:#fff;color:#333;font-size:14px;white-space:normal}
.rental-summary .rental-recalculate:hover{background:#f0f0f0;border-color:#aaa}
.rental-insurance{padding:20px 28px;background:#fafafa;border-top:1px solid #e8e8e8;color:#626262}
.rental-insurance h4{font-size:16px;color:#333;font-weight:600}
.rental-insurance p{margin-bottom:8px}
.checkout-sidebar>section{padding:26px;border:1px solid #e4e4e4;border-radius:16px;background:#fafafa;margin-bottom:24px}
.checkout-sidebar .checkout-sidebar-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #e5e5e5;border-radius:50%;background:#fff;color:#a72416;font-size:18px;top:0;margin-bottom:16px}
.checkout-sidebar h3{font-size:21px;line-height:1.4;font-weight:600;margin:0 0 10px;color:#333}
.checkout-sidebar p{font-size:15px;line-height:1.6;color:#626262;margin-bottom:22px}
.checkout-sidebar .checkout-sidebar-intro{margin-bottom:24px}
#customer-login .form-group{margin-bottom:20px}
#customer-login .checkout-login-submit{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:50px;padding:13px 16px;margin:24px 0 0;border-radius:9px;font-weight:600;font-size:16px}
.checkout-login-submit .glyphicon{top:0;font-size:13px}
.checkout-sidebar .checkout-support{background:#fff}
.checkout-support .checkout-phone{display:inline-flex;align-items:center;min-height:44px;font-size:23px;font-weight:600;text-decoration:none;color:#a72416;line-height:1.4}
.checkout-phone:hover{text-decoration:underline}
@media(max-width:1199px){.checkout-sidebar>section{padding:22px}}
@media(max-width:767px){.rental-grid{padding:20px;gap:28px}.rental-update .rental-dates{grid-template-columns:minmax(0,1fr);gap:0}.rental-delivery{padding:16px}.rental-summary{padding:20px}.rental-summary .rental-recalculate{width:100%;min-width:0}.rental-insurance{padding:18px 20px}.checkout-sidebar{margin-top:24px}.checkout-sidebar>section{padding:22px}.finalize #customer-login{margin-top:0}}

/* A consistent inset chevron while retaining native select interaction. */
.mehl-booking select.form-control:not([multiple]):not([size]),
.mehl-booking select.form-control[size="1"]{appearance:none;-webkit-appearance:none;padding-right:42px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;background-size:16px 16px}
@media(forced-colors:active){.mehl-booking select.form-control:not([multiple]):not([size]),.mehl-booking select.form-control[size="1"]{appearance:auto;-webkit-appearance:auto;background-image:none;padding-right:13px}}

/* Highlight the included fee while keeping coverage and excess visible. */
.rental-insurance{margin:0 28px 28px;padding:22px 24px;border:1px solid #d5e4d8;border-radius:12px;background:#f4f8f4;color:#425346;font-size:15px;line-height:1.6}
.rental-insurance-intro{display:flex;align-items:flex-start;gap:16px}
.rental-insurance .rental-insurance-icon{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;top:0;border-radius:50%;background:#e1eee3;color:#2d673c;font-size:19px}
.rental-insurance h4{margin:0 0 5px;color:#285834;font-size:21px;font-weight:600;line-height:1.4}
.rental-insurance-intro p{margin:0;color:#425346}
.rental-insurance-details{margin:18px 0 0 58px;padding-top:16px;border-top:1px solid #d5e4d8;font-size:14px;color:#4d5950}
.rental-insurance .rental-insurance-name{margin:0 0 8px;color:#354b3b;overflow-wrap:anywhere}
.rental-insurance-name strong{font-weight:600}
.rental-insurance-details p:last-child{margin-bottom:0}
@media(max-width:767px){.rental-insurance{margin:0 20px 20px;padding:20px 18px}.rental-insurance-intro{gap:12px}.rental-insurance .rental-insurance-icon{flex-basis:34px;width:34px;height:34px;font-size:16px}.rental-insurance h4{font-size:19px}.rental-insurance-details{margin-left:0}}

/* Removal remains a separate CSRF-protected form action. */
.rental-summary .rental-remove{display:inline-flex;align-items:center;justify-content:flex-start;gap:8px;max-width:100%;min-height:44px;margin:12px 0 0;padding:8px 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:#626262;font-family:inherit;font-size:14px;font-weight:400;line-height:1.5;text-align:left;cursor:pointer;transition:background .15s,color .15s}
.rental-summary .rental-remove .glyphicon{top:0;flex-shrink:0;font-size:13px}
.rental-summary .rental-remove:hover{background:#fff5f3;border-color:#f1d9d5;color:#a72416}

/* Each item owns a detail panel and its attached, independently sticky price box. */
.rental-layout{display:grid;grid-template-columns:minmax(0,3fr) minmax(260px,1fr);gap:0;align-items:start}
.rental-layout>.rental-summary{position:sticky;top:96px;grid-column:auto;min-width:0;align-self:start;margin-top:24px;padding:24px;border:0;border-radius:0 12px 12px 0;background:#f5f5f5;max-height:calc(100vh - 112px);max-height:calc(100dvh - 112px);overflow-y:auto}
.rental-summary h3{font-size:20px;font-weight:600;line-height:1.4;margin:0 0 24px}
.rental-layout>.rental-summary dl{display:block;margin:0}
.rental-summary .rental-recalculate{width:100%;min-width:0}
.rental-summary .rental-remove{width:100%;justify-content:center;margin:12px 0 0;padding:8px 4px;font-size:13px}
@media(max-width:991px){.rental-layout{grid-template-columns:minmax(0,1fr)}.rental-panel{border-radius:16px 16px 0 0}.rental-layout>.rental-summary{position:static;margin:0;padding:24px;border-radius:0 0 16px 16px;max-height:none;overflow:visible}}
@media(max-width:767px){.rental-layout>.rental-summary{padding:22px 20px}}

.body-bg:has(.rental-layout){overflow:clip}

/* A single live notification, with persistent errors and pausable success dismissal. */
.booking-toasts{position:fixed;left:24px;right:auto;bottom:calc(24px + env(safe-area-inset-bottom));z-index:1090;width:420px;max-width:calc(100vw - 32px);pointer-events:none;font-family:'Source Sans Pro',sans-serif}
.booking-toast{display:flex;align-items:flex-start;gap:12px;padding:16px 12px 16px 18px;border:1px solid #dce4de;border-top:4px solid #3a7850;border-radius:14px;background:#fff;box-shadow:0 8px 32px #00000024;color:#333;pointer-events:auto;animation:booking-toast-in .18s ease-out}
.booking-toast[hidden]{display:none}
.booking-toast-icon{display:flex;align-items:center;justify-content:center;flex:0 0 32px;width:32px;height:32px;margin-top:2px;border-radius:50%;background:#e9f3ec;color:#2d673c;font-size:15px}
.booking-toast-icon .glyphicon{top:0}
.booking-toast-content{flex:1;min-width:0;padding-top:2px;overflow-wrap:anywhere}
.booking-toast-content strong{display:block;font-size:16px;font-weight:600;line-height:1.4}
.booking-toast-content p{margin:5px 0 0;color:#626262;font-size:14px;line-height:1.5}
.booking-toast-close{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;min-height:44px;margin:-4px -4px 0 0;padding:0;border:0;border-radius:8px;background:transparent;color:#626262;cursor:pointer;font-size:13px}
.booking-toast-close:hover{background:#f3f3f3;color:#333}
.booking-toast[data-tone="error"]{border-color:#ecd4d0;border-top-color:#b92817}
.booking-toast[data-tone="error"] .booking-toast-icon{background:#fbece9;color:#a72416}
.booking-toast[data-tone="warning"]{border-color:#eadfca;border-top-color:#9a7022}
.booking-toast[data-tone="warning"] .booking-toast-icon{background:#fbf4e4;color:#805d1c}
.booking-toast[data-tone="progress"]{border-color:#dedede;border-top-color:#777}
.booking-toast[data-tone="progress"] .booking-toast-icon{background:#f0f0f0;color:#626262}
.booking-toast[data-tone="progress"] .glyphicon-refresh{animation:booking-toast-spin 1.2s linear infinite}
@keyframes booking-toast-in{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes booking-toast-spin{to{transform:rotate(360deg)}}
@media(max-width:767px){.booking-toasts{left:16px;right:auto;bottom:calc(16px + env(safe-area-inset-bottom));max-width:calc(100vw - 88px)}.booking-toast{padding:14px 10px 14px 14px;gap:10px}}
@media(prefers-reduced-motion:reduce){.booking-toast,.booking-toast[data-tone="progress"] .glyphicon-refresh{animation:none}}

/* The final review keeps contact data, rental details and the send action easy to scan. */
.review-page{clear:both;margin-bottom:40px}
.review-intro{margin:0 0 28px}
.review-intro h2{font-size:30px;line-height:1.35;margin:0 0 12px}
.review-intro p{max-width:760px;margin:0;color:#626262;font-size:16px;line-height:1.65}
.review-contact,.review-item-details,.review-confirmation{padding:28px;border:1px solid #e4e4e4;border-radius:16px;background:#fff;box-shadow:0 4px 20px #00000006;min-width:0}
.review-page h3{margin:0 0 20px;color:#333;font-size:21px;line-height:1.4;font-weight:600}
.review-contact{margin-bottom:32px}
.review-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}
.review-page .review-label{margin:0 0 7px;font-size:13px;color:#626262;font-weight:400;line-height:1.5}
.review-address{margin:0;color:#333;font-size:16px;line-height:1.7;overflow-wrap:anywhere}
.review-address strong{font-weight:600}
.review-contact-channels{margin:0;min-width:0}
.review-contact-channels>div+div{margin-top:16px}
.review-contact-channels dt{font-size:13px;color:#626262;font-weight:400;line-height:1.5;margin-bottom:7px}
.review-contact-channels dd{font-size:16px;line-height:1.5;margin:0;overflow-wrap:anywhere}
.review-message{margin-top:24px;padding-top:20px;border-top:1px solid #e8e8e8}
.review-message>p:last-child{margin:0;font-size:15px;line-height:1.65;white-space:pre-line;overflow-wrap:anywhere}
.review-item{display:grid;grid-template-columns:minmax(0,3fr) minmax(260px,1fr);gap:0;align-items:start;margin:0 0 28px}
.review-machine-heading{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:center;margin-bottom:26px}
.review-machine-heading.has-image{grid-template-columns:128px minmax(0,1fr)}
.review-machine-heading h3{margin:0;overflow-wrap:anywhere;color:#a72416}
.review-machine-image{overflow:hidden;border:1px solid #e8e8e8;border-radius:12px;background:#fff}
.review-machine-image img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain}
.review-rental-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0 0 24px;padding:20px 0;border-top:1px solid #e8e8e8;border-bottom:1px solid #e8e8e8}
.review-rental-facts dt{margin-bottom:7px;font-size:13px;font-weight:400;color:#626262;line-height:1.5}
.review-rental-facts dd{margin:0;font-size:16px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.review-rental-facts time{display:block;white-space:nowrap}
.review-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.review-options>div>p:last-child{margin:0;font-size:15px;line-height:1.6;overflow-wrap:anywhere}
.review-delivery{display:flex;gap:14px;margin-top:24px;padding:18px;border:1px solid #e4e4e4;border-radius:12px;background:#fafafa}
.review-delivery>.glyphicon{flex:0 0 18px;top:3px;color:#a72416;font-size:18px}
.review-delivery>div{min-width:0}
.review-delivery h4{margin:0 0 8px;font-size:16px;font-weight:600;line-height:1.4;color:#333}
.review-delivery p{margin:0;font-size:15px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}
.review-delivery .review-delivery-note{margin-top:10px;color:#626262;font-size:13px}
.review-item-price{padding:24px;min-width:0;margin-top:24px;border-radius:0 12px 12px 0;background:#f5f5f5}
.review-item-price h3{font-size:20px;margin:0 0 22px}
.review-item-price dl{margin:0}
.review-item-price dl>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:15px;font-size:15px;line-height:1.5}
.review-item-price dt{font-weight:400;color:#626262}
.review-item-price dd{margin:0;text-align:right;font-weight:600;overflow-wrap:anywhere}
.review-item-price .rental-total{margin-bottom:0}
.review-price-note{margin:12px 0 0;font-size:13px;line-height:1.6;color:#626262}
.review-confirmation{margin:36px 0 0;background:#fafafa}
.review-confirmation h3{margin-bottom:20px}
.review-consent{display:flex;align-items:flex-start;gap:12px}
.review-consent input[type="checkbox"]{flex:0 0 18px;width:18px;height:18px;margin:3px 0 0;accent-color:#b92817;cursor:pointer}
.review-consent label{margin:0;line-height:1.65;font-size:15px;font-weight:400;cursor:pointer}
.review-consent a{font-weight:600;color:#a72416;text-decoration:underline;text-underline-offset:3px}
.review-send-note{margin:20px 0 0;font-size:14px;line-height:1.6;color:#626262}
.review-final-actions{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:24px;padding-top:24px;border-top:1px solid #e1e1e1}
.review-final-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:50px;margin:0;padding:13px 20px;border-radius:9px;font-size:16px;line-height:1.5;white-space:normal}
.review-final-actions .glyphicon{top:0;font-size:14px}
.review-edit{border-color:#c9c9c9;background:#fff;color:#444}
.review-send{font-weight:600}
@media(max-width:991px){.review-item{grid-template-columns:minmax(0,1fr)}.review-item-details{border-radius:16px 16px 0 0}.review-item-price{margin-top:0;border-radius:0 0 16px 16px}}
@media(max-width:767px){.review-intro h2{font-size:27px}.review-contact,.review-item-details,.review-confirmation{padding:22px 20px}.review-contact-grid{grid-template-columns:minmax(0,1fr);gap:22px}.review-item-price{padding:22px 20px}.review-rental-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.review-options{grid-template-columns:minmax(0,1fr);gap:18px}.review-machine-heading.has-image{grid-template-columns:88px minmax(0,1fr);gap:14px}.review-machine-heading h3{font-size:20px}.review-delivery{padding:16px;gap:10px}.review-final-actions{flex-direction:column;align-items:stretch;gap:12px}.review-final-actions .btn{width:100%}}

/* A clear receipt state, separate from the ordinary empty basket. */
.booking-confirmation{margin:0 0 40px;padding:32px;border:1px solid #dce5de;border-top:4px solid #3a7850;border-radius:16px;background:#fff;box-shadow:0 4px 20px #00000008}
.confirmation-header{display:grid;grid-template-columns:56px minmax(0,1fr) 210px;gap:20px;align-items:start}
.confirmation-check{display:flex;align-items:center;justify-content:center;width:56px;height:56px;top:0;border-radius:50%;background:#e9f3ec;color:#2d673c;font-size:25px}
.confirmation-title{min-width:0}
.confirmation-title h2{margin:0 0 10px;color:#333;font-size:28px;font-weight:600;line-height:1.35;overflow-wrap:anywhere}
.confirmation-title p{margin:0;color:#626262;font-size:16px;line-height:1.65}
.confirmation-reference{min-width:0;padding:14px 16px;border:1px solid #dce5de;border-radius:10px;background:#f4f8f4}
.confirmation-reference span{display:block;margin-bottom:5px;color:#526357;font-size:13px;line-height:1.5}
.confirmation-reference strong{display:block;color:#285834;font-size:20px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.confirmation-next{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;margin-top:28px;padding:26px 0;border-top:1px solid #e5e9e6;border-bottom:1px solid #e5e9e6}
.confirmation-step{display:flex;align-items:flex-start;gap:14px;min-width:0}
.confirmation-step>.glyphicon{flex:0 0 22px;top:3px;color:#3a7850;font-size:20px}
.confirmation-step>div{min-width:0}
.confirmation-step h3{margin:0 0 8px;color:#333;font-size:18px;font-weight:600;line-height:1.4}
.confirmation-step p{margin:0;color:#626262;font-size:15px;line-height:1.65}
.confirmation-actions{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:24px}
.confirmation-actions .confirmation-browse{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:50px;margin:0;padding:13px 20px;border-radius:9px;font-size:16px;font-weight:600;line-height:1.5;white-space:normal}
.confirmation-browse .glyphicon{top:0;font-size:13px}
.confirmation-contact{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.confirmation-contact>span{font-size:14px;line-height:1.5;color:#626262}
.confirmation-contact>a{display:inline-flex;align-items:center;min-height:44px;font-size:20px;line-height:1.4;font-weight:600;color:#a72416;text-decoration:none}
.confirmation-contact>a:hover{text-decoration:underline}
@media(max-width:991px){.confirmation-header{grid-template-columns:48px minmax(0,1fr);gap:18px}.confirmation-check{width:48px;height:48px;font-size:22px}.confirmation-reference{grid-column:2;max-width:260px}.confirmation-actions{align-items:flex-start;flex-direction:column;gap:20px}}
@media(max-width:767px){.booking-confirmation{padding:24px 20px}.confirmation-header{grid-template-columns:40px minmax(0,1fr);gap:14px}.confirmation-check{width:40px;height:40px;font-size:19px}.confirmation-title h2{font-size:24px}.confirmation-reference{grid-column:1/-1;max-width:none;margin-top:4px}.confirmation-next{grid-template-columns:minmax(0,1fr);gap:24px;margin-top:24px;padding:24px 0}.confirmation-actions{align-items:stretch}.confirmation-actions .confirmation-browse{width:100%}.confirmation-contact{gap:4px;align-items:flex-start;flex-direction:column}}
