/* Smartphone Italia — Apple-inspired header (20260704-ingrosso-show) */

/* ── Top offer bar — INGROSSO | Telefoni | Cellulari | Tablet | iPad ── */
.tvheader-offer-wrapper,
.tvcmsdesktop-top-header-wrapper .tvheader-offer-wrapper {
    background: var(--si-bg-alt, #f5f5f7) !important;
    border-bottom: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
}

.tvmobileheader-offer-wrapper,
#tvcms-mobile-view-header .tvmobileheader-offer-wrapper {
    background: var(--si-bg-alt, #f5f5f7) !important;
    border-bottom: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
    padding: 4px max(12px, env(safe-area-inset-left, 0)) 4px max(12px, env(safe-area-inset-right, 0));
}

.tvheader-nav-offer-text,
.tvheader-nav-offer-text p {
    color: var(--si-text-secondary, #6e6e73) !important;
    font-family: var(--si-font, -apple-system, BlinkMacSystemFont, system-ui, sans-serif);
    font-size: 0.75rem;
    font-weight: 500;
}

.tvheader-nav-offer-text i.material-icons {
    color: var(--si-text, #1d1d1f) !important;
    font-size: 16px;
}

.tvcmsdesktop-top-header-wrapper .tvcmsdesktop-top-header {
    background: var(--si-bg-alt, #f5f5f7) !important;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-bottom: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
    padding-top: 4px;
    padding-bottom: 4px;
}

#tvcms-mobile-view-header .tvcmsmobile-top-wrapper {
    display: block !important;
    visibility: visible !important;
}

/* ── Legacy full-width dark/black bars (custom.css #222 / #000) — every page ── */
.tvcmsdesktop-top-second,
.tvcmsdesktop-top-header-wrapper .tvcmsdesktop-top-second {
    background: rgba(255, 255, 255, 0.92) !important;
    background-color: #ffffff !important;
    min-height: 0 !important;
    border-bottom: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
}

.tvcms-header-menu-offer-wrapper,
.tvcmsdesktop-top-header-wrapper .tvcms-header-menu-offer-wrapper {
    background: var(--si-bg-alt, #f5f5f7) !important;
    background-color: var(--si-bg-alt, #f5f5f7) !important;
    border-top: none !important;
    border-bottom: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
    width: 100% !important;
}

#header .tv-menu-horizontal ul li.level-1 > a {
    color: var(--si-text, #1d1d1f) !important;
}

/* ── Main header bar ── */
#header,
#header .header-top,
.tvcmsdesktop-top-header-wrapper {
    background: rgba(255, 255, 255, 0.92) !important;
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
    border-bottom: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
    box-shadow: none !important;
}

.tvcmsheader-sticky.sticky #header,
.tvcmsheader-sticky.sticky .tvcmsdesktop-top-header-wrapper {
    background: rgba(255, 255, 255, 0.88) !important;
    backdrop-filter: saturate(180%) blur(20px);
    -webkit-backdrop-filter: saturate(180%) blur(20px);
}

#header a {
    color: var(--si-text, #000000);
    transition: color 0.3s ease;
}

#header a:hover {
    color: var(--si-accent, #39b54a);
}

/* Logo — JPG has white "Italia" on black; dark pill on light header (no color filter) */
#header .tv-header-logo,
#header .tvcms-header-logo .tv-header-logo,
#tvcms-mobile-view-header .tv-header-logo {
    overflow: visible !important; /* custom.css sets overflow:hidden — clips logo */
}

#header .tv-header-logo a,
#header .tvcms-header-logo .tv-header-logo a,
#tvcms-mobile-view-header .tv-header-logo a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #1d1d1f;
    border-radius: 8px;
    padding: 6px 12px;
    line-height: normal;
    overflow: visible;
    max-width: none;
}

#tvcms-mobile-view-header .tv-header-logo {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Mobile logo — match desktop pill + proportions (20260704-logo-mobile) */
#tvcms-mobile-view-header.mobile-header-1 .tv-header-logo {
    padding: 0 !important;
    overflow: visible !important;
    text-align: center;
}

#tvcms-mobile-view-header.mobile-header-1 .tv-header-logo a {
    width: auto !important;
    max-width: none !important;
}

.tv-header-logo img,
.tvcms-header-logo .logo,
#tvcms-mobile-view-header .tv-header-logo img {
    max-height: 52px;
    width: auto;
    height: auto;
    object-fit: contain;
    object-position: center;
    filter: none !important;
    display: block;
}

/* Cart / account SVG — custom.css sets fill/stroke #fff for old dark header */
#header .tv-cart-icon-main svg g path,
#header .tv-cart-icon-main svg g ellipse,
#header .tvcms-header-cart .tv-cart-icon svg g path,
#header .tvcms-header-cart .tv-cart-icon svg g ellipse,
#header .tvheader-cart-wrapper .tv-cart-icon svg g path,
#header .tvheader-cart-wrapper .tv-cart-icon svg g ellipse,
#header .tvheader-cart-btn-wrapper .tvcart-icon svg g path,
#header .tvheader-cart-btn-wrapper .tvcart-icon svg g ellipse,
#header .tvheader-cart-btn-wrapper .tv-cart-icon svg g path,
#header .tvheader-cart-btn-wrapper .tv-cart-icon svg g ellipse {
    fill: #1d1d1f !important;
    stroke: #1d1d1f !important;
}

#header .tv-cart-icon-main:hover svg g path,
#header .tv-cart-icon-main:hover svg g ellipse,
#header .tvcms-header-cart .tv-cart-icon:hover svg g path,
#header .tvcms-header-cart .tv-cart-icon:hover svg g ellipse,
#header .tvheader-cart-wrapper .tv-cart-icon:hover svg g path,
#header .tvheader-cart-wrapper .tv-cart-icon:hover svg g ellipse,
#header .tvheader-cart-btn-wrapper .tvcart-icon:hover svg g path,
#header .tvheader-cart-btn-wrapper .tvcart-icon:hover svg g ellipse {
    fill: var(--si-accent, #39b54a) !important;
    stroke: var(--si-accent, #39b54a) !important;
}

#header .tv-myaccount-btn-desktop svg g path,
#header .tv-myaccount-btn-desktop svg circle,
#header .tv-myaccount-btn svg g path,
#header .tv-myaccount-btn svg circle {
    fill: #1d1d1f !important;
    stroke: #1d1d1f !important;
}

