/* Styles for body-work-painting.css */


/* ============================================================ */
/* FILE PATH: assets/css/body-work-painting.css                 */
/* ============================================================ */

/* ============================================================ */
/* SECTION: Root Variables & Global Controls
/* ============================================================ */
:root {
    /* Change 0.3 to any value from 0.0 (no tint) to 1.0 (solid) */
  --banner-overlay-opacity: 0 !important; /* Original was 0.5 */
  
  /* --- UNIVERSAL BANNER HEIGHT CONTROL --- */
  --universal-banner-height: 100vh !important; /* This variable is not used for height */
  
  /* --- THIS IS THE VARIABLE YOU WILL EDIT --- */
  --universal-banner-padding: 400px 0 !important; /* Doubled from 250px */
  
  --universal-banner-padding-horizontal: 15px !important;

  /* --- TEMPLATE-ONLY TEXT BOX POSITIONING --- */
  --template-horizontal-offset: -50px !important;
  --template-vertical-offset: 0px !important;
  --template-content-max-width: 58.3333% !important;
  --template-content-position-top: -15% !important;
  --template-content-position-right: auto !important;
  --template-content-position-bottom: -100% !important;
  --template-content-position-left: 0% !important;
}

/* ============================================================ */
/* SECTION: Breadcrumb Banner Styling
/* ============================================================ */


html[data-wheel-alignment-balancing-page] .breadcumd__banner {

  min-height: var(--home-banner-height) !important;
  height: var(--home-banner-height) !important;
  background-size: cover !important;
  background-attachment: scroll !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  /* THIS IS THE FORCED RULE THAT WILL WIN ANY CONFLICT */
  background-image: url('../img/banner/wheel-alignment-balancing/wheel-alignment-balancing-banner.webp') !important;
  background-size: cover !important;
  background-attachment: scroll !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  position: relative !important;
}








html[data-wheel-alignment-balancing-page] .breadcumd__banner::before {
  display: none !important;
  content: none !important;
  opacity: 0 !important;
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  
  /* THIS IS THE FIX: We added !important to force this rule to apply */
  background: none !important;
}

html[data-wheel-alignment-balancing-page] .breadcumd__banner .breadcumd__wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
  position: relative;
  padding: var(--universal-banner-padding); 
}

html[data-wheel-alignment-balancing-page] .breadcumd__banner .left__content {
  color: #ffffff;
  font-weight: 600;
}

html[data-wheel-alignment-balancing-page] .breadcumd__banner .right__content {
  display: flex;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
}

html[data-wheel-alignment-balancing-page] .breadcumd__banner .right__content li {
  font-size: 16px;
  font-weight: 600;
  text-transform: capitalize;
  color: var(--theme);
}

html[data-wheel-alignment-balancing-page] .breadcumd__banner .right__content li:not(:last-child) {
  margin-right: 10px;
  color: #ffffff;
}

html[data-wheel-alignment-balancing-page] .breadcumd__banner .right__content li a {
  color: #ffffff;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease-in-out;
}

html[data-wheel-alignment-balancing-page] .breadcumd__banner .right__content li a:hover {
  color: var(--theme);
}

/* ============================================================ */
/* START: BANNER TEXT COLOR OVERRIDES (MOVED FROM THEME-COLOR.CSS)
/* PURPOSE: These rules are moved from the main theme file to
/*          force specific text and link colors on this banner,
/*          overriding any global theme settings.
/* AFFECTS: The title and breadcrumb links within the banner.
/* ============================================================ */
/* This rule handles the "Home" link and the main title */
html[data-wheel-alignment-balancing-page] .breadcumd__banner .breadcumd__wrapper .left__content,
html[data-wheel-alignment-balancing-page] .breadcumd__banner .breadcumd__wrapper .right__content li a {
  color: #ffffff !important; /* Text Color: #ffffff */
}

/* THIS IS THE FIX: It targets the chevron icon AND any link you hover on */
html[data-wheel-alignment-balancing-page] .breadcumd__banner .breadcumd__wrapper .right__content li,
html[data-wheel-alignment-balancing-page] .breadcumd__banner .breadcumd__wrapper .right__content li a:hover {
  color: #facc15 !important; /* Accent Color (Grenier's Yellow): #facc15 */
}

/* This NEW rule specifically targets the LAST link (your active page) and makes it yellow */
html[data-wheel-alignment-balancing-page] .breadcumd__banner .breadcumd__wrapper .right__content li:last-child a {
  color: #facc15 !important; /* Accent Color (Grenier's Yellow): #facc15 */
}

/* ============================================================ */
/* END: BANNER TEXT COLOR OVERRIDES
/* ============================================================ */

/* ============================================================ */
/* SECTION: Breadcrumb Banner Responsive Adjustments
/* PURPOSE: Adjusts the layout of the breadcrumb banner for smaller
/*          screen sizes to ensure readability and proper spacing.
/* AFFECTS: The `.breadcumd__banner` element on tablets and mobile devices.
/* ============================================================ */
@media (max-width: 767px) {
  /* Adjusts the gap between elements in the banner on tablets. */
  html[data-wheel-alignment-balancing-page] .breadcumd__banner .breadcumd__wrapper {
    gap: 20px;
  }
}

@media (max-width: 575px) {
  /* Reduces the font size of the main title on mobile phones. */
  html[data-wheel-alignment-balancing-page] .breadcumd__banner .breadcumd__wrapper .left__content {
    font-size: 24px;
  }
}

/* ============================================================ */
/* SECTION: Header & Straddling Logo Layout
/* PURPOSE: Defines the positioning for the main header section and
/*          the large logo that sits over the navigation menu on
/*          desktop screens.
/* AFFECTS: The `<header>` and its `.straddle-logo` element.
/* ============================================================ */
.header-section {
    /* Establishes positioning context for child elements like the logo. */
    position: relative;
}

