:root {
    --bg: #f5f6f8;
    --surface: #ffffff;
    --surface-soft: #edf1f5;
    --line: #d9dee6;
    --text: #1a1e34;
    --muted: #6a7486;
    --accent: #d92a2a;
    --accent-dark: #b81f1f;
    --dark: #121723;
    --dark-2: #202638;
    --ok: #15803d;
    --radius: 18px;
    --shadow: 0 18px 45px rgba(15, 23, 42, 0.08);
}

.d-none {
   display: none;
}

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    font-family: Inter, ui-sans-serif, system-ui, sans-serif;
    color: var(--text);
    background: var(--bg);
}

.admin-body,
.admin-login-body {
    background: #eef2f7;
}

.admin-shell {
    display: grid;
    grid-template-columns: 232px minmax(0, 1fr);
    min-height: 100vh;
}

.admin-sidebar {
    display: grid;
    align-content: start;
    gap: 16px;
    padding: 20px 16px;
    background: #0d1726;
    color: #fff;
}

.admin-brand {
    font-weight: 800;
    font-size: 1.1rem;
}

.admin-nav {
    display: grid;
    gap: 6px;
}

.admin-nav a {
    padding: 9px 11px;
    border-radius: 12px;
    color: rgba(255, 255, 255, 0.9);
    background: rgba(255, 255, 255, 0.04);
    font-size: 0.94rem;
}

.admin-nav a:hover,
.admin-nav a:focus-visible {
    background: rgba(255, 255, 255, 0.11);
}

.admin-nav a.is-active {
    background: rgba(255, 255, 255, 0.18);
    color: #fff;
    font-weight: 700;
}

.admin-main {
    padding: 20px;
}

.admin-page {
    display: grid;
    gap: 16px;
}

.admin-page__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
}

.admin-page__header h1,
.admin-card h2,
.admin-login-card h1 {
    margin: 0;
}

.admin-intro {
    max-width: 78ch;
    margin: 6px 0 0;
    color: var(--muted);
    font-size: 0.94rem;
}

.admin-kpis,
.admin-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.admin-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-grid--sidebar {
    grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
}

.admin-kpi,
.admin-card,
.admin-login-card {
    padding: 16px;
    border-radius: 16px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.admin-kpi span {
    display: block;
    color: var(--muted);
    font-size: 0.82rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.admin-kpi strong {
    display: block;
    margin-top: 8px;
    font-size: 1.8rem;
}

.admin-card ul {
    margin: 10px 0 0;
    padding-left: 18px;
    display: grid;
    gap: 6px;
}

.admin-table-card {
    overflow: hidden;
    padding: 0;
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
}

.admin-table th,
.admin-table td {
    padding: 10px 12px;
    text-align: left;
    border-bottom: 1px solid var(--line);
    vertical-align: top;
}

.admin-table th {
    background: #f6f8fb;
    font-size: 0.76rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--muted);
}

.shipping-config-table {
    display: grid;
    gap: 8px;
    margin: 16px 0;
}

.shipping-config-table .admin-form-actions {
    align-items: center;
    justify-content: space-between;
}

.shipping-config-table table {
    min-width: 680px;
}

.admin-table-input {
    width: 100%;
    min-height: 30px;
    padding: 5px 8px;
    border: 1px solid var(--line);
    border-radius: 6px;
    background: #fff;
}

.shipping-config-source {
    display: none;
}

.checkout-validation-summary {
    margin: 10px 0 16px;
    color: var(--muted);
    font-size: 0.92rem;
}

.checkout-field-error {
    display: block;
    margin-top: 4px;
    color: #b42318;
    font-size: 0.78rem;
    font-weight: 600;
}

input[aria-invalid="true"],
select[aria-invalid="true"] {
    border-color: #d92d20;
    box-shadow: 0 0 0 2px rgba(217, 45, 32, 0.1);
}

.admin-login-shell {
    min-height: 100vh;
    display: grid;
    place-items: center;
    padding: 24px;
}

.admin-login-card {
    width: min(460px, 100%);
    display: grid;
    gap: 14px;
}

.admin-login-card label {
    display: grid;
    gap: 8px;
    font-weight: 700;
}

.admin-form {
    display: grid;
    gap: 14px;
}

.admin-form-grid {
    display: grid;
    gap: 12px;
}

.admin-form-grid--two {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.admin-form label {
    display: grid;
    gap: 8px;
    font-weight: 700;
}

.admin-form input,
.admin-form select,
.admin-form textarea {
    width: 100%;
}

.admin-form-actions {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 10px;
}

.admin-callout-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.admin-callout-grid--compact {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-callout {
    display: grid;
    gap: 6px;
    padding: 12px 14px;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: #f8fafc;
}

.admin-callout p {
    margin: 0;
    color: var(--muted);
}

.admin-settings-preview-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.admin-settings-preview-card {
    display: grid;
    gap: 12px;
    padding: 16px;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: #fff;
}

.admin-settings-preview-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}

.admin-settings-preview-card__header a {
    font-size: 0.92rem;
}

.admin-settings-preview-frame {
    display: grid;
    place-items: center;
    min-height: 170px;
    padding: 20px;
    border-radius: 16px;
    border: 1px solid var(--line);
    background:
        linear-gradient(45deg, rgba(148, 163, 184, 0.08) 25%, transparent 25%),
        linear-gradient(-45deg, rgba(148, 163, 184, 0.08) 25%, transparent 25%),
        linear-gradient(45deg, transparent 75%, rgba(148, 163, 184, 0.08) 75%),
        linear-gradient(-45deg, transparent 75%, rgba(148, 163, 184, 0.08) 75%);
    background-size: 18px 18px;
    background-position: 0 0, 0 9px, 9px -9px, -9px 0;
}

.admin-settings-preview-frame img {
    max-width: 100%;
    max-height: 120px;
    object-fit: contain;
}

.admin-settings-preview-frame p,
.admin-settings-preview-path {
    margin: 0;
    color: var(--muted);
}

.admin-settings-preview-path {
    font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
    font-size: 0.82rem;
    overflow-wrap: anywhere;
}

.admin-body input,
.admin-body select,
.admin-body textarea {
    min-height: 32px;
    padding: 6px 10px;
}

.admin-body textarea {
    min-height: 96px;
}

.admin-body .button {
    min-height: 32px;
    padding: 0 12px;
    border-radius: 10px;
}

.admin-body .button--ghost.is-active {
    background: rgba(15, 23, 42, 0.12);
    color: #0f172a;
    box-shadow: inset 0 0 0 1px rgba(15, 23, 42, 0.12);
}

.admin-product-supplier-card {
    padding: 22px;
}

.admin-supplier-history-list {
    margin-top: 18px;
}

.admin-supplier-history-item {
    gap: 14px;
    padding: 16px;
}

.admin-supplier-form-check {
    flex-wrap: wrap;
    align-items: flex-start;
    row-gap: 10px;
}

.admin-supplier-add-toggle {
    margin-top: 18px;
    padding-top: 6px;
}

.admin-card--nested {
    margin-top: 18px;
    background: rgba(255, 255, 255, 0.7);
}

.admin-products-toolbar,
.admin-products-search,
.admin-product-cell,
.admin-source-list,
.admin-source-list__item {
    display: grid;
    gap: 10px;
}

.admin-products-toolbar {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
}

.admin-products-search {
    grid-template-columns: minmax(240px, 1.6fr) minmax(180px, 0.8fr);
    gap: 16px;
}

.admin-products-results,
.admin-muted-note {
    margin: 0;
    color: var(--muted);
}

.admin-product-cell {
    gap: 6px;
}

.admin-source-list {
    gap: 8px;
}

.admin-source-list__item {
    gap: 6px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #f8fafc;
}

.admin-source-list__item small {
    color: var(--muted);
}

.admin-wysiwyg {
    display: grid;
    gap: 10px;
}

.admin-editor-mode-toggle {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.admin-editor-mode-toggle .button.is-active {
    background: #0f172a;
    color: #fff;
    border-color: #0f172a;
}

.admin-wysiwyg__toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.admin-wysiwyg__button {
    min-height: 40px;
}

.admin-wysiwyg__editor {
    min-height: 280px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #fff;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
    overflow: auto;
}

.admin-wysiwyg__editor:focus {
    outline: 2px solid rgba(15, 118, 110, 0.2);
    border-color: #0f766e;
}

.admin-form textarea[data-css-source] {
    min-height: 220px;
    font-family: "SFMono-Regular", Consolas, "Liberation Mono", Menlo, monospace;
}

.admin-css-editor {
    min-height: 420px;
    font-size: 12px;
    line-height: 1.5;
    tab-size: 4;
    background: #0f172a;
    color: #e2e8f0;
    border-color: rgba(148, 163, 184, 0.32);
}

.admin-css-editor:focus {
    border-color: rgba(59, 130, 246, 0.72);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
}

.admin-modal-open {
    overflow: hidden;
}

.admin-modal {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: grid;
    place-items: center;
    padding: 24px;
}

.admin-modal[hidden] {
    display: none;
}

.admin-modal__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(8, 23, 42, 0.72);
}

.admin-modal__dialog {
    position: relative;
    z-index: 1;
    width: min(1240px, 100%);
    max-height: calc(100vh - 48px);
    display: grid;
    gap: 18px;
    padding: 22px;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 30px 60px rgba(15, 23, 42, 0.3);
}

.admin-modal__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.admin-modal__body {
    overflow: auto;
}

.admin-preview-frame-wrap {
    width: 100%;
    display: grid;
    justify-content: center;
}

.admin-preview-frame {
    width: min(100%, 1200px);
    height: 78vh;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: #fff;
}

.admin-preview-frame-wrap[data-preview-device='mobile'] .admin-preview-frame {
    width: 430px;
    max-width: 100%;
}

.admin-override-grid,
.admin-history-list {
    display: grid;
    gap: 12px;
}

.admin-override-row {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 12px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 14px;
    background: #f8fafc;
    align-items: start;
}

.admin-history-item {
    display: grid;
    gap: 4px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #f8fafc;
}

.admin-card__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 12px 0;
}

.admin-detail-list {
    margin: 10px 0 0;
    display: grid;
    gap: 10px;
}

.admin-detail-list div {
    display: grid;
    gap: 4px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--line);
}

.admin-detail-list div:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}

.admin-detail-list dt {
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.admin-detail-list dd {
    margin: 0;
    font-size: 0.95rem;
}

.admin-status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 24px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 0.78rem;
    font-weight: 700;
    white-space: nowrap;
}

.admin-status-pill--active,
.admin-status-pill--paid,
.admin-status-pill--live,
.admin-status-pill--configured {
    border-color: rgba(21, 128, 61, 0.24);
    background: rgba(21, 128, 61, 0.12);
    color: #166534;
}

.admin-status-pill--sandbox,
.admin-status-pill--pending {
    border-color: rgba(37, 99, 235, 0.24);
    background: rgba(37, 99, 235, 0.12);
    color: #1d4ed8;
}

.admin-status-pill--disabled,
.admin-status-pill--missing {
    border-color: rgba(123, 124, 127, 0.24);
    background: rgba(123, 124, 127, 0.12);
    color: #4b5563;
}

.admin-history-toggle {
    display: grid;
    gap: 14px;
}

.admin-history-toggle summary {
    cursor: pointer;
    list-style: none;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #0f172a;
    font-weight: 600;
}

.admin-history-toggle summary::-webkit-details-marker {
    display: none;
}

.admin-history-toggle summary::before {
    content: '+';
    width: 24px;
    height: 24px;
    display: inline-grid;
    place-items: center;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #f8fafc;
    color: #0f766e;
    font-size: 16px;
    line-height: 1;
}

.admin-history-toggle[open] summary::before {
    content: '−';
}

.admin-page-gallery-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.admin-page-gallery {
    display: grid;
    gap: 12px;
}

.admin-page-gallery__item {
    display: grid;
    gap: 10px;
    padding: 14px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #f8fafc;
}

.admin-page-gallery__item img {
    width: 100%;
    max-height: 220px;
    object-fit: cover;
    border-radius: 12px;
    border: 1px solid var(--line);
    background: #fff;
}

.build-page__managed-mobile {
    display: none;
}

.admin-form-check {
    display: flex;
    align-items: center;
    gap: 12px;
}

.admin-form-check--stacked {
    display: grid;
    justify-content: flex-start;
}

.admin-inline-check {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.admin-stock-pill,
.admin-flag-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 74px;
    padding: 6px 10px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
    font-size: 0.86rem;
    font-weight: 700;
}

.admin-stock-pill--in-stock {
    border-color: rgba(47, 190, 56, 0.28);
    background: rgba(47, 190, 56, 0.12);
    color: #1f7a28;
}

.admin-stock-pill--out {
    border-color: rgba(123, 124, 127, 0.24);
    background: rgba(123, 124, 127, 0.12);
    color: #4b5563;
}

.admin-flag-pill--manual {
    border-color: rgba(15, 118, 110, 0.24);
    background: rgba(15, 118, 110, 0.12);
    color: #0f766e;
}

.admin-flag-pill--unlimited {
    border-color: rgba(37, 99, 235, 0.24);
    background: rgba(37, 99, 235, 0.12);
    color: #1d4ed8;
}

.admin-reconciliation-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
}

@media (max-width: 960px) {
    .admin-shell,
    .admin-kpis,
    .admin-grid {
        grid-template-columns: 1fr;
    }

    .admin-form-grid--two {
        grid-template-columns: 1fr;
    }

    .admin-reconciliation-grid {
        grid-template-columns: 1fr;
    }

    .admin-page-gallery-grid {
        grid-template-columns: 1fr;
    }

    .admin-callout-grid {
        grid-template-columns: 1fr;
    }

    .admin-callout-grid--compact {
        grid-template-columns: 1fr 1fr;
    }

    .admin-settings-preview-grid {
        grid-template-columns: 1fr;
    }

    .admin-products-toolbar,
    .admin-products-search {
        grid-template-columns: 1fr;
    }

    .admin-product-supplier-card {
        padding: 18px;
    }

    .admin-modal {
        padding: 12px;
    }

    .admin-modal__header {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-preview-frame {
        height: 70vh;
    }


    .admin-override-row {
        grid-template-columns: 1fr;
    }

    .home-managed-intro__desktop {
        display: none;
    }

    .build-page__managed-desktop {
        display: none;
    }

    .build-page__managed-mobile {
        display: block;
    }

    .home-managed-intro__mobile {
        display: block;
    }

    .admin-main {
        padding: 18px;
    }
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    display: block;
    max-width: 100%;
}

button,
input,
select,
textarea {
    font: inherit;
}

.container {
    width: min(1380px, calc(100% - 28px));
    margin: 0 auto;
}

.announcement-bar {
    background: var(--dark);
    color: #fff;
    font-size: 0.92rem;
}

.announcement-bar .container {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    text-align: center;
}

.home-managed-intro__mobile {
    display: none;
}

.home-managed-intro__desktop {
   margin-top: 20px;
}

.home-managed-intro__desktop,
.home-managed-intro__mobile {
    padding: 18px 22px;
    border-radius: 20px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.site-header {
    position: relative;
    z-index: 50;
    background: rgba(245, 246, 248, 0.96);
    backdrop-filter: blur(14px);
    border-bottom: 1px solid rgba(217, 222, 230, 0.85);
}

.wrapper-header,
.header-shortcuts,
.header-search-meta,
.header-search-links,
.subnav__inner,
.vehicle-picker__heading,
.vehicle-picker__actions,
.hero__actions,
.section-heading,
.status-list,
.site-footer__grid,
.cart-line,
.cart-line__actions,
.summary-row,
.summary-line,
.pagination,
.brand-strip {
    display: flex;
    gap: 16px;
}

.wrapper-header,
.section-heading,
.summary-row,
.summary-line,
.cart-line {
    align-items: center;
    justify-content: space-between;
}

.wrapper-header {
    display: grid;
    grid-template-columns: 400px minmax(0, 1fr);
    gap: 18px;
    align-items: center;
    padding: 12px 0 14px;
}

.wrapper-header > * {
    min-width: 0;
}

.brand-column {
    display: flex;
    align-items: center;
    gap: 16px;
}

.mobile-menu-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    width: 44px;
    height: 44px;
    padding: 10px;
    border: 0;
    border-radius: 14px;
    background: var(--surface);
    box-shadow: var(--shadow);
}

.mobile-menu-toggle span {
    width: 100%;
    height: 3px;
    border-radius: 999px;
    background: var(--text);
}

.site-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 18px;
    border-radius: 20px;
    background: #000;
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 12px 26px rgba(0, 0, 0, 0.18);
}

.site-logo img {
    display: block;
    width: auto;
    max-width: 100%;
    max-height: 135px;
}

.site-footer__brand img {
    width: auto;
    max-height: 135px;
}

.header-shortcuts {
    justify-content: center;
    flex-wrap: wrap;
}

.header-shortcuts--mobile {
    display: none;
}

.header-shortcuts--desktop {
    justify-content: flex-end;
    flex-wrap: nowrap;
    margin-left: auto;
}

.shortcut {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 16px;
    border-radius: 999px;
    background: var(--surface);
    border: 1px solid var(--line);
    font-weight: 700;
    box-shadow: var(--shadow);
}

