.list-head,
.product-hero-copy {
    min-width: 0;
    max-width: 100%;
}

/* Clickable heatmap page browser and complete anonymous visitor paths. */
.admin-heatmap-filter {
    grid-template-columns: minmax(8rem, 0.5fr) minmax(9rem, 0.55fr) minmax(9rem, 0.6fr) minmax(12rem, 0.75fr) auto;
}

.admin-heatmap-browser-head {
    display: flex;
    justify-content: space-between;
    gap: 1.25rem;
    align-items: end;
}

.admin-heatmap-browser-head h2,
.admin-heatmap-browser-head p {
    margin: 0;
}

.admin-heatmap-browser-head p {
    margin-top: 0.35rem;
    color: #526a86;
}

.admin-heatmap-page-search {
    display: grid;
    flex: 0 1 25rem;
    gap: 0.35rem;
    color: #29425f;
    font-weight: 800;
}

.admin-heatmap-page-search input {
    width: 100%;
    min-height: 2.8rem;
    padding: 0.55rem 0.75rem;
    border: 1px solid #cbd8e6;
    border-radius: 0.75rem;
    background: #ffffff;
    color: #061730;
    font: inherit;
}

.admin-heatmap-page-search input:focus {
    border-color: #0f69b4;
    outline: 3px solid rgba(15, 105, 180, 0.14);
}

.admin-heatmap-page-groups {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.admin-heatmap-page-group {
    overflow: hidden;
    min-width: 0;
    border: 1px solid #cbd8e6;
    border-radius: 1rem;
    background: #f8fbfe;
}

.admin-heatmap-page-group > header {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    align-items: center;
    padding: 0.9rem 1rem;
    border-bottom: 1px solid #dbe5ef;
    background: #eef5fb;
}

.admin-heatmap-page-group.is-clicked > header {
    border-bottom-color: #bfe4cf;
    background: #eaf8f0;
}

.admin-heatmap-page-group.is-quiet > header {
    border-bottom-color: #e2d9ca;
    background: #fbf6ed;
}

.admin-heatmap-page-group h3 {
    margin: 0;
    color: #102f50;
    font-size: 1rem;
}

.admin-heatmap-page-group > header span {
    flex: none;
    padding: 0.2rem 0.55rem;
    border-radius: 999px;
    background: #ffffff;
    color: #405976;
    font-size: 0.82rem;
    font-weight: 850;
}

.admin-heatmap-page-list {
    display: grid;
    gap: 0.5rem;
    max-height: 34rem;
    padding: 0.7rem;
    overflow: auto;
    overscroll-behavior: contain;
}

.admin-heatmap-page-item {
    display: grid;
    gap: 0.4rem;
    min-width: 0;
    padding: 0.72rem 0.8rem;
    border: 1px solid #d9e3ed;
    border-radius: 0.78rem;
    background: #ffffff;
    color: #0f5597;
    text-decoration: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease, transform 0.15s ease;
}

.admin-heatmap-page-item:hover {
    border-color: #76a9d5;
    box-shadow: 0 7px 18px rgba(15, 53, 95, 0.1);
    transform: translateY(-1px);
}

.admin-heatmap-page-item.is-selected {
    border-color: #0f69b4;
    background: #edf6ff;
    box-shadow: inset 0 0 0 1px rgba(15, 105, 180, 0.22);
}

.admin-heatmap-page-item-path {
    min-width: 0;
    color: #0b477d;
    font-weight: 800;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.admin-heatmap-page-item.is-selected .admin-heatmap-page-item-path::before {
    content: "Vybraná · ";
    color: #ad3d00;
    font-size: 0.78rem;
    text-transform: uppercase;
}

.admin-heatmap-page-item-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.85rem;
    color: #5c7189;
    font-size: 0.79rem;
}

.admin-heatmap-page-item-stats b {
    color: #29425f;
}

.admin-heatmap-page-item-stats em {
    color: #405976;
    font-style: normal;
    font-weight: 750;
}

.admin-heatmap-page-empty {
    margin: 0;
    padding: 1rem;
    color: #64778d;
    text-align: center;
}

.admin-heatmap-page-empty[hidden],
.admin-heatmap-page-item[hidden] {
    display: none;
}

.admin-heatmap-journey-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    justify-content: flex-end;
}

.admin-heatmap-journey-summary span {
    padding: 0.38rem 0.65rem;
    border: 1px solid #d2deea;
    border-radius: 999px;
    background: #f4f8fc;
    color: #405976;
    font-size: 0.82rem;
}

.admin-heatmap-journey-list {
    display: grid;
    gap: 1rem;
}

.admin-heatmap-journey {
    overflow: hidden;
    border: 1px solid #cedbe8;
    border-radius: 1rem;
    background: #f8fbfe;
}

.admin-heatmap-journey > header {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.75rem 0.9rem;
    border-bottom: 1px solid #dbe5ef;
    background: #eef5fb;
    color: #29425f;
}

.admin-heatmap-journey > header span {
    color: #63778e;
    font-size: 0.83rem;
}

.admin-heatmap-journey ol {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0.85rem;
    list-style: none;
}

.admin-heatmap-journey li {
    min-width: 0;
}

.admin-heatmap-journey-connector {
    position: relative;
    min-height: 2.35rem;
    margin-left: 1.25rem;
    padding: 0.4rem 0 0.4rem 1.35rem;
    border-left: 2px solid #82acd0;
    color: #526a86;
    font-size: 0.8rem;
    font-weight: 750;
}

.admin-heatmap-journey-connector::after {
    content: "";
    position: absolute;
    bottom: -0.1rem;
    left: -0.34rem;
    width: 0.55rem;
    height: 0.55rem;
    border-right: 2px solid #82acd0;
    border-bottom: 2px solid #82acd0;
    transform: rotate(45deg);
}

.admin-heatmap-journey-connector span {
    display: inline-block;
    max-width: 100%;
    overflow-wrap: anywhere;
}

.admin-heatmap-journey-step {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.75rem;
    align-items: center;
    padding: 0.72rem 0.85rem;
    border: 1px solid #d7e2ed;
    border-radius: 0.8rem;
    background: #ffffff;
}

.admin-heatmap-journey-step.is-selected {
    border-color: #0f69b4;
    background: #edf6ff;
    box-shadow: inset 4px 0 0 #0f69b4;
}

.admin-heatmap-journey-step small {
    display: block;
    margin-bottom: 0.2rem;
    color: #6a7d92;
    font-weight: 750;
}

.admin-heatmap-journey-step a {
    display: block;
    min-width: 0;
    color: #0f5597;
    font-weight: 820;
    line-height: 1.35;
    overflow-wrap: anywhere;
    text-decoration: underline;
    text-underline-offset: 0.16em;
}

.admin-heatmap-journey-step-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.75rem;
    justify-content: flex-end;
    color: #526a86;
    font-size: 0.8rem;
    white-space: nowrap;
}

.admin-heatmap-journey-step-meta b {
    color: #29425f;
}