.straddle-logo {
    /* Positions the logo absolutely to overlap other elements. */
    position: absolute;
    top: 160%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 20;
}

.straddle-logo img {
    /* Sets the size of the straddling logo image. */
    height: 230px;
    width: auto;
    max-width: none;
}

/* ============================================================ */
/* SECTION: Top Informational Header Bar
/* PURPOSE: Styles the uppermost bar containing contact details and
/*          social media links. This ensures it has a white background
/*          and its contents are correctly aligned.
/* AFFECTS: The `<section class="header__top">` and its contents.
/* ============================================================ */
.header__top {
    /* Sets the height, padding, and appearance of the top bar. */
    min-height: 0px !important;
    padding: 8px 0 !important;
    background-color: #ffffff !important;
    position: relative !important;
    z-index: 99 !important;
}

.header__top .header__wrapper {
    /* Uses Flexbox to align the contact info and social icons on opposite ends. */
    min-height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100%;
    flex-wrap: wrap;
}
    
.header__top .info li {
    /* Styles the text for the contact information (address, phone, email). */
    color: #333333 !important;
    margin-right: 25px !important;
    font-size: 14px !important;
}

.header__top .info li i {
    /* Styles the icons next to the contact information. */
    color: #2e0c5e !important;
    margin-right: 8px !important;
}

.header__top .social__icon {
    /* Aligns the social media icons horizontally. */
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
    gap: 15px !important;
}

.header__top .social__icon li {
    /* Adds spacing between each social media icon. */
    margin-right: 15px !important;
}

.header__top .social__icon li a {
    /* Styles the social media icon links, creating circular purple buttons. */
    width: 32px !important;
    height: 32px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #2e0c5e !important;
    border-radius: 50% !important;
    color: #ffffff !important;
    transition: background-color 0.3s ease;
}

.header__top .social__icon a:hover {
    /* Changes the background color of social icons on hover. */
    background-color: #facc15 !important;
}
.header__top .social__icon a:hover i {
    /* Ensures the icon color remains white on hover. */
    color: #ffffff !important;
}

/* ============================================================ */
/* SECTION: Desktop Navigation Adjustments
/* PURPOSE: Hides the inline logo and creates space in the main menu
/*          for the large straddling logo to sit in the center.
/* AFFECTS: The `.main-menu` on screens wider than 992px.
/* ============================================================ */
@media (min-width: 992px) {
    /* Hides the smaller logo that appears inline with the menu. */
    .header-wrapper .main__logo {
        display: none;
    }
    /* Allows the menu container to expand and center its content. */
    .header-wrapper .logo__menuadjust {
        flex-grow: 1;
        justify-content: center;
    }
    /* Centers the main navigation menu items. */
    .header-wrapper .main-menu {
        justify-content: center;
        width: 100%;
        display: flex;
    }
    /* Pushes menu items apart to create a gap for the logo. */
    .header-wrapper .main-menu > li:nth-child(3) {
        margin-right: 180px;
    }
    .header-wrapper .main-menu > li:nth-child(4) {
        margin-left: 180px;
    }
}

/* ============================================================ */
/* SECTION: Sidebar Logo Sizing
/* PURPOSE: Controls the size of the logo when it appears inside
/*          the slide-out mobile menu panel.
/* AFFECTS: The logo image inside `<div class="side_bar">`.
/* ============================================================ */
.side_bar .logo img {
    max-width: 80%;
    height: auto;
}

/* ============================================================ */
/* SECTION: Service Details Page Layout
/* PURPOSE: Defines the main three-column structure of the page,
/*          including styling for sidebars and the central content area.
/* AFFECTS: `<section class="details__section">`, its rows, and columns.
/* ============================================================ */
.details__section .container {
    /* Sets a very wide container for this specific section. */
    max-width: 1800px !important;
}

.details__section .row {
    /* Ensures columns stretch to the same height. */
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
}

.details__section .col-lg-3,
.details__section .col-lg-6 {
    /* Allows content within columns to be managed by Flexbox. */
    display: flex;
    flex-direction: column;
}

.sidebar__widget {
    /* Adds bottom margin to sidebar widgets. */
    margin-bottom: 30px;
}

.details__thumb img,
.benefit__thumb img {
    /* General styling for images within the details section. */
    width: 100%;
    height: auto;
    object-fit: cover;
    border-radius: 8px;
    max-width: 100%;
}

.benefit .points li {
    /* Styles list items in the "Benefits" section. */
    display: flex;
    align-items: flex-start;
    font-size: 16px !important;
}

.benefit .points .fa-check {
    /* Styles the checkmark icon in the "Benefits" list. */
    margin-right: 10px;
    color: var(--cmn-theme);
    margin-top: 5px;
}

.service__helping .thumb img {
    /* Styles the image within the sidebar support widget. */
    width: 100%;
    height: auto;
    object-fit: cover;
    max-width: 100%;
}

.service__helping .helping__content {
    /* Adds padding to the content area of the support widget. */
    padding: 25px;
}

.service__helping .helping__content h4 {
    /* Styles the heading in the support widget. */
    font-size: 20px;
}

.service__helping .helping__content p {
    /* Styles the paragraph text in the support widget. */
    font-size: 15px !important;
    line-height: 1.5 !important;
}

@media (max-width: 991px) {
    /* Stacks the three columns vertically on mobile devices. */
    .details__section .row {
        flex-direction: column;
    }
}

/* ============================================================ */
/* SECTION: Service List Sidebar Widget — FAQ-Style Glass Cards
/* Two-layer glass morphism: <li> = outer card, <a> = inner pill
/* Exact clone of FAQ accordion .faq-item + .faq-item summary
/* Original button dimensions preserved: 10px radius, 15px 20px padding
/* ============================================================ */
.service__list {
    padding: 0;
    list-style: none;
}

