:root{font-family:Helvetica,Arial,sans-serif;color:#111;background:white;font-size:16px;scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer}header{display:flex;align-items:center;justify-content:space-between;padding:22px 6%;gap:24px}.logo{font-weight:900;font-size:32px;line-height:.8;letter-spacing:-2px;display:inline-block}.logo span{display:block;font-size:9px;line-height:2.5;letter-spacing:1px}nav{display:flex;align-items:center;gap:30px;font-size:14px}.button{background:#111;color:#fff;border:1px solid #111;display:inline-flex;justify-content:center;align-items:center;padding:17px 24px;font-weight:700;font-size:14px;min-height:52px}.white{background:white;color:#111;border-color:white}.plain{background:none;border:0;padding:12px 0}.hero{height:680px;min-height:520px;position:relative;color:white}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.02)),linear-gradient(0deg,rgba(0,0,0,.4),transparent 35%)}.hero-copy{position:absolute;top:16%;left:6%;max-width:650px}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:700;line-height:1.6;margin:0 0 20px}h1{font-size:clamp(44px,6.7vw,92px);letter-spacing:-4px;line-height:1.02;margin:0 0 25px}h2{font-size:clamp(30px,3.4vw,48px);letter-spacing:-1.7px;line-height:1.1;margin:0 0 24px}h3{font-size:25px;letter-spacing:-.7px;line-height:1.2;margin:14px 0}p{line-height:1.65}.hero-copy>p:not(.eyebrow){font-size:18px;margin-bottom:30px}.hero-foot{position:absolute;bottom:30px;left:6%;right:6%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.5px}.search{padding:42px 6%;background:#f4f4f4;display:grid;grid-template-columns:1fr 2fr;gap:16px 45px;scroll-margin-top:25px}.search h2{font-size:32px;margin:0}.search .eyebrow{margin-bottom:10px}form{display:flex;gap:16px;align-items:end}label{display:flex;flex-direction:column;gap:10px;font-size:14px;flex:1}input{padding:14px 12px;min-width:0;max-width:100%;height:52px;border:1px solid #ccc;border-radius:0;background:white;color:#111}.search>p{grid-column:2;font-size:14px;margin:0;color:#555}.section{padding:85px 6%;max-width:1600px;margin:auto;scroll-margin-top:30px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:30px}.section-head h2{margin:0}.section-head>p{color:#555}.grid{display:grid;grid-template-columns:1.15fr .85fr;gap:30px}.car{border:1px solid #ddd}.car-img{position:relative;background:#eee;height:310px}.car-img img{width:100%;height:100%;object-fit:cover}.badge{position:absolute;top:18px;left:18px;background:#fff;padding:9px 12px;font-size:12px;letter-spacing:1px}.car-body{padding:28px}.car-body p{color:#555}.text-link{display:inline-block;font-size:14px;font-weight:700;border-bottom:1px solid;padding-bottom:5px;margin-top:10px}.fleet-note{background:#f3f3f3;padding:45px;display:flex;flex-direction:column;justify-content:center}.big-number{font-size:65px;font-weight:700;letter-spacing:-4px}.fleet-note h3{font-size:38px}.note{font-size:14px;color:#666;border-top:1px solid #ccc;padding-top:20px}.how{border-top:1px solid #ddd}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:48px}.steps span{font-size:14px;font-weight:700}.steps p{max-width:310px;color:#555}.closing{background:#111;color:#fff;padding:80px 6%;position:relative}.closing h2{font-size:clamp(42px,5vw,70px);margin-bottom:30px}footer{padding:40px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:14px}footer>span{color:#666}dialog{border:0;padding:40px;width:min(520px,92vw);max-height:90vh;box-shadow:0 20px 100px #0004}dialog::backdrop{background:#0009}dialog form{flex-direction:column;align-items:stretch}dialog label{width:100%}.close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:28px}button:disabled{cursor:not-allowed;opacity:.5}:focus-visible{outline:3px solid #087fa6;outline-offset:4px}.price{font-weight:700;font-size:24px}.empty{grid-column:1/-1;border:1px solid #ddd;padding:30px}.car-body .button{margin-top:12px}@media(max-width:760px){header{padding:18px 5%}nav{gap:16px}nav>a:first-child,nav>a:nth-child(2){display:none}nav .button{padding:13px}.hero{height:630px}.hero-copy{left:5%;right:5%;top:14%}h1{letter-spacing:-2px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-foot{left:5%;right:5%;font-size:11px}.hero-foot span:last-child{display:none}.hero>img{object-position:60% center}.search{grid-template-columns:1fr;padding:30px 5%}.search form{flex-wrap:wrap}.search label{flex-basis:45%}.search button{width:100%}.search>p{grid-column:1}.section{padding:55px 5%}.section-head{display:block}.section-head>p{display:none}.grid{grid-template-columns:1fr}.car-img{height:240px}.fleet-note{padding:30px}.fleet-note h3{font-size:32px}.steps{grid-template-columns:1fr;gap:25px;margin-top:30px}.steps article{border-top:1px solid #ddd;padding-top:22px}.steps p{max-width:none}.closing{padding:55px 5%}footer{flex-wrap:wrap;padding:30px 5%}footer>span{width:100%}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}}

.carousel{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:2px;padding:2px 2px 20px;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#111 #e7e7e7}.carousel>.car{flex:0 0 calc((100% - 24px)/2);min-width:0;scroll-snap-align:start;display:flex;flex-direction:column}.carousel>.car .car-body{flex:1;display:flex;flex-direction:column}.carousel>.car .car-body .button{margin-top:auto;align-self:flex-start}.carousel>.fleet-note{flex:0 0 calc((100% - 24px)/2);scroll-snap-align:start}.carousel>.empty{flex:0 0 100%}.carousel-controls{display:flex;justify-content:flex-end;align-items:center;gap:18px;margin:0 0 20px;min-height:44px}.carousel-controls button{min-height:44px;padding:10px 18px;border:1px solid #111;background:white;color:#111;font-weight:700;font-size:14px}.carousel-controls span{font-size:14px;color:#555;min-width:55px;text-align:center}@media(max-width:760px){.carousel>.car,.carousel>.fleet-note{flex-basis:87%}.carousel{gap:16px}.carousel-controls{justify-content:space-between}.carousel .car-img{height:230px}}
/* Compact fleet cards, keeping labels readable. */
.fleet.section{padding-top:55px;padding-bottom:55px}.fleet .section-head{margin-bottom:18px}.carousel{gap:16px;padding-bottom:14px}.carousel>.car{flex-basis:320px}.carousel .car-img{height:190px;background:white}.carousel .car-img img{object-fit:contain}.carousel .car-body{padding:20px;gap:0}.carousel .car-body .eyebrow{margin:0 0 8px}.carousel .car-body h3{font-size:23px;margin:0 0 10px}.carousel .car-body p{margin:0 0 12px;line-height:1.45}.carousel .car-body .price{font-size:22px;color:#111;margin:4px 0 12px}.carousel>.car .car-body .button{margin-top:4px;min-height:44px;padding:12px 18px}.carousel-controls{gap:12px;margin-bottom:12px}.carousel-controls button{padding:9px 14px}@media(max-width:760px){.carousel>.car{flex-basis:min(84%,320px)}.carousel .car-img{height:170px}.carousel .car-body{padding:18px}.fleet.section{padding-top:40px;padding-bottom:40px}}

.save-notice:empty{display:none}.save-notice{position:fixed;top:22px;left:50%;transform:translateX(-50%);z-index:100;background:#111;color:white;padding:14px 24px;font-size:16px;box-shadow:0 4px 20px #0003}

.about{border-top:1px solid #ddd}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:50px;max-width:1100px}.about-copy p{margin:0;color:#444}.faq details{border-bottom:1px solid #ddd;padding:20px 0}.faq summary{font-size:18px;font-weight:700;cursor:pointer;line-height:1.5}.faq details p{max-width:800px;color:#444}.privacy{max-width:900px}.privacy h1{font-size:52px;letter-spacing:-2px}.privacy h2{font-size:26px;letter-spacing:-.6px;margin-top:35px}.privacy p{line-height:1.75}@media(max-width:760px){.about-copy{grid-template-columns:1fr;gap:18px}nav>a[href="#about"]{display:none}.privacy h1{font-size:40px}}

.contact{border-top:1px solid #ddd}.contact-email{display:inline-block;font-size:clamp(20px,3vw,34px);font-weight:700;border-bottom:2px solid #111;overflow-wrap:anywhere;padding-bottom:6px}nav{gap:20px}@media(max-width:760px){nav>a[href="#contact"]{display:none}}

#profileForm [hidden]{display:none}#profileForm.view-mode input{border-color:transparent;background:#f4f4f4;cursor:default;color:#111}#profileForm.view-mode label{color:#555}#profileForm input:read-only{box-shadow:none}

#profileFields{border:0;padding:0;margin:0;min-width:0;display:flex;flex-direction:column;gap:18px}#profileFields[hidden],#profileDetails[hidden]{display:none}.profile-details{margin:24px 0 26px}.profile-details>div{padding:0 0 18px;margin:0 0 18px;border-bottom:1px solid #e5e5e5}.profile-details>div:last-child{margin-bottom:0}.profile-details dt{font-size:14px;color:#666;line-height:1.5;margin-bottom:6px}.profile-details dd{font-size:19px;font-weight:700;line-height:1.5;margin:0;overflow-wrap:anywhere}#profileEmail{color:#555;overflow-wrap:anywhere}#profileStatus{font-size:14px;line-height:1.6;color:#555}

.welcome-banner{padding:24px 6%;background:#f4f4f4;border-top:1px solid #e5e5e5;scroll-margin-top:15px}.welcome-banner[hidden]{display:none}.welcome-banner p{margin:0;font-size:16px;line-height:1.5}.welcome-banner .welcome-name{font-size:clamp(22px,3vw,32px);font-weight:700;letter-spacing:-.7px;margin-bottom:5px}@media(max-width:760px){.welcome-banner{padding:20px 5%}}

#bookingsDialog{width:min(760px,94vw)}#bookingsDialog>p{line-height:1.6;color:#555}.booking-group{font-size:19px;margin:30px 0 14px}.booking-card{border:1px solid #ddd;padding:24px;margin-bottom:16px}.booking-card h3{font-size:23px;margin:0 0 12px}.booking-status{display:inline-block;background:#f0f0f0;padding:6px 10px;font-size:13px;font-weight:700}.booking-card dl{margin:20px 0 0}.booking-card dl>div{display:grid;grid-template-columns:160px 1fr;gap:16px;margin-top:12px}.booking-card dt{color:#666;font-size:14px}.booking-card dd{margin:0;overflow-wrap:anywhere;font-weight:600}nav{flex-wrap:wrap}@media(max-width:760px){header{gap:18px}nav{justify-content:flex-end;gap:12px}nav #myBookings{font-size:14px}.booking-card{padding:18px}.booking-card dl>div{grid-template-columns:1fr;gap:4px}#bookingsDialog{padding:35px 22px}}

#enquiryForm textarea,#enquiryStatus textarea{font:inherit;width:100%;padding:12px;border:1px solid #bbb;resize:vertical}#enquiryActions{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-top:22px}#enquiryActions[hidden]{display:none}#enquiryStatus{font-size:14px;line-height:1.6}#enquirySummary h3{font-size:23px}#enquiryStatus textarea{min-height:220px;margin-top:12px}

[hidden]{display:none!important}.vehicle-page{max-width:1240px;margin:auto;padding:35px 5% 70px}.vehicle-page h1{font-size:clamp(30px,4vw,46px);letter-spacing:-1.3px;margin:28px 0 10px}.vehicle-page h2{font-size:29px;letter-spacing:-.7px}.vehicle-page h3{font-size:21px;margin-top:28px}.vehicle-gallery{display:grid;grid-template-columns:2fr 1fr 1fr;gap:10px;max-height:460px;overflow:auto;border-radius:14px;margin:28px 0 36px;background:#f5f5f5}.vehicle-gallery>a{display:block;min-height:190px;background:#f5f5f5}.vehicle-gallery>a:first-child{grid-row:span 2}.vehicle-gallery img{width:100%;height:100%;max-height:440px;object-fit:contain}.vehicle-gallery.single-photo{grid-template-columns:1fr}.vehicle-gallery.single-photo>a{height:390px}.vehicle-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:70px;align-items:start}.vehicle-description p{line-height:1.7;color:#555}.vehicle-booking{position:sticky;top:25px;border:1px solid #ddd;box-shadow:0 8px 30px #0001;border-radius:14px;padding:26px}.vehicle-booking form{display:flex;flex-direction:column;align-items:stretch;gap:16px}.vehicle-booking input{width:100%;min-width:0}.vehicle-booking .price{margin:0 0 24px}.vehicle-booking .button{width:100%}.vehicle-caption{font-size:13px;color:#666;line-height:1.6}.vehicle-booking .profile-details dd{font-size:17px}.busy-period{border-left:2px solid #bbb;padding-left:14px;font-size:14px}.vehicle-busy{border-top:1px solid #ddd;margin-top:30px;padding-top:10px}@media(max-width:760px){.vehicle-layout{grid-template-columns:1fr;gap:30px}.vehicle-booking{position:static;grid-row:1}.vehicle-gallery{grid-template-columns:85% 85% 85%;scroll-snap-type:x mandatory;max-height:280px;overflow-x:auto}.vehicle-gallery>a,.vehicle-gallery>a:first-child{grid-row:auto;height:260px;scroll-snap-align:start;min-height:0}.vehicle-gallery.single-photo>a{height:260px}.vehicle-page{padding:25px 5% 50px}.vehicle-gallery img{max-height:260px}.vehicle-gallery{margin-bottom:24px}}

.rental-calendar{border:1px solid #ddd;border-radius:10px;padding:14px;background:#fff}.calendar-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.calendar-top button{border:0;background:#f5f5f5;border-radius:50%;width:36px;height:36px;font-size:24px}.calendar-top strong{font-size:15px}.calendar-week,.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.calendar-week{font-size:11px;color:#666;margin:12px 0 8px}.calendar-days button{background:white;border:0;min-width:0;height:35px;border-radius:50%;font:inherit;font-size:13px}.calendar-days button:hover:enabled{background:#eee}.calendar-days .calendar-booked{text-decoration:line-through;color:#777;background:#f5f5f5;opacity:1}.calendar-days .calendar-past{color:#aaa;opacity:.5}.calendar-days .calendar-selected:enabled{background:#111;color:#fff}.calendar-key,#calendarHint{font-size:12px;line-height:1.5;color:#666}#vehicleStart,#vehicleEnd{cursor:pointer;background:#fff}#calendarClose{font-size:13px;min-height:35px}

.trip-summary{border:1px solid #e1e1dc;border-radius:24px;background:#f7f7f4;padding:24px;margin:25px -8px}.trip-summary .eyebrow,.trip-driver .eyebrow{font-size:11px;color:#7c7c75;letter-spacing:1.8px}.trip-date-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;padding:6px 0 24px;border-bottom:1px solid #ddd}.trip-date-row strong{font-size:18px}.trip-amounts{margin:22px 0}.trip-amounts>div{display:flex;justify-content:space-between;gap:15px;margin:18px 0;font-size:14px;line-height:1.5}.trip-amounts dd{margin:0;font-weight:700;white-space:nowrap}.trip-amounts>div:nth-last-child(2){border-top:1px solid #ddd;padding-top:22px;font-weight:700;text-transform:uppercase}.trip-amounts>div:last-child{font-weight:700}.trip-amounts>div:last-child dd{font-size:25px;line-height:1.1}.trip-note{font-size:13px;line-height:1.6;color:#777}.trip-driver{margin:30px 0}.trip-driver h3{margin:8px 0}.trip-driver-card{padding:22px;background:#f7f7f4;border:1px solid #e1e1dc;border-radius:22px}.trip-driver-card>strong{font-size:22px;display:block}.trip-driver-card>p{font-size:15px;color:#666}.trip-driver-card .eyebrow{font-size:10px;letter-spacing:1px}.trip-driver-card button{min-height:42px}.calendar-days .calendar-in-range:enabled{border-radius:0;background:#eeeeea}.calendar-days .calendar-range-end:enabled{background:#111;color:#fff;border-radius:50%}#vehicleContinue{border-radius:15px;min-height:56px;text-transform:uppercase;font-size:16px}.vehicle-booking{width:100%}@media(min-width:1000px){.vehicle-layout{grid-template-columns:minmax(0,1fr) 410px;gap:60px}}

.footer-whatsapp{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;min-height:44px}.footer-whatsapp img{display:block;width:22px;height:22px;object-fit:contain}footer>a[href^="mailto:"]{overflow-wrap:anywhere}

.booking-tabs{display:flex;background:#f3f3ef;padding:6px;border-radius:20px;gap:5px;margin:22px 0}.booking-tabs button{flex:1;border:0;border-radius:15px;background:transparent;padding:16px;font-weight:700;text-transform:uppercase;letter-spacing:1px}.booking-tabs button[aria-pressed=true]{background:#111;color:#fff}.verification-card{background:#f7f7f4;border:1px solid #e2e2de;border-radius:24px;padding:25px;margin-bottom:35px}.verification-card:empty{display:none}.verification-card h3{font-size:23px;margin:10px 0}.verification-card p{color:#777;font-size:14px;line-height:1.6}.booking-card{border-radius:24px;padding:28px}.booking-card-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.booking-card-head h3{margin:0}.booking-status{border-radius:30px;background:#111;color:#fff;text-transform:uppercase;font-size:11px;white-space:nowrap}.booking-meta{color:#777}.booking-detail-block{background:#f7f7f4;border-radius:18px;padding:20px;margin:20px 0}.booking-detail-block h4{margin:0 0 15px;font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#777}.booking-detail-block dl{margin:0}.booking-card .booking-detail-block dl>div{display:flex;justify-content:space-between;gap:20px;margin:14px 0;align-items:baseline}.booking-card .booking-detail-block dd{text-align:right;font-size:15px}.booking-detail-block dt{font-size:13px}.booking-next-steps{border:1px solid #e2e2de;background:#f4f4ef;border-radius:22px;padding:24px;margin-top:24px}.booking-next-steps h3{margin:12px 0 22px}.booking-step{display:flex;gap:16px;background:white;border:1px solid #e2e2de;border-radius:18px;padding:18px;margin-top:12px;align-items:center}.step-number{background:#111;color:white;border-radius:50%;width:36px;height:36px;display:grid;place-items:center;flex-shrink:0}.booking-step strong{font-size:13px;text-transform:uppercase}.booking-step p{margin:5px 0 0;color:#777;font-size:13px;line-height:1.5}.booking-footnote{font-size:12px;color:#777;line-height:1.6}#bookingsDialog{width:min(850px,96vw)}@media(max-width:760px){.booking-card{padding:20px}.booking-card-head{align-items:flex-start}.booking-card-head h3{font-size:23px}.booking-next-steps{padding:18px}.booking-card .booking-detail-block dl>div{gap:12px}.booking-detail-block{padding:17px}.booking-tabs button{padding:15px 10px;font-size:12px}}
#customerActionDialog{width:min(780px,96vw)}.customer-action-form{display:flex;flex-direction:column;gap:20px;margin-top:22px}.customer-action-form input{width:100%;min-width:0}.customer-action-form label{display:flex;flex-direction:column;gap:8px}.customer-action-form .agreement-check{flex-direction:row;align-items:flex-start;font-size:14px;line-height:1.6}.agreement-check input{width:20px;height:20px;flex-shrink:0;margin-top:3px}.document-upload,.agreement-terms,.signed-record{padding:22px;border:1px solid #ddd;border-radius:18px;margin:15px 0}.document-preview{display:block;width:100%;max-height:260px;object-fit:contain;margin-top:14px}.signature-pad canvas{display:block;width:100%;height:180px;border:1px solid #aaa;border-radius:10px;touch-action:none;background:#fff}.signature-pad{width:100%}.saved-signature{display:block;width:100%;max-width:350px;height:120px;object-fit:contain}.agreement-terms li{margin:14px 0;line-height:1.6}.inspection-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}.inspection-gallery figure{margin:0;background:#f5f5f2;border-radius:12px;padding:12px}.inspection-gallery img{width:100%;height:180px;object-fit:contain}.inspection-gallery figcaption{font-size:12px;font-weight:700;margin-bottom:10px}.booking-step{width:100%;text-align:left;color:#111;font:inherit}.booking-step:where(button):hover{border-color:#111}.booking-action{display:block;min-height:44px;margin:10px 0}#customerActionStatus{line-height:1.6;font-size:14px}input[type=file]{padding:12px 0;font-size:13px}@media(max-width:760px){#customerActionDialog{padding:32px 20px}.inspection-gallery{gap:8px}.inspection-gallery img{height:130px}.document-upload,.agreement-terms,.signed-record{padding:18px}}
