/* Shared navigation and service pages, extending the existing CSG theme. */
.site-nav{display:flex;align-items:center;gap:28px;margin-left:auto;margin-right:28px;font-size:.875rem;color:#c5cdcd;line-height:1.5}
.site-nav>a:hover,.site-nav a[aria-current=page],.service-menu[open]>summary,.service-menu>summary:hover{color:var(--cyan)}
.service-menu{position:relative}.service-menu>summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:8px;min-height:44px}.service-menu>summary::-webkit-details-marker{display:none}.service-menu>summary span{font-size:1.2rem}.service-menu>summary:focus-visible{outline:3px solid var(--cyan);outline-offset:4px}
.service-menu-links{position:absolute;top:calc(100% + 7px);left:-20px;min-width:238px;padding:10px;background:#101b1b;border:1px solid #355050;box-shadow:0 15px 32px #0008;z-index:20}.service-menu-links a{display:block;padding:13px 14px;font-size:.9375rem}.service-menu-links a:hover{background:#192d2e;color:var(--cyan)}
.service-strip .wrap{gap:15px;font-size:1.08rem}.service-strip a{padding-block:4px}.service-strip a:hover{text-decoration:underline;text-underline-offset:5px}.service-strip a:focus-visible{outline-color:#00393c;outline-offset:3px}
.services .service-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.services .service-card{padding-inline:21px}.service-card h3{font-size:1.08rem}.services .service-card>a{gap:12px}
.about-summary{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;padding-bottom:95px}.about-summary h2{font-size:3.5rem;margin-top:16px}.about-summary>div>p:not(.eyebrow){color:#b4c2c2;font-size:1rem;line-height:1.85;margin-bottom:20px}.text-link{display:inline-flex;align-items:center;gap:10px;color:var(--cyan);font-size:.9375rem;text-decoration:underline;text-underline-offset:5px}
.site-footer{background:#050707}.footer-services{display:flex;flex-wrap:wrap;gap:12px 28px;padding-block:29px;border-bottom:1px solid var(--border);font-size:.875rem;color:#becaca}.footer-services a{padding-block:5px}.footer-services a:hover,.footer-services a[aria-current=page]{color:var(--cyan)}.site-footer .footer{width:100%;margin:0}.site-footer .footer>div p+p{margin-top:5px;color:#859797}.footer-address{font-style:normal;font-size:.875rem;line-height:1.7;color:#c0cccc;margin:10px 0}
.service-hero{position:relative;isolation:isolate;border-bottom:1px solid #2a3737;overflow:hidden;background:var(--black)}.service-photo{position:absolute;z-index:-1;right:0;top:0;width:52%;height:100%;opacity:.8}.service-photo img{width:100%;height:100%;object-fit:cover;object-position:var(--photo-position,50% 50%);filter:var(--photo-filter,saturate(.24) brightness(.75) contrast(.92))}.service-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#050707 0%,rgba(5,7,7,.88) 9%,rgba(5,7,7,.3) 45%,rgba(5,7,7,.03) 75%),linear-gradient(0deg,#050707,transparent 45%,#050707 100%)}
.service-hero-inner{padding-top:26px;padding-bottom:62px}.breadcrumbs{display:flex;flex-wrap:wrap;gap:12px;font-size:.875rem;color:#a4b7b7;margin-bottom:37px}.breadcrumbs a{color:#d1dfdf}.breadcrumbs a:hover{color:var(--cyan)}.service-hero h1{font-size:clamp(3.8rem,5.8vw,5.5rem);text-transform:uppercase;line-height:1.03;max-width:950px;margin:20px 0 22px}.service-hero h1 span{color:var(--cyan)}.service-intro{max-width:690px;font-size:1.0625rem;line-height:1.85;color:#c0cccc}.service-hero-actions{display:flex;align-items:center;gap:29px;margin-top:30px;flex-wrap:wrap}
.service-content-grid{display:grid;grid-template-columns:minmax(0,1fr) 335px;gap:90px;padding-top:74px;padding-bottom:74px}.service-copy-section{margin-bottom:43px}.service-copy-section h2,.service-questions h2{font-family:var(--font);font-size:1.65rem;line-height:1.35;letter-spacing:-.025em;font-weight:600;margin-bottom:20px}.service-copy-section p{font-size:1rem;color:#b5c3c3;line-height:1.9;margin-bottom:18px}.service-checklist{padding-left:22px;color:#c8d3d3;font-size:1rem;line-height:1.8;margin:20px 0}.service-checklist li{padding-left:6px;margin-bottom:12px}.service-checklist li::marker{color:var(--cyan)}.context-links{display:flex;flex-direction:column;gap:14px;margin-top:22px}.context-links a{color:var(--cyan);font-size:1rem;display:flex;align-items:center;gap:14px}.context-links a:hover{text-decoration:underline;text-underline-offset:5px}.context-links .icon{width:18px;height:18px}
.enquiry-panel{padding:29px 27px;background:#101b1b;border:1px solid #2d4545}.enquiry-panel h2{font-size:2.6rem;line-height:1.07;margin-top:17px;margin-bottom:21px}.enquiry-panel>p:not(.eyebrow){font-size:1rem;color:#b2c2c2;line-height:1.8}.enquiry-phone{display:block;font-family:var(--display);font-weight:700;font-size:2.35rem;color:var(--cyan);margin:23px 0 20px;line-height:1.15}.enquiry-email{display:block;font-size:.875rem;margin-top:21px;overflow-wrap:anywhere;color:#e0e8e8}.enquiry-email:hover{color:var(--cyan)}.enquiry-panel .enquiry-note{border-top:1px solid #2c4141;padding-top:20px;margin-top:25px;font-size:.875rem!important}.all-services-link{display:inline-block;margin-top:23px;color:#bdcece;font-size:.9375rem}.all-services-link:hover{color:var(--cyan)}
.service-questions{padding-top:13px}.service-questions .eyebrow{margin-bottom:16px}.service-questions details{border-bottom:1px solid #2a3c3c;padding-block:19px}.service-questions summary{cursor:pointer;font-weight:600;line-height:1.65;font-size:1rem;list-style:none;display:flex;justify-content:space-between;gap:18px}.service-questions summary:after{content:'+';color:var(--cyan);font-size:1.25rem;flex-shrink:0}.service-questions details[open] summary:after{content:'−'}.service-questions summary::-webkit-details-marker{display:none}.service-questions summary:focus-visible{outline:3px solid var(--cyan);outline-offset:5px}.service-questions details p{margin-top:14px;font-size:1rem;line-height:1.85;color:#b5c6c6}
.mechanic-features{display:grid;gap:0;margin-top:10px}.mechanic-features article{padding:22px 0;border-bottom:1px solid #283939}.mechanic-features article:first-child{padding-top:0}.mechanic-features h3{font-size:1.125rem;color:#e9f0f0;margin-bottom:9px}.mechanic-features p{margin-bottom:0}
.related-services{padding-bottom:88px}.related-services .section-heading{margin-bottom:28px}.related-services h2{font-size:3rem;text-transform:uppercase}.related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--border);border-top:1px solid var(--border)}.related-grid .service-card{padding:28px}.related-grid .card-top{margin-bottom:25px}.not-found{padding-block:80px 110px}.not-found h1{font-size:5rem;margin-block:20px;text-transform:uppercase}.not-found>p:not(.eyebrow){max-width:650px;color:#b6c5c5;margin-bottom:30px}
@media(max-width:1200px){.site-nav{gap:22px;margin-right:12px}.services .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.services .service-card:last-child{grid-column:span 2}.service-content-grid{gap:50px;grid-template-columns:minmax(0,1fr) 310px}.about-summary{gap:55px}.service-strip .wrap{font-size:1rem}}
@media(max-width:1000px){.site-nav{gap:15px;margin-right:0}.header-inner{gap:19px}.service-content-grid{grid-template-columns:minmax(0,1fr) 280px;gap:35px}.enquiry-panel{padding:25px 21px}.enquiry-phone{font-size:2.15rem}}
@media(max-width:850px){.header-inner{flex-wrap:wrap;gap:0 20px;padding-top:9px}.header-call{order:2;margin-left:auto}.site-nav{order:3;width:100%;margin:9px 0 0;justify-content:space-between;border-top:1px solid #202c2c;padding:4px 0;gap:16px}.site-nav>a{padding-block:12px}.service-menu-links{top:100%;left:-30px}.services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-strip .wrap{flex-wrap:wrap;justify-content:center;gap:5px 27px;padding-block:13px}.about-summary{grid-template-columns:1fr 1.2fr;gap:35px}.about-summary h2{font-size:3rem}.service-content-grid{grid-template-columns:1fr;gap:45px}.service-enquiry{max-width:none;display:grid;grid-template-columns:1fr}.enquiry-panel{padding:30px}.enquiry-phone{font-size:2.75rem}.enquiry-panel h2 br{display:none}.service-hero h1{font-size:4.2rem}.service-intro{max-width:650px}.related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.related-grid .service-card:last-child:nth-child(3){grid-column:span 2}.service-photo{width:70%;opacity:.55}}
@media(max-width:600px){.header-inner{min-height:78px;padding-top:10px}.site-nav{font-size:.875rem;gap:12px;margin-top:10px}.service-menu-links{min-width:230px;left:-65px;max-width:calc(100vw - 40px)}.service-strip .wrap{display:grid;grid-template-columns:1fr 1fr;gap:11px 15px;padding-block:19px}.service-strip a{border-left:2px solid #007983;padding-left:12px;font-size:1rem;line-height:1.5}.service-strip a:last-child{grid-column:span 2}.services .service-grid{grid-template-columns:1fr}.services .service-card,.services .service-card:last-child{grid-column:auto;padding:26px}.service-card h3{font-size:1.2rem}.about-summary{grid-template-columns:1fr;gap:24px;padding-bottom:62px}.about-summary h2{font-size:2.9rem}.footer-services{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;padding-block:25px;font-size:.875rem}.site-footer .footer>div{font-size:.75rem}.service-hero-inner{padding-top:22px;padding-bottom:45px}.breadcrumbs{font-size:.8125rem;margin-bottom:30px;gap:10px}.service-hero h1{font-size:clamp(2.5rem,10.5vw,3.5rem);line-height:1.07;margin-block:17px 22px}.service-intro{font-size:1rem;line-height:1.85}.service-hero-actions{display:flex;align-items:flex-start;flex-direction:column;gap:21px;margin-top:26px}.service-photo{width:100%;opacity:.4}.service-content-grid{padding-top:45px;padding-bottom:48px}.service-copy-section{margin-bottom:36px}.service-copy-section h2,.service-questions h2{font-size:1.4rem}.enquiry-panel{padding:26px}.enquiry-phone{font-size:2.5rem}.related-services{padding-bottom:55px}.related-services h2{font-size:2.5rem}.related-grid{grid-template-columns:1fr}.related-grid .service-card:last-child:nth-child(3){grid-column:auto}.not-found{padding-block:55px 75px}.not-found h1{font-size:3.5rem}.service-questions summary{font-size:1rem}.home-services-menu{width:100%}}
@media(prefers-reduced-motion:reduce){.service-menu-links{scroll-behavior:auto}}

/* A consistent full-height service hero, with natural photography and soft black fades. */
.hero{min-height:741px}
.service-hero{min-height:740px}
.service-hero-inner{min-height:740px;padding-top:36px;padding-bottom:64px}
.service-hero h1{max-width:690px}
.service-intro{max-width:560px}
.service-hero-actions{max-width:620px}
.service-photo{width:52%;height:100%;opacity:1}
.service-photo img{filter:none}
.service-photo:after{background:linear-gradient(90deg,#050707 0%,rgba(5,7,7,.88) 7%,rgba(5,7,7,.36) 19%,transparent 36%),linear-gradient(0deg,#050707 0%,transparent 14%),linear-gradient(180deg,rgba(5,7,7,.5) 0%,transparent 9%)}
.service-photo-credit{position:absolute;right:24px;bottom:14px;z-index:1;padding:4px 9px;background:rgba(5,7,7,.82);font-size:.75rem;color:#d5dddd;line-height:1.5}
.service-photo-credit a{text-decoration:underline;text-underline-offset:3px}
.service-photo{z-index:0;overflow:hidden;touch-action:pan-y pinch-zoom}
.service-hero-inner{position:relative;z-index:1;pointer-events:none}
.service-hero-inner>*{pointer-events:auto}
.service-photo:after{z-index:1;pointer-events:none}
.service-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity .5s ease,visibility .5s;pointer-events:none}
.service-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.service-slide img{position:absolute;inset:0}
.slideshow-controls{position:absolute;z-index:3;right:24px;bottom:24px;display:flex;align-items:center;gap:5px;padding:5px;background:rgba(5,7,7,.88);border:1px solid #5f7373;color:#fff;opacity:0;pointer-events:none;transform:translateY(6px);transition:opacity .2s ease,transform .2s ease}
.service-photo.is-hovered .slideshow-controls,.service-photo.controls-visible .slideshow-controls,.slideshow-controls:has(:focus-visible){opacity:1;pointer-events:auto;transform:translateY(0)}
@supports not selector(:has(:focus-visible)){.slideshow-controls:focus-within{opacity:1;pointer-events:auto;transform:translateY(0)}}
.slideshow-controls[hidden]{display:none}
.slideshow-controls button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;padding:9px;background:transparent;border:0;color:inherit;font:inherit;font-size:.875rem;cursor:pointer}
.slideshow-controls .slideshow-toggle{min-width:68px;border-right:1px solid #465c5c;margin-right:3px}
.slideshow-controls button:hover{background:#20393a;color:var(--cyan)}
.slideshow-controls button:focus-visible{outline:3px solid var(--cyan);outline-offset:-3px}
.previous-arrow{transform:rotate(180deg)}
.slideshow-count{min-width:45px;text-align:center;font-size:.875rem;font-variant-numeric:tabular-nums}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.services .service-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.services .service-card:last-child,.service-strip a:last-child{grid-column:auto}
.service-strip .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 28px;text-align:center;padding-block:18px}
@media(max-width:850px){
 .hero{min-height:unset}
 .service-hero{display:flex;flex-direction:column;min-height:0}
 .service-hero-inner{min-height:0;padding-top:26px;padding-bottom:45px}
 .service-photo{position:relative;order:2;z-index:0;width:100%;height:auto;aspect-ratio:4/3}
 .service-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
 .service-slide img{object-position:var(--photo-position-mobile,var(--photo-position,50% 50%))}
 .slideshow-controls{right:12px;bottom:12px}
 .services .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .service-photo:after{background:linear-gradient(180deg,#050707 0%,transparent 7%),linear-gradient(0deg,#050707 0%,transparent 12%)}
 .service-photo-credit{right:12px;bottom:10px;max-width:calc(100% - 24px)}
}
@media(max-width:600px){
 .services .service-grid{grid-template-columns:1fr}
 .service-strip .wrap{grid-template-columns:repeat(2,minmax(0,1fr));text-align:left}
}
@media(prefers-reduced-motion:reduce){.service-slide,.slideshow-controls{transition:none}}

/* The About page uses one supplied photograph within the shared hero layout. */
.about-photo img{object-position:var(--photo-position,50% 43%)}
.about-hero .service-hero-inner h1{max-width:650px}

/* Homepage and related-service cards share their full-surface link and floating style. */
.services .service-grid,.related-grid{gap:22px;border:0}
:is(.services,.related-services) .service-card--link{
 position:relative;
 padding:30px;
 border:1px solid #304141;
 border-radius:12px;
 background:linear-gradient(135deg,#151e1e,#0d1313);
 box-shadow:0 12px 25px #0006,inset 0 1px 0 #ffffff08;
 cursor:pointer;
 touch-action:manipulation;
 -webkit-tap-highlight-color:#00c5d426;
 transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
}
:is(.services,.related-services) .service-card--link .card-top{margin-bottom:26px}
:is(.services,.related-services) .service-card--link h3{font-size:1.2rem;transition:color .2s ease}
:is(.services,.related-services) .service-card--link p{margin-bottom:0}
@media(hover:hover) and (pointer:fine){
 :is(.services,.related-services) .service-card--link:hover{transform:translateY(-6px);border-color:var(--cyan);background:#172323;box-shadow:0 20px 34px #0009,0 0 18px #00c5d40a}
 :is(.services,.related-services) .service-card--link:hover h3{color:var(--cyan)}
}
:is(.services,.related-services) .service-card--link:focus-visible{outline:2px solid var(--cyan);outline-offset:5px;border-color:var(--cyan);transform:translateY(-4px);box-shadow:0 18px 30px #0009}
:is(.services,.related-services) .service-card--link:focus-visible h3{color:var(--cyan)}
:is(.services,.related-services) .service-card--link:active{transform:translateY(1px) scale(.985);border-color:var(--cyan);background:#1b2a2a;box-shadow:0 4px 10px #0006}
@media(max-width:600px){
 .services .service-grid,.related-grid{gap:18px}
 :is(.services,.related-services) .service-card--link{padding:26px}
}
@media(prefers-reduced-motion:reduce){
 :is(.services,.related-services) .service-card--link,:is(.services,.related-services) .service-card--link h3{transition:none}
 :is(.services,.related-services) .service-card--link:hover,:is(.services,.related-services) .service-card--link:focus-visible,:is(.services,.related-services) .service-card--link:active{transform:none}
}

.company-registration{font-size:.875rem;line-height:1.7;margin:8px 0;color:#c0cccc}
