:root{--orange:#ff6b16;--ink:#181a18;--muted:#686d67;--line:#dfe2dc;--paper:#f5f6f3}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);background:#fff;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #027b95;outline-offset:5px}button{color:inherit}button:disabled{cursor:default}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid #eee}.brand{display:flex;flex-direction:column;white-space:nowrap}.brand-name{font-size:26px;font-weight:950;letter-spacing:-1.3px;line-height:1.15}.brand-sub{font-size:10px;letter-spacing:5.4px;font-weight:700;margin-top:4px}.sun-mark{color:var(--orange);font-size:32px;margin-left:4px;vertical-align:middle}nav{display:flex;gap:32px;font-size:14px;font-weight:700}nav a:hover{color:#ba4600}.header-right{display:flex;align-items:center;gap:24px}.language{background:none;border:0;font-size:14px;padding:10px}.contact-link{font-size:14px;font-weight:700;border-bottom:1px solid;padding-bottom:3px}.hero{height:610px;position:relative;color:white;overflow:hidden;background:#123f4d}.hero-image{position:absolute;inset:0;background-image:url('assets/sydney-hero.webp');background-size:cover;background-position:center 53%;animation:hero-enter 1.2s ease-out}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,20,26,.83),rgba(6,20,26,.39) 55%,rgba(6,20,26,.06)),linear-gradient(0deg,rgba(6,20,26,.25),transparent 60%)}.hero-content{position:relative;padding:63px 5%;max-width:920px}.eyebrow{font-size:12px;letter-spacing:1.6px;font-weight:700;display:flex;align-items:center;gap:10px;line-height:1.6}.eyebrow>span:first-child:empty{width:6px;height:6px;background:var(--orange);border-radius:50%}h1{font-size:clamp(58px,6.5vw,99px);letter-spacing:-4.5px;line-height:1.02;font-weight:950;margin:27px 0 24px}h1 em{font-style:normal;color:var(--orange)}.hero p{font-size:18px;max-width:455px;line-height:1.7;color:#ebefef;margin:0 0 27px}.hero-link{font-size:15px;font-weight:700;border-bottom:1px solid #ffffff70;padding-bottom:8px}.hero-caption{position:absolute;right:4.5%;bottom:107px;font-size:11px;letter-spacing:1px}.hero-caption span{display:block;text-align:right;margin-top:5px}.booking-wrap{position:relative;margin:-67px auto 0;max-width:1370px;width:91%;z-index:2}.booking{padding:27px 30px 18px;background:white;border-radius:7px;box-shadow:0 14px 45px #00000012}.booking-top{display:flex;justify-content:space-between;margin-bottom:21px}.booking-top strong{font-size:13px;letter-spacing:1px}.booking-top>span{font-size:13px;color:var(--muted)}.booking-fields{display:grid;grid-template-columns:1.25fr 1.25fr 1fr 1fr 1.15fr;gap:12px;align-items:end}.booking-fields label{display:flex;flex-direction:column;border:1px solid #ced2cd;border-radius:4px;padding:8px 12px;min-width:0;gap:2px}.booking-fields label>span{font-size:12px;color:#626960}select,input{width:100%;min-width:0;border:0;background:transparent;font-size:14px;font-weight:600;padding:3px 0;color:var(--ink)}input[type=date]{min-height:28px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:17px 23px;font-size:14px;font-weight:700;border:0;border-radius:4px;transition:background .2s,transform .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.orange{background:var(--orange);color:#151715}.orange:hover{background:#ff8239}.booking-fields .btn{min-height:65px}.booking-note{font-size:12px;color:var(--muted);margin:14px 0 0}.promise-bar{display:flex;justify-content:center;gap:8%;padding:30px 5% 32px;border-bottom:1px solid var(--line);font-weight:700;font-size:11px;letter-spacing:1px}.promise-bar span{position:relative;padding-left:17px}.promise-bar span:before{content:'✓';position:absolute;left:0;color:#9b430d}.section{padding:84px 5%;max-width:1550px;margin:auto}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:32px}.dark{color:#646a62}h2{font-size:clamp(32px,3.1vw,47px);letter-spacing:-1.8px;line-height:1.15;margin:14px 0 0;font-weight:800}.section-heading>p{max-width:322px;font-size:15px;color:var(--muted);margin:0;line-height:1.7}.fleet-controls{display:flex;justify-content:space-between;align-items:center;margin:31px 0 25px;gap:15px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filters button{border:1px solid #d8dcd5;border-radius:30px;background:#fff;padding:9px 19px;font-size:14px;transition:.2s}.filters button.active,.filters button:hover{background:var(--ink);color:white;border-color:var(--ink)}#car-count{font-size:13px;white-space:nowrap;color:var(--muted)}.car-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.car-card{background:var(--paper);border-radius:5px;overflow:hidden;border:1px solid #e7e9e3;position:relative;transition:transform .2s,box-shadow .2s}.car-card:hover{transform:translateY(-4px);box-shadow:0 10px 24px #0000000d}.car-card-top{padding:23px 24px 0}.car-category{font-size:11px;letter-spacing:1.3px;font-weight:700;color:#777b74}.car-card h3{font-size:24px;line-height:1.3;letter-spacing:-.7px;margin:7px 0 4px}.car-tag{font-size:12px;color:#9c4310}.car-photo{width:100%;height:218px;object-fit:contain;display:block;padding:12px 16px;mix-blend-mode:multiply}.car-card-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #dde1d8;padding:17px 24px;gap:12px}.car-card-bottom p{font-size:13px;margin:0;color:#646b60}.car-card-bottom button{background:none;border:0;font-size:13px;font-weight:700;white-space:nowrap;padding:7px 0}.car-card-bottom button:hover{color:#ad4206}.fleet-bottom{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-top:30px}.fleet-bottom>p{font-size:12px;color:var(--muted);max-width:520px}.outline{border:1px solid var(--ink);background:white}.trip-summary{background:#fff3e9;padding:13px 18px;border-left:3px solid var(--orange);font-size:14px}.airport-section{display:grid;grid-template-columns:.95fr 1.05fr;background:#1a211e;color:white;padding:73px 5%;gap:5%;align-items:center}.airport-copy{max-width:550px}.airport-copy h2{font-size:clamp(36px,3.4vw,52px);line-height:1.1;letter-spacing:-1.8px;margin-top:24px}.airport-copy h2 em{color:var(--orange);font-style:normal}.airport-copy>p{font-size:15px;color:#bec6bd;line-height:1.7;max-width:430px}.airport-stat{display:flex;align-items:center;gap:25px;border-bottom:1px solid #ffffff29;padding:5px 0 20px;margin-bottom:21px}.airport-stat strong{font-size:68px;font-weight:700;line-height:1.1;letter-spacing:-3px;white-space:nowrap}.airport-stat strong span{font-size:18px;letter-spacing:0}.airport-stat>span{font-size:14px;max-width:115px;color:#c3c9c0}.terminal-tabs{display:flex;gap:8px}.terminal-tabs button{font-size:14px;border:1px solid #ffffff50;background:none;color:#fff;border-radius:3px;padding:12px 17px}.terminal-tabs button.active{background:var(--orange);border-color:var(--orange);color:var(--ink)}.terminal-tabs button span{margin-left:6px}#terminal-description{min-height:48px;font-size:14px}.white-link{display:inline-block;font-size:14px;border-bottom:1px solid #ffffff60;padding-bottom:6px}.airport-copy>.source-note{font-size:11px;color:#a3afa3;max-width:510px;margin-top:22px}.source-note a{text-decoration:underline}.airport-map{background:#eef1ed;border-radius:6px;overflow:hidden;color:#18201b}.map-heading{display:flex;align-items:center;justify-content:space-between;padding:20px 23px;border-bottom:1px solid #d9ded7;font-size:11px;font-weight:700;letter-spacing:.8px}.map-heading button{background:none;border:0;font-size:11px;text-decoration:underline}.airport-map svg{width:100%;height:auto;display:block}.road-label{fill:#879187;font:10px Arial;letter-spacing:1px}.water-label{fill:#86abaa;font:11px Arial;letter-spacing:2px}.office-label{fill:white;font:bold 13px Arial;letter-spacing:.7px}.terminal-label{fill:#253c2e;font:bold 12px Arial;letter-spacing:1px}.small-map-label{fill:#637364;font:10px Arial;letter-spacing:.5px}.route{fill:none;stroke:#b9c7ba;stroke-width:5;stroke-dasharray:7 8;opacity:.6}.route.active{stroke:#ff6b16;opacity:1;animation:route-flow 1.5s linear infinite}.traveller{fill:#ff6b16;stroke:white;stroke-width:3;opacity:0}.traveller.active{opacity:1}.map-footer{display:flex;justify-content:space-between;align-items:center;padding:17px 22px;background:white;gap:10px;font-size:11px;color:#788275}.map-footer>span:first-child{display:flex;gap:8px;align-items:center}.map-footer i{width:6px;height:6px;background:var(--orange);border-radius:50%}.location-layout{display:grid;grid-template-columns:1fr 1.8fr;gap:48px;align-items:start}.office-card{background:var(--orange);border-radius:5px;padding:32px;color:#161c16}.location-tag{font-size:11px;font-weight:bold;letter-spacing:1px}.office-card h3{font-size:50px;line-height:1;letter-spacing:-2.5px;margin:30px 0}.office-card address{font-style:normal;font-size:19px;line-height:1.5;font-weight:700}.office-card p{font-size:13px;margin:8px 0 28px}.office-card a{font-size:14px;font-weight:700;border-bottom:1px solid #181a1860;padding-bottom:6px}.locations-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:34px}.locations-grid button{display:flex;align-items:center;gap:10px;justify-content:space-between;padding:17px 0;border:0;border-bottom:1px solid #dee3dc;background:none;text-align:left;font-size:15px}.locations-grid button span:first-child{color:#959c92;font-size:11px;min-width:20px}.locations-grid button strong{flex:1;font-weight:500}.locations-grid button:hover{color:#b44b0e}.locations-grid button.selected{color:#ac4306}.location-note{font-size:12px;color:var(--muted);margin:18px 0 0}.contact-section{background:#222921;color:white;display:flex;justify-content:space-between;align-items:center;padding:57px 5%;gap:40px}.contact-section h2{font-size:39px}.contact-section .eyebrow{font-size:11px;color:#b7c0b3}footer{padding:50px 5% 22px;background:#141a15;color:white}.footer-main{display:flex;justify-content:space-between;gap:35px;padding-bottom:40px}.footer-main>div{display:flex;flex-direction:column;font-size:14px;gap:7px;color:#b9c1b7}.footer-main strong{color:white;font-size:11px;letter-spacing:1px;margin-bottom:8px}.footer-main p{margin:0}.footer-main .brand{align-self:start}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff20;padding-top:20px;color:#929d90;font-size:11px}.skip{position:fixed;top:-100px;left:20px;background:white;color:black;padding:10px;z-index:40}.skip:focus{top:5px}dialog{border:0;border-radius:7px;padding:45px;max-width:530px;width:calc(100% - 36px);box-shadow:0 20px 100px #0004;color:var(--ink)}dialog::backdrop{background:#0c180fcc;backdrop-filter:blur(4px)}dialog h2{font-size:34px}dialog>p{font-size:16px;color:var(--muted)}dialog .dialog-note{font-size:12px}.dialog-close{position:absolute;right:14px;top:10px;background:none;border:0;font-size:30px}.paused .route.active{animation-play-state:paused}[hidden]{display:none!important}@keyframes route-flow{to{stroke-dashoffset:-30}}@keyframes hero-enter{from{transform:scale(1.04)}to{transform:scale(1)}}
@media(min-width:1600px){header,.hero-content,.airport-section,.contact-section,footer{padding-left:max(5%,calc((100% - 1400px)/2));padding-right:max(5%,calc((100% - 1400px)/2))}.hero{height:680px}}
@media(max-width:1050px){header{padding:0 4%;height:80px}.brand-name{font-size:21px}.brand-sub{font-size:9px;letter-spacing:4px}nav{gap:20px;font-size:13px}.header-right{gap:12px}.hero{height:570px}.hero-content{padding-top:65px}.booking-fields{grid-template-columns:repeat(4,1fr)}.booking-fields .btn{grid-column:1/-1;min-height:48px;padding:12px}.hero-caption{bottom:130px}.booking-wrap{margin-top:-90px}.car-grid{gap:16px}.car-card-top{padding:18px 18px 0}.car-card h3{font-size:21px}.car-card-bottom{padding:13px 18px;align-items:start;flex-direction:column;gap:2px}.car-photo{height:180px}.airport-section{gap:3%;padding:60px 4%}.airport-copy h2{font-size:39px}.terminal-tabs button{padding:10px;font-size:12px}.airport-copy>.source-note{font-size:11px}.map-heading{padding:15px 12px;font-size:9px;letter-spacing:0}.map-footer{padding:13px 12px;font-size:9px}.section{padding:65px 4%}.location-layout{gap:28px;grid-template-columns:1fr 1.5fr}.office-card{padding:25px}.locations-grid{column-gap:24px}.contact-section h2{font-size:33px}}
@media(max-width:760px){header{height:74px;flex-wrap:wrap;padding:0 5%}nav{display:none}.brand-name{font-size:22px}.brand-sub{font-size:9px}.contact-link{font-size:12px}.header-right{gap:8px}.hero{height:555px}.hero-content{padding:52px 6%}.hero-image{background-position:63% center}.hero-overlay{background:linear-gradient(90deg,#071b27ce,#071b2775),linear-gradient(0deg,#071b2777,transparent)}h1{font-size:clamp(48px,10.9vw,76px);letter-spacing:-2.7px;line-height:1.07;margin-top:24px}.hero p{font-size:16px;max-width:350px;line-height:1.65}.hero-caption{display:none}.hero-link{font-size:14px}.booking-wrap{width:90%;margin-top:-68px}.booking{padding:23px 20px 17px}.booking-top{margin-bottom:16px}.booking-top strong{font-size:12px}.booking-top>span{display:none}.booking-fields{grid-template-columns:1fr 1fr;gap:10px}.booking-fields label{padding:8px 9px}.booking-fields label>span{font-size:11px}.booking-fields select,.booking-fields input{font-size:13px}.booking-note{font-size:11px}.promise-bar{gap:20px;justify-content:space-around;padding:23px 5%;font-size:9px;letter-spacing:.2px;line-height:1.5}.promise-bar span{padding-left:0;max-width:100px;text-align:center}.promise-bar span:before{display:none}.section{padding:54px 5%}.section-heading{display:block;margin-bottom:24px}.section-heading>p{margin-top:19px;font-size:14px;max-width:420px}h2{font-size:35px;letter-spacing:-1.2px}.eyebrow{font-size:10px;letter-spacing:1.2px}.fleet-controls{align-items:start;margin-top:25px;flex-direction:column;gap:12px}.filters{gap:6px}.filters button{padding:8px 13px;font-size:12px}.car-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.car-card-top{padding:16px 13px 0}.car-category{font-size:9px;letter-spacing:.5px}.car-card h3{font-size:18px;letter-spacing:-.5px;margin-top:6px;min-height:46px}.car-tag{font-size:10px}.car-photo{height:139px;padding:10px 6px}.car-card-bottom{padding:12px 13px}.car-card-bottom p{font-size:11px}.car-card-bottom button{font-size:12px}.fleet-bottom{align-items:start;flex-direction:column;gap:12px}.fleet-bottom p{font-size:11px;margin:0}.fleet-bottom .btn{width:100%}.airport-section{grid-template-columns:1fr;padding:54px 5%;gap:30px}.airport-copy{max-width:none}.airport-copy h2{font-size:40px}.airport-copy>p{max-width:none}.airport-stat{justify-content:start;gap:26px}.airport-stat strong{font-size:64px}.airport-stat>span{max-width:none}.terminal-tabs button{font-size:14px;padding:12px 15px}.airport-map{max-width:600px;width:100%;margin:auto}.map-heading{padding:16px;font-size:10px}.map-footer{font-size:10px;padding:14px 16px}.location-layout{grid-template-columns:1fr;gap:25px}.office-card h3{font-size:48px;margin:22px 0}.office-card{padding:28px}.locations-grid button{font-size:14px;padding:16px 0}.locations-grid{gap:0 22px}.contact-section{align-items:start;flex-direction:column;padding:45px 5%;gap:26px}.contact-section h2{font-size:35px}.footer-main{flex-wrap:wrap;gap:30px}.footer-main>.brand{width:100%}.footer-main>div{font-size:12px}.footer-bottom{font-size:10px;flex-direction:column;gap:8px}dialog{padding:36px 25px}}
@media(max-width:370px){.contact-link{display:none}.booking{padding:18px 12px}.car-grid{grid-template-columns:1fr}.car-photo{height:215px}.car-card h3{min-height:0}.car-card-bottom{flex-direction:row}.locations-grid{grid-template-columns:1fr}.terminal-tabs button{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Keep frequently used controls legible at each viewport. */
.booking-fields label>span{font-size:14px}.booking-fields select,.booking-fields input,.car-card-bottom button,.locations-grid button,.filters button{font-size:14px}.car-card-bottom p{font-size:14px}.map-heading button{font-size:12px}.brand-sub{font-size:12px;letter-spacing:4px}.booking-top>span{font-size:14px}.source-note{line-height:1.7}
@media(max-width:760px){.booking-fields label>span{font-size:12px}.brand-sub{font-size:10px}.car-card-bottom p{font-size:12px}.car-card-bottom button{font-size:14px}.filters button{font-size:14px}.booking-fields label{min-height:65px}.header-right .language{font-size:14px}}

/* Official white-background brand and customer contact details. */
.brand-logo{display:block;width:300px;height:70px;object-fit:cover;object-position:center 57%;background:#fff}.footer-main>.brand{background:#fff;border-radius:4px;overflow:hidden;flex-shrink:0}.footer-main>.brand .brand-logo{width:300px;height:92px}.office-hours{margin:24px 0 27px;padding-top:22px;border-top:1px solid #15171540}.office-hours h4{font-size:12px;letter-spacing:.7px;margin:0 0 12px}.office-hours dl{margin:0}.office-hours dl>div{display:flex;justify-content:space-between;gap:12px;margin-top:9px;font-size:14px;flex-wrap:wrap}.office-hours dd{font-weight:700;margin:0}.office-hours>span{display:block;font-size:12px;margin-top:10px}.contact-section{display:block}.contact-intro{display:flex;align-items:center;justify-content:space-between;gap:35px}.contact-phone-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;border-top:1px solid #ffffff30;padding-top:30px;margin-top:35px}.phone-block{display:flex;align-items:flex-start;flex-direction:column}.phone-block h3{font-size:16px;font-weight:500;margin:0 0 10px;color:#d4dcd0}.phone-number{font-size:36px;line-height:1.3;font-weight:700;letter-spacing:-.5px;white-space:nowrap}.phone-number:hover{color:var(--orange)}.phone-block>span{margin-top:6px;font-size:14px;color:#b7c0b3}.international-note{font-size:14px;line-height:1.7;margin:27px 0 0;color:#bcc8b7;max-width:790px}.footer-hours{font-size:14px;line-height:1.8;margin-top:10px!important}.enquiry-phone{display:block;font-size:16px;font-weight:700;margin:21px 0 18px}.enquiry-phone:hover{text-decoration:underline}.footer-main{display:grid;grid-template-columns:auto 1fr 1fr;gap:40px}.footer-main a{overflow-wrap:anywhere}
@media(max-width:1100px){header .brand-logo{width:245px;height:65px}.footer-main{grid-template-columns:1fr 1fr}.footer-main>.brand{grid-column:1/-1;width:max-content}.contact-intro h2{font-size:34px}}
@media(max-width:760px){header .brand-logo{width:210px;height:54px}.header-right{gap:4px}.contact-intro{align-items:flex-start;flex-direction:column;gap:24px}.contact-phone-grid{grid-template-columns:1fr;gap:27px;padding-top:26px;margin-top:29px}.phone-number{font-size:33px}.phone-block h3{font-size:16px}.international-note{font-size:14px}.footer-main{grid-template-columns:1fr;gap:28px}.footer-main>.brand .brand-logo{width:275px;height:84px}.footer-main>.brand{grid-column:auto}.office-hours dl>div{font-size:14px}.contact-link{font-size:12px}.footer-main>div{font-size:14px}}
@media(max-width:420px){header .brand-logo{width:205px}.header-right .contact-link{display:none}}

/* Contact channels and concierge services */
.contact-icon{width:21px;height:21px;flex-shrink:0;vertical-align:middle}.phone-number{display:flex;align-items:center;gap:12px}.phone-number .contact-icon{width:27px;height:27px}.contact-detail{display:flex;align-items:center;gap:10px;margin-top:17px;font-size:16px;max-width:100%}.contact-detail span{overflow-wrap:anywhere;min-width:0}.contact-detail:hover{color:var(--orange)}.contact-detail.whatsapp{margin-top:23px}.contact-phone-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.delivery-section{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;border-top:1px solid var(--line);align-items:center}.delivery-section p{color:var(--muted);line-height:1.8;max-width:550px}.service-actions{display:flex;flex-wrap:wrap;gap:20px;align-items:center;margin-top:25px}.service-actions .btn,.service-email{gap:10px;display:inline-flex;align-items:center}.service-email{font-size:16px;overflow-wrap:anywhere;max-width:100%}.delivery-offer{background:var(--paper);border-left:4px solid var(--orange);padding:30px 35px}.delivery-offer>strong{font-size:76px;line-height:1;font-weight:800;letter-spacing:-4px}.offer-unit{font-size:15px;font-weight:700;margin-left:12px}.delivery-offer h3{font-size:24px;line-height:1.25;margin:20px 0 12px}.delivery-offer .service-note{font-size:14px}.protection-section{background:#eaf0f2;padding:70px 5%;display:grid;grid-template-columns:1fr 1fr;gap:35px 7%}.protection-intro h2{max-width:530px}.protection-intro>p{margin:23px 0;color:#526068}.protection-benefits>div{display:flex;gap:17px;align-items:flex-start;border-bottom:1px solid #cbd5d9;padding:18px 0}.protection-benefits>div:first-child{padding-top:0}.protection-benefits p{margin:0;font-size:19px;font-weight:600;line-height:1.5}.benefit-check{color:#007369;font-size:23px}.protection-terms{grid-column:1/-1;font-size:14px;color:#53616a;line-height:1.7;border-top:1px solid #cbd5d9;padding-top:15px}.protection-terms p{margin:8px 0}.car-photo{mix-blend-mode:normal}.car-category,.car-tag{font-size:12px}
@media(max-width:760px){.delivery-section,.protection-section{grid-template-columns:1fr;gap:30px}.delivery-offer{padding:27px}.protection-section{padding:50px 5%}.protection-benefits p{font-size:17px}.contact-phone-grid{grid-template-columns:1fr;gap:30px}.contact-detail{font-size:15px}.service-email{font-size:14px}.phone-number{font-size:32px}.contact-intro{flex-direction:column;align-items:flex-start}.service-actions{align-items:flex-start;flex-direction:column}}

.car-image-frame{height:218px;overflow:hidden}.car-image-frame .car-photo{height:100%}
@media(max-width:1050px){.car-image-frame{height:180px}}@media(max-width:760px){.car-image-frame{height:139px}}

/* Hero copy and harbour photography occupy independent, flowing columns. */
.hero{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);height:auto;min-height:530px;overflow:visible;background:#082735;color:#fff}
.hero-content{padding:64px clamp(24px,4.5vw,72px);max-width:none;min-width:0;align-self:center;position:relative}
.hero h1{font-size:clamp(2.5rem,4.35vw,4.8rem);line-height:1.08;letter-spacing:-.045em;margin:24px 0}
.hero p{font-size:1.125rem;line-height:1.7;max-width:38ch;margin:0 0 28px;color:#e3edf1}
.hero .eyebrow{font-size:.875rem;letter-spacing:.09em}.hero-link{display:inline-block;font-size:1rem;line-height:1.6;margin-bottom:0;white-space:normal}
.hero-visual{position:relative;min-width:0;min-height:530px;overflow:hidden;display:flex;align-items:flex-end}
.hero-image{inset:0;background-size:cover;background-position:61% 62%;background-repeat:no-repeat;animation:none}
.hero-caption{position:relative;inset:auto;display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:20px 24px;margin:0;width:100%;background:linear-gradient(0deg,#032236d9,#03223600);font-size:.8125rem;letter-spacing:.07em;line-height:1.6;text-shadow:0 1px 5px #000}
.hero-caption span{display:inline;text-align:left;margin:0}.hero-caption .caption-divider{opacity:.6}
.booking-wrap{margin:0 auto;width:100%;max-width:none;padding:26px 5% 30px;background:#fff;position:relative;z-index:1}
.booking{max-width:1370px;margin:auto;border:1px solid #e1e6e8;box-shadow:0 8px 28px #0725360a}
.booking-top{align-items:flex-start;gap:16px;flex-wrap:wrap}.booking-top strong{font-size:.9375rem;line-height:1.6;letter-spacing:.06em}.booking-top>span{font-size:.875rem;line-height:1.6}
html[lang="zh-CN"] .hero h1{letter-spacing:0;line-height:1.25;font-size:clamp(2.5rem,4.1vw,4.5rem)}
.car-card{background:#fff;border-color:#e1e5e8}.car-card-top{background:#fff}.car-image-frame{background:#fff}.car-photo{background:#fff;mix-blend-mode:normal}.car-card-bottom{background:#f7f9fa;border-top-color:#e8ecef}
@media(min-width:1600px){.hero-content{padding-left:max(48px,calc((100vw - 1400px)/2));padding-right:40px}}
@media(max-width:1000px){.hero{grid-template-columns:1fr 1fr;min-height:480px}.hero-visual{min-height:480px}.hero-content{padding:44px 28px}.hero h1{font-size:clamp(2.3rem,4.4vw,3.25rem)}.hero p{font-size:1rem}.hero-caption{padding:18px;font-size:.75rem}}
@media(max-width:760px){.hero{grid-template-columns:1fr;min-height:0}.hero-content{padding:38px 6% 36px}.hero h1{font-size:clamp(2.6rem,10vw,4.2rem);margin:20px 0}.hero p{font-size:1rem;max-width:42ch;line-height:1.7;margin-bottom:22px}.hero .eyebrow{font-size:.8125rem}.hero-visual{min-height:0;height:clamp(280px,70vw,440px)}.hero-image{background-size:cover;background-position:60% 65%}.hero-caption{padding:24px 6% 18px;font-size:.75rem;gap:7px}.booking-wrap{margin:0;padding:20px 5% 24px;width:100%}.booking{padding:22px 18px 18px}.booking-top strong{font-size:.875rem;letter-spacing:.04em}.booking-note{font-size:.8125rem;line-height:1.6}html[lang="zh-CN"] .hero h1{font-size:clamp(2.5rem,9vw,4rem);line-height:1.3;letter-spacing:0}}

/* Give the tall TANK a little more room while retaining the full vehicle. */


/* Parking facility hours and out-of-hours vehicle access. */
.facility-access{margin-top:38px;border:1px solid #dde4e7;border-radius:6px;display:grid;grid-template-columns:1fr 1.55fr;overflow:hidden}.facility-hours{padding:29px 32px;background:#f5f8f9}.facility-hours h3,.after-hours h3{font-size:1.25rem;line-height:1.4;margin:10px 0}.facility-time{font-size:1.45rem;font-weight:700;line-height:1.5;margin:12px 0 6px;letter-spacing:-.025em}.facility-timezone{font-size:.875rem;color:#64717a}.after-hours{padding:29px 32px;display:flex;align-items:center;gap:26px;background:#fff}.access-badge{font-size:2.2rem;font-weight:800;letter-spacing:-.06em;color:#a74106;flex-shrink:0}.after-hours h3{margin:0 0 9px}.after-hours p{font-size:1rem;line-height:1.75;color:#59666d;margin:0;max-width:570px}
.payments-section{text-align:center;padding-top:64px;padding-bottom:66px}.payments-section .eyebrow{justify-content:center}.payments-section h2{max-width:790px;margin:16px auto 34px}.payment-logos{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:15px;list-style:none;padding:0;margin:0 auto;max-width:1320px}.payment-brand{display:flex;align-items:center;justify-content:center;min-width:0;min-height:96px;padding:15px;border:1px solid #e1e5e8;border-radius:8px;background:#fff}.payment-brand img{display:block;width:100%;max-width:116px;height:60px;object-fit:contain}.payment-mastercard img{max-width:116px}.payment-amex img{max-width:112px}.payment-unionpay img{max-width:84px}.payment-apple-pay img{max-width:88px}.payment-google-pay img{max-width:100px}
@media(max-width:1050px){.payment-logos{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;max-width:760px}.facility-access{grid-template-columns:1fr 1.35fr}.facility-hours,.after-hours{padding:25px}.after-hours{gap:20px}}
@media(max-width:760px){.facility-access{grid-template-columns:1fr;margin-top:28px}.facility-hours,.after-hours{padding:25px}.facility-time{font-size:1.4rem}.after-hours{align-items:flex-start;gap:18px;border-top:1px solid #dde4e7}.access-badge{font-size:1.8rem;margin-top:2px}.after-hours h3{font-size:1.15rem}.payments-section{padding-top:48px;padding-bottom:48px}.payment-logos{gap:10px}.payment-brand{padding:10px;min-height:78px}.payment-brand img{height:46px}.payments-section h2{font-size:2rem;margin-bottom:28px}}
@media(max-width:420px){.payment-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.payment-brand{min-height:80px;padding:13px}.payment-brand img{height:50px}.after-hours{gap:14px}}

/* Arrival photos: preserve the complete supplied 3:2 photographs. */
.parking-gallery{margin-top:56px}.parking-gallery-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:32px;margin-bottom:26px}.parking-gallery-heading h3{font-size:clamp(1.6rem,2.4vw,2.2rem);line-height:1.25;letter-spacing:-.03em;margin:12px 0 0}.parking-gallery-heading>p{max-width:390px;font-size:1rem;line-height:1.7;color:#59666d;margin:0}.parking-photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.parking-photo-grid figure{min-width:0;margin:0}.parking-photo-grid img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:6px;background:#eef1f2}.parking-photo-grid figcaption{padding-top:18px}.parking-photo-grid h4{font-size:1.2rem;line-height:1.4;margin:0 0 9px}.parking-photo-grid figcaption p{font-size:1rem;line-height:1.7;color:#59666d;margin:0}.parking-upgrade-note{margin:24px 0 0;font-size:1rem;line-height:1.7;color:#59666d}.parking-photo-source{margin:25px 0 0;font-size:.875rem;color:#59666d}.parking-photo-source a{text-underline-offset:4px}.parking-photo-source a:hover{color:#a74106}
@media(max-width:900px){.parking-gallery-heading{display:block}.parking-gallery-heading>p{max-width:none;margin-top:16px}.parking-photo-grid{gap:18px}}
@media(max-width:760px){.parking-gallery{margin-top:40px}.parking-photo-grid{grid-template-columns:1fr;gap:30px}.parking-photo-grid figcaption{padding-top:14px}.parking-photo-source{line-height:1.6}}

/* All fleet photos share Outlander's visual scale; source artwork stays unchanged. */
.car-image-frame{position:relative;height:auto;aspect-ratio:4/3;overflow:hidden;background:#fff}
.car-image-frame .car-photo{position:absolute;display:block;background:transparent;width:var(--photo-width);max-width:none;height:auto;padding:0;left:var(--photo-left);top:var(--photo-top);object-fit:initial;mix-blend-mode:normal}

/* Three-line Sydney headline with the company slogan underneath. */
.hero .brand-slogan,html[lang="zh-CN"] .hero .brand-slogan{font-size:clamp(2.5rem,4.35vw,4.8rem);line-height:1.12;letter-spacing:-.045em;margin:24px 0 20px}
.brand-slogan>span,.brand-slogan>em{display:block;white-space:nowrap}.hero .hero-slogan-subtitle{font-size:1.25rem;line-height:1.6;font-weight:700;letter-spacing:.04em;color:#ffb78f;margin:0 0 23px}
.booking-appointment-note{font-size:.875rem;line-height:1.65;margin:16px 0 0;padding:12px 15px;border-left:3px solid var(--orange);background:#fff5ed;color:#703a19}
.office-card .office-service-note{font-size:.875rem;line-height:1.65;margin:15px 0 0}.office-confirm-links{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:15px}.office-confirm-links a{font-size:.875rem}.office-hours dd{max-width:220px;text-align:right}.office-hours dl>div{align-items:baseline}
.licence-section{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center;border-top:1px solid #e1e5e8}.licence-section>div>p{font-size:1rem;line-height:1.8;color:#56616a}.licence-documents{background:#f5f8fa;border-radius:6px;padding:30px}.licence-documents h3{font-size:1.25rem;margin:0 0 15px}.licence-documents ol{padding-left:23px;margin:0}.licence-documents li{font-size:1rem;line-height:1.7;padding:7px 0 7px 6px}.licence-documents .licence-note{font-size:.875rem;line-height:1.7;margin:19px 0 17px}.licence-documents a{font-size:.875rem;font-weight:700;text-decoration:underline;text-underline-offset:4px}.protection-terms>a{display:inline-block;font-size:.875rem;line-height:1.6;text-decoration:underline;text-underline-offset:4px}
.business-section{border-top:1px solid #e1e5e8}.business-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.business-card{display:flex;flex-direction:column;min-width:0;border:1px solid #dfe5e8;border-top:4px solid var(--orange);border-radius:6px;padding:29px 27px;background:#f6f8f9}.business-label{font-size:.8125rem;letter-spacing:.08em;font-weight:700;color:#9c4310}.business-card h3{font-size:clamp(1.6rem,2.05vw,2rem);line-height:1.2;letter-spacing:-.025em;margin:18px 0 12px}.business-subtitle{font-size:1rem;font-weight:700;margin-bottom:6px}.business-card>p{font-size:1rem;line-height:1.75;color:#52616a;margin:13px 0}.business-steps{padding-left:21px;margin:12px 0 15px}.business-steps li{font-size:1rem;line-height:1.7;padding:6px 0 6px 4px}.business-card .business-note{font-size:.875rem;line-height:1.7;margin:10px 0 24px}.business-card .carsharing-requirements{background:#fff0e4;color:#783b15;border-left:3px solid var(--orange);padding:12px 14px;font-size:.875rem;font-weight:700;line-height:1.7;margin:4px 0 12px}.business-contacts{display:flex;flex-direction:column;gap:12px;margin-top:auto;padding-top:23px;border-top:1px solid #dce2e6}.business-contacts>a{display:flex;align-items:flex-start;gap:9px;font-size:.875rem;line-height:1.5;font-weight:700;overflow-wrap:anywhere}.business-contacts>a:first-child{font-size:1.3rem}.business-contacts .contact-icon{width:20px;height:20px;flex-shrink:0;margin-top:1px}.business-contacts>a:first-child .contact-icon{margin-top:4px}.business-contacts .business-international{font-size:.875rem;color:#52616a;margin-top:-7px;padding-left:29px}.business-contacts a:hover{color:#a5440b}.business-card-claims{background:#082735;color:#fff;border-color:#082735;border-top-color:var(--orange)}.business-card-claims .business-label{color:#ffb78f}.business-card-claims>p,.business-card-claims .business-international{color:#d3dfe4}.business-card-claims .business-contacts{border-color:#ffffff35}.business-card-claims a:hover{color:#ffb78f}
@media(max-width:1100px){header nav{gap:14px}header .brand-logo{width:240px}header .header-right{gap:12px}.business-card{padding:24px 20px}.business-grid{gap:16px}.licence-section{gap:34px}}
@media(max-width:1000px){.business-grid{grid-template-columns:1fr}.business-card{padding:30px}.business-card h3{font-size:2rem}.business-contacts{margin-top:12px}.business-contacts>a{overflow-wrap:anywhere}.business-card>p,.business-steps{max-width:70ch}}
@media(max-width:900px){header nav{display:none}}
@media(max-width:760px){.hero .brand-slogan,html[lang="zh-CN"] .hero .brand-slogan{font-size:clamp(2.5rem,10vw,4.2rem);line-height:1.15;letter-spacing:-.045em;margin:20px 0 16px}.hero .hero-slogan-subtitle{font-size:1.0625rem;margin-bottom:22px}.licence-section{grid-template-columns:1fr;gap:25px}.licence-documents{padding:25px}.business-card{padding:27px 24px}.business-card h3{font-size:1.8rem}.business-grid{gap:22px}.office-hours dd{max-width:190px}.booking-appointment-note{padding:12px;font-size:.875rem}}
@media(max-width:400px){header .brand-logo{width:190px}.office-hours dl>div{display:block}.office-hours dd{max-width:none;text-align:left;margin-top:3px}.business-card{padding:24px 20px}}

/* Focused content views and shared desktop/mobile navigation. */
[hidden]{display:none!important}
.fuel-guide{min-width:0}.fuel-guide-card{padding:0 24px 16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fuel-guide-label{font-size:.75rem;line-height:1.4;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#52605a}.fuel-badges{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.fuel-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:5px;font-size:.8125rem;font-weight:700;line-height:1.5;color:var(--fuel-ink);background:var(--fuel-bg);box-shadow:inset 0 0 0 1px var(--fuel-border);white-space:nowrap}.fuel-badge svg{flex-shrink:0}.fuel-diesel{--fuel-bg:#e7e9e8;--fuel-ink:#424946;--fuel-border:#d7dcd9}.fuel-91,.fuel-e10{--fuel-bg:#e3f1e7;--fuel-ink:#286443;--fuel-border:#cce1d2}.fuel-95{--fuel-bg:#ff8c00;--fuel-ink:#351b00;--fuel-border:#e87900}.fuel-98{--fuel-bg:#d40000;--fuel-ink:#ffffff;--fuel-border:#b80000}.fuel-electric{--fuel-bg:#e8eef1;--fuel-ink:#416272;--fuel-border:#d3dfe5}.fuel-choice{font-size:.75rem;color:#647068}.fuel-guide-detail{margin:20px 0 24px;padding:19px 20px;background:#f3f6f3;border:1px solid #dce4dd;border-radius:6px}.fuel-guide-detail .fuel-guide-label{display:block;margin-bottom:11px}.fuel-guide-detail .fuel-badge{font-size:.9375rem;padding:6px 12px}.fuel-guide-note{font-size:.9375rem;line-height:1.65;margin:13px 0 0;color:#293d34}.fuel-colour-note{font-size:.8125rem;line-height:1.6;color:#596960;margin:8px 0 0}
@media(max-width:1050px){.fuel-guide-card{padding-right:18px;padding-left:18px}}
@media(max-width:600px){.fuel-guide-detail{padding:16px}.fuel-guide-card{gap:7px}.fuel-badges{gap:6px}}
.car-connectivity{padding:0 24px 16px;min-width:0}.phone-projection{display:flex;align-items:center;gap:10px;padding:11px 12px;background:#eef4f7;border:1px solid #dce6ed;border-radius:5px;color:#26495a}.phone-projection>svg{flex-shrink:0}.phone-projection>span{display:flex;flex-direction:column;min-width:0;gap:2px;font-size:.8125rem;line-height:1.5;overflow-wrap:anywhere}.phone-projection strong{font-size:.75rem;letter-spacing:.025em}.car-feature-summary{font-size:.75rem;line-height:1.65;margin:9px 0 0;color:#52605a}.car-connectivity>.car-feature-summary:first-child{margin-top:0}.vehicle-features{padding:22px 0 25px;margin-bottom:27px;border-top:1px solid #dce4e8;border-bottom:1px solid #dce4e8}.vehicle-features .phone-projection{margin-top:16px;padding:14px 16px}.vehicle-features .phone-projection>span{font-size:1rem}.vehicle-features .phone-projection strong{font-size:.8125rem}.navigation-help{font-size:.875rem;line-height:1.7;color:#52626b;margin:12px 0 15px}.customer-feature-list{margin:16px 0 0}.customer-feature-list>div{display:flex;justify-content:space-between;align-items:baseline;gap:16px;padding:8px 0;font-size:.875rem;line-height:1.6}.customer-feature-list dt{color:#546773;flex:1}.customer-feature-list dd{font-weight:700;text-align:right;margin:0;max-width:60%;overflow-wrap:anywhere}
@media(max-width:1050px){.car-connectivity{padding-inline:18px}}
@media(max-width:400px){.customer-feature-list>div{gap:10px}.customer-feature-list dd{max-width:56%}.phone-projection>span{font-size:.75rem}}
/* Crop the supplied logo's blank margins inside a responsive frame; keep the header in normal flow. */
header{height:auto;min-height:94px;padding-block:10px;flex-wrap:nowrap;gap:16px}
header>.brand{min-width:0;line-height:0}
header .header-right{gap:16px;flex-shrink:0}
header .brand-logo{width:clamp(170px,24vw,300px);max-width:100%;height:auto;aspect-ratio:30/7;object-fit:cover;object-position:center 57%}
@media(max-width:1050px){header{min-height:80px}}
.menu-toggle{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:10px 17px;border:0;border-radius:4px;background:#082735;color:#fff;font-size:1rem;font-weight:700}
.menu-toggle:hover{background:#164457}
body.menu-open{overflow:hidden}
.site-menu{position:fixed;inset:0 0 0 auto;margin:0;width:min(520px,100%);max-width:100%;height:100%;height:100dvh;max-height:100dvh;border:0;border-radius:0;padding:0;color:#182c35;background:#fff;overflow:auto;overscroll-behavior:contain;box-shadow:-20px 0 60px #0002}
.site-menu::backdrop{background:#04151db3}
.menu-heading{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px;border-bottom:1px solid #dfe5e8;background:#fff}
.menu-heading strong{font-size:1.125rem}
#menu-close{display:grid;place-items:center;width:46px;height:46px;border:1px solid #dfe5e8;border-radius:50%;background:#fff;font-size:2rem;line-height:1}
.site-menu .menu-navigation{display:flex;flex-direction:column;gap:24px;padding:24px 28px 36px;font-size:1rem}
.menu-group>p{margin:0 0 8px;font-size:.875rem;font-weight:700;letter-spacing:.09em;color:#6a7378}
.menu-navigation a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 12px;min-height:50px;border-bottom:1px solid #e8ecee;line-height:1.4}
.menu-navigation a>span{min-width:0}
.menu-navigation a:hover,.menu-navigation a[aria-current="page"]{background:#fff0e6;color:#9a3b00}
.menu-navigation .menu-contact{background:#082735;color:white;border-radius:4px}
.page-heading{padding:26px 5% 25px;background:#f2f5f6;border-bottom:1px solid #e0e6e9;color:#5c6b73}
.page-heading>a{font-size:.875rem;text-decoration:underline;text-underline-offset:3px}
.page-heading>h1{font-size:clamp(1.7rem,3vw,2.6rem);line-height:1.25;letter-spacing:-.035em;color:#082735;margin:12px 0 0;overflow-wrap:anywhere}
#page-content:focus,#page-title:focus{outline:none}
.business-detail{max-width:1100px;padding-top:42px;padding-bottom:52px}
.business-detail .business-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,.6fr);column-gap:48px;padding:40px}
.business-detail .business-card>*{grid-column:1}
.business-detail .business-contacts{grid-column:2;grid-row:1/8;align-self:start;margin:0;border-top:0;border-left:1px solid #dce2e6;padding:8px 0 8px 28px}
.business-detail .business-card-claims .business-contacts{border-color:#ffffff35}
.business-detail .business-card h3{font-size:clamp(1.8rem,3vw,2.5rem)}
@media(max-width:760px){header{height:auto;min-height:76px;padding:10px 5%;gap:8px}header .brand-logo{width:180px}header .header-right{gap:4px}.header-right .contact-link{display:none}.language{min-width:44px;min-height:44px;padding:8px;font-size:.875rem}.menu-toggle{padding:10px;gap:7px;font-size:.875rem}.home-destination-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.home-destination{padding:16px;min-height:82px;font-size:.9375rem;gap:12px}.business-detail{padding:28px 5% 38px}.business-detail .business-card{display:flex;padding:28px 22px}.business-detail .business-contacts{margin-top:12px;border-left:0;border-top:1px solid #dce2e6;padding:24px 0 0}.page-heading{padding:20px 5%}.home-destinations{padding-top:30px;padding-bottom:36px}.menu-heading{padding:16px 20px}.site-menu .menu-navigation{padding:22px 20px 30px}}
@media(max-width:400px){header .brand-logo{width:155px}.menu-toggle{gap:5px}.home-destination-grid{grid-template-columns:1fr}.home-destination{min-height:62px;padding:15px 18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Preserve the original desktop section links alongside the three-service menu. */
@media(max-width:1100px){header>nav{display:none}}

.licence-payment{margin-top:24px;padding-top:22px;border-top:1px solid #dce3e7}.licence-payment h3{font-size:1.125rem;margin:0 0 10px}.licence-payment p{font-size:1rem;line-height:1.75;margin:0;color:#384d59}

.campus-service{margin:40px 0;padding:32px;background:#f4f7f8;border:1px solid #dce4e8;border-left:4px solid var(--orange);border-radius:5px}.campus-service h3{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.25;margin:14px 0}.campus-service>p{max-width:85ch;font-size:1rem;line-height:1.8;color:#425864}.campus-service .campus-coverage{font-weight:700}.campus-fees{display:flex;flex-wrap:wrap;gap:12px 32px;margin:18px 0;padding:16px 20px;background:#fff}.campus-fees p{font-size:1rem;font-weight:700;margin:0}.campus-service .service-note{font-size:.875rem;line-height:1.7}.campus-service .btn{margin-top:12px}.campus-booking-fee{white-space:pre-line;padding:12px 14px;background:#fff0e4;border-left:3px solid var(--orange);font-size:.875rem;line-height:1.7;color:#753b18}
@media(max-width:760px){.campus-service{padding:24px 20px;margin:30px 0}.campus-fees{flex-direction:column;gap:10px;padding:15px}.campus-service .eyebrow{font-size:.875rem}}

/* Model detail views: retain the large fleet images and reveal specifications on demand. */
.car-detail-link{display:block;cursor:pointer;color:#fff}
.car-detail-hint{position:absolute;right:12px;bottom:10px;z-index:1;display:flex;align-items:center;gap:10px;border-radius:3px;background:#082735e8;padding:7px 11px;font-size:.875rem;font-weight:700}
.car-detail-link:hover .car-detail-hint{background:#ab440a}
.vehicle-detail{padding-top:30px;padding-bottom:60px}
.detail-back{display:inline-block;margin-bottom:26px;font-size:1rem;font-weight:700;text-decoration:underline;text-underline-offset:5px}
.vehicle-detail-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,1fr);gap:42px;align-items:start}
.vehicle-gallery{min-width:0;position:sticky;top:110px}
.gallery-stage{position:relative;background:#fff;border:0;border-radius:7px;overflow:hidden}
#gallery-open{display:block;border:0;background:transparent;width:100%;padding:0;cursor:zoom-in}
.detail-photo-surface{position:relative;display:block;width:100%;aspect-ratio:4/3;overflow:hidden;background:#fff}
.detail-photo-window{position:absolute;overflow:hidden}
.detail-photo-surface img{position:absolute;display:block;max-width:none;object-fit:fill}
.detail-plate-mask{position:absolute;display:block;overflow:hidden;border:0;border-radius:0;margin:0;padding:0;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#90979b26;pointer-events:none}
.gallery-controls{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;background:#082735;color:#fff}
.gallery-controls button,.lightbox-navigation button{width:44px;height:44px;border:1px solid #ffffff60;border-radius:4px;background:transparent;color:white;font-size:1.3rem}
.gallery-controls button:hover,.lightbox-navigation button:hover{background:#ffffff25}
.gallery-controls>span{font-size:.9375rem;font-variant-numeric:tabular-nums}
.gallery-zoom{position:absolute;right:14px;top:14px;padding:8px 12px;min-height:40px;border:1px solid #ffffff70;border-radius:4px;background:#082735e8;color:white;font-size:.875rem}
.gallery-caption{font-size:1rem;line-height:1.6;margin:14px 0;color:#253f4c}
.gallery-thumbs{display:flex;gap:10px;overflow-x:auto;padding:4px 3px 10px;scroll-snap-type:x proximity}
.gallery-thumbs>button{flex:0 0 130px;max-width:40%;min-width:105px;padding:0;border:2px solid #dfe5e8;border-radius:4px;background:white;overflow:hidden;scroll-snap-align:start;text-align:left}
.gallery-thumbs>button[aria-pressed="true"]{border-color:#b64d0d;box-shadow:0 0 0 1px #b64d0d}
.gallery-thumbs>button>span{display:block;font-size:.875rem;line-height:1.4;padding:7px 8px}
.gallery-disclaimer,.specification-note{font-size:.875rem;line-height:1.75;color:#5b6971}
.detail-category{font-size:.875rem;line-height:1.5;text-transform:uppercase;letter-spacing:.07em;color:#9d440b;font-weight:700}
.detail-overview{font-size:1rem;line-height:1.85;margin:14px 0 26px;color:#344e5b}
.vehicle-specification h2{font-size:1.7rem;line-height:1.3;letter-spacing:-.025em;margin:0 0 10px}
.reference-variant{font-size:.875rem;margin:0 0 20px;color:#647078;line-height:1.7}
.vehicle-specs{margin:0;border-top:1px solid #d9e2e7}
.vehicle-specs>div{display:grid;grid-template-columns:1fr 1.15fr;gap:20px;padding:14px 0;border-bottom:1px solid #dfe5e8;font-size:1rem;line-height:1.6}
.vehicle-specs dt{color:#5c6d77}.vehicle-specs dd{margin:0;color:#092c3c;font-weight:700;overflow-wrap:anywhere}
.detail-planned{font-size:.875rem;background:#fff0e4;border-left:3px solid var(--orange);padding:12px 15px;line-height:1.7}
.detail-enquiry{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin:25px 0}
.detail-enquiry>a{font-size:.875rem;text-decoration:underline;text-underline-offset:4px}
.detail-sources{border-top:1px solid #dfe5e8;padding-top:20px;margin-top:24px;font-size:.875rem;line-height:1.7}
.detail-sources summary{cursor:pointer;font-weight:700}.detail-sources>a{display:block;margin:10px 0;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
body.photo-open{overflow:hidden}
.vehicle-lightbox{width:min(1200px,96vw);max-width:96vw;max-height:96dvh;padding:16px 20px;border:0;border-radius:6px;background:#08212e;color:white;overflow:auto}
.vehicle-lightbox::backdrop{background:#020c15ee}
.lightbox-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:14px;font-size:1rem;line-height:1.5}
#lightbox-close{border:0;background:none;color:white;width:44px;height:44px;flex-shrink:0;font-size:2rem}
#lightbox-photo{max-width:min(100%,100vh);margin:auto}
#lightbox-photo .detail-photo-surface{background:#08212e}
.lightbox-navigation{display:flex;justify-content:center;align-items:center;gap:30px;margin-top:15px}
@media(max-width:1000px){.vehicle-detail-layout{grid-template-columns:1fr;gap:32px}.vehicle-gallery{position:static}.vehicle-specification{max-width:800px}.gallery-thumbs>button{flex-basis:140px}}
@media(max-width:760px){.vehicle-detail{padding-top:24px}.vehicle-specs>div{grid-template-columns:1fr 1.1fr;gap:15px;font-size:.9375rem}.detail-back{font-size:.9375rem}.gallery-thumbs>button{flex-basis:118px}.car-detail-hint{right:6px;bottom:6px;padding:5px 8px;font-size:.875rem}.vehicle-lightbox{padding:12px;max-width:98vw;width:98vw}.lightbox-toolbar{font-size:.875rem}.gallery-zoom{right:8px;top:8px}}
.rideshare-fleet-link{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:18px 22px;margin-bottom:28px;background:#e7f1ed;border:1px solid #bcd5c9;border-radius:5px;color:#153f30;font-size:1rem;font-weight:650;text-decoration:none}
.rideshare-badge{display:block;width:fit-content;max-width:100%;margin-top:10px;padding:5px 8px;border:1px solid #bccec6;border-radius:4px;background:#edf4f0;color:#244638;font-size:.875rem;line-height:1.4;text-decoration:none}
.rideshare-badge.personal{color:#5a666d;background:#f1f3f4;border-color:#d9dfe2}
.rideshare-badge:hover{border-color:#254c3a}
.vehicle-rideshare{padding:22px;margin-top:24px;border:1px solid #bcd5c9;border-radius:5px;background:#f0f5f2}
.vehicle-rideshare h3{margin:0 0 12px;font-size:1.2rem}.vehicle-rideshare strong{font-size:1rem;line-height:1.5}.vehicle-rideshare p{font-size:1rem;line-height:1.7;margin:12px 0 18px}.vehicle-rideshare>a{display:block;font-size:.9375rem;margin-top:16px;text-underline-offset:4px}
.rideshare-page{padding-top:28px}.rideshare-hero{padding:clamp(28px,5vw,65px);background:#082b36;border-radius:7px;color:white}
.rideshare-hero h2{font-size:clamp(2.1rem,4.8vw,4.5rem);line-height:1.08;letter-spacing:-.04em;max-width:850px;margin:24px 0}.rideshare-intro{font-size:1.125rem;line-height:1.75;max-width:770px;margin-bottom:28px}.rideshare-approval{font-size:.9375rem;line-height:1.6;max-width:740px;color:#cfddd9;margin:22px 0 0}
.rideshare-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:28px 0}.rideshare-options article,.rideshare-options li{padding:26px;background:#f0f4f2;border:1px solid #dce5e0;border-radius:5px}.rideshare-options h3{font-size:1.15rem;line-height:1.45;margin:0 0 12px}.rideshare-options p{font-size:1rem;line-height:1.75;margin:0;color:#4b5c62}
.rideshare-heading{font-size:clamp(1.8rem,3.3vw,2.7rem);line-height:1.2;letter-spacing:-.025em;margin:62px 0 22px}.rideshare-note{font-size:1rem;line-height:1.75;color:#53666a;margin:18px 0 25px;max-width:950px}.rideshare-more-wrap{text-align:center;margin:28px 0}
.uber-category-guide{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.uber-category-guide article{padding:26px;border:1px solid #d8e0e3;border-radius:5px}.uber-category-guide h3{font-size:1.3rem;margin:0 0 12px}.uber-category-guide p{font-size:1rem;line-height:1.75;margin:0;color:#485d66}
.rideshare-sources{display:flex;flex-wrap:wrap;gap:14px 25px;font-size:.9375rem;line-height:1.6}.rideshare-sources a{text-underline-offset:4px}.rideshare-steps{list-style:none;padding:0;counter-reset:ride-step}.rideshare-steps li{counter-increment:ride-step}.rideshare-steps li:before{content:counter(ride-step,decimal-leading-zero);display:block;color:#b54b0b;font-size:1.8rem;font-weight:800;margin-bottom:20px}
.rideshare-faq{margin:55px 0}.rideshare-faq h2{font-size:2rem}.rideshare-faq details{padding:20px 0;border-bottom:1px solid #dbe2e5}.rideshare-faq summary{font-size:1.1rem;font-weight:650;cursor:pointer;line-height:1.5}.rideshare-faq p{font-size:1rem;line-height:1.75;max-width:900px;margin:14px 0 0;color:#4b5d66}.rideshare-contact{padding:35px;border-radius:5px;background:#eef3f4}.rideshare-contact h2{font-size:2rem;margin:0 0 25px}.rideshare-contact .business-contacts{max-width:650px}
[hidden]{display:none!important}
@media(max-width:900px){.rideshare-options{grid-template-columns:1fr}.rideshare-options article,.rideshare-options li{padding:22px}.rideshare-steps{gap:14px}.rideshare-contact{padding:24px}.rideshare-fleet-link{padding:16px}.rideshare-hero h2{max-width:680px}}
@media(max-width:600px){.uber-category-guide{grid-template-columns:1fr}.rideshare-hero{padding:28px 24px}.rideshare-heading{margin-top:44px}.rideshare-badge{font-size:.8125rem;padding:5px 6px}.vehicle-rideshare{padding:18px}.rideshare-fleet-link{font-size:.9375rem}.rideshare-contact h2{font-size:1.65rem}}

.after-hours .after-hours-note{margin-top:10px;font-size:.875rem;line-height:1.6}

.office-card h3{display:flow-root}
.car-card[hidden]{display:none!important}
.fleet-photo-window{position:absolute;left:0;right:0;top:calc((100% - var(--fleet-photo-height,100%))/2);height:var(--fleet-photo-height,100%);overflow:hidden;transform:translateY(var(--fleet-photo-shift,0%))}
.fleet-photo-layer{position:absolute;inset:0;display:block;overflow:hidden}
.fleet-photo-layer.is-mirrored{transform:scaleX(-1)}
.car-detail-hint{transform:scale(.75);transform-origin:bottom right}
[data-fleet-id="bmw-420i-gran-coupe"] .fleet-photo-layer{overflow:visible;transform:rotate(-5deg) scaleX(-1)}
[data-fleet-id="toyota-yaris"] .car-detail-hint{bottom:6px}
/* A shared 4:3 canvas keeps photos proportional and leaves room for the detail label. */
.car-card{container-type:inline-size;display:flex;flex-direction:column}
.car-image-frame{flex-shrink:0}
.gallery-thumbs>button{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start}
.gallery-thumbs .detail-photo-surface{flex-shrink:0}
.booking-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto}
.booking-leg{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(90px,1fr);gap:10px;min-width:0}
.booking-location{grid-column:1/-1}
.booking-fields .btn{grid-column:auto}
.booking-clock-note{font-size:.8125rem;color:var(--muted);margin:12px 0 6px}
.booking-duration{font-size:1rem;font-weight:700;margin:10px 0;color:#163945}
.booking-hours-warning{background:#fff5ed;border-left:3px solid var(--orange);padding:12px 14px;margin:12px 0;font-size:.875rem;color:#703a19;white-space:pre-line}
.booking-hours-warning p{margin:0}
.booking-help{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:8px;white-space:normal;overflow-wrap:anywhere}
.booking-help a{text-decoration:underline}
.booking-terms{border-top:1px solid var(--line);margin-top:16px;padding-top:14px;font-size:.875rem}
.booking-terms summary{cursor:pointer;font-weight:700;color:#163945}
.booking-terms-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 24px;padding-top:12px}
.booking-terms h3{font-size:.9375rem;margin:0 0 5px}
.booking-terms p{margin:0;line-height:1.7;color:#555f60}
@media(max-width:1100px){.booking-fields{grid-template-columns:1fr 1fr}.booking-fields .btn{grid-column:1/-1}}
@media(max-width:700px){.booking-fields,.booking-terms-grid{grid-template-columns:1fr}.booking-leg{gap:8px}.booking-fields .btn{grid-column:1}}
.car-card-bottom{margin-top:auto}
.car-card-top{padding-bottom:6px}
.car-connectivity{padding-top:6px;padding-bottom:10px}
.car-feature-summary{margin-top:5px}
.car-connectivity .phone-projection{padding-block:9px}
.fuel-guide-card{padding-bottom:10px}
.car-card-bottom{padding-block:12px}
.car-card .rideshare-badge{margin-top:4px;font-size:.65625rem;padding:3.75px 6px;border-width:.75px;border-radius:3px}
@media(max-width:600px){.car-card .rideshare-badge{font-size:.609375rem;padding-inline:4.5px}}
.car-grid{margin-inline:-12px;column-gap:clamp(12px,1.2vw,18px)}
@media(max-width:760px){.car-grid{margin-inline:-8px}}
@container(max-width:360px){
 .car-image-frame{--fleet-photo-shift:-9%}
}

/* Keep mounted photos and thumbnails stable while switching on touch devices. */
.gallery-carousel{position:relative;width:100%;overflow:hidden;isolation:isolate;touch-action:pan-y pinch-zoom}
.gallery-slide{position:absolute;left:0;top:0;width:100%;transition:transform .28s ease;backface-visibility:hidden}
.gallery-slide[aria-hidden="true"]{pointer-events:none}
#gallery-open,#lightbox-photo{touch-action:pan-y pinch-zoom}
@media(prefers-reduced-motion:reduce){.gallery-slide{transition:none}}

.rentalcover-types{grid-column:1/-1;min-width:0;padding-top:12px}
.rentalcover-types>h3{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.25;letter-spacing:-.035em;max-width:800px;margin:0 0 24px}
.rentalcover-vehicles{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}
.rentalcover-vehicle{margin:0;min-width:0;border:1px solid #d9e1e5;border-radius:8px;overflow:hidden;background:#fff}
.rentalcover-photo{position:relative;aspect-ratio:8/5;overflow:hidden;background:#fff}
.rentalcover-photo>img{position:absolute;display:block;max-width:none;object-fit:fill}
.rentalcover-vehicle figcaption{padding:17px 14px}
.rentalcover-vehicle h4{font-size:1rem;line-height:1.4;overflow-wrap:anywhere;margin:0;color:#20323c}
.rentalcover-eligibility{font-size:.875rem;line-height:1.7;margin:18px 0 0;color:#53616a;max-width:1000px}
.rentalcover-extras{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;min-width:0}
.rentalcover-extra{display:flex;align-items:flex-start;gap:16px;background:#fff;border:1px solid #d9e1e5;border-radius:8px;padding:25px}
.rentalcover-extra .benefit-check{flex-shrink:0;line-height:1.2}
.rentalcover-extra h3{font-size:1.2rem;line-height:1.3;margin:0 0 10px}
.rentalcover-extra p{font-size:1rem;line-height:1.65;color:#526068;margin:0}
@media(max-width:1050px){.rentalcover-vehicles{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.rentalcover-vehicles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.rentalcover-extras{grid-template-columns:1fr;gap:14px}.rentalcover-extra{padding:22px}.rentalcover-vehicle figcaption{padding:14px 12px}.rentalcover-types{padding-top:0}}


/* Make clickable text recognisable without moving text or decorating icons. */
:is(a[href]:not(.brand):not(.car-detail-link),button.btn,.filters button,.terminal-tabs button,#language,#show-all,#rideshare-more,#pause-animation,.gallery-zoom,.car-card-bottom button,summary):is(:focus-visible,:active),
.menu-toggle:is(:focus-visible,:active)>span,
.locations-grid button:is(:focus-visible,:active)>strong,
.gallery-thumbs>button:is(:focus-visible,:active)>span,
.car-detail-link:is(:focus-visible,:active) .car-detail-hint{
 text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.18em;text-decoration-skip-ink:auto;
}
@media(any-hover:hover){
 :is(a[href]:not(.brand):not(.car-detail-link),button.btn,.filters button,.terminal-tabs button,#language,#show-all,#rideshare-more,#pause-animation,.gallery-zoom,.car-card-bottom button,summary):hover,
 .menu-toggle:hover>span,
 .locations-grid button:hover>strong,
 .gallery-thumbs>button:hover>span,
 .car-detail-link:hover .car-detail-hint{
  text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:.18em;text-decoration-skip-ink:auto;
 }
 /* Existing border-style links use one underline when hovered. */
 :is(.hero-link,.white-link,.contact-link):hover{border-bottom-color:transparent}
}
:is(.hero-link,.white-link,.contact-link):is(:focus-visible,:active){border-bottom-color:transparent}

/* About and Contact stay adjacent at every size, including compact touch headers. */
.header-info-links{display:flex;align-items:center;gap:16px}
.header-info-links .contact-link{display:inline-block;white-space:nowrap}
.about-section{max-width:1400px;padding-top:48px;padding-bottom:64px}
.about-intro{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:48px;align-items:start}
.about-intro h2{max-width:650px;margin:16px 0 24px}
.about-section p{font-size:1rem;line-height:1.85;color:#425864}
.about-vip{padding:34px;background:#082735;color:#fff;border-radius:6px;border-top:5px solid var(--orange)}
.about-vip>span{font-size:.8125rem;letter-spacing:.1em;color:#ffc39f;font-weight:700}
.about-vip h3{font-size:clamp(1.75rem,2.6vw,2.4rem);line-height:1.25;margin:18px 0}
.about-vip p{color:#e0eaf0;margin-bottom:0}
.about-promises{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:42px 0}
.about-promises article{background:#f5f7f8;border:1px solid #dce3e7;border-radius:5px;padding:26px 24px;border-top:3px solid var(--orange)}
.about-promises h3{font-size:1.125rem;line-height:1.5;color:#163945;margin:0 0 12px}
.about-promises p{font-size:.9375rem;margin:0}
.about-choices{padding:32px 0 38px;border-top:1px solid #dce3e7}
.about-choices h2{font-size:clamp(1.7rem,2.8vw,2.4rem)}
.about-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:24px 0}
.about-choice-grid h3{font-size:1.125rem;color:#163945;margin:0}
.about-choice-grid p{margin:10px 0 0}
.about-contact{padding:34px;background:#fff2e8;border-radius:6px}
.about-contact h2{font-size:clamp(1.7rem,2.8vw,2.4rem);margin-top:0}
.about-contact>p{max-width:820px}
.about-contact .service-actions{flex-wrap:wrap;gap:12px 20px}
.about-email{font-weight:700;overflow-wrap:anywhere}
.about-contact .about-international{font-size:.875rem}
.about-contact .about-slogan{font-size:1.35rem;font-weight:700;line-height:1.5;color:#163945;margin-bottom:0}
@media(min-width:761px) and (max-width:1250px){header .header-right{gap:12px}.header-info-links{gap:12px}.header-info-links .contact-link{font-size:13px}}
@media(max-width:1000px){.about-intro{grid-template-columns:1fr;gap:22px}.about-promises{gap:12px}.about-promises article{padding:22px 18px}}
@media(max-width:760px){
 html{scroll-padding-top:125px}
 header{display:grid;grid-template-columns:minmax(0,1fr) auto auto;row-gap:8px}
 header .header-right{display:contents}
 header .brand{grid-column:1;grid-row:1;min-width:0}
 header #language{grid-column:2;grid-row:1}
 header #menu-toggle{grid-column:3;grid-row:1}
 .header-info-links{grid-column:1/-1;grid-row:2;justify-content:flex-end;gap:22px}
 .header-info-links .contact-link{display:inline-block;font-size:.875rem;min-height:28px;line-height:24px;padding-bottom:3px}
 .about-section{padding-top:30px;padding-bottom:40px}
 .about-promises,.about-choice-grid{grid-template-columns:1fr;gap:18px}
 .about-promises{margin:28px 0}
 .about-vip,.about-contact{padding:25px 22px}
 .about-contact .btn{white-space:normal;text-align:center;max-width:100%}
}

.about-policy-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin:-18px 0 30px;font-size:.9375rem;font-weight:700;color:#163945}
.about-email{display:inline-flex;align-items:center;gap:8px;min-width:0;word-break:break-word}

/* Driver eligibility and AUD fee notes follow the existing responsive text flow. */
.booking-terms .fee-currency-note{margin-top:10px}
.booking-terms .licence-surcharge-note,.driver-eligibility p+p{margin-top:10px}

/* Show the refundable pick-up deposit beside each model's rental information. */
.pickup-deposit{font-size:.875rem;color:#163945}
.pickup-deposit p{margin:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 8px}
.pickup-deposit strong{white-space:nowrap}
.car-card>.pickup-deposit{padding:4px 18px 14px}
.pickup-deposit-detail{border-top:1px solid var(--line);padding-top:16px;margin:20px 0}
.pickup-deposit .deposit-refund{display:block;margin-top:6px;color:#555f60;font-size:.875rem;line-height:1.7}

/* Keep daily rental prices prominent and separate from refundable deposits. */
.rental-rate{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:4px 12px;color:#163945}
.car-card>.rental-rate{padding:6px 18px 8px}
.rental-rate-label{font-size:.875rem}
.rental-rate-value{display:inline-flex;align-items:baseline;gap:4px;font-size:.875rem}
.rental-rate-value strong{font-size:1.5rem;line-height:1.25;font-weight:700}
.rate-pending .rental-rate-value strong{font-size:.875rem;line-height:1.5}
.rental-rate-detail{margin:22px 0 10px;padding-top:16px;border-top:1px solid var(--line)}
.rental-rate-detail .rental-rate-value strong{font-size:1.75rem}
.rental-rate-detail.rate-pending .rental-rate-value strong{font-size:1rem}
.rental-rate-detail+.pickup-deposit-detail{margin-top:10px;padding-top:0;border-top:0}
#enquiry-rate+.pickup-deposit-detail{margin-top:10px;padding-top:0;border-top:0}

.rental-rate-condition{flex-basis:100%;margin:3px 0 0;color:#555f60;font-size:.875rem;line-height:1.5}

/* Four service highlights, with two columns on compact screens. */
.promise-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;font-size:.875rem}
.promise-bar span{max-width:none}
@media(max-width:900px){.promise-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 20px}}

.rentalcover-claims-assistance{grid-column:1/-1;border-left:4px solid var(--orange)}
.rentalcover-claims-assistance p+p{margin-top:12px}
.rentalcover-claims-assistance .claims-service-fee{color:#163945;font-size:1.125rem;font-weight:700}

/* Roadside provider contacts and bilingual coverage summary. */
.roadside-section{max-width:1400px;margin:0 auto;padding:36px 5% 64px}
.roadside-intro{max-width:850px;margin-bottom:30px}
.roadside-intro h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2;margin:14px 0 20px}
.roadside-section p,.roadside-section li{font-size:1rem;line-height:1.75;color:#425864}
.roadside-providers{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-bottom:42px}
.roadside-provider{min-width:0;padding:26px;background:#f5f7f8;border:1px solid #dce3e7;border-top:4px solid var(--orange);border-radius:6px}
.roadside-region{font-size:.875rem;font-weight:700;letter-spacing:.04em;color:#425864}
.roadside-provider h3{font-size:1.3rem;line-height:1.4;margin:14px 0;color:#163945}
.roadside-models{padding-left:20px;margin:14px 0}
.roadside-provider .roadside-call-label{font-size:.875rem;font-weight:700;margin:20px 0 4px;color:#163945}
.roadside-phone{display:block;width:fit-content;max-width:100%;font-size:clamp(1.4rem,2.2vw,1.8rem);font-weight:700;line-height:1.5;white-space:nowrap;color:#163945;padding:5px 0;text-decoration:underline;text-underline-offset:5px}
.roadside-source{display:inline-block;font-size:.875rem;line-height:1.7;font-weight:700;text-decoration:underline;text-underline-offset:4px;color:#163945}
.roadside-provider>.roadside-source{margin-top:20px}
.roadside-coverage{padding:32px;background:#eaf0f2;border-radius:6px}
.roadside-coverage>h2{font-size:clamp(1.5rem,2.5vw,2rem);line-height:1.3;margin:0 0 16px;color:#163945}
.roadside-coverage-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin:24px 0}
.roadside-coverage-grid article{padding:24px;background:white;border-radius:4px}
.roadside-coverage-grid h3{font-size:1.25rem;color:#163945;margin:0 0 16px}
.roadside-coverage-grid ul{padding-left:20px;margin:0}
.roadside-coverage-grid li+li{margin-top:12px}
.roadside-section .roadside-note{font-size:.875rem;line-height:1.8;margin-top:24px}
.roadside-source-links{display:flex;flex-wrap:wrap;gap:14px 26px}
@media(max-width:1000px){.roadside-providers{grid-template-columns:1fr}.roadside-phone{font-size:1.8rem}.roadside-models{columns:2}}
@media(max-width:760px){.roadside-section{padding-top:24px;padding-bottom:40px}.roadside-coverage{padding:24px 18px}.roadside-coverage-grid{grid-template-columns:1fr;gap:18px}.roadside-provider,.roadside-coverage-grid article{padding:22px}.roadside-models{columns:auto}}

.roadside-call-help{padding:24px 28px;margin:0 0 30px;background:#fff2e8;border-left:4px solid var(--orange);border-radius:4px}
.roadside-call-help h3{font-size:1.25rem;line-height:1.4;margin:0 0 12px;color:#163945}
.roadside-call-help p{margin:0}
.roadside-call-help .roadside-note{margin-top:14px}
@media(max-width:760px){.roadside-call-help{padding:22px 18px}}

/* Age selection sits directly above the equal-sized fleet action. */
.booking-actions{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:190px;align-self:stretch}
.booking-actions .driver-age-field,.booking-actions .btn{width:100%;height:65px;min-height:65px;box-sizing:border-box;font-family:inherit;font-size:14px;font-weight:700;border-radius:4px}
.booking-actions .driver-age-field{justify-content:center;padding:7px 12px;gap:2px;background:#fff}
.booking-actions .driver-age-field>span,.booking-actions #driver-age{font-size:14px;font-weight:700;line-height:1.5}
.booking-actions #driver-age{cursor:pointer;padding:2px 0;min-height:25px}
.booking-actions>.btn{grid-column:1;padding:12px 23px}
.young-driver-warning{background:#fff5ed;border-left:3px solid var(--orange);padding:12px 14px;margin:12px 0;font-size:.875rem;line-height:1.7;color:#703a19}
@media(max-width:1100px){.booking-actions{grid-column:1/-1;min-width:0}}

.rideshare-area-policy{padding:24px 28px;margin:28px 0;background:#fff2e8;border-left:4px solid var(--orange);border-radius:4px}
.rideshare-area-policy h3{font-size:1.25rem;line-height:1.4;margin:0 0 12px;color:#163945}
.rideshare-area-policy p{font-size:1rem;line-height:1.75;margin:0;color:#425864}
.rideshare-area-policy p+p{margin-top:12px}
@media(max-width:760px){.rideshare-area-policy{padding:22px 18px}}

/* Subscription fleet: fixed-width filters and a fluid catalogue. */
.subscription-page{max-width:1550px;padding-top:24px;padding-bottom:64px}
.subscription-intro{margin-bottom:30px}
.subscription-intro h2{font-size:clamp(1.85rem,3.1vw,2.7rem);margin:0 0 12px;color:#163945}
.subscription-intro p{font-size:1rem;line-height:1.7;color:#425864;max-width:820px;margin:0}
.subscription-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:32px;align-items:start}
.subscription-sidebar{position:sticky;top:115px;padding:22px 20px;background:#f5f7f8;border:1px solid #dce3e7;border-radius:6px;max-height:calc(100vh - 140px);overflow-y:auto}
.subscription-filter-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}
.subscription-filter-heading h3{font-size:1.25rem;margin:0;color:#163945}
.subscription-filter-heading button{border:0;background:transparent;padding:7px 0;font-size:.875rem;font-weight:700;text-decoration:underline;text-underline-offset:3px;color:#163945}
.subscription-filter-heading button:disabled{opacity:.45}
#subscription-filters details{border-top:1px solid #dce3e7}
#subscription-filters summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:17px 0;font-size:1rem;font-weight:700;cursor:pointer;list-style:none;color:#163945}
#subscription-filters summary::-webkit-details-marker{display:none}
#subscription-filters details[open] summary>span{transform:rotate(180deg)}
#subscription-filters fieldset{border:0;padding:0 0 16px;margin:0;min-width:0}
#subscription-filters label{display:flex;gap:9px;align-items:center;min-height:38px;cursor:pointer;font-size:.875rem;line-height:1.5;color:#344d59}
#subscription-filters input[type=checkbox]{appearance:auto;accent-color:var(--orange);width:18px;height:18px;min-width:18px;margin:0;padding:0;flex:none}
.subscription-option-count{margin-left:auto;color:#626d72;font-size:.875rem}
.subscription-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.subscription-results{min-width:0}
.subscription-results-heading{padding:0 0 16px;border-bottom:1px solid #dce3e7;margin-bottom:20px}
#subscription-count{font-size:1rem;font-weight:700;color:#163945;margin:0}
#subscription-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.subscription-car{border:1px solid #dce3e7;background:#fff;border-radius:6px;overflow:hidden}
.subscription-car .car-card-top{padding:20px 20px 0;min-height:100px}
.subscription-car h3{font-size:1.35rem;line-height:1.3;margin:10px 0 0;min-height:0;letter-spacing:-.3px}
.subscription-car .car-category{font-size:.875rem;line-height:1.5}
.subscription-car .car-image-frame{margin-top:10px}
.subscription-car .car-detail-hint{font-size:.875rem}
.subscription-planned{display:inline-block;margin-top:10px;background:#fff2e8;color:#703a19;border-radius:3px;padding:3px 8px;font-size:.875rem}
.subscription-specs{display:flex;flex-wrap:wrap;gap:8px 14px;list-style:none;padding:18px 20px;margin:0;font-size:.875rem;line-height:1.5;color:#425864;border-bottom:1px solid #e5e9eb}
.subscription-quote{display:flex;flex-direction:column;gap:5px;padding:18px 20px 8px;color:#163945}
.subscription-quote strong{font-size:1.125rem}
.subscription-quote span{font-size:.875rem;color:#425864;line-height:1.5}
.subscription-car .car-card-bottom{padding:16px 20px 20px;border:0}
.subscription-car .car-card-bottom .btn{width:100%;font-size:.875rem;white-space:normal;line-height:1.5;min-height:48px;flex:auto;padding:12px}
.subscription-footnote{font-size:.875rem;line-height:1.7;color:#626d72;margin:24px 0 0}
.subscription-empty{padding:55px 24px;text-align:center;background:#f5f7f8;border-radius:6px}
.subscription-empty h3{font-size:1.35rem;margin:0 0 10px}
.subscription-empty p{font-size:1rem;line-height:1.7;margin:0 0 22px;color:#425864}
@media(min-width:1450px){#subscription-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1050px){.subscription-layout{grid-template-columns:220px minmax(0,1fr);gap:22px}.subscription-sidebar{padding:18px 15px}}
@media(max-width:850px){.subscription-layout{grid-template-columns:1fr}.subscription-sidebar{position:static;max-height:none;padding:20px}#subscription-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}}
@media(max-width:600px){#subscription-filters{grid-template-columns:1fr;gap:0}#subscription-grid{grid-template-columns:1fr}.subscription-page{padding-top:24px}.subscription-sidebar{padding:18px}.subscription-intro{margin-bottom:22px}}

.subscription-monthly strong{font-size:1.5rem;line-height:1.35}
#enquiry-rate .subscription-monthly{padding-left:0;padding-right:0}

.subscription-deposit{padding:0 20px;margin:8px 0 0;font-size:.875rem;line-height:1.6;color:#425864}

/* Subscription vehicle configuration and included services. */
.subscription-detail{padding-top:24px;max-width:1450px}
.subscription-detail-top{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,1fr);gap:42px;margin-top:25px;align-items:start}
.subscription-car-overview{min-width:0}
.subscription-detail-photo{container-type:inline-size;border:1px solid #dce3e7;border-radius:6px;overflow:hidden;background:#f5f7f8}
.subscription-detail-photo .car-image-frame{height:auto;aspect-ratio:4/3;display:block}
.subscription-detail-specs{list-style:none;display:flex;flex-wrap:wrap;gap:12px 24px;padding:20px 0;margin:0;font-size:1rem;color:#425864}
.subscription-characteristics,.subscription-inclusions a,.subscription-rentalcover-link{font-size:.875rem;font-weight:700;line-height:1.6;color:#163945;text-decoration:underline;text-underline-offset:4px}
.subscription-car-overview>.subscription-planned{display:block;margin-top:20px;line-height:1.7;padding:12px 16px}
.subscription-config{background:#f5f7f8;border:1px solid #dce3e7;border-radius:6px;padding:28px;min-width:0}
.subscription-config .subscription-quote{padding:0 0 12px}
.subscription-detail-deposit{font-size:.875rem;line-height:1.7;color:#425864;margin:0 0 22px}
.subscription-term-options,.subscription-extras{border:0;padding:0;margin:12px 0 0;min-width:0}
.subscription-term-options legend,.subscription-extras legend{font-size:1.25rem;font-weight:700;line-height:1.4;padding:0;margin:0 0 16px;color:#163945}
.subscription-term-options>div{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.subscription-term-options label{position:relative;cursor:pointer;min-width:0}
.subscription-term-options input{position:absolute;width:1px;height:1px;clip:rect(0,0,0,0);padding:0;margin:0}
.subscription-term-options span{display:flex;align-items:center;justify-content:center;min-height:52px;border:1px solid #becbd1;border-radius:4px;background:#fff;font-size:1rem;font-weight:700;text-align:center;padding:10px 6px;line-height:1.5}
.subscription-term-options input:checked+span{border:2px solid #c24a08;background:#fff2e8;color:#803508}
.subscription-term-options input:focus-visible+span{outline:3px solid #027b95;outline-offset:3px}
.subscription-choice-note{font-size:.875rem;line-height:1.7;color:#526570;margin:12px 0 20px}
.subscription-start-label{display:block;font-size:1rem;font-weight:700;margin:18px 0 8px;color:#163945}
#subscription-start{background:#fff;border:1px solid #becbd1;border-radius:4px;padding:12px;font-size:1rem;min-height:48px}
.subscription-extras{border-top:1px solid #dce3e7;padding-top:18px;margin-top:26px}
.subscription-extras label{font-size:1rem;font-weight:700;color:#163945}
.subscription-extras p{font-size:.875rem;line-height:1.7;color:#425864;margin:10px 0 14px}
.subscription-stepper{display:flex;max-width:190px;min-height:44px}
.subscription-stepper button{width:44px;flex:none;border:1px solid #becbd1;background:white;font-size:1.5rem;border-radius:4px;color:#163945}
.subscription-stepper button:disabled{opacity:.4}
.subscription-stepper input{width:90px;padding:8px;border-block:1px solid #becbd1;text-align:center;font-size:1rem;background:#fff;border-radius:0}
.subscription-submit{width:100%;white-space:normal;margin-top:24px;min-height:52px;font-size:1rem;line-height:1.5}
.subscription-config>.subscription-choice-note:last-child{margin-bottom:0}
.subscription-inclusions{margin-top:54px}
.subscription-inclusions>h2{font-size:clamp(1.7rem,2.8vw,2.3rem);margin:0 0 24px;color:#163945}
.subscription-inclusion-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px}
.subscription-inclusion-grid article{padding:26px 0;border-top:1px solid #dce3e7}
.subscription-inclusion-grid article>span{font-size:.875rem;font-weight:700;color:#b34d13}
.subscription-inclusion-grid h3{font-size:1.125rem;line-height:1.5;margin:12px 0;color:#163945}
.subscription-inclusion-grid p{font-size:1rem;line-height:1.75;color:#425864;margin:0 0 12px}
.subscription-enquiry-extras{font-size:.875rem;line-height:1.7;color:#425864}
@media(max-width:1000px){.subscription-detail-top{grid-template-columns:minmax(0,1fr) minmax(320px,1fr);gap:24px}.subscription-config{padding:22px}.subscription-term-options>div{grid-template-columns:repeat(2,minmax(0,1fr))}.subscription-inclusion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.subscription-detail-top{grid-template-columns:1fr;gap:24px}.subscription-config{padding:22px 18px}.subscription-inclusion-grid{grid-template-columns:1fr}.subscription-inclusions{margin-top:34px}.subscription-detail{padding-top:24px}}

/* Airport shuttle maps and terminal directions. */
.shuttle-section{max-width:1400px;margin:0 auto}
.shuttle-intro{max-width:none;margin-bottom:38px}
.shuttle-intro h2{font-size:clamp(1.5rem,3.1vw,2.75rem);line-height:1.18;letter-spacing:-.035em;margin:16px 0 22px;text-wrap:balance}
@media(min-width:761px){.shuttle-intro h2{white-space:nowrap}}
.shuttle-section p{font-size:1rem;line-height:1.75;color:#425864}
.shuttle-terminal{padding:30px;margin:0 0 28px;background:#fff;border:1px solid #dbe3e6;border-radius:16px}
.shuttle-section h3{font-size:clamp(1.35rem,2.5vw,1.85rem);line-height:1.3;margin:0 0 20px}
.shuttle-map{margin:24px 0 0}
.shuttle-map a{display:block;background:#fff;border-radius:8px}
.shuttle-map img{display:block;width:100%;height:auto}
.shuttle-map figcaption{font-size:.875rem;line-height:1.6;color:#59666d;margin-top:12px}
.shuttle-directions{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:30px}
.shuttle-directions h4{font-size:1.2rem;margin:0 0 10px}
.shuttle-directions p{margin:0}
.shuttle-bus{padding:30px;background:#f2f7fa;border-radius:16px;margin:32px 0}
.shuttle-bus img{display:block;width:100%;max-width:1000px;height:auto;margin:0 auto}
.shuttle-contact{text-align:center;padding:36px 24px;background:#fff2e8;border-radius:16px}
.shuttle-contact .btn{font-size:1.25rem}
.shuttle-contact p{margin:16px 0 0}
.shuttle-source{margin-top:24px;font-size:.875rem!important}
.shuttle-source a{text-underline-offset:4px}
@media(max-width:760px){.shuttle-terminal,.shuttle-bus{padding:20px 16px}.shuttle-directions{grid-template-columns:1fr;gap:24px}.shuttle-intro{margin-bottom:28px}.shuttle-contact{padding:28px 18px}}

/* Reuse decoded shuttle maps in an accessible, scrollable in-page viewer. */
body.shuttle-map-open{overflow:hidden}
.shuttle-map a{cursor:zoom-in}
.shuttle-map-dialog{width:min(1680px,96vw);max-width:96vw;max-height:94vh;max-height:94svh;padding:20px;border:0;border-radius:14px;background:#fff;color:#102c3a;overflow:hidden}
.shuttle-map-dialog::backdrop{background:rgba(8,24,33,.8)}
.shuttle-map-toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.shuttle-map-toolbar h2{font-size:1.2rem;line-height:1.4;margin:0 auto 0 0}
.shuttle-map-toolbar button{padding:10px 14px;border:1px solid #cbd8de;border-radius:8px;background:#f2f7fa;color:#102c3a;font:inherit;cursor:pointer}
.shuttle-map-toolbar button:focus-visible,.shuttle-map-stage:focus-visible{outline:3px solid #ff6b16;outline-offset:3px}
.shuttle-map-help{font-size:.875rem;line-height:1.5;color:#59666d;margin:12px 0}
.shuttle-map-stage{width:100%;max-height:calc(94vh - 160px);max-height:calc(94svh - 160px);overflow:auto;overscroll-behavior:contain;background:#fff}
.shuttle-map-stage img{display:block;width:100%;height:auto;max-width:100%}
.shuttle-map-stage.is-zoomed img{width:auto;max-width:none}
@media(max-width:760px){.shuttle-map-dialog{padding:14px}.shuttle-map-toolbar{gap:8px}.shuttle-map-toolbar h2{width:100%}.shuttle-map-toolbar button{font-size:.875rem}.shuttle-map-stage{max-height:calc(94vh - 185px);max-height:calc(94svh - 185px)}}

.shuttle-contact .shuttle-booking-reminder{max-width:850px;margin:0 auto 24px}
.shuttle-contact-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:14px 20px}
.shuttle-contact-actions .shuttle-email{overflow-wrap:anywhere;text-underline-offset:4px}

.airport-copy .airport-shuttle-link{color:#fff;text-decoration:underline;text-underline-offset:3px}

/* Sydney service-area map: local artwork and official suburb geometry. */
.location-layout{grid-template-columns:minmax(275px,.8fr) minmax(0,1.9fr);gap:30px}
.location-layout>div{min-width:0}.sydney-location-map{border:1px solid #DFE2DC;border-radius:8px;overflow:hidden;background:#fff}
.sydney-map-top{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid #DFE2DC}
.map-overline{font-size:10px;letter-spacing:1.7px;color:#686D67;font-weight:700}.sydney-map-top h3{color:#181A18;font-size:20px;line-height:1.3;margin:5px 0 0;letter-spacing:-.5px}
.map-search-wrap{position:relative;max-width:260px;width:45%}.map-search-wrap label{display:block;font-size:11px;color:#686D67;margin-bottom:5px}.map-search-wrap input{background:#F5F6F3;border:1px solid #DADDD6;border-radius:5px;padding:9px 11px;font-size:13px;font-weight:400}
.map-search-results{position:absolute;top:100%;right:0;width:100%;min-width:220px;max-height:280px;overflow:auto;background:white;border:1px solid #DADDD6;border-radius:5px;box-shadow:0 8px 25px #181A1820;z-index:4}.map-search-results button{display:block;width:100%;padding:10px 12px;background:white;border:0;text-align:left;font-size:13px}.map-search-results button:hover,.map-search-results button:focus{background:#FAEBDD}.map-search-results p{font-size:12px;padding:12px}
.sydney-map-canvas{position:relative;background:#E3EBED;overflow:hidden}.sydney-map-svg.is-zoomed{touch-action:none;cursor:grab}.sydney-map-svg{font-family:Arial,Helvetica,sans-serif;display:block;width:100%;height:auto;aspect-ratio:1000/1050;touch-action:pan-y}
.map-suburb-boundary{fill:#FAEBDD;fill-opacity:.82;stroke:#C87545;stroke-width:1.5;cursor:pointer;vector-effect:non-scaling-stroke}.map-suburb-boundary.is-selected{fill:#F5D8BF;fill-opacity:.9;stroke:#A95122;stroke-width:2.5}
.map-leader{fill:none;stroke:#B68B70;stroke-width:1.2;pointer-events:none}.map-marker-halo{fill:#fff;opacity:.8}.map-marker{fill:#FF6B16;stroke:#fff;stroke-width:2}.map-marker-number{fill:#181A18;text-anchor:middle;font-size:11px;font-weight:700}.map-place-label{fill:#181A18;font-size:17px;font-weight:700;paint-order:stroke;stroke:#F5F6F3;stroke-width:5px;stroke-linejoin:round}.map-office-address{fill:#4E514C;font-size:15px;paint-order:stroke;stroke:#F5F6F3;stroke-width:4px}
.sydney-map-point{cursor:pointer;outline:none}.sydney-map-point:hover .map-marker,.sydney-map-point.is-selected .map-marker,.sydney-map-point:focus-visible .map-marker{fill:#A95122}.sydney-map-point:focus-visible .map-marker-halo{fill:#181A18;opacity:1}.sydney-map-point.is-selected .map-marker-halo{fill:#F8D1AF;opacity:1}.map-water-labels{font-size:12px;letter-spacing:2px;fill:#728184}
.map-zoom-controls{position:absolute;top:16px;left:16px;display:flex;align-items:center;gap:1px;background:#DFE2DC;border:1px solid #DFE2DC;border-radius:5px;overflow:hidden;box-shadow:0 2px 8px #181A1812}.map-zoom-controls button{border:0;background:white;min-width:37px;height:37px;padding:0 11px;font-size:20px;color:#181A18}.map-zoom-controls button:last-child{font-size:11px;font-weight:700}.map-zoom-controls button:disabled{color:#A4A89F}.map-zoom-controls button:hover:not(:disabled){background:#FAEBDD}.map-north{position:absolute;top:18px;right:20px;color:#686D67;font-size:13px;text-align:center;line-height:1.1;font-weight:700}.map-legend{position:absolute;left:16px;bottom:15px;display:flex;align-items:center;gap:7px;background:#fffffff0;border:1px solid #DFE2DC;border-radius:5px;padding:8px 10px;font-size:10px;color:#686D67}.map-legend-dot{width:9px;height:9px;background:#FF6B16;border-radius:50%}.map-legend-area{width:12px;height:10px;border:1px solid #C87545;background:#FAEBDD;margin-left:8px}
.map-selected-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:19px 22px;border-top:1px solid #DFE2DC;background:#F5F6F3}.map-selected-title{font-size:15px;color:#181A18}.map-selected-detail{font-size:12px;color:#686D67;margin:5px 0 0;max-width:400px}.map-book-location{flex-shrink:0;background:#FF6B16;color:#181A18;border:0;border-radius:4px;padding:11px 14px;font-size:12px;font-weight:700}.map-book-location:hover{background:#F58239}.map-attribution{padding:10px 22px;color:#686D67;font-size:10px;line-height:1.7}.map-attribution a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:1050px){.location-layout{grid-template-columns:minmax(245px,.8fr) minmax(0,1.5fr);gap:22px}.sydney-map-top{align-items:start;flex-direction:column;padding:17px}.map-search-wrap{width:100%;max-width:none}.map-selected-card{align-items:start;flex-direction:column;padding:17px}.map-attribution{padding:10px 17px}}
@media(max-width:760px){.location-layout{grid-template-columns:1fr}.sydney-map-top{flex-direction:row;align-items:center;gap:12px}.sydney-map-top h3{color:#181A18;font-size:17px}.map-search-wrap{width:48%}.map-search-wrap input{font-size:12px}.map-overline{font-size:8px}.map-search-wrap label{font-size:10px}.map-zoom-controls{top:10px;left:10px}.map-zoom-controls button{height:32px;min-width:32px;padding:0 8px}.map-legend{left:10px;bottom:9px;font-size:9px;padding:6px}.map-north{top:13px;right:13px}.map-place-label{font-size:20px}.map-office-address{font-size:17px}.map-marker-number{font-size:11px}.map-selected-card{flex-direction:row;align-items:center}.map-selected-title{font-size:13px}.map-book-location{padding:10px;font-size:11px}}
@media(max-width:390px){.sydney-map-top{flex-direction:column;align-items:stretch}.map-search-wrap{width:100%}.map-selected-card{flex-direction:column;align-items:stretch}.map-book-location{text-align:center}}

.sydney-map-point:is(:hover,.is-selected,:focus-visible) .map-marker-number{fill:#fff}
.sydney-location-map :is(button,input,a):focus-visible{outline-color:#A95122}

.campus-page>.campus-service{margin:0}

/* Fit the whole map to available screen space; JavaScript measures wrapping controls. */
.sydney-map-top{padding:12px 16px;gap:12px}
.sydney-map-top h3{font-size:18px;margin-top:3px}
.sydney-map-canvas{background:#F5F6F3}
.sydney-map-svg{height:clamp(180px,calc(100vh - 390px),520px);height:clamp(180px,calc(100svh - 390px),520px);aspect-ratio:auto}
.map-place-label{font-size:20px}.map-office-address{font-size:17px}
.sydney-map-tools{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:8px 12px;border-top:1px solid #DFE2DC;background:#fff}
.sydney-map-tools .map-zoom-controls{position:static;box-shadow:none;flex-shrink:0}
.sydney-map-tools .map-legend{position:static;padding:0;border:0;background:none}
.map-selected-card{padding:12px 16px;gap:12px}
.map-selected-detail{margin-top:3px}
.map-attribution{padding:7px 16px}
@media(min-width:1001px){
 .sydney-map-top{flex-direction:row;align-items:center}
 .map-search-wrap{width:45%;max-width:260px}
 .map-selected-card{flex-direction:row;align-items:center}
}
@media(max-width:1050px){
 .map-search-wrap input{font-size:16px;min-height:40px}
 .sydney-map-tools .map-zoom-controls button{height:40px;min-width:40px}
 .map-book-location{min-height:40px}
}
@media(max-width:760px){
 .sydney-map-top{padding:10px 12px;gap:10px}
 .sydney-map-top h3{font-size:16px}
 .map-search-wrap{width:50%}
 .sydney-map-svg{height:clamp(160px,min(94.5vw,calc(100vh - 420px)),420px);height:clamp(160px,min(94.5vw,calc(100svh - 420px)),420px)}
 .sydney-map-tools{padding:7px 10px;gap:6px}
 .sydney-map-tools .map-legend{font-size:10px}
 .map-selected-card{padding:10px 12px}
 .map-attribution{padding:6px 12px}
}
@media(max-width:390px){.map-search-wrap{width:100%}}
@media(max-height:540px) and (orientation:landscape){
 .sydney-map-top{flex-direction:row;align-items:center;padding:8px 12px}
 .sydney-map-top .map-overline{display:none}
 .sydney-map-top h3{font-size:16px}
 .map-search-wrap{width:48%;max-width:300px}
 .map-search-wrap label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .map-selected-card{flex-direction:row;align-items:center;padding:8px 12px}
}
@media(min-width:600px) and (max-height:540px) and (orientation:landscape){
 .sydney-location-map{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(220px,1fr)}
 .sydney-map-top{grid-column:1/-1}
 .sydney-map-canvas{grid-column:1;grid-row:2/4;min-width:0}
 .map-selected-card{grid-column:2;grid-row:2;flex-direction:column;align-items:flex-start;justify-content:center;border-top:0;border-left:1px solid #DFE2DC}
 .map-attribution{grid-column:2;grid-row:3;border-left:1px solid #DFE2DC}
 .sydney-map-tools{padding:6px;gap:6px}
 .sydney-map-tools .map-legend{font-size:9px}
}

/* Hornsby keeps its own geographic extent so central Sydney can be shown larger. */
.sydney-map-svg .map-place-label{font-size:24px}
.sydney-map-svg [data-map-point="1"] .map-place-label{font-size:22px}
.sydney-map-svg .map-office-address{font-size:18px}
.sydney-map-svg .map-marker-number{font-size:12px}
.hornsby-inset{position:absolute;right:12px;top:12px;width:140px;padding:8px;background:#fff;border:1px solid #D9DED6;border-radius:6px;box-shadow:0 3px 12px #181A1812;text-align:left;display:flex;flex-direction:column;gap:4px;color:#181A18}
.hornsby-inset-heading{display:flex;flex-direction:column;gap:2px}
.hornsby-inset-heading strong{font-size:14px;line-height:1.3}
.hornsby-inset-heading>span{font-size:12px;color:#686D67}
.hornsby-inset-svg{display:block;width:100%;height:66px;background:#F5F6F3;border-radius:3px}
.hornsby-inset-action{font-size:12px;font-weight:700;color:#A95122}
.hornsby-inset:hover,.hornsby-inset.is-selected{border-color:#C87545;background:#FFF9F4}
.hornsby-inset:is(:hover,.is-selected,:focus-visible) .map-marker{fill:#A95122}
.hornsby-inset:is(:hover,.is-selected,:focus-visible) .map-marker-number{fill:#fff}
.sydney-map-canvas>.map-north{left:16px;right:auto}
.map-inset-stacked .hornsby-inset{position:static;width:calc(100% - 24px);margin:8px 12px;min-height:72px;display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 10px;box-shadow:none}
.map-inset-stacked .hornsby-inset-svg{grid-column:1;grid-row:1;height:68px;width:74px}
.map-inset-stacked .hornsby-inset-heading{grid-column:2;grid-row:1}
.map-inset-stacked .hornsby-inset-action{grid-column:3;grid-row:1}
@media(max-width:1050px){
 .hornsby-inset{position:static;width:calc(100% - 24px);margin:8px 12px;min-height:72px;display:grid;grid-template-columns:74px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 10px;box-shadow:none}
 .hornsby-inset-svg{grid-column:1;grid-row:1;height:68px;width:74px}
 .hornsby-inset-heading{grid-column:2;grid-row:1}
 .hornsby-inset-action{grid-column:3;grid-row:1}
}
@media(max-width:390px){.hornsby-inset-action{max-width:72px}.hornsby-inset-heading strong{font-size:13px}}

/* Give the separate Hornsby map an independently collapsible larger view. */
.hornsby-inset.is-expanded{width:200px}
.hornsby-inset.is-expanded .hornsby-inset-svg{height:132px}
.map-inset-stacked .hornsby-inset.is-expanded{width:calc(100% - 24px);grid-template-columns:108px minmax(0,1fr) auto}
.map-inset-stacked .hornsby-inset.is-expanded .hornsby-inset-svg{width:108px;height:112px}
@media(max-width:1050px){
 .hornsby-inset.is-expanded{width:calc(100% - 24px);grid-template-columns:108px minmax(0,1fr) auto}
 .hornsby-inset.is-expanded .hornsby-inset-svg{width:108px;height:112px}
}

/* Campus markers use a white centre and orange ring to distinguish 21–24. */
.map-campus-point .map-marker{fill:#fff;stroke:#FF6B16;stroke-width:3}
.map-campus-point .map-marker-number{fill:#A95122;font-weight:800}
.map-campus-point .map-place-label{fill:#A95122}
.map-campus-point:is(:hover,.is-selected,:focus-visible) .map-marker{fill:#FFF0E4;stroke:#A95122}
.map-campus-point:is(:hover,.is-selected,:focus-visible) .map-marker-number{fill:#A95122}
.campus-marker-leader{fill:none;stroke:#A95122;stroke-width:1.5}
.campus-true-location{fill:#A95122;stroke:#fff;stroke-width:1}
.map-legend-campus{width:10px;height:10px;border:2px solid #FF6B16;background:#fff;border-radius:50%;margin-left:8px;flex-shrink:0}
.sydney-map-tools .map-legend{flex-wrap:wrap;row-gap:6px}
.map-campus-guide{display:inline-block;margin-top:6px;font-size:12px;color:#A95122;text-decoration:underline;text-underline-offset:3px}

/* Keep the three section shortcuts visible on phones and iPads. */
html{scroll-padding-top:calc(var(--site-header-height,94px) + 12px)}
@media(min-width:851px){.subscription-sidebar{top:calc(var(--site-header-height,94px) + 20px);max-height:calc(100dvh - var(--site-header-height,94px) - 40px)}}
@media(min-width:1001px){.vehicle-gallery{top:calc(var(--site-header-height,94px) + 16px)}}
@media(max-width:1100px){
 body>header{height:auto;flex-wrap:wrap;row-gap:8px;padding-bottom:6px}
 body>header>nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));order:3;flex:0 0 100%;width:100%;gap:4px;padding-top:6px;border-top:1px solid #DFE2DC;font-size:.875rem}
 body>header>nav a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:44px;padding:6px 4px;text-align:center;line-height:1.3;border-radius:4px;white-space:normal;overflow-wrap:break-word}
 body>header>nav a:hover,body>header>nav a:focus-visible{background:#FFF0E6;color:#9A3B00}
}
@media(max-width:760px){
 body>header>nav{grid-column:1/-1;grid-row:3}
}

/* Accident support overview sits below the dedicated page title. */
.accident-intro-card{padding:30px 34px;margin-bottom:28px;border-radius:6px;background:#202422;color:#fff}
.accident-intro-card .home-service-top{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#FFAA77;margin-bottom:14px}
.accident-intro-card .home-service-kicker{font-size:.75rem;font-weight:700;letter-spacing:.09em;line-height:1.4}
.accident-intro-card .home-service-top svg{width:27px;height:27px;flex-shrink:0}
.accident-intro-card h2{font-size:clamp(1.8rem,3vw,2.2rem);line-height:1.15;letter-spacing:-.025em;margin:0 0 14px;color:#fff}
.accident-intro-card>p{font-size:1rem;line-height:1.6;max-width:70ch;margin:0 0 20px;color:#E0E4E1}
.accident-intro-card .home-service-options{display:flex;flex-wrap:wrap;gap:8px 24px;list-style:none;padding:0;margin:0;font-size:.875rem;line-height:1.5}
.accident-intro-card .home-service-options li{padding-bottom:4px;border-bottom:1px solid #ffffff3b}


@media(max-width:760px){.accident-intro-card{padding:24px 22px;margin-bottom:24px}.accident-intro-card .home-service-options{gap:8px 16px}}

/* Emphasise homepage daily rates with the deeper brand orange. */
#car-grid .rental-rate-value{color:#686D67;gap:6px;align-items:baseline;font-size:.875rem}
#car-grid .rental-rate:not(.rate-pending) .rental-rate-value strong{color:#B94700;font-size:1.75rem;font-weight:700}
@media(max-width:760px){
 #car-grid>.car-card>.rental-rate{padding-inline:13px}
 #car-grid .rental-rate:not(.rate-pending) .rental-rate-value strong{font-size:1.5rem}
}

/* Vehicle name first; category, trim and rental use share a compact metadata row. */
.car-card .car-card-top{min-height:0}
.car-card .car-card-top>h3{margin:0 0 7px;min-height:0}
.car-card .car-meta{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 7px;font-size:.75rem;line-height:1.5;color:#686D67}
.car-card .car-meta>*{display:inline-flex;align-items:baseline;max-width:100%;margin:0;padding:0;border:0;border-radius:0;background:none;color:inherit;font-size:inherit;line-height:inherit;letter-spacing:0}
.car-card .car-meta>*+*::before{content:'·';display:inline-block;margin-right:7px;color:#9A9F98;font-weight:400;text-decoration:none}
.car-card .car-meta>.car-category{font-weight:600;letter-spacing:.035em}
.car-card .car-meta>.rideshare-badge{color:#B94700;text-decoration:none}
.car-card .car-meta>.rideshare-badge:hover{text-decoration:underline;text-underline-offset:3px}
.car-card .car-meta>.subscription-planned{color:#B94700}

/* Compact scrollable booking pickers, shared by desktop and touch devices. */
.booking-fields label:has(.booking-picker-trigger){position:relative;cursor:pointer}
.booking-fields .booking-native-select{position:absolute;width:1px;height:1px;padding:0;opacity:0;pointer-events:none;clip-path:inset(50%)}
.booking-picker-trigger{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:32px;padding:3px 0;border:0;background:transparent;text-align:left;font-size:16px;font-weight:600;line-height:1.5}
.booking-picker-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.booking-picker-arrow{width:8px;height:8px;flex:0 0 8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin:0 3px 4px 0}
.booking-picker-trigger[aria-expanded=true] .booking-picker-arrow{transform:rotate(225deg);margin-top:6px}
.booking-picker-options{position:fixed;z-index:100;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scrollbar-color:#929a95 #f5f6f3;scrollbar-gutter:stable;border:1px solid #cdd3ce;border-radius:6px;background:#fff;padding:4px;box-shadow:0 12px 35px #15252b26;font-size:16px;line-height:1.5}
.booking-picker-option{position:relative;min-height:46px;padding:11px 32px 11px 12px;border-radius:3px;cursor:pointer;overflow-wrap:anywhere}
.booking-picker-option[aria-selected=true]{color:#b94700;background:#fff2e9;font-weight:700}
.booking-picker-option[aria-selected=true]::after{content:'✓';position:absolute;right:10px;top:11px}
.booking-picker-option.is-active{box-shadow:inset 0 0 0 1px #b94700}
.booking-picker-error{grid-column:1/-1;font-size:13px;color:#a33116}
@media(hover:hover){.booking-picker-option:hover{background:#f2f4f1}}
@media(pointer:coarse){.booking-picker-trigger{min-height:36px}.booking-picker-option{min-height:48px;padding-block:12px}}

.fleet-pricing-context{font-size:14px;line-height:1.6;color:#686d67;margin:0 0 20px}

/* Rideshare: car-first catalogue and prominent weekly plan pricing. */
.rideshare-page .rideshare-hero{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:36px;padding:44px;background:#082b36}
.rideshare-hero-copy{min-width:0}.rideshare-page .rideshare-hero h2{font-size:clamp(32px,3.8vw,52px);margin:16px 0 20px;max-width:620px}
.rideshare-page .rideshare-intro{font-size:16px;line-height:1.7;margin-bottom:22px}.rideshare-page .rideshare-approval{font-size:14px;margin-top:18px}
.rideshare-hero-car{min-width:0;border-radius:12px;overflow:hidden;background:#f5f6f3}.rideshare-hero-car img{display:block;width:100%;height:auto;object-fit:contain}
.rideshare-plan-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#fff3e9;border:1px solid #f0dac9;border-radius:8px;margin:18px 0 0;padding:22px 26px;gap:24px}
.rideshare-plan-strip>span{display:flex;flex-direction:column;gap:4px}.rideshare-plan-strip strong{font-size:22px;color:#b94700}.rideshare-plan-strip>span>span{font-size:14px;color:#555f60}
.rideshare-toolbar{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:20px;background:#f5f6f3;padding:22px;border-radius:8px;border:1px solid #e3e6e0}
.rideshare-filter-group{min-width:0;flex:1 1 500px}.rideshare-filter-group>span,.rideshare-sort>span{display:block;font-size:14px;font-weight:700;margin-bottom:9px}
.rideshare-sort{flex:0 1 240px;min-width:0}.rideshare-sort select{background:#fff;border:1px solid #ccd2cd;border-radius:5px;min-height:44px;padding:9px 12px;font-size:14px;font-weight:400}
#rideshare-filters{flex-wrap:wrap;gap:7px}#rideshare-filters button{min-height:44px;border-radius:5px;font-size:14px}
#rideshare-count{font-size:14px;margin:18px 0 26px}
#rideshare-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
#rideshare-grid .ride-plan{border:1px solid #dfe3dd;border-radius:9px;overflow:hidden;background:#fff;box-shadow:0 4px 16px #15252b08}
#rideshare-grid .car-card-top{padding:24px 24px 0;min-height:164px}#rideshare-grid .car-card-top h3{font-size:23px;line-height:1.25;letter-spacing:-.5px;margin:0 0 12px;min-height:0}
.ride-plan-tags{display:flex;flex-wrap:wrap;gap:6px 9px;align-items:center;font-size:14px;color:#59645f}.ride-planned-tag{padding:3px 8px;border-radius:20px;background:#fff3e9;color:#9e400c}
#rideshare-grid .rideshare-badge{font-size:12px;line-height:1.45;padding:5px 9px;border:0;border-radius:20px;background:#142e35;color:#fff;margin-top:10px}
.ride-plan-specs{display:flex;gap:12px;font-size:14px;color:#58625c;margin:12px 0 0}.ride-plan-specs>span{color:#a4aaa5}
#rideshare-grid .car-image-frame{margin:10px 12px 0;border-radius:5px}/* Preserve the shared photo crop geometry so images and plate masks scale together. */
#rideshare-grid .car-image-frame .car-photo{height:auto}
.ride-plan-price{padding:0 24px;margin-top:auto}#rideshare-grid .rental-rate{margin:12px 0 0;padding:18px;background:#f5f6f3;border:1px solid #dfe3dd;border-radius:6px}
#rideshare-grid .rental-rate-label{font-size:13px;color:#5e6862}#rideshare-grid .rental-rate-value{gap:6px;align-items:baseline;font-size:16px;color:#5b645e}
#rideshare-grid .rental-rate:not(.rate-pending) .rental-rate-value strong{font-size:36px;line-height:1.2;font-weight:750;color:#b94700}#rideshare-grid .rate-pending .rental-rate-value strong{font-size:21px;color:#5e6862}
#rideshare-grid .rental-rate-condition{font-size:13px;line-height:1.55;margin:10px 0 0;color:#647069}
#rideshare-grid .pickup-deposit{padding:12px 0 0;margin:0;border:0;background:none}#rideshare-grid .pickup-deposit p{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:13px;margin:0}#rideshare-grid .pickup-deposit strong{font-size:15px;white-space:nowrap}
.ride-plan-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:20px 24px 24px}.ride-plan-actions .btn{padding:12px 8px;min-height:46px;font-size:14px;white-space:normal;text-align:center}
.rideshare-page .rideshare-options article{background:#f5f6f3;border-color:#dfe3dd;border-radius:8px}.rideshare-page .rideshare-faq{max-width:980px}.rideshare-page .rideshare-faq summary{padding-right:20px}
@media(max-width:1100px){.rideshare-page .rideshare-hero{padding:32px;gap:26px}#rideshare-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.rideshare-filter-group{flex-basis:100%}.rideshare-sort{flex-basis:280px}}
@media(max-width:700px){.rideshare-page .rideshare-hero{grid-template-columns:1fr;padding:28px 24px;gap:24px}.rideshare-hero-car{max-width:460px;width:100%;margin:auto}.rideshare-plan-strip{gap:15px;padding:18px}.rideshare-plan-strip strong{font-size:17px}.rideshare-plan-strip>span>span{font-size:12px}.rideshare-toolbar{padding:16px}.rideshare-sort{flex:1 1 100%}.rideshare-sort select{font-size:16px}#rideshare-grid{grid-template-columns:1fr;gap:24px}#rideshare-grid .car-card-top{min-height:0;padding:23px 23px 0}#rideshare-grid .car-card-top h3{font-size:23px}.ride-plan-actions{padding:20px 23px 23px}.ride-plan-price{padding:0 23px}}