/* Outer glass card — Layer 0 (exact clone of .faq-item) */
.service__list li {
    position: relative;
    overflow: hidden;
    isolation: isolate;
    margin-bottom: 18px !important;
    padding: 14px !important;
    border-radius: 24px !important;
    border: 1px solid rgba(255, 255, 255, 0.62) !important;
    background:
        radial-gradient(circle at top right, rgba(72, 27, 130, 0.12), transparent 34%),
        linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.74) 52%, rgba(245, 240, 252, 0.64)),
        rgba(255, 255, 255, 0.5) !important;
    box-shadow:
        0 30px 62px rgba(72, 27, 130, 0.18),
        0 12px 26px rgba(72, 27, 130, 0.09),
        inset 0 1px 0 rgba(255, 255, 255, 0.94),
        inset 0 -2px 0 rgba(72, 27, 130, 0.1) !important;
    backdrop-filter: blur(24px) saturate(152%);
    -webkit-backdrop-filter: blur(24px) saturate(152%);
    transition:
        transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.28s ease,
        border-color 0.28s ease;
}

.service__list li::before {
    content: "";
    position: absolute;
    inset: 1px;
    z-index: 1;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.04) 42%, rgba(255, 255, 255, 0.16));
    pointer-events: none;
}

/* Triple-stack depth */
.service__list li::after {
    content: "";
    position: absolute;
    left: 10px;
    right: 10px;
    bottom: 2px;
    height: calc(100% - 12px);
    border-radius: 20px;
    background: linear-gradient(180deg, rgba(46, 12, 94, 0.05), rgba(46, 12, 94, 0.13));
    box-shadow: 0 28px 56px rgba(46, 12, 94, 0.2);
    transform: translateY(11px) scale(0.985);
    z-index: 0;
    pointer-events: none;
}

.service__list li > * {
    position: relative;
    z-index: 2;
}

/* Hover on outer card */
.service__list li:hover {
    transform: translateY(-6px);
    border-color: rgba(255, 255, 255, 0.76) !important;
    box-shadow:
        0 38px 76px rgba(72, 27, 130, 0.22),
        0 16px 32px rgba(72, 27, 130, 0.1),
        inset 0 1px 0 rgba(255, 255, 255, 0.98),
        inset 0 -1px 0 rgba(72, 27, 130, 0.12) !important;
}

/* Inner pill — Layer 2 (exact clone of .faq-item summary) */
.service__list li a {
    position: relative;
    z-index: 3;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    width: auto;
    margin: 0;
    border-radius: 10px;
    border: 1px solid rgba(255, 255, 255, 0.62) !important;
    padding: 15px 20px;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.84), rgba(245, 240, 252, 0.56)),
        rgba(255, 255, 255, 0.42) !important;
    color: #2e0c5e !important;
    box-shadow:
        0 18px 36px rgba(72, 27, 130, 0.12),
        0 8px 18px rgba(72, 27, 130, 0.06),
        inset 0 1px 0 rgba(255, 255, 255, 0.9),
        inset 0 -1px 0 rgba(72, 27, 130, 0.08) !important;
    backdrop-filter: blur(18px) saturate(145%);
    -webkit-backdrop-filter: blur(18px) saturate(145%);
    font-weight: 700;
    font-size: 18px;
    text-align: left;
    text-decoration: none;
    transition:
        transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
        box-shadow 0.28s ease,
        border-color 0.28s ease,
        filter 0.28s ease;
}

/* Top sheen on inner pill */
.service__list li a::before {
    content: "";
    position: absolute;
    inset: 1px 1px auto;
    height: 54%;
    border-radius: inherit;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0));
    pointer-events: none;
}

/* Explicit text layer */
.service__list li a span {
    position: relative;
    z-index: 4;
    color: #2e0c5e !important;
    font-weight: 700 !important;
    transition: color 0.28s ease;
}

/* Explicit icon/chevron layer */
.service__list li a i {
    position: relative;
    z-index: 4;
    color: #2e0c5e !important;
    transition: color 0.28s ease;
}

/* Hover on inner pill (follows outer card) */
.service__list li:hover a {
    transform: translateY(-6px);
    border-color: rgba(255, 255, 255, 0.74) !important;
    box-shadow:
        0 32px 56px rgba(72, 27, 130, 0.18),
        0 14px 26px rgba(72, 27, 130, 0.09),
        inset 0 1px 0 rgba(255, 255, 255, 0.96),
        inset 0 -1px 0 rgba(72, 27, 130, 0.11);
    filter: brightness(1.02);
}

/* Active / Current: brighter inner pill, bold text, SAME border */
.service__list li a.active,
.service__list li a.current {
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(245, 240, 252, 0.64)),
        rgba(255, 255, 255, 0.48);
    box-shadow:
        0 18px 36px rgba(72, 27, 130, 0.16),
        0 8px 18px rgba(72, 27, 130, 0.08),
        inset 0 1px 0 rgba(255, 255, 255, 0.94),
        inset 0 -1px 0 rgba(72, 27, 130, 0.1);
    color: #2e0c5e !important;
    border: 1px solid rgba(255, 255, 255, 0.62) !important;
}

.service__list li a.active span,
.service__list li a.current span {
    color: #2e0c5e !important;
    font-weight: 800 !important;
}

.service__list li a.active .fa-chevron-right,
.service__list li a.current .fa-chevron-right {
    color: #2e0c5e !important;
}


/* ============================================================ */
/* PORTED FROM engine-diagnostics-repair.css (glass-stack)       */
/* Rescoped to html[data-wheel-alignment-balancing-page]                            */
/* No aspect-ratio locks: images render full at native size.    */
/* ============================================================ */