.shortcut--phone,
.shortcut--cart {
    background: linear-gradient(135deg, var(--surface), #fdfdfd);
}

.shortcut__label--compact {
    display: none;
}

.shortcut--cart [data-cart-count] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    min-height: 28px;
    margin-left: 10px;
    border-radius: 999px;
    background: var(--dark);
    color: #fff;
}

.header-search-shell {
    position: relative;
    padding: 14px 18px;
    border-radius: 22px;
    background: linear-gradient(180deg, #252c41, #141a2b);
    color: #fff;
    box-shadow: 0 24px 60px rgba(18, 23, 35, 0.25);
}

.site-footer h4,
.summary-card h2,
.detail-card h2,
.hero__finder h2 {
    margin: 0 0 8px;
    font-family: Orbitron, Inter, sans-serif;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.header-search {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 10px;
}

.header-search input,
.header-search button,
input,
select,
textarea {
    border-radius: 14px;
    border: 1px solid var(--line);
}

.header-search input,
input,
select,
textarea {
    width: 100%;
    min-height: 50px;
    padding: 14px 16px;
    background: #fff;
    color: var(--text);
}

.header-search button,
.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 0 18px;
    border: 0;
    border-radius: 999px;
    font-weight: 800;
    cursor: pointer;
    transition: 0.2s ease;
}

.header-search button,
.button--accent {
    background: var(--accent);
    color: #fff;
}

.header-search button:hover,
.button--accent:hover {
    background: var(--accent-dark);
}

.button--ghost {
    background: var(--surface-soft);
    color: var(--text);
}

.button--dark {
    background: var(--dark);
    color: #fff;
}

.button--link {
    background: transparent;
    color: var(--accent);
    padding: 0;
    min-height: 0;
}

.button--full {
    width: 100%;
}

.header-search-meta {
    margin-top: 10px;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
}

.search-suggestions {
    position: absolute;
    top: calc(100% - 10px);
    left: 22px;
    right: 22px;
    z-index: 20;
    padding: 14px;
    border-radius: 22px;
    background: #fff;
    color: var(--text);
    box-shadow: 0 30px 60px rgba(9, 14, 25, 0.22);
}

.search-suggestions__header,
.search-suggestion,
.search-suggestion__content {
    display: flex;
}

.search-suggestions__header {
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 4px 6px 12px;
    color: var(--muted);
}

.search-suggestion {
    align-items: center;
    gap: 14px;
    padding: 12px 8px;
    border-radius: 16px;
}

.search-suggestion:hover {
    background: var(--surface-soft);
}

.search-suggestion__media {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    overflow: hidden;
    border-radius: 14px;
    background: var(--surface-soft);
    border: 1px solid var(--line);
    flex: 0 0 70px;
}

.search-suggestion__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.search-suggestion__placeholder {
    padding: 10px;
    text-align: center;
    font-size: 0.78rem;
    color: var(--muted);
}

.search-suggestion__content {
    flex: 1;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
}

.search-suggestion__content strong {
    color: var(--text);
}

.search-suggestion__content span {
    color: var(--muted);
    font-size: 0.92rem;
}

.search-suggestion__fitment {
    color: var(--accent) !important;
    font-weight: 700;
}

.search-suggestion__price {
    font-weight: 800;
    color: var(--accent);
}

.search-suggestion--empty {
    cursor: default;
}

.search-suggestions__footer {
    display: inline-flex;
    margin-top: 8px;
    padding: 10px 12px;
    color: var(--accent);
    font-weight: 700;
}

.header-search-state {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 42px;
    padding: 8px 14px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.95);
    font-size: 0.94rem;
}

.header-search-state.is-active {
    background: rgba(217, 42, 42, 0.18);
}

.header-search-state.is-inactive {
    background: rgba(255, 255, 255, 0.14);
}

.header-search-state-toggle {
    width: 14px;
    height: 14px;
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.12);
}

.header-search-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff;
    font-weight: 700;
}

.header-search-link.is-hidden {
    display: none;
}

.vehicle-picker {
    border-top: 1px solid rgba(255, 255, 255, 0.08);
    background: linear-gradient(180deg, #101624, #1d2436);
    color: #fff;
}

.vehicle-picker .container {
    padding: 28px 0 34px;
}

.vehicle-picker__heading {
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 24px;
}

.vehicle-picker__heading p {
    margin: 0;
    color: rgba(255, 255, 255, 0.76);
}

.close-vehicle-picker {
    border: 1px solid rgba(255, 255, 255, 0.16);
    background: rgba(255, 255, 255, 0.08);
    color: #fff;
    border-radius: 999px;
    min-height: 48px;
    padding: 0 18px;
}

.vehicle-picker__grid,
.form-grid,
.product-grid,
.chip-grid,
.detail-grid {
    display: grid;
}

.vehicle-picker__grid {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
}

.pf-step,
.filter-card,
.summary-card,
.checkout-card,
.centered-card,
.detail-card,
.product-card,
.hero__grid > div,
.flash,
.cart-line {
    background: var(--surface);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.pf-step,
.filter-card,
.summary-card,
.checkout-card,
.centered-card,
.detail-card,
.flash {
    padding: 22px;
}

.pf-step__index {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 999px;
    background: var(--accent);
    color: #fff;
    font-family: Orbitron, Inter, sans-serif;
    font-weight: 700;
}

.vehicle-filter-state,
.pf-step label,
.filter-card label,
.checkout-form label {
    display: grid;
    gap: 8px;
}

.pf-step label {
    color: var(--text);
}

.pf-step__heading {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.pf-step label > span:not(.pf-step__heading),
.pf-step__heading > span:not(.pf-step__index) {
    color: var(--text);
    font-weight: 700;
}

.vehicle-filter-state {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: 14px;
    padding: 12px 16px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.08);
}

.vehicle-filter-state label {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: #fff;
    font-weight: 600;
}

.vehicle-filter-state input {
    width: 18px;
    min-height: 18px;
    height: 18px;
    padding: 0;
    accent-color: var(--accent);
}

.pf-selection-summary {
    margin-top: 18px;
    padding: 16px 18px;
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.9);
}

.vehicle-picker__actions {
    margin-top: 18px;
}

.subnav {
    position: relative;
    z-index: 55;
    overflow: visible;
    background: #fff;
    border-top: 1px solid rgba(217, 222, 230, 0.7);
}

.subnav__inner {
    min-height: 46px;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
}

.subnav__primary {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
    flex-wrap: wrap;
}

.subnav__inner a,
.subnav-menu summary {
    font-weight: 700;
    color: var(--dark-2);
}

.subnav-menu {
    position: relative;
}

.subnav-menu summary {
    list-style: none;
    cursor: pointer;
    font-weight: 700;
    color: var(--dark-2);
}

.subnav-menu summary::-webkit-details-marker {
    display: none;
}

.subnav-menu[open] .subnav-menu__panel {
    display: grid;
}

.subnav-menu__panel {
    position: absolute;
    top: calc(100% + 14px);
    left: 0;
    z-index: 80;
    min-width: 280px;
    display: none;
    gap: 8px;
    padding: 14px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.subnav-menu__panel a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border-radius: 12px;
    background: var(--surface-soft);
}

.subnav-menu__panel small {
    color: var(--muted);
    font-size: 0.82rem;
}

.section {
    padding: 24px 0 42px;
}

.section--tight {
    padding-top: 16px;
}

.section--breadcrumbs {
    padding-bottom: 8px;
}

.section--search-heading {
    padding-top: 10px;
    padding-bottom: 14px;
}

.section--search-results {
    padding-top: 6px;
}

.section--muted {
    background: linear-gradient(180deg, rgba(17, 23, 35, 0.04), rgba(17, 23, 35, 0));
}

.hero {
    padding: 40px 0 28px;
}

.hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.3fr) minmax(340px, 0.85fr);
    gap: 24px;
}

.hero__grid > div {
    padding: 32px;
}

.hero h1,
.section h1,
.section h2,
.product-summary h1 {
    margin: 0 0 12px;
    line-height: 1.04;
    overflow-wrap: anywhere;
}

.hero h1 {
    font-size: clamp(2.6rem, 5vw, 4.6rem);
}

.hero__copy,
.lead,
.copy-block,
.centered-card p,
.site-footer p {
    color: var(--muted);
    line-height: 1.7;
}

.eyebrow {
    margin: 0 0 10px;
    font-family: Orbitron, Inter, sans-serif;
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--accent);
}

.section-heading--search-results {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: 10px 18px;
    margin-bottom: 12px;
}

.section-heading--search-results > div {
    min-width: 0;
}

.section-heading--search-results .eyebrow {
    margin-bottom: 4px;
    font-size: 0.72rem;
    letter-spacing: 0.09em;
}

.section-heading--search-results h1 {
    margin: 0;
    font-size: clamp(1.55rem, 2.3vw, 2.2rem);
    line-height: 1.05;
    letter-spacing: -0.02em;
    overflow-wrap: anywhere;
}

.section-heading--search-results > p:last-child {
    margin: 2px 0 0;
    align-self: center;
    color: var(--muted);
    font-size: 0.92rem;
    font-weight: 700;
    white-space: nowrap;
}

.breadcrumbs {
    display: block;
    max-width: 100%;
    overflow: hidden;
    margin-bottom: 0;
    color: var(--muted);
    font-size: 0.95rem;
    white-space: nowrap;
    text-overflow: ellipsis;
}

.breadcrumbs > * + * {
    margin-left: 10px;
}

.section--search-heading .breadcrumbs {
    margin-bottom: 10px;
}

.breadcrumbs strong,
.breadcrumbs a:hover {
    color: var(--text);
}

.chip-grid {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 16px;
}

