/* The same overhead workshop, with a little road under the visitor's hand. */
.asphalt-world{isolation:isolate}
.hero-car{padding:0;border:0;background:transparent;pointer-events:auto;animation:none;will-change:auto;overflow:visible;line-height:0;border-radius:36%}
.hero-car:focus-visible{outline:2px dashed var(--mint);outline-offset:-12px}
.hero-car img{position:relative;z-index:1}
.road-arrival{animation:none;stroke-dashoffset:0}
.road-beam{position:absolute;top:-28%;width:24%;height:42%;pointer-events:none;opacity:0;background:linear-gradient(0deg,#fff9d378,transparent 93%);clip-path:polygon(0 0,100% 0,61% 100%,42% 100%);filter:blur(3px);transition:opacity .35s;z-index:0}
.road-beam-left{left:17%;transform:rotate(-7deg);transform-origin:50% 100%}.road-beam-right{right:15%;transform:rotate(7deg);transform-origin:50% 100%}
.hero-car .headlamp{top:10.5%;width:3.4%;height:7%;filter:blur(3px);border-radius:70%;z-index:2;transition:opacity .28s}
.hero-car .headlamp-left{left:29%;transform:rotate(27deg)}.hero-car .headlamp-right{right:24%;transform:rotate(-26deg)}
.hero-car.is-awake .road-beam{opacity:.62}.hero-car.is-awake .headlamp{opacity:.8}
.tread-canvas{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:-1}
.hero .bay-number{transition:color .3s,opacity .3s;transform:rotate(-90deg)}
.hero:has(.hero-car:hover) .bay-number,.hero:has(.hero-car:focus-visible) .bay-number{opacity:.6;color:var(--mint)}
.hero .parking-caption{transition:opacity .3s}.hero:has(.hero-car:hover) .parking-caption{opacity:1}
.hero-car:hover + .parking-caption{opacity:1}
.service-image{transform:translate3d(var(--object-x,0px),var(--object-y,0px),0);transition:transform .45s var(--ease)}
.service-bay::before{content:'';position:absolute;left:24px;right:24px;bottom:18px;height:3px;background:var(--mint);transform:scaleX(0);transform-origin:left;opacity:.75;transition:transform .65s var(--ease);pointer-events:none}
.service-bay:hover::before,.service-bay:focus-visible::before{transform:scaleX(1)}
.key-scene img{transform:translate3d(var(--keys-x,0px),var(--keys-y,0px),0) rotate(calc(-7deg + var(--keys-turn,0deg)));transition:transform .7s var(--ease)}
.key-note{transition:transform .7s var(--ease);transform:translateY(var(--keys-note,0px)) rotate(-7deg)}
.concern-visual{position:relative;margin:0 0 24px;max-width:600px;aspect-ratio:600/220;overflow:hidden;background:var(--asphalt);border:1px solid #254d3c60;box-shadow:5px 5px 0 #254d3c24}
.concern-visual img{width:100%;height:100%;object-fit:contain}
.concern-detail{min-height:123px}
.concern-section{padding-bottom:46px}
.service-detail-scene{position:relative;background:var(--asphalt) url('assets/asphalt.webp') center/440px;overflow:hidden;margin:0 0 24px;border-bottom:5px solid var(--mint);height:190px}
.service-detail-scene::before,.service-detail-scene::after{content:'';position:absolute;top:20px;bottom:20px;width:5px;background:var(--cream);opacity:.7;transform:skewX(-9deg)}
.service-detail-scene::before{left:28px}.service-detail-scene::after{right:28px}
.service-detail-scene img{width:100%;height:100%;object-fit:contain;padding:9px 32px;filter:drop-shadow(-7px 12px 4px #080c0b55)}
.service-start-note{font-size:14px;line-height:1.6;border-left:3px solid var(--mint);padding:2px 0 2px 16px;color:#4f584b}
#enquiry-summary{border-left:5px solid var(--mint);background:#faf8f1;box-shadow:4px 4px 0 #254d3c16}
.process-list{position:relative}.process-list::before{content:'';position:absolute;top:20px;bottom:24px;left:19px;border-left:1px dashed #637f5666;pointer-events:none}
.step-number{position:relative;z-index:1;outline:7px solid var(--cream)}
.process-list li{position:relative}.process-list li:hover h3{color:#49663d}
.process-list li:hover .step-number{transform:rotate(-9deg) scale(1.09)}
.photo-caption::after{content:'';width:24px;height:7px;background:repeating-linear-gradient(90deg,var(--mint) 0 4px,transparent 4px 7px);margin-left:7px;transform:scaleX(.35);transform-origin:left;transition:transform .65s var(--ease)}
.workshop-photo:hover .photo-caption::after{transform:scaleX(1)}
.faq-list{overflow-anchor:none}.faq-list details[open]{border-bottom-color:#637f56}.faq-list details[open] summary{color:#49663d}
.back-top{transition:background .3s,transform .3s}.back-top:hover{background:var(--fresh);transform:rotate(8deg)}
::-webkit-scrollbar-thumb:hover{background:var(--fresh)}.site-dialog::-webkit-scrollbar-thumb:hover,#enquiry-summary::-webkit-scrollbar-thumb:hover,.mobile-nav::-webkit-scrollbar-thumb:hover{background:#49663d}
@media(hover:hover) and (pointer:fine) and (forced-colors:none){
 body{cursor:url('assets/road-cursor.svg') 3 2,auto}
 a,button,summary,select{cursor:url('assets/road-cursor-active.svg') 3 2,pointer}
 p,h1,h2,h3,input,textarea,pre{cursor:text}
 button *,a *,summary *{cursor:inherit}
}
@media(max-width:850px) and (min-width:601px){.process-list::before{left:15px}.concern-visual{max-width:420px}}
@media(max-width:600px){.key-scene img{transform:translate3d(var(--keys-x,0px),var(--keys-y,0px),0) rotate(calc(-11deg + var(--keys-turn,0deg)))}.key-note{transform:translateY(var(--keys-note,0px)) rotate(-5deg)}.process-list::before{left:18px}.road-beam{top:-22%;height:36%}.service-bay::before{left:24px;right:24px;bottom:14px}.concern-section{min-height:0;padding-bottom:252px}.concern-visual{margin-bottom:24px}.concern-detail{min-height:155px}.service-detail-scene{height:160px}.key-scene{bottom:-19px}}
@media(prefers-reduced-motion:reduce){.hero-car,.service-image{transform:none!important}.tread-canvas{display:none}.key-scene img,.key-note{transition:none}.process-list li:hover .step-number{transform:none}.road-beam,.headlamp{transition:none}.back-top:hover{transform:none}}
@media(forced-colors:active){.tread-canvas,.road-beam,.headlamp{display:none}}