/* ═══════════════════════════════════════════════════════════════
   HOME PAGE TOWING SERVICES IMAGE STACK — Engine Diagnostics Top Image
   Source: index.html Towing Services image + home-feature/home-card stack CSS
   Image-only stack: outer tray + image slab + image pill
   ═══════════════════════════════════════════════════════════════ */

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray {
  --engine-image-stack-tray-radius: 26px;
  --engine-image-stack-card-radius: 20px;
  position: relative;
  z-index: 2;
  overflow: visible;
  box-sizing: border-box;
  padding: 12px;
  line-height: 0;
  border-radius: var(--engine-image-stack-tray-radius);
  border: 1px solid rgba(255, 255, 255, 0.62);
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.14), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.44);
  box-shadow:
    0 34px 70px rgba(72, 27, 130, 0.2),
    0 14px 30px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
  transform: none;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray::before {
  content: "";
  position: absolute;
  inset: 7px;
  z-index: 0;
  pointer-events: none;
  border-radius: calc(var(--engine-image-stack-tray-radius) - 4px);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.04) 42%, rgba(255, 255, 255, 0.16));
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 2px;
  z-index: -1;
  height: calc(100% - 12px);
  pointer-events: none;
  border-radius: calc(var(--engine-image-stack-tray-radius) - 6px);
  background: linear-gradient(180deg, rgba(46, 12, 94, 0.05), rgba(46, 12, 94, 0.13));
  box-shadow: 0 28px 56px rgba(46, 12, 94, 0.2);
  transform: translateY(11px) scale(0.985);
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray:hover {
  transform: none;
}

html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab {
  position: relative;
  z-index: 3;
  overflow: hidden;
  box-sizing: border-box;
  margin: 0;
  padding: 8px;
  line-height: 0;
  border-radius: var(--engine-image-stack-card-radius);
  border: 1px solid rgba(255, 255, 255, 0.5);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(245, 240, 252, 0.46)),
    rgba(255, 255, 255, 0.38);
  box-shadow:
    0 18px 36px rgba(72, 27, 130, 0.12),
    0 8px 18px rgba(72, 27, 130, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(72, 27, 130, 0.08);
  backdrop-filter: blur(18px) saturate(142%);
  -webkit-backdrop-filter: blur(18px) saturate(142%);
  transform: none;
}

html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 3;
  height: 42%;
  pointer-events: none;
  border-radius: var(--engine-image-stack-card-radius) var(--engine-image-stack-card-radius) 0 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), transparent);
}

html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab a {
  position: relative;
  z-index: 2;
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  line-height: 0;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(245, 240, 252, 0.46)),
    rgba(255, 255, 255, 0.38);
  box-shadow:
    0 18px 36px rgba(72, 27, 130, 0.12),
    0 8px 18px rgba(72, 27, 130, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(72, 27, 130, 0.08);
  backdrop-filter: blur(18px) saturate(142%);
  -webkit-backdrop-filter: blur(18px) saturate(142%);
  transform: none;
}

html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab a::before {
  content: none;
  display: none;
}

html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  object-fit: cover;
  object-position: center center;
  border-radius: 6px !important;
  box-shadow:
    0 10px 24px rgba(46, 12, 94, 0.14),
    0 3px 8px rgba(46, 12, 94, 0.08);
  transition:
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab a:hover img {
  transform: scale(1.035);
  filter: saturate(1.05) contrast(1.03);
}


/* --- Positioning for Click-to-View Icon --- */
.service__thumb,
.blog__thumb {
    position: relative; /* Needed for positioning the icon */
}

/* --- Click-to-View Icon Styling --- */
/* This adds a magnifying glass icon over all targeted images. */
.service__thumb a::before,
.blog__thumb a::before,
.shop-single-slide .swiper-slide a::before,
.details__thumb a::before,
.benefit__thumb a::before,
.service__helping .thumb a::before {
    content: '\f00e'; /* Font Awesome search/magnify icon */
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(1);
    color: white;
    font-size: 40px;
    background-color: rgba(0, 0, 0, 0.4);
    border-radius: 50%;
    width: 80px;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: opacity 0.3s ease, transform 0.3s ease;
    z-index: 5;
    pointer-events: none; /* Allows clicks to go through to the link */
}

/* --- Show Icon on Hover --- */
/* The icon appears when you hover over any targeted image container. */
.service__items:hover .service__thumb a::before,
.blog__items:hover .blog__thumb a::before,
.shop__details .image.img:hover a::before,
.details__thumb:hover a::before,
.benefit__thumb:hover a::before,
.service__helping .thumb:hover a::before {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1.1);
}
/* Hero glass card — text + buttons (shell: wheel-alignment-balancing-banner.css) */
html[data-wheel-alignment-balancing-page] #truck-repair-hero #main-banner.banner__image {
  background-image: url('../img/banner/wheel-alignment-balancing/wheel-alignment-balancing-banner.webp') !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner-glass-card h1,