.chip {
    display: grid;
    gap: 6px;
    padding: 20px;
    border-radius: var(--radius);
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.chip--brand {
    grid-template-columns: 1fr;
    justify-items: center;
    align-content: start;
    gap: 12px;
    text-align: center;
    min-height: 190px;
}

.chip__media {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 96px;
    padding: 14px 12px;
    border-radius: calc(var(--radius) - 6px);
    background: linear-gradient(180deg, #fbfcff 0%, #f3f6fb 100%);
    border: 1px solid rgba(33, 36, 61, 0.08);
}

.chip__media img {
    max-width: 100%;
    max-height: 62px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.chip__media-fallback {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 999px;
    background: #111723;
    color: #fff;
    font-weight: 800;
    font-size: 1rem;
    text-transform: uppercase;
}

.chip__content {
    display: grid;
    gap: 6px;
    min-width: 0;
    justify-items: center;
}

.chip__content strong,
.chip__content span {
    overflow-wrap: anywhere;
}

.chip__content strong {
    line-height: 1.25;
}

.chip__content span {
    color: var(--muted);
    font-size: 0.92rem;
}

.brand-directory__toolbar {
    display: flex;
    gap: 12px;
    align-items: flex-end;
    flex-wrap: wrap;
    margin-top: 18px;
}

.brand-directory__search {
    display: grid;
    gap: 6px;
    min-width: min(100%, 360px);
}

.brand-directory__search span {
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--muted);
}

.brand-directory__search input {
    min-height: 48px;
    padding: 0 14px;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: #fff;
}

.brand-directory__summary {
    margin: 14px 0 0;
    color: var(--muted);
    font-size: 0.95rem;
}

.product-grid {
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 16px;
}

.product-card {
    overflow: hidden;
}

.product-card__image {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 260px;
    background: linear-gradient(180deg, #fff, #f7f9fb);
}

.product-card__image img,
.product-gallery__primary img,
.cart-line__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.product-gallery__primary img {
    border-radius: inherit;
}

.product-card__body {
    display: grid;
    gap: 8px;
    padding: 16px;
}

.product-card__topline,
.empty-state__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.product-card__topline .eyebrow {
    margin: 0;
}

.product-card__source {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: 0 10px;
    border-radius: 999px;
    background: rgba(17, 23, 35, 0.06);
    color: var(--muted);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.search-hit-card {
    display: grid;
    gap: 0;
}

.search-hit-card__category {
    padding: 6px 12px;
    border-bottom: 1px solid var(--line);
    background: rgba(17, 23, 35, 0.03);
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.search-hit-card__layout {
    display: grid;
    grid-template-columns: 180px minmax(0, 1fr);
    gap: 0;
    align-items: stretch;
}

.search-hit-card__image {
    min-height: 180px;
    border-right: 1px solid var(--line);
}

.search-hit-card__body {
    gap: 8px;
    padding: 12px 14px;
}

.search-hit-card__brand-row,
.search-hit-card__meta-row,
.search-hit-card__footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.search-hit-card__brand-logo {
    max-width: 88px;
    max-height: 24px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.search-hit-card__meta-row {
    color: var(--muted);
    font-size: 0.84rem;
}

.search-hit-card__pricing {
    display: grid;
    gap: 6px;
}

.search-hit-card__action {
    width: min(190px, 100%);
}

.search-hit-card__action .button,
.search-hit-card__action .ajax-cart-form,
.search-hit-card__action .ajax-cart-form button {
    width: 100%;
}

.badge {
    position: absolute;
    top: 14px;
    left: 14px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(217, 42, 42, 0.1);
    color: var(--accent);
    font-size: 0.8rem;
    font-weight: 700;
}

.badge--external {
    left: auto;
    right: 14px;
    background: rgba(18, 23, 35, 0.9);
    color: #fff;
}

.product-card__sku,
.summary-note,
.stock,
.product-card__summary {
    color: var(--muted);
}

.product-card h3 {
    margin: 0;
    line-height: 1.35;
    font-size: 1.08rem;
}

.product-card h3 a {
    display: -webkit-box;
    line-clamp: 2;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
}

.product-view-toolbar {
    display: flex;
    justify-content: flex-end;
    margin: 10px 0;
}

.product-view-toggle {
    display: inline-flex;
    gap: 3px;
    padding: 3px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: var(--surface);
}

.product-view-toggle__button {
    min-height: 30px;
    padding: 0 12px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: var(--muted);
    font-size: .78rem;
    font-weight: 800;
    cursor: pointer;
}

.product-view-toggle__button.is-active {
    background: var(--text);
    color: #fff;
}

.product-listing[data-product-view="list"] .product-grid {
    grid-template-columns: 1fr;
}

.product-listing[data-product-view="list"] .product-card {
    display: block;
}

.product-listing[data-product-view="list"] .product-card__image,
.product-listing[data-product-view="list"] .search-hit-card__image {
    display: none;
}

.product-listing[data-product-view="list"] .product-card__body {
    align-content: center;
}

.product-listing[data-product-view="gallery"] .ais-Hits-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 16px;
}

.product-listing[data-product-view="gallery"] .ais-Hits-item {
    min-width: 0;
}

.product-listing[data-product-view="gallery"] .search-hit-card__layout {
    display: block;
}

.product-listing[data-product-view="gallery"] .search-hit-card__image {
    min-height: 230px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
}

.product-listing[data-product-view="list"] .ais-Hits-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.product-listing[data-product-view="list"] .search-hit-card__layout {
    display: block;
}

@media (max-width: 600px) {
    .product-view-toggle__button {
        padding: 0 10px;
    }
}

.product-summary .product-card__sku {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin: 0;
    padding: 6px 12px;
    border: 1px solid rgba(217, 42, 42, 0.14);
    border-radius: 999px;
    background: rgba(217, 42, 42, 0.06);
    color: #7b2030;
    font-size: 0.84rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.product-summary__meta {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin: 0 0 18px;
}

.product-summary__meta-pill {
    min-height: 34px;
    padding: 8px 14px;
    background: rgba(18, 23, 35, 0.05);
    color: var(--text);
    font-weight: 700;
}

.product-summary__lead-pill {
    display: inline-flex;
    align-items: center;
    margin: 0;
    max-width: min(100%, 62ch);
    padding: 8px 14px;
    border-radius: 999px;
    background: #fff;
    color: #334155;
    font-size: 0.96rem;
    line-height: 1.35;
}

.price-block {
    display: flex;
    align-items: baseline;
    gap: 10px;
}

.price-block strong {
    font-size: 1.2rem;
}

.price-block span {
    color: var(--muted);
    text-decoration: line-through;
}

.price-block--large strong {
    font-size: 2.25rem;
}

.price-promo-row {
    display: flex;
    align-items: center;
    gap: 16px;
    flex-wrap: wrap;
}

.sale-deadline {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    width: fit-content;
    max-width: 100%;
    margin: 0 0 14px;
    padding: 12px 18px;
    border-radius: 22px;
    background: linear-gradient(135deg, #e23b3b 0%, #b31212 100%);
    color: #fff;
    box-shadow: 0 16px 34px rgba(179, 18, 18, 0.26);
    flex-wrap: wrap;
}

.sale-deadline__eyebrow {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255, 255, 255, 0.82);
}

.sale-deadline__countdown {
    font-size: 1.15rem;
    line-height: 1.1;
    font-variant-numeric: tabular-nums;
    white-space: nowrap;
}

.sale-deadline__time {
    font-size: 0.86rem;
    color: rgba(255, 255, 255, 0.9);
    white-space: nowrap;
}

.sale-deadline.is-expired {
    background: linear-gradient(135deg, #7f1d1d 0%, #5d1313 100%);
}

.stock {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 6px 10px;
    border-radius: 999px;
    background: var(--surface-soft);
    font-size: 0.82rem;
}

.stock--eta {
    color: #fff;
    text-shadow: 0 1px 1px rgba(15, 23, 42, 0.2);
}

.stock--ok {
    color: var(--ok);
    background: rgba(21, 128, 61, 0.08);
}

.stock--warn {
    color: #b45309;
    background: rgba(217, 119, 6, 0.1);
}

.product-status-list {
    display: grid;
    gap: 12px;
    justify-items: start;
    margin-top: 18px;
}

.product-status-list .stock {
    max-width: 100%;
}

.product-status-list .stock--primary {
    min-height: 44px;
    padding: 10px 18px;
    border: 1px solid rgba(15, 23, 42, 0.08);
    font-size: 0.95rem;
    font-weight: 800;
    letter-spacing: 0.01em;
    text-align: center;
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.08);
}

.product-status-list .stock--detail {
    display: block;
    padding: 14px 16px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #fff;
    color: #334155;
    font-size: 0.92rem;
    line-height: 1.6;
}

.catalog-layout--search > div:last-child {
    min-width: 0;
    flex: 1;
}

.product-grid--search {
    grid-template-columns: 1fr;
    gap: 10px;
}

.catalog-layout {
    display: flex;
    align-items: flex-start;
    gap: 18px;
}

.catalog-layout--search {
    gap: 14px;
}

.catalog-toolbar,
.results-toolbar,
.filter-card__heading,
.catalog-toolbar__summary {
    display: flex;
    gap: 14px;
}

.catalog-toolbar,
.results-toolbar,
.filter-card__heading {
    align-items: center;
    justify-content: space-between;
}

.catalog-toolbar {
    margin-top: 16px;
    padding: 10px 12px;
    border-radius: var(--radius);
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.catalog-toolbar__summary {
    flex-wrap: wrap;
    align-items: baseline;
    color: var(--muted);
}

.catalog-toolbar__title {
    margin: 0 10px 0 0;
    color: var(--text);
    font-size: clamp(1.1rem, 1.5vw, 1.45rem);
    line-height: 1.1;
    letter-spacing: -0.02em;
}

.catalog-toolbar__summary strong,
.results-toolbar strong {
    color: var(--text);
}

.active-filter-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

.active-filter {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--line);
    color: var(--muted);
    font-weight: 700;
    font-size: 0.86rem;
}

.catalog-sidebar {
    width: min(230px, 100%);
    flex: 0 0 230px;
}

.search-filter-toggle {
    display: none;
    width: 100%;
    margin-bottom: 12px;
}

.filter-card {
    display: grid;
    gap: 10px;
    padding: 16px;
}

.catalog-sidebar label span {
    display: block;
    margin-bottom: 4px;
    color: var(--muted);
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.catalog-sidebar input,
.catalog-sidebar select {
    min-height: 42px;
    padding: 10px 12px;
}

.catalog-sidebar .button {
    min-height: 42px;
}

.filter-card__heading {
    align-items: flex-start;
}

.filter-card__heading h2 {
    margin-bottom: 6px;
}

.filter-card__heading p {
    margin: 0;
    color: var(--muted);
    font-size: 0.94rem;
}

.filter-card__heading a {
    font-weight: 700;
    color: var(--accent);
}

.filter-lock {
    display: flex;
    align-items: center;
    min-height: 50px;
    padding: 14px 16px;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: var(--surface-soft);
    color: var(--text);
    font-weight: 700;
}

.fitment-summary {
    margin-bottom: 14px;
    padding: 10px 12px;
    border-radius: 16px;
    background: rgba(217, 42, 42, 0.08);
    color: var(--accent-dark);
}

.fitment-summary--hero,
.fitment-summary--product {
    margin-top: 16px;
}

.fitment-summary--product.is-match {
    background: rgba(21, 128, 61, 0.08);
    color: var(--ok);
}

.fitment-summary__meta {
    display: block;
    margin-top: 6px;
    font-size: 0.92rem;
}

.results-toolbar {
    margin-bottom: 12px;
    padding: 10px 12px;
    border-radius: 16px;
    background: rgba(17, 23, 35, 0.04);
    color: var(--muted);
}

.results-toolbar__count,
.results-toolbar__sort {
    display: inline-flex;
    align-items: baseline;
    gap: 6px;
    flex-wrap: wrap;
}

.pagination {
    flex-wrap: wrap;
    margin-top: 14px;
}

.section--search-heading .section-heading {
    align-items: end;
    margin-bottom: 0;
}

.section--search-heading .section-heading h1 {
    font-size: clamp(1.85rem, 3vw, 2.45rem);
    margin-bottom: 6px;
}

.section--search-heading .section-heading > p:last-child {
    margin: 0;
    font-size: 0.96rem;
    font-weight: 700;
    color: var(--muted);
}

.pagination a {
    padding: 8px 12px;
    border-radius: 12px;
    border: 1px solid var(--line);
    background: #fff;
}

.pagination a.is-active {
    background: var(--dark);
    color: #fff;
}

.pagination__ellipsis {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    padding: 10px 6px;
    color: var(--muted);
    font-weight: 700;
}

.product-detail {
    display: flex;
    align-items: flex-start;
    gap: 28px;
}

.product-gallery,
.product-summary {
    min-width: 0;
    flex: 1;
}

.product-summary-intro {
    padding: 20px 22px;
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: #fff;
}

.product-summary-intro--mobile {
    display: none;
    width: 100%;
}

.product-summary-intro--desktop {
    display: block;
    margin-bottom: 18px;
}

.product-brand-mark {
    display: inline-flex;
    align-items: center;
    gap: 12px;
}

.product-brand-mark img {
    max-width: 120px;
    max-height: 32px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.product-brand-mark .eyebrow {
    margin: 0;
}

@media (min-width: 721px) {
    .product-brand-mark img {
        max-height: 50px;
        height: 50px;
    }
}

.product-gallery__primary,
.empty-image {
    min-height: 520px;
    border-radius: var(--radius);
    background: #fff;
    border: 1px solid var(--line);
    overflow: hidden;
}

.product-gallery__thumbs {
    display: flex;
    gap: 12px;
    margin-top: 12px;
    overflow-x: auto;
}

.product-gallery__thumb {
    width: 88px;
    height: 88px;
    padding: 0;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #fff;
    cursor: pointer;
    flex: 0 0 88px;
}

.product-gallery__thumb.is-active {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(217, 42, 42, 0.14);
}

.product-gallery__thumb img {
    width: 88px;
    height: 88px;
    border-radius: 16px;
    object-fit: contain;
}

.buy-box {
    display: flex;
    align-items: end;
    gap: 14px;
    margin-top: 24px;
}

.buy-box label {
    min-width: 140px;
}

.accepted-payments {
    display: grid;
    gap: 12px;
    margin-top: 18px;
    padding: 16px 18px;
    border: 1px solid var(--line);
    border-radius: 18px;
    background: rgba(255, 255, 255, 0.88);
}

.accepted-payments__label {
    font-size: 0.76rem;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--muted);
}

.payment-icon-container {
    display: flex;
    align-items: center;
    justify-content: center;
    align-content: center;
    gap: 18px;
    flex-wrap: wrap;
    text-align: center;
}

.payment-icon {
    flex: 0 0 auto;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
}

.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;
}

.detail-grid {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
    min-width: 0;
}

.detail-grid > * {
    min-width: 0;
    max-width: 100%;
}

.compatibility-copy,
.detail-card {
    line-height: 1.7;
}

.detail-card--tabs {
    padding: 0;
    width: 100%;
    max-width: 100%;
    overflow: hidden;
}

[data-product-details][hidden],
.detail-panel[hidden],
.detail-tab[hidden] {
    display: none;
}

.detail-tabs {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    align-items: center;
    padding: 20px 20px;
}

.detail-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 0 34px;
    border: 1px solid #cdd4df;
    border-radius: 999px;
    background: linear-gradient(180deg, #f3f5f8 0%, #e8edf3 100%);
    color: #66738b;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1;
    letter-spacing: -0.02em;
    text-decoration: none;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.85);
    transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.detail-tab:hover {
    color: var(--dark);
    border-color: #bfc8d6;
    box-shadow: 0 10px 24px rgba(18, 27, 48, 0.08);
    transform: translateY(-1px);
}

.detail-tab:focus-visible {
    outline: 2px solid rgba(14, 77, 168, 0.28);
    outline-offset: 3px;
}

.detail-tab.is-active {
    background: var(--dark);
    color: #fff;
    border-color: var(--dark);
    box-shadow: 0 12px 24px rgba(10, 18, 38, 0.2);
}

.detail-panel {
    display: block;
    padding: 24px 24px 28px;
    border-top: 1px solid var(--line);
    scroll-margin-top: 110px;
}

.detail-panel.is-active {
    background: rgba(17, 23, 35, 0.02);
}

.detail-subsection + .detail-subsection {
    margin-top: 28px;
}

.detail-subsection h3 {
    margin-bottom: 12px;
}

.compatibility-highlight {
    margin-top: 16px;
    margin-bottom: 12px;
    padding: 16px;
    border-radius: 16px;
    background: rgba(21, 128, 61, 0.06);
}

.compatibility-highlight--all {
    background: rgba(17, 23, 35, 0.04);
}

.compatibility-highlight--warning {
    background: rgba(217, 119, 6, 0.08);
    color: #92400e;
}

.fitment-list,
.site-footer ul {
    margin: 0;
    padding-left: 18px;
}

.fitment-list {
    columns: 2;
}

.fitment-list li {
    break-inside: avoid;
    margin-bottom: 10px;
}

.fitment-list__meta {
    display: block;
    color: var(--muted);
    font-size: 0.92rem;
}

.spec-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px 16px;
}

.spec-grid dt {
    font-weight: 700;
}

.spec-grid dd {
    margin: 0;
    color: var(--muted);
}

.reference-table,
.compatibility-table {
    width: 100%;
    border-collapse: collapse;
}

.reference-table th,
.reference-table td,
.compatibility-table th,
.compatibility-table td {
    padding: 12px 14px;
    border: 1px solid var(--line);
    text-align: left;
    vertical-align: top;
}

.reference-table th,
.compatibility-table th {
    background: var(--surface-soft);
    font-weight: 700;
}

.reference-table th {
    width: 240px;
}

.reference-table-wrap {
    overflow-x: auto;
}

.brochure-list {
    margin: 0;
    padding-left: 18px;
}

.brochure-list a {
    text-decoration: underline;
}

.product-status-meta {
    margin-top: 20px;
    color: var(--muted);
}

.compatibility-nav {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 18px 0 14px;
}

.compatibility-nav__button {
    min-width: 44px;
    min-height: 44px;
    border: 1px solid var(--line);
    border-radius: 999px;
    background: #fff;
    font-weight: 700;
    cursor: pointer;
}

.compatibility-nav__button:disabled {
    opacity: 0.45;
    cursor: default;
}

.compatibility-nav__meta,
.compatibility-disclaimer {
    color: var(--muted);
}

.compatibility-table-wrap {
    overflow-x: auto;
}

.product-compatibility.is-loading .compatibility-table-wrap {
    opacity: 0.5;
    transition: opacity 0.18s ease;
}

.cart-layout,
.checkout-layout {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.cart-layout > :first-child,
.checkout-layout > :first-child {
    flex: 1;
}

.summary-card {
    width: min(360px, 100%);
    position: sticky;
    top: 128px;
}

.cart-table {
    display: grid;
    gap: 14px;
}

.cart-line {
    padding: 18px;
}

.cart-line__media {
    width: 96px;
    height: 96px;
    overflow: hidden;
    border-radius: 16px;
    background: #fff;
    border: 1px solid var(--line);
}

.cart-line__content {
    flex: 1;
}

.cart-line__content h2 {
    margin: 0 0 6px;
    font-size: 1.1rem;
}

.cart-line__total {
    min-width: 110px;
    text-align: right;
    font-weight: 700;
}

.summary-line,
.summary-row {
    padding: 12px 0;
    border-bottom: 1px solid var(--line);
}

.form-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.checkout-form {
    display: grid;
    gap: 16px;
}

.checkout-option-block {
    display: grid;
    gap: 14px;
    padding-top: 6px;
}

.checkout-option-list,
.checkout-provider-card,
.checkout-method-pill-list {
    display: grid;
    gap: 12px;
}

.checkout-option-card,
.checkout-provider-card {
    display: grid;
    gap: 12px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.75);
}

.checkout-option-card {
    grid-template-columns: auto minmax(0, 1fr) auto;
    align-items: flex-start;
}

.checkout-option-card input,
.checkout-provider-card input,
.checkout-method-pill input {
    margin-top: 2px;
}

.checkout-option-card__content,
.checkout-provider-card__header {
    display: grid;
    gap: 4px;
}

.checkout-option-card__content {
    padding-left: 8px;
}

.checkout-option-card__price {
    font-weight: 700;
    white-space: nowrap;
}

.checkout-method-pill-list {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
}

.checkout-method-pill {
    display: flex;
    align-items: center;
    gap: 8px;
    min-height: 76px;
    padding: 10px 12px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fff;
    display: grid;
    grid-template-columns: 22px minmax(0, 1fr);
    grid-template-rows: 25px 20px;
    column-gap: 10px;
    row-gap: 3px;
    align-items: center;
    cursor: pointer;
    transition: border-color 140ms ease, background 140ms ease, box-shadow 140ms ease;
}

.checkout-method-pill:hover:not(.is-unavailable) {
    border-color: #8ebcf4;
    box-shadow: 0 3px 10px rgba(20, 115, 230, 0.08);
}

.checkout-method-pill > input {
    grid-row: 1 / span 2;
    width: 18px !important;
    min-width: 18px;
    max-width: 18px;
    height: 18px !important;
    min-height: 18px !important;
    max-height: 18px;
    margin: 0;
    padding: 0 !important;
    box-sizing: border-box;
    appearance: none;
    border: 1px solid #7d8491;
    border-radius: 50%;
    background: #fff;
    box-shadow: inset 0 0 0 4px #fff;
}

.checkout-method-pill > input:checked {
    border-color: #1473e6;
    background: #1473e6;
}

.checkout-method-pill__icon {
    width: auto;
    height: 24px;
    max-width: 74px;
    object-fit: contain;
    align-self: end;
}

.checkout-method-pill__label {
    grid-column: 2;
    grid-row: 2;
    color: var(--ink);
    font-size: 0.92rem;
    font-weight: 650;
    line-height: 1.1;
}

.checkout-method-pill__brands {
    display: flex;
    align-items: center;
    gap: 3px;
    grid-column: 2;
    grid-row: 1;
    align-self: end;
}

.checkout-method-pill__brands img {
    width: auto;
    height: 18px;
    max-width: 30px;
    object-fit: contain;
}

.checkout-method-pill.is-unavailable {
    cursor: not-allowed;
    opacity: 0.5;
    filter: grayscale(0.35);
}

.checkout-method-pill.is-selected {
    border-color: #1473e6;
    background: #eef6ff;
    box-shadow: 0 0 0 2px rgba(20, 115, 230, 0.12);
}

.checkout-method-pill[hidden] {
    display: none;
}

.checkout-gateway-note {
    margin: 0;
    color: var(--muted);
    font-size: 0.95rem;
}

.paypal-gateway-panel {
    display: grid;
    gap: 14px;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: #fff;
}

.paypal-card-row {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.checkout-card-form {
    display: grid;
    gap: 12px;
}

.checkout-card-form label {
    display: grid;
    gap: 6px;
    color: var(--ink);
    font-weight: 600;
}

.checkout-card-form input {
    width: 100%;
    min-height: 46px;
    padding: 12px;
    border: 1px solid var(--line);
    border-radius: 8px;
    background: #fff;
}

.checkout-card-form input:focus {
    border-color: #1473e6;
    outline: 2px solid rgba(20, 115, 230, 0.15);
}

.checkout-card-brands {
    display: flex;
    align-items: center;
    gap: 8px;
}

.checkout-card-brands img {
    width: auto;
    height: 24px;
    max-width: 52px;
    object-fit: contain;
}

#paypal-card-submit {
    justify-self: start;
}

.summary-card--inline {
    position: static;
    width: 100%;
    margin: 18px 0;
}

.flash {
    margin-top: 16px;
}

.flash--success {
    border-color: rgba(21, 128, 61, 0.2);
    background: rgba(21, 128, 61, 0.08);
}

.flash--warning {
    border-color: rgba(217, 119, 6, 0.2);
    background: rgba(217, 119, 6, 0.08);
}

.centered-card {
    max-width: 760px;
    margin: 0 auto;
    text-align: center;
}

.empty-state {
    padding: 36px;
    border-radius: var(--radius);
    background: #fff;
    border: 1px dashed var(--line);
    color: var(--muted);
}

.empty-state__actions {
    margin-top: 18px;
}

.brand-strip {
    flex-wrap: wrap;
}

.brand-strip a {
    padding: 12px 16px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--line);
}

.brand-hero {
    display: flex;
    gap: 20px;
    align-items: center;
    margin-top: 22px;
    padding: 20px;
    border-radius: var(--radius);
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.brand-hero img {
    max-width: 160px;
    max-height: 80px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.brand-hero h2 {
    margin: 0 0 8px;
}

.site-footer {
    padding: 36px 0 52px;
    background: #fff;
    border-top: 1px solid var(--line);
}

.site-footer__grid {
    align-items: flex-start;
    justify-content: space-between;
}

.site-footer__brand {
    max-width: 320px;
}

.payment-strip {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 18px;
}

.payment-strip img {
    height: 28px;
    width: auto;
    padding: 5px 8px;
    border-radius: 12px;
    background: var(--surface-soft);
    border: 1px solid var(--line);
}

@media (max-width: 1100px) {
    .wrapper-header {
        grid-template-columns: 240px minmax(0, 1fr);
    }

    .subnav__inner {
        align-items: flex-start;
    }

    .subnav__primary {
        gap: 14px;
    }
}

@media (max-width: 980px) {
    .wrapper-header {
        grid-template-columns: 220px minmax(0, 1fr);
        gap: 14px;
    }

    .header-search-shell {
        padding: 12px 14px;
    }

    .header-search-meta {
        gap: 10px;
    }

    .header-shortcuts--desktop .shortcut {
        min-height: 32px;
        padding: 0 12px;
        font-size: 0.84rem;
    }

    .header-shortcuts--desktop .shortcut--phone {
        display: none;
    }

    .subnav__inner {
        gap: 14px;
    }

    .subnav__primary {
        gap: 12px;
    }

    .vehicle-picker__grid,
    .hero__grid,
    .detail-grid,
    .site-footer__grid,
    .form-grid {
        grid-template-columns: 1fr;
    }

    .catalog-layout,
    .product-detail,
    .cart-layout,
    .checkout-layout {
        flex-direction: column;
    }

    .product-detail,
    .cart-layout,
    .checkout-layout {
        align-items: stretch;
    }

    .site-footer__grid {
        flex-direction: column;
        align-items: stretch;
        gap: 24px;
    }

    .catalog-sidebar,
    .summary-card {
        width: 100%;
        position: static;
    }

    .catalog-toolbar,
    .results-toolbar,
    .filter-card__heading {
        flex-direction: column;
        align-items: flex-start;
    }

    .search-hit-card__layout {
        grid-template-columns: 180px minmax(0, 1fr);
    }

    .search-hit-card__action {
        width: 100%;
    }

    .search-filter-toggle {
        display: inline-flex;
    }

    .filter-card {
        gap: 0;
    }

    [data-search-filter-panel] {
        display: grid;
        gap: 14px;
    }

    [data-search-filter-panel][hidden] {
        display: none;
    }

    .fitment-list {
        columns: 1;
    }

    .brand-hero {
        flex-direction: column;
        align-items: flex-start;
    }

    .brand-directory__toolbar {
        align-items: stretch;
    }

    .brand-directory__search {
        min-width: 100%;
    }

    .product-gallery__primary,
    .empty-image {
        min-height: 420px;
    }

    .product-summary-intro--mobile {
        display: block;
        margin-top: 20px;
        margin-bottom: 0;
    }

    .product-summary-intro--desktop {
        display: none;
    }

    .product-summary h1 {
        font-size: 1.6rem;
    }

    .product-summary__meta {
        margin-bottom: 0;
    }

    .product-summary__meta-pill,
    .product-summary__lead-pill {
        display: none;
    }
}

@media (max-width: 720px) {
    .container {
        width: min(100% - 20px, 1280px);
    }

    .announcement-bar {
        font-size: 0.82rem;
    }

    .announcement-bar .container {
        min-height: 34px;
    }

    .section {
        padding: 0;
    }

    .hero h1 {
        font-size: 2.35rem;
    }

    .vehicle-picker__actions,
    .hero__actions,
    .buy-box,
    .cart-line,
    .cart-line__actions,
    .empty-state__actions,
    .product-card__topline,
    .search-hit-card__brand-row,
    .search-hit-card__meta-row,
    .search-hit-card__footer {
        flex-direction: column;
        align-items: stretch;
        display: flex;
    }

    .header-search {
        grid-template-columns: 1fr;
    }

    .search-hit-card__layout {
        grid-template-columns: 1fr;
    }

    .search-hit-card__image {
        min-height: 220px;
        border-right: 0;
        border-bottom: 1px solid var(--line);
    }

    .mobile-menu-toggle {
        display: inline-flex;
    }

    .wrapper-header {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "brand shortcuts"
            "search search";
        gap: 10px 12px;
        padding: 10px 0 12px;
        align-items: center;
    }

    .brand-column {
        grid-area: brand;
        gap: 10px;
    }

    .header-shortcuts--mobile {
        display: flex;
    }

    .header-shortcuts--desktop {
        display: none;
    }

    .header-shortcuts {
        grid-area: shortcuts;
        justify-content: flex-end;
        gap: 8px;
        flex-wrap: nowrap;
    }

    .shortcut {
        min-height: 32px;
        padding: 0 12px;
        font-size: 0.86rem;
        box-shadow: none;
    }

    .shortcut--phone {
        display: none;
    }

    .shortcut__label--full {
        display: none;
    }

    .shortcut__label--compact {
        display: inline;
    }

    .shortcut--cart [data-cart-count] {
        min-width: 24px;
        min-height: 24px;
        margin-left: 8px;
    }

    .site-logo {
        padding: 8px 12px;
        border-radius: 16px;
    }

    .site-logo img {
        max-height: 40px;
    }

    .mobile-menu-toggle {
        width: 40px;
        height: 40px;
        padding: 9px;
        border-radius: 12px;
    }

    .header-search-shell {
        grid-area: search;
        padding: 10px 12px 12px;
        border-radius: 18px;
        box-shadow: 0 16px 36px rgba(18, 23, 35, 0.2);
    }

    .header-search {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        gap: 8px;
    }

    .header-search input,
    .header-search button {
        min-height: 46px;
    }

    .header-search input {
        padding: 12px 14px;
    }

    .header-search button {
        padding: 0 16px;
    }

    .header-search-meta {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 8px;
        margin-top: 8px;
    }

    .header-search-state {
        min-height: 38px;
        min-width: 0;
        padding: 7px 12px;
        gap: 8px;
        font-size: 0.84rem;
    }

    .header-search-state-label--full {
        display: none;
    }

    .header-search-state-label--compact {
        display: block;
    }

    .header-search-state-label {
        display: block;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .header-search-links {
        display: flex;
        flex-direction: row;
        align-items: center;
        flex-wrap: nowrap;
        gap: 8px;
        justify-content: flex-end;
    }

    .header-search-link {
        min-height: 36px;
        padding: 0 12px;
        font-size: 0.84rem;
        white-space: nowrap;
    }

    .subnav {
        display: none;
    }

    .subnav.is-mobile-open {
        display: block;
    }

    .subnav__inner {
        align-items: stretch;
        justify-content: flex-start;
        flex-direction: column;
        padding: 12px 0 16px;
    }

    .subnav__primary {
        width: 100%;
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }

    .subnav__primary > a,
    .subnav-menu summary {
        display: flex;
        align-items: center;
        min-height: 48px;
        padding: 0 6px;
    }

    .subnav-menu {
        width: 100%;
    }

    .product-gallery__primary,
    .empty-image {
        min-height: 320px;
    }

    .product-gallery__thumb {
        width: 72px;
        height: 72px;
        flex-basis: 72px;
    }

    .product-gallery__thumb img {
        width: 72px;
        height: 72px;
    }

    .detail-tabs {
        flex-wrap: nowrap;
        overflow-x: auto;
        padding-bottom: 8px;
        scrollbar-width: none;
        -ms-overflow-style: none;
    }

    .detail-tabs::-webkit-scrollbar {
        display: none;
    }

    .detail-tab {
        flex: 0 0 auto;
        white-space: nowrap;
        min-height: 50px;
        padding: 0 24px;
        font-size: 0.98rem;
    }

    .detail-panel {
        padding: 20px 16px 24px;
        scroll-margin-top: 92px;
    }

    .spec-grid {
        grid-template-columns: 1fr;
    }

    .reference-table th {
        width: 160px;
    }

    .subnav-menu__panel {
        position: static;
        min-width: 0;
        margin-top: 10px;
    }

}

@media (max-width: 420px) {
    html,
    body {
        overflow-x: clip;
    }

    .container {
        width: min(100% - 16px, 1280px);
    }

    .site-logo img {
        max-width: 100%;
        max-height: 36px;
    }

    .wrapper-header {
        gap: 8px 10px;
    }

    .brand-column {
        gap: 8px;
    }

    .shortcut {
        min-height: 36px;
        padding: 0 10px;
        font-size: 0.8rem;
    }

    .shortcut--cart [data-cart-count] {
        min-width: 22px;
        min-height: 22px;
        margin-left: 6px;
    }

    .header-search-shell {
        padding: 9px 10px 10px;
        border-radius: 16px;
    }

    .header-search-meta {
        gap: 6px;
    }

    .header-search-state {
        padding: 7px 10px;
        font-size: 0.8rem;
    }

    .header-search-link {
        min-height: 34px;
        padding: 0 10px;
        font-size: 0.8rem;
    }

    .header-search button {
        padding: 0 14px;
        font-size: 0.82rem;
    }

    .product-summary h1 {
        font-size: 1.6rem;
    }

    .product-brand-mark {
        flex-wrap: wrap;
        align-items: flex-start;
        gap: 10px;
    }

    .product-summary__meta {
        gap: 8px;
        margin-bottom: 0;
    }

    .product-summary .product-card__sku,
    .product-summary__meta-pill,
    .product-summary__lead-pill {
        max-width: 100%;
        min-width: 0;
    }

    .product-summary .product-card__sku,
    .product-summary__lead-pill,
    .product-status-list .stock,
    .compatibility-copy p,
    .compatibility-copy li,
    .compatibility-copy td,
    .compatibility-copy th {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .product-summary__lead-pill {
        border-radius: 18px;
        font-size: 0.92rem;
        line-height: 1.45;
    }

    .sale-deadline {
        width: 100%;
        gap: 8px;
        padding: 11px 14px;
        border-radius: 18px;
    }

    .sale-deadline__eyebrow,
    .sale-deadline__countdown,
    .sale-deadline__time {
        white-space: normal;
    }

    .sale-deadline__countdown {
        font-size: 1rem;
    }

    .sale-deadline__time {
        font-size: 0.82rem;
    }

    .price-block--large strong {
        font-size: 1.95rem;
    }

    .buy-box {
        gap: 12px;
    }

    .buy-box label {
        min-width: 0;
        width: 100%;
    }

    .accepted-payments {
        padding: 14px 14px 15px;
        border-radius: 16px;
    }

    .payment-icon-container {
        gap: 12px 14px;
    }

    .payment-icon {
        max-width: 100%;
    }

    .product-gallery__primary,
    .empty-image {
        min-height: 260px;
        overflow: hidden;
    }

    .product-gallery__primary img {
        display: block;
        width: 100%;
        max-width: 100%;
        height: auto;
        margin: 0 auto;
    }

    .detail-tabs {
        gap: 10px;
        padding: 16px 16px 10px;
    }

    .detail-tab {
        min-height: 42px;
        padding: 0 18px;
        font-size: 0.92rem;
    }

    .detail-panel {
        padding: 18px 14px 22px;
    }

    .detail-card,
    .detail-card--tabs {
        width: 100%;
        max-width: 100%;
    }

    .compatibility-copy,
    .compatibility-copy * {
        max-width: 100%;
    }

    .compatibility-copy img,
    .compatibility-copy iframe,
    .compatibility-copy video,
    .compatibility-copy embed,
    .compatibility-copy object {
        max-width: 100%;
        height: auto;
    }

    .compatibility-copy table,
    .compatibility-copy pre {
        display: block;
        max-width: 100%;
        overflow-x: auto;
    }

    #sfwdt,
    #sfwdt .sf-toolbarreset {
        max-width: 100vw !important;
        overflow-x: auto !important;
    }
}

/* StreetFX search results parity */
.streetfx-search-results {
    font-family: Verdana, Inter, sans-serif;
    color: #21243d;
    font-size: 0.85rem;
}

.streetfx-search-results .ais-Hits-list {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 15px;
    margin: 0;
    padding: 0;
    list-style: none;
}

@media (min-width: 680px) {
    .streetfx-search-results .ais-Hits-list {
        grid-template-columns: 1fr 1fr 1fr;
    }
}

@media (min-width: 1300px) {
    .streetfx-search-results .ais-Hits-list {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
}

.streetfx-search-results .ais-Hits-item {
    list-style: none;
    margin: 0;
}

.streetfx-search-results .hit.thumbnail {
    margin: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}

.streetfx-search-results .product-introduction {
    height: 100%;
    padding: 0.55rem;
    border: 1px solid rgba(0, 0, 0, 0.125);
    background: #fff;
}

.streetfx-search-results .hit-category {
    margin-bottom: 8px;
    color: #21243d;
    opacity: 0.7;
    font-size: 10px;
    line-height: 1.15;
    text-transform: uppercase;
}

.streetfx-search-results .savings-container-results {
    min-height: 20px;
}

.streetfx-search-results .badge-danger {
    position: static;
    display: inline-flex;
    align-items: center;
    min-height: 18px;
    padding: 0 8px;
    border-radius: 0;
    background: #ec1c24;
    color: #fff;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
}

.streetfx-search-results .hit-image-container {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 176px;
    max-height: 220px;
    max-width: 300px;
    margin: 0 auto 8px;
    overflow: hidden;
}

.streetfx-search-results .hit-image {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
}

.streetfx-search-results .hit-image-fallback {
    color: #7b7c7f;
    font-size: 12px;
    text-transform: uppercase;
    text-align: center;
}

.streetfx-search-results .hit-info-container {
    overflow-wrap: break-word;
    word-break: break-word;
}

.streetfx-search-results .brands-wrapper {
    min-height: 28px;
    margin-bottom: 4px;
}

.streetfx-search-results .brands-wrapper p {
    margin: 0;
}

.streetfx-search-results .search-brand-link {
    display: inline-flex;
    align-items: center;
}

.streetfx-search-results .brand-logo {
    width: auto;
    height: auto;
    max-height: 28px;
    max-width: 85px !important;
}

.streetfx-search-results .search-brand-text {
    display: inline-flex;
    color: #21243d;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.brand-directory__pagination {
    margin-top: 28px;
}

.brand-directory__pagination .ais-Pagination-list {
    display: flex;
    gap: 8px;
    justify-content: center;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.brand-directory__pagination .ais-Pagination-item,
.brand-directory__pagination .ais-Pagination-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.brand-directory__pagination .ais-Pagination-item {
    min-width: 42px;
    min-height: 42px;
    border-radius: 999px;
    border: 1px solid var(--line);
    background: #fff;
}

.brand-directory__pagination .ais-Pagination-item--selected {
    border-color: rgba(17, 23, 35, 0.14);
    background: #111723;
}

.brand-directory__pagination .ais-Pagination-item--selected a {
    color: #fff;
}

.brand-directory__pagination .ais-Pagination-item--previousPage,
.brand-directory__pagination .ais-Pagination-item--nextPage {
    padding: 0 10px;
}

.brand-directory__pagination .ais-Pagination-item--disabled {
    opacity: 0.45;
    pointer-events: none;
}

.brand-directory__pagination .ais-Pagination-link {
    width: 100%;
    min-height: 42px;
    padding: 0 12px;
    color: var(--text);
}

.streetfx-search-results .sku {
    margin: 0 0 6px;
    color: #7b7c7f;
    font-size: 12px;
}

.streetfx-search-results .sku span {
    color: #7b7c7f;
}

.streetfx-search-results .warehouse-qty {
    margin: 0 0 6px;
}

.streetfx-search-results .warehouse-qty span {
    display: inline-flex;
    padding: 2px 10px;
    color: #fff;
    background-color: #2fbe38;
    font-size: 12px;
    font-weight: 700;
}

.streetfx-search-results .hit-info-container h1 {
    margin: 0 0 8px;
    font-family: Inter, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.28;
    font-weight: 400;
}

.streetfx-search-results .hit-info-container h1 a {
    color: #21243d;
}

.streetfx-search-results .price {
    margin: 0;
    font-family: Inter, Arial, sans-serif;
    line-height: normal;
}

.streetfx-search-results .price strong {
    color: #21243d;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.01em;
}

.streetfx-search-results .price strong span {
    margin-right: 1px;
    font-size: 13px;
}

.streetfx-search-results .org-price {
    margin-left: 6px;
    color: #7b7c7f;
    font-size: 12px;
}

.streetfx-search-results .search-fitment-note {
    margin: 4px 0 0;
    color: #7b7c7f;
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
}

.streetfx-search-results .search-hit-actions {
    margin-top: 5px;
}

.streetfx-search-results .buying-options,
.streetfx-search-results .buying-options a,
.streetfx-search-results .buying-options button {
    display: flex;
    width: 100%;
    border: none;
    background: transparent;
    padding: 0;
}

.streetfx-search-results .buying-options .btn_wrapper {
    display: inline-flex;
    width: 100%;
    padding: 10px 0;
    justify-content: center;
    align-items: center;
    background: #002d2d;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
}

.streetfx-search-results .buying-options a .btn_wrapper {
    background: #7b7c7f;
}

.section--search-results .catalog-layout--search {
    gap: 20px;
    align-items: flex-start;
}

.section--search-results .catalog-sidebar {
    width: min(348px, 100%);
    flex: 0 0 348px;
}

.section--search-results .ais-Pagination {
    margin-top: 20px;
}

.section--search-results .ais-Pagination-list {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 4px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.section--search-results .ais-Pagination-item,
.section--search-results .ais-Pagination-link {
    display: flex;
    align-items: center;
    justify-content: center;
}

.section--search-results .ais-Pagination-item {
    width: 38px;
    height: 38px;
    background-color: rgba(65, 66, 71, 0.08);
    color: #414247;
    border-radius: 4px;
}

.section--search-results .ais-Pagination-item--selected {
    background-color: #ec1c24;
    background-image: linear-gradient(rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0));
}

.section--search-results .ais-Pagination-item--selected a {
    color: #fff;
    font-weight: 700;
}

.section--search-results .ais-Pagination-item--previousPage,
.section--search-results .ais-Pagination-item--nextPage {
    background: transparent;
}

.section--search-results .ais-Pagination-item--disabled {
    opacity: 0.33;
}

.section--search-results .ais-Pagination-link {
    width: 100%;
    height: 100%;
}

@media (max-width: 720px) {
    .streetfx-search-results .ais-Hits-list {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    .streetfx-search-results .hit-image-container {
        min-height: 140px;
    }

    .streetfx-search-results .hit-info-container h1 {
        font-size: 13px;
    }
}

[data-search-live-root] {
    position: relative;
    transition: opacity 0.18s ease;
}

[data-search-live-root].is-loading {
    opacity: 0.62;
    pointer-events: none;
}

.search-results-column {
    min-width: 0;
    flex: 1;
}

.search-results-mobile-bar {
    display: none;
    margin-bottom: 14px;
}

.filters-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 48px;
    border: 0;
    background: #ec1c24;
    color: #fff;
    font-size: 1rem;
    font-weight: 700;
    text-transform: none;
}

.search-facet-sidebar {
    width: min(348px, 100%);
    flex: 0 0 348px;
    padding: 14px 12px 12px;
    border-radius: 12px;
    background: #f3f5f8;
    border: 1px solid rgba(33, 36, 61, 0.08);
    box-shadow: 0 6px 16px rgba(18, 23, 35, 0.04);
}

.search-facet-sidebar__header {
    display: none;
}

.search-facet-sidebar__inner {
    gap: 18px;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}

.search-facet-sidebar__inner form {
    display: grid;
    gap: 12px;
    padding-bottom: 6px;
    border-bottom: 1px solid rgba(33, 36, 61, 0.08);
}

.search-facet-sidebar__form-fields {
    display: grid;
    gap: 8px;
}

.search-facet-sidebar__actions {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.search-facet-sidebar__actions .button,
.search-facet-sidebar__actions .streetfx-ClearRefinements,
.search-facet-sidebar__actions .streetfx-ClearRefinements-button {
    width: 100%;
    min-height: 46px;
    font-size: 0.92rem;
    font-weight: 800;
}

.search-facet-sidebar__actions .streetfx-ClearRefinements-button {
    justify-content: center;
    padding: 0 14px;
    border: 1px solid rgba(65, 66, 71, 0.16);
    border-radius: 999px;
    background: #f5f6f8;
    color: #4e5360;
}

.search-facet-sidebar__footer {
    display: none;
}

.ais-Panel {
    display: grid;
    gap: 10px;
}

.ais-Panel-header {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 0 0 0 10px;
    border-left: 4px solid #ec1c24;
    background: transparent;
    color: #5b6170;
    font-size: 0.8rem;
    font-style: normal;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.ais-HierarchicalMenu-list,
.ais-RefinementList-list {
    display: grid;
    gap: 8px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.ais-HierarchicalMenu-item,
.ais-RefinementList-item {
    margin: 0;
}

.ais-HierarchicalMenu-link,
.ais-RefinementList-label {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 42px;
    padding: 9px 10px 9px 12px;
    border: 1px solid rgba(33, 36, 61, 0.08);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.72);
    color: #414247;
    font-size: 0.88rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    text-transform: uppercase;
    transition: border-color 0.16s ease, background-color 0.16s ease, color 0.16s ease;
}

.ais-HierarchicalMenu-link {
    display: flex;
}

.ais-RefinementList-label {
    display: grid;
    grid-template-columns: 12px minmax(0, 1fr) max-content;
    column-gap: 8px;
    row-gap: 0;
    text-transform: none;
}

.ais-HierarchicalMenu-link span:first-child,
.ais-RefinementList-labelText {
    flex: 1;
}

.ais-RefinementList-labelText {
    display: block;
    min-width: 0;
    color: #414247;
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    line-height: 1.15;
    text-transform: uppercase;
}

.ais-HierarchicalMenu-count,
.ais-RefinementList-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 52px;
    min-height: 22px;
    padding: 0 8px;
    border-radius: 999px;
    background: #eceef2;
    color: #666872;
    font-size: 0.76rem;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.ais-RefinementList-count {
    justify-self: end;
    align-self: center;
}

.catalog-sidebar .ais-RefinementList-checkbox {
    appearance: none;
    display: block;
    width: 12px;
    min-width: 12px;
    max-width: 12px;
    height: 12px;
    min-height: 12px;
    margin: 0;
    padding: 0;
    border: 1px solid #bcc4d0;
    background: #fff;
    border-radius: 3px;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.95);
    justify-self: center;
    align-self: center;
    transition: border-color 0.16s ease, background-color 0.16s ease, box-shadow 0.16s ease;
}

.catalog-sidebar .ais-RefinementList-checkbox:checked {
    background: #ec1c24;
    border-color: #ec1c24;
    box-shadow: inset 0 0 0 2px #fff;
}

.catalog-sidebar .ais-RefinementList-checkbox:hover {
    border-color: #9ea8b6;
}

.catalog-sidebar .ais-RefinementList-checkbox:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px rgba(236, 28, 36, 0.14);
}

.ais-HierarchicalMenu-link:hover,
.ais-RefinementList-label:hover {
    border-color: rgba(236, 28, 36, 0.22);
    background: #fff;
}

.ais-HierarchicalMenu-item--selected .ais-HierarchicalMenu-link,
.ais-RefinementList-item--selected .ais-RefinementList-label {
    color: #ec1c24;
    border-color: rgba(236, 28, 36, 0.26);
    background: rgba(236, 28, 36, 0.05);
}

.ais-RefinementList-item--selected .ais-RefinementList-labelText,
.ais-RefinementList-item--selected .ais-RefinementList-count {
    color: #ec1c24;
}

.ais-RefinementList-item--selected .ais-RefinementList-count {
    background: rgba(236, 28, 36, 0.08);
}

.ais-HierarchicalMenu-showMore,
.ais-RefinementList-showMore {
    width: 100%;
    min-height: 40px;
    border: 1px solid rgba(65, 66, 71, 0.12);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.7);
    color: #555766;
    font-weight: 700;
}

.streetfx-current-category {
    margin-top: 4px;
    margin-bottom: 6px;
    padding: 0 2px 0 10px;
    color: #7b7c7f;
    font-size: 0.78rem;
    font-weight: 700;
    line-height: 1.35;
    text-transform: uppercase;
}

.search-results-column .catalog-toolbar {
    margin-top: 0;
}

.search-results-column .active-filter-strip {
    margin-top: 12px;
    margin-bottom: 14px;
}

@media (max-width: 900px) {
    .section-heading--search-results {
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .section-heading--search-results > p:last-child {
        white-space: normal;
    }
}

.streetfx-ClearRefinements-button {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 10px;
    border: 0;
    background: transparent;
    color: #ec1c24;
    font-size: 0.86rem;
    font-weight: 700;
}

.streetfx-ClearRefinements-button--disabled {
    opacity: 0.42;
}

.clear-filters {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

@media (max-width: 980px) {
    .search-results-mobile-bar {
        display: block;
    }

    .search-facet-sidebar {
        position: fixed;
        inset: 0 0 0 auto;
        z-index: 70;
        width: min(360px, 100%);
        max-width: 100%;
        background: #f2f2f3;
        transform: translateX(102%);
        transition: transform 0.22s ease;
        overflow-y: auto;
        box-shadow: -18px 0 45px rgba(18, 23, 35, 0.2);
    }

    .search-facet-sidebar.is-overlay-open {
        transform: translateX(0);
    }

    .search-facet-sidebar__header {
        position: sticky;
        top: 0;
        z-index: 2;
        display: flex;
        align-items: center;
        justify-content: space-between;
        padding: 12px 16px;
        background: #ec1c24;
        color: #fff;
        font-weight: 700;
    }

    .search-facet-sidebar__inner {
        padding: 16px;
    }

    .search-facet-sidebar__actions {
        grid-template-columns: 1fr;
    }

    .search-facet-sidebar__footer {
        position: sticky;
        bottom: 0;
        display: grid;
        grid-template-columns: 1fr 1.2fr;
        gap: 12px;
        padding: 12px 16px 18px;
        background: #f2f2f3;
        border-top: 1px solid rgba(65, 66, 71, 0.12);
    }

    .search-facet-sidebar__footer .streetfx-ClearRefinements-button {
        width: 100%;
        justify-content: center;
        min-height: 44px;
        border-radius: 8px;
        background: #6f7283;
        color: #fff;
    }

    .search-facet-sidebar__footer .button {
        width: 100%;
        min-height: 44px;
        border-radius: 8px;
    }

    body.is-search-overlay-open {
        overflow: hidden;
    }
}

/* Homepage rebuild */
.page-home .section {
    padding: 0 0 30px;
}

.section-heading--home {
    margin-bottom: 18px;
}

.home-hero {
    padding: 18px 0 30px;
}

.home-carousel {
    position: relative;
    overflow: hidden;
    background: #10141f;
}

.home-carousel--mobile {
    display: none;
}

.home-carousel__viewport {
    position: relative;
}

.home-carousel__slide {
    position: absolute;
    inset: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.32s ease;
}

.home-carousel__slide.is-active {
    position: relative;
    opacity: 1;
    pointer-events: auto;
}

.home-carousel__link {
    display: block;
}

.home-carousel__media,
.home-carousel__media img {
    width: 100%;
}

.home-carousel__media img {
    display: block;
    height: auto;
}

.category-showcase,
.brand-showcase,
.home-carousel__indicators {
    display: flex;
    gap: 14px;
}

.home-carousel__indicators {
    position: absolute;
    left: 50%;
    bottom: 24px;
    z-index: 2;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    list-style: none;
    transform: translateX(-50%);
}

.home-carousel__arrow,
.home-carousel__dot {
    border: 0;
    cursor: pointer;
}

.home-carousel__arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.45);
    color: #fff;
    font-weight: 700;
    font-size: 1.4rem;
    transform: translateY(-50%);
}

.home-carousel__arrow--prev {
    left: 20px;
}

.home-carousel__arrow--next {
    right: 20px;
}

.home-carousel__dot {
    width: 12px;
    height: 12px;
    padding: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.5);
    color: transparent;
    font-size: 0;
}

.home-carousel__dot.is-active {
    background: #fff;
}

.category-showcase,
.brand-showcase {
    flex-wrap: wrap;
}

.category-showcase__card,
.brand-showcase__card {
    border-radius: 24px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.category-showcase__card {
    display: grid;
    align-content: start;
    flex: 1 1 300px;
    min-width: 0;
    padding: 24px;
    gap: 12px;
}

.category-showcase__meta p,
.brand-showcase__count {
    margin: 0;
    color: var(--muted);
    font-size: 0.8rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.category-showcase__card h3,
.brand-showcase__name {
    margin: 0;
    font-weight: 800;
}

.category-showcase__list {
    display: grid;
    gap: 10px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.category-showcase__list a {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 12px;
    align-items: center;
    padding: 12px 14px;
    border-radius: 16px;
    background: var(--surface-soft);
}

.category-showcase__list span {
    font-weight: 700;
}

.category-showcase__list small {
    color: var(--muted);
    font-size: 0.8rem;
}

.category-showcase__empty {
    margin: 0;
    color: var(--muted);
}

.category-showcase__viewall {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--accent);
    font-weight: 800;
}

.brand-showcase__card {
    display: grid;
    flex: 1 1 180px;
    min-width: 0;
    justify-items: center;
    align-content: start;
    gap: 10px;
    padding: 18px 18px 20px;
    text-align: center;
}

.brand-showcase__logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 86px;
    padding: 14px;
    border-radius: 18px;
    background: linear-gradient(180deg, #fbfcff 0%, #f2f5fa 100%);
    border: 1px solid rgba(33, 36, 61, 0.08);
}

.brand-showcase__logo img {
    max-width: 100%;
    max-height: 58px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.title-container {
    margin-bottom: 22px;
}

.title-2 {
    display: inline-block;
    margin: 0;
    font-size: clamp(1.8rem, 3vw, 2.5rem);
    font-weight: 900;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.more-builds-section {
    padding: 10px 0 4px;
}

.widget-buildslist-cvr {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

.bulid,
.bulid-list {
    flex: 1 1 calc(33.333% - 14px);
    min-width: 220px;
}

.bulid-list {
    display: grid;
    align-content: start;
    gap: 14px;
}

.bulid-wrapper {
    display: grid;
    align-content: start;
    gap: 16px;
    height: 100%;
    padding: 20px;
    background: #f0f0f0;
    border-radius: 22px;
}

.buil-list-code {
    width: 100%;
}

.buil-list-code::before {
    display: none;
}

.buil-list-code a {
    color: #10141f;
    font-size: 1.45rem;
    font-weight: 700;
    line-height: 1.04;
    text-decoration: none;
}

.build-img {
    position: relative;
    width: 100%;
    aspect-ratio: 4 / 3;
    min-height: 0;
    overflow: hidden;
    border-radius: 18px;
    background: #10141f;
}

.build-img a,
.build-img img {
    display: block;
    width: 100%;
    height: 100%;
}

.build-img img {
    object-fit: cover;
    transition: transform 0.28s ease;
}

.bulid:hover .build-img img,
.bulid-list:hover .build-img img {
    transform: scale(1.06);
}

.more-builds-section.single .buil-list-code,
.more-builds-section.single .build-img {
    width: 100%;
}

.more-builds-section.single .buil-list-code a {
    font-size: 1.2rem;
    font-weight: 700;
    line-height: 1.2;
}

.build-page__intro {
    margin-bottom: 24px;
}

.build-page__intro .lead {
    max-width: 820px;
}

.build-page__gallery {
    display: grid;
    grid-template-columns: minmax(0, 2fr) repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.build-page__image {
    min-height: 220px;
    overflow: hidden;
    border-radius: 22px;
    background: #10141f;
}

.build-page__image.is-featured {
    grid-row: span 2;
    min-height: 456px;
}

.build-page__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.build-page__content {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(280px, 0.9fr);
    gap: 24px;
}

.build-page__panel {
    padding: 24px;
    border-radius: 24px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.build-page__panel p:last-child {
    margin-bottom: 0;
}

.build-page__specs {
    display: grid;
    gap: 10px;
    margin: 0;
    padding-left: 20px;
}

.build-page__specs li {
    color: var(--text);
    line-height: 1.6;
}

@media (max-width: 1100px) {
    .bulid,
    .bulid-list {
        flex-basis: calc(50% - 10px);
    }
}

@media (max-width: 720px) {
    .home-hero {
        padding-top: 14px;
    }

    .home-carousel--desktop {
        display: none;
    }

    .home-carousel--mobile {
        display: block;
    }

    .home-carousel__indicators {
        bottom: 14px;
    }

    .home-carousel__arrow {
        width: 36px;
        height: 36px;
        font-size: 1.2rem;
    }

    .home-carousel__arrow--prev {
        left: 10px;
    }

    .home-carousel__arrow--next {
        right: 10px;
    }

    .category-showcase__card,
    .brand-showcase__card,
    .bulid,
    .bulid-list {
        flex-basis: 100%;
    }

    .category-showcase__card {
        padding: 18px;
    }

    .bulid-wrapper {
        gap: 14px;
        padding: 18px;
    }

    .buil-list-code,
    .build-img {
        width: 100%;
    }

    .buil-list-code a {
        font-size: 1.3rem;
    }

    .build-page__gallery,
    .build-page__content {
        grid-template-columns: 1fr;
    }

    .build-page__image.is-featured {
        grid-row: span 1;
        min-height: 280px;
    }
}

@media (max-width: 420px) {
    .home-carousel__copy,
    .build-page__panel p {
        line-height: 1.6;
    }

    .home-carousel__dot {
        width: 32px;
        height: 32px;
        font-size: 0.82rem;
    }

    .category-showcase__list a {
        padding: 10px 12px;
    }
}

.portal-shell {
    padding-bottom: 56px;
}

.portal-stack {
    display: grid;
    gap: 14px;
    margin-top: 16px;
}

.portal-hero {
    margin-top: 16px;
    padding: 28px;
    border-radius: 26px;
    background: linear-gradient(118deg, #071321 0%, #0b2240 42%, #124978 100%);
    color: #fff;
    box-shadow: var(--shadow);
}

.portal-hero .eyebrow,
.portal-lookup-card .eyebrow {
    color: #8fc9ff;
}

.portal-hero h1 {
    max-width: 12ch;
    color: #fff;
}

.portal-hero--compact {
    padding: 12px 16px;
}

.portal-hero--compact .portal-hero__grid {
    grid-template-columns: minmax(0, 1.9fr) minmax(220px, 0.48fr);
    gap: 12px;
}

.portal-hero--compact h1 {
    max-width: none;
    margin-bottom: 0;
    font-size: 1.55rem;
}

.portal-hero--compact .portal-lookup-panel__toggle {
    padding: 11px 14px;
    font-size: 0.88rem;
}

.portal-hero--compact .portal-lookup-card {
    padding: 14px;
}

.portal-hero--compact .portal-hero__copy-column {
    gap: 6px;
}

.portal-hero--compact .portal-actions {
    margin-top: 6px;
    gap: 10px;
}

.portal-hero__copy {
    max-width: 58ch;
    color: rgba(240, 247, 255, 0.82);
}

.portal-hero__copy-column {
    display: grid;
    gap: 10px;
}

.portal-hero__grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.8fr);
    gap: 24px;
    align-items: start;
}

.portal-lookup-panel {
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.14);
    overflow: hidden;
}

.portal-lookup-panel__toggle {
    cursor: pointer;
    list-style: none;
    padding: 16px 20px;
    color: #fff;
    font-weight: 800;
}

.portal-lookup-panel__toggle::-webkit-details-marker {
    display: none;
}

.portal-lookup-panel__toggle::after {
    content: "+";
    float: right;
    color: #8fc9ff;
}

.portal-lookup-panel[open] .portal-lookup-panel__toggle::after {
    content: "-";
}

.portal-lookup-card {
    padding: 22px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.1);
    border-top: 1px solid rgba(255, 255, 255, 0.14);
    backdrop-filter: blur(6px);
}

.portal-lookup-form {
    display: grid;
    gap: 14px;
}

.portal-lookup-form label {
    display: grid;
    gap: 8px;
    color: #fff;
    font-weight: 700;
}

.portal-lookup-row {
    display: grid;
    grid-template-columns: minmax(150px, 0.75fr) minmax(0, 1fr);
    gap: 14px;
}

.portal-lookup-form input,
.portal-lookup-form select {
    background: rgba(255, 255, 255, 0.96);
}

.portal-hint {
    margin: 0;
    color: rgba(240, 247, 255, 0.76);
    font-size: 0.92rem;
}

.portal-status-row,
.portal-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

.portal-actions .button--ghost {
    background: rgba(255, 255, 255, 0.12);
    color: #fff;
}

.portal-status-pill {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 14px;
    border-radius: 999px;
    font-size: 0.88rem;
    font-weight: 800;
}

.portal-status-pill--success {
    background: rgba(21, 128, 61, 0.14);
    color: #13753f;
}

.portal-status-pill--warning {
    background: rgba(217, 119, 6, 0.14);
    color: #a35b07;
}

.portal-status-pill--info {
    background: rgba(37, 99, 235, 0.12);
    color: #1956b8;
}

.portal-status-pill--neutral {
    background: rgba(148, 163, 184, 0.16);
    color: #3c4f66;
}

.portal-muted,
.portal-kpi small,
.portal-timeline__item p,
.portal-timeline__item small,
.portal-item-card__copy p,
.portal-item-card__meta,
.portal-shipment summary span,
.portal-awaiting__list span,
.portal-awaiting__list small {
    color: var(--muted);
}

.portal-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.portal-help-hub {
    margin-top: 12px;
}

.portal-kpi {
    padding: 18px 20px;
    border-radius: 18px;
    background: #fff;
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
}

.portal-kpi__label {
    display: block;
    margin-bottom: 8px;
    color: var(--muted);
    font-size: 0.78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.portal-kpi strong {
    display: block;
    font-size: 1.06rem;
    line-height: 1.25;
}

.portal-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(240px, 0.56fr);
    gap: 18px;
    margin-top: 18px;
    align-items: start;
}

.portal-grid--empty {
    grid-template-columns: minmax(0, 1fr);
    margin-top: 22px;
}

.portal-grid--empty > .portal-section {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.portal-grid--empty .portal-tile-list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-top: 18px;
}

.portal-grid--empty .portal-tile {
    height: 100%;
    padding: 18px 20px;
}

.portal-grid--empty .portal-tile strong {
    color: var(--text);
}

.portal-grid--empty .portal-tile span {
    line-height: 1.5;
}

.portal-main,
.portal-sidebar {
    display: grid;
    gap: 18px;
}

/* The portal sidebar has multiple stacked cards, so a shared sticky summary
   would make the request-centre card overlap the payment overview. */
.page-order-portal .portal-sidebar .summary-card {
    position: static;
}

.portal-section__header {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: start;
    margin-bottom: 16px;
}

.portal-section__header h2,
.portal-section h2 {
    margin: 0;
}

.portal-timeline {
    display: grid;
    gap: 14px;
}

.portal-timeline__item {
    display: grid;
    grid-template-columns: 14px minmax(0, 1fr);
    gap: 14px;
    align-items: start;
}

.portal-timeline__dot {
    width: 14px;
    height: 14px;
    margin-top: 6px;
    border-radius: 999px;
    background: var(--accent);
    box-shadow: 0 0 0 5px rgba(236, 28, 36, 0.12);
}

.portal-timeline__item p,
.portal-timeline__item small,
.portal-notice p {
    margin: 6px 0 0;
}

.portal-tracking-summary {
    display: grid;
    gap: 4px;
    margin-bottom: 16px;
    padding: 14px 16px;
    border-radius: 16px;
    background: rgba(37, 99, 235, 0.06);
    border: 1px solid rgba(37, 99, 235, 0.12);
}

.portal-tracking-summary span {
    color: var(--muted);
}

.portal-tracking-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}

.portal-tracking-tab {
    border: 1px solid var(--line);
    background: var(--surface-soft);
    color: var(--text);
    border-radius: 999px;
    padding: 9px 14px;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.portal-tracking-tab.is-active {
    background: var(--accent);
    border-color: var(--accent);
    color: #fff;
}

.portal-tracking-panel {
    display: none;
}

.portal-tracking-panel.is-active {
    display: block;
}

.portal-tracking-shipment {
    display: grid;
    gap: 16px;
}

.portal-tracking-shipment__header {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: start;
    padding: 16px 18px;
    border-radius: 16px;
    border: 1px solid var(--line);
    background: var(--surface-soft);
}

.portal-tracking-shipment__header p {
    margin: 6px 0 0;
    color: var(--muted);
}

.portal-tracking-shipment__meta {
    display: grid;
    gap: 6px;
    justify-items: end;
    text-align: right;
}

.portal-tracking-items {
    display: grid;
    gap: 10px;
    padding: 14px 16px;
    border-radius: 16px;
    border: 1px solid var(--line);
    background: var(--surface-soft);
}

.portal-tracking-item-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.portal-tracking-item-chips span {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--line);
    color: var(--muted);
    font-size: 0.9rem;
}

.portal-shipment-list {
    display: grid;
    gap: 12px;
}

.portal-shipment {
    border: 1px solid var(--line);
    border-radius: 16px;
    background: var(--surface-soft);
    overflow: hidden;
}

.portal-shipment summary {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 16px 18px;
    cursor: pointer;
    list-style: none;
}

.portal-shipment summary::-webkit-details-marker {
    display: none;
}

.portal-shipment summary strong,
.portal-shipment__body strong,
.portal-awaiting h3,
.portal-item-card__copy h3 {
    color: var(--text);
}

.portal-shipment summary > div {
    display: grid;
    gap: 4px;
}

.portal-shipment__body {
    padding: 0 18px 18px;
}

.portal-shipment__body ul {
    margin: 12px 0 0;
    padding-left: 18px;
}

.portal-awaiting {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--line);
}

.portal-awaiting__list {
    display: grid;
    gap: 12px;
    margin-top: 12px;
}

.portal-awaiting__list article {
    display: grid;
    gap: 3px;
    padding: 14px 16px;
    border-radius: 14px;
    background: var(--surface-soft);
    border: 1px solid var(--line);
}

.portal-item-list,
.portal-tile-list {
    display: grid;
    gap: 12px;
}

.portal-item-card {
    display: grid;
    grid-template-columns: 94px minmax(0, 1fr);
    gap: 16px;
    padding: 16px;
    border-radius: 16px;
    background: var(--surface-soft);
    border: 1px solid var(--line);
}

.portal-item-card__media {
    display: grid;
    place-items: center;
    overflow: hidden;
    min-height: 94px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid var(--line);
}

.portal-item-card__media img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.portal-item-card__media span {
    color: var(--muted);
    font-weight: 800;
    font-size: 0.78rem;
    letter-spacing: 0.08em;
}

.portal-item-card__content {
    display: flex;
    justify-content: space-between;
    gap: 14px;
}

.portal-item-card__copy h3 {
    margin: 0;
    font-size: 1rem;
}

.portal-item-card__copy p {
    margin: 6px 0;
}

.portal-item-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 10px;
    align-items: center;
    font-size: 0.92rem;
}

.portal-item-card__price {
    white-space: nowrap;
    font-size: 1rem;
}

.portal-notice {
    padding: 16px 18px;
    border-radius: 16px;
    border: 1px solid var(--line);
}

.portal-notice--info {
    background: rgba(37, 99, 235, 0.06);
    border-color: rgba(37, 99, 235, 0.12);
}

.portal-notice--warning {
    background: rgba(217, 119, 6, 0.08);
    border-color: rgba(217, 119, 6, 0.16);
}

.portal-tile {
    display: grid;
    gap: 6px;
    padding: 16px 18px;
    border-radius: 16px;
    background: var(--surface-soft);
    border: 1px solid var(--line);
    color: inherit;
}

.portal-tile--button,
.portal-help-card--button {
    width: 100%;
    text-align: left;
    font: inherit;
    cursor: pointer;
}

.portal-tile--static {
    cursor: default;
}

.portal-help-hub__intro,
.portal-panel-copy {
    margin: 0 0 16px;
    color: var(--muted);
}

.portal-help-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 12px;
    margin-top: 8px;
}

.portal-help-card {
    display: grid;
    gap: 8px;
    padding: 16px 18px;
    border-radius: 18px;
    background: linear-gradient(180deg, #ffffff 0%, var(--surface-soft) 100%);
    border: 1px solid var(--line);
    color: inherit;
    box-shadow: var(--shadow);
}

.portal-help-card strong {
    color: var(--text);
}

.portal-help-card span {
    color: var(--muted);
    font-size: 0.94rem;
    line-height: 1.45;
}

.portal-action-card {
    grid-template-columns: 42px minmax(0, 1fr);
    grid-template-areas:
        "icon title"
        "text text";
    align-items: start;
    gap: 10px 12px;
    text-decoration: none;
    transition: transform 0.18s ease, box-shadow 0.18s ease, border-color 0.18s ease, background 0.18s ease;
}

.portal-action-card strong {
    grid-area: title;
}

.portal-action-card span:not(.portal-action-card__icon) {
    grid-area: text;
}

.portal-action-card:hover,
.portal-action-card:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(236, 28, 36, 0.22);
    box-shadow: 0 16px 30px rgba(8, 20, 36, 0.12);
}

.portal-action-card.is-active {
    border-color: rgba(236, 28, 36, 0.32);
    background: linear-gradient(180deg, rgba(236, 28, 36, 0.08) 0%, rgba(255, 255, 255, 1) 100%);
    box-shadow: 0 0 0 3px rgba(236, 28, 36, 0.1), 0 18px 34px rgba(8, 20, 36, 0.1);
}

.portal-action-card__icon {
    grid-area: icon;
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: rgba(7, 19, 33, 0.06);
    border: 1px solid rgba(7, 19, 33, 0.08);
    font-size: 1.25rem;
    line-height: 1;
}

.portal-action-card.is-active .portal-action-card__icon {
    background: rgba(236, 28, 36, 0.1);
    border-color: rgba(236, 28, 36, 0.18);
}

.portal-panel-list {
    display: grid;
    gap: 12px;
}

.portal-panel-row {
    display: grid;
    gap: 4px;
    padding: 14px 16px;
    border-radius: 14px;
    background: var(--surface-soft);
    border: 1px solid var(--line);
}

.portal-panel-row strong {
    color: var(--text);
}

.portal-panel-row span,
.portal-panel-row a {
    color: var(--muted);
}

.portal-panel-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 16px;
    margin-bottom: 16px;
}

.portal-section--switchable {
    transition: opacity 0.18s ease;
}

.portal-section--switchable.is-hidden {
    display: none;
}

.portal-workflow-root {
    display: grid;
    gap: 16px;
}

.portal-choice-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.portal-choice-card {
    display: grid;
    gap: 8px;
    padding: 18px 20px;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: linear-gradient(180deg, #ffffff 0%, var(--surface-soft) 100%);
    text-align: left;
    font: inherit;
    color: inherit;
    box-shadow: var(--shadow);
    cursor: pointer;
}

.portal-choice-card strong,
.portal-request-main h3,
.portal-request-main h4,
.portal-request-side h4,
.portal-request-item__body strong,
.portal-request-side-item strong {
    color: var(--text);
}

.portal-choice-card span,
.portal-request-sub {
    color: var(--muted);
}

.portal-request-shell {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(280px, 0.7fr);
    gap: 18px;
}

.portal-request-main,
.portal-request-side {
    padding: 18px;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: var(--surface-soft);
}

.portal-request-header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    margin-bottom: 16px;
}

.portal-request-header h3 {
    margin: 0;
}

.portal-request-steps {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    list-style: none;
    padding: 0;
    margin: 0 0 18px;
}

.portal-request-steps li {
    display: grid;
    gap: 6px;
    justify-items: center;
    text-align: center;
    font-size: 0.82rem;
    color: var(--muted);
}

.portal-request-steps li span {
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    border-radius: 999px;
    background: #dbe4ee;
    color: #35526d;
    font-weight: 800;
}

.portal-request-steps li.is-current span,
.portal-request-steps li.is-done span {
    background: var(--accent);
    color: #fff;
}

.portal-request-steps li.is-done {
    color: #0b7a45;
}

.portal-request-items,
.portal-request-fields,
.portal-request-side-list,
.portal-evidence-list {
    display: grid;
    gap: 12px;
}

.portal-request-item,
.portal-request-card,
.portal-request-side-item {
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--line);
    background: #fff;
}

.portal-request-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 14px;
}

.portal-request-item.is-selected {
    border-color: rgba(236, 28, 36, 0.35);
    box-shadow: 0 0 0 3px rgba(236, 28, 36, 0.08);
}

.portal-request-item.is-disabled {
    opacity: 0.68;
}

.portal-request-item__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    color: var(--muted);
    font-size: 0.92rem;
}

.portal-request-qty {
    display: flex;
    align-items: center;
    gap: 10px;
}

.portal-request-qty input {
    width: 88px;
}

.portal-reason-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 12px;
    margin-bottom: 14px;
}

.portal-reason-btn {
    display: grid;
    gap: 6px;
    padding: 14px 15px;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: var(--surface-soft);
    text-align: left;
    font: inherit;
    color: inherit;
    cursor: pointer;
}

.portal-reason-btn.is-active {
    border-color: rgba(236, 28, 36, 0.35);
    background: rgba(236, 28, 36, 0.07);
}

.portal-reason-btn--alt {
    border-style: dashed;
}

.portal-request-field {
    display: grid;
    gap: 8px;
}

.portal-request-field span {
    font-weight: 700;
    color: var(--text);
}

.portal-request-optional {
    color: var(--muted);
    font-weight: 500;
}

.portal-request-help,
.portal-request-field small {
    color: var(--muted);
}

.portal-request-field textarea {
    min-height: 110px;
    resize: vertical;
}

.portal-inline-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 14px;
}

.portal-upload-chip {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 9px 12px;
    border-radius: 999px;
    background: #fff;
    border: 1px solid var(--line);
    color: var(--text);
    flex-wrap: wrap;
}

.portal-upload-chip button {
    border: 0;
    background: transparent;
    color: var(--accent);
    font-weight: 700;
    cursor: pointer;
}

.portal-evidence-card {
    display: grid;
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    padding: 12px;
    border-radius: 14px;
    border: 1px solid var(--line);
    background: #fff;
}

.portal-evidence-card__thumb {
    overflow: hidden;
    border-radius: 12px;
    aspect-ratio: 1;
    background: var(--surface-soft);
}

.portal-evidence-card__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.portal-evidence-card__meta {
    display: grid;
    gap: 5px;
}

.portal-evidence-card__meta small {
    color: var(--muted);
    text-transform: capitalize;
}

.portal-evidence-card__meta button {
    justify-self: start;
    border: 0;
    padding: 0;
    background: transparent;
    color: var(--accent);
    font-weight: 700;
    cursor: pointer;
}

.portal-confirm-list {
    display: grid;
    gap: 12px;
    margin-top: 16px;
}

.portal-confirm-list label {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    color: var(--text);
}

.portal-request-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 18px;
}

