
:root{--navy:#091d36;--navy2:#153b60;--gold:#ca9f46;--cream:#f7f4ea;--bg:#f6f8fb;--text:#182b43;--muted:#5a687b;--border:#d9e1eb;--green:#e7f5eb}
*{box-sizing:border-box}html{font-family:system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}body{margin:0;background:var(--bg);color:var(--text)}
a{color:inherit}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #237bd5;outline-offset:3px}
.preview{background:#fbefcf;text-align:center;color:#614414;padding:11px 18px;font-size:.86rem;font-weight:650;line-height:1.5}
.header{background:white;border-bottom:1px solid var(--border)}.top{max-width:1100px;margin:auto;padding:17px 22px 12px;display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;color:var(--navy)}.brand img{width:64px;height:64px;object-fit:contain}.brand strong{display:block;font-size:1.06rem;letter-spacing:.015em}.brand small{display:block;color:var(--muted);font-size:.82rem}.nav{display:flex;flex-wrap:wrap;gap:5px;max-width:1100px;margin:auto;padding:0 18px 14px}.nav a{padding:11px 15px;display:inline-block;text-decoration:none;border-radius:12px;color:#24354d;font-size:.91rem;font-weight:600}.nav a[aria-current="page"],.nav a:hover{background:var(--navy);color:white}
.container{width:min(100% - 36px,1060px);margin:0 auto}.page{padding:40px 0 68px;min-height:60vh}.kicker{font-size:.78rem;letter-spacing:.17em;text-transform:uppercase;color:#a67621;font-weight:850;margin:0 0 15px}.headline{font-size:clamp(2rem,5.5vw,3.7rem);line-height:1.12;margin:0 0 17px}.lead{font-size:1.12rem;line-height:1.7;color:var(--muted);max-width:760px}.hero{background:linear-gradient(125deg,#081a31,#133859);color:white;padding:64px 0;border-radius:28px;margin-top:8px}.hero .lead{color:#e2eaf4}.hero .kicker{color:#e0b964}.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:27px}.btn{background:var(--gold);border:1px solid transparent;padding:14px 19px;text-decoration:none;display:inline-block;border-radius:13px;font-weight:750;cursor:pointer;color:#112236;text-align:center}.btn:hover{filter:brightness(.96)}.btn.outline{background:transparent;color:inherit;border-color:#a9b3c5}.btn.navy{background:var(--navy);color:white}.btn.light{background:white;color:var(--navy);border-color:#dae2ec}.btn:disabled{opacity:.55;cursor:not-allowed}
.note{background:#fff5dc;border:1px solid #f0e4bb;border-radius:15px;padding:17px 20px;margin:21px 0;line-height:1.65;color:#65502b}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px;margin-top:27px}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:white;border:1px solid var(--border);border-radius:20px;padding:24px;min-width:0}.card h2,.card h3{margin:0 0 14px;font-size:1.3rem}.card p{margin:0;color:var(--muted);line-height:1.65}.card p+p{margin-top:10px}.card .btn{margin-top:18px}.card-link{display:block;text-decoration:none;transition:transform .1s ease,box-shadow .1s ease}.card-link:hover{box-shadow:0 10px 28px #152d4720;transform:translateY(-2px)}.card-link::after{content:'Open screen →';display:block;color:#7a5716;margin-top:21px;font-weight:750}.pill{display:inline-flex;align-items:center;padding:7px 11px;border-radius:50px;background:#eaf0f6;font-size:.83rem;font-weight:720;color:#334861}.pill.gold{background:#f8ebce;color:#6b4b19}.metric{font-size:1.75rem;font-weight:850;margin:6px 0}.section-title{font-size:1.7rem;margin:40px 0 10px}.steps{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0}.step{padding:9px 13px;border-radius:11px;background:#eaf0f6}.step.done{background:var(--green)}.row{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--border)}.row:last-child{border-bottom:0}.row>span:last-child{font-weight:720;text-align:right}.small{font-size:.84rem;color:var(--muted)}.subnav{display:flex;flex-wrap:wrap;gap:9px;margin:23px 0}.subnav a{border:1px solid var(--border);padding:10px 13px;background:white;text-decoration:none;border-radius:11px;font-size:.92rem;font-weight:650}.subnav a[aria-current="page"]{background:var(--navy);border-color:var(--navy);color:white}.detail{background:white;border:1px solid var(--border);border-radius:20px;padding:27px;margin-top:20px;line-height:1.7}.detail h2{margin-top:0}.detail ul{padding-left:22px}.footer{background:#081c34;color:#e2e9f3;padding:27px 0;font-size:.89rem;line-height:1.8}.footer a{color:white}.fine{font-size:.81rem;color:var(--muted)}
.wizard-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:24px 0}.wizard-tabs button{background:white;color:var(--navy);border:1px solid var(--border);border-radius:12px;padding:12px 8px;cursor:pointer;font-size:.87rem;font-weight:700}.wizard-tabs button[aria-selected="true"]{background:var(--navy);color:white}.wizard-pane{background:white;border-radius:18px;border:1px solid var(--border);padding:24px;min-height:235px}.wizard-pane[hidden]{display:none}.wizard-pane h2{margin-top:0}.wizard-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.driver-state{font-weight:800;font-size:1.32rem;color:#0f4264;margin:13px 0}
@media(max-width:650px){.top{padding:13px 17px 8px}.brand img{width:56px;height:56px}.brand strong{font-size:.93rem}.brand small{font-size:.75rem}.nav{padding:0 9px 12px;gap:3px}.nav a{padding:10px 10px;font-size:.82rem}.container{width:min(100% - 28px,1060px)}.page{padding:29px 0 48px}.hero{padding:38px 0;border-radius:19px}.hero .container{width:min(100% - 34px,1060px)}.grid,.grid.three{grid-template-columns:1fr}.card{padding:21px}.row{font-size:.95rem}.row span:last-child{max-width:62%}.wizard-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.btns .btn{width:100%}}

/* Image-led public preview - remote freely licensed Commons photographs (see credits). */
.scenic-hero{background-color:#071b32;background-image:linear-gradient(100deg,rgba(6,22,42,.92),rgba(6,22,42,.65) 55%,rgba(6,22,42,.38)),var(--hero-photo);background-position:center;background-size:cover;background-repeat:no-repeat;min-height:400px}
.scenic-hero .headline,.scenic-hero .lead,.scenic-hero .kicker{text-shadow:0 2px 8px rgba(0,0,0,.28)}
.hero-photo-credit{font-size:.7rem;margin:22px 0 0;color:#e6eff9}.hero-photo-credit a{color:inherit}
.scenic-section{width:min(100% - 36px,1060px);margin:35px auto 15px}.photo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin:24px 0}.photo-card,.fleet-card{background:white;overflow:hidden;border:1px solid var(--border);border-radius:20px}.licensed-photo{display:block;width:100%;height:195px;object-fit:cover;background:linear-gradient(130deg,#193e63,#7aa4a0)}.photo-caption,.fleet-copy{padding:17px 19px}.photo-caption h3,.fleet-copy h3{margin:0 0 6px}.photo-caption p,.fleet-copy p{margin:0;color:var(--muted);line-height:1.55}.fleet-section{width:min(100% - 36px,1060px);margin:25px auto 0}.fleet-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:24px}.fleet-card .vehicle-photo{height:185px;object-fit:contain;background:#edf1f7}.fleet-card .fleet-copy{min-height:115px}
@media(max-width:650px){.scenic-hero{min-height:440px;background-position:60% center}.photo-grid,.fleet-grid{grid-template-columns:1fr}.scenic-section,.fleet-section{width:min(100% - 28px,1060px)}.photo-card .licensed-photo{height:205px}.fleet-card .vehicle-photo{height:210px}}

/* Official portfolio vehicle photos, distinct detail page. Never display number plates. */
.vehicles-page .vehicle-intro{padding-bottom:8px}
.vehicle-collection{margin-top:18px}
.vehicle-detail{margin:23px 0 28px;padding:22px;background:#fff;border:1px solid var(--border);border-radius:22px;box-shadow:0 7px 23px rgba(20,42,70,.04)}
.vehicle-heading .kicker{margin-bottom:5px}.vehicle-heading h3{font-size:1.45rem;line-height:1.28;margin:0 0 8px}
.vehicle-subtitle{margin:0 0 15px;color:#5a687b;font-size:.99rem}
.vehicle-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-items:stretch}
.vehicle-gallery-item{background:#f1f5f9;border:1px solid #e0e7ef;display:flex;flex-direction:column;text-decoration:none;overflow:hidden;border-radius:14px;min-width:0}
.vehicle-gallery-item img{width:100%;height:160px;display:block;object-fit:cover;background:#dfe6ed}
.vehicle-gallery-item.featured img{object-fit:contain;background:#e9eef3}
.vehicle-gallery-item span{display:block;color:#31465d;font-weight:650;font-size:.82rem;padding:9px 10px}
.vehicle-gallery-item:hover{outline:2px solid #ca9f46;outline-offset:1px}
.vehicle-disclaimer{font-size:.9rem;line-height:1.56;color:#5a687b;margin:17px 0 13px}
.vehicle-enquire{font-size:.93rem;color:#123652;font-weight:780}
.fleet-linked{text-decoration:none;color:inherit;display:block;transition:box-shadow .15s ease}
.fleet-linked:hover{box-shadow:0 8px 20px rgba(12,25,45,.12)}
.gallery-open{display:block;color:#805916;font-weight:750;font-size:.88rem;margin-top:12px}
.home-fleet{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:23px 0}
.home-fleet-tile{text-decoration:none;color:#172a43;background:white;border:1px solid var(--border);border-radius:18px;overflow:hidden;display:block}
.home-fleet-tile img{display:block;width:100%;height:182px;object-fit:cover;background:#e7edf4}
.home-fleet-tile strong,.home-fleet-tile span{display:block;margin:0 15px}
.home-fleet-tile strong{font-size:1.02rem;margin-top:13px}.home-fleet-tile span{font-size:.83rem;color:#607187;margin-top:4px;margin-bottom:17px}
@media (max-width:750px){.vehicle-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.vehicle-gallery-item img{height:170px}.home-fleet{grid-template-columns:1fr}.home-fleet-tile img{height:225px}}
@media (max-width:410px){.vehicle-detail{padding:15px}.vehicle-gallery{gap:8px}.vehicle-gallery-item img{height:132px}.vehicle-gallery-item span{padding:8px;font-size:.73rem}.vehicle-heading h3{font-size:1.27rem}}