html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner-glass-card__title {
  color: #ffffff !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner-glass-card__tagline {
  color: #facc15 !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__content p.region-intro-text,
html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner-glass-card__text {
  color: #ffffff !important;
  font-weight: 400 !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  flex-wrap: wrap !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn,
html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn2 {
  padding: 16px 35px !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  border-radius: 50px !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn,
html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button.banner-glass-card__actions a.cmn--btn,
html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner-glass-card__actions a.cmn--btn {
  background-color: #facc15 !important;
  background: #facc15 !important;
  border: 3px solid #2e0c5e !important;
  border-color: #2e0c5e !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn:hover,
html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button.banner-glass-card__actions a.cmn--btn:hover,
html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner-glass-card__actions a.cmn--btn:hover {
  background-color: #ffffff !important;
  background: #ffffff !important;
  border-color: #2e0c5e !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn span,
html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner-glass-card__actions a.cmn--btn span {
  color: #222222 !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn2 {
  background-color: transparent !important;
  border: 2px solid #ffffff !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn2:hover {
  background-color: #ffffff !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn2 span {
  color: #ffffff !important;
}

html[data-wheel-alignment-balancing-page] #truck-repair-hero .banner__button-override a.cmn--btn2:hover span {
  color: #222222 !important;
}


/* Engine Diagnostics benefit image: Home Towing Services image-only stack */
html[data-wheel-alignment-balancing-page] .benefit__thumb {
  --engine-benefit-image-stack-tray-radius: 26px;
  --engine-benefit-image-stack-card-radius: 20px;
  --engine-benefit-image-stack-pill-radius: 8px;
  position: relative;
  z-index: 2;
  overflow: visible;
  box-sizing: border-box;
  padding: 12px;
  line-height: 0;
  border-radius: var(--engine-benefit-image-stack-tray-radius);
  border: 1px solid rgba(255, 255, 255, 0.62);
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.14), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.44);
  box-shadow:
    0 34px 70px rgba(72, 27, 130, 0.2),
    0 14px 30px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
  transform: none;
}

html[data-wheel-alignment-balancing-page] .benefit__thumb::before {
  content: "";
  position: absolute;
  inset: 7px;
  z-index: 0;
  pointer-events: none;
  border-radius: calc(var(--engine-benefit-image-stack-tray-radius) - 4px);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.04) 42%, rgba(255, 255, 255, 0.16));
}

html[data-wheel-alignment-balancing-page] .benefit__thumb::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 2px;
  z-index: -1;
  height: calc(100% - 12px);
  pointer-events: none;
  border-radius: calc(var(--engine-benefit-image-stack-tray-radius) - 6px);
  background: linear-gradient(180deg, rgba(46, 12, 94, 0.05), rgba(46, 12, 94, 0.13));
  box-shadow: 0 28px 56px rgba(46, 12, 94, 0.2);
  transform: translateY(11px) scale(0.985);
}

html[data-wheel-alignment-balancing-page] .benefit__thumb:hover {
  transform: none;
  box-shadow:
    0 34px 70px rgba(72, 27, 130, 0.2),
    0 14px 30px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
}

html[data-wheel-alignment-balancing-page] .benefit__thumb > a.image-popup-link {
  position: relative;
  z-index: 3;
  display: block;
  overflow: hidden;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 8px;
  line-height: 0;
  border-radius: var(--engine-benefit-image-stack-card-radius);
  border: 1px solid rgba(255, 255, 255, 0.5);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(245, 240, 252, 0.46)),
    rgba(255, 255, 255, 0.38);
  box-shadow:
    0 18px 36px rgba(72, 27, 130, 0.12),
    0 8px 18px rgba(72, 27, 130, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(72, 27, 130, 0.08);
  backdrop-filter: blur(18px) saturate(142%);
  -webkit-backdrop-filter: blur(18px) saturate(142%);
  transform: none;
}

html[data-wheel-alignment-balancing-page] .benefit__thumb > a.image-popup-link::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 4;
  display: block;
  width: auto;
  height: 42%;
  pointer-events: none;
  border-radius: var(--engine-benefit-image-stack-card-radius) var(--engine-benefit-image-stack-card-radius) 0 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.72), transparent);
  color: transparent;
  font-size: 0;
  font-family: inherit;
  font-weight: normal;
  opacity: 1;
  transform: none;
}

html[data-wheel-alignment-balancing-page] .benefit__thumb > a.image-popup-link::after {
  content: "";
  position: absolute;
  inset: 8px;
  z-index: 1;
  pointer-events: none;
  border-radius: var(--engine-benefit-image-stack-pill-radius);
  border: 1px solid rgba(255, 255, 255, 0.5);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(245, 240, 252, 0.46)),
    rgba(255, 255, 255, 0.38);
  box-shadow:
    0 18px 36px rgba(72, 27, 130, 0.12),
    0 8px 18px rgba(72, 27, 130, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(72, 27, 130, 0.08);
  backdrop-filter: blur(18px) saturate(142%);
  -webkit-backdrop-filter: blur(18px) saturate(142%);
}

html[data-wheel-alignment-balancing-page] .benefit__thumb > a.image-popup-link img {
  position: relative;
  z-index: 2;
  display: block;
  width: calc(100% - 16px) !important;
  height: auto !important;
  max-width: none !important;
  margin: 8px;
  object-fit: cover !important;
  object-position: center center;
  border-radius: 6px !important;
  box-shadow:
    0 10px 24px rgba(46, 12, 94, 0.14),
    0 3px 8px rgba(46, 12, 94, 0.08);
  transition:
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

html[data-wheel-alignment-balancing-page] .benefit__thumb > a.image-popup-link:hover img {
  transform: scale(1.035);
  filter: saturate(1.05) contrast(1.03);
}


/* Engine Diagnostics support thumbnails: Home Towing Services image-only stack */
html[data-wheel-alignment-balancing-page] .service__helping .thumb {
  overflow: visible;
  box-shadow: none;
  transform: none;
}

html[data-wheel-alignment-balancing-page] .service__helping .thumb:hover {
  transform: none;
  box-shadow: none;
}

html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/3-wheel-alignment-balancing.webp"],
html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/4-wheel-alignment-balancing.webp"] {
  --engine-support-image-stack-tray-radius: 26px;
  --engine-support-image-stack-card-radius: 20px;
  --engine-support-image-stack-pill-radius: 8px;
  position: relative;
  z-index: 2;
  display: block;
  overflow: visible;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 12px;
  line-height: 0;
  border-radius: var(--engine-support-image-stack-tray-radius);
  border: 1px solid rgba(255, 255, 255, 0.62);
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.14), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.44);
  box-shadow:
    0 34px 70px rgba(72, 27, 130, 0.2),
    0 14px 30px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
  transform: none;
}