.portal-request-draft {
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--line);
    background: #0c1d33;
    color: #dbeafe;
}

.portal-request-draft pre {
    margin: 12px 0 0;
    white-space: pre-wrap;
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.88rem;
}

.portal-mono {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
}

@media (max-width: 1024px) {
    .portal-hero__grid,
    .portal-grid,
    .portal-kpis,
    .portal-help-grid,
    .portal-choice-grid,
    .portal-request-shell {
        grid-template-columns: 1fr;
    }

    .portal-item-card__content,
    .portal-shipment summary,
    .portal-tracking-shipment__header {
        grid-template-columns: 1fr;
        display: grid;
    }

    .portal-grid--empty .portal-tile-list {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .portal-hero {
        padding: 22px;
        border-radius: 22px;
    }

    .portal-hero--compact {
        padding: 18px;
    }

    .portal-hero--compact .portal-hero__grid {
        grid-template-columns: 1fr;
    }

    .portal-item-card {
        grid-template-columns: 1fr;
    }

    .portal-item-card__media {
        min-height: 150px;
    }

    .portal-status-row,
    .portal-actions,
    .portal-item-card__meta {
        align-items: flex-start;
    }

    .portal-lookup-row,
    .portal-reason-grid,
    .portal-request-steps {
        grid-template-columns: 1fr;
    }

    .portal-evidence-card {
        grid-template-columns: 1fr;
    }
}

.portal-event-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 12px;
    align-items: center;
    margin-top: 6px;
}

