/* BCN Motorsport mobile UI override: custom header, quick nav, overlays */

:root {
    --bcn-mobile-bg: #070c14;
    --bcn-mobile-surface: #ffffff;
    --bcn-mobile-text: #0f172a;
    --bcn-mobile-muted: #5b6474;
    --bcn-mobile-accent: #cf1017;
    --bcn-mobile-accent-dark: #9d1016;
    --bcn-mobile-border: #d8dfea;
    --bcn-mobile-overlay: rgba(5, 10, 19, 0.7);
    --bcn-mobile-shadow: 0 20px 34px rgba(6, 10, 18, 0.24);
    --bcn-mobile-topbar-h: 72px;
    --bcn-fs-xs: 12px;
    --bcn-fs-sm: 13px;
    --bcn-fs-md: 14px;
    --bcn-fs-base: 16px;
    --bcn-fs-lg: 18px;
    --bcn-fs-xl: 22px;
    --bcn-lh-tight: 1.2;
    --bcn-lh-base: 1.45;
}

.bcn-mobile-topbar,
.bcn-mobile-bottom-nav,
.bcn-mobile-overlay {
    display: none;
}

.bcn-mobile-overlay[hidden] {
    display: none !important;
}

body.bcn-mobile-overlay-open {
    overflow: hidden;
}

html.bcn-mobile-overlay-open,
body.bcn-mobile-overlay-open {
    background: #fff !important;
}

/* Hide the repeated Avada hero/banner block used across internal pages. */
.fusion-fullwidth.fullwidth-box.has-pattern-background.has-mask-background[style*="hero-3-scaled-1.jpg"] {
    display: none !important;
}