@media (max-width: 980px) {
    .admin-heatmap-filter {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-heatmap-page-groups {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 620px) {
    .admin-heatmap-filter {
        grid-template-columns: 1fr;
    }

    .admin-heatmap-browser-head {
        display: grid;
        align-items: start;
    }

    .admin-heatmap-page-search {
        width: 100%;
    }

    .admin-heatmap-journey-summary {
        justify-content: flex-start;
    }

    .admin-heatmap-journey > header,
    .admin-heatmap-journey-step {
        grid-template-columns: 1fr;
        display: grid;
    }

    .admin-heatmap-journey-step-meta {
        justify-content: flex-start;
        white-space: normal;
    }
}


/* Mobile breadcrumbs open on the current page and remain swipeable back to the root. */
@media (max-width: 760px) {
    .product-detail-grid,
    .product-detail-image,
    .product-detail-summary,
    .product-summary-heading,
    .product-price-strip,
    .product-buy-box,
    .product-buy-note,
    .product-trust-note,
    .product-status-strip,
    .product-benefit-grid {
        box-sizing: border-box;
        min-width: 0;
        max-width: 100%;
    }

    .breadcrumbs {
        overflow: hidden;
        padding: .65rem 0 .35rem;
    }

    .breadcrumbs .container {
        display: flex;
        flex-wrap: nowrap;
        gap: .32rem;
        overflow-x: auto;
        overscroll-behavior-x: contain;
        padding-bottom: .12rem;
        scrollbar-width: none;
        touch-action: pan-x;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }

    .breadcrumbs .container::-webkit-scrollbar {
        display: none;
    }

    .breadcrumbs .container > * {
        flex: 0 0 auto;
    }

    .breadcrumbs .container .sep {
        margin: 0 .08rem;
    }

    .main-grid {
        padding-top: .1rem;
    }
}

.product-hero h1,
.product-hero-copy .meta {
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Product compatibility engine links */
.vehicle-subtable {
    min-width: 820px;
}

.vehicle-subtable .vehicle-engine-cell {
    width: 27%;
}

.vehicle-subtable .vehicle-period-cell {
    width: 21%;
    white-space: nowrap;
}

.vehicle-subtable .vehicle-fuel-cell {
    width: 22%;
}

.vehicle-subtable .vehicle-engine-action-heading,
.vehicle-subtable .vehicle-engine-action-cell {
    width: 1%;
    text-align: right;
    white-space: nowrap;
}

.vehicle-subtable tbody tr {
    transition: background-color 160ms ease;
}

.vehicle-subtable tbody tr:hover {
    background: #f8fbff;
}

.vehicle-engine-link {
    color: #075fbf;
    font-weight: 800;
    text-decoration: underline;
    text-decoration-color: rgba(7, 95, 191, 0.42);
    text-decoration-thickness: 0.08em;
    text-underline-offset: 0.2em;
    transition: color 160ms ease, text-decoration-color 160ms ease;
}

.vehicle-engine-link:hover,
.vehicle-engine-link:focus-visible {
    color: #034b99;
    text-decoration-color: currentColor;
}

.vehicle-engine-link:focus-visible,
.vehicle-engine-action:focus-visible {
    outline: 3px solid rgba(14, 116, 214, 0.25);
    outline-offset: 3px;
}

.vehicle-engine-action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.48rem;
    min-height: 2.3rem;
    padding: 0.42rem 0.7rem;
    border: 1px solid #b9d5f3;
    border-radius: 0.65rem;
    background: #edf6ff;
    color: #075fbf;
    font-size: 0.84rem;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    transition: color 160ms ease, background-color 160ms ease, border-color 160ms ease;
}

.vehicle-engine-action-arrow {
    font-size: 1.05rem;
    line-height: 1;
    transition: transform 160ms ease;
}

.vehicle-engine-action:hover,
.vehicle-engine-action:focus-visible {
    border-color: #75aee5;
    background: #dfefff;
    color: #034b99;
}

.vehicle-engine-action:hover .vehicle-engine-action-arrow,
.vehicle-engine-action:focus-visible .vehicle-engine-action-arrow {
    transform: translateX(3px);
}

@media (max-width: 820px) {
    .vehicle-brand-list,
    .vehicle-brand,
    .vehicle-accordion,
    .vehicle-group,
    .vehicle-group-content {
        min-width: 0;
        max-width: 100%;
    }

    .vehicle-group-content {
        overflow: hidden;
    }

    .vehicle-brand-list {
        gap: 1.1rem;
    }

    .vehicle-brand {
        border-color: #acc3de;
        border-top: 3px solid #f28a2a;
        border-radius: 1rem;
        box-shadow: 0 5px 14px rgba(31, 61, 98, 0.07);
    }

    .vehicle-brand-head {
        min-height: 3.65rem;
        padding: 0.6rem 0.82rem;
        background: linear-gradient(180deg, #e9f1fa 0%, #e3edf8 100%);
    }

    .vehicle-brand-title::before,
    .vehicle-main::before,
    .vehicle-subtable .vehicle-engine-cell::before {
        display: block;
        margin-bottom: 0.15rem;
        color: #657895;
        font-size: 0.62rem;
        font-weight: 800;
        line-height: 1;
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .vehicle-brand-title::before {
        content: "Značka";
    }

    .vehicle-brand-title {
        line-height: 1.15;
    }

    .vehicle-accordion {
        gap: 0.78rem;
        padding: 0.7rem;
        background: #f1f6fc;
    }

    .vehicle-group {
        border-color: #c8d8ea;
        border-radius: 0.85rem;
        box-shadow: 0 2px 7px rgba(31, 61, 98, 0.05);
    }

    .vehicle-group summary {
        min-height: 3.55rem;
        padding: 0.58rem 0.78rem;
        background: #fff;
    }

    .vehicle-group[open] > summary {
        background: #f9fbfe;
    }

    .vehicle-main::before {
        content: "Model";
    }

    .vehicle-main {
        min-width: 0;
    }

    .vehicle-main strong {
        line-height: 1.2;
    }

    .vehicle-subtable {
        display: block;
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .vehicle-subtable thead {
        display: none;
    }

    .vehicle-subtable tbody {
        display: grid;
        gap: 0.5rem;
        width: 100%;
        min-width: 0;
        padding: 0.55rem;
        background: #edf3f9;
    }

    .vehicle-subtable tbody tr {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 7.4rem;
        grid-template-areas:
            "engine action"
            "period fuel";
        align-items: center;
        gap: 0.48rem 0.7rem;
        width: 100%;
        min-width: 0;
        padding: 0.65rem 0.7rem;
        border: 1px solid #d2dfed;
        border-left: 3px solid #72aee7;
        border-radius: 0.72rem;
        background: #fff;
        box-shadow: 0 1px 3px rgba(31, 61, 98, 0.04);
    }

    .vehicle-subtable tbody tr:last-child {
        border-bottom: 1px solid #d2dfed;
    }

    .vehicle-subtable td,
    .vehicle-subtable .vehicle-engine-cell,
    .vehicle-subtable .vehicle-period-cell,
    .vehicle-subtable .vehicle-fuel-cell,
    .vehicle-subtable .vehicle-engine-action-cell {
        width: auto;
        min-width: 0;
        padding: 0;
        border: 0;
        text-align: left;
        white-space: normal;
        overflow-wrap: anywhere;
    }

    .vehicle-subtable .vehicle-engine-cell {
        grid-area: engine;
        font-size: 1rem;
    }

    .vehicle-subtable .vehicle-engine-cell::before {
        content: attr(data-label);
    }

    .vehicle-subtable .vehicle-period-cell {
        grid-area: period;
    }

    .vehicle-subtable .vehicle-fuel-cell {
        grid-area: fuel;
    }

    .vehicle-subtable .vehicle-period-cell::before,
    .vehicle-subtable .vehicle-fuel-cell::before {
        content: attr(data-label);
        display: block;
        margin-bottom: 0.12rem;
        color: #657895;
        font-size: 0.68rem;
        font-weight: 800;
        letter-spacing: 0.04em;
        text-transform: uppercase;
    }

    .vehicle-subtable .vehicle-engine-action-cell {
        grid-area: action;
        justify-self: end;
    }

    .vehicle-engine-action {
        justify-content: center;
        width: auto;
        min-height: 2.35rem;
        padding: 0.38rem 0.62rem;
        border-radius: 999px;
        font-size: 0.8rem;
    }

    .vehicle-engine-action > span:first-child {
        display: none;
    }

    html[lang="cs"] .vehicle-engine-action::before {
        content: "Přejít";
    }

    html[lang="hu"] .vehicle-engine-action::before {
        content: "Tovább";
    }

    html[lang="ro"] .vehicle-engine-action::before {
        content: "Deschide";
    }

    .vehicle-engine-link {
        display: inline-block;
        padding-block: 0.18rem;
    }
}

@media (max-width: 360px) {
    .vehicle-subtable tbody tr {
        grid-template-columns: minmax(0, 1fr) 6.6rem;
        gap: 0.44rem 0.5rem;
        padding-inline: 0.65rem;
    }

    .vehicle-engine-action {
        padding-inline: 0.52rem;
    }
}

.list-head h1,
.product-hero h1 {
    max-width: 100%;
    font-size: clamp(1.65rem, 2.45vw, 2.45rem);
    line-height: 1.04;
}

.list-hero-meta {
    margin: 0.4rem 0 0;
    font-size: 0.98rem;
    line-height: 1.45;
    color: rgba(235, 243, 255, 0.84);
    font-weight: 600;
}

.site-header,
.content,
.panel,
.hero {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
}

.listing-collapsible-panel {
    padding: 0;
    overflow: hidden;
}

.listing-collapsible-summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.1rem 1.2rem;
    cursor: pointer;
    list-style: none;
}

.listing-collapsible-summary::-webkit-details-marker {
    display: none;
}

.listing-collapsible-summary h2 {
    margin: 0;
    font-family: var(--heading-font);
    font-size: clamp(1.35rem, 2vw, 2rem);
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1.05;
    color: var(--text);
}

.listing-collapsible-summary .vehicle-expand {
    margin-left: auto;
}

.listing-collapsible-panel[open] .listing-collapsible-summary {
    border-bottom: 1px solid var(--line);
}

.listing-collapsible-panel[open] .listing-collapsible-summary .vehicle-expand::after {
    display: none;
}

.listing-collapsible-body {
    padding: 1rem 1.2rem 1.2rem;
}

.listing-collapsible-intro {
    margin: 0 0 1rem;
    color: var(--muted);
    line-height: 1.6;
}

.engine-category-chip {
    display: grid;
    grid-template-columns: 7.25rem minmax(0, 1fr);
    grid-template-areas:
        "icon title"
        "icon action";
    column-gap: 0.85rem;
    row-gap: 0.25rem;
    min-height: 8.75rem;
    min-width: 0;
    align-items: center;
    padding: 0.65rem;
}

.engine-category-grid {
    grid-template-columns: repeat(auto-fit, minmax(310px, 1fr));
}

.engine-category-title {
    grid-area: title;
    align-self: end;
    font-family: var(--heading-font);
    font-size: 1rem !important;
    font-weight: 800 !important;
    line-height: 1.2;
    color: var(--text);
    min-width: 0;
    overflow-wrap: anywhere;
}

.category-visual {
    grid-area: icon;
    display: block;
    width: 7.25rem;
    height: 7.25rem;
    aspect-ratio: 1;
    padding: 0.15rem;
    border: 1px solid rgba(148, 163, 184, 0.32);
    border-radius: 1rem;
    background: #fff;
    align-self: center;
    object-fit: contain;
}

.engine-category-chip .chip-cta {
    grid-area: action;
    align-self: start;
    margin-top: 0;
    padding-top: 0.2rem;
}

.engine-category-chip.has-note {
    grid-template-areas:
        "icon title"
        "icon note"
        "icon action";
}

.engine-category-note {
    grid-area: note;
    color: var(--muted);
    font-size: 0.78rem;
    line-height: 1.3;
}

.grouped-category-sections {
    display: grid;
    gap: 1.2rem;
}

.grouped-category-section {
    display: grid;
    gap: 1rem;
    padding: 1.1rem;
    border: 1px solid var(--line);
    border-radius: 1.25rem;
    background: rgba(255, 255, 255, 0.62);
}

.grouped-category-section-head h3 {
    margin: 0;
    font-family: var(--heading-font);
    font-size: clamp(1.15rem, 1.7vw, 1.5rem);
    font-weight: 800;
    letter-spacing: -0.03em;
    color: var(--text);
}

.grouped-category-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1rem;
}

.grouped-category-card {
    display: grid;
    gap: 0.9rem;
    padding: 1rem;
    border: 1px solid var(--line);
    border-radius: 1rem;
    background: #fff;
}

.grouped-category-link {
    display: grid;
    grid-template-columns: 5.5rem minmax(0, 1fr);
    grid-template-areas:
        "visual title"
        "visual action";
    align-items: center;
    column-gap: 0.8rem;
    row-gap: 0.35rem;
    color: inherit;
    text-decoration: none;
}

.grouped-category-visual {
    grid-area: visual;
    display: block;
    width: 5.5rem;
    height: 5.5rem;
    padding: 0.15rem;
    border: 1px solid rgba(148, 163, 184, 0.32);
    border-radius: 0.9rem;
    background: #fff;
    object-fit: contain;
}

.grouped-category-title {
    grid-area: title;
    align-self: end;
    font-family: var(--heading-font);
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.2;
    color: var(--text);
}

.grouped-category-link small,
.grouped-category-subgroup small {
    color: var(--muted);
}

.grouped-category-link .chip-cta {
    grid-area: action;
    align-self: start;
    font-size: 0.94rem;
}

.grouped-category-subgroups {
    display: grid;
    gap: 0.55rem;
}

.grouped-category-subgroup {
    display: grid;
    grid-template-columns: 3.25rem minmax(0, 1fr);
    align-items: center;
    gap: 0.75rem;
    padding: 0.72rem 0.8rem;
    border: 1px solid rgba(185, 198, 220, 0.84);
    border-radius: 0.9rem;
    color: inherit;
    text-decoration: none;
    background: rgba(245, 248, 252, 0.9);
    transition: border-color 0.16s ease, background 0.16s ease, transform 0.16s ease;
}

.grouped-category-subgroup-visual {
    display: block;
    width: 3.25rem;
    height: 3.25rem;
    padding: 0.1rem;
    border: 1px solid rgba(148, 163, 184, 0.28);
    border-radius: 0.7rem;
    background: #fff;
    object-fit: contain;
}

.grouped-category-subgroup span {
    font-weight: 700;
    line-height: 1.25;
    color: var(--text);
}

.grouped-category-subgroup:hover,
.grouped-category-subgroup:focus-visible {
    border-color: rgba(255, 127, 18, 0.45);
    background: rgba(255, 245, 237, 0.92);
    transform: translateY(-1px);
}

.listing-vehicle-finder {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.1rem;
    margin-top: 1.1rem;
    margin-bottom: 1.2rem;
}

.listing-vehicle-card {
    min-width: 0;
    padding: 1.55rem;
    border: 1px solid rgba(167, 190, 222, 0.18);
    border-radius: 1.2rem;
    background: linear-gradient(180deg, #132742 0%, #10243d 100%);
    color: #fff;
    box-shadow: 0 18px 38px rgba(10, 25, 45, 0.12);
}

.listing-finder-kicker {
    margin: 0 0 0.45rem;
    color: #ff7a1a;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.listing-vehicle-card h2 {
    margin: 0 0 0.65rem;
    color: #fff;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: clamp(1.55rem, 2.35vw, 2.05rem);
    font-weight: 800;
    letter-spacing: -0.04em;
    line-height: 1.08;
}

.listing-vehicle-card p {
    margin: 0;
    color: rgba(230, 239, 251, 0.78);
    line-height: 1.55;
}

.selector-counts {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin-top: .15rem;
}

.selector-counts small {
    display: inline-flex;
    align-items: center;
    min-height: 1.55rem;
    padding: .2rem .48rem;
    border: 1px solid #dbe6f0;
    border-radius: 999px;
    background: #f5f9fc;
    color: #526577;
    font-size: .74rem;
    font-weight: 700;
    line-height: 1;
}

.listing-vehicle-finder .home-plate-form-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.9rem;
    align-items: stretch;
    margin-top: 1.2rem;
}

.listing-vehicle-finder .home-plate-input-wrap {
    display: flex;
    align-items: center;
    min-height: 4.1rem;
    padding: 0 0.95rem;
    border: 1px solid rgba(196, 211, 235, 0.18);
    border-radius: 1rem;
    background: rgba(8, 24, 43, 0.64);
}

.listing-vehicle-finder .home-plate-country {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 3.15rem;
    height: 3.15rem;
    border-radius: 0.9rem;
    background: rgba(255, 122, 27, 0.14);
    color: #ff8b34;
    font-weight: 800;
    letter-spacing: 0.04em;
}

.listing-vehicle-finder .home-plate-input-wrap input {
    flex: 1 1 auto;
    min-width: 0;
    padding: 0 0 0 0.9rem;
    border: 0;
    outline: 0;
    background: transparent;
    color: #fff;
    font-size: 1.04rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.listing-vehicle-finder .home-plate-input-wrap input::placeholder {
    color: rgba(255, 255, 255, 0.46);
    font-weight: 500;
    letter-spacing: 0;
    text-transform: none;
}

.listing-vehicle-finder .home-plate-submit,
.listing-quick-selector-form .btn-primary {
    min-height: 4.1rem;
    border: 0;
    border-radius: 1rem;
    background: linear-gradient(135deg, #fb923c, #f16500);
    color: #fff;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 14px 26px rgba(249, 115, 22, 0.22);
    transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.listing-vehicle-finder .home-plate-submit {
    min-width: 9.4rem;
    padding: 0 1.45rem;
}

.listing-vehicle-finder .home-plate-submit:hover,
.listing-vehicle-finder .home-plate-submit:focus-visible,
.listing-quick-selector-form .btn-primary:hover,
.listing-quick-selector-form .btn-primary:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 18px 30px rgba(249, 115, 22, 0.3);
    filter: brightness(1.03);
}

.listing-vehicle-finder .home-plate-helper {
    margin-top: 0.9rem;
    color: rgba(230, 239, 251, 0.82);
}

.listing-vehicle-finder .home-plate-helper[data-state="error"] {
    display: block;
    padding: 0.8rem 0.95rem;
    border: 1px solid rgba(248, 113, 113, 0.42);
    border-radius: 0.95rem;
    background: rgba(127, 29, 29, 0.28);
    color: #fee2e2;
    font-weight: 700;
}

.listing-vehicle-finder .home-plate-results {
    display: grid;
    gap: 0.85rem;
    margin-top: 1rem;
}

.listing-vehicle-finder .plate-result-card {
    padding: 1rem 1rem 1.1rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 1rem;
    background:
        radial-gradient(circle at top right, rgba(249, 115, 22, 0.12), transparent 35%),
        rgba(255, 255, 255, 0.06);
    color: #fff;
}

.listing-vehicle-finder .plate-result-top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 1rem;
    margin-bottom: 0.65rem;
}

.listing-vehicle-finder .plate-result-match {
    display: inline-flex;
    align-items: center;
    min-height: 1.85rem;
    padding: 0.2rem 0.7rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.listing-vehicle-finder .plate-result-vin {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.84rem;
    font-weight: 600;
}

.listing-vehicle-finder .plate-result-vin strong,
.listing-vehicle-finder .plate-result-title,
.listing-vehicle-finder .plate-result-value {
    color: #fff;
}

.listing-vehicle-finder .plate-result-title {
    margin: 0;
    font-size: 1.1rem;
    font-weight: 800;
    line-height: 1.3;
}

.listing-vehicle-finder .plate-result-engine {
    margin-top: 0.25rem;
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.95rem;
    font-weight: 600;
}

.listing-vehicle-finder .plate-result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 1rem;
    margin-top: 0.9rem;
}

.listing-vehicle-finder .plate-result-item {
    min-width: 0;
}

.listing-vehicle-finder .plate-result-label {
    display: block;
    margin-bottom: 0.12rem;
    color: rgba(255, 255, 255, 0.58);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.listing-vehicle-finder .plate-result-value {
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.45;
}

.listing-vehicle-finder .plate-result-hint {
    margin-top: 0.8rem;
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.84rem;
    line-height: 1.5;
}

.listing-vehicle-finder .plate-result-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.95rem;
}

.listing-vehicle-finder .plate-result-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 10rem;
    padding: 0.85rem 1.45rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #fb923c, #f97316);
    color: #fff;
    font-size: 0.95rem;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 14px 26px rgba(249, 115, 22, 0.22);
    transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.listing-vehicle-finder .plate-result-button:hover,
.listing-vehicle-finder .plate-result-button:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 18px 30px rgba(249, 115, 22, 0.3);
    filter: brightness(1.03);
}

.listing-vehicle-finder .plate-result-button:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.75);
    outline-offset: 3px;
}

.listing-finder-steps {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem 1rem;
    margin: 1rem 0;
    color: rgba(230, 239, 251, 0.84);
    font-weight: 700;
}

.listing-finder-steps span {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
}

.listing-finder-steps strong {
    display: inline-grid;
    place-items: center;
    width: 1.9rem;
    height: 1.9rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.14);
    color: #fff;
    font-size: 0.9rem;
}