.portal-event-meta a,
.portal-inline-link {
    color: var(--accent);
    font-weight: 700;
}

.portal-sidebar .portal-tile-list {
    margin-top: 8px;
}

.portal-shipment__header-row {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 14px;
    margin-bottom: 12px;
}

.portal-shipment-events {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}

.portal-shipment-event {
    padding: 12px 14px;
    border-radius: 14px;
    background: #fff;
    border: 1px solid var(--line);
}

.portal-shipment-event p,
.portal-shipment-event small {
    margin: 5px 0 0;
    color: var(--muted);
}

.brand-directory {
    padding: 28px 0 84px;
}

.brand-directory__hero {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 28px;
    margin: 34px 0 26px;
    padding: clamp(28px, 5vw, 64px);
    border-radius: 24px;
    background: var(--dark);
    color: #fff;
}

.brand-directory__hero h1 {
    margin: 8px 0 12px;
    color: #fff;
    font-size: clamp(2.2rem, 5vw, 4.7rem);
    line-height: .98;
}

.brand-directory__hero p:last-child {
    max-width: 620px;
    margin: 0;
    color: rgba(255,255,255,.72);
    font-size: 1.05rem;
}

.brand-directory__hero-stat {
    display: grid;
    gap: 3px;
    min-width: 150px;
    text-align: right;
}