#header .tv-myaccount-btn-desktop:hover svg g path,
#header .tv-myaccount-btn-desktop:hover svg circle,
#header .tv-myaccount-btn:hover svg g path,
#header .tv-myaccount-btn:hover svg circle {
    fill: var(--si-accent, #39b54a) !important;
    stroke: var(--si-accent, #39b54a) !important;
}

#header .tvcmsdesktop-view-wishlist svg g path,
#header .tvcmsdesktop-view-compare svg g path {
    fill: #1d1d1f !important;
    stroke: #1d1d1f !important;
}

#header .tvcmsdesktop-view-wishlist:hover svg g path,
#header .tvcmsdesktop-view-compare:hover svg g path {
    fill: var(--si-accent, #39b54a) !important;
    stroke: var(--si-accent, #39b54a) !important;
}

#tvcms-mobile-view-header .material-icons,
#header .tvmobile-sliderbar-btn .material-icons {
    color: #1d1d1f !important;
}

/* ── Desktop search pill ── */
@media (min-width: 992px) {
    .header-1 .tvheader-sarch-display {
        display: none !important;
    }

    .header-1 .tvcmsdesktop-top-header-box {
        display: flex !important;
        flex-wrap: nowrap;
        align-items: center;
        gap: 20px;
        padding-top: 8px;
        padding-bottom: 8px;
    }

    .header-1 .tvcmsdesktop-top-header-box > .tvcms-header-logo-wrapper {
        flex: 0 0 auto;
        width: auto !important;
        max-width: none;
        overflow: visible;
    }

    .header-1 .tvcms-header-logo .tv-header-logo img,
    .header-1 .tvcms-header-logo .logo {
        max-height: 52px;
    }

    .header-1 .tvcmsdesktop-top-header-box > .tvcmsheader-search {
        flex: 1 1 680px;
        width: auto !important;
        max-width: min(680px, calc(100% - 180px - 220px - 48px));
        min-width: 280px;
        text-align: left;
    }

    .header-1 .tvcmsdesktop-top-header-box > .tvcmsheader-nav-right {
        flex: 0 0 auto;
        width: auto !important;
        max-width: none;
        margin-left: auto;
    }

    .header-1 .tvcmsdesktop-top-header-box > [class*="col-"] {
        padding-left: 0;
        padding-right: 0;
    }

    .header-1 .tvcms-header-logo .tv-header-logo {
        justify-content: flex-start;
    }

    .header-1 #_desktop_search,
    .header-1 #_desktop_search .tvsearch-top-wrapper,
    .header-1 .tvsearch-header-display-wrappper,
    .header-1 .tvsearch-header-display-wrappper form {
        width: 100%;
    }

    .header-1 .tvcmssearch-wrapper {
        padding: 8px 0;
    }

    .header-1 .tvsearch-header-display-wrappper form {
        display: flex;
        align-items: stretch;
        border: 1px solid var(--si-line, rgba(0, 0, 0, 0.1));
        border-radius: var(--si-radius-pill, 980px);
        overflow: hidden;
        background: var(--si-bg-alt, #f5f5f7);
        box-shadow: var(--si-shadow, 0 2px 12px rgba(0, 0, 0, 0.04));
        transition: border-color var(--si-transition, 0.3s ease), box-shadow var(--si-transition, 0.3s ease), background var(--si-transition, 0.3s ease);
    }

    .header-1 .tvsearch-header-display-wrappper form:focus-within {
        border-color: var(--si-accent, #39b54a);
        box-shadow: 0 0 0 3px rgba(57, 181, 74, 0.14), 0 4px 16px rgba(0, 0, 0, 0.06);
        background: #fff;
    }

    .header-1 .tvheader-top-search {
        flex: 1 1 auto;
        min-width: 0;
        width: auto;
        position: relative;
    }

    .header-1 .tvheader-top-search-wrapper-info-box {
        position: relative;
        display: flex;
        align-items: center;
    }

    .header-1 .tvheader-top-search-wrapper-info-box::before {
        content: 'search';
        font-family: 'Material Icons';
        font-size: 20px;
        line-height: 1;
        color: var(--si-text-secondary, #6e6e73);
        position: absolute;
        left: 16px;
        top: 50%;
        transform: translateY(-50%);
        pointer-events: none;
        z-index: 1;
    }

    .header-1 #_desktop_search .tvheader-top-search-wrapper-info-box,
    .header-1 #_desktop_search .tvheader-top-search-wrapper-info-box input.tvcmssearch-words {
        width: 100%;
    }

    .header-1 .tvcmsheader-search.search-widget form input[type="text"],
    .header-1 .tvcmsheader-search.search-widget form input[type="search"],
    .header-1 .tvcmssearch-words {
        height: 48px;
        line-height: 48px;
        padding: 0 18px 0 46px;
        border: none !important;
        background: transparent !important;
        color: var(--si-text, #1d1d1f);
        font-family: var(--si-font, Inter, system-ui, sans-serif);
        font-size: 1rem;
        font-weight: 400;
        border-radius: 0;
        box-shadow: none !important;
        -webkit-appearance: none;
        appearance: none;
    }

    .header-1 .tvcmsheader-search.search-widget form input[type="text"]::placeholder,
    .header-1 .tvcmsheader-search.search-widget form input[type="search"]::placeholder {
        color: var(--si-text-secondary, #6e6e73);
        opacity: 1;
    }

    .header-1 .tvheader-top-search-wrapper {
        flex: 0 0 auto;
        display: flex;
        align-items: stretch;
        background-color: var(--si-accent, #39b54a) !important;
        padding: 0;
        border-radius: 0;
        transition: background var(--si-transition, 0.3s ease);
    }

    .header-1 .tvheader-top-search-wrapper:hover,
    .header-1 .tvsearch-header-display-wrappper form:focus-within .tvheader-top-search-wrapper {
        background-color: var(--si-accent-hover, #0d8224) !important;
    }

    .header-1 .tvheader-top-search-wrapper .tvheader-search-btn {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 6px;
        min-height: 48px;
        height: 48px;
        padding: 0 22px;
        margin: 0;
        border: none;
        border-radius: 0;
        background: transparent;
        cursor: pointer;
    }

    .header-1 .tvheader-top-search-wrapper .tvheader-search-btn .si-search-btn-icon {
        font-family: 'Material Icons';
        font-size: 20px;
        line-height: 1;
        color: #fff;
    }

    .header-1 .tvcmsheader-search.search-widget form button[type="submit"] .tvserach-name,
    .header-1 #_desktop_search .tvcmsheader-search .tvserach-name {
        color: #ffffff;
        font-weight: 600;
        font-size: 0.9375rem;
        white-space: nowrap;
        letter-spacing: -0.01em;
    }

    .header-1 .tv-contact-account-cart-wrapper {
        display: flex !important;
        align-items: center;
        justify-content: flex-end;
        gap: 6px;
        flex-wrap: nowrap;
    }

    /* Desktop account + cart — force visible (custom.css white SVG / hide-top-icons) */
    .header-1 .tvcmsdesktop-top-second,
    .header-1 .tvcmsdesktop-top-header-box {
        overflow: visible !important;
    }

    .header-1 .tvcmsheader-nav-right,
    .header-1 .tv-contact-account-cart-wrapper,
    .header-1 #tvcmsdesktop-account-button,
    .header-1 #_desktop_cart_manage,
    .header-1 .tvcms-header-cart,
    .header-1 #_desktop_cart_manage .blockcart {
        display: inline-flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        flex: 0 0 auto !important;
        width: auto !important;
        max-width: none !important;
        overflow: visible !important;
        pointer-events: auto !important;
    }

    .header-1 .tvcmsdesktop-top-header-box > .tvcmsheader-nav-right[class*="col-"] {
        flex: 0 0 auto !important;
        max-width: none !important;
        width: auto !important;
        flex-shrink: 0 !important;
        min-width: 96px;
        margin-left: auto;
    }

    .header-1 #tvcmsdesktop-account-button .tv-myaccount-btn-desktop,
    .header-1 .tvheader-cart-btn-wrapper,
    .header-1 .tvheader-cart-wrapper {
        display: inline-flex !important;
        visibility: visible !important;
        pointer-events: auto !important;
        cursor: pointer;
    }

    #header .tv-cart-icon-main svg g path,
    #header .tv-cart-icon-main svg g ellipse,
    #header .tvcms-header-cart .tv-cart-icon svg g path,
    #header .tvcms-header-cart .tv-cart-icon svg g ellipse,
    #header .tvheader-cart-wrapper .tv-cart-icon svg g path,
    #header .tvheader-cart-wrapper .tv-cart-icon svg g ellipse,
    #header .tvheader-cart-btn-wrapper .tv-cart-icon svg g path,
    #header .tvheader-cart-btn-wrapper .tv-cart-icon svg g ellipse,
    #header .tv-myaccount-btn-desktop svg g path,
    #header .tv-myaccount-btn-desktop svg circle {
        fill: #1d1d1f !important;
        stroke: #1d1d1f !important;
    }

    #header .tv-cart-icon-main:hover svg g path,
    #header .tv-cart-icon-main:hover svg g ellipse,
    #header .tvcms-header-cart .tv-cart-icon:hover svg g path,
    #header .tvcms-header-cart .tv-cart-icon:hover svg g ellipse,
    #header .tv-myaccount-btn-desktop:hover svg g path,
    #header .tv-myaccount-btn-desktop:hover svg circle {
        fill: #39b54a !important;
        stroke: #39b54a !important;
    }
}

@media (min-width: 1200px) {
    .header-1 .tvcmsdesktop-top-header-box > .tvcmsheader-search {
        max-width: min(680px, calc(100% - 200px - 220px - 48px));
    }
}

/* ── Desktop top: brand strip + category menu (≥992px) — 20260704-nav-bars-visual ── */
@media (min-width: 992px) {
    /* Brand row — full-width SI gray bar; undo module front.css dark #031424 + 59px line-height */
    .tvcms-header-menu-offer-wrapper,
    .tvcmsdesktop-top-header-wrapper .tvcms-header-menu-offer-wrapper {
        min-height: 0 !important;
        padding: 0 !important;
        overflow: visible;
    }

    .tvcms-header-menu-offer-wrapper .tvcms-header-menu,
    .tvcms-header-menu-offer-wrapper .tvcmsmain-menu-wrapper,
    .tvcms-header-menu-offer-wrapper .si-brand-bar-inner {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
    }

    #tvdesktop-megamenu {
        min-height: 44px;
        width: 100%;
    }

    #tvdesktop-megamenu.si-brand-row-loading {
        min-height: 44px;
        background: linear-gradient(
            90deg,
            rgba(0, 0, 0, 0.04) 0%,
            rgba(0, 0, 0, 0.07) 50%,
            rgba(0, 0, 0, 0.04) 100%
        );
        background-size: 200% 100%;
        animation: si-brand-row-shimmer 1.2s ease-in-out infinite;
    }

    @keyframes si-brand-row-shimmer {
        0% { background-position: 100% 0; }
        100% { background-position: -100% 0; }
    }

    #tvdesktop-megamenu .container_tv_megamenu,
    #tvdesktop-megamenu .tv-menu-horizontal {
        visibility: visible !important;
        opacity: 1 !important;
        background: transparent !important;
    }

    .tvcms-header-menu-offer-wrapper .tvcmsmain-menu-wrapper.container,
    .tvcms-header-menu-offer-wrapper .tvcmsmain-menu-wrapper.si-brand-bar-inner {
        max-width: 100%;
        padding-left: max(16px, env(safe-area-inset-left, 0px));
        padding-right: max(16px, env(safe-area-inset-right, 0px));
        overflow-x: auto;
        overflow-y: visible;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        background: transparent !important;
    }

    .tvcms-header-menu-offer-wrapper .container_tv_megamenu,
    .tvcms-header-menu-offer-wrapper #tv-menu-horizontal,
    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal {
        width: 100%;
        overflow: visible;
        text-align: left !important;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal .menu-content {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: flex-start;
        gap: 4px 14px;
        padding: 6px 0;
        margin: 0;
        min-width: min-content;
        list-style: none;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.tvmega-menu-title {
        display: none !important;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1,
    #tvdesktop-megamenu .tv-menu-horizontal li.level-1 {
        flex: 0 0 auto;
        float: none !important;
        border: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #header .tvcms-header-menu-offer-wrapper .tv-menu-horizontal ul li.level-1 > a,
    #header #tvdesktop-megamenu .tv-menu-horizontal ul li.level-1 > a {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 4px;
        padding: 4px 8px !important;
        line-height: 1 !important;
        min-height: 36px;
        height: auto !important;
        color: var(--si-text, #1d1d1f) !important;
        background: transparent !important;
        background-color: transparent !important;
        border-radius: 8px;
        text-shadow: none !important;
        font-size: 0 !important;
        letter-spacing: 0 !important;
        text-transform: none !important;
        transition: background var(--si-transition, 0.3s ease);
        box-shadow: none !important;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1 > a:hover,
    #tvdesktop-megamenu .tv-menu-horizontal li.level-1 > a:hover {
        background: rgba(57, 181, 74, 0.08) !important;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1.home_menu > a {
        padding: 4px 6px !important;
        min-width: 36px;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1.home_menu i {
        color: var(--si-text, #1d1d1f) !important;
        font-size: 20px;
        line-height: 1;
    }

    /* Brand logos — uniform height, natural colors (undo custom.css invert filter) */
    #tvdesktop-megamenu .tv-menu-horizontal li.level-1 .img-icon,
    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1 .img-icon,
    #tvdesktop-megamenu .tv-menu-horizontal li.level-1.invert .img-icon,
    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1.invert .img-icon,
    #tvdesktop-megamenu .tv-menu-horizontal li.level-1.invert.bigger .img-icon,
    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1.invert.bigger .img-icon {
        filter: none !important;
        -webkit-filter: none !important;
        opacity: 1 !important;
        display: block !important;
        height: 32px !important;
        max-height: 32px !important;
        width: auto !important;
        max-width: 80px !important;
        min-height: 0 !important;
        object-fit: contain;
        object-position: center;
        vertical-align: middle;
        background: transparent !important;
    }

    /* .invert brands — no dark/white pills on light bar */
    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1.invert > a,
    #tvdesktop-megamenu .tv-menu-horizontal li.level-1.invert > a {
        background: transparent !important;
        background-color: transparent !important;
        color: var(--si-text, #1d1d1f) !important;
        text-shadow: none !important;
    }

    /* Hide brand text labels (icons only) */
    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1:not(.home_menu) > a > span:not(.menu-subtitle) {
        display: none !important;
    }

    /* Brand dropdown caret */
    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1.parent .icon-drop-mobile {
        display: inline-block !important;
        width: 0;
        height: 0;
        margin-left: 2px;
        border: none;
        border-left: 4px solid transparent;
        border-right: 4px solid transparent;
        border-top: 5px solid #6e6e73;
        vertical-align: middle;
        flex-shrink: 0;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1.parent:hover .icon-drop-mobile {
        border-top-color: var(--si-accent, #39b54a);
    }

    /* Brand megamenu dropdown */
    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal li.level-1 .menu-dropdown,
    #tvdesktop-megamenu .tv-menu-horizontal .menu-dropdown {
        background: #ffffff !important;
        border: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
        border-bottom: 3px solid var(--si-accent, #39b54a) !important;
        border-radius: 0 0 12px 12px;
        box-shadow: var(--si-shadow-hover, 0 8px 28px rgba(0, 0, 0, 0.1));
        z-index: 10060 !important;
        padding: 16px;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal .menu-dropdown a,
    #tvdesktop-megamenu .tv-menu-horizontal .menu-dropdown a {
        color: var(--si-text, #1d1d1f) !important;
    }

    .tvcms-header-menu-offer-wrapper .tv-menu-horizontal .menu-dropdown a:hover,
    #tvdesktop-megamenu .tv-menu-horizontal .menu-dropdown a:hover {
        color: var(--si-accent, #39b54a) !important;
    }

    #header .tv-menu-horizontal ul li.level-1 > a {
        color: var(--si-text, #1d1d1f) !important;
    }

    /* Category menu row — clean white bar, centered links */
    #tvcmsdesktop-main-menu {
        background: var(--si-bg, #ffffff) !important;
        border-top: none;
        border-bottom: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
        position: relative;
        z-index: 50;
        width: 100% !important;
    }

    #tvcmsdesktop-main-menu .tvcmsmain-menu-wrapper {
        max-width: 100%;
        padding-left: max(16px, env(safe-area-inset-left, 0px));
        padding-right: max(16px, env(safe-area-inset-right, 0px));
        overflow: visible !important;
        margin: 0 auto;
    }

    #tvcmsdesktop-main-menu #tv-top-menu {
        display: flex !important;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: 6px 18px;
        padding: 10px 12px !important;
        margin: 0;
        border-bottom: none !important;
        overflow: visible;
        list-style: none;
    }

    #tvcmsdesktop-main-menu #tv-top-menu > li {
        flex: 0 0 auto;
        padding: 0;
        float: none !important;
        display: block;
    }

    #tvcmsdesktop-main-menu #tv-top-menu > li > .tvmenu-link-wrapper {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
        gap: 2px;
        padding: 6px 4px;
        border-radius: 8px;
        transition: background 0.15s ease;
    }

    #tvcmsdesktop-main-menu #tv-top-menu > li:hover > .tvmenu-link-wrapper,
    #tvcmsdesktop-main-menu #tv-top-menu > li.active > .tvmenu-link-wrapper,
    #tvcmsdesktop-main-menu #tv-top-menu > li.si-mainmenu-active > .tvmenu-link-wrapper {
        background: rgba(57, 181, 74, 0.06);
    }

    #tvcmsdesktop-main-menu .tv-header-menu[data-depth="0"] > li > .tvmenu-link-wrapper a span,
    #tvcmsdesktop-main-menu .tvmain-menu-text-box {
        color: var(--si-text, #1d1d1f) !important;
        font-family: var(--si-font, Inter, system-ui, sans-serif) !important;
        font-size: 0.75rem !important;
        font-weight: 600 !important;
        letter-spacing: 0.04em !important;
        text-transform: uppercase !important;
        line-height: 1.35 !important;
        position: relative;
        white-space: nowrap;
    }

    #tvcmsdesktop-main-menu .tv-header-menu[data-depth="0"] > li:hover > .tvmenu-link-wrapper a span,
    #tvcmsdesktop-main-menu .tv-header-menu[data-depth="0"] > li.active > .tvmenu-link-wrapper a span {
        color: var(--si-accent, #39b54a) !important;
    }

    #tvcmsdesktop-main-menu .tv-header-menu[data-depth="0"] > li > .tvmenu-link-wrapper a span:after {
        background: var(--si-accent, #39b54a) !important;
        height: 2px;
        bottom: -2px;
    }

    #tvcmsdesktop-main-menu .tvmenu-toggle-icon {
        display: inline-flex !important;
        align-items: center;
        margin-left: 2px;
    }

    #tvcmsdesktop-main-menu .tvhorizontal-menu-drop-down-icon,
    #tvcmsdesktop-main-menu .tvmenu-toggle-icon i,
    #tvcmsdesktop-main-menu .tvcms-header-menu .tv-header-menu > li > .tvmenu-link-wrapper i {
        color: #6e6e73 !important;
        font-size: 18px !important;
        line-height: 1;
    }

    #tvcmsdesktop-main-menu .tv-header-menu[data-depth="0"] > li:hover .tvhorizontal-menu-drop-down-icon {
        color: var(--si-accent, #39b54a) !important;
    }

    #tvcmsdesktop-main-menu .tvmain-menu-dropdown {
        background: #ffffff !important;
        border: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
        outline: none !important;
        border-radius: 0 0 12px 12px;
        box-shadow: var(--si-shadow-hover, 0 8px 28px rgba(0, 0, 0, 0.1));
        z-index: 10055 !important;
    }

    #tvcmsdesktop-main-menu .tvmain-menu-sub-menu .tv-header-menu[data-depth="1"] > li > .tvmenu-link-wrapper a span {
        color: var(--si-text, #1d1d1f) !important;
        font-family: var(--si-font, Inter, system-ui, sans-serif) !important;
        font-size: 0.8125rem !important;
        font-weight: 500 !important;
        text-transform: none !important;
    }

    #tvcmsdesktop-main-menu .tvmain-menu-sub-menu .tv-header-menu[data-depth="1"] > li > .tvmenu-link-wrapper a span:hover {
        color: var(--si-accent, #39b54a) !important;
    }

    #tvcmsdesktop-main-menu .tvcmsmain-menu-wrapper > .tv-header-menu > li:hover .tvmain-menu-dropdown {
        opacity: 1;
        visibility: visible;
        transform: perspective(600px) rotateX(0deg);
    }
}