.listing-finder-steps span:first-child strong {
    background: #ff7a1a;
}

.listing-quick-selector-form {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.7rem;
    align-items: stretch;
    margin-top: 1rem;
    padding: 0;
    border: 0;
    background: transparent;
}

.listing-quick-selector-form select {
    min-width: 0;
    min-height: 4.1rem;
    padding: 0 1rem;
    border: 1px solid rgba(196, 211, 235, 0.18);
    border-radius: 1rem;
    outline: 0;
    background: rgba(8, 24, 43, 0.64);
    color: #fff;
    font-weight: 700;
}

.listing-quick-selector-form select:disabled {
    color: rgba(230, 239, 251, 0.42);
    cursor: not-allowed;
}

.listing-quick-selector-form .btn-primary {
    grid-column: 1 / -1;
    justify-self: start;
    min-width: 12rem;
    padding: 0 1.35rem;
}

.listing-finder-benefits {
    display: grid;
    gap: 0.55rem;
    margin-top: 1rem;
    color: rgba(230, 239, 251, 0.82);
}

.listing-finder-benefits span::before {
    content: "";
    display: inline-block;
    width: 0.55rem;
    height: 0.55rem;
    margin-right: 0.55rem;
    border-radius: 999px;
    background: #28c783;
}

@media (max-width: 640px) {
    .listing-vehicle-card {
        padding: 1.2rem;
    }

    .listing-vehicle-finder .home-plate-form-row,
    .listing-quick-selector-form {
        grid-template-columns: 1fr;
    }

    .listing-vehicle-finder .home-plate-submit,
    .listing-quick-selector-form .btn-primary {
        width: 100%;
    }

    .listing-vehicle-finder .plate-result-grid {
        grid-template-columns: 1fr;
    }

    .listing-vehicle-finder .plate-result-actions {
        justify-content: stretch;
    }

    .listing-vehicle-finder .plate-result-button {
        width: 100%;
    }

    .listing-collapsible-summary {
        padding: 1rem;
    }

    .listing-collapsible-summary h2 {
        font-size: clamp(1.35rem, 6vw, 2rem);
    }

    .listing-collapsible-body {
        padding: 0.9rem 1rem 1rem;
    }

    .engine-category-chip {
        grid-template-columns: 4.6rem minmax(0, 1fr);
        column-gap: 0.75rem;
        min-height: 7.25rem;
        padding: 0.72rem;
    }

    .engine-category-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .engine-category-title {
        font-size: 0.88rem !important;
    }

    .category-visual {
        width: 4.6rem;
        height: 4.6rem;
        border-radius: 0.8rem;
    }

    .engine-category-chip .chip-cta {
        font-size: 0.75rem;
    }

    .grouped-category-section {
        padding: 1rem;
    }

    .grouped-category-grid {
        grid-template-columns: 1fr;
    }

    .grouped-category-subgroup {
        grid-template-columns: 3rem minmax(0, 1fr);
    }

    .grouped-category-subgroup-visual {
        width: 3rem;
        height: 3rem;
    }
}

@media (max-width: 520px) {
    .engine-category-grid {
        grid-template-columns: 1fr !important;
    }

    .engine-category-chip {
        grid-template-columns: 5.1rem minmax(0, 1fr);
        min-height: 6.6rem;
    }

    .category-visual {
        width: 5.1rem;
        height: 5.1rem;
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.header-search-toggle {
    display: none;
}

.site-header-search-group {
    display: grid;
    grid-template-columns: minmax(20.5rem, 21.5rem) minmax(0, 1fr);
    flex: 1 1 auto;
    align-items: start;
    gap: 0.7rem;
    min-width: 0;
    margin-left: 0;
    justify-self: end;
    width: min(100%, 49.5rem);
}

.site-header .site-header-search {
    margin: 0;
    min-width: 0;
    width: 100%;
}

.site-header .container.header-wrap {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    align-items: flex-start;
    column-gap: 1rem;
}

.site-header .logo {
    align-self: flex-start;
    min-width: 0;
}

.site-header-plate-search {
    grid-column: 1;
}

.site-header-parts-search {
    grid-column: 2;
}

.site-header-plate-search input {
    min-width: 0;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 700;
}

.site-header-parts-search input {
    min-width: 0;
}

.site-header-plate-search input::placeholder {
    text-transform: none;
    letter-spacing: 0;
    font-weight: 500;
}

.site-header-plate-search button {
    min-width: 5rem;
    white-space: nowrap;
}

.site-header-plate-status {
    grid-column: 1 / -1;
    margin: 0.1rem 0 0;
    color: rgba(235, 243, 255, 0.78);
    font-size: 0.82rem;
    text-align: left;
    padding-left: 0.15rem;
}

.site-header-plate-status[data-state="error"] {
    display: block;
    margin-top: 0.2rem;
    padding: 0.72rem 0.9rem;
    border: 1px solid rgba(248, 113, 113, 0.38);
    border-radius: 0.9rem;
    background: rgba(127, 29, 29, 0.22);
    color: #fee2e2;
    font-weight: 700;
    line-height: 1.4;
}

.site-header-plate-status[data-state="loading"] {
    color: rgba(255, 255, 255, 0.88);
}

.site-header-plate-status[data-state="success"] {
    color: rgba(255, 255, 255, 0.82);
}

.site-header-plate-results {
    grid-column: 1 / -1;
    display: grid;
    gap: 0.85rem;
    margin-top: 0.15rem;
}

.site-header-plate-results .plate-result-card {
    padding: 1rem 1rem 1.1rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 1rem;
    background:
        radial-gradient(circle at top right, rgba(249, 115, 22, 0.12), transparent 35%),
        rgba(255, 255, 255, 0.06);
    color: #fff;
}

.site-header-plate-results .plate-result-top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 1rem;
    margin-bottom: 0.6rem;
}

.site-header-plate-results .plate-result-match {
    display: inline-flex;
    align-items: center;
    min-height: 1.85rem;
    padding: 0.2rem 0.7rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.site-header-plate-results .plate-result-vin {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.82rem;
    font-weight: 600;
}

.site-header-plate-results .plate-result-vin strong {
    color: #fff;
}

.site-header-plate-results .plate-result-title {
    margin: 0;
    color: #fff;
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.3;
}

.site-header-plate-results .plate-result-engine {
    margin-top: 0.2rem;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.92rem;
    font-weight: 600;
}

.site-header-plate-results .plate-result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 1rem;
    margin-top: 0.9rem;
}

.site-header-plate-results .plate-result-item {
    min-width: 0;
}

.site-header-plate-results .plate-result-label {
    display: block;
    margin-bottom: 0.12rem;
    color: rgba(255, 255, 255, 0.58);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.site-header-plate-results .plate-result-value {
    color: #fff;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.45;
}

.site-header-plate-results .plate-result-hint {
    margin-top: 0.8rem;
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.84rem;
    line-height: 1.5;
}

.site-header-plate-results .plate-result-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.9rem;
}

.site-header-plate-results .plate-result-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 9.5rem;
    padding: 0.78rem 1.35rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #fb923c, #f97316);
    color: #fff;
    font-size: 0.94rem;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 14px 26px rgba(249, 115, 22, 0.22);
    transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.site-header-plate-results .plate-result-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 30px rgba(249, 115, 22, 0.28);
    filter: brightness(1.03);
}

.site-header-plate-results .plate-result-button:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.75);
    outline-offset: 3px;
}

@media (max-width: 1200px) {
    .site-header-search-group {
        grid-template-columns: minmax(18rem, 18.75rem) minmax(0, 1fr);
        width: min(100%, 45.5rem);
    }
}

.product-buy-cta {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(255, 141, 32, 0.42) !important;
    background: linear-gradient(135deg, #ffbe45 0%, #ff9618 45%, #ff7700 100%) !important;
    color: #fff !important;
    font-family: var(--heading-font);
    min-height: 4rem;
    font-size: 1.24rem !important;
    font-weight: 900 !important;
    letter-spacing: -0.02em;
    line-height: 1;
    text-shadow: 0 1px 0 rgba(125, 56, 0, 0.14);
    box-shadow:
        0 16px 32px rgba(255, 112, 0, 0.34),
        inset 0 1px 0 rgba(255, 255, 255, 0.3),
        0 0 0 1px rgba(255, 255, 255, 0.1) !important;
    transition: transform 0.16s ease, box-shadow 0.16s ease, filter 0.16s ease, background 0.16s ease;
}

.product-buy-cta::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.02) 52%, rgba(255, 255, 255, 0));
    pointer-events: none;
}

.product-buy-cta:hover,
.product-buy-cta:focus-visible {
    transform: translateY(-1px);
    filter: saturate(1.06) brightness(1.02);
    box-shadow:
        0 18px 34px rgba(255, 127, 18, 0.3),
        0 0 0 4px rgba(18, 38, 61, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.34) !important;
}

.product-buy-cta:active {
    transform: translateY(0);
    box-shadow:
        0 8px 18px rgba(255, 127, 18, 0.2),
        inset 0 1px 0 rgba(255, 255, 255, 0.22) !important;
}

.product-image-link {
    width: 100%;
    aspect-ratio: 1 / 1;
}

.product-image-link img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

@media (max-width: 640px) {
    .product-buy-cta {
        min-height: 3.65rem;
        font-size: 1.08rem !important;
    }
}

.header-search-toggle-icon {
    width: 1.28rem;
    height: 1.28rem;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width: 1260px) {
    .js .site-header .header-wrap {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: start;
        column-gap: 0.75rem;
        row-gap: 0.75rem;
    }

    .js .site-header .logo {
        grid-column: 1;
        grid-row: 1;
        min-width: 0;
        align-items: center;
    }

    .js .site-header .header-search-toggle {
        grid-column: 2;
        grid-row: 1;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 2.4rem;
        height: 2.4rem;
        border: 1px solid rgba(255, 255, 255, 0.18);
        border-radius: 0.82rem;
        background: rgba(255, 255, 255, 0.08);
        color: #fff;
        cursor: pointer;
        flex: 0 0 auto;
        align-self: start;
    }

    .js .site-header .header-search-toggle-icon {
        width: 1rem;
        height: 1rem;
    }

    .js .site-header .site-header-search-group {
        display: none;
        width: 100%;
        grid-column: 1 / -1;
        grid-template-columns: minmax(0, 1fr);
        gap: 0.7rem;
    }

    .js .site-header.search-open .site-header-search-group {
        display: grid;
        gap: 0.7rem;
    }

    .js .site-header .search {
        width: 100%;
        padding: 0;
        background: transparent;
        border: 0;
    }

    .js .site-header .site-header-plate-search,
    .js .site-header .site-header-parts-search {
        grid-column: 1;
        flex: none;
        width: 100%;
    }

    .js .site-header.search-open .site-header-plate-search {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 0.45rem;
    }

    .js .site-header.search-open .site-header-parts-search {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 0.45rem;
        margin-top: 0.1rem;
        padding-top: 0.8rem;
        border-top: 1px solid rgba(255, 255, 255, 0.14);
    }

    .js .site-header .logo-copy {
        min-width: 0;
    }

    .js .site-header .logo-text,
    .js .site-header .logo-subtext {
        white-space: nowrap;
    }

    .js .site-header .logo-text {
        font-size: 0.96rem;
    }

    .js .site-header .logo-subtext {
        font-size: 0.6rem;
        letter-spacing: 0.06em;
    }

    .js .site-header.search-open .search input {
        min-height: 3.2rem;
        padding: 0.95rem 1rem;
        border-radius: 1rem;
        font-size: 0.94rem;
        border: 1px solid rgba(255, 255, 255, 0.18);
        box-shadow: none;
        width: 100%;
        min-width: 0;
    }

    .js .site-header.search-open .search button {
        width: auto;
        min-width: 6rem;
        min-height: 3rem;
        padding: 0.9rem 1rem;
        border-radius: 1rem;
        font-size: 1rem;
    }

    .js .site-header .site-header-plate-status {
        text-align: left;
        margin-top: 0;
        font-size: 0.78rem;
    }

    .site-header-plate-results .plate-result-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .site-header-plate-results .plate-result-actions {
        justify-content: stretch;
    }

    .site-header-plate-results .plate-result-button {
        width: 100%;
    }

    .js .site-header.search-open .header-search-toggle {
        background: rgba(255, 255, 255, 0.14);
        border-color: rgba(255, 255, 255, 0.3);
    }
}

@media (max-width: 640px) {
    .js .site-header .header-search-toggle {
        width: 2.4rem;
        height: 2.4rem;
    }

    .js .site-header .header-search-toggle-icon {
        width: 1rem;
        height: 1rem;
    }
}