@media (max-width: 1024px) {
    body.bcn-mobile-ux-enabled .fusion-header-wrapper,
    body.bcn-mobile-ux-enabled .fusion-header,
    body.bcn-mobile-ux-enabled .fusion-tb-header,
    body.bcn-mobile-ux-enabled .fusion-tb-header-sticky,
    body.bcn-mobile-ux-enabled .fusion-mobile-menu-search,
    body.bcn-mobile-ux-enabled .fusion-secondary-header,
    body.bcn-mobile-ux-enabled .fusion-top-header,
    body.bcn-mobile-ux-enabled #side-header {
        display: none !important;
    }

    body.bcn-mobile-ux-enabled #wrapper {
        padding-top: var(--bcn-mobile-topbar-h);
    }

    body.admin-bar.bcn-mobile-ux-enabled #wrapper {
        padding-top: calc(var(--bcn-mobile-topbar-h) + 46px);
    }

    body.bcn-mobile-ux-enabled {
        padding-bottom: calc(88px + env(safe-area-inset-bottom, 0px));
        font-size: var(--bcn-fs-base);
        line-height: var(--bcn-lh-base);
        color: var(--bcn-mobile-text);
        -webkit-text-size-adjust: 100%;
        text-size-adjust: 100%;
    }

    body.bcn-mobile-ux-enabled input,
    body.bcn-mobile-ux-enabled button,
    body.bcn-mobile-ux-enabled select,
    body.bcn-mobile-ux-enabled textarea {
        font-size: var(--bcn-fs-base);
        line-height: var(--bcn-lh-base);
    }

    .bcn-mobile-topbar {
        position: fixed;
        top: 0;
        left: 0;
        right: 0;
        z-index: 10020;
        display: block;
        background: linear-gradient(180deg, var(--awb-color6) 0%,var(--awb-color7) 100%);
        border-bottom: 1px solid rgba(255, 255, 255, 0.12);
        box-shadow: 0 10px 24px rgba(2, 5, 10, 0.35);
    }

    body.admin-bar .bcn-mobile-topbar {
        top: 46px;
    }

    .bcn-mobile-topbar__inner {
        height: var(--bcn-mobile-topbar-h);
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 0 12px;
    }

    .bcn-mobile-topbar__brand {
        min-width: 0;
        max-width: calc(100% - 52px);
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .bcn-mobile-topbar__brand .custom-logo-link,
    .bcn-mobile-topbar__brand .bcn-mobile-topbar__brand-link {
        display: inline-flex;
        align-items: center;
        text-decoration: none;
        color: #fff;
        font-size: 1.06rem;
        font-weight: 800;
        letter-spacing: 0.02em;
        text-transform: uppercase;
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bcn-mobile-topbar__brand img {
        max-height: 34px;
        width: auto;
    }

    .bcn-mobile-topbar__brand-phrase {
        display: block;
        color: #d8e4f6;
        font-size: var(--bcn-fs-sm);
        line-height: var(--bcn-lh-tight);
        font-weight: 700;
        letter-spacing: 0.02em;
        text-transform: none;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .bcn-mobile-topbar__actions {
        display: flex;
        align-items: center;
        gap: 8px;
    }

    .bcn-mobile-topbar__action {
        position: relative;
        width: 40px;
        height: 40px;
        border: 1px solid rgba(255, 255, 255, 0.2);
        border-radius: 11px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: rgba(255, 255, 255, 0.08);
        color: #fff;
        text-decoration: none;
        cursor: pointer;
    }

    .bcn-mobile-topbar__action.is-active,
    .bcn-mobile-topbar__action:focus-visible {
        outline: none;
        border-color: rgba(255, 255, 255, 0.48);
        background: rgba(255, 255, 255, 0.18);
    }

    .bcn-mobile-topbar__action svg {
        width: 20px;
        height: 20px;
        fill: currentColor;
    }

    .bcn-mobile-topbar__badge {
        position: absolute;
        top: -5px;
        right: -6px;
        min-width: 17px;
        height: 17px;
        border-radius: 999px;
        padding: 0 4px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 10px;
        line-height: 1;
        color: #fff;
        font-weight: 700;
        background: #d50018;
        border: 1px solid #fff;
        box-shadow: 0 2px 8px rgba(213, 0, 24, 0.35);
    }

    .bcn-mobile-topbar__badge.is-empty {
        display: none;
    }

    .bcn-mobile-bottom-nav {
        position: fixed;
        left: 50%;
        bottom: 12px;
        transform: translateX(-50%);
        z-index: 10010;
        display: flex;
        align-items: stretch;
        justify-content: space-between;
        width: min(96vw, 690px);
        border-radius: 20px;
        border: 1px solid rgba(255, 255, 255, 0.14);
        background: var(--awb-color8);
        box-shadow: 0 18px 32px rgba(0, 0, 0, 0.4);
        backdrop-filter: blur(8px);
        padding: 7px;
        transition: transform 0.28s ease, opacity 0.28s ease;
    }

    .bcn-mobile-bottom-nav.is-hidden {
        transform: translate(-50%, calc(112% + env(safe-area-inset-bottom, 0px)));
        opacity: 0;
        pointer-events: none;
    }

    .bcn-mobile-bottom-nav__item {
        position: relative;
        flex: 1;
        min-height: 54px;
        border: 0;
        border-radius: 14px;
        padding: 5px 3px;
        background: transparent;
        color: #f6f8ff;
        text-decoration: none;
        cursor: pointer;
        display: inline-flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 3px;
    }

    .bcn-mobile-bottom-nav__item.is-active,
    .bcn-mobile-bottom-nav__item:focus-visible {
        outline: none;
        background: rgba(255, 255, 255, 0.11);
    }

    .bcn-mobile-bottom-nav__icon {
        width: 20px;
        height: 20px;
        display: inline-flex;
    }

    .bcn-mobile-bottom-nav__icon svg {
        width: 100%;
        height: 100%;
        fill: currentColor;
    }

    .bcn-mobile-bottom-nav__label {
        font-size: var(--bcn-fs-sm);
        line-height: var(--bcn-lh-tight);
        font-weight: 700;
        letter-spacing: 0.02em;
    }

    .bcn-mobile-bottom-nav__badge {
        position: absolute;
        top: 3px;
        right: calc(50% - 20px);
        min-width: 17px;
        height: 17px;
        border-radius: 999px;
        padding: 0 4px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 10px;
        line-height: 1;
        color: #fff;
        font-weight: 700;
        background: #d50018;
        border: 1px solid #fff;
        box-shadow: 0 2px 8px rgba(213, 0, 24, 0.35);
    }

    .bcn-mobile-bottom-nav__badge.is-empty {
        display: inline-flex;
    }

    .bcn-mobile-overlay {
        position: fixed;
        inset: 0;
        z-index: 10040;
        display: grid;
        place-items: stretch;
        background: #fff;
    }

    .bcn-mobile-overlay__backdrop {
        position: absolute;
        inset: 0;
        background: #fff;
    }

    .bcn-mobile-overlay__panel {
        position: relative;
        margin-top: 0;
        margin-left: auto;
        margin-right: auto;
        width: min(100%, 760px);
        min-height: 100dvh;
        max-height: 100dvh;
        overflow: auto;
        background: var(--bcn-mobile-surface);
        color: var(--bcn-mobile-text);
        border-radius: 0;
        padding: calc(14px + env(safe-area-inset-top, 0px)) 16px calc(22px + env(safe-area-inset-bottom, 0px));
        box-shadow: var(--bcn-mobile-shadow);
    }

    .bcn-mobile-overlay__panel--menu {
        background: #fff;
    }

    .bcn-mobile-overlay__head {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        margin-bottom: 14px;
    }

    .bcn-mobile-overlay__head h2 {
        margin: 0;
        color: #121a2b;
        font-size: clamp(1.3rem, 4.4vw, 1.6rem);
        line-height: var(--bcn-lh-tight);
    }

    .bcn-mobile-overlay__close {
        width: 40px;
        height: 40px;
        border-radius: 11px;
        border: 1px solid var(--bcn-mobile-border);
        background: #fff;
        color: #111b2d;
        font-size: 24px;
        line-height: 1;
        cursor: pointer;
    }

    .bcn-mobile-menu-profile {
        border: 1px solid #dce5f1;
        border-radius: 14px;
        background: #fff;
        padding: 12px;
        margin-bottom: 12px;
    }

    .bcn-mobile-menu-profile__title {
        display: block;
        margin: 0;
        color: #121a2b;
        font-size: var(--bcn-fs-base);
        line-height: var(--bcn-lh-base);
        font-weight: 800;
    }

    .bcn-mobile-menu-profile__copy {
        margin: 5px 0 0;
        color: #5b6474;
        font-size: var(--bcn-fs-md);
        line-height: var(--bcn-lh-base);
    }

    .bcn-mobile-search-form {
        display: grid;
        gap: 12px;
    }

    .bcn-mobile-live-search-wrap {
        margin-top: 4px;
    }

    .bcn-mobile-live-search-wrap .bcn-live-search-container {
        max-width: 100%;
        margin: 0;
        font-family: inherit;
    }

    .bcn-mobile-live-search-wrap .bcn-search-input {
        min-height: 50px;
        border-radius: 12px;
        border: 1px solid var(--bcn-mobile-border);
        background: #fff !important;
        color: var(--bcn-mobile-text) !important;
        padding: 0 42px !important;
    }

    .bcn-mobile-live-search-wrap .bcn-search-input::placeholder {
        color: var(--bcn-mobile-muted) !important;
    }

    .bcn-mobile-live-search-wrap .bcn-search-icon,
    .bcn-mobile-live-search-wrap .bcn-search-spinner {
        color: var(--bcn-mobile-muted) !important;
    }

    .bcn-mobile-live-search-wrap .bcn-search-clear {
        background: transparent !important;
        color: var(--bcn-mobile-muted) !important;
    }

    .bcn-mobile-live-search-wrap .bcn-search-results {
        position: static !important;
        top: auto;
        right: auto;
        bottom: auto;
        left: auto;
        margin-top: 10px;
        background: #fff !important;
        border: none!important;
        border-radius: 12px;
        box-shadow: none;
        max-height: min(58dvh, 520px);
    }

    .bcn-mobile-live-search-wrap .bcn-search-results-list {
        background: #fff !important;
        max-height: min(47dvh, 420px);
    }

    .bcn-mobile-live-search-wrap .bcn-search-result-item {
        background: #fff !important;
        border-bottom: 1px solid #e7edf5 !important;
    }

    .bcn-mobile-live-search-wrap .bcn-search-result-item:hover,
    .bcn-mobile-live-search-wrap .bcn-search-result-item.bcn-selected {
        background: #f4f8fc !important;
    }

    .bcn-mobile-live-search-wrap .bcn-result-link {
        color: var(--bcn-mobile-text) !important;
        gap: 10px;
    }

    .bcn-mobile-live-search-wrap .bcn-result-title,
    .bcn-mobile-live-search-wrap .bcn-result-price {
        color: var(--bcn-mobile-text) !important;
    }

    .bcn-mobile-live-search-wrap .bcn-result-sku,
    .bcn-mobile-live-search-wrap .bcn-search-meta,
    .bcn-mobile-live-search-wrap .bcn-search-no-results,
    .bcn-mobile-live-search-wrap .bcn-search-error {
        color: var(--bcn-mobile-muted) !important;
    }

    .bcn-mobile-live-search-wrap .bcn-matched-in {
        color: #1f4f99 !important;
    }

    .bcn-mobile-live-search-wrap .bcn-search-view-all {
        background: #f8fbff !important;
        border-top: 1px solid #e7edf5 !important;
    }

    .bcn-mobile-live-search-wrap .bcn-search-view-all a {
        color: #1f4f99 !important;
    }

    .bcn-mobile-live-search-wrap .bcn-search-meta {
        background: #f8fbff !important;
        border-top: 1px solid #e7edf5 !important;
    }

    .bcn-mobile-live-search-wrap .bcn-result-title mark,
    .bcn-mobile-live-search-wrap .bcn-result-sku mark {
        background: #fff3bf !important;
        color: var(--bcn-mobile-text) !important;
    }

    .bcn-mobile-live-search-wrap .bcn-result-image {
        width: 56px;
        height: 56px;
    }

    .bcn-mobile-search-form label {
        margin: 0;
        color: var(--bcn-mobile-muted);
        font-size: var(--bcn-fs-md);
        font-weight: 700;
    }

    .bcn-mobile-search-form input[type="search"] {
        width: 100%;
        min-height: 50px;
        border-radius: 12px;
        border: 1px solid var(--bcn-mobile-border);
        background: #fff;
        color: var(--bcn-mobile-text);
        padding: 0 14px;
        font-size: 16px;
    }

    .bcn-mobile-search-form button,
    .bcn-mobile-overlay__primary-link {
        min-height: 48px;
        border-radius: 12px;
        border: 1px solid var(--bcn-mobile-accent-dark);
        background: var(--bcn-mobile-accent);
        color: #fff;
        font-weight: 700;
        text-decoration: none;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 14px;
    }

    .bcn-mobile-catalog-list {
        margin: 0;
        padding: 0;
        list-style: none;
        display: grid;
        gap: 10px;
    }

    .bcn-mobile-catalog-list li a {
        min-height: 50px;
        border-radius: 12px;
        border: 1px solid var(--bcn-mobile-border);
        background: #fff;
        color: var(--bcn-mobile-text);
        text-decoration: none;
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        padding: 10px 12px;
        font-weight: 700;
    }

    .bcn-mobile-catalog-list__count {
        min-width: 28px;
        min-height: 28px;
        border-radius: 999px;
        background: #edf1f8;
        color: #334155;
        font-size: var(--bcn-fs-xs);
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .bcn-mobile-overlay__primary-link {
        margin-top: 14px;
        width: 100%;
    }

    .bcn-mobile-account-support {
        margin-top: 12px;
        padding: 12px;
        border: 1px solid var(--bcn-mobile-border);
        border-radius: 12px;
        background: #fff;
        color: var(--bcn-mobile-text);
        display: grid;
        gap: 8px;
    }

    .bcn-mobile-account-support__hello {
        margin: 0;
        font-size: var(--bcn-fs-lg);
        line-height: var(--bcn-lh-tight);
        color: #0f172a;
        font-weight: 800;
    }

    .bcn-mobile-account-support p {
        margin: 0;
        font-size: var(--bcn-fs-sm);
        line-height: var(--bcn-lh-copy);
        color: #334155;
        text-wrap: pretty;
    }

    .bcn-mobile-account-support__location {
        padding-top: 8px;
        border-top: 1px dashed var(--bcn-mobile-border);
        display: grid;
        gap: 6px;
    }

    .bcn-mobile-account-support__location h4 {
        margin: 0;
        font-size: var(--bcn-fs-md);
        line-height: var(--bcn-lh-tight);
        color: #0f172a;
        font-weight: 800;
    }

    .bcn-mobile-account-support a {
        color: #0f4dbf;
        text-decoration: none;
        font-weight: 700;
    }

    .bcn-mobile-account-support a:hover,
    .bcn-mobile-account-support a:focus-visible {
        text-decoration: underline;
    }

    .bcn-mobile-account-links,
    .bcn-mobile-menu-extra-links {
        display: grid;
        gap: 10px;
        margin-top: 12px;
    }

    .bcn-mobile-account-links a,
    .bcn-mobile-menu-extra-links a {
        min-height: 46px;
        border-radius: 12px;
        border: 1px solid var(--bcn-mobile-border);
        background: #fff;
        color: var(--bcn-mobile-text);
        text-decoration: none;
        font-weight: 700;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .bcn-mobile-menu-extra-links__cart {
        justify-content: space-between !important;
        padding: 0 12px;
    }

    .bcn-mobile-menu-cart-badge {
        min-width: 17px;
        height: 17px;
        border-radius: 999px;
        padding: 0 4px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        font-size: 10px;
        line-height: 1;
        color: #fff;
        font-weight: 700;
        background: #d50018;
        border: 1px solid #fff;
        box-shadow: 0 2px 8px rgba(213, 0, 24, 0.35);
    }

    .bcn-mobile-menu-cart-badge.is-empty {
        display: inline-flex;
    }

    .bcn-mobile-overlay__panel--cart {
        padding-top: 0;
        padding-left: 0;
        padding-right: 0;
        padding-bottom: 0;
        background: var(--bcn-mobile-surface);
    }

    .bcn-mobile-cart-head {
        position: sticky;
        top: 0;
        z-index: 2;
        min-height: 56px;
        padding: 10px 12px;
        border-bottom: 1px solid var(--bcn-mobile-border);
        background: #fff;
        display: grid;
        grid-template-columns: 1fr auto auto;
        align-items: center;
        gap: 10px;
    }

    .bcn-mobile-cart-head h2 {
        margin: 0;
        color: #121a2b;
        font-size: clamp(1.2rem, 4.8vw, 1.5rem);
        line-height: var(--bcn-lh-tight);
        text-transform: none;
        letter-spacing: 0;
    }

    .bcn-mobile-cart-head__left {
        min-width: 0;
    }

    .bcn-mobile-cart-clear {
        color: var(--bcn-mobile-muted);
        font-size: var(--bcn-fs-md);
        font-weight: 700;
        text-decoration: none;
    }

    .bcn-mobile-cart-body {
        min-height: calc(100dvh - 220px);
        padding: 14px 12px 14px;
        overflow: auto;
        background: #f7f9fc;
    }

    .bcn-mobile-cart-items {
        margin: 0;
        padding: 0;
        list-style: none;
        display: grid;
        gap: 10px;
    }

    .bcn-mobile-cart-item {
        position: relative;
        border: 1px solid var(--bcn-mobile-border);
        border-radius: 12px;
        background: #fff;
        padding: 10px;
        display: grid;
        grid-template-columns: 42px minmax(0, 1fr);
        gap: 10px;
        align-items: start;
    }

    .bcn-mobile-cart-item__thumb {
        width: 42px;
        height: 42px;
        border-radius: 8px;
        overflow: hidden;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #f8fbff;
        border: 1px solid var(--bcn-mobile-border);
    }

    .bcn-mobile-cart-item__thumb img {
        width: 100%;
        height: 100%;
        object-fit: contain;
    }

    .bcn-mobile-cart-item__content {
        min-width: 0;
    }

    .bcn-mobile-cart-item__title {
        display: block;
        margin: 0;
        color: var(--bcn-mobile-text);
        text-decoration: none;
        font-size: var(--bcn-fs-base);
        line-height: var(--bcn-lh-tight);
        font-weight: 700;
        text-transform: none;
    }

    .bcn-mobile-cart-item__meta-grid {
        margin-top: 8px;
        display: grid;
        grid-template-columns: auto 1fr 1fr;
        gap: 8px;
        align-items: end;
    }

    .bcn-mobile-cart-item__qty {
        min-width: 76px;
        min-height: 34px;
        border: 1px solid var(--bcn-mobile-border);
        border-radius: 8px;
        background: #fff;
        font-size: var(--bcn-fs-base);
        display: inline-flex;
        align-items: center;
        justify-content: space-between;
        padding: 0 4px;
    }

    .bcn-mobile-cart-item__qty [data-bcn-cart-qty-value] {
        font-size: var(--bcn-fs-md);
        color: #0f172a;
        font-weight: 700;
        min-width: 18px;
        text-align: center;
    }

    .bcn-mobile-cart-item__qty-btn {
        width: 24px;
        height: 24px;
        border: 0;
        border-radius: 6px;
        background: #f1f5f9;
        color: #0f172a;
        font-size: 16px;
        line-height: 1;
        font-weight: 700;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        cursor: pointer;
    }

    .bcn-mobile-cart-item__qty-btn.is-loading,
    .bcn-mobile-cart-item__qty-btn:disabled {
        opacity: 0.55;
        cursor: wait;
    }

    .bcn-mobile-cart-item__qty-btn:focus-visible {
        outline: 2px solid #1d4ed8;
        outline-offset: 1px;
    }

    .bcn-mobile-cart-item__price-col {
        display: grid;
        gap: 2px;
    }

    .bcn-mobile-cart-item__price-col span {
        color: #6a6a6a;
        font-size: var(--bcn-fs-sm);
        line-height: var(--bcn-lh-tight);
    }

    .bcn-mobile-cart-item__price-col strong,
    .bcn-mobile-cart-item__price-col .woocommerce-Price-amount {
        color: var(--bcn-mobile-text);
        font-size: var(--bcn-fs-base);
        line-height: var(--bcn-lh-tight);
        font-weight: 800;
    }

    .bcn-mobile-cart-item__remove {
        position: absolute;
        top: 6px;
        right: 6px;
        width: 24px;
        height: 24px;
        border-radius: 999px;
        border: 1px solid var(--bcn-mobile-border);
        color: #7c8798;
        text-decoration: none;
        font-size: 18px;
        line-height: 20px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        background: #fff;
    }

    .bcn-mobile-cart-empty-message {
        margin: 0;
        border: 1px solid #ddd;
        border-radius: 10px;
        background: #fff;
        color: #596273;
        font-size: var(--bcn-fs-md);
        line-height: var(--bcn-lh-base);
        padding: 14px;
    }

    .bcn-mobile-cart-footer {
        position: sticky;
        bottom: 0;
        z-index: 2;
        border-top: 1px solid var(--bcn-mobile-border);
        background: #fff;
        padding: 12px;
        display: grid;
        grid-template-columns: 1fr auto;
        column-gap: 14px;
        row-gap: 6px;
        align-items: center;
    }

    .bcn-mobile-cart-footer__line {
        grid-column: 1;
        display: flex;
        align-items: baseline;
        gap: 6px;
        color: var(--bcn-mobile-muted);
        font-size: var(--bcn-fs-md);
    }

    .bcn-mobile-cart-footer__line strong,
    .bcn-mobile-cart-footer__line .woocommerce-Price-amount {
        color: var(--bcn-mobile-text);
        font-weight: 800;
    }

    .bcn-mobile-cart-footer__line--total {
        font-size: clamp(1.5rem, 7vw, 2rem);
        line-height: var(--bcn-lh-tight);
        font-weight: 800;
        color: var(--bcn-mobile-text);
    }

    .bcn-mobile-cart-footer__cta {
        grid-column: 2;
        grid-row: 1 / span 2;
        min-height: 42px;
        border-radius: 12px;
        border: 1px solid var(--bcn-mobile-accent-dark);
        background: var(--bcn-mobile-accent);
        color: #fff;
        text-decoration: none;
        font-size: var(--bcn-fs-base);
        font-weight: 800;
        letter-spacing: 0.02em;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0 18px;
        text-transform: none;
    }
    .bcn-mobile-cart-footer__cta:hover{
        color: #000;
    }

    .bcn-mobile-menu-nav {
        margin-top: 2px;
    }

    .bcn-mobile-menu-list,
    .bcn-mobile-menu-list .sub-menu {
        margin: 0;
        padding: 0;
        list-style: none;
    }

    .bcn-mobile-menu-list > li {
        margin-bottom: 8px;
    }

    .bcn-mobile-menu-list a {
        display: block;
        border: 1px solid var(--bcn-mobile-border);
        border-radius: 12px;
        padding: 12px 14px;
        background: #fff;
        color: #111c2f;
        text-decoration: none;
        font-weight: 700;
    }

    .bcn-mobile-menu-list .sub-menu {
        margin-top: 8px;
        margin-left: 10px;
        display: grid;
        gap: 8px;
    }

    .bcn-mobile-menu-list .sub-menu a {
        background: #f8faff;
        font-weight: 600;
    }

    body.single-product,
    body.bcn-single-product-page {
        background: #eceff3;
    }

    body.single-product #main,
    body.bcn-single-product-page #main {
        background: #eceff3;
        padding-top: 8px;
    }

    body.single-product .woocommerce-breadcrumb {
        margin-bottom: 10px;
        color: #6b7280;
        font-size: var(--bcn-fs-sm);
        font-weight: 700;
        letter-spacing: 0.04em;
        text-transform: uppercase;
    }

    body.single-product .product .product_title {
        margin: 6px 0 10px;
        color: #1f2937;
        font-size: clamp(1.55rem, 7vw, 2.15rem);
        line-height: 1.14;
        text-transform: uppercase;
        letter-spacing: 0.01em;
    }

    body.single-product .product .woocommerce-product-rating {
        margin-left: 0;
        margin-bottom: 8px;
    }

    body.single-product .avada-single-product-gallery-wrapper {
        padding: 12px;
        margin-bottom: 12px;
        border: 1px solid var(--bcn-mobile-border);
        border-radius: 4px;
        background: #fff;
    }

    body.single-product .avada-product-gallery .flex-control-thumbs {
        display: flex;
        flex-wrap: wrap;
        gap: 8px;
        margin-top: 10px;
    }

    body.single-product .avada-product-gallery .flex-control-thumbs li {
        width: 58px !important;
        padding: 0 !important;
        float: none !important;
    }

    body.single-product .avada-product-gallery .flex-control-thumbs img {
        border: 1px solid var(--bcn-mobile-border);
        border-radius: 2px;
    }

    body.single-product .avada-product-gallery .woocommerce-product-gallery__image img {
        object-fit: contain;
    }

    #main .product .avada-product-images-global {
        margin-right: 0 !important;
        width: 100% !important;
    }

    #main .product .summary.entry-summary,
    #wrapper #main .product .summary.entry-summary {
        margin-left: 0 !important;
        width: 100% !important;
    }

    body.single-product .product .entry-summary .summary-container > div,
    body.single-product .product .entry-summary .product_meta {
        margin: 0 0 10px;
        padding: 12px 14px;
        border: 1px solid var(--bcn-mobile-border);
        border-radius: 4px;
        background: #fff;
    }

    body.single-product .product .entry-summary .summary-container > div:last-child {
        margin-bottom: 0;
    }

    body.single-product .product .entry-summary .price {
        margin: 0;
        display: block;
        color: #ff7a00;
        line-height: var(--bcn-lh-tight);
        font-size: clamp(1.45rem, 6.2vw, 2rem);
        font-weight: 800;
    }

    body.single-product .product .entry-summary .price .amount,
    body.single-product .product .entry-summary .price ins .amount {
        color: #ff7a00;
    }

    body.single-product .product .entry-summary .price del .amount,
    body.single-product .product .entry-summary .price .from {
        color: #778091;
        font-size: 0.9rem;
    }

    body.single-product .entry-summary .summary-container .avada-availability,
    body.single-product .entry-summary .summary-container > .stock {
        display: block;
        margin: 0;
    }

    body.single-product .entry-summary .cart {
        margin: 0;
    }

    body.single-product .fusion-body .quantity,
    body.single-product .fusion-body .quantity .qty {
        height: 44px;
        border-radius: 2px;
    }

    body.single-product .summary.entry-summary .single_add_to_cart_button,
    body.single-product .summary.entry-summary .button,
    body.single-product .summary.entry-summary button {
        min-height: 44px;
        border-radius: 3px;
        border-color: var(--bcn-mobile-accent-dark);
        background: var(--bcn-mobile-accent);
        color: #fff;
        font-weight: 800;
        letter-spacing: 0.02em;
    }

    body.single-product #wc-stripe-payment-request-wrapper,
    body.single-product #wc-stripe-payment-request-button,
    body.single-product #wc-stripe-payment-request-button iframe {
        width: 100% !important;
        max-width: none !important;
    }

    body.single-product #wc-stripe-payment-request-wrapper {
        margin-top: 8px;
    }

    .woo-tabs-horizontal .woocommerce-tabs > .tabs,
    .woocommerce-tabs > .tabs {
        width: 100% !important;
        float: none !important;
        margin-bottom: 10px;
    }

    .woo-tabs-horizontal .woocommerce-tabs > .tabs li {
        float: none;
    }

    .woocommerce-tabs .panel {
        margin-left: 0 !important;
        padding: 20px !important;
        border: 1px solid var(--bcn-mobile-border);
        border-radius: 4px;
        background: #fff;
    }

    body.single-product .woocommerce-tabs .panel > h2,
    body.single-product .woocommerce-tabs .panel > h3 {
        margin-top: 0;
        margin-bottom: 14px;
        color: #1f2937;
        font-size: clamp(1.05rem, 4.6vw, 1.25rem);
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.04em;
    }

    .single-product .related.products ul.products,
    .single-product .upsells.products ul.products {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 12px;
        margin: 0;
    }

    .avada-myaccount-user, .woocommerce-MyAccount-navigation{
    display: none!important;
    }
}