/* ── Account / cart icons ── */
.tvheader-cart-btn-wrapper .cart-products-count,
.tvcart-icon-text-wrapper .cart-products-count,
.header-1 .tvheader-cart-btn-wrapper .cart-products-count {
    background: var(--si-accent, #39b54a) !important;
    color: #fff !important;
    font-size: 0.6875rem;
    font-weight: 600;
    min-width: 18px;
    height: 18px;
    line-height: 18px;
    border-radius: 9px;
    border: none !important;
}

a.si-account-guest-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
    position: relative;
    pointer-events: auto;
}

@media (min-width: 992px) {
    .header-1 #tvcmsdesktop-account-button {
        position: relative;
        z-index: 10056;
        pointer-events: auto !important;
        min-width: 44px;
        min-height: 44px;
        overflow: visible !important;
    }

    /* Desktop hover preview: anchor panel to icon (override custom.css padding/offsets) */
    .header-1 #tvcmsdesktop-account-button .tv-account-wrapper.si-account-logged-hover,
    .header-1 #tvcmsdesktop-account-button .tv-account-wrapper.si-account-guest-hover {
        position: relative;
        padding: 0 !important;
        overflow: visible !important;
    }

    .header-1 #tvcmsdesktop-account-button .tv-account-wrapper.si-account-logged-hover .tv-account-dropdown.si-account-preview-dropdown,
    .header-1 #tvcmsdesktop-account-button .tv-account-wrapper.si-account-guest-hover .tv-account-dropdown.si-account-preview-dropdown {
        right: 0 !important;
        left: auto !important;
        top: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .header-1 #tvcmsdesktop-account-button:after,
    .header-1 #tvcmsdesktop-account-button.si-guest-account-host:after {
        pointer-events: none !important;
    }

    .header-1 #tvcmsdesktop-account-button:has(.si-account-guest-hover a.si-account-guest-link):after,
    .header-1 #tvcmsdesktop-account-button.si-guest-account-host:after {
        display: none !important;
        content: none !important;
        pointer-events: none !important;
    }

    .header-1 #tvcmsdesktop-account-button.si-guest-account-host {
        display: inline-flex !important;
        align-items: center;
        justify-content: center;
    }

    .header-1 #tvcmsdesktop-account-button a.si-account-guest-link,
    .header-1 #tvcmsdesktop-account-button.si-guest-account-host a.si-account-guest-link {
        position: relative;
        z-index: 99999 !important;
        min-width: 44px;
        min-height: 44px;
        pointer-events: auto !important;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .header-1 #tvcmsdesktop-account-button a.si-account-guest-link svg,
    .header-1 #tvcmsdesktop-account-button.si-guest-account-host a.si-account-guest-link svg {
        pointer-events: none;
    }
}