.home-main-categories-section {
    background:
        radial-gradient(circle at 12% 8%, rgba(241, 101, 0, 0.1), transparent 28%),
        linear-gradient(180deg, rgba(255, 255, 255, 0), rgba(255, 248, 242, 0.46));
}

.home-main-categories-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.5rem;
    margin-bottom: 1.25rem;
}

.home-main-categories-head > div {
    max-width: 46rem;
}

.home-main-categories-side-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-height: 3rem;
    padding: 0 1.2rem;
    border: 1px solid rgba(241, 101, 0, 0.24);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.72);
    color: #10243d;
    font-weight: 800;
    box-shadow: 0 12px 28px rgba(9, 23, 45, 0.06);
}

.home-main-categories-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.95rem;
}

.home-main-category-card {
    position: relative;
    display: grid;
    gap: 0.55rem;
    min-height: 13.5rem;
    padding: 1.15rem;
    overflow: hidden;
    border: 1px solid rgba(185, 198, 220, 0.82);
    border-radius: 1.25rem;
    background:
        linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(246, 249, 253, 0.92)),
        #fff;
    box-shadow: 0 18px 42px rgba(9, 23, 45, 0.07);
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.home-main-category-card::after {
    content: "";
    position: absolute;
    right: -2.6rem;
    bottom: -3rem;
    width: 8.5rem;
    height: 8.5rem;
    border-radius: 999px;
    background: rgba(241, 101, 0, 0.09);
}

.home-main-category-card:hover,
.home-main-category-card:focus-visible {
    border-color: rgba(241, 101, 0, 0.42);
    box-shadow: 0 22px 48px rgba(9, 23, 45, 0.1);
    transform: translateY(-2px);
}

.home-main-category-card h3 {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #07152a;
    font-size: 1.08rem;
    font-weight: 900;
    letter-spacing: -0.035em;
    line-height: 1.15;
}

.home-main-category-card p {
    position: relative;
    z-index: 1;
    margin: 0;
    color: #52657f;
    font-size: 0.91rem;
    line-height: 1.45;
}

.home-main-category-count {
    position: relative;
    z-index: 1;
    width: fit-content;
    padding: 0.28rem 0.62rem;
    border-radius: 999px;
    background: rgba(241, 101, 0, 0.1);
    color: #d85b00;
    font-size: 0.76rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.home-main-category-cta {
    position: relative;
    z-index: 1;
    align-self: end;
    color: #f16500;
    font-size: 0.88rem;
    font-weight: 900;
}

@media (max-width: 1100px) {
    .home-main-categories-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 760px) {
    .home-main-categories-head {
        display: grid;
        align-items: start;
    }

    .home-main-categories-side-cta {
        width: fit-content;
    }

    .home-main-categories-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 520px) {
    .home-main-categories-grid {
        grid-template-columns: 1fr;
    }

    .home-main-category-card {
        min-height: 0;
    }
}

.brand-directory-hero {
    display: grid;
    gap: 1.2rem;
}

.brand-directory-search-shell {
    display: flex;
    justify-content: center;
}

.brand-directory-search {
    width: min(100%, 54rem);
    display: grid;
    gap: 0.8rem;
    padding: 1.35rem;
    border: 1px solid rgba(241, 101, 0, 0.18);
    border-radius: 1.4rem;
    background:
        linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 248, 242, 0.96));
    box-shadow: 0 22px 48px rgba(9, 23, 45, 0.08);
    text-align: center;
}

.brand-directory-search-label {
    font-size: 1.02rem;
    font-weight: 700;
    color: var(--text);
}

.brand-directory-search-input {
    width: 100%;
    min-height: 3.6rem;
    padding: 0.95rem 1.1rem;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: #fff;
    color: var(--text);
    font: inherit;
    box-shadow: 0 16px 36px rgba(9, 23, 45, 0.08);
}

.brand-directory-search-input:focus {
    outline: none;
    border-color: rgba(241, 101, 0, 0.42);
    box-shadow: 0 0 0 4px rgba(241, 101, 0, 0.12);
}

.brand-directory-search-meta {
    margin: 0;
    color: var(--muted);
    line-height: 1.55;
}

.brand-directory-search-results {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    justify-content: center;
}

.brand-directory-search-result,
.brand-directory-search-empty {
    display: inline-flex;
    align-items: center;
    min-height: 2.75rem;
    padding: 0.7rem 1rem;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    color: var(--text);
    text-decoration: none;
    font-weight: 700;
    box-shadow: 0 12px 28px rgba(9, 23, 45, 0.08);
}

.brand-directory-search-result:hover {
    border-color: rgba(241, 101, 0, 0.38);
    color: var(--brand);
}

.brand-directory-card {
    display: flex;
    flex-direction: column;
    min-height: 184px;
    padding: 1.2rem;
    border-radius: 1rem;
    border: 1px solid var(--line);
    background: #fff;
    text-decoration: none;
    transition: transform 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
}

.brand-directory-card-label {
    margin: 0 0 0.35rem;
    color: var(--accent);
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.brand-directory-card-title {
    margin: 0 0 0.55rem;
    font-family: var(--heading-font);
    font-size: 1.1rem;
    line-height: 1.15;
    color: var(--text);
}

.brand-directory-card-meta {
    display: grid;
    gap: 0.15rem;
    color: var(--muted);
    font-size: 0.86rem;
}

.brand-directory-card-cta {
    margin-top: auto;
    color: var(--accent);
    font-size: 0.86rem;
    font-weight: 700;
}

.product-results-toolbar {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1.1rem;
}

.product-results-toolbar .list-panel-title {
    margin: 0;
}

.vehicle-selection-banner {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(20rem, 0.85fr);
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
    overflow: hidden;
    gap: clamp(1rem, 2.5vw, 2rem);
    align-items: center;
    margin: 0 0 1.1rem;
    padding: clamp(1rem, 2.4vw, 1.55rem);
    border: 1px solid rgba(19, 75, 124, 0.14);
    border-radius: 1.25rem;
    background:
        radial-gradient(circle at 100% 0, rgba(255, 126, 31, 0.13), transparent 42%),
        linear-gradient(135deg, #f5faff 0%, #fff 72%);
}

.vehicle-selection-copy,
.vehicle-selection-facts,
.vehicle-selection-facts > div {
    min-width: 0;
}

.vehicle-selection-question {
    display: block;
    margin-bottom: 0.4rem;
    color: #3c5b7d;
    font-weight: 750;
    line-height: 1.4;
    overflow-wrap: anywhere;
}

.vehicle-selection-copy h2 {
    margin: 0;
    color: var(--text);
    font-family: var(--heading-font);
    font-size: clamp(1.25rem, 2.1vw, 1.85rem);
    line-height: 1.18;
    overflow-wrap: anywhere;
}

.vehicle-selection-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    width: 100%;
    max-width: 100%;
    gap: 0.55rem;
    margin: 0;
}

.vehicle-selection-facts > div {
    padding: 0.72rem 0.78rem;
    border: 1px solid rgba(19, 75, 124, 0.12);
    border-radius: 0.85rem;
    background: rgba(255, 255, 255, 0.82);
}

.vehicle-selection-facts dt {
    margin: 0 0 0.18rem;
    color: #61758e;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.045em;
    line-height: 1.25;
    text-transform: uppercase;
}

.vehicle-selection-facts dd {
    margin: 0;
    color: var(--text);
    font-weight: 800;
    line-height: 1.3;
    overflow-wrap: anywhere;
}

.vehicle-selection-banner.is-statement {
    grid-template-columns: minmax(0, 1fr);
    padding-block: clamp(0.9rem, 1.8vw, 1.2rem);
}

.vehicle-selection-statement {
    max-width: 92ch;
    font-size: clamp(1.05rem, 1.55vw, 1.4rem) !important;
    letter-spacing: 0 !important;
    line-height: 1.3 !important;
    word-spacing: 0.06em;
}

.vehicle-selection-statement strong {
    display: inline;
    color: #dd5b00;
    white-space: normal;
}

.product-sort-form {
    display: grid;
    gap: 0.35rem;
    justify-items: end;
    min-width: min(100%, 18rem);
}

.product-sort-label {
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--muted);
}