html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/3-wheel-alignment-balancing.webp"]::before,
html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/4-wheel-alignment-balancing.webp"]::before {
  content: "";
  position: absolute;
  inset: 7px;
  z-index: 0;
  display: block;
  width: auto;
  height: auto;
  pointer-events: none;
  border-radius: calc(var(--engine-support-image-stack-tray-radius) - 4px);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.04) 42%, rgba(255, 255, 255, 0.16));
  color: transparent;
  font-size: 0;
  font-family: inherit;
  font-weight: normal;
  opacity: 1;
  transform: none;
}

html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/3-wheel-alignment-balancing.webp"]::after,
html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/4-wheel-alignment-balancing.webp"]::after {
  content: "";
  position: absolute;
  inset: 20px;
  z-index: 1;
  pointer-events: none;
  border-radius: var(--engine-support-image-stack-card-radius);
  border: 1px solid rgba(255, 255, 255, 0.5);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(245, 240, 252, 0.46)),
    rgba(255, 255, 255, 0.38);
  box-shadow:
    0 18px 36px rgba(72, 27, 130, 0.12),
    0 8px 18px rgba(72, 27, 130, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(72, 27, 130, 0.08);
  backdrop-filter: blur(18px) saturate(142%);
  -webkit-backdrop-filter: blur(18px) saturate(142%);
}

html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/3-wheel-alignment-balancing.webp"] img,
html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/4-wheel-alignment-balancing.webp"] img {
  position: relative;
  z-index: 2;
  display: block;
  width: calc(100% - 32px) !important;
  height: auto !important;
  max-width: none !important;
  margin: 16px;
  object-fit: cover !important;
  object-position: center center;
  border-radius: 6px !important;
  box-shadow:
    0 10px 24px rgba(46, 12, 94, 0.14),
    0 3px 8px rgba(46, 12, 94, 0.08);
  transition:
    transform 0.55s cubic-bezier(0.22, 1, 0.36, 1),
    filter 0.55s cubic-bezier(0.22, 1, 0.36, 1);
}

html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/3-wheel-alignment-balancing.webp"]:hover img,
html[data-wheel-alignment-balancing-page] .thumb > a.image-popup-link[href="../img/truck-repairs/wheel-alignment-balancing/4-wheel-alignment-balancing.webp"]:hover img {
  transform: scale(1.035);
  filter: saturate(1.05) contrast(1.03);
}


