/* Scoped to the AdBlue landing page; other service layouts keep the theme. */
.adblue-service-page #page-title.adblue-service-hero {
    position: relative;
    isolation: isolate;
    display: grid;
    min-height: 250px;
    align-items: center;
    margin: 0;
    padding: 48px 0;
    overflow: hidden;
    border: 0;
    background: #202529;
    color: #fff;
}

.adblue-service-page .adblue-service-hero-image,
.adblue-service-page .adblue-service-hero-image img,
.adblue-service-page .adblue-service-hero::after {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
}
.adblue-service-page .adblue-service-hero-image { z-index: -2; }
.adblue-service-page .adblue-service-hero-image img { display: block; object-fit: cover; object-position: center; }
.adblue-service-page .adblue-service-hero::after {
    z-index: -1;
    background: linear-gradient(90deg, rgba(20,25,29,.94), rgba(20,25,29,.58));
    content: "";
}

.adblue-service-page #page-title h1 {
    margin: 0 0 16px;
    color: #fff;
    font-size: clamp(2rem, 4.5vw, 3.5rem);
    font-weight: 700;
    line-height: 1.1;
    letter-spacing: -.025em;
    text-transform: none;
}
.adblue-service-page #page-title .breadcrumb {
    position: static;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: auto;
    margin: 0;
    padding: 0;
    transform: none;
    color: #e3e5e7;
    font-size: .8rem;
}
.adblue-service-page #page-title .breadcrumb a,
.adblue-service-page #page-title .breadcrumb-item.active,
.adblue-service-page #page-title .breadcrumb-item + .breadcrumb-item::before { color: #e3e5e7; }