.tv-account-wrapper .tv-myaccount-btn,
a.si-account-guest-link.tv-myaccount-btn,
.tvheader-cart-btn-wrapper .tvcart-icon,
.tvcmsdesktop-view-wishlist,
.tvcmsdesktop-view-compare {
    transition: opacity 0.3s ease, transform 0.3s ease;
}

.tv-account-wrapper .tv-myaccount-btn:hover,
a.si-account-guest-link.tv-myaccount-btn:hover,
.tvheader-cart-btn-wrapper:hover {
    opacity: 0.75;
    transform: scale(1.03);
}

.tvcart-icon-text-wrapper .tvcart-lable,
.tv-account-wrapper .tv-myaccount-btn span {
    color: var(--si-text-secondary, #6e6e73) !important;
    font-size: 0.75rem;
    font-weight: 500;
}

/* ── Mobile header ── */
@media (max-width: 991px) {
    /* Override custom.css overflow-x:hidden on #header — clips cart drawer + menu */
    #header,
    #header .header-top,
    #tvcms-mobile-view-header,
    #tvcms-mobile-view-header .tvcmsmobile-header-menu-offer-text,
    #tvcms-mobile-view-header .tvcmsmobile-header-menu,
    #tvcms-mobile-view-header .tvcmsmobile-cart-acount-text,
    #tvcms-mobile-view-header .tvcmsmobile-header-logo-right-wrapper,
    .tvheader-mobile-layout,
    .tv-main-div > header {
        overflow: visible !important;
    }

    /* Sticky transform creates a containing block → fixed drawer/cart clipped */
    #tvcms-mobile-view-header .tvcmsheader-sticky.sticky,
    #tvcms-mobile-view-header.tvcmsheader-sticky.sticky {
        transform: none !important;
        -webkit-transform: none !important;
    }

    #tvcms-mobile-view-header,
    .tvcmsmobile-header-wrapper {
        background: rgba(255, 255, 255, 0.98) !important;
        border-bottom: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
    }

    /* Logo ↔ search breathing room (20260704-mobile-header-gap) — --si-chat-gap 16px */
    #tvcms-mobile-view-header.mobile-header-1 .tvcmsmobile-header-menu-offer-text {
        padding-bottom: 6px;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvcmsmobile-header-search-logo-wrapper {
        padding: 10px max(12px, env(safe-area-inset-left, 0px)) 10px max(12px, env(safe-area-inset-right, 0px));
        margin-top: 0;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvcmsmobile-header-search {
        padding: 0;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-top-wrapper {
        padding: 0;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvheader-sarch-display {
        display: block !important;
        width: 100%;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvheader-search-display-icon {
        display: flex;
        align-items: center;
        width: 100%;
        min-height: 44px;
        padding: 0 16px;
        border: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
        border-radius: var(--si-radius-pill, 980px);
        background: var(--si-bg-alt, #f5f5f7);
        box-sizing: border-box;
        cursor: pointer;
        transition: border-color var(--si-transition, 0.3s ease), background var(--si-transition, 0.3s ease);
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvheader-search-display-icon:active {
        border-color: var(--si-accent, #39b54a);
        background: #fff;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-open {
        display: flex !important;
        align-items: center;
        gap: 10px;
        width: 100%;
        min-height: 44px;
        cursor: pointer;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-open svg {
        flex-shrink: 0;
        width: 20px;
        height: 20px;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-open svg path {
        fill: var(--si-text-secondary, #6e6e73) !important;
    }

    #tvcms-mobile-view-header.mobile-header-1 .si-search-trigger-text {
        flex: 1;
        min-width: 0;
        color: var(--si-text-secondary, #6e6e73);
        font-family: var(--si-font, Inter, system-ui, sans-serif);
        font-size: 1rem;
        font-weight: 400;
        line-height: 1.3;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
        text-align: left;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-close {
        display: none !important;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-header-display-wrappper:not(.open) form,
    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-header-display-wrappper:not(.open) > .tvsearch-result {
        display: none !important;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-header-display-wrappper.open {
        display: block !important;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-header-display-wrappper.open ~ .tvheader-sarch-display,
    #tvcms-mobile-view-header.mobile-header-1 .tvsearch-top-wrapper:has(.tvsearch-header-display-wrappper.open) .tvheader-sarch-display {
        display: none !important;
    }

    .tvcmsmobile-header-search input,
    .tvsearch-wrapper input[type="text"] {
        border-radius: var(--si-radius-pill, 980px) !important;
        border: 1px solid var(--si-line, rgba(0, 0, 0, 0.08)) !important;
        background: var(--si-bg-alt, #f5f5f7) !important;
        min-height: 44px;
        font-size: 1rem !important;
        padding: 0 16px;
        font-family: var(--si-font, Inter, system-ui, sans-serif) !important;
    }

    .tvcmsmobile-header-search input:focus,
    .tvsearch-wrapper input[type="text"]:focus {
        border-color: var(--si-accent, #39b54a) !important;
        box-shadow: 0 0 0 3px rgba(57, 181, 74, 0.12);
        background: #fff !important;
        outline: none;
    }

    .tvmobile-sliderbar-btn a {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: var(--si-text, #1d1d1f);
        border-radius: 10px;
        transition: color 0.3s ease, background 0.3s ease;
    }

    .tvmobile-sliderbar-btn a:hover,
    .tvmobile-sliderbar-btn a:focus {
        color: var(--si-accent, #39b54a);
        background: rgba(57, 181, 74, 0.08);
    }

    /* Mobile header row: logo centered only — menu/cart/account in bottom nav */
    #tvcms-mobile-view-header.mobile-header-1 .tvcmsmobile-header-menu-offer-text {
        display: flex !important;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: center !important;
        gap: 0;
        width: 100%;
    }

    #tvcms-mobile-view-header.mobile-header-1 .tvcmsmobile-header-logo-right-wrapper {
        order: 1;
        flex: 1 1 100% !important;
        min-width: 0;
        width: 100% !important;
        max-width: 100% !important;
        text-align: center;
        justify-content: center;
    }

    #tvcms-mobile-view-header #tvcmsmobile-header-logo {
        display: flex;
        justify-content: center;
        overflow: visible;
    }

    #tvcms-mobile-view-header .tv-header-logo,
    #tvcms-mobile-view-header .tv-header-logo a {
        overflow: visible !important;
    }

    #tvcms-mobile-view-header .tv-header-logo img {
        max-height: 52px;
        object-fit: contain;
    }

    /* Hide hamburger toggle — drawer DOM kept for si-mobile-menu.js portal */
    #tvcms-mobile-view-header .tvcmsmobile-header-menu {
        order: 0;
        flex: 0 0 0 !important;
        width: 0 !important;
        min-width: 0 !important;
        max-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    #tvcms-mobile-view-header .tvmobile-sliderbar-btn,
    #tvcms-mobile-view-header .tvmobile-sliderbar-btn a {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    /* Hide cart + account from top row — bottom nav handles them */
    #tvcms-mobile-view-header .tvcmsmobile-cart-acount-text,
    #tvcms-mobile-view-header #tvmobile-cart,
    #tvcms-mobile-view-header #tvcmsmobile-account-button,
    #tvcms-mobile-view-header .tvheader-cart-wrapper,
    #tvcms-mobile-view-header .blockcart {
        display: none !important;
        visibility: hidden !important;
        pointer-events: none !important;
    }

    /* Drawer/cart: portaled to body — stop above bottom nav, not full viewport */
    body > .tvmobile-slidebar,
    #tvcms-mobile-view-header .tvmobile-slidebar {
        position: fixed !important;
        top: 0 !important;
        left: auto !important;
        right: -320px;
        bottom: var(--si-bottom-nav-offset, calc(var(--si-bottom-nav-height, 56px) + env(safe-area-inset-bottom, 0px))) !important;
        width: min(320px, 85vw) !important;
        min-width: 260px;
        max-width: 85vw !important;
        height: calc(100dvh - var(--si-bottom-nav-offset, calc(var(--si-bottom-nav-height, 56px) + env(safe-area-inset-bottom, 0px)))) !important;
        max-height: calc(100dvh - var(--si-bottom-nav-offset, calc(var(--si-bottom-nav-height, 56px) + env(safe-area-inset-bottom, 0px)))) !important;
        margin: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        z-index: 99992 !important;
        transform: none !important;
        -webkit-transform: none !important;
        padding-top: max(15px, env(safe-area-inset-top, 0px));
        padding-bottom: 15px;
        padding-left: max(15px, env(safe-area-inset-left, 0px));
        padding-right: max(15px, env(safe-area-inset-right, 0px));
        box-sizing: border-box;
    }

    body > .tvmobile-slidebar.open,
    #tvcms-mobile-view-header .tvmobile-slidebar.open {
        left: auto !important;
        right: 0 !important;
        visibility: visible !important;
    }

    body > .ttvcmscart-show-dropdown-right,
    body.classicCartOpen > .ttvcmscart-show-dropdown-right {
        position: fixed !important;
        top: 0 !important;
        right: -100% !important;
        left: auto !important;
        bottom: var(--si-bottom-nav-offset, calc(var(--si-bottom-nav-height, 56px) + env(safe-area-inset-bottom, 0px))) !important;
        width: min(320px, 85vw) !important;
        max-width: 85vw !important;
        height: calc(100dvh - var(--si-bottom-nav-offset, calc(var(--si-bottom-nav-height, 56px) + env(safe-area-inset-bottom, 0px)))) !important;
        max-height: calc(100dvh - var(--si-bottom-nav-offset, calc(var(--si-bottom-nav-height, 56px) + env(safe-area-inset-bottom, 0px)))) !important;
        margin: 0 !important;
        z-index: 99992 !important;
        transform: none !important;
        -webkit-transform: none !important;
        overflow: hidden !important;
        padding-top: env(safe-area-inset-top, 0px);
        padding-right: env(safe-area-inset-right, 0px);
        padding-bottom: 0;
        box-sizing: border-box;
    }

    body.classicCartOpen > .ttvcmscart-show-dropdown-right {
        right: 0 !important;
        visibility: visible !important;
    }

    body > .ttvcmscart-show-dropdown-right .ttvcart-scroll-container,
    body > .ttvcmscart-show-dropdown-right .ttvcart-product-wrapper,
    body > .ttvcmscart-show-dropdown-right .ttvcart-product-list {
        overflow-y: auto !important;
        -webkit-overflow-scrolling: touch;
        min-height: 0 !important;
    }

    body > .modal-backdrop-cart,
    body.classicCartOpen > .modal-backdrop-cart {
        z-index: 99991 !important;
    }

    /* Drawer menu links — Apple + brand green */
    #tvmobile-megamenu .tvmain-menu-text-box,
    #tvmobile-megamenu .tvmenu-link {
        color: var(--si-text, #1d1d1f) !important;
        font-family: var(--si-font, system-ui, sans-serif);
        font-size: 0.9375rem;
        font-weight: 500;
    }

    #tvmobile-megamenu .tvmain-menu-wrapper:hover > .tvmenu-link-wrapper a span,
    #tvmobile-megamenu .tvmain-menu-wrapper.current > .tvmenu-link-wrapper a span {
        color: var(--si-accent, #39b54a) !important;
    }

    #tvmobile-megamenu .tvmenu-link-wrapper {
        min-height: 44px;
        display: flex;
        align-items: center;
    }

    /* Right-thumb close — menu drawer (20260704-close-right) */
    body > .tvmobile-slidebar .tvmobile-dropdown-close,
    #tvcms-mobile-view-header .tvmobile-slidebar .tvmobile-dropdown-close {
        position: absolute;
        top: max(8px, env(safe-area-inset-top, 0px));
        right: max(14px, env(safe-area-inset-right, 0px));
        left: auto !important;
        margin: 0;
        padding: 0;
        z-index: 3;
        width: auto;
        height: auto;
    }

    body > .tvmobile-slidebar .tvmobile-dropdown-close a,
    #tvcms-mobile-view-header .tvmobile-slidebar .tvmobile-dropdown-close a {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        color: var(--si-text, #1d1d1f);
        border-radius: 10px;
        transition: color 0.2s ease, background 0.2s ease;
        text-decoration: none;
    }

    body > .tvmobile-slidebar .tvmobile-dropdown-close a:hover,
    body > .tvmobile-slidebar .tvmobile-dropdown-close a:active,
    body > .tvmobile-slidebar .tvmobile-dropdown-close a:focus,
    #tvcms-mobile-view-header .tvmobile-slidebar .tvmobile-dropdown-close a:hover,
    #tvcms-mobile-view-header .tvmobile-slidebar .tvmobile-dropdown-close a:active,
    #tvcms-mobile-view-header .tvmobile-slidebar .tvmobile-dropdown-close a:focus {
        color: var(--si-accent, #39b54a);
        background: rgba(57, 181, 74, 0.08);
    }

    body > .tvmobile-slidebar .tvmobile-dropdown-close a i,
    #tvcms-mobile-view-header .tvmobile-slidebar .tvmobile-dropdown-close a i {
        position: static !important;
        right: auto !important;
        top: auto !important;
        font-size: 24px;
        color: inherit;
    }

    body > .tvmobile-slidebar.open #tvmobile-megamenu,
    #tvcms-mobile-view-header .tvmobile-slidebar.open #tvmobile-megamenu {
        padding-top: 40px;
    }

    /* Right-thumb close — cart drawer (20260704-close-right) */
    body > .ttvcmscart-show-dropdown-right .ttvcart-close-title-count,
    body.classicCartOpen > .ttvcmscart-show-dropdown-right .ttvcart-close-title-count {
        position: relative;
        min-height: 52px;
        padding-top: max(4px, env(safe-area-inset-top, 0px));
        padding-right: 52px;
    }

    body > .ttvcmscart-show-dropdown-right .ttvclose-cart,
    body.classicCartOpen > .ttvcmscart-show-dropdown-right .ttvclose-cart {
        position: absolute !important;
        top: max(8px, env(safe-area-inset-top, 0px));
        right: max(14px, env(safe-area-inset-right, 0px)) !important;
        left: auto !important;
        order: 99;
        min-width: 44px;
        min-height: 44px;
        width: 44px;
        height: 44px;
        background-image: none !important;
        background-color: transparent;
        border: none;
        border-radius: 10px;
        cursor: pointer;
        z-index: 2;
        transition: background 0.2s ease;
    }

    body > .ttvcmscart-show-dropdown-right .ttvclose-cart::before,
    body.classicCartOpen > .ttvcmscart-show-dropdown-right .ttvclose-cart::before {
        content: 'close';
        font-family: 'Material Icons';
        font-size: 24px;
        line-height: 44px;
        color: var(--si-text, #1d1d1f);
        display: block;
        text-align: center;
        transition: color 0.2s ease;
    }

    body > .ttvcmscart-show-dropdown-right .ttvclose-cart:active,
    body > .ttvcmscart-show-dropdown-right .ttvclose-cart:focus,
    body.classicCartOpen > .ttvcmscart-show-dropdown-right .ttvclose-cart:active,
    body.classicCartOpen > .ttvcmscart-show-dropdown-right .ttvclose-cart:focus {
        background: rgba(57, 181, 74, 0.08);
        outline: none;
    }

    body > .ttvcmscart-show-dropdown-right .ttvclose-cart:active::before,
    body > .ttvcmscart-show-dropdown-right .ttvclose-cart:focus::before,
    body.classicCartOpen > .ttvcmscart-show-dropdown-right .ttvclose-cart:active::before,
    body.classicCartOpen > .ttvcmscart-show-dropdown-right .ttvclose-cart:focus::before {
        color: var(--si-accent, #39b54a);
    }
}

/* Compact header — iPhone SE / 375px (bottom nav frees horizontal space — no logo clip) */
@media (max-width: 430px) {
    #tvcms-mobile-view-header.mobile-header-1 .tvcmsmobile-header-menu-offer-text {
        gap: 4px;
        padding-left: max(6px, env(safe-area-inset-left, 0px));
        padding-right: max(6px, env(safe-area-inset-right, 0px));
    }

    #tvcms-mobile-view-header .tv-header-logo a {
        padding: 6px 12px;
        max-width: none;
    }

    #tvcms-mobile-view-header .tv-header-logo img {
        max-height: 52px;
        width: auto;
        max-width: min(300px, 85vw);
    }

    /* Account always visible — compact logo instead of hiding icon (20260704-account-icon) */
    #tvcms-mobile-view-header.mobile-header-1 .tvcmsmobile-cart-acount-text {
        display: flex !important;
        flex-direction: row;
        align-items: center;
        gap: 2px;
        padding-right: 2px;
    }

    #tvcms-mobile-view-header #tvcmsmobile-account-button {
        display: flex !important;
        flex-shrink: 0;
        align-items: center;
    }

    #tvcms-mobile-view-header #tvcmsmobile-account-button .tv-myaccount-btn,
    #tvcms-mobile-view-header #tvcmsmobile-account-button .tv-myaccount-btn-desktop {
        min-width: 44px;
        min-height: 44px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        border-radius: 10px;
        transition: color 0.2s ease, background 0.2s ease;
        -webkit-tap-highlight-color: transparent;
    }

    #tvcms-mobile-view-header #tvcmsmobile-account-button .tv-myaccount-btn:active,
    #tvcms-mobile-view-header #tvcmsmobile-account-button .tv-myaccount-btn-desktop:active {
        background: rgba(57, 181, 74, 0.08);
    }

    #tvcms-mobile-view-header #tvcmsmobile-account-button .tv-myaccount-btn svg,
    #tvcms-mobile-view-header #tvcmsmobile-account-button .tv-myaccount-btn-desktop svg {
        width: 24px;
        height: auto;
    }

    #tvcms-mobile-view-header .tvmobile-sliderbar-btn a {
        min-width: 40px;
        min-height: 40px;
    }
}

