/* SGTM v235: source-order CSS bundle. */

/* /assets/ecu-upload-button.css */
.ecu-upload-float{position:fixed;left:22px;bottom:22px;z-index:80;display:inline-flex;align-items:center;gap:10px;padding:13px 18px;border:1px solid rgba(111,190,255,.65);border-radius:999px;background:linear-gradient(135deg,#087AC7,#087AC7);color:#fff!important;text-decoration:none!important;font:800 14px/1.1 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.01em;box-shadow:0 14px 34px rgba(8,122,199,.36),inset 0 1px 0 rgba(255,255,255,.3);transition:transform .2s ease,box-shadow .2s ease,filter .2s ease}.ecu-upload-float::before{content:"↑";display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:rgba(8,27,44,.36);font-size:17px;transform:rotate(45deg)}.ecu-upload-float:hover,.ecu-upload-float:focus-visible{transform:translateY(-3px);filter:brightness(1.08);box-shadow:0 18px 42px rgba(8,122,199,.46),0 0 0 4px rgba(8,122,199,.14)}.ecu-upload-float:focus-visible{outline:2px solid #fff;outline-offset:3px}
@media(max-width:720px){.ecu-upload-float{left:12px;bottom:76px;padding:11px 14px;font-size:12px;box-shadow:0 10px 24px rgba(0,70,140,.4)}.ecu-upload-float::before{width:21px;height:21px;font-size:15px}}
@media(prefers-reduced-motion:reduce){.ecu-upload-float{transition:none}}

/* v218 — Compact ECU upload control; the original link remains one click. */
a.ecu-upload-float {
  box-sizing:border-box; width:52px; height:52px; min-height:52px;
  justify-content:center; gap:0; padding:0; font-size:0;
  border-radius:6px!important; bottom:22px!important;
}
a.ecu-upload-float::before {
  content:"↑"; flex:none; width:30px; height:30px;
  font-size:24px; line-height:1; transform:none; background:transparent;
}
@media(min-width:901px) {
  a.ecu-upload-float:focus-visible {width:auto; gap:9px; padding:0 16px; font-size:14px;}
}
@media(min-width:901px) and (hover:hover) and (pointer:fine) {
  a.ecu-upload-float:hover {width:auto; gap:9px; padding:0 16px; font-size:14px;}
}
@media(max-width:900px) {
  a.ecu-upload-float {left:12px!important; bottom:72px!important; width:50px; height:50px; min-height:50px; padding:0; font-size:0;}
}


/* /assets/real-image-protection.css */
.copyright-photo {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  line-height: 0;
}

.copyright-photo > img {
  display: block;
  width: 100%;
  -webkit-user-drag: none;
  user-select: none;
}

.service-image > .copyright-photo {
  height: 100%;
}

.copyright-photo::after {
  content: "© SG-TRONIC MOTORSPORT · ECU-REMAP.ONE";
  position: absolute;
  right: 12px;
  bottom: 10px;
  z-index: 2;
  padding: 7px 10px;
  color: #fff;
  background: rgba(8,27,44,0.68);
  border-left: 2px solid #35c5f4;
  font: 700 clamp(10px, 1vw, 13px)/1.2 Arial, sans-serif;
  letter-spacing: 0.055em;
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.75);
  pointer-events: none;
}

.copyright-photo[data-embedded-watermark="true"]::after {
  display: none;
}

@media (max-width: 520px) {
  .copyright-photo::after {
    right: 7px;
    bottom: 7px;
    padding: 5px 7px;
    letter-spacing: 0.035em;
  }
}


/* /assets/sgtm-premium-refinement.css */
/* SGTM premium refinement layer — visual only; ranking-sensitive content is unchanged. */
:root{
  --sgtm-shadow-soft:0 18px 48px rgba(8,27,44,.10);
  --sgtm-shadow-dark:0 22px 56px rgba(0,0,0,.24);
  --sgtm-cyan-glow:0 0 0 1px rgba(53,197,244,.18),0 18px 45px rgba(8,122,199,.12);
}

html{scroll-behavior:smooth}
body{overflow-wrap:break-word;text-rendering:optimizeLegibility}
main>section{scroll-margin-top:92px}

main h1,main h2,main h3{text-wrap:balance}
main p{text-wrap:pretty}
main h2+ p,main h3+ p{margin-top:14px}
.section-head{gap:clamp(28px,5vw,72px);align-items:end}
.section-head>p{max-width:620px}

/* Align supporting copy with the first line of the H2, below the eyebrow label. */
.clone-services .section-head{align-items:start}
.clone-services .section-head h2{margin-bottom:0}
.clone-services .section-head>p{margin:33px 0 0;max-width:620px}
.clone-services.plug-play-modules .section-head>p{margin-top:52px}
.online-file-actions{display:flex;flex-wrap:wrap;gap:14px;margin:34px 0 0}
.online-file-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:17px 28px;line-height:1.35;text-align:center}
.clone-services .clone-compatibility-note{margin:34px 0 0}
.clone-local>div:last-child{padding-top:52px}

/* Consistent, compact automotive surfaces. */
.service-grid>a,
[class$="-grid"]>article,
[class$="-grid"]>a,
.worldwide-links>a,
.home-faq details{
  border-radius:2px;
  transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease,background-color .22s ease;
}

.service-grid>a{display:flex;flex-direction:column;min-height:100%;box-shadow:0 10px 30px rgba(8,27,44,.06)}
.service-grid>a>b{margin-top:auto;padding-top:22px}
.service-grid>a:hover,
[class$="-grid"]>a:hover,
.worldwide-links>a:hover{
  transform:translateY(-4px);
  border-color:rgba(53,197,244,.55);
  box-shadow:var(--sgtm-cyan-glow);
}

/* Real workshop imagery retains the sharp SGTM 2px corner treatment. */
main figure,main figure img,.copyright-photo,.copyright-photo>img{border-radius:2px}
main figure{overflow:hidden}
main figure img{object-fit:cover}
.expertise-showcase img,.showcase-grid img{transition:transform .45s ease,filter .35s ease}
.showcase-grid>a:hover img{transform:scale(1.025);filter:contrast(1.04) saturate(1.03)}

/* Buttons share one premium, high-contrast interaction language. */
.btn,.call,.mobile a,.ecu-upload-float{
  border-radius:2px;
  min-height:48px;
  font-weight:800;
  letter-spacing:.015em;
  transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,border-color .2s ease;
}
.btn:hover,.call:hover,.mobile a:hover,.ecu-upload-float:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(53,197,244,.22)}
.btn:focus-visible,.call:focus-visible,nav a:focus-visible,.mobile-menu a:focus-visible,.service-grid a:focus-visible,footer a:focus-visible{
  outline:3px solid #35c5f4;
  outline-offset:4px;
}
.actions{gap:12px;align-items:center}

