:root{--button-red:#cb4035;--button-red-hover:#df5143}.button{background:linear-gradient(135deg,#d94b3f,#bb342c);border:1px solid #eb6a5c66;border-radius:7px;box-shadow:0 4px 16px #0002;transition:background .25s,box-shadow .25s,transform .2s,border-color .25s;font-weight:600;letter-spacing:0}.button:hover{background:linear-gradient(135deg,#e65a4d,#ca4035);box-shadow:0 6px 25px #bd392528;transform:translateY(-2px)}.button:active{transform:translateY(0) scale(.99)}.button:focus-visible,button:focus-visible,select:focus-visible{outline:2px solid #f6a18a;outline-offset:4px}.button.outline,.button.ghost{background:transparent;box-shadow:none;border-color:#ffffff30}.button.outline:hover,.button.ghost:hover{background:#ffffff08;border-color:#ffffff75}.button:disabled{transform:none;opacity:.55;cursor:wait}.booking-dialog{width:min(1120px,94vw);border:1px solid #ffffff20;border-radius:13px;background:#181819;box-shadow:0 30px 100px #0009;max-height:94dvh}.booking-dialog[open]{animation:bookingEnter .3s ease both;grid-template-columns:34% minmax(0,66%)}.booking-dialog::backdrop{background:#0a0a0bc9;backdrop-filter:blur(8px)}.booking-dialog .dialog-close{width:40px;height:40px;display:grid;place-items:center;border:1px solid #ffffff26;border-radius:8px;background:#1b1b1c;top:16px;right:16px;z-index:5;transition:background .2s,transform .2s}.booking-dialog .dialog-close:hover{background:#383839;transform:rotate(5deg)}.booking-dialog .dialog-close .icon{width:20px;height:20px}.booking-side{background:linear-gradient(155deg,#2d2d2e,#232324);border-right:1px solid #ffffff10}.booking-side>div{padding:29px}.booking-side h2{font-size:30px;line-height:1.23;letter-spacing:-.05em}.booking-side>img{aspect-ratio:1.25;object-fit:cover}.booking-side p{font-size:12px;line-height:1.7}.booking-main{padding:36px 38px;background:linear-gradient(140deg,#1d1d1e,#161617);min-width:0}.booking-main h2{font-size:35px;line-height:1.2;letter-spacing:-.045em}.booking-main h2 em{color:#ed7462}.booking-main section>.eyebrow{color:#bababb;font-size:10px;letter-spacing:.12em;margin-bottom:12px}.booking-main section>p{font-size:14px;color:#bbbbbc;line-height:1.7}.booking-main input:not([type=checkbox]):not([type=radio]),.booking-main textarea,.booking-main select{border:1px solid #ffffff25;border-radius:7px;background:#ffffff04;color:#f4f4f5;font-family:var(--body);font-size:15px;min-height:49px;padding:12px 14px;transition:border-color .2s,background .2s;width:100%;min-width:0}.booking-main input:focus,.booking-main textarea:focus,.booking-main select:focus{border-color:#d67866;background:#ffffff07;outline:none;box-shadow:0 0 0 3px #d6786618}.booking-main select option{background:#262627;color:#fff}.booking-main label{font-size:13px;line-height:1.6}.booking-main .checkbox{font-size:12px;line-height:1.8}.booking-main input[type=checkbox],.booking-main input[type=radio]{accent-color:#d95143;flex-shrink:0}.booking-main .step-indicator{gap:12px;align-items:center;margin:0 12px 35px 0;font-size:11px;min-height:39px}.step-indicator>[data-step-label]{display:flex;align-items:center;gap:9px;color:#969697}.step-indicator .step-number{display:grid;place-items:center;width:30px;height:30px;border:1px solid #ffffff24;background:#ffffff03;border-radius:50%;font-size:10px;transition:background .3s,border .3s,box-shadow .3s}.step-indicator .current .step-number{border-color:#e56c59;background:#c74637;color:#fff;box-shadow:0 0 0 4px #e56c5912}.step-indicator .completed .step-number{background:#444445;border-color:#828283;color:#f2f2f3;font-size:0}.step-indicator .completed .step-number:after{content:'✓';font-size:14px}.step-indicator>i{height:2px;flex:1;background:#ffffff13;position:relative;border:0}.step-indicator>i:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#6a6a6b,#c86550);transform:scaleX(0);transform-origin:left;transition:transform .4s ease}.step-indicator>.completed+i:before{transform:scaleX(1)}.step-indicator b{font-size:11px;font-weight:500}.step-indicator>.current b{color:#fff}.booking-location{display:flex;align-items:center;gap:8px;font-size:11px;color:#c0c0c1;margin:22px 0 14px}.booking-location>.icon{width:16px;height:16px}.booking-timezone{margin-left:auto;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.date-range-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.date-trigger{display:flex;align-items:center;gap:10px;padding:13px 12px;background:#ffffff03;border:1px solid #ffffff25;border-radius:8px;text-align:left;color:#fff;min-height:69px;transition:border .2s,background .2s}.date-trigger>span{display:grid;gap:2px;flex:1;min-width:0}.date-trigger small{font-size:10px;color:#b1b1b2}.date-trigger strong{font-size:13px;font-weight:600;white-space:nowrap}.date-trigger>.icon:first-child{color:#c8c8c9;width:18px}.date-trigger>.icon:last-child{width:13px;color:#b0b0b1}.date-trigger.active{border-color:#d77660;background:#cc675514;box-shadow:0 0 0 2px #cc67550c}.rental-calendar{margin-top:12px;padding:15px 18px;background:#f3f2ea;border:1px solid #fff6;border-radius:10px;color:#272728;box-shadow:0 8px 25px #0002;animation:calendarEnter .2s ease both}.rental-calendar[hidden]{display:none}.calendar-heading{display:flex;justify-content:space-between;align-items:center}.calendar-heading>strong{font-family:var(--display);font-size:15px;font-weight:700;text-transform:capitalize}.calendar-heading>button{background:none;border:1px solid #30303120;color:#373738;border-radius:7px;width:34px;height:32px;font-size:19px;transition:background .2s}.calendar-heading>button:hover{background:#e2e2e3}.calendar-heading>button:disabled{opacity:.2;cursor:default}#calendar-instruction{font-size:11px;text-align:center;margin:10px 0 14px;color:#5c5c5d}.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.calendar-weekdays{font-size:10px;text-transform:uppercase;font-weight:600;color:#6c6c6d;text-align:center;margin-bottom:8px}.calendar-day{display:grid;place-items:center;min-height:35px;font-size:12px;border:1px solid transparent;border-radius:6px;background:transparent;color:#2e2e2f;position:relative;transition:background .15s,transform .15s}.calendar-day:hover:not(:disabled){background:#e1e1e2;transform:translateY(-1px);border-color:#bdbdbe}.calendar-day.selected{background:#b43b30;color:#fff;font-weight:700;box-shadow:0 2px 7px #8d2e2328}.calendar-day.in-range{background:#e1e1e2;color:#3c3c3d}.calendar-day:disabled{color:#ababac;cursor:not-allowed}.calendar-day.today:after{content:'';width:3px;height:3px;border-radius:50%;background:currentColor;position:absolute;bottom:3px}.calendar-legend{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #31313218;padding-top:11px;margin-top:12px;font-size:9px;color:#686869}.calendar-legend i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#b43b30;margin-right:4px}.booking-time-row{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:end;margin-top:22px}.booking-time-row>label{margin:0;display:block;font-size:12px}.booking-time-row>label>.icon{width:16px;margin-right:6px}.booking-time-row>label>span{display:block;font-size:9px;color:#99999a;margin-bottom:7px}.booking-time-row select{font-variant-numeric:tabular-nums}.return-time-note{display:flex;align-items:center;gap:10px;min-height:49px;color:#c0c0c1;font-size:11px}.return-time-note>.icon{width:18px}.return-time-note strong{color:#f5f5f6}.return-time-note small{display:block;font-size:9px;color:#99999a;line-height:1.5;margin-top:4px}.booking-main .opening-note{font-size:10px;line-height:1.9;color:#a1a1a2;margin:13px 0 25px}.opening-note .icon{height:13px;width:13px;margin-right:4px}.opening-note a{text-decoration:underline;text-underline-offset:3px;color:#c5c5c6}.booking-main fieldset{margin-top:20px}.booking-main legend{font-size:12px;color:#e0e0e1;font-weight:600;margin-bottom:12px}.booking-main legend .icon{height:16px;width:16px;margin-right:6px}.booking-main .extras{gap:9px}.booking-main .extras label{border-radius:8px;border:1px solid #ffffff20;background:#ffffff03;padding:12px 10px;min-height:72px;transition:background .2s,border-color .2s,transform .2s;display:flex;align-items:start;gap:7px}.booking-main .extras label:hover{transform:translateY(-2px);background:#ffffff06;border-color:#ffffff50}.booking-main .extras label:has(input:checked){border-color:#bc765e;background:#ba775411;box-shadow:inset 0 0 0 1px #bc765e20}.extras label span{font-size:12px;font-weight:600}.extras small{font-size:10px;font-weight:400;display:block;margin-top:6px;color:#b7b7b8}.booking-main .check-card{border-radius:9px;border-color:#ffffff20;background:#ffffff03;padding:15px;gap:11px}.check-card .icon{width:16px;height:16px;margin-right:5px;color:#c4b190}.booking-main .check-card small{font-size:10px;margin-top:4px}.booking-main .check-card:has(input:checked){background:#b5774a10;border-color:#b09067}.booking-main .quote-row{font-size:12px;line-height:1.6}.booking-main .quote-row.total{font-size:15px}.booking-side .quote-row{font-size:11px}.booking-side .quote-row.total{font-size:18px}.booking-main .form-navigation{gap:12px}.booking-main .form-navigation>.button{padding:13px 20px;min-height:50px}.booking-main .notice{font-size:12px;line-height:1.8;border:1px solid #ffffff16;background:#ffffff04;border-radius:8px;padding:17px;color:#b5b5b6}.booking-main .spec-list>div{font-size:13px;padding-block:14px}.booking-main .spec-list dd{max-width:65%;overflow-wrap:anywhere}.booking-main [data-step]:not([hidden]){animation:bookingStep .3s ease both}.mobile-quote-summary{display:none}.booking-main #availability-message{font-size:11px;line-height:1.8}.booking-main .button.full{min-height:52px;font-size:13px}.booking-dialog #booking-success h2{font-size:38px}.booking-assurance{color:#bababb}.booking-assurance .icon{width:23px}.booking-assurance p{font-size:11px}
@keyframes bookingEnter{from{opacity:0;transform:translateY(12px) scale(.99)}to{opacity:1;transform:none}}@keyframes bookingStep{from{opacity:.2;transform:translateX(7px)}to{opacity:1;transform:none}}@keyframes calendarEnter{from{opacity:.4;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media(max-width:960px){.booking-dialog[open]{grid-template-columns:1fr}.booking-side{display:grid;grid-template-columns:125px minmax(0,1fr);border-right:0;border-bottom:1px solid #ffffff18}.booking-side>img{height:100%;aspect-ratio:auto}.booking-side>div{padding:24px 60px 24px 22px}.booking-side h2{font-size:24px}.booking-side .eyebrow{font-size:8px}.booking-side #quote-summary,.booking-assurance{display:none}.mobile-quote-summary:not(:empty){display:block;margin:18px 0;padding:15px;border:1px solid #ffffff16;border-radius:9px;background:#ffffff03}.booking-main{padding:28px}.booking-main .step-indicator{margin-right:0}.booking-main .opening-note{font-size:11px}.booking-side p{font-size:11px}}
@media(max-width:540px){.booking-dialog{width:100%;max-width:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;margin:0}.booking-dialog[open]{display:flex;flex-direction:column}.booking-side{grid-template-columns:105px minmax(0,1fr);min-height:116px}.booking-side>div{padding:20px 44px 17px 16px}.booking-side h2{font-size:21px;line-height:1.3;margin:5px 0}.booking-side p{font-size:9px}.booking-dialog .dialog-close{right:12px;top:12px;width:32px;height:32px}.booking-main{padding:24px 20px;flex:1}.booking-main h2{font-size:30px;line-height:1.2}.booking-main .step-indicator{gap:7px;margin-bottom:29px}.step-indicator>[data-step-label]{gap:5px}.step-indicator .step-number{width:25px;height:25px;font-size:9px}.step-indicator b{font-size:10px}.step-indicator>i{min-width:8px}.booking-location{font-size:10px}.booking-timezone{font-size:8px}.date-trigger{gap:7px;padding:11px 9px;min-height:68px}.date-trigger>.icon:first-child{width:16px}.date-trigger>.icon:last-child{display:none}.date-trigger small{font-size:10px}.date-trigger strong{font-size:12px}.rental-calendar{padding:14px 12px}.calendar-day{min-height:38px;font-size:12px}.calendar-legend{font-size:8px}.booking-time-row{gap:13px}.booking-time-row>label{font-size:11px}.return-time-note{font-size:10px;gap:7px}.return-time-note>.icon{width:16px}.booking-main label{font-size:12px}.booking-main input:not([type=checkbox]):not([type=radio]),.booking-main textarea,.booking-main select{font-size:16px}.booking-main .extras{gap:6px}.booking-main .extras label{padding:12px 8px;gap:4px}.extras label span{font-size:11px}.booking-main .extras input{width:12px;height:12px;margin-top:4px}.extras small{font-size:9px}.booking-main .form-navigation>.button{padding:12px 15px;font-size:12px;min-height:50px}.booking-main .spec-list>div{font-size:12px;gap:10px}.booking-main .spec-list dd{max-width:65%}.booking-main .checkbox{font-size:11px;line-height:1.8}.booking-main section>p{font-size:13px}.booking-main .quote-row.total{font-size:17px}.booking-main .opening-note{font-size:10px}}
@media(prefers-reduced-motion:reduce){.booking-dialog[open],.booking-main [data-step]:not([hidden]),.rental-calendar{animation:none}.button,.calendar-day,.step-indicator>i:before{transition:none}}

/* Step headings receive programmatic focus for screen readers, not a control ring. */
#booking-form [data-step] > h2[tabindex="-1"]:focus{outline:none}

/* Date and time dropdowns share a compact, keyboard-accessible surface. */
.date-picker-shell,.time-picker-shell{position:relative;min-width:0}.date-picker-shell .rental-calendar{position:absolute;z-index:20;top:100%;left:0;width:min(100%,420px);margin-top:8px;background:#f5f5f6;color:#262629;box-shadow:0 18px 55px #0007;transform-origin:top left;animation:pickerOpen .22s cubic-bezier(.2,.8,.2,1) both}.date-picker-shell .rental-calendar[data-target=end]{left:auto;right:0;transform-origin:top right}.rental-calendar[hidden],.time-options[hidden]{display:none}.calendar-day{min-height:38px}.calendar-day.in-range{background:#eadbda;color:#632d2b}.calendar-heading>button:hover{background:#e4e4e6}.calendar-day:focus-visible{outline:2px solid #ba403a;outline-offset:1px}.calendar-day.selected{background:#bd3934;color:#fff}.date-trigger.active{background:#c8493910;border-color:#ce655a}.time-field-label{display:block;font-size:12px;margin-bottom:9px}.time-field-label>.icon{width:16px;margin-right:6px}.time-field-label small{display:block;color:#a4a4aa;font-size:9px;margin-top:5px}.time-trigger{display:flex;align-items:center;gap:10px;width:100%;height:52px;border:1px solid #ffffff25;border-radius:8px;padding:12px 14px;background:#ffffff04;color:#f5f5f6;font:inherit;transition:border-color .2s,background .2s}.time-trigger>.icon{width:17px;color:#bcbcc1}.time-trigger>.icon:last-child{margin-left:auto;width:13px;transition:transform .2s}.time-trigger[aria-expanded=true]{border-color:#cc685e;background:#bb443310}.time-trigger[aria-expanded=true]>.icon:last-child{transform:rotate(180deg)}.time-trigger strong{font-size:15px;letter-spacing:.01em;font-variant-numeric:tabular-nums}.time-options{position:absolute;top:100%;margin-top:8px;left:0;z-index:21;width:max(100%,280px);padding:16px;background:#f5f5f6;border:1px solid #e2e2e5;border-radius:10px;color:#27272b;box-shadow:0 16px 45px #0006;animation:pickerOpen .2s ease both;transform-origin:top left}.time-options-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px;font-size:11px}.time-options-heading span{font-size:9px;color:#73737b}#time-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}#time-slots button{border:1px solid #dcdce0;border-radius:7px;background:white;color:#38383f;min-height:42px;font-family:var(--body);font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;transition:background .18s,transform .18s}#time-slots button:hover:not(:disabled){background:#e9e9ec;transform:translateY(-1px)}#time-slots button[aria-selected=true]{background:#b93732;color:#fff;border-color:#b93732}#time-slots button:disabled{opacity:.32;cursor:not-allowed}.booking-enquiry-note{font-size:11px!important;line-height:1.8!important;color:#b4b4bd!important;padding-top:14px;border-top:1px solid #ffffff18}.payment-methods{margin-top:22px}.payment-methods>span{font-size:9px;color:#aaaab2;display:block;margin-bottom:10px}.payment-methods>div{display:flex;gap:7px;flex-wrap:wrap}.payment-logo{display:flex;align-items:center;justify-content:center;width:64px;height:34px;background:#f7f7f8;border:1px solid #ffffff15;border-radius:5px;padding:5px}.payment-logo img{display:block;width:auto;max-width:100%;max-height:24px;height:auto;object-fit:contain}.booking-payment-explainer{font-size:10px!important;color:#b6b6bf;line-height:1.8!important}.booking-card .payment-methods{margin-top:20px}.booking-card>.caption{font-size:11px;line-height:1.85}.booking-mobile-payments{display:none}.booking-main .step-indicator .completed .step-number{background:#343437;border-color:#66666f;color:#fff}.step-indicator>i:before{background:linear-gradient(90deg,#797982,#cb5c53)}.booking-enquiry-note+.booking-mobile-payments{margin-bottom:20px}.portal-payment-note{font-size:13px;line-height:1.8}
@keyframes pickerOpen{from{opacity:0;transform:translateY(-7px) scale(.985)}to{opacity:1;transform:none}}
@media(max-width:960px){.booking-side .payment-methods,.booking-side .booking-payment-explainer{display:none}.booking-mobile-payments{display:block}}
@media(max-width:540px){.time-field-label{font-size:11px}.time-options{width:min(310px,calc(100vw - 55px))}.date-picker-shell .rental-calendar{width:100%;max-width:none;padding:12px}.calendar-day{min-height:36px}.calendar-legend{font-size:8px}.payment-logo{width:62px}.booking-main .return-time-note{min-height:52px}}
@media(prefers-reduced-motion:reduce){.date-picker-shell .rental-calendar,.time-options{animation:none}}

@media(max-width:640px){.booking-main input:not([type=checkbox]):not([type=radio]),.booking-main textarea,.booking-main select{font-size:16px}#time-slots button{min-height:44px}.calendar-day{min-height:40px}.date-trigger,.calendar-day,.time-trigger,#time-slots button{touch-action:manipulation}}
.success-orbit{width:88px;height:88px;margin-bottom:26px}.success-orbit svg{width:100%;height:100%;stroke-linecap:round;stroke-linejoin:round}.success-halo{stroke:#ce514a;stroke-opacity:.16;stroke-width:1;transform-origin:center;animation:successHalo .8s ease both}.success-ring{stroke:#db746b;stroke-width:1.5;stroke-dasharray:183;stroke-dashoffset:183;animation:successDraw .65s ease forwards}.success-tick{stroke:#f5eee9;stroke-width:3;stroke-dasharray:45;stroke-dashoffset:45;animation:successDraw .4s .4s ease forwards}#booking-success:not([hidden])>h2,#booking-success:not([hidden])>p,#booking-success:not([hidden])>a{animation:successContent .5s .15s both}.calendar-day.weekend:not(.selected):not(:disabled){color:#a4312c;background:#bb443306}.calendar-day.weekend:not(:disabled):after{content:'';width:3px;height:3px;border-radius:100%;background:currentColor;display:block;margin:2px auto 0}.guide-checks .guide-rule{gap:16px;align-items:flex-start}.guide-rule-icon{display:grid;place-items:center;width:36px;height:36px;flex-shrink:0;background:#ffffff06;border:1px solid #ffffff14;border-radius:10px}.guide-rule-icon .icon{width:20px;height:20px;color:#bebec5}.guide-rule small{display:block;font-size:9px;font-weight:700;letter-spacing:.14em;margin:0 0 6px;color:#92929c}.rule-forbidden .guide-rule-icon{background:#cd413512;border-color:#cd41352e}.rule-forbidden .guide-rule-icon .icon,.rule-forbidden small{color:#ec837a}.rule-warning .guide-rule-icon .icon,.rule-warning small{color:#d8b684}.guide-story img{border-radius:10px;object-fit:cover}.guide-nav a{transition:background .2s,border-color .2s}.guide-nav a:hover{background:#ffffff08;border-color:#bb5147}@keyframes successDraw{to{stroke-dashoffset:0}}@keyframes successHalo{from{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes successContent{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.success-halo,.success-ring,.success-tick,#booking-success>*{animation:none!important;stroke-dashoffset:0!important}}

.licence-upload{margin:28px 0;padding:22px;border:1px solid #454548;border-radius:14px;background:linear-gradient(140deg,#262629,#1c1c1e)}.licence-upload-heading{display:flex;align-items:center;gap:12px}.licence-upload-heading>.icon{width:28px;height:28px;color:#ed6657;flex:none}.licence-upload h3{font-size:17px;line-height:1.4;margin:0}.licence-upload-heading p{font-size:12px;margin:4px 0 0;color:#bcbcc0}.licence-upload-body{display:grid;grid-template-columns:160px minmax(0,1fr);gap:22px;align-items:center;margin:22px 0}.licence-illustration svg{width:100%;height:auto;stroke:#99999f;stroke-width:2}.licence-illustration svg>rect:first-child{fill:#333336}.licence-illustration .licence-corner{stroke:#ed6657;stroke-width:3}.licence-illustration>span{display:block;text-align:center;font-size:8px;letter-spacing:.05em;margin-top:6px;color:#bababe}.licence-instructions p{font-size:13px;line-height:1.6;margin:0 0 8px}.licence-instructions .caption{font-size:11px}.licence-actions{display:flex;flex-wrap:wrap;gap:10px}.booking-main .licence-file-button{position:relative;overflow:hidden;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:44px;margin:0;cursor:pointer;font-size:12px;padding:12px 16px}.licence-file-button input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;margin:0}.licence-file-button:focus-within{outline:2px solid #ed6657;outline-offset:3px}.licence-selected{display:flex;align-items:center;gap:16px;margin-top:20px;padding:14px;border:1px solid #5e5e64;border-radius:10px;animation:fade .2s ease}.licence-selected img{width:100px;max-height:70px;object-fit:contain;border-radius:5px;flex:none}.licence-selected strong,.licence-selected span{display:block;font-size:12px}.licence-selected span{color:#bdbdc0;font-size:11px;margin-top:4px}.licence-selected button{display:block;background:none;border:0;padding:9px 0 0;color:#f3897d;text-decoration:underline;text-underline-offset:3px;min-height:32px;font-size:11px;text-align:left}.licence-upload #licence-status{font-size:11px;margin:14px 0 0;line-height:1.6}.licence-upload .licence-security{display:flex;align-items:flex-start;gap:8px;font-size:11px;line-height:1.6;color:#aaaab1;margin:12px 0 0}.licence-security .icon{width:15px;height:15px;flex:none;margin-top:2px}
@media(max-width:500px){.licence-upload{padding:17px}.licence-upload-body{grid-template-columns:1fr;gap:15px}.licence-illustration{max-width:180px;margin:auto}.licence-selected{gap:10px}.licence-selected img{width:75px}.licence-upload h3{font-size:16px}}
/* Reserve a separate action area so the close control never covers the steps. */
.booking-dialog .dialog-close{width:44px;height:44px;flex:none}
@media(min-width:961px){
 .booking-dialog .dialog-close{top:36px;right:24px}
 .booking-main .step-indicator{min-height:44px;margin-right:64px}
}
@media(max-width:960px){
 .booking-dialog .dialog-close{top:12px;right:12px}
 .booking-dialog .booking-side>div{padding-right:72px}
 .booking-dialog .booking-side h2{overflow-wrap:anywhere}
}
@media(max-width:960px){.booking-dialog .booking-side{flex-shrink:0}}


/* Keep the included mileage and pickup essentials visible throughout booking. */
.booking-inclusions{margin:22px 0 24px;padding:20px 0;border-block:1px solid var(--line)}
.booking-side .booking-included-km{display:flex;align-items:center;gap:12px;margin:0 0 18px;color:var(--text);font-size:16px;line-height:1.4}
.booking-included-km>.icon{width:28px;height:28px;flex:none;color:#ed7462}
.booking-included-km>span{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 8px}
.booking-included-km strong{font-size:25px;font-weight:700;letter-spacing:-.035em;color:#fff}
.booking-inclusions ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.booking-inclusions li{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5;color:#dddddf}
.booking-inclusions li>.icon{width:17px;height:17px;flex:none;margin-top:2px;color:#b4b4bd}
.booking-main .later-return-choice{margin:24px 0 16px}
.booking-main .later-return-choice legend{font-size:14px;margin-bottom:12px}
.return-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.booking-main .return-option{margin:0;display:flex;align-items:flex-start;gap:8px;padding:14px 10px;min-height:88px;background:#ffffff03;border:1px solid #ffffff25;border-radius:8px;cursor:pointer;touch-action:manipulation;transition:border-color .2s,background .2s}
.return-option input{width:15px;height:15px;margin:3px 0 0;flex:none}
.return-option>span{min-width:0}
.return-option strong{display:block;font-size:12px;line-height:1.4;font-weight:600;color:#f4f4f5}
.return-option small{display:block;margin-top:8px;font-size:12px;line-height:1.4;font-variant-numeric:tabular-nums;color:#bdbdc5}
.return-option:hover{background:#ffffff07;border-color:#ffffff60}
.return-option:has(input:checked){border-color:#ed7462;background:#ed746214;box-shadow:inset 0 0 0 1px #ed746233}
.return-option:has(input:checked) small{color:#ffb9a9}
.return-option:has(input:focus-visible){outline:2px solid #f6a18a;outline-offset:3px}
#hourly-rate-note{font-size:11px;line-height:1.6;color:#b9b9be;margin:12px 0 0}
@media(max-width:960px){
 .booking-dialog .booking-side>.booking-side-content{display:contents}
 .booking-car-heading{padding:20px 72px 20px 20px;min-width:0}
 .booking-dialog .booking-side>img{grid-column:1;grid-row:1;height:100%;max-height:170px}
 .booking-inclusions{grid-column:1/-1;margin:0;padding:18px 28px;border-top:1px solid var(--line);border-bottom:0;background:#ffffff03}
 .booking-side .booking-included-km{margin-bottom:12px;font-size:15px}
 .booking-included-km strong{font-size:23px}
 .booking-inclusions ul{gap:8px}
 .booking-inclusions li{font-size:12px}
}
@media(max-width:540px){
 .booking-car-heading{padding:20px 60px 16px 16px}
 .booking-inclusions{padding:16px 20px}
 .booking-side .booking-included-km{font-size:14px;gap:10px}
 .booking-included-km strong{font-size:22px}
 .booking-inclusions li{font-size:12px;gap:8px}
 .booking-inclusions ul{gap:7px}
 .return-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .booking-main .return-option{padding:14px 12px;min-height:82px}
 .return-option strong,.return-option small{font-size:13px}
}
@media(prefers-reduced-motion:reduce){.booking-main .return-option{transition:none}}

#pickup-time-label{white-space:nowrap}

/* Mobile keeps the optional return extension quiet until requested. */
.return-choice-toggle,.return-choice-note{display:none}
@media(max-width:540px){
 .booking-main .later-return-choice{margin:20px 0 16px}
 .booking-main .later-return-choice legend{font-size:12px;font-weight:500;color:#c9c9ce;margin-bottom:8px}
 .booking-main .later-return-choice legend .icon{width:14px;height:14px}
 .return-choice-toggle{display:flex;align-items:center;gap:12px;width:100%;min-height:48px;padding:12px 14px;border:1px solid #ffffff25;border-radius:8px;background:#ffffff03;color:#f4f4f5;text-align:left;font:inherit;cursor:pointer;touch-action:manipulation}
 #return-choice-label{flex:1;min-width:0;font-size:13px;line-height:1.5;font-weight:500}
 #return-choice-price{flex:none;font-size:12px;line-height:1.5;color:#c3c3ca;font-variant-numeric:tabular-nums}
 .return-choice-toggle>.icon{width:14px;height:14px;flex:none;color:#a8a8b1}
 .return-choice-toggle[aria-expanded=true]>.icon{transform:rotate(180deg)}
 .return-choice-toggle[aria-expanded=true]{border-color:#ffffff50}
 .later-return-choice:not(.is-expanded) .return-choice-panel{display:none}
 .return-choice-panel{padding-top:8px}
 .return-options{display:flex;flex-direction:column;gap:0;border:1px solid #ffffff25;border-radius:8px;overflow:hidden;background:#ffffff03}
 .booking-main .return-option{min-height:48px;align-items:center;gap:12px;border:0;border-bottom:1px solid #ffffff14;border-radius:0;padding:12px 14px;background:none;box-shadow:none}
 .booking-main .return-option:last-child{border-bottom:0}
 .return-option input{width:16px;height:16px;margin:0}
 .return-option>span{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}
 .return-option strong{font-size:12px;font-weight:500;line-height:1.5}
 .return-option small{flex:none;font-size:12px;margin:0;color:#c3c3ca}
 .return-option:has(input:checked){background:#ffffff08;border-bottom-color:#ffffff14;box-shadow:none}
 .return-option:has(input:checked) small{color:#e5e5e8}
 .return-option:has(input:focus-visible){outline-offset:-3px}
 #hourly-rate-note{font-size:11px;margin-top:8px}
 .return-choice-note{display:block;font-size:11px;line-height:1.6;color:#b9b9be;margin:8px 0 0}
 .later-return-choice.is-expanded .return-choice-note{display:none}
}

.booking-return-condition{margin:24px 0 16px;padding:20px;border:1px solid #45413b;border-radius:12px;background:#211f1b;display:grid;gap:18px}.booking-return-condition>div{display:flex;gap:12px;align-items:flex-start}.booking-return-condition>div>svg{width:22px;height:22px;flex:none;color:#d8b57c;margin-top:2px}.booking-return-condition p{margin:0;min-width:0}.booking-return-condition strong{display:block;font-size:14px;color:#f4f2ed;line-height:1.5;margin-bottom:4px}.booking-return-condition p>span{display:block;font-size:13px;line-height:1.65;color:#c3c0ba}@media(max-width:600px){.booking-return-condition{padding:16px}.booking-return-condition strong{font-size:15px}.booking-return-condition p>span{font-size:14px}}

.check-card[data-date-motion="wash"] small{font-size:13px;line-height:1.6}.wash-price{white-space:nowrap}

.condition-motion-icon{position:relative;display:block;flex:none;width:32px;height:32px;margin:-3px 0 0 -5px;color:#d8b57c}.condition-motion-icon>svg{width:22px;height:22px;display:block;margin:5px}.condition-motion-icon .customer-motion-layer{inset:0}