@media (max-width: 375px) {
    #tvcms-mobile-view-header .tv-header-logo a {
        padding: 6px 12px;
        max-width: none;
    }

    #tvcms-mobile-view-header .tv-header-logo img {
        max-height: 48px;
        max-width: min(280px, 80vw);
    }
}

/* Search results dropdown (autocomplete) */
#header .tvsearch-result {
    position: absolute;
    top: calc(100% + 8px);
    left: 0;
    right: 0;
    z-index: 10060;
    border: 1px solid var(--si-line, rgba(0, 0, 0, 0.08));
    border-radius: var(--si-radius, 18px);
    box-shadow: var(--si-shadow-hover, 0 8px 28px rgba(0, 0, 0, 0.1));
    overflow: visible;
    background: #fff;
}

#header .tvsearch-header-display-wrappper {
    position: relative;
}

#header .tvsearch-result .tvcmssearch-dropdown {
    max-height: min(420px, 60vh);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

#header .tvsearch-result .tvsearch-dropdown-total {
    color: var(--si-text-secondary, #6e6e73);
    font-size: 0.8125rem;
    font-weight: 600;
}

#header .tvsearch-result .tvsearch-dropdown-title {
    background: var(--si-bg-alt, #f5f5f7);
    color: var(--si-text-secondary, #6e6e73);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

#header .tvsearch-result .tvsearch-dropdown-wrapper a,
#header .tvsearch-result .tvsearch-all-dropdown-wrapper a {
    color: var(--si-text, #1d1d1f);
    font-family: var(--si-font, Inter, system-ui, sans-serif);
    font-size: 0.9375rem;
    transition: background var(--si-transition, 0.3s ease);
}

#header .tvsearch-result a:hover,
#header .tvsearch-result .tvsearch-dropdown-wrapper:hover {
    background: rgba(57, 181, 74, 0.06);
}

#header .tvsearch-result .tvsearch-more-search-wrapper .tvsearch-more-search,
#header .tvsearch-result .tvsearch-more-search {
    background: var(--si-accent, #39b54a) !important;
    border-color: var(--si-accent, #39b54a) !important;
    color: #fff !important;
    border-radius: var(--si-radius-pill, 980px) !important;
    font-weight: 600;
    min-height: 44px;
}

#header .tvsearch-result .tvsearch-more-search-wrapper .tvsearch-more-search:hover {
    background: var(--si-accent-hover, #0d8224) !important;
    border-color: var(--si-accent-hover, #0d8224) !important;
}

#header .tvsearch-result .tvsearch-dropdown-close-wrapper {
    color: var(--si-text-secondary, #6e6e73);
}

#header .tvsearch-result .tvsearch-dropdown-close-wrapper:hover {
    color: var(--si-accent, #39b54a);
}