.product-sort-select {
    min-width: 18rem;
    min-height: 3rem;
    padding: 0.72rem 2.8rem 0.72rem 0.95rem;
    border-radius: 0.95rem;
    border: 1px solid rgba(18, 38, 61, 0.14);
    background: linear-gradient(180deg, #fff, #f7f9fc);
    color: var(--text);
    font: inherit;
    font-weight: 700;
    box-shadow: 0 10px 24px rgba(9, 23, 45, 0.05);
}

.product-sort-select:focus {
    outline: none;
    border-color: rgba(241, 101, 0, 0.42);
    box-shadow: 0 0 0 4px rgba(241, 101, 0, 0.12);
}

.product-sort-submit {
    min-height: 2.7rem;
    padding: 0.7rem 1rem;
    border: 0;
    border-radius: 0.9rem;
    background: var(--brand);
    color: #fff;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.card .cta-secondary {
    width: 100%;
    min-width: 0;
    border: 1px solid rgba(28, 62, 98, 0.28);
    background: linear-gradient(180deg, #284b6e 0%, #193754 100%);
    color: #fff;
    font-size: 0.96rem;
    letter-spacing: -0.01em;
    box-shadow:
        0 10px 22px rgba(18, 38, 61, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.12);
    transition: transform 0.16s ease, box-shadow 0.16s ease, background 0.16s ease, border-color 0.16s ease;
}

.card .cta-secondary:hover,
.card .cta-secondary:focus-visible {
    transform: translateY(-1px);
    border-color: rgba(28, 62, 98, 0.42);
    background: linear-gradient(180deg, #315b85 0%, #214666 100%);
    color: #fff;
    box-shadow:
        0 14px 28px rgba(18, 38, 61, 0.18),
        0 0 0 4px rgba(36, 84, 129, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.15);
}

.card .cta-secondary:active {
    transform: translateY(0);
    box-shadow:
        0 6px 14px rgba(18, 38, 61, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

@media (hover: hover) {
    .brand-directory-card-cta {
        opacity: 0;
        transform: translateY(4px);
        transition: opacity 0.18s ease, transform 0.18s ease;
    }

    .brand-directory-card:hover {
        transform: translateY(-2px);
        border-color: rgba(241, 101, 0, 0.55);
        box-shadow: 0 16px 34px rgba(9, 23, 45, 0.08);
    }

    .brand-directory-card:hover .brand-directory-card-cta {
        opacity: 1;
        transform: translateY(0);
    }
}

[data-brand-key][hidden] {
    display: none !important;
}

@media (max-width: 640px) {
    .product-grid .card,
    .product-grid .card-body,
    .product-grid .card-main,
    .product-grid .card-bottom,
    .product-grid .price-row,
    .product-grid .price-stack {
        min-width: 0;
    }

    .product-grid .price-row {
        flex-wrap: wrap;
    }

    .card .card-actions,
    .card .card-actions.is-single,
    .card .cta-secondary {
        min-width: 0;
        max-width: 100%;
    }

    .card .cta-secondary {
        padding-inline: 0.4rem;
        white-space: nowrap;
    }

    .brand-directory-search {
        padding: 1rem;
        border-radius: 1.15rem;
    }

    .brand-directory-search-input {
        min-height: 3.35rem;
        padding: 0.85rem 0.95rem;
    }

    .brand-directory-search-results {
        gap: 0.6rem;
    }

    .brand-directory-search-result,
    .brand-directory-search-empty {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    .brand-directory-card-cta {
        opacity: 1;
        transform: none;
    }

    .product-results-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .vehicle-selection-banner {
        grid-template-columns: minmax(0, 1fr);
        gap: 0.85rem;
        padding: 0.95rem;
        border-radius: 1rem;
    }

    .vehicle-selection-question {
        font-size: 0.92rem;
    }

    .vehicle-selection-copy h2 {
        font-size: clamp(1.18rem, 5.6vw, 1.48rem);
    }

    .vehicle-selection-statement {
        font-size: clamp(1rem, 4.6vw, 1.15rem) !important;
        line-height: 1.38 !important;
        word-spacing: 0.08em;
    }

    .vehicle-selection-facts {
        gap: 0.45rem;
    }

    .vehicle-selection-facts > div {
        padding: 0.62rem 0.65rem;
    }

    .vehicle-selection-facts dt {
        font-size: 0.66rem;
    }

    .vehicle-selection-facts dd {
        font-size: 0.9rem;
    }

    .product-sort-form,
    .product-sort-select {
        width: 100%;
        min-width: 0;
    }

    .product-sort-form {
        justify-items: stretch;
    }
}

@media (max-width: 520px) {
    .vehicle-selection-facts {
        grid-template-columns: minmax(0, 1fr);
    }
}

.product-description-panel {
    scroll-margin-top: 7rem;
}

.product-detail-grid {
    grid-template-columns: minmax(260px, 0.82fr) minmax(360px, 1.18fr);
    align-items: start;
}

.product-detail-image {
    min-height: 340px;
    padding: 0.95rem;
}

.product-image-link {
    width: min(100%, 420px);
    margin: 0 auto;
}

.product-image-link img {
    width: 88%;
    height: 88%;
    max-width: 360px;
    max-height: 360px;
    margin: auto;
    object-fit: contain;
}

.product-detail-summary {
    gap: 1.15rem;
    align-content: start;
}

.product-price-strip {
    align-items: center;
    gap: 0.85rem 1rem;
}

.product-price-block {
    gap: 0.18rem;
}

.product-detail-summary .price {
    font-size: 2.55rem;
    line-height: 0.9;
}

.product-buy-box {
    padding: 1.2rem;
    border: 1px solid #f5d8c2;
    background: #fffaf6;
    box-shadow: 0 14px 34px rgba(16, 37, 63, 0.07);
}

.product-buy-cta {
    width: 100%;
}

.product-buy-cta.is-disabled {
    cursor: default;
    pointer-events: none;
    border-color: #7b8796 !important;
    background: #6f7c8e !important;
    color: #ffffff !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
}

.product-buy-box-unavailable {
    border-color: #d8e1ea;
    background: linear-gradient(180deg, #f8fafc 0%, #edf2f7 100%);
    box-shadow: none;
}

.product-buy-note {
    margin-top: 0.8rem;
    color: #7a5b43;
    text-align: center;
}

.product-compatibility-check {
    border-color: #d7e3f1;
    background:
        radial-gradient(circle at 100% 0%, rgba(255, 132, 28, 0.14), transparent 26rem),
        linear-gradient(180deg, #ffffff 0%, #f7fafc 100%);
}

.product-compatibility-check .product-panel-title {
    align-items: flex-start;
}

.product-compatibility-form {
    display: grid;
    gap: 0.95rem;
}

.product-compatibility-row {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto;
    gap: 0.9rem;
    align-items: stretch;
}

.product-compatibility-input {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    min-height: 4.65rem;
    padding: 0.55rem 1rem;
    border: 1px solid #cbd8e6;
    border-radius: 1.05rem;
    background: #ffffff;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.8);
}

.product-compatibility-input .home-plate-country {
    display: inline-grid;
    place-items: center;
    flex: 0 0 auto;
    width: 4rem;
    min-height: 3.25rem;
    border-radius: 0.85rem;
    background: #2e2b35;
    color: #ff841c;
    font-weight: 900;
    letter-spacing: 0.04em;
}

.product-compatibility-input input {
    min-width: 0;
    width: 100%;
    border: 0;
    outline: 0;
    background: transparent;
    color: #061730;
    font-size: 1.35rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.product-compatibility-input input::placeholder {
    color: #8a9ab0;
}

.product-compatibility-submit {
    min-width: 12rem;
    border: 0;
    border-radius: 1.05rem;
    background: linear-gradient(135deg, #ff8a2a 0%, #ff6b11 100%);
    color: #ffffff;
    font-weight: 900;
    font-size: 1.05rem;
    cursor: pointer;
    box-shadow: 0 16px 34px rgba(255, 111, 23, 0.22);
}

.product-compatibility-submit:hover,
.product-compatibility-submit:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 20px 38px rgba(255, 111, 23, 0.28);
}

.product-compatibility-submit:disabled {
    cursor: wait;
    opacity: 0.7;
    transform: none;
}

.product-compatibility-status {
    margin: 0;
    color: #60708a;
    font-weight: 700;
}

.product-compatibility-status[data-state="loading"] {
    color: #365f98;
}

.product-compatibility-status[data-state="error"] {
    color: #b42318;
}

.product-compatibility-result {
    padding: 1.1rem 1.2rem;
    border: 1px solid #cbd8e6;
    border-radius: 1rem;
    background: #ffffff;
    color: #18304d;
    box-shadow: 0 14px 30px rgba(8, 30, 59, 0.06);
}

.product-compatibility-result[data-state="success"] {
    border-color: #31c982;
    background:
        radial-gradient(circle at 100% 0%, rgba(49, 201, 130, 0.18), transparent 18rem),
        linear-gradient(180deg, #effff6 0%, #ffffff 100%);
    box-shadow: 0 18px 38px rgba(24, 167, 100, 0.14);
}

.product-compatibility-result[data-state="error"] {
    border-color: #ffc7c0;
    background: #fff4f2;
}

.product-compatibility-result[data-state="warning"] {
    border-color: #ffd996;
    background: #fff9ed;
}

.product-compatibility-result-title {
    position: relative;
    display: block;
    padding-left: 2.25rem;
    color: #061730;
    font-size: 1.16rem;
    line-height: 1.35;
}

.product-compatibility-result-title::before {
    position: absolute;
    left: 0;
    top: -0.08rem;
    display: inline-grid;
    place-items: center;
    width: 1.7rem;
    height: 1.7rem;
    border-radius: 999px;
    background: #dbe6f2;
    color: #17324f;
    font-size: 0.95rem;
    font-weight: 900;
    content: "!";
}

.product-compatibility-result[data-state="success"] .product-compatibility-result-title {
    color: #075c38;
    font-size: 1.28rem;
}

.product-compatibility-result[data-state="success"] .product-compatibility-result-title::before {
    background: linear-gradient(135deg, #23c879 0%, #0f9c5b 100%);
    color: #ffffff;
    content: "✓";
}

.product-compatibility-result[data-state="error"] .product-compatibility-result-title::before {
    background: #f04438;
    color: #ffffff;
}

.product-compatibility-result[data-state="warning"] .product-compatibility-result-title::before {
    background: #f59e0b;
    color: #ffffff;
}

.product-compatibility-vehicle,
.product-compatibility-disclaimer {
    margin: 0.55rem 0 0;
}

.product-compatibility-vehicle a {
    display: inline-block;
    margin-top: 0.2rem;
    padding: 0.42rem 0.7rem;
    border: 1px solid #c4d4e6;
    border-radius: 999px;
    background: #ffffff;
    color: #0a4b91;
    font-weight: 900;
    text-decoration: underline;
    text-underline-offset: 0.16em;
}

.product-compatibility-result[data-state="success"] .product-compatibility-vehicle a {
    border-color: rgba(15, 156, 91, 0.34);
    background: rgba(255, 255, 255, 0.88);
    color: #075c38;
}

.product-compatibility-disclaimer {
    color: #4f6178;
    line-height: 1.55;
}

.product-compatibility-continue-wrap {
    display: grid;
    justify-items: center;
    gap: 0.55rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(15, 156, 91, 0.22);
    text-align: center;
}

.product-compatibility-continue {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 13rem;
    min-height: 3.25rem;
    padding: 0.75rem 1.4rem;
    border-radius: 0.9rem;
    background: linear-gradient(135deg, #ff9f2f 0%, #ff6b0b 100%);
    color: #ffffff;
    font-size: 1.05rem;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 12px 26px rgba(255, 107, 11, 0.24);
}

.product-compatibility-continue:hover,
.product-compatibility-continue:focus-visible {
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 16px 30px rgba(255, 107, 11, 0.3);
}

.product-compatibility-continue-note {
    margin: 0;
    color: #5c6d81;
    font-size: 0.92rem;
    line-height: 1.45;
}

.product-quick-points {
    margin-top: 0.85rem;
    justify-content: center;
}

.product-unavailable-detail {
    max-width: 58rem;
    margin: 2rem auto;
    background:
        radial-gradient(circle at 100% 0%, rgba(255, 132, 28, 0.14), transparent 22rem),
        linear-gradient(180deg, #ffffff 0%, #f7fafc 100%);
}

.product-unavailable-detail h1 {
    margin: 0.35rem 0 0.75rem;
}

.product-unavailable-detail p {
    max-width: 48rem;
}

.product-unavailable-code {
    display: inline-flex;
    margin-top: 0.75rem;
    padding: 0.65rem 0.85rem;
    border: 1px solid #ffd2ad;
    border-radius: 0.85rem;
    background: #fff7ef;
    color: #8a3a05;
    font-weight: 800;
}

.product-unavailable-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
    margin-top: 1.4rem;
}

.card-badge-stock.is-unavailable {
    border-color: #ffc6b3;
    background: #fff1eb;
    color: #b23316;
}

.availability.is-unavailable {
    border-color: #f2a998;
    background: #fff0ec;
    color: #b42318;
}

.product-sort-noscript {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin-top: 0.55rem;
}

.product-sort-noscript a {
    color: #123a5a;
    font-weight: 800;
    text-decoration: underline;
    text-underline-offset: 0.16em;
}

.product-summary-intro {
    padding: 1rem 1.05rem 1.05rem;
    border: 1px solid #dde6f0;
    border-radius: 1rem;
    background: linear-gradient(180deg, #ffffff 0%, #f9fbfd 100%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
    position: relative;
}

.product-summary-intro::before {
    content: "";
    position: absolute;
    left: 1.05rem;
    top: 1rem;
    bottom: 1rem;
    width: 3px;
    border-radius: 999px;
    background: linear-gradient(180deg, #ffb14c 0%, #ff8a1c 100%);
}

.product-summary-intro-text {
    margin: 0;
    padding-left: 0.95rem;
    color: #3f5472;
    font-size: 0.98rem;
    font-weight: 600;
    line-height: 1.7;
}

.product-description-grid {
    display: grid;
    grid-template-columns: minmax(200px, 280px) minmax(0, 1fr);
    gap: 0.85rem 1.1rem;
    margin: 0;
}

.product-description-grid dt,
.product-description-grid dd {
    margin: 0;
    padding: 0.85rem 0.95rem;
    border: 1px solid #d5e1f1;
    border-radius: 0.9rem;
    background: #fdfefe;
}

.product-description-grid dt {
    color: #405674;
    font-weight: 800;
}

.product-description-grid dd {
    color: #172c47;
    font-weight: 600;
}

.admin-analytics-bars {
    display: grid;
    gap: 0.7rem;
}

.admin-analytics-bar-row {
    display: grid;
    grid-template-columns: minmax(7.5rem, 9rem) minmax(8rem, 1fr) minmax(4.5rem, auto);
    gap: 0.85rem;
    align-items: center;
}

.admin-analytics-bar-row > span,
.admin-analytics-bar-row > strong {
    color: #233a57;
    font-weight: 800;
}

.admin-analytics-bar-track {
    overflow: hidden;
    min-height: 0.8rem;
    border-radius: 999px;
    background: #e7eef7;
}

.admin-analytics-bar-track span {
    display: block;
    min-height: 0.8rem;
    border-radius: inherit;
    background: linear-gradient(90deg, #ff8a2a 0%, #0f355f 100%);
}

/* Privacy-safe aggregate heatmaps in the authenticated administration. */
.admin-heatmap-settings {
    display: grid;
    grid-template-columns: minmax(16rem, .8fr) minmax(22rem, 1.2fr);
    gap: 1.25rem;
    align-items: start;
}
.admin-heatmap-settings h2,
.admin-heatmap-settings p { margin: .35rem 0 0; }
.admin-heatmap-mode-form { display: grid; gap: .65rem; }
.admin-heatmap-mode-option {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .7rem;
    align-items: start;
    padding: .75rem .85rem;
    border: 1px solid #cbd8e6;
    border-radius: .85rem;
    background: #f8fbfe;
    cursor: pointer;
}
.admin-heatmap-mode-option:has(input:checked) { border-color: #0f69b4; background: #edf6ff; }
.admin-heatmap-mode-option input { margin-top: .25rem; }
.admin-heatmap-mode-option span,
.admin-heatmap-mode-option small { display: block; }
.admin-heatmap-mode-option small { margin-top: .2rem; color: #526a86; }
.admin-heatmap-filter {
    display: grid;
    grid-template-columns: minmax(8rem, .5fr) minmax(9rem, .55fr) minmax(9rem, .6fr) minmax(12rem, .75fr) auto;
    gap: .85rem;
    align-items: end;
}
.admin-heatmap-filter label { display: grid; gap: .35rem; min-width: 0; font-weight: 800; }
.admin-heatmap-filter select {
    width: 100%; min-height: 2.8rem; padding: .55rem .75rem;
    border: 1px solid #cbd8e6; border-radius: .75rem; background: #fff; font: inherit;
}
.admin-heatmap-kpis { margin: 1rem 0; }
.admin-heatmap-preview-panel { overflow: hidden; }
.admin-heatmap-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: start; margin-bottom: 1rem; }
.admin-heatmap-heading h2 { overflow-wrap: anywhere; }
.admin-heatmap-heading p { margin: .35rem 0 0; color: #526a86; }
.admin-heatmap-preview {
    overflow: auto; max-height: min(72vh, 64rem); padding: .75rem;
    border: 1px solid #c9d7e7; border-radius: 1rem; background: #edf3f8;
}
.admin-heatmap-scale-frame { position: relative; margin: 0 auto; }
.admin-heatmap-canvas {
    position: absolute; inset: 0 auto auto 0; overflow: hidden; transform-origin: top left;
    border-radius: .7rem; box-shadow: 0 18px 48px rgba(8,34,64,.18); background: #fff;
}
.admin-heatmap-canvas iframe,
.admin-heatmap-overlay { position: absolute; inset: 0; border: 0; }
.admin-heatmap-canvas iframe { pointer-events: none; background: #fff; }
.admin-heatmap-overlay { z-index: 2; pointer-events: none; }
.admin-heatmap-dot {
    position: absolute; width: var(--heat-size,36px); height: var(--heat-size,36px);
    border: 2px solid rgba(174,0,0,.45); border-radius: 50%; opacity: var(--heat-intensity,.4);
    transform: translate(-50%,-50%);
    background: radial-gradient(circle,#fff200 0 18%,#ff7a00 34%,#e50000 62%,rgba(229,0,0,0) 72%);
    box-shadow: 0 0 0 8px rgba(255,71,0,.14), 0 0 22px rgba(226,45,0,.28);
}
.admin-heatmap-scroll-line {
    position: absolute;
    left: 0;
    width: 100%;
    padding: .28rem .55rem;
    border-top: 3px solid rgba(0, 91, 166, var(--scroll-rate, .55));
    background: linear-gradient(90deg, rgba(255,255,255,.94), rgba(255,255,255,.55), transparent);
    color: #072b50;
    font-size: 14px;
    font-weight: 850;
    transform: translateY(-50%);
    text-shadow: 0 1px 0 #fff;
}
.admin-heatmap-secondary-grid {
    display: grid;
    grid-template-columns: minmax(18rem, .8fr) minmax(0, 1.2fr);
    gap: 1rem;
    align-items: start;
}
.admin-heatmap-secondary-grid .panel { min-width: 0; margin: 0; }
.admin-heatmap-scroll-list { display: grid; gap: .65rem; }
.admin-heatmap-scroll-list > div {
    display: grid;
    grid-template-columns: 3.4rem minmax(6rem,1fr) minmax(7rem,auto);
    gap: .65rem;
    align-items: center;
}
.admin-heatmap-scroll-list span,
.admin-heatmap-scroll-list strong { color: #29425f; font-weight: 800; }
.admin-heatmap-scroll-list strong { text-align: right; white-space: nowrap; }
.admin-heatmap-scroll-list i {
    overflow: hidden; height: .78rem; border-radius: 999px; background: #e7eef7;
}
.admin-heatmap-scroll-list b {
    display: block; height: 100%; border-radius: inherit;
    background: linear-gradient(90deg,#ff8a2a 0%,#e33b16 100%);
}
@media (max-width: 980px) {
    .admin-heatmap-settings { grid-template-columns: 1fr; }
    .admin-heatmap-filter { grid-template-columns: repeat(2,minmax(0,1fr)); }
    .admin-heatmap-page-field { grid-column: 1/-1; }
    .admin-heatmap-secondary-grid { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
    .admin-heatmap-filter { grid-template-columns: 1fr; }
    .admin-heatmap-page-field { grid-column: auto; }
    .admin-heatmap-heading { display: grid; }
    .admin-heatmap-scroll-list > div { grid-template-columns: 3.2rem minmax(4rem,1fr); }
    .admin-heatmap-scroll-list strong { grid-column: 1/-1; text-align: left; }
}

.admin-inline-filter {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    align-items: end;
    margin-bottom: 1rem;
}

.admin-inline-filter label {
    display: grid;
    gap: 0.35rem;
    font-weight: 800;
}

.admin-inline-filter input {
    min-height: 2.65rem;
    border: 1px solid #cbd8e6;
    border-radius: 0.75rem;
    padding: 0.45rem 0.7rem;
    color: #061730;
    font-weight: 800;
}

.product-parameters-list {
    display: block;
    margin: 0;
    overflow: hidden;
    border-top: 1px solid #d7e3f1;
}

.product-parameter-row {
    display: grid;
    grid-template-columns: minmax(180px, 0.8fr) minmax(0, 1.2fr);
    gap: 1.5rem;
    align-items: center;
    min-height: 4rem;
    padding: 0.95rem 0;
    border-bottom: 1px solid #d7e3f1;
    background: transparent;
}

.product-parameter-row dt,
.product-parameter-row dd {
    margin: 0;
    padding: 0;
}

.product-parameter-row dt {
    color: #46617f;
    font-size: 1rem;
    font-weight: 650;
}

.product-parameter-row dd {
    color: #061730;
    font-weight: 900;
    font-size: 1.03rem;
    line-height: 1.35;
    text-align: right;
    overflow-wrap: anywhere;
}

.product-parameter-row:hover {
    background: #f7faff;
}

.product-description-text {
    color: #2f3f58;
    line-height: 1.7;
    white-space: normal;
}

.product-description-text p {
    margin: 0 0 1rem;
}

.product-description-text p:last-child {
    margin-bottom: 0;
}

.product-description-cta-wrap {
    display: flex;
    justify-content: center;
    margin-top: 0.9rem;
    padding-top: 0;
}

.product-description-cta {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 13rem;
    min-height: 3.35rem;
    padding: 0.8rem 1.6rem;
    border-radius: 0.9rem;
    background: linear-gradient(135deg, #ff9f2f 0%, #ff6b0b 100%);
    color: #ffffff;
    font-weight: 900;
    text-decoration: none;
    box-shadow: 0 12px 26px rgba(255, 107, 11, 0.22);
}

.product-description-cta:hover,
.product-description-cta:focus-visible {
    color: #ffffff;
    transform: translateY(-1px);
    box-shadow: 0 16px 30px rgba(255, 107, 11, 0.29);
}

@media (max-width: 760px) {
    .product-detail-grid {
        grid-template-columns: 1fr;
    }

    .product-detail-image {
        min-height: 240px;
        padding: 0.8rem;
    }

    .product-image-link {
        width: min(100%, 300px);
    }

    .product-image-link img {
        width: 82%;
        height: 82%;
        max-width: 250px;
        max-height: 250px;
    }

    .product-detail-summary .price {
        font-size: 2.25rem;
    }

    .product-buy-box {
        padding: 1rem 0.95rem 0.95rem;
    }

    .product-summary-intro {
        padding: 0.85rem 0.9rem;
    }

    .product-summary-intro::before {
        left: 0.9rem;
        top: 0.85rem;
        bottom: 0.85rem;
    }

    .product-summary-intro-text {
        padding-left: 0.82rem;
        font-size: 0.94rem;
    }

    .product-description-grid {
        grid-template-columns: 1fr;
    }

    .product-parameter-row {
        grid-template-columns: 1fr;
        gap: 0.2rem;
        padding: 0.85rem 0;
    }

    .product-parameter-row dt {
        padding-bottom: 0;
    }

    .product-parameter-row dd {
        padding-top: 0;
        text-align: left;
    }
}

.selector-grid {
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 0.82rem;
}

.model-series-chip,
.model-selector-chip,
.engine-selector-chip {
    position: relative;
    min-height: 0;
    gap: 0.48rem;
    padding: 1rem 1.05rem 0.95rem;
    border: 1px solid #d5e0ee;
    border-radius: 1rem;
    background:
        linear-gradient(90deg, rgba(255, 132, 28, 0.055) 0%, rgba(255, 132, 28, 0) 36%),
        #ffffff;
    box-shadow: 0 8px 24px rgba(18, 38, 68, 0.055);
    transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.model-series-chip::before,
.model-selector-chip::before,
.engine-selector-chip::before {
    content: "";
    position: absolute;
    inset: 0.9rem auto 0.9rem 0;
    width: 3px;
    border-radius: 999px;
    background: #ff8a2a;
    opacity: 0.72;
}

.model-series-chip:hover,
.model-series-chip:focus-visible,
.model-selector-chip:hover,
.model-selector-chip:focus-visible,
.engine-selector-chip:hover,
.engine-selector-chip:focus-visible {
    border-color: rgba(255, 132, 28, 0.72) !important;
    box-shadow: 0 12px 30px rgba(18, 38, 68, 0.09);
    transform: translateY(-1px);
}

.model-series-chip .selector-title,
.model-selector-chip .selector-title,
.engine-selector-chip .selector-title {
    display: block;
    margin: 0 0 0.22rem;
    color: #061730;
    font-size: clamp(1.05rem, 1.12vw, 1.22rem);
    font-weight: 880;
    line-height: 1.14;
    letter-spacing: -0.02em;
    text-wrap: balance;
}

.model-series-chip .selector-title {
    font-size: clamp(1.14rem, 1.35vw, 1.36rem);
    letter-spacing: -0.028em;
}

.engine-selector-chip .selector-title {
    font-size: clamp(1.08rem, 1.2vw, 1.3rem);
}

.model-selector-chip .selector-meta-line,
.engine-selector-chip .selector-meta-line {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 1.82rem;
    line-height: 1.28;
    overflow-wrap: anywhere;
}

.selector-meta-line-highlight {
    margin-top: 0.05rem;
    padding: 0.34rem 0.52rem;
    border: 1px solid #d4e0ee;
    border-radius: 0.62rem;
    background: #f6f8fb;
    color: #4b5f78;
    font-size: 0.8rem;
    font-weight: 720;
}

.engine-selector-chip .selector-meta-line-highlight {
    border-color: #d4e0ee;
    background: #f6f8fb;
    color: #4b5f78;
}

.selector-series-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0.38rem;
    margin-top: 0;
}

.selector-stat {
    display: inline-flex;
    align-items: center;
    min-height: 1.86rem;
    padding: 0.34rem 0.56rem;
    border: 1px solid #d4e0ee;
    border-radius: 999px;
    background: #f6f8fb;
    color: #52647d;
    font-size: 0.8rem;
    font-weight: 720;
    line-height: 1.15;
}

.selector-stat-primary {
    border-color: #d4e0ee;
    background: #f6f8fb;
    color: #4b5f78;
    font-weight: 760;
}

.selector-count {
    margin-top: 0.12rem;
    color: #7a8798;
    font-size: 0.78rem;
    font-weight: 620;
}

.model-series-chip .chip-cta,
.model-selector-chip .chip-cta,
.engine-selector-chip .chip-cta {
    width: fit-content;
    margin-top: auto;
    padding: 0.45rem 0.66rem;
    border-radius: 999px;
    background: #fff3e8;
    color: #d95800;
    font-size: 0.82rem;
}

.product-oem-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.75rem;
}

.product-oem-item {
    display: grid;
    gap: 0.22rem;
    min-width: 0;
    padding: 0.85rem 0.95rem;
    border: 1px solid #d7e2ef;
    border-radius: 0.95rem;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%);
    transition:
        background-color 160ms ease,
        border-color 160ms ease,
        box-shadow 160ms ease,
        transform 160ms ease;
}

@media (hover: hover) and (pointer: fine) {
    .product-oem-item:hover {
        border-color: #75aee0;
        background: #eef7ff;
        box-shadow: 0 8px 20px rgba(18, 62, 104, 0.1);
        transform: translateY(-1px);
    }
}

.product-oem-item:focus-within {
    border-color: #75aee0;
    background: #eef7ff;
    box-shadow: 0 0 0 3px rgba(38, 132, 214, 0.14);
}

.product-oem-code {
    color: #061730;
    font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.28;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.product-oem-brand {
    color: #68788d;
    font-size: 0.83rem;
    font-weight: 750;
    overflow-wrap: anywhere;
}


.vehicle-content-block {
    background: linear-gradient(180deg, rgba(248, 251, 255, 0.96) 0%, rgba(255, 255, 255, 0.98) 100%);
}

.vehicle-content-copy {
    margin: 0;
    width: 100%;
    max-width: none;
    color: #355070;
    line-height: 1.75;
}

.vehicle-content-copy + .vehicle-content-copy {
    margin-top: 0.95rem;
}

.vehicle-content-faq {
    margin-top: 1.5rem;
    border-top: 1px solid rgba(22, 58, 95, 0.1);
    padding-top: 1.35rem;
}

.vehicle-content-faq h3 {
    margin: 0 0 0.95rem;
    color: #163a5f;
    font-size: 1.15rem;
}

.vehicle-content-faq-list {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.vehicle-content-faq-item {
    padding: 1rem 1.05rem;
    border: 1px solid rgba(22, 58, 95, 0.12);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.96);
}

.vehicle-content-faq-item h4 {
    margin: 0 0 0.55rem;
    color: #163a5f;
    font-size: 1rem;
    line-height: 1.35;
}

.vehicle-content-faq-item p {
    margin: 0;
    color: #355070;
    line-height: 1.65;
    font-size: 0.96rem;
}


@media (max-width: 980px) {
    .vehicle-content-faq-list {
        grid-template-columns: 1fr;
    }
}

.missing-page-panel {
    grid-column: 1 / -1;
    padding: 2rem;
}

.missing-page-intro {
    margin-bottom: 1.75rem;
}

.missing-page-intro h1 {
    margin: 0 0 0.75rem;
    font-size: clamp(2rem, 4vw, 3rem);
    line-height: 1.05;
}

.missing-page-intro p:last-child {
    max-width: 62rem;
    margin: 0;
    color: var(--color-muted);
    font-size: 1.05rem;
}

.missing-page-plate-card {
    margin-bottom: 2rem;
    padding: 1.75rem;
    border: 1px solid var(--color-border);
    border-radius: 1.5rem;
    background: linear-gradient(180deg, #162844 0%, #13263f 100%);
    color: #fff;
}

.missing-page-card-header h2 {
    margin: 0 0 0.75rem;
    font-size: clamp(1.8rem, 3vw, 2.5rem);
    line-height: 1.08;
    color: #fff;
}

.missing-page-card-header p:last-child {
    margin: 0 0 1rem;
    color: rgba(255, 255, 255, 0.78);
}

.page-404 .home-plate-form-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.875rem;
    align-items: stretch;
}

.page-404 .home-plate-input-wrap {
    display: flex;
    align-items: center;
    min-height: 4.4rem;
    border-radius: 1.25rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    background: rgba(10, 24, 43, 0.58);
    padding: 0 1rem;
}

.page-404 .home-plate-country {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    min-width: 3.6rem;
    height: 3.6rem;
    border-radius: 1rem;
    background: rgba(255, 122, 27, 0.14);
    color: #ff8b34;
    font-weight: 800;
    font-size: 1.15rem;
    letter-spacing: 0.02em;
}

.page-404 .home-plate-input-wrap input {
    flex: 1 1 auto;
    min-width: 0;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 1.15rem;
    padding: 0 0 0 1rem;
    outline: none;
}

.page-404 .home-plate-input-wrap input::placeholder {
    color: rgba(255, 255, 255, 0.56);
}

.page-404 .home-plate-submit {
    min-width: 9.5rem;
    padding: 0 1.5rem;
    border: 0;
    border-radius: 1.25rem;
    background: linear-gradient(135deg, #fb923c, #f16500);
    color: #fff;
    font-weight: 800;
    cursor: pointer;
    box-shadow: 0 14px 26px rgba(249, 115, 22, 0.22);
    transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.page-404 .home-plate-submit:hover,
.page-404 .home-plate-submit:focus-visible {
    transform: translateY(-1px);
    box-shadow: 0 18px 30px rgba(249, 115, 22, 0.3);
    filter: brightness(1.03);
}

.page-404 .home-plate-helper {
    margin: 1rem 0 0;
    color: rgba(255, 255, 255, 0.78);
}

.page-404 .home-plate-helper[data-state="loading"] {
    color: rgba(255, 255, 255, 0.92);
}

.page-404 .home-plate-helper[data-state="error"] {
    display: block;
    padding: 0.8rem 0.95rem;
    border: 1px solid rgba(248, 113, 113, 0.42);
    border-radius: 0.95rem;
    background: rgba(127, 29, 29, 0.28);
    color: #fee2e2;
    font-weight: 700;
    line-height: 1.45;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.03);
}

.page-404 .home-plate-helper[data-state="success"] {
    color: rgba(255, 255, 255, 0.92);
}

.page-404 .home-plate-results {
    display: grid;
    gap: 0.85rem;
    margin-top: 1rem;
}

.page-404 .home-plate-results .plate-result-card {
    padding: 1rem 1rem 1.1rem;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 1rem;
    background:
        radial-gradient(circle at top right, rgba(249, 115, 22, 0.12), transparent 35%),
        rgba(255, 255, 255, 0.06);
    color: #fff;
}

.page-404 .home-plate-results .plate-result-top {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem 1rem;
    margin-bottom: 0.6rem;
}

.page-404 .home-plate-results .plate-result-match {
    display: inline-flex;
    align-items: center;
    min-height: 1.85rem;
    padding: 0.2rem 0.7rem;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.12);
    color: rgba(255, 255, 255, 0.92);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.page-404 .home-plate-results .plate-result-vin {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.82rem;
    font-weight: 600;
}

.page-404 .home-plate-results .plate-result-vin strong,
.page-404 .home-plate-results .plate-result-title,
.page-404 .home-plate-results .plate-result-value {
    color: #fff;
}

.page-404 .home-plate-results .plate-result-title {
    margin: 0;
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.3;
}

.page-404 .home-plate-results .plate-result-engine {
    margin-top: 0.2rem;
    color: rgba(255, 255, 255, 0.78);
    font-size: 0.92rem;
    font-weight: 600;
}

.page-404 .home-plate-results .plate-result-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 1rem;
    margin-top: 0.9rem;
}

.page-404 .home-plate-results .plate-result-item {
    min-width: 0;
}

.page-404 .home-plate-results .plate-result-label {
    display: block;
    margin-bottom: 0.12rem;
    color: rgba(255, 255, 255, 0.58);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.page-404 .home-plate-results .plate-result-value {
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.45;
}

.page-404 .home-plate-results .plate-result-hint {
    margin-top: 0.8rem;
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.84rem;
    line-height: 1.5;
}

.page-404 .home-plate-results .plate-result-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 0.9rem;
}

.page-404 .home-plate-results .plate-result-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 9.5rem;
    padding: 0.78rem 1.35rem;
    border-radius: 999px;
    background: linear-gradient(135deg, #fb923c, #f97316);
    color: #fff;
    font-size: 0.94rem;
    font-weight: 800;
    text-decoration: none;
    box-shadow: 0 14px 26px rgba(249, 115, 22, 0.22);
    transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.page-404 .home-plate-results .plate-result-button:hover {
    transform: translateY(-1px);
    box-shadow: 0 18px 30px rgba(249, 115, 22, 0.28);
    filter: brightness(1.03);
}

.page-404 .home-plate-results .plate-result-button:focus-visible {
    outline: 2px solid rgba(255, 255, 255, 0.75);
    outline-offset: 3px;
}

.page-404 .section-label {
    color: #f16500;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.missing-page-brands-head {
    margin-bottom: 1.35rem;
}

.missing-page-brands {
    margin: 2rem -2rem -2rem;
    padding: 2rem;
    border-radius: 1.25rem;
    background: #eef2f6;
}

.missing-page-brands-head h2 {
    margin: 0 0 0.5rem;
    color: #0b1c34;
    font-family: 'Plus Jakarta Sans', sans-serif;
    font-size: clamp(2rem, 3.2vw, 3rem);
    font-weight: 800;
    letter-spacing: -0.045em;
    line-height: 1.08;
}

.missing-page-brands-head p:last-child {
    margin: 0;
    color: #51617a;
    font-size: 1.05rem;
    line-height: 1.45;
}

.missing-page-brand-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.page-404 .card-brand {
    display: flex;
    flex-direction: column;
    min-height: 10.9rem;
    padding: 1.45rem;
    border-radius: 0.75rem;
    border: 1px solid #d5deea;
    background: #fff;
    color: #0b1c34;
    text-decoration: none;
    box-shadow: 0 1px 2px rgba(15, 31, 54, 0.03);
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.page-404 .card-brand:hover {
    border-color: #f16500;
    transform: translateY(-2px);
    box-shadow: 0 14px 28px rgba(15, 31, 54, 0.1);
}

.page-404 .card-brand p:first-child {
    margin: 0 0 0.25rem;
    color: #f16500;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.page-404 .card-brand h3 {
    margin: 0 0 0.5rem;
    color: #061934;
    font-size: 1.15rem;
    line-height: 1.2;
    font-weight: 800;
}

.page-404 .card-brand p:nth-child(3),
.page-404 .card-brand p:nth-child(4) {
    margin: 0;
    color: #51617a;
    font-size: 0.92rem;
    line-height: 1.4;
}

.page-404 .card-brand p:last-child {
    margin: auto 0 0;
    padding-top: 0.75rem;
    color: #f16500;
    font-size: 0.75rem;
    font-weight: 800;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.page-404 .card-brand:hover p:last-child {
    opacity: 1;
}

.missing-page-brand-actions {
    margin-top: 2rem;
    text-align: center;
}

.page-404 .btn-outline {
    display: inline-block;
    border: 1px solid #d5deea;
    border-radius: 0.8rem;
    background: #fff;
    color: #061934;
    padding: 0.85rem 1.5rem;
    font-weight: 700;
    text-decoration: none;
    transition: border-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
}

.page-404 .btn-outline:hover,
.page-404 .btn-outline:focus-visible {
    border-color: #f16500;
    color: #f16500;
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(25, 38, 68, 0.08);
}

@media (min-width: 640px) {
    .missing-page-brand-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 960px) {
    .missing-page-brand-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (min-width: 1280px) {
    .missing-page-brand-grid {
        grid-template-columns: repeat(6, minmax(0, 1fr));
    }
}

.cta,
.home-plate-submit,
.load-more-btn,
.product-buy-cta,
.product-compatibility-submit,
.all-brands-cta {
    background: linear-gradient(135deg, #b84908 0%, #8f3404 100%);
    color: #ffffff;
}

.cta:hover,
.home-plate-submit:hover,
.load-more-btn:hover,
.product-buy-cta:hover,
.product-compatibility-submit:hover,
.all-brands-cta:hover,
.cta:focus-visible,
.home-plate-submit:focus-visible,
.load-more-btn:focus-visible,
.product-buy-cta:focus-visible,
.product-compatibility-submit:focus-visible,
.all-brands-cta:focus-visible {
    background: linear-gradient(135deg, #c95612 0%, #7b2b02 100%);
    color: #ffffff;
}

@media (max-width: 740px) {
    .hero,
    .hero-home,
    .hero-grid,
    .hero-copy,
    .hero-selector-card,
    .listing-vehicle-card {
        overflow: visible;
    }

    .hero-home,
    .hero-selector-card {
        min-height: 0;
    }

    .hero-copy h1,
    .hero h1 {
        max-width: 100%;
        font-size: clamp(2.1rem, 11vw, 3.25rem);
        line-height: 1.04;
        overflow-wrap: anywhere;
    }

    .hero-lead,
    .hero-selector-card .hero-subtitle {
        max-width: 100%;
        overflow-wrap: break-word;
    }

    .page-brands .brand-directory-hero {
        overflow: hidden;
    }

    .page-brands .brand-directory-hero,
    .page-brands .brand-directory-search-shell,
    .page-brands .brand-directory-search,
    .page-brands .brand-directory-search-input,
    .page-brands .listing-shell,
    .page-brands .panel,
    .page-brands .brand-directory-grid,
    .page-brands .brand-directory-card,
    .page-brands .brand-directory-card-title,
    .page-brands .brand-directory-card-meta,
    .page-brands .brand-directory-card-cta {
        min-width: 0;
        max-width: 100%;
    }

    .page-brands .brand-directory-hero h1 {
        font-size: clamp(1.95rem, 9vw, 2.65rem);
        overflow-wrap: anywhere;
    }

    .page-brands .brand-directory-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .page-brands .brand-directory-card {
        overflow: hidden;
    }

    .page-brands .brand-directory-card-title,
    .page-brands .brand-directory-card-meta,
    .page-brands .brand-directory-card-cta {
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .page-brands .brand-directory-card-cta {
        white-space: normal;
    }

    .home-plate-form-row,
    .quick-selector-form {
        grid-template-columns: 1fr !important;
    }

    .home-plate-input-wrap,
    .home-plate-submit,
    .quick-selector-form select,
    .quick-selector-form button {
        width: 100%;
        min-width: 0;
    }

    .admin-analytics-bar-row {
        grid-template-columns: 1fr;
        gap: 0.35rem;
    }

    .admin-analytics-bar-row > strong {
        justify-self: end;
    }

    .selector-grid {
        grid-template-columns: 1fr !important;
        gap: 0.64rem;
    }

    .model-series-chip,
    .model-selector-chip,
    .engine-selector-chip {
        padding: 0.9rem 0.92rem 0.86rem;
        border-radius: 0.92rem;
        box-shadow: 0 7px 18px rgba(18, 38, 68, 0.055);
    }

    .model-series-chip .selector-title,
    .model-selector-chip .selector-title,
    .engine-selector-chip .selector-title {
        font-size: 1.06rem;
        line-height: 1.16;
    }

    .model-series-chip .selector-title {
        font-size: 1.18rem;
    }

    .selector-meta-line-highlight,
    .selector-stat {
        font-size: 0.79rem;
    }

    .product-compatibility-row {
        grid-template-columns: 1fr;
    }

    .product-compatibility-input {
        min-height: 4.2rem;
        padding: 0.45rem 0.75rem;
    }

    .product-compatibility-input .home-plate-country {
        width: 3.55rem;
        min-height: 3rem;
    }

    .product-compatibility-input input {
        font-size: 1.15rem;
    }

    .product-compatibility-submit {
        width: 100%;
        min-width: 0;
        min-height: 3.75rem;
    }

    .product-compatibility-continue-wrap,
    .product-compatibility-continue {
        width: 100%;
    }

    .missing-page-panel {
        padding: 1.25rem;
    }

    .missing-page-brands {
        margin: 1.5rem -1.25rem -1.25rem;
        padding: 1.25rem;
        border-radius: 1rem;
    }

    .missing-page-plate-card {
        padding: 1.25rem;
    }

    .page-404 .home-plate-form-row {
        grid-template-columns: 1fr;
    }

    .page-404 .home-plate-submit {
        width: 100%;
        min-width: 0;
        min-height: 3.75rem;
    }

    .page-404 .home-plate-results .plate-result-grid {
        grid-template-columns: 1fr;
    }

    .page-404 .home-plate-results .plate-result-actions {
        justify-content: stretch;
    }

    .page-404 .home-plate-results .plate-result-button {
        width: 100%;
    }

    .product-detail-image {
        min-height: 0;
        padding: 0.65rem;
    }

    .product-image-link {
        width: min(100%, 360px);
        aspect-ratio: 4 / 3;
    }

    .product-image-link img {
        width: 100%;
        height: 100%;
        max-width: none;
        max-height: 280px;
        object-fit: contain;
    }
}
.footer-link-groups {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem 1.5rem;
}

.footer-link-group {
    display: grid;
    gap: .55rem;
}

.footer-link-group > strong {
    color: var(--ink, #1a3652);
    font-size: .86rem;
}

@media (max-width: 760px) {
    .footer-link-groups {
        width: 100%;
        flex-direction: column;
    }
}
/* Product purchase panel refresh: title, CTA, trust, status and benefits. */
.product-detail-grid {
    grid-template-columns: minmax(0, 1fr) minmax(0, .95fr);
    gap: 2rem;
    align-items: start;
}

.product-detail-image,
.product-detail-summary {
    min-width: 0;
}

.product-detail-image {
    min-height: 33rem;
    padding: 1.75rem;
    border-radius: 1.35rem;
    background: #fff;
}

.product-image-link {
    min-height: 29rem;
}

.product-detail-image img,
.product-image-link img {
    max-width: 100%;
    max-height: 29rem;
    object-fit: contain;
}

.product-detail-summary {
    gap: 1rem;
    padding: 1.35rem 1.8rem 1.8rem;
    border-radius: 1.35rem;
    background: #fff;
    box-shadow: 0 20px 48px rgba(16, 37, 63, .09);
}

.product-summary-heading {
    padding-bottom: 1.35rem;
    border-bottom: 1px solid #dbe4ed;
}

.product-summary-heading > .section-kicker {
    display: none;
}

.product-summary-heading h1 {
    margin: .35rem 0 0;
    color: #071a35;
    font-size: clamp(1.85rem, 3vw, 2.75rem);
    line-height: 1.08;
    letter-spacing: -.035em;
    overflow-wrap: anywhere;
}

.product-summary-heading .meta {
    margin: 1rem 0 0;
    color: #667991;
    font-size: .9rem;
}

.product-price-strip {
    justify-content: space-between;
    gap: 1rem;
    margin-top: .3rem;
}

.product-detail-summary .price {
    font-size: 2.55rem;
    line-height: 1;
}

.product-buy-box {
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.product-buy-cta {
    min-height: 3.65rem;
    font-size: 1.15rem;
}

.product-buy-note {
    margin: .65rem 0 0;
    color: #718198;
    font-size: .78rem;
}

.product-trust-note {
    width: 100%;
    max-width: none;
    display: grid;
    grid-template-columns: 2.2rem minmax(0, 1fr);
    gap: .15rem .8rem;
    align-items: center;
    margin-top: 1rem;
    padding: .9rem 1rem;
    border: 1px solid #cce2d7;
    border-radius: .9rem;
    background: #f2faf6;
    color: #416454;
    text-align: left;
}

.product-trust-note::before {
    grid-row: 1 / 3;
    display: grid;
    width: 2.2rem;
    height: 2.2rem;
    place-items: center;
    border-radius: 999px;
    background: #16885e;
    color: #fff;
    content: "✓";
    font-size: 1rem;
    font-weight: 900;
}

.product-trust-note strong {
    color: #12523a;
    font-size: 1.02rem;
    line-height: 1.25;
}

.product-trust-note span {
    color: #416454;
    font-size: .82rem;
    font-weight: 650;
    line-height: 1.4;
}

.product-trust-note-compact {
    grid-template-rows: auto;
    min-height: 4.15rem;
}

.product-trust-note-compact::before {
    grid-row: 1;
}

.product-trust-note-compact strong {
    display: flex;
    min-height: 2.2rem;
    align-items: center;
    align-self: center;
    margin: 0;
}

.product-status-strip {
    display: grid;
    grid-auto-columns: minmax(0, 1fr);
    grid-auto-flow: column;
    overflow: hidden;
    border: 1px solid #d4e0ec;
    border-radius: .9rem;
    background: #f3f7fb;
}

.product-status-strip > div {
    min-width: 0;
    padding: .8rem .9rem;
}

.product-status-strip > div + div {
    border-left: 1px solid #d4e0ec;
}

.product-status-strip .spec-label,
.product-status-strip .spec-value {
    display: block;
    overflow-wrap: anywhere;
}

.product-status-strip .spec-label {
    color: #60738a;
    font-size: .68rem;
    font-weight: 850;
    letter-spacing: .035em;
    text-transform: uppercase;
}

.product-status-strip .spec-value {
    margin-top: .22rem;
    color: #071a35;
    font-size: .94rem;
    line-height: 1.3;
}

.product-benefit-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
}

.product-benefit-card {
    display: flex;
    min-width: 0;
    min-height: 5.2rem;
    align-items: center;
    gap: .8rem;
    padding: .9rem;
    border: 1px solid #d4e0eb;
    border-radius: .9rem;
    background: #fff;
}

.product-benefit-icon {
    display: grid;
    width: 2.55rem;
    height: 2.55rem;
    flex: 0 0 2.55rem;
    place-items: center;
    border-radius: .8rem;
    background: #edf6ff;
    color: #0867b5;
}

.product-benefit-icon svg {
    width: 1.35rem;
    height: 1.35rem;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.8;
}

.product-benefit-card > div {
    min-width: 0;
}

.product-benefit-card span:not(.product-benefit-icon),
.product-benefit-card strong {
    display: block;
    overflow-wrap: anywhere;
}

.product-benefit-card span:not(.product-benefit-icon) {
    color: #526b85;
    font-size: .77rem;
    font-weight: 800;
    line-height: 1.3;
}

.product-benefit-card strong {
    margin-top: .25rem;
    color: #071a35;
    font-size: .92rem;
    line-height: 1.35;
}

@media (max-width: 760px) {
    .product-detail-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.25rem;
    }

    .product-detail-image {
        min-height: 20rem;
        padding: 1rem;
    }

    .product-image-link {
        min-height: 18rem;
    }

    .product-detail-image img,
    .product-image-link img {
        max-height: 18rem;
    }

    .product-detail-summary {
        padding: 1.25rem;
    }

    .product-summary-heading h1 {
        font-size: 1.8rem;
    }

    .product-trust-note strong {
        font-size: 1.05rem;
    }

    .product-trust-note span {
        font-size: .86rem;
    }

    .product-status-strip > div {
        padding: .7rem .65rem;
    }

    .product-benefit-grid {
        grid-template-columns: 1fr;
    }

    .product-benefit-card {
        min-height: 4.8rem;
    }
}

.vehicle-compatibility-search {
    margin: 1.35rem 0 1rem;
}

.vehicle-compatibility-search label {
    display: block;
}

.vehicle-compatibility-search input {
    width: 100%;
    min-height: 3.9rem;
    padding: 0 1.2rem;
    border: 1px solid #b8cce1;
    border-radius: 1rem;
    outline: 0;
    background: #fbfdff;
    color: #14263d;
    font: inherit;
    font-weight: 650;
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.vehicle-compatibility-search input::placeholder {
    color: #67788c;
    opacity: 1;
}

.vehicle-compatibility-search input:focus {
    border-color: #4f8fc5;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(67, 132, 188, .12);
}

.vehicle-compatibility-search-status {
    min-height: 1.35rem;
    margin: .45rem .15rem 0;
    color: #60738a;
    font-size: .82rem;
}

.vehicle-compatibility-results {
    display: grid;
    gap: .6rem;
    margin-top: .75rem;
}

.vehicle-compatibility-results[hidden] {
    display: none;
}

.vehicle-compatibility-result {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .3rem 1rem;
    align-items: center;
    padding: .85rem 1rem;
    border: 1px solid #d1deea;
    border-radius: .85rem;
    background: #fff;
    color: #122944;
}

.vehicle-compatibility-result:hover,
.vehicle-compatibility-result:focus-visible {
    border-color: #83acd0;
    box-shadow: 0 8px 20px rgba(18, 53, 85, .08);
}

.vehicle-compatibility-result strong,
.vehicle-compatibility-result span,
.vehicle-compatibility-result small {
    overflow-wrap: anywhere;
}

.vehicle-compatibility-result strong {
    font-size: .95rem;
}

.vehicle-compatibility-result span {
    grid-column: 1;
    color: #245f96;
    font-weight: 800;
}

.vehicle-compatibility-result small {
    grid-column: 1;
    color: #64768b;
}

.vehicle-compatibility-result::after {
    grid-column: 2;
    grid-row: 1 / 4;
    color: #1671ba;
    content: "→";
    font-size: 1.25rem;
    font-weight: 900;
}

@media (max-width: 560px) {
    .vehicle-compatibility-search input {
        min-height: 3.5rem;
        padding: 0 .9rem;
        font-size: .9rem;
    }
}

/* Keep the product image compact on phones so price and CTA stay above the fold. */
@media (max-width: 760px) {
    .product-detail-grid {
        gap: .45rem;
        margin-top: 0;
    }

    .product-detail-image {
        min-height: 0;
        padding: .2rem .4rem .35rem;
    }

    .product-image-link {
        width: 100%;
        min-height: 0;
        aspect-ratio: 3 / 2;
    }

    .product-detail-image img,
    .product-image-link img {
        width: 100%;
        height: 100%;
        max-height: none;
        object-fit: contain;
    }

    .product-summary-heading h1 {
        max-width: 100%;
        font-size: clamp(1.45rem, 7.1vw, 1.8rem);
        line-height: 1.1;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .product-buy-note {
        white-space: normal;
        line-height: 1.45;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .product-price-strip {
        flex-wrap: wrap;
    }

    .product-detail-summary {
        padding: .85rem 1rem 1rem;
    }

    .product-summary-heading h1 {
        margin-top: .3rem;
    }
}

/* Verified OE landing pages and visibly actionable OEM codes. */
.product-oem-code-link {
    color: #0b67ad;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: .2em;
    transition: color .16s ease, background-color .16s ease;
}

.product-oem-code-link:hover,
.product-oem-code-link:focus-visible {
    color: #b34a00;
    background: #fff4e8;
    outline: 2px solid transparent;
}

.oe-landing {
    display: grid;
    gap: 1rem;
}

.oe-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(18rem, .8fr);
    gap: 1.25rem;
    align-items: start;
    padding: 1.35rem;
    border: 1px solid #cddbea;
    border-radius: 1.15rem;
    background: linear-gradient(135deg, #f8fbff 0%, #eef6fc 100%);
}

.oe-hero h1 {
    margin: .35rem 0 .55rem;
    color: #122944;
    font-size: clamp(1.85rem, 3.4vw, 2.7rem);
    line-height: 1.08;
    letter-spacing: -.035em;
}

.oe-hero p {
    max-width: 54rem;
    margin: 0;
    color: #51657d;
    line-height: 1.65;
}

.oe-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .65rem;
    margin-top: 1rem;
}

.oe-hero-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.75rem;
    padding: .68rem 1rem;
    border: 2px solid #174f78;
    border-radius: .75rem;
    font-weight: 800;
    line-height: 1.2;
    text-decoration: none;
    transition: color .16s ease, background-color .16s ease, border-color .16s ease, transform .16s ease;
}

.oe-primary-action {
    color: #fff;
    background: #174f78;
}

.oe-secondary-action {
    color: #174f78;
    background: #fff;
}

.oe-hero-actions a:hover,
.oe-hero-actions a:focus-visible {
    color: #fff;
    border-color: #b34a00;
    background: #b34a00;
    transform: translateY(-1px);
}

.oe-hero-actions a:focus-visible {
    outline: 3px solid rgba(22, 113, 186, .28);
    outline-offset: 2px;
}

.oe-code-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .65rem;
    margin: 0;
}

.oe-code-summary div {
    min-width: 0;
    padding: .8rem;
    border: 1px solid #d5e2ef;
    border-radius: .85rem;
    background: rgba(255, 255, 255, .9);
}

.oe-code-summary dt {
    margin-bottom: .25rem;
    color: #6a7d91;
    font-size: .75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .035em;
}

.oe-code-summary dd {
    margin: 0;
    color: #12385a;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.oe-products-panel .product-grid {
    margin-top: .9rem;
}

.oe-comparison-scroll {
    max-width: 100%;
    overflow-x: auto;
    margin-top: .9rem;
    border: 1px solid #d8e3ed;
    border-radius: .9rem;
    background: #fff;
    -webkit-overflow-scrolling: touch;
}

.oe-comparison-scroll:focus-visible {
    outline: 3px solid rgba(22, 113, 186, .3);
    outline-offset: 2px;
}

.oe-comparison-table {
    width: 100%;
    min-width: 880px;
    border-collapse: collapse;
    color: #263d55;
    font-size: .88rem;
}

.oe-comparison-table th,
.oe-comparison-table td {
    padding: .8rem .75rem;
    border-bottom: 1px solid #e3eaf1;
    text-align: left;
    vertical-align: middle;
}

.oe-comparison-table th {
    position: sticky;
    top: 0;
    z-index: 1;
    color: #27435e;
    background: #f2f7fb;
    font-size: .75rem;
    text-transform: uppercase;
    letter-spacing: .025em;
}

.oe-comparison-table tbody tr:last-child td {
    border-bottom: 0;
}

.oe-comparison-table tbody tr:hover {
    background: #f9fcff;
}

.oe-comparison-table td strong,
.oe-comparison-table td small {
    display: block;
}

.oe-comparison-table td small {
    margin-top: .2rem;
    color: #6b7d91;
}

.oe-comparison-action a {
    color: #0b67ad;
    font-weight: 800;
    white-space: nowrap;
    text-decoration: underline;
    text-underline-offset: .18em;
}

.oe-swipe-hint {
    display: none;
    padding: .55rem .75rem 0;
    color: #6a7d91;
    font-size: .76rem;
    text-align: center;
}

.oe-vehicle-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .7rem;
    margin-top: .9rem;
}

.oe-vehicle-card {
    display: grid;
    gap: .18rem;
    min-width: 0;
    padding: .85rem .9rem;
    border: 1px solid #d9e4ee;
    border-radius: .85rem;
    background: #f8fbfd;
}

.oe-vehicle-card strong {
    color: #14588e;
    font-size: .79rem;
    letter-spacing: .03em;
}

.oe-vehicle-card span {
    color: #243f59;
    font-weight: 750;
    overflow-wrap: anywhere;
}

.oe-vehicle-card small {
    color: #6d7f91;
}

.oe-vehicle-link {
    color: inherit;
    text-decoration: none;
    cursor: pointer;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.oe-vehicle-link span {
    color: #0b67ad;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: .2em;
}

.oe-vehicle-link:hover,
.oe-vehicle-link:focus-visible {
    border-color: #4b91c7;
    box-shadow: 0 .3rem .9rem rgba(18, 56, 90, .12);
    transform: translateY(-1px);
}

.oe-vehicle-link:hover span,
.oe-vehicle-link:focus-visible span {
    color: #b34a00;
}

.oe-vehicle-link:focus-visible {
    outline: 3px solid rgba(22, 113, 186, .28);
    outline-offset: 2px;
}

.oe-verification-note,
.oe-status-warning {
    padding: 1rem 1.1rem;
    border: 1px solid #ebc988;
    border-radius: .9rem;
    color: #5b461c;
    background: #fff9e9;
    line-height: 1.55;
}

@media (max-width: 900px) {
    .oe-hero {
        grid-template-columns: 1fr;
    }

    .oe-vehicle-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    .oe-landing,
    .oe-hero {
        gap: .75rem;
    }

    .oe-hero {
        padding: 1rem;
    }

    .oe-code-summary,
    .oe-vehicle-grid {
        grid-template-columns: 1fr;
    }

    .oe-hero-actions a {
        width: 100%;
    }

    .oe-swipe-hint {
        display: block;
    }
}