@media (min-width: 783px) and (max-width: 1024px) {
    body.admin-bar .bcn-mobile-topbar {
        top: 32px;
    }

    body.admin-bar.bcn-mobile-ux-enabled #wrapper {
        padding-top: calc(var(--bcn-mobile-topbar-h) + 32px);
    }
}

@media (max-width: 640px) {
    :root {
        --bcn-mobile-topbar-h: 68px;
    }

    .bcn-mobile-topbar__inner {
        padding: 0 10px;
    }

    .bcn-mobile-topbar__brand {
        max-width: 52%;
    }

    .bcn-mobile-topbar__action {
        width: 40px;
        height: 40px;
    }

    .bcn-mobile-bottom-nav {
        width: calc(100vw - 12px);
        left: 6px;
        bottom: 6px;
        transform: none;
        border-radius: 16px;
    }

    .bcn-mobile-bottom-nav.is-hidden {
        transform: translateY(calc(112% + env(safe-area-inset-bottom, 0px)));
    }

    .bcn-mobile-bottom-nav__label {
        font-size: var(--bcn-fs-xs);
    }

    .single-product .related.products ul.products,
    .single-product .upsells.products ul.products {
        grid-template-columns: 1fr;
    }

    body.single-product .product .product_title {
        font-size: clamp(1.4rem, 8.4vw, 1.95rem);
    }

    body.single-product .avada-single-product-gallery-wrapper {
        padding: 10px;
        margin-bottom: 10px;
    }

    body.single-product .product .entry-summary .summary-container > div,
    body.single-product .product .entry-summary .product_meta,
    body.single-product .woocommerce-tabs .panel {
        padding: 10px 10px;
        margin-bottom: 10px;
    }

    body.single-product .product-type-simple .summary.entry-summary form.cart {
        display: grid;
        grid-template-columns: 92px 1fr;
        gap: 8px;
        align-items: stretch;
    }

    body.single-product .product-type-simple .summary.entry-summary form.cart .quantity,
    body.single-product .product-type-simple .summary.entry-summary form.cart .single_add_to_cart_button {
        width: 100%;
        float: none;
        margin: 0;
    }

    body.single-product .woocommerce-tabs > .tabs {
        display: none !important;
    }

    body.single-product .woocommerce-tabs .panel {
        margin-left: 0 !important;
    }

    .single-product table.variations td.label,
    .single-product table.variations td.value {
        width: 100%;
        display: block;
    }

    .single-product .single_variation_wrap .quantity,
    .single-product .single_variation_wrap .single_add_to_cart_button,
    .single-product .summary.entry-summary .cart .quantity,
    .single-product .summary.entry-summary .single_add_to_cart_button {
        width: 100%;
        float: none;
        margin: 0 0 12px;
    }

    .single-product .summary.entry-summary .single_add_to_cart_button,
    .single-product .summary.entry-summary .button,
    .single-product .summary.entry-summary button {
        min-height: 46px;
    }
}

@media (min-width: 1025px) {
    body.bcn-mobile-ux-enabled #wrapper {
        padding-top: 0;
    }

    body.bcn-mobile-ux-enabled {
        padding-bottom: 0;
    }
}