.brand-directory__hero-stat strong {
    font: 800 2.2rem/1 Inter, sans-serif;
}

.brand-directory__hero-stat span,
.brand-directory__hint,
.brand-directory__summary {
    color: var(--muted);
}

.brand-directory__hero-stat span {
    font-size: .8rem;
}

.brand-directory__controls {
    display: grid;
    grid-template-columns: minmax(240px, 1.6fr) repeat(2, minmax(170px, 1fr)) auto;
    gap: 12px;
    align-items: end;
}

.brand-directory__controls label {
    display: grid;
    gap: 6px;
}

.brand-directory__controls label > span {
    color: var(--muted);
    font-size: .76rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.brand-directory__controls input,
.brand-directory__controls select {
    width: 100%;
    min-height: 44px;
    padding: 0 13px;
    border: 1px solid var(--line);
    border-radius: 10px;
    background: #fff;
}

.brand-directory__hint {
    margin: 12px 0 18px;
    font-size: .86rem;
}

.brand-directory__letters {
    position: sticky;
    top: 0;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 12px 0;
    background: rgba(245,246,248,.94);
    backdrop-filter: blur(10px);
}

.brand-directory__letters a {
    display: inline-grid;
    place-items: center;
    min-width: 31px;
    height: 31px;
    padding: 0 7px;
    border: 1px solid var(--line);
    border-radius: 8px;
    color: var(--text);
    font-size: .78rem;
    font-weight: 800;
}

.brand-directory__letters a:hover,
.brand-directory__letters a:focus-visible {
    border-color: var(--accent);
    background: var(--accent);
    color: #fff;
}

.brand-directory__summary {
    margin: 8px 0 20px;
    font-size: .9rem;
}

.brand-directory__groups {
    display: grid;
    gap: 30px;
}

.brand-directory__group {
    scroll-margin-top: 70px;
}

.brand-directory__group-heading {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-bottom: 10px;
    padding-bottom: 9px;
    border-bottom: 2px solid var(--text);
}

.brand-directory__group-heading h2 {
    margin: 0;
    color: var(--accent);
    font: 800 1.95rem/1 Inter, sans-serif;
}

.brand-directory__group-heading span {
    color: var(--muted);
    font-size: .8rem;
}

.brand-directory__list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px 12px;
    margin: 0;
    padding: 0;
    list-style: none;
}