/* Stronger proof, process and booking moments without extra SEO copy. */
.proof>div{position:relative}
.proof>div::before{content:"";position:absolute;left:0;top:12%;bottom:12%;width:2px;background:linear-gradient(#35c5f4,#35c5f4)}
.cta{position:relative;isolation:isolate;overflow:hidden;box-shadow:var(--sgtm-shadow-dark)}
.cta::before{content:"";position:absolute;z-index:-1;right:-8%;top:-70%;width:420px;height:420px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 70px rgba(53,197,244,.04),0 0 0 140px rgba(53,197,244,.025)}
.home-faq details[open]{border-color:rgba(53,197,244,.45);box-shadow:var(--sgtm-shadow-soft)}


@media(max-width:900px){
  .section-head{align-items:start}
  .clone-services .section-head{gap:18px}
  .clone-services .section-head>p{margin-top:0}
  .clone-services.plug-play-modules .section-head>p{margin-top:0}
  .online-file-actions{margin-top:28px}
  .clone-services .clone-compatibility-note{margin-top:26px}
  .clone-local>div:last-child{padding-top:0}
  .service-grid>a{min-height:0}
  .proof>div::before{top:18%;bottom:18%}
}

@media(max-width:640px){
  main>section{scroll-margin-top:72px}
  main h2+ p,main h3+ p{margin-top:12px}
  .clone-services .section-head{gap:14px}
  .actions{align-items:stretch}
  .actions .btn{width:100%;justify-content:center;text-align:center}
  .service-grid>a:hover,[class$="-grid"]>a:hover,.worldwide-links>a:hover{transform:none}
  .cta::before{right:-60%;top:-35%}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* v45 — Desktop header alignment refinement */
@media (min-width:901px){
  header{
    min-height:82px;
    height:82px;
    gap:22px;
    padding-left:4vw;
    padding-right:4vw;
  }
  header .brand{
    flex:0 0 auto;
    min-width:250px;
  }
  header nav{
    flex:1 1 auto;
    min-width:0;
    margin-left:auto;
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:clamp(14px,1.25vw,24px);
    white-space:nowrap;
  }
  header nav a{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    min-height:44px;
    white-space:nowrap;
    line-height:1.15;
  }
  header .call{
    flex:0 0 auto;
    min-width:180px;
    min-height:56px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:12px 16px;
    line-height:1;
    white-space:nowrap;
    text-align:center;
  }
}
@media (min-width:901px) and (max-width:1180px){
  header{gap:14px;padding-left:2.5vw;padding-right:2.5vw}
  header .brand{min-width:205px}
  header nav{gap:12px;font-size:12px}
  header .call{min-width:150px;padding-left:12px;padding-right:12px}
}

/* v77 responsive header fix — prevent desktop navigation overlap on smaller displays */
@media (min-width:901px) and (max-width:1500px){
  header{
    gap:18px;
    padding-left:3vw;
    padding-right:3vw;
  }
  header .brand{
    min-width:220px;
  }
  header nav{
    gap:clamp(10px,1vw,16px);
    font-size:12px;
  }
  header .call{
    min-width:160px;
    padding-left:14px;
    padding-right:14px;
    font-size:14px;
  }
}

/* Switch to the compact menu before the full desktop navigation can collide. */
@media (max-width:1320px){
  header nav,
  header .call{
    display:none !important;
  }
  header .mobile-menu{
    display:block !important;
    margin-left:auto;
  }
  header{
    min-height:72px;
    height:72px;
    padding-left:4vw;
    padding-right:4vw;
  }
  header .brand{
    flex:0 1 auto;
    min-width:0;
    max-width:calc(100% - 72px);
  }
}

/* Keep the brand clean on very narrow screens without forcing horizontal overflow. */
@media (max-width:520px){
  header{
    gap:10px;
  }
  header .brand b{
    font-size:16px;
    letter-spacing:.06em;
  }
  header .brand small{
    font-size:8px;
    letter-spacing:.22em;
  }
  header .mark{
    width:42px;
    height:42px;
    flex:0 0 42px;
  }
}


/* /assets/sgtm-layout-spacing-v24.css */
/* SG-Tronic Motorsport v24 — site-wide spacing and page-flow refinement.
   Visual/layout only: headings, copy, links, metadata and SEO text are unchanged. */

:root{
  --sgtm-flow-copy-gap:18px;
  --sgtm-flow-subhead-gap:34px;
  --sgtm-faq-title-gap:32px;
}

/* The core stylesheet resets browser margins to zero. Restore deliberate
   paragraph separation in editorial copy without changing card/list layouts. */
main section div:not([class]) > p + p,
main section .key-locksmith-copy > p + p,
main section .diagnostic-vehicle-copy > p + p,
main section.terms-intro > p + p{
  margin-top:var(--sgtm-flow-copy-gap);
}

/* Keep a new H3 visually separate when it introduces a new topic after copy. */
main section div:not([class]) > p + h3,
main section .contact-card > p + h3,
main section .mileage-proof > p + h3{
  margin-top:var(--sgtm-flow-subhead-gap);
  line-height:1.35;
}

/* BMW/MINI immobiliser section: preserve the slightly stronger break requested. */
.immo-bmw > div > p + h3{
  margin-top:38px;
}

/* Give the FAQ heading breathing room before the first divider/question. */
main .faq > h2 + details{
  margin-top:var(--sgtm-faq-title-gap);
}

/* Online-service introduction appeared tighter than the rest of the site. */
main .remap-online-heading > h2 + p{
  margin-top:18px;
}

@media (max-width:900px){
  :root{
    --sgtm-flow-copy-gap:16px;
    --sgtm-flow-subhead-gap:29px;
    --sgtm-faq-title-gap:27px;
  }
  .immo-bmw > div > p + h3{
    margin-top:32px;
  }
}

@media (max-width:580px){
  :root{
    --sgtm-flow-copy-gap:14px;
    --sgtm-flow-subhead-gap:25px;
    --sgtm-faq-title-gap:23px;
  }
  .immo-bmw > div > p + h3{
    margin-top:28px;
  }
}


/* /assets/live-chat-v28.css */
#sgtm-chat-launcher{position:fixed;right:22px;bottom:22px;z-index:99990;border:0;border-radius:999px;background:#081b2c;color:#fff;box-shadow:0 14px 36px rgba(8,27,44,.32);padding:0 18px 0 12px;height:54px;display:flex;align-items:center;gap:10px;cursor:pointer;font:800 13px/1 Arial,sans-serif;letter-spacing:.01em}#sgtm-chat-launcher:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(8,27,44,.4)}#sgtm-chat-launcher .sgtm-chat-icon{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,#087AC7,#35c5f4);font-size:17px}#sgtm-chat-dot{width:9px;height:9px;border-radius:50%;background:#93a3b5;box-shadow:0 0 0 3px rgba(147,163,181,.16)}#sgtm-chat-dot.online{background:#35c5f4;box-shadow:0 0 0 3px rgba(53,197,244,.18)}#sgtm-chat-panel{position:fixed;right:22px;bottom:88px;z-index:99991;width:min(380px,calc(100vw - 28px));height:min(600px,calc(100vh - 120px));background:#fff;border:1px solid #f5f8fc;border-radius:12px;box-shadow:0 26px 70px rgba(8,27,44,.28);display:none;overflow:hidden;font-family:Arial,sans-serif;color:#102d43}#sgtm-chat-panel.open{display:flex;flex-direction:column}.sgtm-chat-head{background:linear-gradient(125deg,#081b2c,#102d43);color:#fff;padding:17px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px}.sgtm-chat-head strong{display:block;font-size:15px}.sgtm-chat-head small{display:block;color:#c5d7e5;margin-top:4px}.sgtm-chat-close{border:0;background:transparent;color:#fff;font-size:24px;cursor:pointer;padding:2px 6px}.sgtm-chat-body{flex:1;overflow:auto;padding:16px;background:#f5f8fc}.sgtm-chat-welcome{background:#fff;border:1px solid #f5f8fc;border-left:3px solid #35c5f4;padding:12px 13px;border-radius:8px;margin-bottom:12px;font-size:13px;line-height:1.5}.sgtm-chat-msg{max-width:84%;margin:8px 0;padding:10px 12px;border-radius:10px;font-size:13px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.sgtm-chat-msg.customer{margin-left:auto;background:#087AC7;color:#fff}.sgtm-chat-msg.admin{background:#fff;border:1px solid #f5f8fc}.sgtm-chat-msg small{display:block;margin-top:5px;font-size:9px;opacity:.65}.sgtm-chat-start{padding:14px;background:#fff;display:grid;gap:9px}.sgtm-chat-start input,.sgtm-chat-start textarea,.sgtm-chat-compose textarea{width:100%;box-sizing:border-box;border:1px solid #e8f4fa;border-radius:6px;padding:10px 11px;font:13px Arial,sans-serif;color:#102d43;background:#fff}.sgtm-chat-start textarea{min-height:82px;resize:vertical}.sgtm-chat-start button,.sgtm-chat-compose button{border:0;border-radius:5px;background:#35c5f4;color:#102d43;font-weight:900;padding:11px 14px;cursor:pointer}.sgtm-chat-hp{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}.sgtm-chat-compose{padding:10px;border-top:1px solid #f5f8fc;background:#fff;display:flex;gap:8px}.sgtm-chat-compose textarea{min-height:44px;max-height:90px;resize:none}.sgtm-chat-status{padding:7px 14px;background:#f5f8fc;color:#465d70;font-size:11px;border-bottom:1px solid #f5f8fc}.sgtm-chat-error{color:#a92323;font-size:11px;margin:0}.back-to-top{right:22px!important;bottom:92px!important}@media(max-width:700px){#sgtm-chat-launcher{right:12px;bottom:68px;height:50px;padding-right:14px}#sgtm-chat-panel{right:8px;bottom:124px;width:calc(100vw - 16px);height:min(560px,calc(100vh - 138px));border-radius:10px}.back-to-top{right:14px!important;bottom:128px!important}.ecu-upload-float{bottom:128px!important;left:12px!important;right:auto!important}}

.sgtm-chat-msg.auto{background:#f5f8fc;border:1px solid #e8f4fa;border-left:3px solid #35c5f4;color:#102d43}.sgtm-chat-auto-label{display:block;margin-bottom:5px;color:#076aae;font-size:10px;letter-spacing:.04em;text-transform:uppercase}.bubble.auto{background:#102d43;border:1px dashed #35c5f4;margin-left:auto}.bubble .auto-label{display:block;margin-bottom:5px;color:#9ee7ff;font-size:10px;letter-spacing:.05em;text-transform:uppercase}

/* v218 — Compact chat launcher; click opens the existing chat panel. */
button#sgtm-chat-launcher {
  box-sizing:border-box; width:52px; height:52px; padding:0;
  justify-content:center; gap:0; border-radius:6px!important;
}
button#sgtm-chat-launcher > span:not(.sgtm-chat-icon) {display:none;}
button#sgtm-chat-launcher .sgtm-chat-icon {flex:none; width:34px; height:34px;}
button#sgtm-chat-launcher #sgtm-chat-dot {position:absolute; top:5px; right:5px; width:7px; height:7px;}
button#sgtm-chat-launcher:focus-visible {outline:3px solid #087AC7; outline-offset:4px;}
@media(min-width:901px) {
  button#sgtm-chat-launcher:focus-visible {width:auto; gap:10px; padding:0 20px 0 10px;}
  button#sgtm-chat-launcher:focus-visible > span:not(.sgtm-chat-icon) {display:inline;}
}
@media(min-width:901px) and (hover:hover) and (pointer:fine) {
  button#sgtm-chat-launcher:hover {width:auto; gap:10px; padding:0 20px 0 10px;}
  button#sgtm-chat-launcher:hover > span:not(.sgtm-chat-icon) {display:inline;}
}
@media(max-width:900px) {
  button#sgtm-chat-launcher {right:12px; bottom:72px; width:50px; height:50px; padding:0; gap:0;}
  #sgtm-chat-panel {right:8px; bottom:136px; width:min(380px,calc(100vw - 16px)); height:min(560px,calc(100vh - 152px)); height:min(560px,calc(100dvh - 152px));}
  a.back-to-top {right:14px!important; bottom:136px!important;}
}
@media(prefers-reduced-motion:reduce) {button#sgtm-chat-launcher {transition:none;}}


/* /assets/box-title-alignment-v77.css */
/* SG-Tronic Motorsport — responsive box/title alignment fix
   Keeps card headings inside their own boxes and prevents text/image overlap. */

/* All common grid/card children must be allowed to shrink inside CSS Grid. */
.service-grid > a,
.related > a,
.worldwide-links > a,
.mode-grid > *,
.level-grid > *,
.local-seo > div > article,
.care-service-grid > article,
.care-area-grid > article,
.care-related-links > a,
.booking-modes > div:last-child > article,
.contact-options > article,
.work-preview-card,
.gallery-card,
.case-summary-card,
.case-media-card {
  min-width: 0;
  box-sizing: border-box;
}

/* Long vehicle/module names must wrap instead of leaving the card. */
.service-grid h3,
.related h3,
.worldwide-links h3,
.mode-grid h3,
.level-grid h3,
.local-seo h3,
.care-service-grid h3,
.care-area-grid h3,
.care-related-links h3,
.booking-modes h3,
.contact-options h3,
.work-preview-card h3,
.gallery-card h3,
.case-summary-card strong,
.case-media-card h3 {
  max-width: 100%;
  overflow-wrap: break-word;
  word-break: normal;
  hyphens: auto;
}

/* Homepage Our Work cards: image is one clean area, title/copy is a separate panel.
   This removes the title-over-photo problem visible on smaller laptop displays. */
.work-preview-card {
  display: flex !important;
  flex-direction: column;
  min-height: 100%;
  overflow: hidden;
  background: #081b2c;
}
.work-preview-card::after {
  display: none !important;
}
.work-preview-card > img {
  position: relative;
  z-index: 0;
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.work-preview-card .work-copy {
  position: static !important;
  inset: auto !important;
  z-index: 1;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
  padding: 18px 20px 20px;
  box-sizing: border-box;
  background: linear-gradient(180deg,#081b2c 0%,#081b2c 100%);
}
.work-preview-card .work-tag {
  margin: 0 0 10px;
}
.work-preview-card h3 {
  width: 100%;
  min-height: 2.45em;
  margin: 0 0 9px;
  line-height: 1.22;
}
.work-preview-card p {
  width: 100%;
  margin: 0;
}

/* Full Our Work gallery: align every title/copy area consistently. */
.gallery-card {
  display: flex !important;
  flex-direction: column;
  overflow: hidden;
}
.gallery-card > img {
  flex: 0 0 auto;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
}
.gallery-card .gallery-copy {
  position: static !important;
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  width: 100%;
  box-sizing: border-box;
}
.gallery-card h3 {
  min-height: 2.4em;
}
.gallery-card p {
  flex: 1 1 auto;
}
.gallery-card .view-project {
  align-self: flex-start;
}

/* Consistent title rows in common multi-column box grids. */
@media (min-width: 901px) {
  .worldwide-links h3,
  .local-seo > div h3,
  .care-area-grid h3,
  .care-related-links h3,
  .booking-modes > div:last-child h3,
  .contact-options h3 {
    min-height: 2.45em;
  }
}

/* At medium/small widths let titles use their natural height. */
@media (max-width: 980px) {
  .work-preview-card h3,
  .gallery-card h3,
  .worldwide-links h3,
  .local-seo > div h3,
  .care-area-grid h3,
  .care-related-links h3,
  .booking-modes > div:last-child h3,
  .contact-options h3 {
    min-height: 0;
  }
}

@media (max-width: 650px) {
  .work-preview-card .work-copy {
    padding: 16px;
  }
}


/* /assets/title-edge-spacing-v107.css */
/* v107 — Global title/content edge-spacing consistency
   Standardises horizontal safe area for every top-level page section
   without changing the full-width section backgrounds. */
main > section {
  padding-left: 7vw !important;
  padding-right: 7vw !important;
  box-sizing: border-box;
}

/* Prevent large display headings from touching or clipping against the viewport. */
main > section h1,
main > section h2 {
  overflow-wrap: anywhere;
}

/* Keep common title blocks consistent when page-specific styles remove margins. */
main > section > .section-head,
main > section > .clone-postal-intro,
main > section > .case-gallery-intro,
main > section > .case-video-intro,
main > section > .enquiry-form-intro,
main > section > .remap-online-heading,
main > section > .sgtm-calc-head {
  box-sizing: border-box;
}

/* Tablet/mobile follows the site's established 6vw page gutter. */
@media (max-width: 900px) {
  main > section {
    padding-left: 6vw !important;
    padding-right: 6vw !important;
  }
}

/* Small phones need a practical minimum gutter even on narrow screens. */
@media (max-width: 520px) {
  main > section {
    padding-left: max(20px, 5vw) !important;
    padding-right: max(20px, 5vw) !important;
  }
}


/* /assets/section-heading-alignment-v111.css */
/* v111 — Global heading alignment for generic Symptoms sections.
   The original layout put the blue label on the far left and H2 on the
   opposite side, which made headings look disconnected. */
main > section.symptoms > div:first-child {
  display: block !important;
  max-width: 920px;
}

main > section.symptoms > div:first-child .label {
  margin: 0 0 14px !important;
}

main > section.symptoms > div:first-child h2 {
  margin: 0 !important;
  max-width: 920px !important;
  text-align: left !important;
}

main > section.symptoms .symptom-grid {
  margin-top: 32px !important;
}

/* Keep the card rhythm compact and consistent on smaller screens. */
@media (max-width: 900px) {
  main > section.symptoms .symptom-grid {
    margin-top: 26px !important;
  }
}

@media (max-width: 580px) {
  main > section.symptoms > div:first-child .label {
    margin-bottom: 10px !important;
  }
  main > section.symptoms .symptom-grid {
    margin-top: 22px !important;
  }
}


/* /assets/faq-spacing-v112.css */
/* v112 — Global FAQ section spacing refinement.
   Reduces oversized empty bands above FAQ headings and keeps the
   heading-to-question gap consistent across service pages. */

main > section.faq,
main > section.home-faq {
  padding-top: 54px !important;
  padding-bottom: 72px !important;
}

/* Keep eyebrow label, H2 and first question visually connected. */
main > section.faq > .label,
main > section.home-faq > .label {
  margin-bottom: 12px !important;
}

main > section.faq > h2,
main > section.home-faq > h2 {
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}

/* Override the older FAQ title-gap rule so it does not double the spacing. */
main > section.faq > h2 + details,
main > section.home-faq > h2 + details,
main > section.home-faq > h2 + div {
  margin-top: 0 !important;
}

/* Generic FAQ questions keep a clean, compact rhythm. */
main > section.faq > details + details {
  margin-top: 10px;
}

@media (max-width: 900px) {
  main > section.faq,
  main > section.home-faq {
    padding-top: 46px !important;
    padding-bottom: 58px !important;
  }

  main > section.faq > h2,
  main > section.home-faq > h2 {
    margin-bottom: 22px !important;
  }
}

@media (max-width: 580px) {
  main > section.faq,
  main > section.home-faq {
    padding-top: 38px !important;
    padding-bottom: 48px !important;
  }

  main > section.faq > .label,
  main > section.home-faq > .label {
    margin-bottom: 10px !important;
  }

  main > section.faq > h2,
  main > section.home-faq > h2 {
    margin-bottom: 18px !important;
  }
}


/* /assets/interaction-stability-v114.css */
/* v114 — mobile menu link navigation fix */
a, button, summary {
  touch-action: manipulation;
}

details.mobile-menu:not([open]) > .mobile-menu-panel {
  display:none !important;
  pointer-events:none !important;
}

details.mobile-menu[open] > .mobile-menu-panel {
  display:block !important;
  pointer-events:auto !important;
}

/* Make every menu link a full, reliable click target. */
.mobile-menu-panel a {
  display:block !important;
  position:relative !important;
  z-index:2 !important;
  pointer-events:auto !important;
  cursor:pointer !important;
}

/* Closed chat must not sit over the navigation. */
#sgtm-chat-panel:not(.open) {
  pointer-events:none !important;
}
#sgtm-chat-panel.open {
  pointer-events:auto !important;
}

/* Ensure floating controls stay below the open slide-out menu. */
details.mobile-menu[open] {
  position:relative;
  z-index:1000 !important;
}
details.mobile-menu[open] > .mobile-menu-panel {
  z-index:1001 !important;
}
.back-to-top,
#sgtm-chat-launcher,
#sgtm-chat-panel,
.ecu-upload-float {
  z-index:90;
}


/* /assets/navigation-v125.css */
/* SG-Tronic Motorsport — Navigation v122
   Fixes brand contrast + navigation visibility at browser zoom / narrower desktops. */

/* ---------- Header / brand ---------- */
.sgtm-header{
  position:relative;
  z-index:500;
  width:100%;
  box-sizing:border-box;
  display:flex!important;
  align-items:center!important;
  gap:18px!important;
  min-height:82px;
  padding:14px clamp(18px,3vw,48px)!important;
  background:#081b2c!important;
  border-bottom:1px solid rgba(8,122,199,.20);
  box-shadow:0 10px 28px rgba(0,0,0,.18);
}

.sgtm-header .brand{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:14px!important;
  min-width:max-content;
  text-decoration:none!important;
  opacity:1!important;
  visibility:visible!important;
}

.sgtm-header .brand .mark{
  display:grid!important;
  place-items:center!important;
  width:66px!important;
  height:66px!important;
  min-width:66px!important;
  border-radius:4px!important;
  background:linear-gradient(155deg,#087AC7,#35c5f4)!important;
  color:#fff!important;
  font-size:1.8rem!important;
  font-weight:900!important;
  line-height:1!important;
  letter-spacing:-.03em!important;
  box-shadow:0 8px 20px rgba(8,122,199,.22);
}

.sgtm-header .brand > span:last-child{
  display:grid!important;
  gap:4px!important;
}

.sgtm-header .brand b{
  color:#ffffff!important;
  font-size:1.12rem!important;
  line-height:1!important;
  letter-spacing:.08em!important;
  font-weight:900!important;
  opacity:1!important;
}

.sgtm-header .brand small{
  color:#35c5f4!important;
  font-size:.71rem!important;
  line-height:1!important;
  letter-spacing:.28em!important;
  font-weight:850!important;
  opacity:1!important;
}

/* ---------- Desktop navigation ---------- */
.sgtm-desktop-nav{
  display:flex!important;
  align-items:center;
  justify-content:center;
  gap:4px!important;
  flex:1 1 auto;
  min-width:0;
}

.sgtm-desktop-nav>a,
.sgtm-desktop-nav .nav-drop-trigger{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 11px!important;
  border:0;
  border-radius:10px;
  background:transparent;
  color:#ffffff!important;
  font:inherit;
  font-size:.9rem!important;
  font-weight:750!important;
  line-height:1;
  text-decoration:none!important;
  white-space:nowrap;
  cursor:pointer;
}

.sgtm-desktop-nav>a:hover,
.sgtm-desktop-nav>a:focus-visible,
.sgtm-desktop-nav .nav-drop-trigger:hover,
.sgtm-desktop-nav .nav-drop-trigger:focus-visible,
.sgtm-desktop-nav .nav-dropdown.is-open>.nav-drop-trigger{
  background:rgba(8,122,199,.14)!important;
  color:#fff!important;
}

.sgtm-desktop-nav .nav-book{
  background:linear-gradient(135deg,#35c5f4,#35c5f4)!important;
  color:#102d43!important;
  padding:0 18px!important;
  font-weight:850!important;
}

/* ---------- Dropdowns ---------- */
.nav-dropdown{position:relative!important;display:flex!important;align-items:center!important}
.nav-drop-trigger span{margin-left:6px}
.nav-drop-menu{
  position:absolute!important;
  top:calc(100% + 12px)!important;
  left:50%!important;
  width:min(430px,88vw)!important;
  padding:10px!important;
  border:1px solid rgba(104,174,230,.22)!important;
  border-radius:16px!important;
  background:#081b2c!important;
  box-shadow:0 20px 55px rgba(0,0,0,.42)!important;
  transform:translate(-50%,8px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease,transform .16s ease,visibility .16s ease;
}
.nav-dropdown:hover>.nav-drop-menu,
.nav-dropdown:focus-within>.nav-drop-menu,
.nav-dropdown.is-open>.nav-drop-menu{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate(-50%,0)!important;
}
.nav-drop-menu a{
  display:grid!important;
  gap:4px!important;
  padding:12px 13px!important;
  border-radius:11px!important;
  text-decoration:none!important;
}
.nav-drop-menu strong{color:#ffffff!important}
.nav-drop-menu small{color:#8faec7!important}

/* ---------- Phone ---------- */
.sgtm-header .call{
  flex:0 0 auto!important;
  display:grid!important;
  gap:2px!important;
  min-width:146px;
  padding:9px 15px!important;
  border:1px solid rgba(53,197,244,.42)!important;
  border-radius:12px!important;
  background:rgba(8,122,199,.13)!important;
  color:#fff!important;
  text-decoration:none!important;
  text-align:center!important;
}
.sgtm-header .call .call-label{
  color:#35c5f4!important;
  font-size:.66rem!important;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-weight:850!important;
}
.sgtm-header .call span:last-child{
  color:#fff!important;
  font-size:.9rem!important;
  font-weight:850!important;
}

/* ---------- Mobile / zoom menu ---------- */
.sgtm-header .mobile-menu{
  position:relative!important;
  flex:0 0 auto!important;
  margin-left:auto!important;
}

.sgtm-header .mobile-menu > summary{
  display:flex!important;
  flex-direction:column!important;
  align-items:center!important;
  justify-content:center!important;
  width:52px!important;
  height:48px!important;
  padding:7px!important;
  margin:0!important;
  border:1px solid rgba(53,197,244,.30)!important;
  border-radius:11px!important;
  background:rgba(18,77,119,.16)!important;
  list-style:none!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
}

.sgtm-header .mobile-menu > summary::-webkit-details-marker{display:none!important}

.sgtm-header .mobile-menu > summary span{
  display:block!important;
  width:25px!important;
  height:2px!important;
  margin:3px 0!important;
  border:0!important;
  border-radius:2px!important;
  background:#f5f8fc!important;
  opacity:1!important;
  transform:none;
}

.sgtm-header .mobile-menu > summary b{
  display:none!important;
}

.sgtm-header .mobile-menu[open] > summary{
  background:rgba(53,197,244,.22)!important;
  border-color:rgba(53,197,244,.62)!important;
}

.sgtm-header .mobile-menu-panel{
  position:absolute!important;
  top:calc(100% + 12px)!important;
  right:0!important;
  left:auto!important;
  width:min(390px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 120px)!important;
  overflow:auto!important;
  padding:12px!important;
  border:1px solid rgba(99,178,233,.20)!important;
  border-radius:16px!important;
  background:#081b2c!important;
  box-shadow:0 22px 55px rgba(0,0,0,.42)!important;
  z-index:1200!important;
}

.mobile-menu-panel .mobile-nav-section{
  display:grid!important;
  gap:4px!important;
  padding:8px 0 12px!important;
}
.mobile-menu-panel .mobile-nav-section+.mobile-nav-section{
  border-top:1px solid rgba(115,170,211,.16)!important;
  padding-top:14px!important;
}
.mobile-menu-panel .mobile-nav-label{
  padding:4px 14px 7px!important;
  color:#35c5f4!important;
  font-size:.68rem!important;
  font-weight:850!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.mobile-menu-panel .mobile-nav-section a{
  display:flex!important;
  align-items:center!important;
  min-height:42px!important;
  padding:9px 14px!important;
  border-radius:9px!important;
  color:#ffffff!important;
  text-decoration:none!important;
}

/* Normal desktop: full navigation */
@media(min-width:1181px){
  .sgtm-desktop-nav{display:flex!important}
  .sgtm-header .mobile-menu{display:none!important}
}

/* Browser zoom / compact desktop:
   switch to a clearly visible hamburger before the nav becomes cramped. */
@media(max-width:1180px){
  .sgtm-desktop-nav{display:none!important}
  .sgtm-header .mobile-menu{display:block!important}
  .sgtm-header .brand{margin-right:auto!important}
}

/* At stronger zoom/smaller width retain logo + menu + compact call button. */
@media(max-width:760px){
  .sgtm-header{
    min-height:74px!important;
    gap:10px!important;
    padding:10px 14px!important;
  }
  .sgtm-header .brand{gap:10px!important}
  .sgtm-header .brand .mark{
    width:54px!important;
    height:54px!important;
    min-width:54px!important;
    font-size:1.48rem!important;
  }
  .sgtm-header .brand b{font-size:.94rem!important}
  .sgtm-header .brand small{font-size:.61rem!important;letter-spacing:.21em!important}
  .sgtm-header .call{
    min-width:0!important;
    padding:8px 10px!important;
  }
  .sgtm-header .call .call-label{display:none!important}
  .sgtm-header .call span:last-child{font-size:.78rem!important}
}

/* Very small screens: logo + hamburger only, phone remains available inside content/mobile bar. */
@media(max-width:500px){
  .sgtm-header .call{display:none!important}
  .sgtm-header .brand b{font-size:.86rem!important}
  .sgtm-header .brand small{font-size:.56rem!important}
}

@media(max-width:380px){
  .sgtm-header .brand b,
  .sgtm-header .brand small{display:none!important}
}

/* v125 consolidated sticky-navigation corrections */

/* Sticky header */
.sgtm-header{
  position:sticky!important;
  top:0!important;
  z-index:1600!important;
  width:100%!important;
  box-sizing:border-box!important;
  background:rgba(8,27,44,.97)!important;
  box-shadow:0 10px 30px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(15px);
  -webkit-backdrop-filter:blur(15px);
  transition:padding .2s ease,background .2s ease,box-shadow .2s ease!important;
}
.sgtm-header.is-scrolled{
  padding-top:8px!important;
  padding-bottom:8px!important;
  background:rgba(8,27,44,.99)!important;
  box-shadow:0 12px 34px rgba(0,0,0,.30)!important;
}
.sgtm-header.is-scrolled .brand .mark{
  width:54px!important;
  height:54px!important;
  min-width:54px!important;
}

/* CRITICAL: dropdowns must be hidden until opened/hovered. */
.sgtm-header .nav-dropdown{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
}
.sgtm-header .nav-drop-menu{
  position:absolute!important;
  top:calc(100% + 12px)!important;
  left:50%!important;
  width:min(430px,88vw)!important;
  padding:10px!important;
  margin:0!important;
  border:1px solid rgba(104,174,230,.22)!important;
  border-radius:16px!important;
  background:#081b2c!important;
  box-shadow:0 20px 55px rgba(0,0,0,.42)!important;
  transform:translate(-50%,8px)!important;
  opacity:0!important;
  visibility:hidden!important;
  pointer-events:none!important;
  z-index:1700!important;
}
.sgtm-header .nav-dropdown:hover > .nav-drop-menu,
.sgtm-header .nav-dropdown:focus-within > .nav-drop-menu,
.sgtm-header .nav-dropdown.is-open > .nav-drop-menu{
  opacity:1!important;
  visibility:visible!important;
  pointer-events:auto!important;
  transform:translate(-50%,0)!important;
}

/* Keep all dropdown items inside the dropdown panel. */
.sgtm-header .nav-drop-menu a{
  position:relative!important;
  display:grid!important;
  width:auto!important;
  min-width:0!important;
  gap:4px!important;
  padding:12px 13px!important;
  margin:0!important;
  border-radius:11px!important;
  color:#fff!important;
  background:transparent!important;
  text-decoration:none!important;
  white-space:normal!important;
}
.sgtm-header .nav-drop-menu a:hover,
.sgtm-header .nav-drop-menu a:focus-visible{
  background:rgba(8,122,199,.14)!important;
}
.sgtm-header .nav-drop-menu strong{
  display:block!important;
  color:#ffffff!important;
  font-size:.94rem!important;
  line-height:1.2!important;
}
.sgtm-header .nav-drop-menu small{
  display:block!important;
  color:#8faec7!important;
  font-size:.78rem!important;
  line-height:1.3!important;
}

/* Desktop main bar: never allow items to overlap logo/call. */
.sgtm-desktop-nav{
  overflow:visible!important;
}
.sgtm-desktop-nav > a,
.sgtm-desktop-nav > .nav-dropdown{
  flex:0 0 auto!important;
}

/* Full navigation only where there is enough width. */
@media(min-width:1281px){
  .sgtm-desktop-nav{
    display:flex!important;
    opacity:1!important;
    visibility:visible!important;
  }
  .sgtm-header .mobile-menu{
    display:none!important;
  }
}

/* Switch earlier to hamburger rather than squeezing/overlapping. */
@media(max-width:1280px){
  .sgtm-desktop-nav{
    display:none!important;
  }
  .sgtm-header .mobile-menu{
    display:block!important;
    margin-left:auto!important;
  }
  .sgtm-header .brand{
    margin-right:auto!important;
  }
}

/* Mobile panel stays hidden unless details is open. */
.sgtm-header details.mobile-menu:not([open]) > .mobile-menu-panel{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
.sgtm-header details.mobile-menu[open] > .mobile-menu-panel{
  display:block!important;
  visibility:visible!important;
  pointer-events:auto!important;
}

/* Keep the panel attached to the hamburger, above page content. */
.sgtm-header .mobile-menu{
  position:relative!important;
}
.sgtm-header .mobile-menu-panel{
  position:absolute!important;
  right:0!important;
  left:auto!important;
  top:calc(100% + 12px)!important;
  width:min(390px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 110px)!important;
  overflow:auto!important;
  z-index:1800!important;
}

/* Avoid page anchors being hidden under sticky header. */
html{
  scroll-padding-top:110px!important;
}

@media(max-width:760px){
  .sgtm-header{
    gap:10px!important;
    padding:9px 14px!important;
  }
}
@media(max-width:500px){
  html{scroll-padding-top:86px!important}
}


/* /assets/global-corner-radius-v158.css */
/* V158 — SG-Tronic global corner-radius consistency
   Main visual rule: cards, image panels and buttons stay between 3px and 6px.
   Pills, circular icons and round navigation controls are intentionally excluded. */

/* Buttons */
.btn,
button:not(.nav-drop-trigger),
.ecu-upload-float,
.mobile a{
  border-radius:4px!important;
}

/* Main content cards / boxes */
.service-grid > a,
.related > a,
.symptom-grid article,
.steps article,
.mode-grid article,
.trust-panel article,
.benefits,
.area-card,
.region-card,
.coverage-check,
.remap-online-services,
.remap-online-grid a,
.remap-online-note,
.faq details,
.intl143-summary,
.intl143-service-grid article,
.intl143-feature-image,
.intl143-postal-grid article,
.intl143-postal-note,
.intl143-coverage-grid article,
.intl143-process-grid article,
.intl143-trust-grid article,
.intl143-related a,
.sa151-route-grid article,
.sa151-area-card,
.sa151-related-grid a,
.sa151-faq details,
.sa151-overview-media,
.sa151-hero-media,
.ecu-security-cta,
.ecu-security-notes article{
  border-radius:5px!important;
}

/* Images and image containers */
figure,
.service-image,
.vehicle-photo,
.intl143-hero-photo,
.intl143-feature-image,
.intl-postal-image,
.intl-tool-visual,
.sa151-hero-media,
.sa151-overview-media{
  border-radius:5px!important;
  overflow:hidden;
}

figure img,
.service-image img,
.vehicle-photo img,
.intl143-feature-image img,
.sa151-hero-media img,
.sa151-overview-media img{
  border-radius:4px!important;
}

/* Generic bordered panels used across older pages */
.panel,
.card,
.box,
.content-card,
.info-card,
.service-card,
.feature-card,
.price-card,
.notice,
.callout{
  border-radius:5px!important;
}

/* Keep special pill / circular UI intentionally round */
.tag,
.badge,
.pill,
.chip,
.trust span,
.town-list span,
.sa151-town-list span,
.intl143-points span,
.back-to-top,
.mark{
  border-radius:999px!important;
}

/* Navigation dropdown panels should match the site, not look pill-shaped */
.nav-drop-menu,
.mobile-menu-panel{
  border-radius:5px!important;
}

@media(max-width:680px){
  .btn,
  button:not(.nav-drop-trigger),
  .ecu-upload-float,
  .mobile a{
    border-radius:4px!important;
  }

  .service-grid > a,
  .related > a,
  .symptom-grid article,
  .steps article,
  .mode-grid article,
  .trust-panel article,
  .faq details,
  .remap-online-services,
  .remap-online-grid a,
  .sa151-area-card,
  .sa151-route-grid article,
  .sa151-related-grid a,
  .sa151-faq details{
    border-radius:5px!important;
  }
}


/* /assets/faq-compact-v163.css */
/* V163 — compact organised FAQ redesign across the complete SG-Tronic website */

section.faq-v163{
  max-width:none!important;
  margin:0!important;
  padding:58px 7vw 62px!important;
  background:
    linear-gradient(180deg,rgba(245,248,252,.98),rgba(245,248,252,.98))!important;
  color:#102d43!important;
  border-top:1px solid #f5f8fc!important;
  border-bottom:1px solid #f5f8fc!important;
  box-sizing:border-box!important;

  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  column-gap:14px!important;
  row-gap:12px!important;
}

/* Heading spans the FAQ width */
section.faq-v163 > .label,
section.faq-v163 > h2{
  grid-column:1 / -1!important;
}

section.faq-v163 > .label{
  margin:0 0 2px!important;
  color:#35c5f4!important;
  font-size:.72rem!important;
  font-weight:850!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}

section.faq-v163 > h2{
  max-width:900px!important;
  margin:0 0 18px!important;
  color:#102d43!important;
  font-size:clamp(2rem,3.2vw,3.25rem)!important;
  font-weight:400!important;
  letter-spacing:-.04em!important;
  line-height:1.08!important;
}

/* Homepage FAQ has an existing wrapper around the details */
section.faq-v163 > .faq-v163-grid,
section.faq-v163 > div:has(> details){
  grid-column:1 / -1!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:12px 14px!important;
  margin:0!important;
}

/* Compact FAQ cards */
section.faq-v163 details{
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  background:#fff!important;
  border:1px solid #f5f8fc!important;
  border-radius:5px!important;
  box-shadow:0 7px 18px rgba(8,27,44,.045)!important;
  overflow:hidden!important;
  align-self:start!important;
}

/* Remove legacy top-only FAQ borders */
section.faq-v163 details + details{
  margin-top:0!important;
}

section.faq-v163 summary{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:62px!important;
  margin:0!important;
  padding:16px 52px 16px 18px!important;
  color:#102d43!important;
  background:#fff!important;
  cursor:pointer!important;
  list-style:none!important;
  font-size:.98rem!important;
  font-weight:750!important;
  line-height:1.4!important;
  transition:background .18s ease,color .18s ease!important;
}

section.faq-v163 summary::-webkit-details-marker{
  display:none!important;
}

/* Small square + icon */
section.faq-v163 summary::after{
  content:"+"!important;
  position:absolute!important;
  right:16px!important;
  top:50%!important;
  width:27px!important;
  height:27px!important;
  transform:translateY(-50%)!important;
  display:grid!important;
  place-items:center!important;
  border:1px solid #e8f4fa!important;
  border-radius:4px!important;
  color:#076aae!important;
  background:#f5f8fc!important;
  font-size:1.05rem!important;
  font-weight:700!important;
  line-height:1!important;
}

section.faq-v163 details[open] summary{
  color:#076aae!important;
  background:#f5f8fc!important;
  border-bottom:1px solid #f5f8fc!important;
}

section.faq-v163 details[open] summary::after{
  content:"−"!important;
  color:#fff!important;
  background:#087AC7!important;
  border-color:#087AC7!important;
}

section.faq-v163 details > p{
  margin:0!important;
  padding:15px 18px 18px!important;
  color:#465d70!important;
  background:#fff!important;
  font-size:.91rem!important;
  line-height:1.65!important;
}

/* Some FAQ answers contain extra elements */
section.faq-v163 details > :not(summary):not(p){
  margin-left:18px!important;
  margin-right:18px!important;
}

/* Hover is deliberately subtle */
@media(hover:hover){
  section.faq-v163 details:hover{
    border-color:#e8f4fa!important;
    box-shadow:0 9px 22px rgba(8,27,44,.07)!important;
  }
  section.faq-v163 summary:hover{
    background:#f5f8fc!important;
  }
}

/* Tablet/mobile */
@media(max-width:820px){
  section.faq-v163{
    grid-template-columns:1fr!important;
    padding:48px 6vw 52px!important;
  }

  section.faq-v163 > .label,
  section.faq-v163 > h2{
    grid-column:1!important;
  }

  section.faq-v163 > .faq-v163-grid,
  section.faq-v163 > div:has(> details){
    grid-template-columns:1fr!important;
  }

  section.faq-v163 > details{
    grid-column:1!important;
  }
}

@media(max-width:560px){
  section.faq-v163{
    padding-top:42px!important;
    padding-bottom:44px!important;
    row-gap:9px!important;
  }

  section.faq-v163 > h2{
    margin-bottom:14px!important;
    font-size:clamp(1.85rem,9vw,2.5rem)!important;
  }

  section.faq-v163 summary{
    min-height:56px!important;
    padding:14px 46px 14px 15px!important;
    font-size:.94rem!important;
  }

  section.faq-v163 summary::after{
    right:13px!important;
    width:25px!important;
    height:25px!important;
  }

  section.faq-v163 details > p{
    padding:13px 15px 16px!important;
    font-size:.89rem!important;
  }
}


/* /assets/header-sg-logo-spacing-v164.css */
/* V164 — give the SG letters more breathing room inside the blue header mark */

/* Desktop header */
.sgtm-header .brand .mark{
  width:78px!important;
  min-width:78px!important;
  height:66px!important;
  padding-left:10px!important;
  padding-right:10px!important;
  box-sizing:border-box!important;
  place-items:center!important;
}

/* Compact sticky header */
.sgtm-header.is-scrolled .brand .mark{
  width:64px!important;
  min-width:64px!important;
  height:54px!important;
  padding-left:8px!important;
  padding-right:8px!important;
}

/* Tablet / mobile header */
@media(max-width:760px){
  .sgtm-header .brand .mark{
    width:62px!important;
    min-width:62px!important;
    height:54px!important;
    padding-left:8px!important;
    padding-right:8px!important;
  }
}

@media(max-width:380px){
  .sgtm-header .brand .mark{
    width:58px!important;
    min-width:58px!important;
    padding-left:7px!important;
    padding-right:7px!important;
  }
}


/* /assets/responsive-qa-v165.css */
/* V165 — Responsive QA pass
   Common desktop/laptop/tablet/mobile protection at 1440, 1024, 768, 430 and 375px.
   Loaded last so it safely corrects legacy page-specific sizing where required. */

/* Global overflow and flexible media safety */
html{
  width:100%;
  max-width:100%;
  overflow-x:clip;
}

body{
  width:100%;
  max-width:100%;
  overflow-x:visible;
}

/* Fallback for browsers without overflow:clip. Keep clipping on the root,
   not body, so the sticky navigation remains tied to the viewport. */
@supports not (overflow:clip){
  html{overflow-x:hidden;}
  body{overflow-x:visible;}
}

body *,
body *::before,
body *::after{
  box-sizing:border-box;
}

main,
main > section,
header,
footer,
[class*="container"],
[class*="wrapper"],
[class*="content"]{
  min-width:0;
}

img,
picture,
video,
canvas,
svg,
iframe{
  max-width:100%;
}

img,
video{
  height:auto;
}

input,
select,
textarea,
button{
  max-width:100%;
}

table{
  max-width:100%;
}

/* Prevent long URLs, email addresses and technical identifiers overflowing cards */
main a,
main code,
main pre,
footer a{
  overflow-wrap:anywhere;
  word-break:normal;
}

/* Grid/flex children must be allowed to shrink */
main [class*="grid"] > *,
footer [class*="grid"] > *,
main [class*="row"] > *,
main [class*="columns"] > *{
  min-width:0;
}

/* Large tablets / small laptops */
@media(max-width:1024px){
  main > section{
    max-width:100%;
  }

  h1{
    max-width:100%;
  }

  /* Keep common multi-card areas readable at tablet width */
  main :is(
    .service-grid,
    .symptom-grid,
    .mode-grid,
    .care-service-grid,
    .care-area-grid,
    .paid-service-grid,
    .remap-online-grid,
    .module-grid,
    .diagnostic-card-grid,
    .clone-service-grid,
    .clone-method-grid,
    .bcm-service-grid,
    .coding-module-grid,
    .upgrade-grid,
    .exhaust-service-grid,
    .exhaust-symptom-grid,
    .battery-symptom-grid,
    .battery-brand-grid,
    .sas-symptom-grid,
    .sas-brand-grid,
    .recovery-cause-grid,
    .recovery-check-grid,
    .recovery-intake-grid,
    .gearbox-vehicle-grid,
    .gearbox-postal-grid,
    .gearbox-process-grid,
    .radio-service-grid,
    .radio-brand-grid,
    .radio-process-grid,
    .remap-stage-grid,
    .remap-benefit-grid,
    .remap-solution-grid,
    .ecu-family-grid,
    .key-service-grid,
    .immo-programming-grid,
    .coding-core-grid,
    .coding-safety-grid
  ){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

/* Tablet portrait */
@media(max-width:768px){
  main > section{
    width:100%;
  }

  h1,
  h2{
    overflow-wrap:break-word;
  }

  table{
    display:block;
    width:100%;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  pre{
    max-width:100%;
    overflow-x:auto;
  }

  .contact-actions,
  .hero-actions,
  .cta-actions{
    flex-wrap:wrap!important;
  }

  .contact-actions > *,
  .hero-actions > *,
  .cta-actions > *{
    max-width:100%;
  }
}

/* Phones */
@media(max-width:620px){
  /* Standardise primary content grids to one comfortable column */
  main :is(
    .service-grid,
    .symptom-grid,
    .mode-grid,
    .case-summary-grid,
    .clone-service-grid,
    .clone-method-grid,
    .diagnostic-card-grid,
    .care-service-grid,
    .care-area-grid,
    .paid-service-grid,
    .remap-online-grid,
    .bcm-service-grid,
    .coding-module-grid,
    .module-grid,
    .adblue-diagnostic-grid,
    .adblue-combo-grid,
    .adblue-heavy-grid,
    .adblue-brand-grid,
    .adblue-postal-grid,
    .mileage-transmission-grid,
    .mileage-location-grid,
    .dtc-engine-grid,
    .dtc-commercial-grid,
    .dtc-sensor-grid,
    .dtc-process-grid,
    .egr-sensor-grid,
    .airbag-coding-grid,
    .airbag-vehicle-grid,
    .airbag-postal-grid,
    .airbag-workflow-grid,
    .battery-service-grid-section,
    .battery-symptom-grid,
    .battery-brand-grid,
    .dpf-diagnostic-grid,
    .dpf-regen-grid,
    .dpf-software-grid,
    .sas-service-grid-section,
    .sas-symptom-grid,
    .sas-brand-grid,
    .recovery-cause-grid,
    .recovery-check-grid,
    .recovery-intake-grid,
    .bcm-area-grid,
    .bcm-symptom-grid,
    .bcm-flash-grid,
    .bcm-review-grid,
    .gearbox-mini-grid,
    .gearbox-local-grid,
    .gearbox-vehicle-grid,
    .gearbox-postal-grid,
    .gearbox-process-grid,
    .exhaust-service-grid,
    .upgrade-grid,
    .exhaust-symptom-grid,
    .radio-mini-grid,
    .radio-service-grid,
    .radio-brand-grid,
    .radio-process-grid,
    .remap-stage-grid,
    .remap-benefit-grid,
    .remap-solution-grid,
    .ecu-family-grid,
    .key-service-grid,
    .immo-programming-grid,
    .review-value-grid,
    .diagnostic-vehicle-grid,
    .coding-core-grid,
    .coding-safety-grid
  ){
    grid-template-columns:1fr!important;
  }

  /* Keep image galleries useful without forcing ultra-tall pages */
  main :is(
    .case-gallery-grid,
    .work-gallery-grid,
    .battery-gallery-grid,
    .sas-gallery-grid,
    .exhaust-gallery-grid
  ){
    grid-template-columns:1fr!important;
  }

  .btn,
  button,
  input[type="submit"],
  input[type="button"]{
    min-height:44px;
  }

  input,
  select,
  textarea{
    font-size:16px; /* prevents iOS zoom on focus */
  }

  /* Avoid text touching phone edges in legacy full-width sections */
  main p,
  main li,
  main h1,
  main h2,
  main h3{
    max-width:100%;
  }
}

/* Small phones: 430 / 375px QA */
@media(max-width:430px){
  .btn,
  main a.btn{
    white-space:normal!important;
    text-align:center;
  }

  main :is(.contact-actions,.hero-actions,.cta-actions){
    gap:10px!important;
  }

  main :is(.contact-actions,.hero-actions,.cta-actions) > *{
    flex:1 1 100%!important;
    width:100%!important;
  }

  .faq-v163 summary{
    overflow-wrap:break-word;
  }
}

@media(max-width:375px){
  body{
    min-width:0;
  }

  .btn,
  button{
    max-width:100%;
  }

  main h1{
    font-size:clamp(2rem,10vw,2.75rem);
  }
}


/* /assets/sticky-navigation-v166.css */
/* V166 — sticky navigation reliability fix
   V165 used overflow-x:hidden on body, which can stop position:sticky
   behaving correctly in some browser/layout combinations. */

html{
  overflow-x:clip!important;
}

body{
  overflow-x:visible!important;
}

/* Keep the navigation attached to the viewport while scrolling. */
.sgtm-header{
  position:-webkit-sticky!important;
  position:sticky!important;
  top:0!important;
  left:0!important;
  right:0!important;
  z-index:5000!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  isolation:isolate!important;
}

/* Keep dropdowns above page content while the header is sticky. */
.sgtm-header .nav-dropdown-menu,
.sgtm-header .nav-drop-menu,
.sgtm-header .mega-menu{
  z-index:5100!important;
}

/* Anchor targets should remain visible below the sticky header. */
html{
  scroll-padding-top:88px!important;
}

@media(max-width:1280px){
  html{
    scroll-padding-top:78px!important;
  }

  .sgtm-header{
    top:0!important;
  }
}

@media(max-width:620px){
  html{
    scroll-padding-top:70px!important;
  }
}


/* /assets/anti-copy-v176.css */

/* SG-Tronic Motorsport v176 — moderate anti-copy protection.
   Visible HTML remains normal crawlable text for search engines. */
html.sgtm-copy-protected body {
  -webkit-touch-callout: none;
}
html.sgtm-copy-protected main,
html.sgtm-copy-protected .topbar,
html.sgtm-copy-protected footer {
  -webkit-user-select: none;
  user-select: none;
}
html.sgtm-copy-protected input,
html.sgtm-copy-protected textarea,
html.sgtm-copy-protected select,
html.sgtm-copy-protected option,
html.sgtm-copy-protected address,
html.sgtm-copy-protected .allow-copy,
html.sgtm-copy-protected .call,
html.sgtm-copy-protected .footer-phone,
html.sgtm-copy-protected .footer-email,
html.sgtm-copy-protected [contenteditable="true"] {
  -webkit-user-select: text !important;
  user-select: text !important;
}
html.sgtm-copy-protected img {
  -webkit-user-drag: none;
  user-drag: none;
}


/* /assets/layout-audit-v222.css */
/* SGTM v222: headings, readable spacing and 3–6px content corners. */
:root{
  --sgtm-v222-section:76px;
  --sgtm-v222-gutter:clamp(20px,7vw,120px);
  --sgtm-v222-card:26px;
  --sgtm-v222-copy:16px;
}

/* Full-width content bands retain their existing colours and grid layouts. */
html body main>section.audit-content-section-v222{
  padding-top:var(--sgtm-v222-section)!important;
  padding-bottom:var(--sgtm-v222-section)!important;
  box-sizing:border-box;
}
html body main>section.audit-related-v222{
  width:100%;max-width:none!important;margin:0!important;
  padding:56px var(--sgtm-v222-gutter) 64px!important;
  gap:18px!important;box-sizing:border-box;
}
html body main .audit-section-title-v222{
  grid-column:1/-1;display:block;min-width:0;
  margin:0 0 18px!important;
  color:#102d43;font-size:clamp(28px,3vw,40px);
  font-weight:750;line-height:1.18;letter-spacing:-.025em;
  text-transform:none;overflow-wrap:break-word;
}
html body main .contact-options>.audit-section-title-v222{color:#fff}
html body main .trust-panel>.audit-section-title-v222{margin-bottom:28px!important}
html body main .case-summary>.audit-section-title-v222{
  font-size:clamp(26px,2.5vw,34px);margin-bottom:22px!important;
}
html body main .intl143-summary>.audit-section-title-v222{
  color:#fff;font-size:20px;letter-spacing:0;margin-bottom:4px!important;
}

/* Short notices need less outside space than a full service section. */
html body main>section.audit-note-section-v222{
  padding-top:34px!important;padding-bottom:34px!important;
  gap:24px;align-items:start;box-sizing:border-box;
}
html body main .audit-notice-title-v222{
  margin:0!important;font-size:clamp(20px,2vw,24px);
  color:inherit;font-weight:750;line-height:1.3;letter-spacing:-.015em;
}
html body main .audit-note-section-v222>p{margin:0!important;line-height:1.75}

/* Text cards use consistent insets; photograph cards keep edge-to-edge media. */
html body main article.audit-card-v222{
  padding:var(--sgtm-v222-card)!important;min-height:0!important;
  box-sizing:border-box;min-width:0;
}
html body main a.audit-link-card-v222{
  padding:var(--sgtm-v222-card)!important;
  display:flex;flex-direction:column;align-items:flex-start;
  box-sizing:border-box;min-width:0;
}
html body main article h3,
html body main .audit-link-card-v222 h3{
  margin:0 0 12px!important;min-height:0!important;
  line-height:1.3!important;overflow-wrap:break-word;
}
html body main article>:is(b,span,small)+h3,
html body main .audit-link-card-v222>:is(b,span,small)+h3{margin-top:12px!important}
html body main .audit-card-title-v222{
  display:block;font-size:20px;font-weight:750;color:inherit;
}
html body main .case-summary-card .audit-card-title-v222{
  font-size:17px;color:#102d43;line-height:1.45!important;
  margin:0!important;
}
html body main .case-summary-card small{margin-bottom:8px}
html body main .intl143-summary article h3{
  font-size:15px;font-weight:600;color:#ffffff;
  line-height:1.5!important;margin:0!important;
}
html body main :is(.gearbox-postal-grid,.postal-instructions) .audit-card-title-v222{color:#fff}
html body main .bcm-area-grid .audit-card-title-v222{color:#75d5ee}
html body main .intl143-trust-grid .audit-card-title-v222{color:#102d43;font-size:18px}
html body main .audit-link-card-v222>b:last-child{
  margin-top:auto;padding-top:20px;font-size:13px;line-height:1.5;
}
html body main article p,
html body main .audit-link-card-v222 p{line-height:1.75;margin-bottom:0}
html body main article h3+p,
html body main .audit-link-card-v222 h3+p{margin-top:0!important}
html body main section p+p{margin-top:var(--sgtm-v222-copy)!important}
html body main .contact-options article>a{display:inline-block;margin-bottom:12px;overflow-wrap:anywhere}
html body main .contact-options article>p{margin-top:0!important}

/* A clear gap between copy, actions and neighbouring controls. */
html body main :is(.actions,.contact-actions,.online-file-actions,.intl143-actions,.case-cta-actions){
  gap:12px;flex-wrap:wrap;
}
html body main .actions{margin-top:28px}
html body main :is(.btn,.intl143-btn){
  min-height:48px;padding:14px 22px;line-height:1.35;
  white-space:normal;max-width:100%;box-sizing:border-box;
}
html body main :is(p,li) a:not(.btn){
  text-decoration:underline;text-underline-offset:3px;
  text-decoration-thickness:1px;overflow-wrap:anywhere;
}
html body main a:focus-visible{outline:3px solid #35c5f4;outline-offset:4px}

/* Cards, images, form controls and rectangular buttons stay within 3–6px.
   Full-width section bands and intentionally circular icons are excluded. */
html body main article,
html body main .audit-link-card-v222,
html body main :is(.work-card,.gallery-card,.case-media-card,.case-panel,
  .case-gallery-intro,.case-video-intro,.case-notes-box,.case-cta-box,
  .case-video-wrap,.copyright-photo,.premium-detail-inner,.benefits,
  .intl143-summary,.intl143-related>a,.warranty-summary-v32,
  .contact-upload-panel,.contact-help-card,.enquiry-form,.booking-form),
html body main [class$="-box"],
html body main [class$="-panel"],
html body main [class$="-card"],
html body main details:not(.contact-module-details){border-radius:5px!important}
html body main :is(img,video){border-radius:4px!important}
html body main figure{border-radius:5px!important}
html body main :is(.btn,.intl143-btn),
html body header.sgtm-header .call,
html body .ecu-services-v133 .ecu-security-actions a{border-radius:4px!important}
html body main :is(input:not([type=checkbox]):not([type=radio]),select,textarea){border-radius:5px!important}
html body .ecu-services-v133 .ecu-security-notes article,
html body .international-services-v143 .intl143-hero-photo,
html body .sgtm-header .nav-drop-menu,
html body .sgtm-header .mobile-menu-panel{border-radius:5px!important}
html body .sgtm-header .nav-drop-menu a,
html body .sgtm-header .mobile-menu>summary,
html body .mobile-menu-panel .mobile-nav-section a{border-radius:4px!important}
html body #sgtm-chat-panel,
html body .sgtm-chat-welcome,
html body .sgtm-chat-msg{border-radius:5px!important}

/* Match the case-summary gutter to the surrounding gallery content. */
html body main.case-study-main>.case-summary{
  padding-left:7vw!important;padding-right:7vw!important;
}
/* A centred warranty panel uses a card inset rather than a second page gutter. */
html body main>.warranty-summary-v32{
  padding:32px!important;box-sizing:border-box;
}

@media(max-width:950px){
  :root{--sgtm-v222-section:58px;--sgtm-v222-gutter:max(24px,6vw);--sgtm-v222-card:24px}
  html body main>section.audit-related-v222{padding-top:44px!important;padding-bottom:48px!important}
  html body main.case-study-main>.case-summary{padding-left:6vw!important;padding-right:6vw!important}
}
@media(max-width:620px){
  :root{--sgtm-v222-section:44px;--sgtm-v222-gutter:max(20px,5vw);--sgtm-v222-card:20px;--sgtm-v222-copy:14px}
  html body main>section.audit-related-v222{padding-top:36px!important;padding-bottom:40px!important;gap:14px!important}
  html body main>section.audit-note-section-v222{padding-top:28px!important;padding-bottom:28px!important;gap:14px}
  html body main .audit-section-title-v222{font-size:28px;margin-bottom:12px!important}
  html body main .audit-notice-title-v222{font-size:21px}
  html body main.case-study-main>.case-summary{padding-left:max(20px,5vw)!important;padding-right:max(20px,5vw)!important}
  html body main>.warranty-summary-v32{padding:22px!important}
  html body main .case-cta-actions{width:100%}
  html body main .case-cta-actions .btn{flex:1 1 180px;text-align:center;justify-content:center}
}


/* /assets/premium-v223.css */
/* SG-Tronic Motorsport — premium automotive design, v223. */
body#sgtm-premium-v223.sgtm-premium-v223{
  --ink:#102d43;--muted:#53697c;--blue:#087AC7;--cyan:#35c5f4;--lime:#35c5f4;
  --line:#f5f8fc;--premium-navy:#081b2c;--premium-content:1180px;
  --premium-gutter:max(24px,calc((100vw - 1180px)/2));
  --premium-space:80px;--premium-shadow:0 12px 32px rgba(16,45,67,.07);
  font-family:'Segoe UI',Arial,sans-serif;background:#f5f8fc;color:var(--ink);
  -webkit-font-smoothing:antialiased;
}
#sgtm-premium-v223 *{box-sizing:border-box}
#sgtm-premium-v223 main{min-width:0}
body#sgtm-premium-v223.sgtm-premium-v223 main>section{
  width:100%;max-width:none!important;margin-left:0!important;margin-right:0!important;
  padding-left:var(--premium-gutter)!important;padding-right:var(--premium-gutter)!important;
  scroll-margin-top:104px;
}
body#sgtm-premium-v223.sgtm-premium-v223 main>.audit-content-section-v222{
  padding-top:var(--premium-space)!important;padding-bottom:var(--premium-space)!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main>:is(.premium-warning,.warranty-summary-v32,.hybrid-bms-references,.remap-online-services,.sgtm-calc-section){
  width:calc(100% - var(--premium-gutter) - var(--premium-gutter));
  max-width:var(--premium-content)!important;margin:32px auto!important;
  padding:32px!important;border-radius:5px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main h1{
  font-family:inherit;font-weight:650;letter-spacing:-.048em;line-height:1.06;
  text-wrap:balance;overflow-wrap:break-word;
}
body#sgtm-premium-v223.sgtm-premium-v223 main h2{
  font-family:inherit;font-size:clamp(30px,3.4vw,46px)!important;
  font-weight:650!important;line-height:1.15!important;letter-spacing:-.032em;
  text-wrap:balance;overflow-wrap:break-word;
}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.audit-notice-title-v222){font-size:22px!important;line-height:1.35!important}
body#sgtm-premium-v223.sgtm-premium-v223 main .intl143-summary>.audit-section-title-v222{font-size:20px!important}
body#sgtm-premium-v223.sgtm-premium-v223 main .stage1-order-copy h2{font-size:25px!important;line-height:1.25!important;letter-spacing:-.02em}
body#sgtm-premium-v223.sgtm-premium-v223 main .case-summary>.audit-section-title-v222{font-size:30px!important}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.case-gallery-intro,.case-video-intro,.case-notes-box,.case-cta-box) h2{font-size:34px!important}
body#sgtm-premium-v223.sgtm-premium-v223 main h3{
  font-family:inherit;font-weight:650;line-height:1.35;letter-spacing:-.015em;
  overflow-wrap:break-word;
}
body#sgtm-premium-v223.sgtm-premium-v223 main p{line-height:1.8}
#sgtm-premium-v223 :is(.label,.kicker){font-size:11px;letter-spacing:.15em;font-weight:750}
body#sgtm-premium-v223.sgtm-premium-v223 .section-head{gap:40px;align-items:start;margin-bottom:32px}
body#sgtm-premium-v223.sgtm-premium-v223 .section-head>p{font-size:15px;max-width:440px;margin:28px 0 0}
body#sgtm-premium-v223.sgtm-premium-v223 .section-head h2{max-width:720px;margin-bottom:0}

/* Navigation retains the proven dropdown and mobile-menu behaviour. */
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header{
  background:rgba(8,27,44,.98)!important;border-bottom:1px solid #ffffff1c;
  padding:0 max(24px,calc((100vw - 1280px)/2))!important;
  min-height:84px!important;height:84px!important;gap:26px;
  box-shadow:0 8px 30px #081b2c14;
}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .brand{min-width:210px;gap:13px}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .brand .mark{
  width:46px!important;height:46px!important;min-width:46px;
  border-radius:4px!important;transform:none!important;
  background:linear-gradient(135deg,#087AC7,#35c5f4);box-shadow:none;font-size:24px;
}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .brand b{font-size:18px;letter-spacing:.075em;color:#fff}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .brand small{font-size:9px;letter-spacing:.28em;color:#35c5f4}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-desktop-nav{gap:24px!important;font-size:13px!important}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-desktop-nav>:is(a,.nav-dropdown){flex-shrink:0}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-desktop-nav .nav-book{
  background:#087AC7!important;color:#fff!important;padding:12px 18px!important;
  border:1px solid #087AC7;border-radius:4px!important;white-space:nowrap;
}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .call{
  background:transparent!important;border:1px solid #304c62!important;
  box-shadow:none!important;border-radius:4px!important;min-width:142px;padding:10px 14px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header :is(.nav-drop-menu,.mobile-menu-panel){
  border-radius:5px!important;background:#081b2c!important;border-color:#304c62!important;
  box-shadow:0 18px 44px #081b2c40!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header :is(.nav-drop-menu a,.mobile-nav-section a){border-radius:4px!important}

/* Restrained hero with one photographic focal point. */
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.hero,.work-gallery-hero){
  background:linear-gradient(120deg,#081b2c 15%,#102d43 100%)!important;
  padding-top:64px!important;padding-bottom:64px!important;
  gap:54px!important;min-height:0!important;align-items:center;
}
body#sgtm-premium-v223.sgtm-premium-v223 main .hero h1{font-size:clamp(38px,4.7vw,62px)!important;max-width:690px;margin-bottom:24px}
body#sgtm-premium-v223.sgtm-premium-v223 main .hero p{font-size:16px;line-height:1.85;color:#c1d0df;max-width:590px}
body#sgtm-premium-v223.sgtm-premium-v223 main .home-hero{grid-template-columns:1.04fr 1fr;min-height:660px!important;gap:42px!important}
body#sgtm-premium-v223.sgtm-premium-v223 main .home-hero h1{font-size:clamp(42px,4.5vw,64px)!important;line-height:1.04}
body#sgtm-premium-v223.sgtm-premium-v223 .home-hero h1 em{
  color:#68c9ee!important;-webkit-text-stroke:0!important;font-style:normal;display:block;margin-top:12px;
}
body#sgtm-premium-v223.sgtm-premium-v223 .home-image{
  margin:0!important;width:100%;height:530px!important;border:1px solid #304c62;
  border-radius:5px!important;position:relative;overflow:hidden;box-shadow:0 24px 60px #081b2c40;
}
body#sgtm-premium-v223.sgtm-premium-v223 .home-image img{
  display:block;width:100%;height:100%!important;object-fit:cover!important;
  object-position:67% center!important;transform:none!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 .home-image figcaption{
  left:0;right:0;bottom:0;position:absolute;padding:24px 26px;
  display:flex;justify-content:space-between;gap:16px;
  background:linear-gradient(transparent,#081b2ced);color:#fff;font-size:10px;letter-spacing:.09em;
}
body#sgtm-premium-v223.sgtm-premium-v223 main .hero :is(.service-image,.home-image,.copyright-photo){border-radius:5px!important}
body#sgtm-premium-v223.sgtm-premium-v223 main .hero .service-image img{min-height:380px;object-fit:cover}
body#sgtm-premium-v223.sgtm-premium-v223 .hero .trust{gap:16px;margin-top:26px}
body#sgtm-premium-v223.sgtm-premium-v223 .hero .trust span{border:0;background:none;padding:0;color:#a9bdd0;font-size:11px}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-secondary-actions-v223{display:flex;flex-wrap:wrap;gap:22px;margin-top:20px}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-secondary-link-v223{
  display:inline-flex;align-items:center;min-height:36px;color:#b7cbda;
  font-size:13px;text-decoration:underline;text-underline-offset:5px;
}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-secondary-link-v223:hover{color:#fff}

/* Four clear routes, above the detailed service content. */
body#sgtm-premium-v223.sgtm-premium-v223 .premium-journeys-v223{
  background:#fff;padding-top:48px!important;padding-bottom:52px!important;
  border-bottom:1px solid var(--line);
}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-journeys-v223 .section-head{margin-bottom:26px}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-journeys-v223 h2{font-size:clamp(28px,2.8vw,36px)!important}
#sgtm-premium-v223 .premium-route-grid-v223{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
#sgtm-premium-v223 .premium-route-card-v223{
  display:flex;flex-direction:column;align-items:start;gap:0;padding:24px;
  background:#f5f8fc;border:1px solid #f5f8fc;border-radius:5px;
  color:#102d43;text-decoration:none;min-width:0;
  transition:border-color .18s,box-shadow .18s,transform .18s;
}
#sgtm-premium-v223 .premium-route-card-v223:hover{border-color:#087AC7;box-shadow:var(--premium-shadow);transform:translateY(-2px)}
#sgtm-premium-v223 .premium-route-icon-v223{display:grid;place-items:center;width:42px;height:42px;background:#f5f8fc;color:#076aae;border-radius:5px;margin-bottom:18px}
#sgtm-premium-v223 .premium-route-icon-v223 svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-route-card-v223 h3{font-size:20px;margin:0 0 10px}
#sgtm-premium-v223 .premium-route-card-v223 p{font-size:13px;color:#465d70;margin:0 0 18px;line-height:1.7}
#sgtm-premium-v223 .premium-route-card-v223>b{font-size:12px;color:#076aae;margin-top:auto}
body#sgtm-premium-v223.sgtm-premium-v223 .proof{background:#081b2c;color:#fff;border-bottom:1px solid #102d43}
body#sgtm-premium-v223.sgtm-premium-v223 .proof>div{padding:24px 28px;border-color:#102d43}
body#sgtm-premium-v223.sgtm-premium-v223 .proof b{font-size:23px;font-weight:650}
body#sgtm-premium-v223.sgtm-premium-v223 .proof span{color:#a7bece;font-size:10px;letter-spacing:.12em}
body#sgtm-premium-v223.sgtm-premium-v223 .proof>div:before{display:none}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-remote-services-v223{
  background:#f5f8fc;padding-top:72px!important;padding-bottom:76px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-remote-services-v223>.uk-seo-v212{
  padding:0!important;margin:0!important;max-width:none!important;background:transparent!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-remote-services-v223>.worldwide-hub{
  padding:32px!important;margin:48px 0 0!important;max-width:none!important;
  background:#102d43!important;border:1px solid #304c62;border-radius:5px;
  gap:34px;grid-template-columns:.95fr 1.05fr;
}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-remote-services-v223 .worldwide-hub h2{font-size:34px!important}

/* Clean, searchable service catalogue. All links remain in the original HTML. */
body#sgtm-premium-v223.sgtm-premium-v223 .services{background:#fff}
body#sgtm-premium-v223.sgtm-premium-v223 .service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.service-grid>a,.related>a,.uk-service-grid>a){
  border:1px solid #f5f8fc!important;background:#fff!important;
  box-shadow:0 5px 20px #102d4305;border-radius:5px!important;
  padding:28px!important;color:#102d43;min-width:0;
}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.service-grid>a,.related>a,.uk-service-grid>a):hover{
  border-color:#62aada!important;box-shadow:var(--premium-shadow);transform:translateY(-2px);
}
body#sgtm-premium-v223.sgtm-premium-v223 .service-grid>a>span:first-child{font-size:11px;color:#076aae;margin-bottom:14px;letter-spacing:.12em}
body#sgtm-premium-v223.sgtm-premium-v223 .service-grid>a>small{color:#465d70;letter-spacing:.08em;font-size:9px;line-height:1.7;min-height:0}
body#sgtm-premium-v223.sgtm-premium-v223 .service-grid h3{font-size:20px!important;margin:14px 0 12px!important;min-height:0!important}
body#sgtm-premium-v223.sgtm-premium-v223 .service-grid p{font-size:14px;color:#465d70;margin-top:0!important}
body#sgtm-premium-v223.sgtm-premium-v223 .service-grid>a>b{font-size:12px;color:#076aae;padding-top:22px;margin-top:auto}
#sgtm-premium-v223 .premium-catalogue-controls-v223{margin:0 0 24px;padding:22px;background:#f5f8fc;border:1px solid #f5f8fc;border-radius:5px}
#sgtm-premium-v223 .premium-catalogue-top-v223{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}
#sgtm-premium-v223 .premium-catalogue-search-v223{display:flex;align-items:center;gap:12px;flex:1;max-width:560px}
#sgtm-premium-v223 .premium-catalogue-search-v223 label{color:#102d43;font-size:13px;font-weight:650;white-space:nowrap}
#sgtm-premium-v223 .premium-catalogue-search-v223 input{width:100%;min-width:0;min-height:46px;border:1px solid #b8cbdc;background:#fff;color:#102d43;padding:12px 14px;border-radius:4px;font:inherit;font-size:14px}
#sgtm-premium-v223 .premium-catalogue-status-v223{font-size:12px;color:#465d70;margin:0;white-space:nowrap}
#sgtm-premium-v223 .premium-catalogue-filters-v223{display:flex;flex-wrap:wrap;gap:8px}
#sgtm-premium-v223 .premium-catalogue-filters-v223 button{padding:10px 14px;min-height:42px;font:inherit;font-size:12px;font-weight:650;cursor:pointer;background:#fff;color:#465d70;border:1px solid #e8f4fa;border-radius:4px}
#sgtm-premium-v223 .premium-catalogue-filters-v223 button[aria-pressed=true]{background:#087AC7;border-color:#087AC7;color:#fff}
#sgtm-premium-v223 .premium-catalogue-empty-v223{padding:28px;background:#f5f8fc;border:1px solid #f5f8fc;border-radius:5px;font-size:15px;color:#465d70}
#sgtm-premium-v223 [data-premium-service-v223][hidden],
#sgtm-premium-v223 .premium-catalogue-controls-v223[hidden],
#sgtm-premium-v223 .premium-catalogue-empty-v223[hidden]{display:none!important}

/* Consistent surfaces, photographs and action buttons throughout the site. */
body#sgtm-premium-v223.sgtm-premium-v223 main article,
body#sgtm-premium-v223.sgtm-premium-v223 :is(.premium-detail-inner,.case-panel,.case-media-card,.gallery-card,.work-preview-card,.case-gallery-intro,.case-notes-box,.case-cta-box){border-radius:5px!important}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(img,video){border-radius:4px!important}
body#sgtm-premium-v223.sgtm-premium-v223 main figure{border-radius:5px!important;min-width:0}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.service-grid,.related,.uk-service-grid,.work-preview-grid,.case-gallery-grid,.showcase-grid){gap:18px!important}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.work-copy,.case-media-copy){padding:24px!important}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.work-copy,.case-media-copy) h3{font-size:20px;min-height:0!important;margin-bottom:12px!important}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.work-copy,.case-media-copy) p{font-size:14px;margin:0;color:#465d70}
body#sgtm-premium-v223.sgtm-premium-v223 .premium-detail-inner{padding:36px 0!important;max-width:1180px;gap:40px}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.btn,.intl143-btn){
  border-radius:4px!important;font:inherit;font-size:14px;font-weight:650;
  min-height:50px;padding:14px 23px;box-shadow:none;letter-spacing:0;
}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.btn.primary,.intl143-btn-primary){background:#087AC7!important;border:1px solid #087AC7!important;color:#fff!important}
body#sgtm-premium-v223.sgtm-premium-v223 .hero .btn.ghost{background:transparent!important;border-color:#304c62!important;color:#fff!important}
body#sgtm-premium-v223.sgtm-premium-v223 .btn:hover{box-shadow:0 8px 20px #087AC722;transform:translateY(-1px)}
body#sgtm-premium-v223.sgtm-premium-v223 :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #087AC7!important;outline-offset:4px}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.hero,header,footer) :is(a,button,summary):focus-visible{outline-color:#35c5f4!important}
body#sgtm-premium-v223.sgtm-premium-v223 .actions{gap:12px;margin-top:28px}
body#sgtm-premium-v223.sgtm-premium-v223 .audit-related-v222{background:#f5f8fc;padding-top:52px!important;padding-bottom:60px!important}
body#sgtm-premium-v223.sgtm-premium-v223 .cta{background:#102d43!important;padding-top:60px!important;padding-bottom:60px!important;box-shadow:none;gap:32px}
body#sgtm-premium-v223.sgtm-premium-v223 .cta:before{display:none}
body#sgtm-premium-v223.sgtm-premium-v223 .cta h2{font-size:clamp(28px,3.2vw,40px)!important}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.faq,.home-faq){background:#f5f8fc!important;padding-top:60px!important;padding-bottom:64px!important}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.faq,.home-faq) details{box-shadow:none;border:1px solid #f5f8fc;border-radius:5px!important;background:#fff}

/* Forms keep every existing field and server handler. */
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.enquiry-form,.booking-form){
  background:#fff!important;color:#102d43!important;border:1px solid #f5f8fc!important;
  border-radius:5px!important;box-shadow:var(--premium-shadow);padding:30px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.enquiry-form,.booking-form) :is(label,legend,.form-note,.form-consent){color:#465d70!important}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.enquiry-form,.booking-form) :is(input:not([type=checkbox]):not([type=radio]),select,textarea){
  background:#f5f8fc!important;color:#102d43!important;border:1px solid #bdcfdc!important;
  border-radius:5px!important;font-family:inherit;min-height:48px;padding:12px 14px;
}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.enquiry-form,.booking-form) button[type=submit]{background:#087AC7!important;color:#fff!important;border:1px solid #087AC7!important;border-radius:4px!important}
body#sgtm-premium-v223.sgtm-premium-v223 #contact-v214 .contact-options{padding-top:48px!important;padding-bottom:54px!important}
body#sgtm-premium-v223.sgtm-premium-v223 #contact-v214 .contact-form-shell{gap:42px}

body#sgtm-premium-v223.sgtm-premium-v223 footer{
  background:#081b2c!important;color:#b5c6d4;padding:64px var(--premium-gutter) 30px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 .footer-accent{height:2px;margin:0 0 46px!important;background:linear-gradient(90deg,#35c5f4,#087AC7 55%,transparent)}
body#sgtm-premium-v223.sgtm-premium-v223 .footer-grid{gap:32px;grid-template-columns:1.4fr .8fr 1fr 1.15fr}
body#sgtm-premium-v223.sgtm-premium-v223 .footer-grid p{font-size:13px;line-height:1.85}
body#sgtm-premium-v223.sgtm-premium-v223 .footer-grid h3{font-size:11px;font-weight:700;letter-spacing:.12em}
body#sgtm-premium-v223.sgtm-premium-v223 .footer-whatsapp{background:#153d37!important;color:#b5f3d8!important;border:1px solid #2b6857;border-radius:4px!important;box-shadow:none}

@media(max-width:1320px){
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header{height:76px!important;min-height:76px!important;padding:0 24px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-desktop-nav,
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header>.call{display:none!important}
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header>.mobile-menu{display:block!important;margin-left:auto}
}
@media(max-width:980px){
  body#sgtm-premium-v223.sgtm-premium-v223{--premium-gutter:32px;--premium-space:58px}
  body#sgtm-premium-v223.sgtm-premium-v223 main :is(.hero,.home-hero){grid-template-columns:1fr!important;gap:30px!important;padding-top:48px!important;padding-bottom:48px!important;min-height:0!important}
  body#sgtm-premium-v223.sgtm-premium-v223 main .hero h1{font-size:clamp(38px,6vw,54px)!important;max-width:800px}
  body#sgtm-premium-v223.sgtm-premium-v223 .home-image{height:430px!important}
  #sgtm-premium-v223 .premium-route-grid-v223{grid-template-columns:repeat(2,minmax(0,1fr))}
  body#sgtm-premium-v223.sgtm-premium-v223 .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body#sgtm-premium-v223.sgtm-premium-v223 .section-head{gap:22px}
  body#sgtm-premium-v223.sgtm-premium-v223 .section-head>p{margin-top:0;max-width:600px}
  body#sgtm-premium-v223.sgtm-premium-v223 .footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
  #sgtm-premium-v223 .premium-catalogue-top-v223{align-items:start;flex-direction:column;gap:12px}
  #sgtm-premium-v223 .premium-catalogue-search-v223{max-width:none;width:100%}
  body#sgtm-premium-v223.sgtm-premium-v223 .premium-remote-services-v223>.worldwide-hub{grid-template-columns:1fr}
}
@media(max-width:620px){
  body#sgtm-premium-v223.sgtm-premium-v223{--premium-gutter:22px;--premium-space:44px}
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header{padding:0 20px!important;gap:12px}
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .brand{min-width:0;gap:10px}
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .brand b{font-size:16px}
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .brand small{font-size:8px}
  body#sgtm-premium-v223.sgtm-premium-v223 .sgtm-header .brand .mark{width:42px!important;height:42px!important;min-width:42px;font-size:22px}
  body#sgtm-premium-v223.sgtm-premium-v223 main .hero h1{font-size:38px!important;line-height:1.08;letter-spacing:-.04em}
  body#sgtm-premium-v223.sgtm-premium-v223 main .hero p{font-size:15px;line-height:1.8}
  body#sgtm-premium-v223.sgtm-premium-v223 .home-image{height:320px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 .home-image figcaption{padding:18px;font-size:8px;flex-wrap:wrap;gap:6px}
  body#sgtm-premium-v223.sgtm-premium-v223 .hero .trust{gap:10px;flex-wrap:wrap}
  body#sgtm-premium-v223.sgtm-premium-v223 main h2{font-size:30px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 main .stage1-order-copy h2{font-size:23px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 main :is(.case-gallery-intro,.case-video-intro,.case-notes-box,.case-cta-box) h2{font-size:28px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 .premium-journeys-v223{padding-top:36px!important;padding-bottom:38px!important}
  #sgtm-premium-v223 .premium-route-grid-v223{grid-template-columns:1fr;gap:12px}
  #sgtm-premium-v223 .premium-route-card-v223{padding:22px;display:grid;grid-template-columns:42px minmax(0,1fr);column-gap:18px}
  #sgtm-premium-v223 .premium-route-icon-v223{grid-row:1/4;margin:0}
  #sgtm-premium-v223 .premium-route-card-v223 p{margin-bottom:12px}
  #sgtm-premium-v223 .premium-route-card-v223>b{grid-column:2}
  body#sgtm-premium-v223.sgtm-premium-v223 .premium-route-card-v223 h3{font-size:19px;margin-bottom:6px}
  body#sgtm-premium-v223.sgtm-premium-v223 .service-grid{grid-template-columns:1fr;gap:14px}
  body#sgtm-premium-v223.sgtm-premium-v223 :is(.service-grid>a,.related>a,.uk-service-grid>a){padding:23px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 .proof>div{padding:20px 12px}
  body#sgtm-premium-v223.sgtm-premium-v223 .proof b{font-size:21px}
  #sgtm-premium-v223 .premium-catalogue-controls-v223{padding:18px}
  #sgtm-premium-v223 .premium-catalogue-search-v223{align-items:start;flex-direction:column;gap:8px}
  #sgtm-premium-v223 .premium-catalogue-filters-v223 button{font-size:11px;padding:9px 12px;min-height:42px}
  body#sgtm-premium-v223.sgtm-premium-v223 main>:is(.premium-warning,.warranty-summary-v32,.hybrid-bms-references,.remap-online-services,.sgtm-calc-section){padding:22px!important;margin-top:24px!important;margin-bottom:24px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 main :is(.enquiry-form,.booking-form){padding:23px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 .footer-grid{grid-template-columns:1fr;gap:28px}
  body#sgtm-premium-v223.sgtm-premium-v223 .cta{padding-top:44px!important;padding-bottom:44px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 .premium-remote-services-v223>.worldwide-hub{padding:23px!important;margin-top:32px!important}
  body#sgtm-premium-v223.sgtm-premium-v223 .premium-remote-services-v223 .worldwide-hub h2{font-size:28px!important}
}
@media(prefers-reduced-motion:reduce){
  #sgtm-premium-v223 *{scroll-behavior:auto!important;transition:none!important}
}


/* /assets/layout-audit-v224.css */
/* SGTM v224: reviewed section rhythm, semantic photo titles and media alignment. */
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224{
  --premium-space:var(--audit-section);--audit-section:64px;--audit-compact:48px;
  --audit-note:32px;--audit-card:24px;--audit-gap:18px;--audit-head-gap:28px;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-band-v224{
  padding-top:var(--audit-section)!important;padding-bottom:var(--audit-section)!important;
  margin-top:0!important;margin-bottom:0!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-hero-v224{
  padding-top:64px!important;padding-bottom:64px!important;margin-top:0!important;margin-bottom:0!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-compact-v224{
  padding-top:var(--audit-compact)!important;padding-bottom:var(--audit-compact)!important;
  margin-top:0!important;margin-bottom:0!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-note-v224{
  padding-top:var(--audit-note)!important;padding-bottom:var(--audit-note)!important;
  margin-top:0!important;margin-bottom:0!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-band-v224.audit-join-v224{padding-top:16px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-inset-v224{
  width:calc(100% - var(--premium-gutter) - var(--premium-gutter))!important;
  max-width:1180px!important;margin:32px auto!important;padding:28px!important;
  box-sizing:border-box;border-radius:5px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.premium-scope{
  width:100%;max-width:none;margin:0!important;
  padding:24px var(--premium-gutter)!important;gap:14px;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.paid-service-grid{
  width:100%;max-width:none;margin:0!important;
  padding:32px var(--premium-gutter) var(--audit-section)!important;gap:var(--audit-gap)!important;
}
/* The Contact stylesheet uses two IDs; retain its functional form layout. */
#sgtm-premium-v223.sgtm-audit-v224 main#contact-v214>#enquiry-form.audit-band-v224{
  padding:var(--audit-section) var(--premium-gutter)!important;margin:0!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.section-head,.premium-story-head,.intl143-section-head){
  margin-bottom:var(--audit-head-gap)!important;gap:28px;align-items:start;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .section-head>p{margin-top:0!important;align-self:end}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .premium-detail-inner{
  width:100%;max-width:none!important;margin:0!important;padding:0!important;gap:32px!important;align-items:start!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .premium-detail-copy{padding-left:0!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .premium-detail-copy h2{margin-top:0!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.service-grid,.related,.uk-service-grid,.premium-gallery,.coding-safety-grid,.coding-module-grid,.premium-option-grid,
  .battery-gallery-grid,.battery-symptom-grid,.battery-brand-grid,.clone-service-grid,.postal-region-grid,
  .symptom-grid,.steps,.mode-grid,.level-grid,.intl143-service-grid,.intl143-postal-grid,.intl143-process-grid,
  .intl143-coverage-grid,.intl143-trust-grid,.work-preview-grid,.case-gallery-grid){gap:var(--audit-gap)!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main article.audit-card-v222{
  padding:var(--audit-card)!important;min-width:0;min-height:0!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main :is(.audit-card-v222,.audit-link-card-v222) h3{
  margin-bottom:12px!important;line-height:1.4!important;overflow-wrap:break-word;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .audit-card-v222 p{line-height:1.75!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main p+p{margin-top:16px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .symptoms>div:first-child>p{margin-top:18px!important;color:#bfd0df;max-width:850px}

/* Photo cards reserve one image area and one consistently padded text area. */
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-photo-card-v224{
  display:flex!important;flex-direction:column!important;align-items:stretch!important;
  padding:0!important;margin:0!important;min-width:0;height:100%;overflow:hidden;
  background:#fff!important;border:1px solid #f5f8fc;border-radius:5px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-photo-card-v224>img{
  display:block;width:100%!important;max-width:none!important;height:240px!important;min-height:0!important;
  max-height:none!important;margin:0!important;padding:18px!important;object-fit:contain!important;
  object-position:center!important;background:#f5f8fc!important;transform:none!important;flex:0 0 auto;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-photo-card-v224>figcaption{
  display:flex!important;flex-direction:column!important;flex:1;padding:20px!important;
  width:100%;background:#fff!important;text-align:left;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .audit-image-title-v224{
  display:block;color:#102d43!important;font-size:18px!important;font-weight:650!important;
  line-height:1.4!important;letter-spacing:-.015em;min-height:2.8em;margin:0 0 10px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-photo-card-v224>figcaption>span{
  display:block;color:#465d70!important;font-size:14px!important;line-height:1.75!important;
}
/* The previous premium text colour needed a matching light card surface. */
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.work-preview-card,.gallery-card,.case-media-card){background:#fff!important;border:1px solid #f5f8fc}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.work-copy,.gallery-copy,.case-media-copy){
  background:#fff!important;padding:24px!important;min-width:0;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.work-preview-card,.gallery-card,.case-media-card) h3{color:#102d43!important;margin:0 0 12px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.work-copy,.gallery-copy,.case-media-copy) p{color:#465d70!important;font-size:14px;line-height:1.75}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.work-tag,.gallery-tag,.view-project){color:#076aae!important}

/* Header photos share the copy's grid row; remove fixed heights and image zoom. */
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .hero:not(.home-hero){align-items:stretch!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .hero:not(.home-hero) .service-image{
  align-self:stretch!important;position:relative;margin:0!important;width:100%;height:auto!important;min-height:360px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .hero:not(.home-hero) .service-image img{
  position:absolute;inset:0;width:100%;height:100%!important;min-height:0!important;transform:none!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .hero:not(.home-hero) .service-image>.copyright-photo{
  position:absolute;inset:0;width:100%;height:100%!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-media-section-v224{align-items:start!important;gap:36px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-media-panel-v224{
  margin:0!important;min-height:0!important;height:auto!important;aspect-ratio:4/3;min-width:0;overflow:hidden;border-radius:5px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-media-panel-v224 img{
  display:block;width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
  object-fit:cover;object-position:center;transform:none!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-media-panel-v224>.copyright-photo{height:100%!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-contain-media-v224 img{object-fit:contain!important;padding:18px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .intl143-hero{align-items:start!important;gap:36px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .intl143-hero-photo{
  align-self:start!important;min-height:0!important;height:auto!important;aspect-ratio:4/3;place-items:start center!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .intl143-hero-photo img{
  width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:none!important;object-fit:contain!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.stage1-order-card,.stage1-order-actions,.stage1-includes span,
  .legal-use-note,.checksum-note,.stage2-note,.footer-badges span){border-radius:5px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.stage1-pay-button,.stage1-upload-button){border-radius:4px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 footer{
  padding:48px var(--premium-gutter) 28px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .footer-accent{margin-bottom:32px!important}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .legal{margin-top:32px!important}

@media(max-width:980px){
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224{--audit-section:52px;--audit-compact:44px;--audit-note:28px;--audit-head-gap:24px}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-hero-v224{padding-top:48px!important;padding-bottom:48px!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .hero:not(.home-hero) .service-image{height:360px!important;min-height:0!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-media-section-v224{grid-template-columns:1fr!important;gap:28px!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-media-panel-v224{max-height:500px}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .intl143-hero-photo{max-width:680px;justify-self:center;width:100%}
}
@media(max-width:620px){
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224{--audit-section:40px;--audit-compact:36px;--audit-note:24px;--audit-card:22px;--audit-gap:14px;--audit-head-gap:22px}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-hero-v224{padding-top:36px!important;padding-bottom:36px!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.audit-inset-v224{padding:22px!important;margin-top:24px!important;margin-bottom:24px!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main>.premium-scope{padding-top:20px!important;padding-bottom:20px!important;gap:12px}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .audit-image-title-v224{min-height:0!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-photo-card-v224>figcaption{padding:18px!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 :is(.work-copy,.gallery-copy,.case-media-copy){padding:20px!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .hero:not(.home-hero) .service-image{height:300px!important;min-height:0!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .section-head>p{align-self:start}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .audit-media-section-v224{gap:24px!important}
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 footer{padding-top:40px!important;padding-bottom:24px!important}
}


/* /assets/heading-alignment-v226.css */
/* V226: put a section title and its supporting copy on the same row. */
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  grid-auto-rows:auto!important;
  align-items:start!important;
  gap:12px 32px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226>.align-title-v226{
  display:contents!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226>.align-title-v226>:is(span,small,label){
  grid-column:1/-1!important;
  grid-row:1!important;
  align-self:start!important;
  justify-self:start!important;
  margin:0!important;
  text-align:left!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226>.align-title-v226>:is(h2,h3){
  grid-column:1!important;
  grid-row:2!important;
  align-self:start!important;
  min-width:0;
  margin:0!important;
  text-align:left!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226>.align-copy-v226{
  grid-column:2!important;
  grid-row:2!important;
  align-self:start!important;
  min-width:0;
  width:100%;
  max-width:none!important;
  margin:0!important;
  text-align:left!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226>.align-copy-v226:not(p)>p:first-child{
  margin-top:0!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226.align-no-label-v226>.align-title-v226>:is(h2,h3),
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226.align-no-label-v226>.align-copy-v226{
  grid-row:1!important;
}
/* Keep the conditions and their link legible on the retained navy panel. */
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .clone-terms-v32>.align-copy-v226 p{
  color:#c5d7e5!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .clone-terms-v32>.align-copy-v226 a{
  color:#8ccaff!important;
}
@media(max-width:980px){
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226{
    grid-template-columns:minmax(0,1fr)!important;
    gap:16px!important;
  }
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226>.align-copy-v226{
    grid-column:1!important;
    grid-row:3!important;
  }
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226.align-no-label-v226>.align-copy-v226{
    grid-row:2!important;
  }
}
@media(max-width:620px){
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 .align-grid-v226{gap:14px!important}
}


/* /assets/tuning-files-spacing-v227.css */
/* V227: separate the tuning stages image from the Stage 1–3 cards. */
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main > .tuning-levels > .level-grid + .wide-feature-image.audit-media-panel-v224 {
  margin-top: 32px !important;
}

@media (max-width: 980px) {
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main > .tuning-levels > .level-grid + .wide-feature-image.audit-media-panel-v224 {
    margin-top: 28px !important;
  }
}

@media (max-width: 620px) {
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main > .tuning-levels > .level-grid + .wide-feature-image.audit-media-panel-v224 {
    margin-top: 24px !important;
  }
}


/* /assets/media-text-alignment-v229.css */
/* v229: match the measured image/text pairs without changing other layouts. */
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-pair-v229{
  align-items:stretch!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-pair-v229 > .media-copy-v229{
  align-self:stretch!important;
  min-width:0;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-pair-v229 > .media-panel-v229{
  display:flex!important;
  flex-direction:column;
  align-self:stretch!important;
  position:relative;
  width:100%!important;
  max-width:none!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  min-width:0;
  margin:0!important;
  padding:0!important;
  gap:18px;
  overflow:visible!important;
  border:0!important;
  border-radius:5px!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-panel-v229 > .media-slot-v229{
  position:relative;
  flex:1 1 0;
  min-width:0;
  min-height:0;
  width:100%;
  overflow:hidden;
  border:1px solid #f5f8fc;
  border-radius:5px!important;
  background:#f5f8fc;
  box-shadow:0 12px 30px rgba(8,27,44,.10);
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-pair-v229 > .media-panel-v229 > .media-slot-v229 img{
  display:block;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  aspect-ratio:auto!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:5px!important;
  box-shadow:none!important;
  transform:none!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-pair-v229 > .media-panel-v229 > .media-full-v229 img{
  object-fit:contain!important;
  padding:12px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-panel-v229 > .media-slot-v229 > .copyright-photo{
  display:block;
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  border-radius:5px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-pair-v229 > .media-panel-v229 > figcaption{
  position:static!important;
  flex:0 0 auto;
  margin:0!important;
  transform:none!important;
  border-radius:5px!important;
}
@media(max-width:980px){
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-pair-v229{
    grid-template-columns:minmax(0,1fr)!important;
  }
  body#sgtm-premium-v223.sgtm-premium-v223.sgtm-audit-v224 main .media-panel-v229 > .media-slot-v229{
    flex:0 0 auto;
    height:auto;
    aspect-ratio:4/3;
  }
}


/* /assets/audit-repairs-v235.css */
/* v235: targeted contrast and native image controls; retain the existing layout. */
body#sgtm-premium-v223.sgtm-premium-v223 main :is(
  .premium-journeys-v223,.services,.expertise-showcase,.coverage,.local-seo,
  .faq,.home-faq,.premium-intro,.diagnostic-systems,.diagnostic-health,
  .diagnostic-vehicle-coverage,.gallery-intro,.uk-seo-v212
) .label,
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.local-seo,.faq,.home-faq).label,
body#sgtm-premium-v223.sgtm-premium-v223 main .gallery-meta,
body#sgtm-premium-v223.sgtm-premium-v223 main .audit-link-card-v222>span:first-child{
  color:#076aae!important;
  -webkit-text-fill-color:#076aae!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(
  .hero,.cta,.dark,.work-preview-section,.work-gallery-hero,
  .worldwide-hub,.diagnostic-local,.electrical-diagnostics,.symptoms
) .label{
  color:#8ad7ff!important;
  -webkit-text-fill-color:#8ad7ff!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main .audit-link-card-v222>small{
  color:#465d70!important;
  -webkit-text-fill-color:#465d70!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.coverage,.local-seo) p a{
  color:#076aae!important;
  text-decoration:underline;
  text-underline-offset:3px;
}
body#sgtm-premium-v223.sgtm-premium-v223 footer .brand small{
  color:#8ad7ff!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 footer .legal{
  color:#c5d7e5;
}
body#sgtm-premium-v223.sgtm-premium-v223 footer .legal a{
  color:#c5d7e5;
  text-decoration:underline;
  text-underline-offset:3px;
}

/* Each article keeps its heading and links; only the image is interactive. */
body#sgtm-premium-v223.sgtm-premium-v223 .gallery-card{cursor:default}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.gallery-media-link,.gallery-image-open,.case-image-open){
  display:block;width:100%;padding:0;margin:0;border:0;
  background:transparent;line-height:0;border-radius:4px;
  overflow:hidden;cursor:zoom-in;
}
body#sgtm-premium-v223.sgtm-premium-v223 .gallery-media-link{cursor:pointer}
body#sgtm-premium-v223.sgtm-premium-v223 .case-hero-media .case-image-open{height:100%}
body#sgtm-premium-v223.sgtm-premium-v223 :is(.gallery-image-open,.case-image-open):focus-visible{
  outline:3px solid #087AC7!important;outline-offset:-3px!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 .gallery-card[hidden]{display:none!important}
body#sgtm-premium-v223.sgtm-premium-v223 .gallery-filter[aria-pressed="true"]{
  background:#087AC7;color:#fff;border-color:#087AC7;
}

/* Descriptive service links added to existing supporting paragraphs. */
body#sgtm-premium-v223.sgtm-premium-v223 main .seo-support-v235 a{
  color:#076aae;text-decoration:underline;text-underline-offset:3px;
}
body#sgtm-premium-v223.sgtm-premium-v223 main .seo-support-v235 a:hover{color:#034376}
body#sgtm-premium-v223.sgtm-premium-v223 main .case-cta-box .seo-support-v235{
  margin-top:16px;
}
body#sgtm-premium-v223.sgtm-premium-v223 main .case-cta-box .seo-support-v235 a{
  color:#c5d7e5!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main .diagnostic-local{
  background:linear-gradient(135deg,#102d43,#123c59)!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main .workshop-diagnostic-price .label{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main .vehicle-support .label{
  color:#076aae!important;
  -webkit-text-fill-color:#076aae!important;
}

/* Calm the remaining bright blue bands so small supporting text stays readable. */
body#sgtm-premium-v223.sgtm-premium-v223 main :is(
  .immo-online,.radio-brands,.care-makes,.adblue-mobile,.bcm-psa,
  .recovery-coverage,.airbag-workflow,.dpf-mobile,.clone-local,
  .dtc-process,.egr-ldv,.mileage-motorhome,.gearbox-premium,
  .remap-local,.key-mobile-area,.coding-mobile,.intl143-final-cta,.sa151-cta
){background:linear-gradient(135deg,#102d43,#123c59)!important}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(
  .immo-online,.radio-brands,.care-makes,.adblue-mobile,.bcm-psa,
  .recovery-coverage,.airbag-workflow,.dpf-mobile,.clone-local,
  .dtc-process,.egr-ldv,.mileage-motorhome,.gearbox-premium,
  .remap-local,.key-mobile-area,.coding-mobile,.intl143-final-cta,.sa151-cta,
  .clone-terms-v32
) .label{
  color:#ffffff!important;-webkit-text-fill-color:#ffffff!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.airbag-workshop-price,.remap-workshop-price) .label{
  color:#fff!important;-webkit-text-fill-color:#fff!important;
}

/* Two older symptom grids retained a dark surface under the premium dark title. */
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.exhaust-symptoms,.sas-symptoms) article{
  background:#fff!important;border-color:#f5f8fc!important;
}
body#sgtm-premium-v223.sgtm-premium-v223 main :is(.exhaust-symptoms,.sas-symptoms) article p{
  color:#465d70!important;
}

/* Added only to labels whose actual source cascade uses a pale surface. */
body#sgtm-premium-v223.sgtm-premium-v223 main .label.label-readable-light-v235{
  color:#076aae!important;-webkit-text-fill-color:#076aae!important;
}