/* Engine Diagnostics top details content: FAQ heading glass block */
html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  margin: 0 0 24px;
  padding: clamp(18px, 2.4vw, 26px);
  border: 1px solid rgba(255, 255, 255, 0.62);
  border-radius: 26px;
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.14), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.44);
  box-shadow:
    0 30px 62px rgba(72, 27, 130, 0.18),
    0 12px 26px rgba(72, 27, 130, 0.09),
    inset 0 1px 0 rgba(255, 255, 255, 0.94),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(26px) saturate(154%);
  -webkit-backdrop-filter: blur(26px) saturate(154%);
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: 1;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.04) 42%, rgba(255, 255, 255, 0.16));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content > * {
  position: relative;
  z-index: 2;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 255, 255, 0.76);
  box-shadow:
    0 38px 72px rgba(72, 27, 130, 0.22),
    0 16px 32px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.98),
    inset 0 -1px 0 rgba(72, 27, 130, 0.12);
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content > h3 {
  position: relative;
  overflow: hidden;
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 0 14px !important;
  padding: 12px 16px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(245, 240, 252, 0.46)),
    rgba(255, 255, 255, 0.38);
  box-shadow:
    0 18px 36px rgba(72, 27, 130, 0.12),
    0 8px 18px rgba(72, 27, 130, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(72, 27, 130, 0.08);
  backdrop-filter: blur(18px) saturate(142%);
  -webkit-backdrop-filter: blur(18px) saturate(142%);
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.55rem, 2.15vw, 2.15rem);
  font-weight: 600;
  line-height: 1.08;
  color: #2e0c5e !important;
  -webkit-text-fill-color: #2e0c5e;
  text-align: center !important;
  text-wrap: balance;
  transform: translateY(0);
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease,
    filter 0.28s ease;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content > h3::before {
  content: "";
  position: absolute;
  inset: 1px 1px auto;
  height: 54%;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content > p {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  margin: 0 !important;
  padding: 18px 20px !important;
  border-radius: 24px;
  border: 1px solid rgba(72, 27, 130, 0.14);
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.16), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.46);
  box-shadow:
    0 34px 70px rgba(72, 27, 130, 0.2),
    0 14px 30px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
  color: #4a4a4a !important;
  line-height: 1.75;
  font-weight: 500;
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content > p::before {
  content: "";
  position: absolute;
  inset: 1px 1px auto;
  height: 54%;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content:hover > h3,
html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content:hover > p {
  transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content > h3,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content > p {
    transition: none !important;
  }

  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content:hover,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content:hover > h3,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content:hover > p {
    transform: none !important;
  }
}


/* Engine Diagnostics benefits content: FAQ heading glass block */
html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  margin: 0 0 24px;
  padding: clamp(18px, 2.4vw, 26px);
  border: 1px solid rgba(255, 255, 255, 0.62);
  border-radius: 26px;
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.14), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.44);
  box-shadow:
    0 30px 62px rgba(72, 27, 130, 0.18),
    0 12px 26px rgba(72, 27, 130, 0.09),
    inset 0 1px 0 rgba(255, 255, 255, 0.94),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(26px) saturate(154%);
  -webkit-backdrop-filter: blur(26px) saturate(154%);
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: 1;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.04) 42%, rgba(255, 255, 255, 0.16));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > * {
  position: relative;
  z-index: 2;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 255, 255, 0.76);
  box-shadow:
    0 38px 72px rgba(72, 27, 130, 0.22),
    0 16px 32px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.98),
    inset 0 -1px 0 rgba(72, 27, 130, 0.12);
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > h3.title {
  position: relative;
  overflow: hidden;
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 0 14px !important;
  padding: 12px 16px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(245, 240, 252, 0.46)),
    rgba(255, 255, 255, 0.38);
  box-shadow:
    0 18px 36px rgba(72, 27, 130, 0.12),
    0 8px 18px rgba(72, 27, 130, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(72, 27, 130, 0.08);
  backdrop-filter: blur(18px) saturate(142%);
  -webkit-backdrop-filter: blur(18px) saturate(142%);
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.55rem, 2.15vw, 2.15rem);
  font-weight: 600;
  line-height: 1.08;
  color: #2e0c5e !important;
  -webkit-text-fill-color: #2e0c5e;
  text-align: center !important;
  text-wrap: balance;
  transform: translateY(0);
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease,
    background 0.28s ease,
    filter 0.28s ease;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > h3.title::before {
  content: "";
  position: absolute;
  inset: 1px 1px auto;
  height: 54%;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > p.pra__text,
html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > .benefit__item {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  margin: 0 0 14px !important;
  padding: 18px 20px !important;
  border-radius: 24px;
  border: 1px solid rgba(72, 27, 130, 0.14);
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.16), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.46);
  box-shadow:
    0 34px 70px rgba(72, 27, 130, 0.2),
    0 14px 30px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
  color: #4a4a4a !important;
  line-height: 1.75;
  font-weight: 500;
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > .benefit__item {
  margin-bottom: 0 !important;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > p.pra__text::before,
html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > .benefit__item::before {
  content: "";
  position: absolute;
  inset: 1px 1px auto;
  height: 54%;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit .points {
  position: relative;
  z-index: 2;
  margin: 0;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit .points li {
  color: #000000 !important;
}

html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit:hover > h3.title,
html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit:hover > p.pra__text,
html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit:hover > .benefit__item {
  transform: translateY(-2px);
}

@media (prefers-reduced-motion: reduce) {
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > h3.title,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > p.pra__text,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit > .benefit__item {
    transition: none !important;
  }

  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit:hover,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit:hover > h3.title,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit:hover > p.pra__text,
  html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray + .details__content + .benefit:hover > .benefit__item {
    transform: none !important;
  }
}


/* Engine Diagnostics helping content: compact FAQ glass block aligned to center image */
html[data-wheel-alignment-balancing-page] .sidebar__widget.mt-auto {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content {
  position: relative;
  z-index: 2;
  overflow: hidden;
  isolation: isolate;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  box-sizing: border-box;
  width: min(100%, 520px);
  max-width: 520px;
  margin: 0 auto;
  padding: 0 16px 16px;
  border: 1px solid rgba(255, 255, 255, 0.62);
  border-radius: 26px;
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.14), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.44);
  box-shadow:
    0 30px 62px rgba(72, 27, 130, 0.18),
    0 12px 26px rgba(72, 27, 130, 0.09),
    inset 0 1px 0 rgba(255, 255, 255, 0.94),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(26px) saturate(154%);
  -webkit-backdrop-filter: blur(26px) saturate(154%);
  transform: none;
  transition:
    transform 0.28s cubic-bezier(0.22, 1, 0.36, 1),
    box-shadow 0.28s ease,
    border-color 0.28s ease;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content::before {
  content: "";
  position: absolute;
  inset: 1px;
  z-index: 1;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.04) 42%, rgba(255, 255, 255, 0.16));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > * {
  position: relative;
  z-index: 2;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content:hover {
  transform: none;
  border-color: rgba(255, 255, 255, 0.76);
  box-shadow:
    0 34px 66px rgba(72, 27, 130, 0.2),
    0 14px 28px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.98),
    inset 0 -1px 0 rgba(72, 27, 130, 0.12);
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > h4 {
  grid-column: 1 / -1;
  position: relative;
  overflow: hidden;
  display: block;
  width: auto;
  max-width: 100%;
  margin: 0 !important;
  padding: 6px 14px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.76), rgba(245, 240, 252, 0.46)),
    rgba(255, 255, 255, 0.38);
  box-shadow:
    0 18px 36px rgba(72, 27, 130, 0.12),
    0 8px 18px rgba(72, 27, 130, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(72, 27, 130, 0.08);
  backdrop-filter: blur(18px) saturate(142%);
  -webkit-backdrop-filter: blur(18px) saturate(142%);
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.35rem, 1.85vw, 1.85rem);
  font-weight: 600;
  line-height: 1.08;
  color: #2e0c5e !important;
  -webkit-text-fill-color: #2e0c5e;
  text-align: center !important;
  text-wrap: balance;
  transform: none;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > h4::before {
  content: "";
  position: absolute;
  inset: 1px 1px auto;
  height: 54%;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > p {
  grid-column: 1 / -1;
  position: relative;
  overflow: hidden;
  isolation: isolate;
  margin: 0 !important;
  padding: 10px 14px !important;
  border-radius: 20px;
  border: 1px solid rgba(72, 27, 130, 0.14);
  background:
    radial-gradient(circle at top right, rgba(72, 27, 130, 0.16), transparent 34%),
    linear-gradient(165deg, rgba(255, 255, 255, 0.9), rgba(250, 248, 255, 0.72) 52%, rgba(245, 240, 252, 0.62)),
    rgba(255, 255, 255, 0.46);
  box-shadow:
    0 24px 46px rgba(72, 27, 130, 0.15),
    0 10px 22px rgba(72, 27, 130, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    inset 0 -2px 0 rgba(72, 27, 130, 0.1);
  backdrop-filter: blur(24px) saturate(154%);
  -webkit-backdrop-filter: blur(24px) saturate(154%);
  color: #4a4a4a !important;
  font-size: 0.95rem;
  line-height: 1.6;
  font-weight: 500;
  transform: none;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > p::before {
  content: "";
  position: absolute;
  inset: 1px 1px auto;
  height: 54%;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0));
  pointer-events: none;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .mt-3.mb-3,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .button.mt-3 {
  display: flex !important;
  align-items: stretch;
  justify-content: stretch;
  margin: 0 !important;
  text-align: center !important;
  transform: none;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .mt-3.mb-3 {
  grid-column: 1;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .button.mt-3 {
  grid-column: 2;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .mt-3.mb-3 > div {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  padding: 10px 14px;
  border-radius: 999px;
  border: 2px solid rgba(250, 204, 21, 0.95);
  background:
    linear-gradient(180deg, #ffe881, #facc15),
    #facc15;
  box-shadow:
    0 14px 26px rgba(250, 204, 21, 0.22),
    0 6px 14px rgba(72, 27, 130, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    inset 0 -1px 0 rgba(72, 27, 130, 0.12);
  color: #2e0c5e !important;
  font-weight: 700;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .mt-3.mb-3 i,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .mt-3.mb-3 a {
  color: #2e0c5e !important;
  -webkit-text-fill-color: #2e0c5e;
  font-weight: 800 !important;
  text-decoration: none !important;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content .sidebar-contact-btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 10px 14px !important;
  border-radius: 999px !important;
  border: 2px solid #2e0c5e !important;
  background:
    linear-gradient(180deg, #481b82, #2e0c5e),
    #2e0c5e !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff;
  box-shadow:
    0 14px 26px rgba(72, 27, 130, 0.24),
    0 6px 14px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.36),
    inset 0 -1px 0 rgba(0, 0, 0, 0.12);
  font-weight: 700 !important;
  font-size: 15px !important;
  text-decoration: none !important;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content .sidebar-contact-btn i,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content .sidebar-contact-btn span {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content:hover > h4,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content:hover > p,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content:hover > .mt-3.mb-3,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content:hover > .button.mt-3 {
  transform: none;
}

@media (max-width: 575px) {
  html[data-wheel-alignment-balancing-page] .service__helping .helping__content {
    grid-template-columns: 1fr;
    width: 100%;
    max-width: 100%;
  }

  html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .mt-3.mb-3,
  html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .button.mt-3 {
    grid-column: 1;
  }
}


/* Engine Diagnostics helping content: email controls side-by-side */
html[data-wheel-alignment-balancing-page] .service__helping .helping__content > ul.mt-3,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .button.mt-4 {
  display: flex !important;
  align-items: stretch;
  justify-content: stretch;
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
  list-style: none !important;
  transform: none;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > ul.mt-3 {
  grid-column: 1;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .button.mt-4 {
  grid-column: 2;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > ul.mt-3 > li {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 10px 14px !important;
  border-radius: 999px;
  border: 2px solid rgba(250, 204, 21, 0.95);
  background:
    linear-gradient(180deg, #ffe881, #facc15),
    #facc15;
  box-shadow:
    0 14px 26px rgba(250, 204, 21, 0.22),
    0 6px 14px rgba(72, 27, 130, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    inset 0 -1px 0 rgba(72, 27, 130, 0.12);
  color: #2e0c5e !important;
  font-weight: 700;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > ul.mt-3 > li i,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content > ul.mt-3 > li a,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content > ul.mt-3 > li span {
  color: #2e0c5e !important;
  -webkit-text-fill-color: #2e0c5e;
  font-weight: 800 !important;
  text-decoration: none !important;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .button.mt-4 > a.cmn--btn2 {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 46px;
  box-sizing: border-box;
  margin: 0 !important;
  padding: 10px 14px !important;
  border-radius: 999px !important;
  border: 2px solid #2e0c5e !important;
  background:
    linear-gradient(180deg, #481b82, #2e0c5e),
    #2e0c5e !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff;
  box-shadow:
    0 14px 26px rgba(72, 27, 130, 0.24),
    0 6px 14px rgba(72, 27, 130, 0.1),
    inset 0 1px 0 rgba(255, 255, 255, 0.36),
    inset 0 -1px 0 rgba(0, 0, 0, 0.12);
  font-weight: 700 !important;
  font-size: 15px !important;
  line-height: 1.2;
  text-decoration: none !important;
}

html[data-wheel-alignment-balancing-page] .service__helping .helping__content:hover > ul.mt-3,
html[data-wheel-alignment-balancing-page] .service__helping .helping__content:hover > .button.mt-4 {
  transform: none;
}

@media (max-width: 575px) {
  html[data-wheel-alignment-balancing-page] .service__helping .helping__content > ul.mt-3,
  html[data-wheel-alignment-balancing-page] .service__helping .helping__content > .button.mt-4 {
    grid-column: 1;
  }
}


/* Engine Diagnostics images: clear image surfaces, no overlays or opacity effects */
html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab::before,
html[data-wheel-alignment-balancing-page] .details__thumb.wheel-alignment-balancing-glass-tray a::before,
html[data-wheel-alignment-balancing-page] .benefit__thumb a.image-popup-link::before,
html[data-wheel-alignment-balancing-page] .service__helping .thumb a.image-popup-link::before {
  content: none !important;
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
  background: none !important;
}

html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab img,
html[data-wheel-alignment-balancing-page] .benefit__thumb img,
html[data-wheel-alignment-balancing-page] .service__helping .thumb img {
  opacity: 1 !important;
  filter: none !important;
  mix-blend-mode: normal !important;
}

html[data-wheel-alignment-balancing-page] .wheel-alignment-balancing-glass-slab a:hover img,
html[data-wheel-alignment-balancing-page] .benefit__thumb a.image-popup-link:hover img,
html[data-wheel-alignment-balancing-page] .service__helping .thumb a.image-popup-link:hover img {
  filter: none !important;
}


/* wheel-alignment-balancing service grid: rounded + hover lift */
html[data-wheel-alignment-balancing-page] .service__section .service__items {
  border-radius: 16px;
  overflow: hidden;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
html[data-wheel-alignment-balancing-page] .service__section .service__items:hover {
  transform: translateY(-6px);
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18);
}