.brand-directory__list li[hidden],
.brand-directory__group[hidden] {
    display: none;
}

.brand-directory__list a {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 48px;
    padding: 6px 8px;
    border: 1px solid transparent;
    border-radius: 10px;
    color: var(--text);
    font-weight: 700;
}

.brand-directory__list a:hover {
    border-color: var(--line);
    background: #fff;
    box-shadow: 0 8px 20px rgba(15,23,42,.06);
}

.brand-directory__logo {
    display: grid;
    flex: 0 0 34px;
    place-items: center;
    width: 34px;
    height: 34px;
    overflow: hidden;
    border-radius: 8px;
    background: #fff;
}

.brand-directory__logo img {
    width: 100%;
    height: 100%;
    padding: 4px;
    object-fit: contain;
}

.brand-directory__logo > span {
    color: var(--muted);
    opacity: .45;
    font-weight: 800;
    text-transform: uppercase;
}

.brand-directory__list small {
    margin-left: auto;
    color: var(--muted);
}

.brand-directory__empty {
    margin-top: 24px;
}

@media (max-width: 900px) {
    .brand-directory__controls {
        grid-template-columns: 1fr 1fr;
    }

    .brand-directory__search {
        grid-column: 1 / -1;
    }

    .brand-directory__controls .button {
        grid-column: 1 / -1;
        justify-self: start;
    }

    .brand-directory__list {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .brand-directory__hero {
        display: block;
        margin-top: 24px;
    }

    .brand-directory__hero-stat {
        margin-top: 24px;
        text-align: left;
    }

    .brand-directory__controls {
        grid-template-columns: 1fr;
    }

    .brand-directory__search {
        grid-column: auto;
    }

    .brand-directory__list {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Keep legacy catalogue result cards table-like in List mode. */
.product-listing[data-product-view="list"] .streetfx-search-results .ais-Hits-list {
    grid-template-columns: 1fr;
    gap: 8px;
}

.product-listing[data-product-view="list"] .streetfx-search-results .product-introduction {
    display: grid;
    grid-template-rows: auto auto;
    padding: 0;
    border: 1px solid var(--line);
    border-radius: 6px;
    overflow: hidden;
}

.product-listing[data-product-view="list"] .streetfx-search-results .hit-category {
    margin: 0;
    padding: 8px 14px 0;
}

.product-listing[data-product-view="list"] .streetfx-search-results .hit-image-container {
    display: none;
}

.product-listing[data-product-view="list"] .streetfx-search-results .hit-info-container {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr) minmax(150px, auto);
    grid-template-areas:
        "brand title footer"
        "sku title footer"
        "eta eta footer";
    align-items: start;
    gap: 4px 16px;
    padding: 8px 14px 12px;
}

.product-listing[data-product-view="list"] .streetfx-search-results .brands-wrapper {
    grid-area: brand;
    min-height: 0;
    margin: 0;
}

.product-listing[data-product-view="list"] .streetfx-search-results .sku {
    grid-area: sku;
    margin: 0;
}

.product-listing[data-product-view="list"] .streetfx-search-results .warehouse-qty {
    grid-area: eta;
    margin: 0 !important;
}

.product-listing[data-product-view="list"] .streetfx-search-results .hit-info-container h1 {
    grid-area: title;
    margin: 0;
}

.product-listing[data-product-view="list"] .streetfx-search-results .hit-info-container > footer {
    grid-area: footer;
    align-self: start;
    margin: 0;
}

@media (max-width: 720px) {
    .product-listing[data-product-view="list"] .streetfx-search-results .hit-info-container {
        grid-template-columns: minmax(0, 1fr) auto;
        grid-template-areas:
            "brand footer"
            "title footer"
            "sku footer"
            "eta footer";
    }
}

/* StreetFX Performance theme overrides */
/* Performance: presentation overrides for a complete copy of the current storefront. */
@font-face{font-family:Karla;font-style:normal;font-weight:400 700;font-display:swap;src:url('webfonts/karla-latin-variable.woff2') format('woff2')}
@font-face{font-family:Montserrat;font-style:normal;font-weight:400 900;font-display:swap;src:url('webfonts/montserrat-latin-variable.woff2') format('woff2')}
@font-face{font-family:Montserrat;font-style:italic;font-weight:800;font-display:swap;src:url('webfonts/montserrat-latin-italic-800.woff2') format('woff2')}
:root{--bg:#fff;--surface:#fff;--surface-soft:#f5f6f8;--line:#dfe2e6;--text:#181c22;--muted:#535b66;--accent:#cd1730;--accent-dark:#a81025;--dark:#17191d;--dark-2:#26292e;--radius:7px;--shadow:0 5px 20px rgb(24 28 34 / 4%)}
body{font-family:Karla,Arial,sans-serif;font-size:16px;line-height:1.55;background:#fff;color:var(--text)}
h1,h2,h3,h4,.price-block strong,.category-showcase__card h3,.brand-showcase__name{font-family:Montserrat,Arial,sans-serif;font-weight:800;letter-spacing:-.025em;line-height:1.25}
a{color:inherit}a:hover{color:var(--accent)}
button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #cd1730;outline-offset:3px}
.container{width:min(100% - 64px,1280px)}
.eyebrow{color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.announcement-bar{background:var(--dark);color:#f6f6f6;border:0;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase}
.announcement-bar .container{min-height:32px}
.site-header{position:relative;top:auto;background:#fff;border-bottom:1px solid var(--line);box-shadow:none}
.wrapper-header{grid-template-columns:285px minmax(0,1fr);gap:34px;padding:26px 0}
.site-logo{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;max-width:270px}
.site-logo img{width:270px;max-height:78px;height:auto;object-fit:contain}
.header-search-shell{padding:0;background:none;box-shadow:none;border:0;border-radius:0}
.header-search{grid-template-columns:minmax(0,1fr) 112px;border:1px solid #aaaeb5;border-radius:3px;background:#f7f7f9;overflow:hidden;box-shadow:none}
.header-search input{min-height:48px;background:transparent;border:0;border-radius:0;padding:12px 16px;font-size:.9rem;font-weight:700;color:var(--text)}
.header-search button{min-height:48px;border:0;border-radius:0;background:var(--accent);color:#fff;font-family:Karla,Arial,sans-serif;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.header-search button:hover{background:var(--accent-dark)}
.header-search-note{font-size:.78rem;margin:8px 0 0;color:var(--muted)}
.header-search-meta{margin-top:9px}.header-search-state{border-radius:3px;box-shadow:none;font-size:.74rem;background:#f7f8fa;border:1px solid var(--line)}
.header-search-link{font-size:.74rem;font-weight:700}
.subnav{background:#fff;border-top:1px solid var(--line);color:var(--text);padding:0}
.subnav__inner{min-height:54px;gap:20px}.subnav__primary{gap:30px}
.subnav__inner a,.subnav-menu summary{font-family:Karla,Arial,sans-serif;font-size:.85rem;font-weight:700;letter-spacing:.01em}
.subnav-menu>summary{padding:17px 24px;color:#fff;background:var(--accent);min-height:54px}
.subnav-menu__panel{border-radius:0 0 7px 7px;box-shadow:0 14px 28px rgb(0 0 0 / 12%);background:#fff;color:var(--text)}
.shortcut{color:var(--text);background:transparent;border:0;border-radius:0;font-size:.8rem}.shortcut [data-cart-count]{background:var(--accent);color:white;border-radius:50%}
.mobile-menu-toggle{background:transparent;box-shadow:none;border:1px solid var(--line);border-radius:4px}
.button{min-height:44px;padding:12px 22px;border-radius:4px;font-family:Karla,Arial,sans-serif;font-size:.85rem;font-weight:700;box-shadow:none;letter-spacing:.01em}
.button--accent{background:var(--accent);border-color:var(--accent);color:#fff}.button--accent:hover{background:var(--accent-dark);border-color:var(--accent-dark);color:#fff}
.button--dark{background:var(--dark);color:#fff}.button--dark:hover{background:#30343a;color:#fff}
.button--ghost{background:#fff;border:1px solid var(--line);color:var(--text)}
.button:disabled,.button[aria-disabled=true]{opacity:.55;cursor:not-allowed}
.section{padding:36px 0}.section--tight{padding:22px 0}.section--breadcrumbs{padding:24px 0 10px}
.breadcrumbs{font-size:.77rem;gap:12px;color:var(--muted);flex-wrap:wrap}
.section-heading h1{font-size:clamp(1.7rem,3vw,2.5rem)}.section-heading h2{font-size:clamp(1.4rem,2.2vw,2rem)}
.product-card,.search-hit-card,.checkout-card,.summary-card,.category-showcase__card,.brand-showcase__card,.cart-line,.catalog-toolbar,.catalog-sidebar{border-radius:7px;box-shadow:none;background:#fff;border-color:var(--line)}
.product-card:hover,.search-hit-card:hover{border-color:#bfc4cc;box-shadow:0 8px 24px rgb(24 28 34 / 7%)}
.product-card__image,.search-hit-card__image{background:#fff;border-radius:6px 6px 0 0}.product-card h3{font-size:.95rem;line-height:1.45}
.product-card__body{padding:18px}.product-card__sku{font-family:Karla,Arial,sans-serif;font-size:.76rem;color:var(--muted)}
.price-block strong{font-size:1.25rem;color:var(--text)}.price-block--large strong{font-size:2rem}
.catalog-sidebar{background:#f7f8fa;padding:20px}.catalog-toolbar{background:#f7f8fa;padding:16px 20px;border:1px solid var(--line)}
.catalog-toolbar__title{font-family:Montserrat,Arial,sans-serif;font-weight:700}.catalog-sidebar input,.catalog-sidebar select{min-height:44px;border-radius:4px}
.product-detail{gap:36px}.product-gallery__primary{min-height:480px;border-radius:7px;box-shadow:none}
.product-summary-intro{padding:0 0 22px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none}
.product-summary h1,.product-summary-intro h1{font-size:clamp(1.4rem,2.2vw,1.9rem);line-height:1.3}
.product-summary .eyebrow{color:var(--muted)}.product-summary__meta-pill{border-radius:3px}
.product-summary .eta,.product-eta,.product-availability,.availability-card{border-radius:5px;background:#f7f8fa;border:1px solid var(--line);border-left:3px solid var(--accent)}
.product-gallery__thumb{border-radius:4px}.product-gallery__thumb.is-active{border-color:var(--accent)}
.buy-box{background:#f7f8fa;border:1px solid var(--line);border-radius:6px;padding:20px}.buy-box .button--accent{min-height:50px;flex:1}
.buy-box input[type=number]{min-height:50px;border-radius:4px;border:1px solid var(--line);background:#fff}
.payment-icon-container{border-radius:4px;background:#f3f4f5}.stock{border-radius:4px}
.cart-layout,.checkout-layout{gap:28px;min-width:0}.cart-layout>:first-child,.checkout-layout>:first-child{min-width:0}
.cart-table{gap:0;border:1px solid var(--line);border-radius:7px;overflow:hidden}
.cart-line{border:0;border-bottom:1px solid var(--line);border-radius:0;gap:18px;padding:22px}.cart-line:last-child{border-bottom:0}
.cart-line__media{border-radius:4px;width:90px;height:90px;flex-shrink:0}.cart-line__content{min-width:0}.cart-line__content h2{font-size:.9rem;line-height:1.5;overflow-wrap:anywhere}
.cart-line__actions form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.cart-line__actions input[type=number]{width:70px;min-height:44px;border:1px solid var(--line);border-radius:4px;padding:8px}
.cart-line__total{font-family:Montserrat,Arial,sans-serif;font-size:1rem}.summary-card{top:24px;border:1px solid var(--line);border-top:4px solid var(--accent);padding:24px;box-shadow:none}
.summary-card h2{font-size:1.25rem}.summary-row,.summary-line{border-color:var(--line)}.summary-note{color:var(--muted);font-size:.86rem}
.checkout-card{border:1px solid var(--line);padding:28px}.checkout-card h1{font-size:1.7rem}.checkout-form input,.checkout-form select,.checkout-form textarea{border-radius:4px;border-color:#bfc4cc;min-height:46px;background:#fff}
.checkout-form input[type=radio],.checkout-form input[type=checkbox]{min-height:auto;accent-color:var(--accent)}
.checkout-option-card,.checkout-method-pill,.checkout-provider-card,.checkout-card-form{border-radius:5px;border-color:var(--line)}
.checkout-method-pill.is-selected,.checkout-option-card:has(input:checked){border-color:var(--accent);background:#fff5f6}
.checkout-gateway-note{border-radius:4px}.checkout-cart-trigger,.checkout-floating-bar{border-radius:5px}
.site-footer{background:var(--dark);color:#e3e5e8;border-top:4px solid var(--accent);padding:48px 0 30px}
.site-footer h2,.site-footer h3{color:#fff;font-family:Montserrat,Arial,sans-serif;font-size:.88rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}
.site-footer a{color:#e3e5e8}.site-footer a:hover{color:#fff;text-decoration:underline}.site-footer p{color:#bbc0c8;font-size:.87rem}
.site-footer__brand img{width:min(250px,100%);max-height:72px;object-fit:contain}.payment-strip img{max-height:25px;background:#f3f4f5;border-radius:3px;padding:3px}
/* A theme-managed hero, with the inherited promotions retained in the duplicate. */
.page-home .home-hero{display:none}.page-home .home-managed-intro{padding:0 0 40px}
.page-home .home-managed-intro .container{width:100%;max-width:none}.home-managed-intro__desktop,.home-managed-intro__mobile{padding:0;border:0;border-radius:0;box-shadow:none;background:none}
.performance-hero{position:relative;isolation:isolate;min-height:540px;display:flex;align-items:center;overflow:hidden;background:#17191d;color:#fff}
.performance-hero__image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.performance-hero::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgb(0 0 0 / 91%) 0%,rgb(0 0 0 / 70%) 35%,rgb(0 0 0 / 5%) 78%);z-index:-1}
.performance-hero__copy{width:min(100% - 64px,1280px);margin:0 auto;padding:64px 0}
.performance-hero .eyebrow{color:#fff;font-size:.73rem;margin:0 0 24px}
.performance-hero h1{font-size:clamp(2.5rem,5.6vw,5rem);line-height:1.04;letter-spacing:-.045em;text-transform:uppercase;max-width:790px;margin:0 0 25px;color:#fff}
.performance-hero__lead{font-size:1.1rem;max-width:490px;margin:0 0 30px;color:#e1e2e5}
.performance-hero__actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.performance-hero__actions .button{min-height:50px}
.performance-hero__actions .button--ghost{background:transparent;border-color:#7c7e82;color:#fff}.performance-hero__actions .button--ghost:hover{background:rgb(255 255 255 / 10%);color:#fff}
.page-home .section-heading--home{margin:20px 0 26px}.category-showcase__card,.brand-showcase__card{border-radius:5px}.category-showcase__card{border-top:3px solid var(--accent);padding:24px}
.category-showcase__viewall{color:var(--accent);font-weight:700}.brand-showcase__logo{border-radius:4px}
@media(max-width:1100px){.wrapper-header{grid-template-columns:235px minmax(0,1fr);gap:24px}.site-logo img{width:230px}.subnav__primary{gap:18px}.cart-line{flex-wrap:wrap}.cart-line__actions{flex:1}.product-detail{gap:24px}}
@media(max-width:960px){.container{width:calc(100% - 36px)}.product-detail{flex-direction:column}.product-gallery,.product-summary{width:100%}.product-gallery__primary{min-height:360px}.product-summary-intro--mobile{border:0;margin:0 0 18px}.cart-layout,.checkout-layout{flex-direction:column}.cart-layout>:first-child,.checkout-layout>:first-child,.summary-card{width:100%}.summary-card{position:static}.performance-hero{min-height:460px}.performance-hero__copy{width:calc(100% - 48px)}.performance-hero h1{font-size:3.4rem}.performance-hero::before{background:linear-gradient(90deg,rgb(0 0 0 / 85%),rgb(0 0 0 / 35%))}}
@media(max-width:720px){
 .container{width:calc(100% - 28px)}.section{padding:22px 0}.section--breadcrumbs{padding:18px 0 8px}
 .announcement-bar{font-size:.6rem;letter-spacing:.11em}.announcement-bar .container{min-height:29px}
 .wrapper-header{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:'brand shortcuts' 'search search';gap:15px 8px;padding:16px 0}
 .brand-column{gap:9px}.site-logo{padding:0;max-width:190px;min-width:0}.site-logo img{width:190px;max-height:52px}.mobile-menu-toggle{width:38px;height:40px;padding:9px;flex-shrink:0}
 .header-search{grid-template-columns:minmax(0,1fr) 80px}.header-search input{min-width:0;font-size:.8rem;padding:10px}.header-search button{font-size:.68rem;min-height:44px}
 .header-search-meta{flex-wrap:wrap;gap:8px}.header-search-state{font-size:.68rem;min-width:0}.header-search-links{flex-shrink:0}.header-search-note{display:none}
 .header-shortcuts--mobile{gap:6px;align-items:center}.header-shortcuts--mobile .shortcut--phone,.header-shortcuts--mobile .shortcut--account{display:none}.header-shortcuts--mobile .shortcut--cart{min-height:44px;gap:5px;padding:4px;font-size:.73rem}
 .subnav__inner{padding:0;min-height:0;gap:0}.subnav__primary{gap:0}.subnav-menu>summary{padding:14px 20px;min-height:48px}.subnav__primary>div a{padding:13px 20px;min-height:44px}.subnav-menu__panel{position:static;box-shadow:none;width:100%;min-width:0}
 .section-heading h1,.checkout-card h1{font-size:1.45rem}.product-summary h1,.product-summary-intro h1{font-size:1.42rem}.product-detail{gap:18px}.product-gallery__primary{min-height:300px}.price-block--large strong{font-size:1.8rem}
 .buy-box{padding:16px}.buy-box .button{width:100%}.product-card__body{padding:14px}.product-card h3{font-size:.85rem}.catalog-toolbar{padding:14px}.catalog-sidebar{padding:16px}
 .cart-line{display:grid;grid-template-columns:72px minmax(0,1fr);align-items:start;padding:18px 14px;gap:14px}.cart-line__media{width:72px;height:72px}.cart-line__content{grid-column:2}.cart-line__actions{grid-column:1/-1;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.cart-line__actions .button{padding:10px 14px}.cart-line__total{grid-column:1/-1;text-align:right;padding-top:8px;border-top:1px solid var(--line)}
 .checkout-card,.summary-card{padding:20px 16px}.form-grid{grid-template-columns:minmax(0,1fr)}.checkout-form label,.checkout-form .form-grid>div{min-width:0}.checkout-card-form{padding:16px}.checkout-cart-dialog{max-width:calc(100vw - 24px)}
 .site-footer{padding:32px 0}.site-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 18px}.site-footer__brand{grid-column:1/-1}.site-footer__brand img{max-width:230px}.site-footer a{display:inline-block;padding:5px 0}
 .page-home .home-managed-intro{padding:0 0 12px}.performance-hero{min-height:490px}.performance-hero__copy{width:calc(100% - 36px);padding:42px 0}.performance-hero__image{object-position:65% center}.performance-hero::before{background:linear-gradient(90deg,rgb(0 0 0 / 85%),rgb(0 0 0 / 40%))}.performance-hero h1{font-size:clamp(2.35rem,10vw,3.5rem);margin-bottom:22px}.performance-hero .eyebrow{font-size:.61rem;letter-spacing:.13em;margin-bottom:22px}.performance-hero__lead{font-size:1rem;max-width:290px}.performance-hero__actions{gap:10px}.performance-hero__actions .button{padding:12px 17px;font-size:.8rem}.page-home .section-heading--home{margin:14px 0 20px}.category-showcase__card{padding:20px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
/* Verified layout refinements: readable search state and separate navigation links. */
.eyebrow{font-family:Karla,Arial,sans-serif}
.header-search-state,.header-search-state.is-empty,.header-search-state.is-inactive{color:var(--muted);min-height:28px;padding:4px 10px}
.header-search-state-label,.header-search-state-label--full,.header-search-state-label--compact{color:inherit}
.subnav__primary>div{display:flex;align-items:center;gap:28px}
.home-managed-intro__desktop{margin-top:0}
@media(max-width:960px){.home-managed-intro__desktop{display:none}.home-managed-intro__mobile{display:block}}
@media(max-width:720px){.subnav__primary>div{align-items:stretch;gap:0;flex-direction:column}.section-heading--home{align-items:flex-start;gap:16px;flex-direction:column}.header-search-state{max-width:100%}}
.summary-card h2,.checkout-card h2,.section-heading h1,.section-heading h2,.title-2{font-family:Montserrat,Arial,sans-serif;letter-spacing:-.025em}

/* The garage belongs below the navigation, across the full storefront width. */
.sfx-garage-bar { background: #f3f4f6; border-bottom: 1px solid #dce0e5; color: #191c22; }
.sfx-vehicle-global { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 19px 0; }
.sfx-eyebrow { display: block; margin: 0 0 5px; color: #cd1730; font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.sfx-vehicle-global strong { display: block; font-size: 17px; line-height: 1.35; }
.sfx-vehicle-global small { display: block; margin-top: 4px; color: #535b66; font-size: 12px; }
.sfx-vehicle-global .is-active small { color: #8c1223; }
.sfx-vehicle-steps { display: flex; align-items: center; gap: 8px; min-width: 0; }
.sfx-vehicle-steps button { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 44px; padding: 11px 14px; border: 1px solid #cbd0d7; border-radius: 5px; background: #fff; color: #191c22; cursor: pointer; font: 700 13px Karla, Arial, sans-serif; }
.sfx-vehicle-steps button > span { color: #cd1730; font-size: 10px; }
.sfx-vehicle-steps b { max-width: 110px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.sfx-vehicle-steps i { font-style: normal; }
.sfx-vehicle-steps .sfx-vehicle-action { border-color: #cd1730; background: #cd1730; color: #fff; }
.sfx-vehicle-steps .sfx-vehicle-action:hover { background: #a61127; border-color: #a61127; }
.sfx-vehicle-steps .sfx-vehicle-clear { border-color: transparent; background: transparent; color: #535b66; text-decoration: underline; }
.sfx-vehicle-steps [hidden] { display: none; }
.sfx-vehicle-steps button:focus-visible, .sfx-picker-card :focus-visible { outline: 3px solid #cd1730; outline-offset: 3px; }
html.sfx-picker-open, body.sfx-picker-open { overflow: hidden; }
#parts-finder.sfx-vehicle-modal { position: fixed; inset: 0; z-index: 10010; padding: 40px 20px; overflow-y: auto; overscroll-behavior: contain; background: #101318b8; color: #191c22; }
#parts-finder.sfx-vehicle-modal[hidden] { display: none; }
.sfx-picker-card { position: relative; width: 100%; max-width: 800px; margin: 3vh auto; padding: 36px; border-radius: 10px; background: #fff; box-shadow: 0 22px 80px #0004; }
.sfx-picker-card > h2 { margin: 6px 40px 14px 0; font: 800 clamp(26px, 3vw, 36px)/1.15 Montserrat, Arial, sans-serif; letter-spacing: -.035em; text-transform: none; }
#sfx-picker-help { max-width: 650px; margin: 0 0 24px; color: #535b66; line-height: 1.6; }
.sfx-picker-x { position: absolute; top: 20px; right: 20px; width: 44px; height: 44px; border: 1px solid #dce0e5; border-radius: 50%; background: #fff; color: #191c22; font-size: 26px; cursor: pointer; }
.sfx-picker-card .vehicle-picker__grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; }
.sfx-picker-card .pf-step { min-width: 0; padding: 0; border: 0; background: none; box-shadow: none; }
.sfx-picker-card .pf-step__heading { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; font-size: 13px; }
.sfx-picker-card .pf-step__index { width: 24px; height: 24px; border-radius: 4px; background: #f3f4f6; color: #cd1730; font-family: Karla, Arial, sans-serif; }
.sfx-picker-card select { width: 100%; min-width: 0; min-height: 48px; border: 1px solid #bfc4cc; border-radius: 5px; padding: 10px; background: #fff; color: #191c22; font-size: 16px; }
.sfx-picker-card .vehicle-filter-state { margin: 20px 0 12px; padding: 0; border: 0; background: none; }
.sfx-picker-card .vehicle-filter-state label, .sfx-filter-toggle { display: flex; align-items: center; gap: 10px; color: #191c22; font-size: 14px; line-height: 1.5; cursor: pointer; }
.sfx-picker-card input[type=checkbox] { flex: 0 0 18px; width: 18px; height: 18px; accent-color: #cd1730; }
.sfx-picker-card .pf-selection-summary { margin: 20px 0; border-left: 3px solid #cd1730; border-radius: 0; padding: 10px 14px; background: #f3f4f6; color: #535b66; font-size: 13px; }
.sfx-picker-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.sfx-picker-actions .button { min-height: 46px; padding: 12px 16px; }
.sfx-picker-note { margin: 20px 0 0; color: #535b66; font-size: 12px; line-height: 1.6; }
.vehicle-action-status { color: #a61127; font-size: 13px; }
.vehicle-action-status:empty { display: none; }
.vehicle-refinements { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.vehicle-refinements .button { min-height: 44px; padding: 8px 12px; font-size: 13px; }
.vehicle-filter-note { display: block; margin: 8px 0; color: #535b66; font-size: 12px; overflow-wrap: anywhere; }
@media (max-width: 1100px) {
    .sfx-vehicle-global { align-items: flex-start; flex-direction: column; gap: 14px; }
    .sfx-vehicle-steps { flex-wrap: wrap; }
}
@media (max-width: 720px) {
    .sfx-vehicle-global { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 12px; padding: 15px 0; }
    .sfx-vehicle-global strong { font-size: 14px; }
    .sfx-vehicle-global small { font-size: 11px; }
    .sfx-vehicle-steps { flex-direction: column; gap: 4px; }
    .sfx-vehicle-steps [data-sfx-vehicle-step] { display: none; }
    .sfx-vehicle-steps .sfx-vehicle-action { padding: 10px; font-size: 12px; }
    #parts-finder.sfx-vehicle-modal { padding: 0; background: #fff; }
    .sfx-picker-card { max-width: none; min-height: 100dvh; margin: 0; padding: 28px 22px; border-radius: 0; box-shadow: none; }
    .sfx-picker-x { top: 18px; right: 12px; }
    .sfx-picker-card .vehicle-picker__grid { grid-template-columns: minmax(0,1fr); gap: 16px; }
    .sfx-picker-actions { display: grid; grid-template-columns: 1fr 1fr; }
    .sfx-picker-actions #partsfinderGo { grid-column: 1 / -1; }
    .sfx-picker-actions .button { padding: 12px 8px; font-size: 12px; }
    .subnav.is-mobile-open .subnav__inner { display: flex; flex-direction: column; align-items: stretch; }
    .subnav.is-mobile-open .header-shortcuts--desktop { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 10px; padding: 12px 20px; }
    .subnav.is-mobile-open .header-shortcuts--desktop .shortcut { display: inline-flex; min-height: 44px; padding: 8px 0; }
}

/* Keep actions at their natural height when the active-vehicle note wraps. */
.search-facet-sidebar__actions { align-items: start; }
.search-facet-sidebar__actions > .button { align-self: start; }
.sfx-site-footer { clear: both; margin-top: 48px; padding: 45px 0 20px; border-top: 4px solid #cd1730; background: #17191d; color: #d9dadc; }
.sfx-site-footer p { font-size: 14px; line-height: 1.7; }
.sfx-footer-intro { display: flex; justify-content: space-between; align-items: center; gap: 28px; margin-bottom: 36px; padding-bottom: 30px; border-bottom: 1px solid #ffffff25; }
.sfx-footer-intro a { max-width: 100%; }
.sfx-footer-intro img { display: block; width: 280px; max-width: 100%; height: auto; }
.sfx-footer-intro > p { margin: 0; color: #fff; font-size: 22px; font-weight: 700; }
.sfx-footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1.2fr 1fr; gap: 40px; }
.sfx-footer-grid > * { min-width: 0; }
.sfx-site-footer h2 { margin: 0 0 20px; color: #fff; font-size: 16px; font-weight: 700; letter-spacing: 0; text-transform: none; }
.sfx-footer-grid a { display: block; width: fit-content; max-width: 100%; padding: 6px 0; color: #d9dadc; font-size: 14px; line-height: 1.5; text-decoration: none; overflow-wrap: anywhere; }
.sfx-footer-grid a:hover { color: #fff; text-decoration: underline; text-underline-offset: 3px; }
.sfx-site-footer a:focus-visible { outline-color: #fff; }
.sfx-footer-grid .sfx-help-mobile { display: none; }
.sfx-footer-bottom { margin-top: 34px; padding-top: 20px; border-top: 1px solid #ffffff25; }
.sfx-footer-bottom p { margin: 0; color: #babcc0; font-size: 12px; }
/* Imported help pages use the local type system instead of the legacy inline CSS. */
.information-page .build-page__intro { max-width: 900px; }
.information-page .build-page__content { max-width: 900px; line-height: 1.75; overflow-wrap: anywhere; }
.information-page .build-page__content h2 { margin: 32px 0 14px; font-size: 23px; }
.information-page .build-page__content h3 { margin: 24px 0 12px; font-size: 19px; }
.information-page .build-page__content ul, .information-page .build-page__content ol { padding-left: 24px; }
.information-page .build-page__content li { margin: 6px 0; }
.information-page .build-page__content a { color: #a81025; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 1100px) { .sfx-footer-grid { gap: 26px; } }
@media (max-width: 900px) { .sfx-footer-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; } }
@media (max-width: 720px) {
    .sfx-site-footer { margin-top: 32px; padding-top: 30px; }
    .sfx-footer-intro { flex-direction: column; align-items: flex-start; gap: 16px; margin-bottom: 28px; padding-bottom: 24px; }
    .sfx-footer-intro img { width: 250px; }
    .sfx-footer-intro > p { font-size: 20px; }
    .sfx-footer-grid { gap: 28px 20px; }
    .sfx-footer-grid > section { grid-column: 1 / -1; }
    .sfx-site-footer h2 { margin-bottom: 12px; font-size: 15px; }
    .sfx-footer-grid a { display: flex; align-items: center; min-height: 44px; padding: 8px 0; font-size: 13px; }
    .sfx-footer-grid .sfx-help-mobile { display: flex; }
    .sfx-footer-grid .sfx-help-desktop { display: none; }
    .sfx-footer-bottom { margin-top: 26px; }
    .information-page .build-page__content h2 { font-size: 20px; }
}