.adblue-service-page #content > .content-wrap { padding: 48px 0; background: #f3f4f5; }
.adblue-service-page #side-navigation.adblue-service-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 32px;
    margin: 0;
}
.adblue-service-page #side-navigation > .adblue-service-main,
.adblue-service-page #side-navigation > .adblue-service-sidebar { width: auto; min-width: 0; padding: 0; }
.adblue-service-page #side-navigation > .adblue-service-sidebar { position: static !important; top: auto; margin-bottom: 0 !important; }
.adblue-service-page .merged-emission-page > .title-block > .merged-emission-eyebrow { color: #8f2437; font-weight: 700; }

.adblue-service-page .adblue-service-section,
.adblue-service-page .adblue-service-faq,
.adblue-service-page .adblue-service-booking {
    margin: 24px 0 0;
    padding: clamp(20px, 3vw, 36px);
    border: 1px solid #d7dade;
    background: #fff;
    scroll-margin-top: 112px;
}
.adblue-service-page .adblue-service-section > :last-child,
.adblue-service-page .adblue-service-booking > :last-child { margin-bottom: 0; }
.adblue-service-page .adblue-service-section.merged-emission-summary { border-color: #202529; background: #202529; }
.adblue-service-page .adblue-service-section.merged-emission-summary > p,
.adblue-service-page .merged-emission-summary .adblue-service-process p { color: #d3d8dc; }
.adblue-service-page .adblue-service-section.merged-emission-summary > p a { color: #ffb7c2; text-decoration: underline; }
.adblue-service-page .adblue-service-checklist { margin: 0 0 20px; padding-left: 20px; }
.adblue-service-page .adblue-service-checklist li + li { margin-top: 8px; }

.adblue-service-page .adblue-service-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1px;
    margin: 24px 0 0;
    border: 1px solid #d7dade;
    background: #d7dade;
}
.adblue-service-page .adblue-service-fact { min-width: 0; padding: 18px 16px; background: #f3f4f5; }
.adblue-service-page .adblue-service-fact strong,
.adblue-service-page .adblue-service-fact span { display: block; }
.adblue-service-page .adblue-service-fact strong {
    margin-bottom: 6px;
    color: #202529;
    font-size: clamp(1.05rem, 2vw, 1.4rem);
    font-weight: 700;
    line-height: 1.2;
}
.adblue-service-page .adblue-service-fact span { color: #515b63; font-size: .82rem; line-height: 1.45; }
.adblue-service-page .adblue-service-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 20px;
    margin: 20px 0 24px;
    padding: 14px 0;
    border-block: 1px solid #d7dade;
    font-size: .86rem;
}
.adblue-service-page .adblue-service-nav a,
.adblue-service-page .adblue-service-contact a {
    color: #a82239;
    font-weight: 600;
    text-decoration: underline;
    text-underline-offset: 3px;
}
.adblue-service-page .adblue-service-grid,
.adblue-service-page .adblue-service-photo-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
}
.adblue-service-page .adblue-service-grid > * { min-width: 0; }
.adblue-service-page .adblue-service-process { display: grid; gap: 20px; margin: 0 0 24px; padding-left: 24px; }
.adblue-service-page .adblue-service-process li { padding-left: 8px; }
.adblue-service-page .adblue-service-process li::marker { color: #b8243d; font-weight: 700; }
.adblue-service-page .adblue-service-process li > :last-child { margin-bottom: 0; }

.adblue-service-page .adblue-service-faq-list details { border-top: 1px solid #d7dade; }
.adblue-service-page .adblue-service-faq-list details:last-child { border-bottom: 1px solid #d7dade; }
.adblue-service-page .adblue-service-faq-list summary {
    padding: 18px 4px;
    color: #202529;
    font-size: 1rem;
    font-weight: 700;
    line-height: 1.45;
    cursor: pointer;
}
.adblue-service-page .adblue-service-faq-list summary::marker { color: #b8243d; }
.adblue-service-page .adblue-service-faq-list details > p,
.adblue-service-page .adblue-service-faq-list details > div { margin: 0 4px 20px; }
.adblue-service-page .adblue-service-booking { border-top: 5px solid #d62f4b; }
.adblue-service-page .adblue-service-contact { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 20px 0 0; color: #515b63; }
.adblue-service-page .adblue-service-contact .merged-emission-action { text-decoration: none; }
.adblue-service-page .adblue-service-contact .merged-emission-action-primary { color: #fff; }
.adblue-service-page .adblue-service-photo { margin: 24px 0; }
.adblue-service-page .adblue-service-photo img { display: block; width: 100%; height: auto; }
.adblue-service-page .adblue-service-photo figcaption { padding: 10px 0; color: #606970; font-size: .8rem; line-height: 1.5; }
.adblue-service-page .merged-emission-page :focus-visible { outline: 3px solid #a82239; outline-offset: 4px; }

/* The fixed tray must not resize when page or promotional web fonts arrive. */
.adblue-service-page .daw-consent,
.adblue-service-page .daw-consent :where(h2, h3, a, button, input),
.adblue-service-page .daw-consent .daw-consent__offer-marker {
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
}
.adblue-service-page .daw-consent .daw-consent__offer-marker { font-weight: 800; line-height: 1; }
.adblue-service-page .daw-consent .daw-consent__inner,
.adblue-service-page .daw-consent .daw-consent__privacy,
.adblue-service-page .daw-consent .daw-consent__quick-form { min-width: 0; }

@media (min-width: 992px) {
    .adblue-service-page #side-navigation.adblue-service-layout {
        grid-template-columns: minmax(200px, .85fr) minmax(0, 2.6fr);
        align-items: start;
    }
    .adblue-service-page #side-navigation > .adblue-service-main { grid-column: 2; grid-row: 1; }
    .adblue-service-page #side-navigation > .adblue-service-sidebar { grid-column: 1; grid-row: 1; }
}

/* Reserve desktop header space before the theme adds its expanded-menu class. */
@media (min-width: 1200px) {
    .adblue-service-page #header { height: 100px; min-height: 100px; }
    .adblue-service-page #header:not(.sticky-header) #header-wrap,
    .adblue-service-page #header:not(.sticky-header) .header-row,
    .adblue-service-page #header:not(.sticky-header) #logo { height: 100px; min-height: 100px; }
    .adblue-service-page #header:not(.sticky-header) #logo { display: flex; align-items: center; }
    .adblue-service-page #header .header-wrap-clone { height: 100px; }
}

@media (max-width: 767px) {
    .adblue-service-page #page-title.adblue-service-hero { min-height: 210px; padding: 32px 0; }
    .adblue-service-page #content > .content-wrap { padding: 24px 0; }
    .adblue-service-page .adblue-service-grid,
    .adblue-service-page .adblue-service-photo-grid,
    .adblue-service-page .adblue-service-facts { grid-template-columns: minmax(0, 1fr); }
    .adblue-service-page .adblue-service-fact { padding: 14px 16px; }
    .adblue-service-page .adblue-service-contact .merged-emission-action { width: 100%; }
}
