/* =====================================================
   Custom Styles for Tasty Coffee Clone
   Matching: shop.tastycoffee.ru design
   ===================================================== */

/* ---- CSS Variables ---- */
:root {
    --tc-new: #10b981;
    --tc-popular: #f59e0b;
    --tc-special: #ef4444;
    --card-border: #ebebeb;
    --card-radius: 16px;
    --card-bg: #ffffff;
    --card-shadow: 0 2px 8px rgba(0,0,0,0.04);
    --card-shadow-hover: 0 8px 32px rgba(0,0,0,0.10);
    --transition-base: 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    
    /* Missing essential colors for overlays/menu */
    --black: #000000;
    --white: #ffffff;
    --black-4: #f5f5f5;
    --black-5: #eaeaea;
    --black-16: rgba(0, 0, 0, 0.5);
    --black-50: rgba(0, 0, 0, 0.45);
    --black-80: rgba(0, 0, 0, 0.8);
    --opacity-4: rgba(0, 0, 0, 0.04);
    --opacity-8: rgba(0, 0, 0, 0.08);
    --opacity-50: rgba(0, 0, 0, 0.5);
}

/* =====================================================
   PRODUCT CARD (tc-tile) — Exact match
   ===================================================== */

/* grid wrapper */
.product.tc-tile-col {
    display: flex;
    align-items: stretch;
}

.tc-tile {
    /* shape */
    border-radius: var(--card-radius);
    border: 1px solid var(--card-border);
    background-color: var(--card-bg);
    /* layout */
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    max-width: 360px;
    margin: 0 auto;
    padding: 20px;
    position: relative;
    /* NO transform/translate — only border+shadow change */
    transition: 
        box-shadow var(--transition-base),
        border-color var(--transition-base);
    box-shadow: var(--card-shadow);
}

/* HOVER — only deepen shadow + subtle border, NO movement */
.tc-tile:hover {
    box-shadow: var(--card-shadow-hover);
    border-color: #d0d0d0;
}

/* ---- Card Top Row ---- */
.tc-tile__top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4px;
    width: 100%;
}

/* brewing icon circle */
.tc-tile__top .w-8.h-8 {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: var(--black-4, #f5f5f5);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* category text */
.tc-tile__top .text-\[12px\] {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    font-weight: 700;
    color: rgba(0,0,0,0.45);
}

/* ---- Rating area ---- */
.tc-tile-rating {
    display: flex;
    align-items: center;
    gap: 2px;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    color: #000;
}

/* ---- Title section ---- */
.tc-tile__title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    min-height: 80px;
    width: 100%;
    position: relative;
    z-index: 2;
    gap: 4px;
    margin-bottom: 4px;
}

/* product name link */
.tc-tile__title a {
    font-size: 18px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.15;
    color: #000;
    text-decoration: none;
    transition: color var(--transition-base);
    display: block;
}

.tc-tile:hover .tc-tile__title a {
    color: #2d1a0e;
}

/* processing method subtitle */
.tc-tile__title .text-\[14px\].text-\[var\(--black-50\)\] {
    font-size: 13px;
    color: rgba(0,0,0,0.45);
    margin-top: 3px;
    display: block;
}

/* ---- Badges ---- */
.tc-badge {
    display: inline-block;
    padding: 2px 7px;
    border-radius: 4px;             /* rectangle, not full pill */
    font-size: 10px;
    font-weight: 700;
    text-transform: lowercase;
    letter-spacing: 0.03em;
    color: white;
    white-space: nowrap;
    line-height: 1.4;
}

.tc-badge--new {
    background-color: #000;         /* original site uses black */
    color: #fff;
}
.tc-badge--popular {
    background-color: #000;
    color: #fff;
}
.tc-badge--special {
    background-color: #000;
    color: #fff;
}

/* ---- Product image ---- */
.tc-tile__picture {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 6px 0;
    position: relative;
}

.tc-tile__picture a {
    display: block;
    width: 143px;
    height: 143px;
    position: relative;
    margin: 0 auto;
}

.tc-tile__picture img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    /* no scale/transform on hover */
}

/* ---- Description & Tooltip ---- */
.tc-tile__description {
    width: 100%;
    margin-bottom: auto;
    padding-bottom: 10px;
    text-align: center;
    position: relative;
    z-index: 10;
}

.tc-card-process {
    position: relative;
    display: inline-block;
    cursor: help;
}

.tc-tooltip__content {
    position: absolute;
    bottom: calc(100% + 10px);
    left: 50%;
    transform: translateX(-50%);
    width: 240px;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 12px;
    padding: 12px;
    box-shadow: 0 10px 25px rgba(0,0,0,0.15);
    z-index: 100;
    font-size: 13px;
    line-height: 1.4;
    color: #444;
    pointer-events: none;
    text-align: left;
    text-transform: none;
    font-weight: 400;
}

/* Tooltip arrow */
.tc-tooltip__content::after {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border-width: 6px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

.tc-tooltip__btn {
    font-size: 13px;
    color: rgba(0,0,0,0.45);
    border-bottom: 1px dashed rgba(0,0,0,0.2);
    transition: color 0.2s;
}

.tc-tooltip__btn:hover {
    color: #000;
}

/* Fix price pill visibility */
.tc-btn-pay .current-price-val {
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 2px;
}

.tc-btn-pay .rub {
    font-size: 14px;
    opacity: 0.8;
}


/* ---- Score bars (density/acidity/sweetness) ---- */
.tc-tile__scale {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 14px;
}

.tc-tile__scale > div {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.tc-tile__scale > div > .text-\[13px\] {
    font-size: 12px;
    color: rgba(0,0,0,0.50);
    min-width: 80px;
}

/* score segment dots */
.tc-tile__scale .w-5.h-1\.5,
.tc-tile__scale .w-5.h-1\.5.rounded-full {
    width: 20px;
    height: 6px;
    border-radius: 999px;
    transition: background-color 0.2s;
}

/* ---- Option row (weight + grind selector) ---- */
.tc-tile__option {
    display: flex;
    align-items: center;
    width: 100%;
    flex-wrap: nowrap;
    gap: 4px;
    margin-bottom: 0;
}

/* ---- Weight pills ---- */
.tc-weight {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 32px;
    padding: 4px 10px 2px;
    border-radius: 8px;
    border: 1px solid transparent;
    background: transparent;
    cursor: pointer;
    position: relative;
    z-index: 1;
    transition:
        background-color var(--transition-base),
        border-color var(--transition-base),
        transform 0.1s ease;
    font-size: 13px;
}

.tc-weight:hover {
    background-color: rgba(0,0,0,0.05);
}

.tc-weight.active {
    background-color: rgba(0,0,0,0.06);
    border-color: rgba(0,0,0,0.15);
}

.tc-weight:active {
    transform: scale(0.93);
}

.tc-weight__text {
    font-size: 13px;
    line-height: 1.2;
    font-weight: 500;
}

.tc-weight__sup {
    color: rgba(0,0,0,0.5);
    font-size: 8px;
    margin-left: -10px;
    margin-right: -7px;
    margin-top: -12px;
    position: relative;
    top: -4px;
}

/* ---- Bottom row (price + CTA) ---- */
.tc-tile__bottom {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
    margin-top: auto;
    padding-top: 12px;
}

/* old/new prices */
.tc-tile__bottom .text-\[14px\].line-through {
    font-size: 13px;
    color: rgba(0,0,0,0.35);
    text-decoration: line-through;
    line-height: 1;
    margin-bottom: 4px;
    display: block;
}

.tc-tile__bottom .text-\[24px\] {
    font-size: 22px;
    font-weight: 900;
    line-height: 1;
    color: #000;
}

/* ---- Add to Cart button ---- */
.tc-btn-pay {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    background: #000;
    color: #fff;
    border: none;
    border-radius: 14px;
    min-height: 44px;
    padding: 0 14px;
    font-family: inherit;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
    transition:
        background-color var(--transition-base),
        transform 0.1s ease,
        box-shadow var(--transition-base);
    box-shadow: 0 4px 12px rgba(0,0,0,0.12);
    white-space: nowrap;
}

.tc-btn-pay:hover {
    background: #3d2512;
    box-shadow: 0 8px 24px rgba(0,0,0,0.18);
}

.tc-btn-pay:active {
    transform: scale(0.94);
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
}

/* ---- Wishlist / Compare action buttons ---- */
.tc-tile__bottom--btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    border: 1px solid rgba(0,0,0,0.1);
    background: transparent;
    cursor: pointer;
    transition: background-color 0.2s, border-color 0.2s;
    color: #000;
    padding: 0;
}

.tc-tile__bottom--btn:hover {
    background: rgba(0,0,0,0.04);
}

/* Active = in wishlist → filled black heart, no background fill */
.tc-tile__bottom--btn.is-active {
    background: transparent !important;
    border-color: #000 !important;
}

.tc-tile__bottom--btn.is-active svg {
    /* Explicitly managed in templates */
}

.tc-tile__bottom--btn svg {
    transition: all 0.2s ease;
}

/* =====================================================
   CATALOG PAGE GRID
   ===================================================== */

/* Product grid in catalog */
.catalog-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
}

@media (max-width: 1280px) {
    .catalog-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .catalog-grid {
        grid-template-columns: 1fr;
    }
}

/* In catalog, product card uses col-span */
.catalog-grid .product.tc-tile-col {
    width: 100%;
}

/* =====================================================
   HOME PAGE SECTIONS — Force 4-col grid for cards
   ===================================================== */

/* The home page uses grid-cols-12 with col-span-3/4/6 classes.
   We override to ensure 4 cards per row on desktop. */

/* Tasty Coffee's grid: grid-cols-12 + col-span-3 = 4 per row */
/* Make sure cards display correctly at all breakpoints */

/* Min card height to prevent collapsed cards */
.tc-tile {
    min-height: 460px;
}

/* =====================================================
   SECTION HEADERS ("НОВОЕ >", "ПОПУЛЯРНОЕ >")
   ===================================================== */

.section-heading {
    font-size: 40px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.15;
    letter-spacing: 0.01em;
    color: #000;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 20px;
}

.section-heading:hover span {
    text-decoration: underline;
    text-underline-offset: 8px;
}

/* =====================================================
   CATALOG SIDEBAR FILTER
   ===================================================== */

.tc-reset-filters {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    margin-bottom: 16px;
    background: #f5f5f7;
    border-radius: 12px;
    color: rgba(0, 0, 0, 0.6);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
    border: none;
}
.tc-reset-filters:hover {
    background: #ebebeb;
    color: #000;
}
.tc-reset-filters svg {
    flex-shrink: 0;
}

.catalog-sidebar {
    background: #fff;
    border-radius: 20px;
    padding: 24px;
    border: 1px solid var(--card-border);
}

.catalog-sidebar h3 {
    font-size: 18px;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: 16px;
    color: #000;
}

/* Category links */
.catalog-sidebar ul li a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 6px 0;
    font-size: 14px;
    color: rgba(0,0,0,0.5);
    text-decoration: none;
    border-radius: 8px;
    transition: color var(--transition-base);
}

.catalog-sidebar ul li a:hover,
.catalog-sidebar ul li a.active-cat {
    color: #000;
}

.catalog-sidebar ul li a[class*="font-bold"] {
    color: #000;
    font-weight: 700;
}

/* Roast filter buttons */
.catalog-sidebar a.roast-filter {
    display: block;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 14px;
    color: #000;
    text-decoration: none;
    background: rgba(0,0,0,0.04);
    transition:
        background-color var(--transition-base),
        color var(--transition-base);
    margin-bottom: 6px;
}

.catalog-sidebar a.roast-filter:hover {
    background: rgba(0,0,0,0.08);
}

/* Sorting select */
.sort-select {
    background: #fff;
    border: 1px solid var(--card-border);
    border-radius: 10px;
    padding: 8px 16px;
    font-size: 14px;
    color: #000;
    cursor: pointer;
    transition: border-color var(--transition-base);
    appearance: none;
    -webkit-appearance: none;
}

.sort-select:hover {
    border-color: rgba(0,0,0,0.3);
}

.sort-select:focus {
    outline: none;
    border-color: #000;
}

/* =====================================================
   PRODUCT DETAIL PAGE (single page)
   ===================================================== */

/* Main product image container */
.detail-image-box {
    background: rgba(0,0,0,0.03);
    border-radius: 20px;
    overflow: hidden;
    border: 1px solid var(--card-border);
}

/* Detail page weight buttons */
.detail-weight .tc-weight {
    padding: 8px 18px;
    border: 1px solid var(--card-border);
    border-radius: 10px;
    min-height: 40px;
    font-size: 14px;
    background: rgba(0,0,0,0.03);
    transition:
        background var(--transition-base),
        border-color var(--transition-base),
        transform 0.1s;
}

.detail-weight .tc-weight:hover {
    background: rgba(0,0,0,0.07);
    border-color: rgba(0,0,0,0.25);
}

.detail-weight .tc-weight.active {
    background: rgba(0,0,0,0.08);
    border-color: rgba(0,0,0,0.8);
    font-weight: 700;
}

/* Grind choices on detail page */
.tc-grind {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    border-radius: 10px;
    border: 1px solid var(--card-border);
    font-size: 14px;
    cursor: pointer;
    background: rgba(0,0,0,0.03);
    transition:
        background var(--transition-base),
        border-color var(--transition-base);
}

.tc-grind:hover {
    background: rgba(0,0,0,0.07);
    border-color: rgba(0,0,0,0.25);
}

.tc-grind.active {
    background: rgba(0,0,0,0.06);
    border-color: #000;
    font-weight: 700;
}

/* Price + Add to cart box on detail */
.detail-purchase-box {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 24px;
    background: #fff;
    border-radius: 20px;
    border: 1px solid var(--card-border);
    box-shadow: 0 4px 20px rgba(0,0,0,0.05);
}

/* detail price */
.detail-price {
    font-size: 36px;
    font-weight: 900;
    line-height: 1;
    color: #000;
}

.detail-old-price {
    font-size: 18px;
    text-decoration: line-through;
    color: rgba(0,0,0,0.38);
    margin-right: 8px;
}

/* Scale bars on detail page */
.tc-tile__scale .w-6.h-2,
.tc-tile__scale .w-6.h-2.rounded-full {
    width: 24px;
    height: 8px;
    border-radius: 999px;
}

/* Detail page tabs */
.detail-tab-btn {
    position: relative;
    font-size: 16px;
    font-weight: 600;
    padding-bottom: 16px;
    color: rgba(0,0,0,0.45);
    background: transparent;
    border: none;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition:
        color var(--transition-base),
        border-color var(--transition-base);
}

.detail-tab-btn.active {
    color: #000;
    border-bottom-color: #000;
}

.detail-tab-btn:hover {
    color: #000;
}

/* Review card */
.review-card {
    background: rgba(0,0,0,0.03);
    border-radius: 16px;
    padding: 20px 24px;
    border: 1px solid var(--card-border);
    transition: border-color var(--transition-base);
}

.review-card:hover {
    border-color: rgba(0,0,0,0.15);
}

/* Thumbnail images in product gallery */
.thumb-img {
    width: 64px;
    height: 64px;
    border-radius: 10px;
    border: 1px solid var(--card-border);
    overflow: hidden;
    cursor: pointer;
    transition:
        border-color var(--transition-base),
        transform 0.15s ease;
}

.thumb-img:hover {
    border-color: rgba(0,0,0,0.5);
    transform: scale(1.05);
}

.thumb-img.active {
    border-color: #000;
}

/* =====================================================
   RESPONSIVE FIXES
   ===================================================== */

@media (max-width: 767px) {
    .tc-tile {
        padding: 14px;
        max-width: 100%;
    }
    .tc-tile__title a {
        font-size: 16px;
    }
    .tc-tile__bottom .text-\[24px\] {
        font-size: 20px;
    }
    .tc-btn-pay {
        min-height: 40px;
        padding: 0 12px;
        font-size: 14px;
    }
}

/* =====================================================
   SPECIAL CARD IN "СИЛЬНАЯ КОМАНДА" DARK BLOCK
   ===================================================== */

.tc-team-card {
    background: #000;
    color: #fff;
    border-radius: 16px;
    padding: 28px;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-direction: column;
    height: 100%;
}

.tc-team-card h3 {
    font-size: 28px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 1.1;
    color: #fff;
    margin-bottom: 16px;
}

.tc-team-card p {
    font-size: 14px;
    line-height: 1.6;
    color: rgba(255,255,255,0.7);
}

.tc-gift-card {
    background: var(--black);
    border-radius: 16px;
    color: var(--white);
    display: flex;
    flex-direction: column;
    gap: 22px;
    height: 100%;
    justify-content: center;
    min-height: 460px;
    overflow: hidden;
    padding: 28px;
    position: relative;
    width: 100%;
}

.tc-gift-card svg {
    color: var(--white);
    flex: 0 0 auto;
    height: 32px;
    width: 32px;
}

.tc-gift-card__title {
    color: var(--white);
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif;
    font-size: 30px;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.08;
    margin: 0;
    max-width: 100%;
    overflow-wrap: break-word;
    text-transform: uppercase;
}

.tc-gift-card__text {
    color: rgba(255, 255, 255, 0.74);
    display: flex;
    flex-direction: column;
    font-size: 14px;
    gap: 14px;
    line-height: 20px;
}

.tc-gift-card__text p {
    margin: 0;
}

.tc-register-card {
    align-items: center;
    background: var(--black-4);
    border-radius: 24px;
    color: var(--black);
    display: flex;
    justify-content: center;
    min-height: 127px;
    overflow: hidden;
    position: relative;
    text-decoration: none;
    width: 100%;
}

.tc-register-card__inner {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 18px;
    justify-content: center;
}

.tc-register-card img {
    height: auto;
    opacity: 0.18;
    width: 96px;
}

.tc-register-card span span {
    color: rgba(0, 0, 0, 0.42);
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif;
    font-size: 32px;
    letter-spacing: 0;
    line-height: 1;
    text-transform: uppercase;
}

@media (min-width: 758px) {
    .tc-register-card {
        min-height: 317px;
    }
}

@media (max-width: 374px) {
    .tc-register-card span span {
        font-size: 26px;
    }
}

@media (max-width: 1099px) {
    .tc-gift-card {
        min-height: 420px;
        padding: 24px;
    }

    .tc-gift-card__title {
        font-size: 28px;
    }
}

@media (max-width: 374px) {
    .tc-gift-card {
        padding: 20px;
    }

    .tc-gift-card__title {
        font-size: 24px;
    }
}

/* =====================================================
   BREADCRUMBS
   ===================================================== */

.tc-breadcrumb {
    display: flex;
    align-items: center;
}

.tc-breadcrumb-list {
    display: flex;
    align-items: center;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
    flex-wrap: wrap;
}

.tc-breadcrumb-item {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: rgba(0,0,0,0.45);
}

.tc-breadcrumb-item:not(:last-child)::after {
    content: '/';
    color: rgba(0,0,0,0.25);
}

.tc-breadcrumb__text {
    text-decoration: none;
    color: inherit;
    transition: color 0.2s;
}

.tc-breadcrumb__text:hover {
    color: #000;
}

.tc-breadcrumb-item:last-child .tc-breadcrumb__text {
    color: #000;
    font-weight: 500;
}

/* =====================================================
   PAGINATION
   ===================================================== */

.pagination-btn {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: #fff;
    border: 1px solid var(--card-border);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: #000;
    text-decoration: none;
    transition:
        background var(--transition-base),
        border-color var(--transition-base);
    cursor: pointer;
}

.pagination-btn:hover {
    background: rgba(0,0,0,0.05);
    border-color: rgba(0,0,0,0.2);
}

.pagination-btn.active {
    background: #000;
    color: #fff;
    border-color: #000;
}

/* =====================================================
   GRIND SELECT DROPDOWN
   ===================================================== */

.tc-select__field--select {
    border-radius: 8px !important;
    height: 32px !important;
    font-size: 13px !important;
    border: 1px solid var(--card-border) !important;
    background: rgba(0,0,0,0.03) !important;
    transition: border-color var(--transition-base) !important;
}

.tc-select__field--select:hover {
    border-color: rgba(0,0,0,0.25) !important;
    background: rgba(0,0,0,0.06) !important;
}

/* =====================================================
   AVAILABILITY INDICATOR
   ===================================================== */

.in-stock-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #22c55e;
    animation: pulse-green 2s ease-in-out infinite;
    display: inline-block;
}

@keyframes pulse-green {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.6; transform: scale(0.8); }
}

/* =====================================================
   SMOOTH GLOBAL TRANSITIONS
   ===================================================== */

*, *::before, *::after {
    box-sizing: border-box;
}

a {
    -webkit-tap-highlight-color: transparent;
}

button {
    -webkit-tap-highlight-color: transparent;
}

/* scroll smoothly */
html {
    scroll-behavior: smooth;
}


/* Flavor Badges for Integrated Look */
.flavor-badges-container {
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #000;
}

.descriptor-badge {
    display: inline-block !important;
    padding: 1px 8px !important;
    border-radius: 4px !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    margin: 0 1px !important;
    box-shadow: none !important;
}

/* =====================================================
   TASTY COFFEE PRODUCT TILE — pixel-close override
   ===================================================== */

:root {
    --black: #000;
    --white: #fff;
    --black-4: #f5f5f7;
    --black-5: #f0f0f0;
    --black-6: #e8e8e8;
    --black-16: rgba(0, 0, 0, 0.16);
    --black-50: rgba(0, 0, 0, 0.5);
    --black-80: rgba(0, 0, 0, 0.8);
    --ts: 0.3s;
}

.tc-tile.product-card {
    background: var(--white); /* Removed !important to allow index override */
    border: 0 !important;
    border-radius: 16px !important;
    box-shadow: none !important;
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    max-width: 343px !important;
    min-height: 0 !important;
    padding: 20px !important;
    position: relative !important;
    width: 100% !important;
}

.tc-tile.product-card:hover {
    border-color: transparent !important;
    box-shadow: none !important;
}

.tc-tile.product-card a {
    text-decoration: none;
}

.tc-tile.product-card button {
    appearance: none;
    border: 0;
    cursor: pointer;
    font: inherit;
    margin: 0;
    padding: 0;
}

.tc-tile.product-card svg {
    color: currentColor;
    fill: currentColor;
}

.tc-tile.product-card .tc-tile__top {
    align-items: center !important;
    display: flex !important;
    justify-content: flex-start !important;
    margin-bottom: 4px !important;
    width: 100% !important;
}

.tc-card-used-for {
    color: var(--black-50);
    font-size: 14px;
    line-height: 1;
    margin-right: auto;
    padding: 1px 0;
    text-transform: lowercase;
}

.tc-card-meta {
    align-items: center;
    display: flex;
    gap: 4px;
}

.tc-tile.product-card .tc-tile-rating,
.tc-card-comments {
    align-items: center;
    background: transparent;
    color: var(--black);
    display: flex;
    font-size: 14px;
    gap: 2px;
    line-height: 1;
    min-height: 16px;
}

.tc-tile.product-card .tc-tile-rating svg,
.tc-card-comments svg {
    height: 16px;
    margin-right: 2px;
    width: 16px;
}

.tc-tile.product-card .tc-tile__title {
    align-items: flex-start !important;
    display: flex !important;
    gap: 4px !important;
    justify-content: space-between !important;
    margin: 0 !important;
    min-height: 96px !important;
    position: relative !important;
    width: 100% !important;
    z-index: 20 !important;
}

.tc-card-name-wrap {
    align-items: flex-start;
    display: flex;
    flex-direction: column;
    margin-right: auto;
    min-width: 0;
}

.tc-card-title-link {
    color: var(--black) !important;
    display: block !important;
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif !important;
    font-size: 20px !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    margin-bottom: 6px !important;
    max-width: 168px;
    overflow-wrap: anywhere;
    text-transform: uppercase !important;
}

.tc-tile.product-card:hover .tc-card-title-link {
    color: var(--black) !important;
}

.tc-card-process {
    align-items: center;
    color: var(--black-50);
    display: flex;
    font-size: 14px;
    line-height: 1.2;
    margin: 0;
    text-transform: lowercase;
}

.tc-card-flags {
    align-items: flex-end;
    display: flex;
    flex-direction: column;
    min-width: 100px;
    padding-top: 2px;
}

.tc-card-week-special {
    color: var(--white) !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    gap: 1px !important;
    font-size: 14px;
    line-height: normal;
    margin-bottom: 6px;
    position: relative;
    text-transform: uppercase;
    font-family: "DIN Pro Black", sans-serif;
    width: 100%;
}

.tc-week-special {
    background-color: var(--black);
    color: var(--white);
    padding: 3px 8px;
    border-radius: 4px;
    width: fit-content;
    white-space: nowrap;
}

.tc-card-recommend {
    color: var(--black-50);
    cursor: pointer;
    font-size: 14px;
    line-height: 1.2;
    margin: 0;
    text-align: right;
}

.tc-tile.product-card .tc-tile__picture {
    display: block !important;
    margin: -6px 0 6px !important;
    position: relative !important;
    width: 100% !important;
}

.tc-tile.product-card .tc-tile__picture a,
.tc-tile.product-card .tc-tile__picture span {
    display: block !important;
    height: 143px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    position: relative !important;
    width: 143px !important;
}

.tc-tile.product-card .tc-tile__picture picture {
    display: block;
    height: 100%;
    object-fit: contain;
    width: 100%;
}

.tc-tile.product-card .tc-tile__picture img {
    display: block;
    height: 100% !important;
    max-height: 143px;
    max-width: 143px;
    object-fit: contain !important;
    width: 100% !important;
}

.press-container {
    transform: translateZ(0px) scale(1);
    transition: transform 0.15s ease-in-out;
    will-change: transform;
}

.tc-tile.product-card:hover .press-container {
    transform: scale(1.05);
}

.tc-tile.product-card .tc-tile__picture a.press-container:hover span img {
    transform: scale(1);
}

.tc-badge-popular,
.tc-badge-new {
    display: block !important;
    margin-bottom: 4px !important;
}

.tc-card-flags .tc-week-special {
    margin-bottom: 3px;
}

.tc-tile.product-card .tc-tile__description {
    margin-bottom: auto !important;
    padding-bottom: 14px !important;
    position: relative !important;
    text-align: center !important;
    width: 100% !important;
    z-index: 10 !important;
}

.tc-tile.product-card .tc-tile__description p {
    color: var(--black) !important;
    font-size: 14px !important;
    line-height: 20px !important;
    margin: 0 !important;
}

.tc-tile.product-card .descriptor-badge {
    border-radius: 4px !important;
    box-shadow: none !important;
    cursor: auto !important;
    display: inline-block !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    letter-spacing: 0 !important;
    line-height: 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    text-transform: none !important;
    z-index: 1 !important;
}

.tc-tile.product-card .descriptor-badge::after {
    background: inherit;
    border-radius: 5px;
    content: "";
    height: 100%;
    left: -3px;
    position: absolute;
    top: 0;
    width: calc(100% + 6px);
    z-index: -1;
}

@media (min-width: 758px) {
    /* When NOT hovering, strip the backgrounds and force black text */
    .tc-tile.product-card:not(:hover) .tc-tile__description .descriptor-badge {
        background: transparent !important;
        color: var(--black) !important;
    }

    /* Transition for smooth "lighting up" effect */
    .tc-tile.product-card .tc-tile__description .descriptor-badge {
        transition: background 0.3s ease, color 0.3s ease;
    }
}

.tc-tile.product-card .tc-tile__scale {
    display: grid !important;
    gap: 20px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin: 0 0 24px !important;
    width: 100% !important;
}

.tc-tile.product-card .tc-tile__scale > div {
    display: block !important;
}

.tc-scale-label {
    color: var(--black);
    font-size: 14px;
    line-height: 1.2;
    margin-bottom: 4px;
}

.tc-progress {
    background: #dedede;
    border-radius: 3px;
    display: flex;
    height: 3px;
    overflow: hidden;
    width: 100%;
}

.tc-progress__object {
    background: var(--black);
    border-radius: inherit;
    display: block;
    height: 100%;
    transition: var(--ts);
}

.tc-tile.product-card .tc-tile__option {
    align-items: center !important;
    display: flex !important;
    gap: 6px !important;
    margin: 0 !important;
    width: 100% !important;
}

.tc-card-weights {
    align-items: center;
    display: flex;
    margin-bottom: 8px;
    margin-right: 6px;
    white-space: nowrap;
}

.tc-tile.product-card .tc-weight {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 8px !important;
    box-shadow: none !important;
    color: var(--black) !important;
    cursor: pointer;
    display: inline-flex !important;
    justify-content: center !important;
    min-height: 32px !important;
    padding: 4px 10px 2px !important;
    position: relative !important;
    transform: none !important;
    transition: var(--ts) !important;
    z-index: 1;
}

.tc-tile.product-card .tc-weight.active {
    background: var(--black-4) !important;
}

.tc-tile.product-card .tc-weight__text {
    font-size: 14px !important;
    font-weight: 400 !important;
    line-height: 1.2 !important;
}

.tc-tile.product-card .tc-weight__sup {
    color: var(--black-50) !important;
    font-family: "Gotham Pro Medium", Arial, sans-serif !important;
    font-size: 8px !important;
    letter-spacing: 0.06rem !important;
    line-height: 1.2 !important;
    margin-left: -10px !important;
    margin-right: -7px !important;
    margin-top: -12px !important;
    position: static !important;
}

.tc-tile.product-card .tc-tile__option--select {
    margin-bottom: 8px;
    margin-left: auto;
    max-width: calc(100% - 142px);
    position: relative;
    width: auto;
}

.tc-tile.product-card .tc-select {
    display: inline-block;
    max-width: 100%;
    position: relative;
    width: auto;
}

.tc-tile.product-card .tc-select__field {
    position: relative;
}

.tc-tile.product-card .tc-select__field--select {
    align-items: center !important;
    background: var(--black-4) !important;
    border: 0 !important;
    border-radius: 8px !important;
    color: var(--black) !important;
    display: flex !important;
    font-size: 14px !important;
    height: 32px !important;
    justify-content: flex-start !important;
    line-height: 1.3 !important;
    max-width: 100% !important;
    min-width: 104px !important;
    padding: 2px 32px 2px 12px !important;
    position: relative !important;
    text-align: left;
    white-space: nowrap;
    width: auto !important;
}

.tc-tile.product-card .tc-select__field--select:hover {
    background: var(--black-4) !important;
    border: 0 !important;
}

.tc-tile.product-card .select-text {
    display: block;
    max-width: 96px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.tc-tile.product-card .tc-select__field--arr {
    height: 12px;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
}

.tc-tile.product-card .tc-select__field--arr::before {
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' fill='none' viewBox='0 0 12 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='%23000' stroke-miterlimit='10' stroke-width='1.7' d='M10.388 4.51 6.006 8.891 1.623 4.509'/%3E%3C/svg%3E");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 12px 12px;
    content: "";
    display: block;
    height: 12px;
    width: 12px;
}

.tc-tile.product-card .tc-select__field--dropdown {
    background: var(--white);
    border: 0;
    border-radius: 8px;
    bottom: calc(100% + 6px);
    inset: auto 0 calc(100% + 6px) auto !important;
    box-shadow: 0 4px 28px rgba(0, 0, 0, 0.12);
    color: var(--black);
    height: auto;
    left: auto;
    max-height: 310px;
    min-width: 160px;
    overflow-y: auto;
    overflow-x: hidden;
    position: absolute;
    right: 0;
    width: max-content;
    max-width: 240px;
    z-index: 40;
}

.tc-tile.product-card .dropdown-list li {
    cursor: pointer;
    font-size: 14px;
    line-height: 16px;
    padding: 5px 12px;
    white-space: nowrap;
}

.tc-tile.product-card .tc-select__field--dropdown.hidden {
    display: none !important;
}

.tc-tile.product-card .dropdown-list {
    list-style: none;
    margin: 0;
    padding: 4px 0;
}

.tc-tile.product-card .dropdown-list li {
    cursor: pointer;
    font-size: 14px;
    line-height: 16px;
    padding: 5px 12px;
}

.tc-tile.product-card .dropdown-list li:hover,
.tc-tile.product-card .dropdown-list li.active {
    background: var(--black-5);
}

.tc-tile.product-card .tc-tile__bottom {
    align-items: flex-end !important;
    display: flex !important;
    justify-content: space-between !important;
    margin-top: 0 !important;
    padding-top: 0 !important;
    width: 100% !important;
}

.tc-card-buy-wrap {
    align-items: center;
    display: flex;
    min-width: 0;
}

.tc-tile.product-card .tc-btn-pay {
    align-items: center !important;
    background: var(--black) !important;
    border: 0 !important;
    border-radius: 12px !important;
    box-shadow: none !important;
    color: var(--white) !important;
    display: flex !important;
    font-family: "DIN Pro Medium", "Arial Narrow", Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    gap: 0 !important;
    justify-content: center !important;
    line-height: 1 !important;
    min-height: 44px !important;
    min-width: 0 !important;
    padding: 0 12px !important;
    text-transform: uppercase !important;
    transition: 0.3s !important;
    white-space: nowrap !important;
}

.tc-tile.product-card .tc-btn-pay:not(.active):hover {
    background: var(--black-80) !important;
}

.tc-tile.product-card .tc-btn-pay:not(.active):active {
    background: var(--black-50) !important;
    transform: none !important;
}

.tc-tile.product-card .text-cross-out {
    color: var(--black-50) !important;
    font-size: 14px !important;
    letter-spacing: 0.7px !important;
    line-height: 1 !important;
    margin-right: 6px !important;
    text-decoration: line-through !important;
}

.tc-tile.product-card .text-nowrap {
    align-items: center;
    display: inline-flex;
    white-space: nowrap;
}

.tc-tile.product-card .rub {
    font-family: "Gotham Pro", Arial, sans-serif;
}

.tc-cart-icon {
    margin-left: 6px;
}

.tc-cart-icon svg {
    height: 22px;
    margin-left: 6px;
    margin-top: -2px;
    width: 22px;
}

.tc-card-actions {
    display: flex;
    justify-content: flex-end;
    margin-left: 12px;
    width: 104px;
}

.tc-tile.product-card .tc-tile__bottom--btn {
    align-items: center !important;
    background: var(--black-4) !important;
    border-radius: 8px !important;
    cursor: pointer;
    display: flex !important;
    height: 32px !important;
    justify-content: center !important;
    transition-duration: 0.3s !important;
    width: 32px !important;
}

.tc-tile.product-card .tc-tile__bottom--btn + .tc-tile__bottom--btn {
    margin-left: 4px;
}

.tc-tile.product-card .tc-tile__bottom--btn:hover {
    background: var(--black-5) !important;
}

.tc-tile.product-card .tc-tile__bottom--btn:active {
    background: var(--black-6) !important;
}

.tc-tile.product-card .tc-tile__bottom--btn svg {
    height: 16px;
    margin: auto;
    width: 16px;
}

@media (min-width: 758px) {
    .tc-tile.product-card .tc-card-note {
        display: none !important;
    }
}

@media (max-width: 757px) {
    .tc-tile.product-card {
        max-width: 343px !important;
        padding: 20px !important;
    }

    .tc-card-title-link {
        max-width: 156px;
    }

    .tc-card-flags {
        min-width: 92px;
    }
}

@media (max-width: 360px) {
    .tc-tile.product-card {
        padding: 16px !important;
    }

    .tc-tile.product-card .tc-tile__option {
        align-items: flex-start !important;
        flex-direction: column;
    }

    .tc-tile.product-card .tc-tile__option--select {
        margin-left: 0;
        max-width: 100%;
    }
}

/* =====================================================
   DETAIL PAGE FLAVOR BADGES
   ===================================================== */

.detail-flavor-description .descriptor-badge {
    display: inline-block;
    padding: 1px 8px;
    border-radius: 4px;
    font-size: 14px;
    font-weight: 500;
    margin: 0 1px;
}

/* =====================================================
   DARK MODE OVERRIDES
   ===================================================== */
:root {
    --black: #000;
    --white: #fff;
    --black-4: #f5f5f7;
    --black-50: rgba(0,0,0,0.5);
    --black-80: rgba(0,0,0,0.8);
    --black-16: rgba(0,0,0,0.16);
}

.dark {
    --black: #ffffff;
    --white: #121212;
    --black-4: rgba(255, 255, 255, 0.08);
    --black-50: rgba(255, 255, 255, 0.5);
    --black-80: rgba(255, 255, 255, 0.8);
    --black-16: rgba(255, 255, 255, 0.16);
    --card-bg: #1e1e1e;
    --card-border: #333333;
    --tc-bg: #121212;
    --tc-text-primary: #ffffff;
}

body.dark {
    background-color: var(--white);
    color: var(--black);
}

.dark .bg-white {
    background-color: var(--white) !important;
}

.dark .bg-\[\#000\], .dark .bg-black {
    background-color: var(--black) !important;
}

.dark .text-\[var\(--black\)\], .dark .text-black {
    color: var(--black) !important;
}

.dark .text-\[var\(--white\)\], .dark .text-white {
    color: var(--white) !important;
}

.dark .text-\[var\(--black-50\)\] {
    color: var(--black-50) !important;
}

.dark .border-\[--black-80\] {
    border-color: var(--black-80) !important;
}

.dark .tc-tile__top .w-8.h-8 {
    background-color: rgba(255,255,255,0.08);
}

.dark .tc-badge--new, .dark .tc-badge--popular, .dark .tc-badge--special {
    background-color: #fff;
    color: #000;
}

.dark .tc-btn-pay {
    background: #fff;
    color: #000;
}

.dark .tc-btn-pay:hover {
    background: #ccc;
    color: #000;
}

.dark svg {
    color: var(--black);
    fill: currentColor;
}

.dark img {
    filter: brightness(0.9);
}

/* =====================================================
   PAGE ALIGNMENT FIXES — stable classes, no missing utilities
   ===================================================== */

.tc-auth-page {
    align-items: flex-start !important;
    background: #f3f3f5 !important;
    display: flex !important;
    justify-content: center !important;
    min-height: calc(100vh - 136px) !important;
    padding: 70px 16px 96px !important;
}

.tc-auth-wrap {
    margin: 0 auto !important;
    max-width: 488px !important;
    width: 100% !important;
}

.tc-auth-wrap-register {
    max-width: 432px !important;
}

.tc-auth-card {
    background: #fff !important;
    border: 0 !important;
    border-radius: 28px !important;
    box-shadow: none !important;
    padding: 32px !important;
    width: 100% !important;
}

.tc-auth-head {
    margin-bottom: 28px !important;
    text-align: left !important;
}

.tc-auth-head h1 {
    color: #000 !important;
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif !important;
    font-size: 44px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    margin: 0 0 16px !important;
    text-transform: uppercase !important;
}

.tc-auth-head p {
    color: #000 !important;
    font-size: 16px !important;
    line-height: 1.35 !important;
    margin: 0 !important;
}

.tc-auth-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
}

.tc-auth-form > * {
    margin: 0 !important;
}

.tc-auth-form label {
    color: #969caf !important;
    display: block !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: .04em !important;
    margin: 0 0 8px 8px !important;
    text-transform: uppercase !important;
}

.tc-auth-form input[type="email"],
.tc-auth-form input[type="password"],
.tc-auth-form input[type="text"],
.tc-auth-form input[type="tel"],
.tc-auth-form input:not([type]) {
    background: #f3f3f5 !important;
    border: 1px solid #dedfe6 !important;
    border-radius: 16px !important;
    color: #000 !important;
    display: block !important;
    font-size: 18px !important;
    height: 64px !important;
    outline: none !important;
    padding: 0 24px !important;
    width: 100% !important;
}

.tc-auth-form input::placeholder {
    color: #9da3b5 !important;
    opacity: 1 !important;
}

.tc-auth-form input:focus {
    background: #fff !important;
    border-color: #000 !important;
}

.tc-auth-submit {
    align-items: center !important;
    background: #000 !important;
    border: 0 !important;
    border-radius: 20px !important;
    color: #fff !important;
    display: flex !important;
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif !important;
    font-size: 18px !important;
    height: 78px !important;
    justify-content: center !important;
    letter-spacing: .03em !important;
    margin-top: 8px !important;
    text-transform: uppercase !important;
    width: 100% !important;
}

.tc-auth-switch {
    border-top: 1px solid #e6e6e6 !important;
    margin: 10px -32px 0 !important;
    padding: 28px 32px 0 !important;
    text-align: center !important;
}

.tc-auth-switch p,
.tc-auth-switch a {
    color: #000 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

.tc-auth-social {
    display: grid !important;
    gap: 12px !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    margin-top: 18px !important;
}

.tc-auth-social a {
    align-items: center !important;
    border: 1px solid #dedfe6 !important;
    border-radius: 16px !important;
    display: flex !important;
    height: 60px !important;
    justify-content: center !important;
}

.tc-catalog-page {
    background: #f3f3f5 !important;
}

.tc-catalog-container {
    margin: 0 auto !important;
    max-width: 1440px !important;
    padding: 36px 50px 90px !important;
    width: 100% !important;
}

.tc-catalog-breadcrumbs {
    color: rgba(0, 0, 0, .5) !important;
    display: flex !important;
    font-size: 16px !important;
    gap: 10px !important;
    margin-bottom: 36px !important;
}

.tc-catalog-title {
    color: #000 !important;
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif !important;
    font-size: 36px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    margin: 0 0 28px !important;
    text-transform: uppercase !important;
}

.tc-catalog-toolbar {
    align-items: center !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin-bottom: 32px !important;
}

.tc-catalog-toolbar .ml-auto {
    margin-left: auto !important;
}

.tc-catalog-chip {
    align-items: center !important;
    background: #fff !important;
    border-radius: 10px !important;
    color: #0065ff !important;
    display: inline-flex !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    height: 42px !important;
    padding: 0 18px !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.tc-catalog-chip.bg-black,
.tc-catalog-chip.text-white {
    background: #000 !important;
    color: #fff !important;
}

.tc-catalog-sort {
    background: #fff !important;
    border: 1px solid #dedfe6 !important;
    border-radius: 10px !important;
    color: #000 !important;
    font-size: 16px !important;
    height: 42px !important;
    min-width: 168px !important;
    padding: 0 16px !important;
}

#catalog-layout {
    align-items: start !important;
    display: grid !important;
    gap: 32px !important;
    grid-template-columns: 280px minmax(0, 1fr) !important;
    width: 100% !important;
    position: relative;
    z-index: 1;
}

.tc-catalog-sidebar {
    position: sticky !important;
    top: 132px !important;
    width: 280px !important;
}

.tc-catalog-filter-card {
    background: #fff !important;
    border: 0 !important;
    border-radius: 24px !important;
    box-shadow: none !important;
    padding: 24px !important;
}

.tc-catalog-filter-card h3 {
    color: #000 !important;
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif !important;
    font-size: 20px !important;
    line-height: 1 !important;
    margin: 0 !important;
}

.tc-catalog-filter-card h4 {
    color: #000 !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0 !important;
    margin: 0 0 12px !important;
    text-transform: uppercase !important;
}

.tc-catalog-filter-card a {
    text-decoration: none !important;
}

.tc-catalog-products {
    min-width: 0 !important;
    width: 100% !important;
}

.tc-product-list-head {
    display: none !important;
}

#product-grid.tc-product-grid {
    display: grid !important;
    gap: 20px !important;
    grid-template-columns: repeat(3, 1fr) !important;
    width: 100% !important;
}

.tc-product-cell {
    display: flex !important;
    min-width: 0 !important;
}

.tc-product-cell .tc-tile.product-card {
    max-width: 343px !important;
}

.tc-reviews-section,
.tc-newsletter-section {
    background: #f3f3f5 !important;
    margin: 0 !important;
    padding: 52px 0 !important;
}

.tc-reviews-section .container,
.tc-newsletter-section .container {
    margin: 0 auto !important;
    max-width: 1340px !important;
    padding: 0 50px !important;
    width: 100% !important;
}

.tc-reviews-head {
    align-items: flex-start !important;
    display: flex !important;
    justify-content: space-between !important;
    margin-bottom: 38px !important;
}

.tc-reviews-head h2 {
    color: #000 !important;
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif !important;
    font-size: 44px !important;
    line-height: 1 !important;
    margin: 0 !important;
    text-transform: uppercase !important;
}

.tc-reviews-stats {
    display: flex !important;
    gap: 64px !important;
    text-align: center !important;
}

.tc-reviews-stats p:first-child {
    color: #000 !important;
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif !important;
    font-size: 36px !important;
    line-height: 1 !important;
    margin: 0 0 8px !important;
}

.tc-reviews-grid {
    display: grid !important;
    gap: 16px !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.tc-empty-reviews {
    align-items: center !important;
    background: #fff !important;
    border-radius: 20px !important;
    color: #000 !important;
    display: flex !important;
    font-size: 18px !important;
    grid-column: span 2 !important;
    justify-content: center !important;
    min-height: 78px !important;
    padding: 0 24px !important;
    text-align: center !important;
}

.tc-newsletter-section {
    background: #fff !important;
    border-top: 1px solid #dedfe6 !important;
}

.tc-newsletter-shell {
    align-items: center !important;
    display: grid !important;
    gap: 56px !important;
    grid-template-columns: minmax(0, 1fr) 420px !important;
    margin: 0 auto !important;
    max-width: 1160px !important;
}

.tc-newsletter-copy h2 {
    color: #000 !important;
    font-family: "DIN Pro Black", "DIN Pro Bold Fallback", "Arial Narrow", Arial, sans-serif !important;
    font-size: 42px !important;
    line-height: 1.02 !important;
    margin: 0 0 22px !important;
    text-transform: uppercase !important;
}

.tc-newsletter-copy p {
    color: #000 !important;
    font-size: 20px !important;
    line-height: 1.35 !important;
    margin: 0 !important;
}

.tc-newsletter-form-wrap {
    width: 100% !important;
}

.tc-newsletter-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
}

.tc-newsletter-input {
    background: #f3f3f5 !important;
    border: 1px solid #dedfe6 !important;
    border-radius: 18px !important;
    color: #000 !important;
    font-size: 20px !important;
    height: 70px !important;
    outline: none !important;
    padding: 0 28px !important;
    width: 100% !important;
}

.tc-newsletter-button {
    align-items: center !important;
    background: #000 !important;
    border: 0 !important;
    border-radius: 18px !important;
    color: #fff !important;
    display: flex !important;
    font-size: 20px !important;
    font-weight: 700 !important;
    height: 68px !important;
    justify-content: center !important;
    width: 100% !important;
}

.tc-newsletter-section .absolute {
    display: none !important;
}

@media (max-width: 1099px) {
    .tc-catalog-container,
    .tc-reviews-section .container,
    .tc-newsletter-section .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    #catalog-layout {
        grid-template-columns: 1fr !important;
    }

    .tc-catalog-sidebar {
        position: static !important;
        width: 100% !important;
    }

    .tc-catalog-filter-card {
        max-height: none !important;
    }

    .tc-newsletter-shell {
        grid-template-columns: 1fr !important;
    }

    .tc-reviews-grid {
        grid-template-columns: 1fr !important;
    }

    .tc-empty-reviews {
        grid-column: auto !important;
    }
}

@media (max-width: 575px) {
    .tc-auth-page {
        padding: 32px 16px 64px !important;
    }

    .tc-auth-card {
        border-radius: 24px !important;
        padding: 24px !important;
    }

    .tc-auth-switch {
        margin-left: -24px !important;
        margin-right: -24px !important;
        padding-left: 24px !important;
        padding-right: 24px !important;
    }

    .tc-auth-head h1,
    .tc-reviews-head h2,
    .tc-newsletter-copy h2,
    .tc-catalog-title {
        font-size: 32px !important;
    }

    .tc-reviews-head {
        gap: 24px !important;
    }

    .tc-reviews-stats {
        gap: 24px !important;
    }

    #product-grid.tc-product-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =====================================================
   FULL RESPONSIVE — Mobile First Overrides
   ===================================================== */

/* ---- Global mobile fixes ---- */
*, *::before, *::after {
    box-sizing: border-box;
}

img, video, iframe {
    max-width: 100%;
}

/* Prevent horizontal overflow everywhere.
   ВАЖНО: overflow-x:hidden на body/html ломает position:sticky у шапки
   (создаёт scroll-контейнер) => «полоса» при скролле с открытым поиском.
   clip даёт тот же эффект без scroll-контейнера. */
/* body, html {
    overflow-x: clip;
} */

/* ---- Header / Navbar mobile ---- */
@media (max-width: 1099px) {
    /* Ensure search, wishlist, cart icons have good touch targets */
    .header-search button,
    .app-header-card > div {
        min-width: 40px;
        min-height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    /* Compact spacing for mobile header icons */
    #header .header-group {
        padding-left: 12px;
        padding-right: 12px;
    }
}

/* ---- Mini cart + mini wishlist on mobile ---- */
@media (max-width: 480px) {
    /* On very small screens, dropdowns take nearly full width */
    [class*="mini-wishlist"],
    .fixed.rounded-\[20px\] {
        left: 8px !important;
        right: 8px !important;
        width: auto !important;
        max-width: 100% !important;
    }
}

/* ---- Catalog page ---- */
@media (max-width: 1099px) {
    .tc-product-list-head {
        flex-direction: column;
        gap: 12px;
        align-items: flex-start !important;
    }
}

@media (max-width: 767px) {
    /* Catalog grid: 2 columns on tablet */
    .tc-product-grid {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 12px !important;
    }

    /* Product card compact on mobile */
    .tc-tile {
        padding: 12px;
        min-height: 380px;
    }

    .tc-tile__title {
        min-height: 60px;
    }

    .tc-tile__picture a {
        width: 110px;
        height: 110px;
    }

    .tc-tile__scale {
        display: none; /* hide density/acidity bars on mobile for cleaner look */
    }

    /* Sort select full-width on mobile */
    .tc-product-list-head select {
        width: 100%;
    }
}

@media (max-width: 480px) {
    /* Single column on very small phones */
    .tc-product-grid {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .tc-tile {
        max-width: 100%;
        flex-direction: row;
        min-height: auto;
        padding: 12px;
        gap: 12px;
    }

    .tc-tile__top,
    .tc-tile__title,
    .tc-tile__description,
    .tc-tile__scale {
        order: 2;
    }

    .tc-tile__picture {
        order: 1;
        width: 90px;
        min-width: 90px;
        margin: 0;
        flex-shrink: 0;
    }

    .tc-tile__picture a {
        width: 90px;
        height: 90px;
        margin: 0;
    }

    /* Restore tile to flex column for small screens */
    .tc-tile {
        flex-direction: column;
    }
}

/* ---- Catalog filters (sidebar) ---- */
@media (max-width: 1099px) {
    .catalog-sidebar {
        border-radius: 16px;
        padding: 16px;
    }
}

@media (max-width: 767px) {
    /* Sidebar filters collapse to horizontal scrollable tags */
    .catalog-sidebar {
        padding: 12px 16px;
    }
}

/* ---- Cart page ---- */
@media (max-width: 767px) {
    /* Cart table becomes card-style stacked layout */
    .cart-item-row {
        flex-direction: column;
        gap: 8px;
    }
}

/* ---- Checkout page ---- */
@media (max-width: 1099px) {
    /* Stack checkout columns */
    .checkout-layout {
        grid-template-columns: 1fr !important;
    }
}

/* ---- Account / Profile pages ---- */
@media (max-width: 767px) {
    /* Account sidebar becomes horizontal tabs */
    .account-sidebar {
        flex-direction: row;
        overflow-x: auto;
        gap: 8px;
        padding-bottom: 8px;
    }

    .account-sidebar a {
        white-space: nowrap;
        flex-shrink: 0;
    }
}

/* ---- Product detail page ---- */
@media (max-width: 1099px) {
    /* Stack image and info columns */
    .detail-layout {
        grid-template-columns: 1fr !important;
    }

    .detail-image-box {
        max-height: 400px;
    }
}

@media (max-width: 767px) {
    .detail-price {
        font-size: 28px;
    }

    .detail-purchase-box {
        padding: 16px;
        border-radius: 16px;
    }

    /* Action buttons stacked on mobile */
    .detail-actions {
        flex-direction: column !important;
    }
}

/* ---- Footer ---- */
@media (max-width: 767px) {
    footer .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    /* Phone number smaller on mobile */
    footer a[href^="tel"] {
        font-size: 28px !important;
    }
}

/* ---- Search dropdown adjustment ---- */
/* Inline expanding search bar is now used instead of fullscreen dropdown */

/* Ensure body doesn't bounce horizontally (clip — не ломает sticky) */
html, body {
    width: 100%;
    margin: 0;
    padding: 0;
    position: relative;
}

/* Touch targets and general mobile polish */
@media (max-width: 767px) {
    .container {
        padding-left: 16px;
        padding-right: 16px;
    }
    
    #header {
        height: 60px !important;
    }
    
    #header .header-group {
        height: 60px !important;
    }
}

/* Fix for footer scaling on small screens */
@media (max-width: 480px) {
    footer .md\:grid-cols-12 > div {
        margin-bottom: 24px;
    }
    
    footer a[href^="tel"] {
        font-size: 24px !important;
    }
}

/* ---- Touch / tap improvements ---- */
@media (hover: none) {
    /* On touch devices, remove hover-only states */
    .tc-tile:hover {
        box-shadow: var(--card-shadow);
        border-color: var(--card-border);
    }

    /* Increase tap target sizes */
    .tc-weight {
        min-height: 38px;
        min-width: 44px;
    }

    .tc-tile__bottom--btn {
        width: 40px;
        height: 40px;
    }

    /* Better tap areas for nav links */
    nav a {
        padding: 8px 0;
        display: inline-block;
    }
}

/* ---- Section headings responsive ---- */
@media (max-width: 767px) {
    .section-heading {
        font-size: 28px;
    }
}

@media (max-width: 480px) {
    .section-heading {
        font-size: 24px;
    }
}

/* ---- Utility: prevent text overflow on mobile ---- */
@media (max-width: 767px) {
    .tc-card-title-link {
        font-size: 15px;
        line-height: 1.2;
    }

    /* Weight buttons compact */
    .tc-weight {
        padding: 4px 8px 2px;
        font-size: 12px;
    }

    /* Buy button compact */
    .tc-btn-pay {
        min-height: 40px;
        font-size: 15px;
    }
}

/* =====================================================
   CRITIC.MD FIXES — Visual & Behavior
   ===================================================== */

/* Bug 13: Brand background and white cards */
body {
    background-color: #F5F3EF;
}
.tc-tile,
.tc-product-cell .tc-tile,
.product-card,
.is-index-card {
    background-color: #FFFFFF !important;
}

header#header,
header#header.sticky {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: #F5F5F7 !important;
    transition: box-shadow 0.25s ease, background 0.25s ease;
}
header#header.header-scrolled {
    background: #F5F5F7 !important;
    box-shadow: 0 2px 14px rgba(0, 0, 0, 0.06);
}

/* Bug 1 & 14: Action buttons hover behavior on cards */
.tc-card-actions.action-buttons {
    display: flex;
    align-items: center;
    gap: 4px;
    opacity: 1;
    transition: opacity 0.25s ease, transform 0.25s ease;
}
@media (hover: hover) and (pointer: fine) {
    .tc-tile .tc-card-actions.action-buttons {
        opacity: 0;
        transform: translateY(4px);
        pointer-events: none;
    }
    .tc-tile:hover .tc-card-actions.action-buttons,
    .tc-tile:focus-within .tc-card-actions.action-buttons {
        opacity: 1;
        transform: translateY(0);
        pointer-events: auto;
    }
}
.tc-card-actions .action-btn.is-active {
    background-color: #000;
}
.tc-card-actions .action-btn.is-active svg path {
    stroke: #fff;
}
.tc-card-actions .action-btn.is-active svg path[fill="transparent"] {
    fill: #fff;
}

/* Bug 7: Star rating hover (interactive) */
.tc-tile-rating {
    cursor: pointer;
    background: transparent;
    border: none;
    padding: 4px 6px;
    border-radius: 6px;
    transition: background 0.2s ease;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}
.tc-tile-rating:hover {
    background: rgba(0, 0, 0, 0.05);
}
.tc-tile-rating:hover svg {
    transform: scale(1.15);
    transition: transform 0.2s ease;
}

/* Bug 8: Hover submenus in main nav */
.header-nav-list__ul > li {
    position: relative;
}
.header-nav-list__ul > li > .tc-submenu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 220px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
    padding: 12px;
    opacity: 0;
    visibility: hidden;
    transform: translateY(8px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s;
    z-index: 50;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.header-nav-list__ul > li:hover > .tc-submenu,
.header-nav-list__ul > li:focus-within > .tc-submenu {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
    transition-delay: 0s, 0s, 0s;
}
.header-nav-list__ul > li > .tc-submenu a {
    padding: 8px 12px;
    border-radius: 10px;
    font-size: 14px;
    color: #000;
    text-decoration: none;
    transition: background 0.15s ease;
}
.header-nav-list__ul > li > .tc-submenu a:hover {
    background: rgba(0, 0, 0, 0.04);
}
/* Delay collapse to keep menu open while moving toward dropdown */
.header-nav-list__ul > li:hover > .tc-submenu {
    transition-delay: 150ms, 150ms, 150ms;
}

/* Bug 15: Filter group dividers */
.tc-catalog-sidebar .mb-7,
.filter-group {
    border-bottom: 1px solid #EAEAEA;
    padding-bottom: 16px;
    margin-bottom: 16px;
}
.tc-catalog-sidebar .mb-7:last-of-type,
.tc-catalog-sidebar .mb-10,
.filter-group:last-child {
    border-bottom: none;
}

/* Bug 5: Search autocomplete dropdown */
.tc-search-suggest {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-top: 6px;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
    padding: 12px;
    z-index: 60;
    max-height: 60vh;
    overflow-y: auto;
}
.tc-search-suggest__group + .tc-search-suggest__group {
    margin-top: 12px;
    padding-top: 12px;
    border-top: 1px solid #EAEAEA;
}
.tc-search-suggest__title {
    font-size: 11px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: rgba(0, 0, 0, 0.4);
    margin-bottom: 8px;
}
.tc-search-suggest__item {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 8px 10px;
    border-radius: 10px;
    text-decoration: none;
    color: #000;
    font-size: 14px;
    transition: background 0.15s ease;
}
.tc-search-suggest__item:hover {
    background: rgba(0, 0, 0, 0.04);
}
.tc-search-suggest__img {
    width: 48px;
    height: 48px;
    min-width: 48px;
    border-radius: 12px;
    object-fit: contain;
    background: #f5f5f7;
    padding: 4px;
}
.tc-search-suggest__img--placeholder {
    background: #f5f5f7;
}
.tc-search-suggest__info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}
.tc-search-suggest__name {
    font-size: 14px;
    font-weight: 600;
    color: #000;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.tc-search-suggest__cat {
    display: block;
    font-size: 12px;
    color: rgba(0, 0, 0, 0.4);
}
.tc-search-suggest__price {
    font-size: 13px;
    font-weight: 600;
    color: #000;
    white-space: nowrap;
    flex-shrink: 0;
}
.tc-search-suggest__view-all {
    display: block;
    margin: 8px 4px 4px;
    padding: 10px;
    text-align: center;
    background: #f5f5f7;
    border-radius: 12px;
    color: #000;
    font-size: 13px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;
    transition: background 0.15s ease;
}
.tc-search-suggest__view-all:hover {
    background: #ebebeb;
}
.tc-search-suggest__item small {
    display: block;
    font-size: 12px;
    color: rgba(0, 0, 0, 0.4);
    margin-top: 2px;
}
.tc-search-suggest__empty {
    padding: 16px;
    text-align: center;
    color: rgba(0, 0, 0, 0.4);
    font-size: 13px;
}

/* Bug 10: Hashtag tags row in catalog */
.tc-hashtag-row {
    display: flex;
    gap: 8px;
    overflow-x: auto;
    white-space: nowrap;
    padding: 4px 0 8px;
    margin-bottom: 16px;
    scrollbar-width: none;
}
.tc-hashtag-row::-webkit-scrollbar { display: none; }
.tc-hashtag-tag {
    flex-shrink: 0;
    padding: 6px 14px;
    border-radius: 999px;
    background: #fff;
    color: rgba(0, 0, 0, 0.7);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
    border: 1px solid #EAEAEA;
}
.tc-hashtag-tag:hover {
    background: #000;
    color: #fff;
    border-color: #000;
}
.tc-hashtag-tag.active {
    background: #000;
    color: #fff;
    border-color: #000;
}

/* Bug 14: Unify hover for "Новое" and other product blocks */
.new-products .tc-tile,
.new-products .product-card,
.featured-products .tc-tile {
    transition: box-shadow 0.25s ease, border-color 0.25s ease;
}
.new-products .tc-tile:hover,
.new-products .product-card:hover,
.featured-products .tc-tile:hover {
    box-shadow: var(--card-shadow-hover);
    border-color: #d0d0d0;
}

/* Compare bar (visible when items in compare list) */
.compare-bar {
    position: fixed;
    bottom: 16px;
    left: 50%;
    transform: translateX(-50%);
    background: #000;
    color: #fff;
    border-radius: 16px;
    padding: 12px 16px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.25);
    z-index: 200;
    display: none;
}
.compare-bar-inner {
    display: flex;
    align-items: center;
    gap: 12px;
}
.compare-bar-link {
    background: #fff;
    color: #000;
    padding: 6px 14px;
    border-radius: 10px;
    font-weight: 700;
    font-size: 13px;
    text-decoration: none;
}
.compare-bar-clear {
    background: transparent;
    border: none;
    color: rgba(255, 255, 255, 0.6);
    cursor: pointer;
    font-size: 13px;
}
.compare-bar-clear:hover { color: #fff; }

/* Toast container */
.toast-container {
    position: fixed;
    bottom: 16px;
    right: 16px;
    z-index: 250;
    display: flex;
    flex-direction: column;
    gap: 8px;
}
.toast {
    background: #000;
    color: #fff;
    padding: 10px 16px;
    border-radius: 12px;
    font-size: 14px;
    opacity: 0;
    transform: translateY(20px);
    transition: opacity 0.25s ease, transform 0.25s ease;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}
.toast-show { opacity: 1; transform: translateY(0); }
.toast-error { background: #b91c1c; }
.toast-success { background: #065f46; }

[x-cloak] { display: none !important; }

/* =====================================================
   Force-disable default link blue (image2 fix)
   ===================================================== */
.tc-catalog-chip,
.tc-catalog-chip:link,
.tc-catalog-chip:visited,
.tc-catalog-breadcrumbs a,
.tc-catalog-breadcrumbs a:link,
.tc-catalog-breadcrumbs a:visited,
.tc-catalog-sidebar a,
.tc-catalog-sidebar a:link,
.tc-catalog-sidebar a:visited,
.tc-hashtag-tag,
.tc-hashtag-tag:link,
.tc-hashtag-tag:visited {
    color: inherit;
    text-decoration: none;
}
.tc-catalog-chip {
    color: rgba(0, 0, 0, 0.6);
}
.tc-catalog-chip.bg-black,
a.tc-catalog-chip[class*="bg-black"] {
    color: #fff !important;
}

/* image11 fix: cards must clear sticky header */
.tc-catalog-page,
main {
    position: relative;
    z-index: 1;
}

/* image7: "Новое" carousel — apply same hover as catalog cards */
.tc-carousel-tile,
section[data-block="new"] .tc-tile,
section[data-block="popular"] .tc-tile {
    transition: box-shadow 0.25s ease, border-color 0.25s ease;
}
.tc-carousel-tile:hover,
section[data-block="new"] .tc-tile:hover,
section[data-block="popular"] .tc-tile:hover {
    box-shadow: var(--card-shadow-hover);
    border-color: #d0d0d0;
}

/* image1, image10, image12: city selector visible by default */
.header-select-city {
    display: flex !important;
    align-items: center;
}
.header-select-city__button {
    color: #000;
    background: transparent;
    border: none;
    cursor: pointer;
    padding: 4px 8px;
    border-radius: 8px;
    transition: background 0.15s ease;
}
.header-select-city__button:hover {
    background: rgba(0, 0, 0, 0.04);
}
.tc-city-label {
    font-size: 14px;
    line-height: 1.2;
    margin-right: 4px;
    white-space: nowrap;
}
.tc-city-dropdown {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
    padding: 8px;
    min-width: 220px;
    z-index: 70;
    transform-origin: top center;
}
.tc-city-dropdown button {
    display: block;
    width: 100%;
    text-align: left;
    padding: 8px 12px;
    border-radius: 10px;
    font-size: 14px;
    background: transparent;
    border: none;
    cursor: pointer;
    color: #000;
}
.tc-city-dropdown button:hover { background: rgba(0, 0, 0, 0.05); }
.tc-city-dropdown button.active { background: #000; color: #fff; }


/* ===== Alpine.js dropdown animations (0.3s) ===== */
[x-cloak] { display: none !important; }

/* Override Alpine x-transition default duration to 300ms */
[x-transition][style*="opacity"] {
    transition-duration: 300ms !important;
}


/* btn-white for slider buttons */
.tc-btn.btn-white {
    display: inline-flex;
    align-items: center;
    padding: 10px 20px;
    background: #fff;
    color: #000;
    border-radius: 12px;
    font-family: 'DIN Pro Medium', sans-serif;
    font-size: 14px;
    text-transform: uppercase;
    text-decoration: none;
    transition: 0.3s;
    border: none;
    cursor: pointer;
}
.tc-btn.btn-white:hover { background: rgba(255,255,255,0.9); }
.tc-btn.btn-white .text-primary { color: #000; }


/* Blog card variety - different gradient overlays for visual distinction */
.blog-card:nth-child(2n) .aspect-\[16\/10\] { background: linear-gradient(135deg, #1a1a2e, #16213e); }
.blog-card:nth-child(3n) .aspect-\[16\/10\] { background: linear-gradient(135deg, #0f3443, #34e89e20); }
.blog-card:nth-child(4n) .aspect-\[16\/10\] { background: linear-gradient(135deg, #2d1b69, #6b21a8); }


/* ============================================================
   HEADER LAYOUT (rebuilt from Nuxt-scoped styles)
   ============================================================ */
.header-group {
    margin-left: auto;
    margin-right: auto;
    padding-left: 1rem;
    padding-right: 1rem;
    width: 100%;
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 1rem;
    padding-top: 1rem;
    touch-action: none;
}
@media (min-width: 576px) {
    .header-group { max-width: 576px; padding-left: 50px; padding-right: 50px; }
}
@media (min-width: 758px) {
    .header-group { max-width: 758px; }
}
@media (min-width: 1100px) {
    .header-group { max-width: 1100px; padding-left: 50px; padding-right: 50px; }
}
@media (min-width: 1440px) {
    .header-group { max-width: 1440px; padding-left: 50px; padding-right: 50px; }
}

@media (min-width: 1100px) {
    .header-nav-list {
        margin-left: 0 !important;
        margin-right: 12px !important;
    }
}
.nav-title {
    font-family: Gotham Pro, "sans-serif";
    font-size: 16px;
    line-height: 1.2;
    text-transform: uppercase;
    color: var(--black);
    text-decoration: none;
    cursor: pointer;
}
.nav-title:hover { opacity: .7; }

.medium { font-family: Gotham Pro Medium, "sans-serif"; }

.offset-mac-os { transform: translateY(-1px); }
.offset-windows { transform: translateY(1px); }

.backdrop {
    height: 100%;
    position: absolute;
    transition: 0s;
    background: transparent;
    pointer-events: none;
}
body.show-backdrop .backdrop {
    background: var(--black-16);
    pointer-events: auto;
}

.mob-modal-wrap { display: inline-block; }

.tc-tooltip { position: relative; }
.tc-community-tooltip {
    position: absolute;
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 4px 28px rgba(0, 0, 0, 0.1);
    z-index: 35;
    color: #000;
}
.tc-community-info-btn { cursor: pointer; }

.header-compare__btn,
.header-cart__btn {
    display: flex;
    align-items: center;
    text-decoration: none;
    color: inherit;
    cursor: pointer;
    background: transparent;
    border: none;
    padding: 0;
}
.header-compare__btn:hover,
.header-cart__btn:hover { opacity: .7; }

.header-enter { display: flex; }

.app-header-logo,
.app-header-burger,
.app-header-card {
    color: var(--black);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}
.app-header-burger { background: transparent; border: none; padding: 0; cursor: pointer; }
.app-header-logo img { display: block; }
.app-header-card { color: var(--black); }

.tc-btn {
    align-items: center;
    border: 1px solid;
    border-radius: 12px;
    display: inline-flex;
    font-family: DIN Pro Medium, "sans-serif";
    font-size: 18px;
    justify-content: center;
    line-height: 1;
    min-height: 44px;
    padding: 8px 16px;
    position: relative;
    text-decoration: none;
    text-transform: uppercase;
    transition: .2s;
    cursor: pointer;
    background: #fff;
    color: #000;
}
.tc-btn.btn-secondary-xs {
    background: var(--black-4);
    border-color: var(--black-4);
    color: var(--black);
    border-radius: 8px;
    font-family: Gotham Pro Medium, "sans-serif";
    font-size: 14px;
    min-height: 32px;
    padding: 3px 12px;
    text-transform: inherit;
}
.tc-btn.btn-secondary-xs:hover { background: var(--black-5); }

.tc-img-error { padding: 16px !important; }

/* НЕ блокируем скролл при show-backdrop: оригинал не блокирует,
   а overflow:hidden на body ломает sticky-шапку (полоса при скролле). */

/* Header nav list submenus */
.header-nav-list__ul { list-style: none; margin: 0; padding: 0; }
.header-nav-list__ul > li { position: relative; }

/* =====================================================
   FONT-FACE — DIN Pro & Gotham Pro
   ===================================================== */
@font-face {
    font-family: 'DIN Pro';
    src: url('/static/asset/fonts/DINPro-CondensedRegular.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedRegular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'DIN Pro Fallback';
    src: url('/static/asset/fonts/DINPro-CondensedRegular.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedRegular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'DIN Pro Light';
    src: url('/static/asset/fonts/DINPro-CondensedLight.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedLight.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'DIN Pro Light Fallback';
    src: url('/static/asset/fonts/DINPro-CondensedLight.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedLight.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'DIN Pro Medium';
    src: url('/static/asset/fonts/DINPro-CondensedMedium.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedMedium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'DIN Pro Medium Fallback';
    src: url('/static/asset/fonts/DINPro-CondensedMedium.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedMedium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'DIN Pro Black';
    src: url('/static/asset/fonts/DINPro-CondensedBlack.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedBlack.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'DIN Pro Bold Fallback';
    src: url('/static/asset/fonts/DINPro-CondensedBlack.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedBlack.woff') format('woff');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'DIN Pro Regular';
    src: url('/static/asset/fonts/DINPro-CondensedRegular.woff2') format('woff2'),
         url('/static/asset/fonts/DINPro-CondensedRegular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Gotham Pro';
    src: url('/static/asset/fonts/GothamPro.woff2') format('woff2'),
         url('/static/asset/fonts/GothamPro.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Gotham Pro Medium';
    src: url('/static/asset/fonts/GothamPro-Medium.woff2') format('woff2'),
         url('/static/asset/fonts/GothamPro-Medium.woff') format('woff');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'Gotham Pro Bold';
    src: url('/static/asset/fonts/GothamPro-Bold.woff2') format('woff2'),
         url('/static/asset/fonts/GothamPro-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}



/* =====================================================
   EXTRACTED & CLEANED BASKET & CHECKOUT COMPONENT STYLES
   ===================================================== */

/* --- Extracted from basket.html style tag 0 --- */
@media(max-width:1099px) {
            body.show-backdrop .open-menu .header-group:after {
                background: var(--black-16);
                border-radius: inherit;
                content: "";
                height: 100%;
                left: 0;
                position: absolute;
                top: 0;
                width: 100%;
                z-index: 2
            }
        }

        .header-group {
            margin-left: auto;
            margin-right: auto;
            padding-left: 1rem;
            padding-right: 1rem;
            width: 100%
        }

        @media(min-width:576px) {
            .header-group {
                max-width: 576px;
                padding-left: 50px;
                padding-right: 50px
            }
        }

        @media(min-width:758px) {
            .header-group {
                max-width: 758px
            }
        }

        @media(min-width:1100px) {
            .header-group {
                max-width: 1100px;
                padding-left: 50px;
                padding-right: 50px
            }
        }

        @media(min-width:1440px) {
            .header-group {
                max-width: 1440px;
                padding-left: 50px;
                padding-right: 50px
            }
        }

        .header-group {
            align-items: center;
            display: flex;
            flex-wrap: wrap;
            padding-bottom: 1rem;
            padding-top: 1rem;
            touch-action: none
        }

        .group.open-menu .header-group {
            align-items: flex-start;
            background-color: var(--black-4);
            border-bottom-right-radius: 1.5rem;
            border-top-right-radius: 1.5rem;
            height: 100%;
            max-width: 100%;
            min-width: 300px
        }

        @media not all and (min-width:1100px) {
            .header-group {
                position: relative
            }
        }

        @media(min-width:1100px) {
            .header-group {
                padding-bottom: .625rem;
                padding-top: 1.25rem
            }
        }

/* --- Extracted from basket.html style tag 1 --- */
.header-notices {
            background-color: var(--opacity-4);
            padding-bottom: 1rem;
            padding-top: 1rem;
            width: 100%
        }

        body.show-backdrop-xl .header-notices {
            position: relative;
            z-index: -10
        }

/* --- Extracted from basket.html style tag 2 --- */
.header-select-city {
            display: none;
            margin-bottom: 0;
            margin-right: .625rem;
            order: 10
        }

        .group.is-app .header-select-city {
            order: 0
        }

        .group.open-menu .header-select-city {
            display: flex;
            margin-bottom: .25rem;
            margin-top: auto
        }

        .group.is-app .header-select-city {
            display: flex
        }

        .group.open-menu .header-select-city {
            width: 100%
        }

        @media(min-width:1100px) {
            .header-select-city {
                display: flex;
                order: 1;
                position: relative
            }
        }

        .header-select-city__button {
            align-items: center;
            cursor: pointer;
            display: flex;
            font-size: 14px;
            line-height: 1.2;
            position: relative
        }

        .group.is-app .header-select-city__button {
            font-family: DIN Pro Medium, DIN Pro Medium Fallback, sans-serif;
            font-size: 18px;
            text-transform: uppercase
        }

        .header-select-city__window {
            background-color: var(--black-4);
            border-bottom-right-radius: 1.5rem;
            border-top-right-radius: 1.5rem;
            display: flex;
            flex-direction: column;
            height: 100%;
            left: 0;
            min-width: 310px;
            position: absolute;
            top: 0;
            width: 100%
        }

        @media(min-width:1100px) {
            .header-select-city__window {
                border-radius: 1rem;
                height: auto;
                margin-top: .5rem;
                max-height: calc(100dvh - 132px);
                overflow: auto;
                top: 100%;
                width: 392px;
                --tw-bg-opacity: 1;
                background-color: rgb(255 255 255/var(--tw-bg-opacity, 1))
            }
        }

        body.is-app .header-select-city__window {
            border-bottom-left-radius: 0;
            border-bottom-right-radius: 0;
            border-top-left-radius: 1.5rem;
            border-top-right-radius: 1.5rem;
            margin-top: 3.5rem;
            max-height: calc(100dvh - 56px);
            position: fixed
        }

        body.z-index-0.show-backdrop-app .header-select-city {
            z-index: -1
        }

        @media screen and (min-width:758px) {
            .link:not(:last-child):after {
                content: ", ";
                margin-right: 4px
            }
        }

        @media screen and (max-width:757px) {
            .space-y-2 .link {
                align-items: center;
                background: #fff;
                border-radius: 8px;
                color: var(--black);
                display: inline-flex;
                font-size: 14px;
                justify-content: center;
                margin-right: 8px;
                min-height: 32px;
                padding: 4px 16px;
                transition: .3s
            }

            .space-y-2 .link.active {
                background: var(--black);
                color: #fff
            }

            body.is-app .space-y-2 .link {
                padding: 4px 12px
            }
        }

/* --- Extracted from basket.html style tag 3 --- */
.tc-skeleton {
            background-color: #d9d9d96b;
            display: block;
            overflow: hidden;
            position: relative;
            width: 100%
        }

        .tc-skeleton:not([class*=rounded]) {
            border-radius: 12px
        }

        .tc-skeleton:after {
            animation: shimmer-ff704ab2 3s infinite;
            background-image: linear-gradient(90deg, #fff0, #fff6 20%, #fff9 60%, #fff0);
            content: "";
            inset: 0;
            position: absolute;
            transform: translate(-100%)
        }

        @keyframes shimmer-ff704ab2 {
            to {
                transform: translate(100%)
            }
        }

/* --- Extracted from basket.html style tag 4 --- */
.tastycoffee .logo-delivery {
            max-width: 60px
        }

        .free .logo-delivery {
            max-height: 48px;
            max-width: 113px
        }

        .ems .logo-delivery {
            max-width: 113px
        }

        .yandex .logo-delivery {
            max-width: 128px
        }

        .dpd .logo-delivery {
            max-width: 74px
        }

        .cdek .logo-delivery,
        .pony .logo-delivery {
            max-width: 84px
        }

        .fivepost .logo-delivery {
            max-width: 93px
        }

        .magnit_post .logo-delivery {
            max-width: 96px
        }

        .a2_express .logo-delivery {
            max-width: 72px
        }

/* --- Extracted from basket.html style tag 5 --- */
.open-menu .header-nav-list {
            display: block;
            height: calc(100% - 184px);
            margin: 12px 0 12px -16px;
            min-width: calc(100% + 32px);
            padding: 0 16px;
            position: relative
        }

        .open-menu .header-nav-list__ul {
            height: 100%;
            overflow: auto;
            padding: 12px 0
        }

        .open-menu .header-nav-list__btn {
            display: none
        }

        body.show-backdrop-xl .open-menu .header-nav-list__btn {
            z-index: 2
        }

        @media screen and (max-height:814px) {
            .open-menu .header-nav-list__btn {
                display: flex
            }
        }

        @media screen and (max-height:812px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:last-child>ul>li:last-child {
                display: none
            }
        }

        @media screen and (max-height:780px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:last-child>ul>li:nth-last-child(2) {
                display: none
            }
        }

        @media screen and (max-height:748px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:last-child>ul>li:nth-last-child(3) {
                display: none
            }
        }

        @media screen and (max-height:716px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:last-child>ul>li:nth-last-child(4) {
                display: none
            }
        }

        @media screen and (max-height:684px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:last-child>ul>li:nth-last-child(5) {
                display: none
            }
        }

        @media screen and (max-height:652px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:last-child>ul>li:nth-last-child(6) {
                display: none
            }
        }

        @media screen and (max-height:612px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(2) {
                display: none
            }
        }

        @media screen and (max-height:568px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(3) {
                display: none
            }
        }

        @media screen and (max-height:522px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(4) {
                display: none
            }
        }

        @media screen and (max-height:478px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(5)>ul>li:last-child {
                display: none
            }
        }

        @media screen and (max-height:446px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(5)>ul>li:nth-last-child(2) {
                display: none
            }
        }

        @media screen and (max-height:414px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(5)>ul>li:nth-last-child(3) {
                display: none
            }
        }

        @media screen and (max-height:382px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(5)>ul>li:nth-last-child(4) {
                display: none
            }
        }

        @media screen and (max-height:350px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(5)>ul>li:nth-last-child(5) {
                display: none
            }
        }

        @media screen and (max-height:318px) {
            .open-menu .header-nav-list:not(.active) .header-nav-list__ul>li:nth-last-child(5)>ul>li:nth-last-child(6) {
                display: none
            }
        }

        @media screen and (max-height:812px) {
            .open-menu .header-nav-list {
                border-bottom: 1px solid;
                border-top: 1px solid;
                border-color: var(--black-5);
                margin: 16px 0 16px -16px
            }

            .open-menu .header-nav-list .header-nav-list__ul {
                padding-top: 12px
            }

            .open-menu .header-nav-list:not(.active) .header-nav-list__ul {
                overflow: hidden
            }
        }

        .nav-title {
            color: var(--black);
            font-family: DIN Pro Black, DIN Pro Bold Fallback, sans-serif;
            font-size: 24px;
            line-height: 1.2;
            text-decoration-line: none;
            text-transform: uppercase
        }

        @media(min-width:1100px) {
            .nav-title {
                font-family: DIN Pro Medium, DIN Pro Medium Fallback, sans-serif;
                font-size: 18px;
                letter-spacing: .05em
            }
        }

/* --- Extracted from basket.html style tag 6 --- */
.tc-tooltip {
            display: inline;
            position: relative
        }

        .tc-tooltip.tooltip-active .tc-tooltip__btn,
        .tc-tooltip.tooltip-active .tc-tooltip__btn-slot {
            z-index: 25
        }

        .tc-tooltip.tooltip-active .tc-tooltip__btn-slot:after,
        .tc-tooltip.tooltip-active .tc-tooltip__btn:after {
            display: block
        }

        .tc-tooltip.tooltip-active .tc-tooltip__dropdown:not(.tc-tooltip__dropdown--portal) {
            display: block;
            opacity: 1;
            visibility: visible
        }

        .tc-tooltip.d-block {
            display: block
        }

        .tc-tooltip__btn {
            cursor: pointer;
            display: inline-block;
            position: relative
        }

        .tc-tooltip__btn:after {
            content: "";
            display: none;
            height: calc(100% + 48px);
            margin: auto;
            min-width: 100%;
            opacity: 0;
            position: absolute;
            right: 50%;
            top: 50%;
            transform: translate(50%, -50%);
            width: 64px
        }

        @media screen and (max-width:757px) {
            .tc-tooltip__btn:after {
                width: 32px
            }
        }

        .tc-tooltip__btn-slot {
            cursor: pointer;
            display: inline;
            position: relative
        }

        .tc-tooltip__btn-slot:empty {
            display: none
        }

        .tc-tooltip__btn-slot:after {
            content: "";
            display: none;
            height: calc(100% + 48px);
            margin: auto;
            min-width: 100%;
            opacity: 0;
            position: absolute;
            right: 50%;
            top: 50%;
            transform: translate(50%, -50%);
            width: 64px
        }

        @media screen and (max-width:757px) {
            .tc-tooltip__btn-slot:after {
                width: 32px
            }
        }

        .tc-tooltip .mini:after {
            content: "";
            display: none;
            height: 100%;
            margin: auto;
            min-width: 100%;
            opacity: 0;
            position: absolute;
            right: 50%;
            top: 50%;
            transform: translate(50%, -50%);
            width: 64px
        }

        @media screen and (max-width:757px) {
            .tc-tooltip .mini:after {
                width: 32px
            }
        }

        .tc-tooltip__dropdown {
            color: var(--black);
            display: none;
            max-width: calc(100dvw - 32px);
            opacity: 0;
            visibility: hidden;
            z-index: 60
        }

        .tc-tooltip__dropdown--wrap {
            background: #fff;
            border-radius: 16px;
            padding: 24px;
            width: 100%
        }

        .tc-tooltip__dropdown.bottom-start {
            padding-left: 8px
        }

        .tc-tooltip__btn.w-14~.tc-tooltip__dropdown.bottom-start {
            padding-left: 27px
        }

        .tc-tooltip__dropdown.bottom-start .tc-tooltip__dropdown--wrap {
            border-radius: 0 16px 16px
        }

        .tc-tooltip__dropdown.bottom-start .tc-tooltip__dropdown--arrow {
            border-bottom: 18px solid #fff;
            border-right: 18px solid #0000;
            margin-left: 8px;
            top: -17px
        }

        .tc-tooltip__dropdown.top-start {
            padding-left: 8px
        }

        .tc-tooltip__btn.w-14~.tc-tooltip__dropdown.top-start {
            padding-left: 27px
        }

        .tc-tooltip__dropdown.top-start .tc-tooltip__dropdown--wrap {
            border-radius: 16px 16px 16px 0
        }

        .tc-tooltip__dropdown.top-start .tc-tooltip__dropdown--arrow {
            border-right: 18px solid #0000;
            border-top: 18px solid #fff;
            bottom: -17px;
            margin-left: 8px
        }

        .tc-tooltip__dropdown.bottom-end {
            padding-right: 8px
        }

        .tc-tooltip__btn.w-14~.tc-tooltip__dropdown.bottom-end {
            padding-right: 27px
        }

        .tc-tooltip__dropdown.bottom-end .tc-tooltip__dropdown--wrap {
            border-radius: 16px 0 16px 16px
        }

        .tc-tooltip__dropdown.bottom-end .tc-tooltip__dropdown--arrow {
            border-bottom: 18px solid #fff;
            border-left: 18px solid #0000;
            margin-left: -8px;
            top: -17px
        }

        .tc-tooltip__dropdown.top-end {
            padding-right: 8px
        }

        .tc-tooltip__btn.w-14~.tc-tooltip__dropdown.top-end {
            padding-right: 27px
        }

        .tc-tooltip__dropdown.top-end .tc-tooltip__dropdown--wrap {
            border-radius: 16px 16px 0
        }

        .tc-tooltip__dropdown.top-end .tc-tooltip__dropdown--arrow {
            border-left: 18px solid #0000;
            border-top: 18px solid #fff;
            bottom: -17px;
            margin-left: -8px
        }

        .tc-tooltip__dropdown.offset-center,
        .tc-tooltip__dropdown.offset-x {
            padding: 0
        }

        .tc-tooltip__dropdown.offset-center .tc-tooltip__dropdown--wrap,
        .tc-tooltip__dropdown.offset-x .tc-tooltip__dropdown--wrap {
            border-radius: 16px
        }

        .tc-tooltip__dropdown.offset-center.bottom-end,
        .tc-tooltip__dropdown.offset-center.bottom-start,
        .tc-tooltip__dropdown.offset-x.bottom-end,
        .tc-tooltip__dropdown.offset-x.bottom-start {
            margin-top: -6px
        }

        .tc-tooltip__dropdown.offset-center.bottom-end .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-center.bottom-start .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-x.bottom-end .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-x.bottom-start .tc-tooltip__dropdown--arrow {
            border-bottom: 24px solid #fff;
            border-left: 12px solid #0000;
            border-right: 12px solid #0000;
            top: -14px
        }

        .tc-tooltip__dropdown.offset-center.top-end,
        .tc-tooltip__dropdown.offset-center.top-start,
        .tc-tooltip__dropdown.offset-x.top-end,
        .tc-tooltip__dropdown.offset-x.top-start {
            margin-top: 6px
        }

        .tc-tooltip__dropdown.offset-center.top-end .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-center.top-start .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-x.top-end .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-x.top-start .tc-tooltip__dropdown--arrow {
            border-left: 12px solid #0000;
            border-right: 12px solid #0000;
            border-top: 24px solid #fff;
            bottom: -14px
        }

        .tc-tooltip__dropdown.offset-center.bottom-start:not(.mx-0),
        .tc-tooltip__dropdown.offset-center.top-start:not(.mx-0),
        .tc-tooltip__dropdown.offset-x.bottom-start:not(.mx-0),
        .tc-tooltip__dropdown.offset-x.top-start:not(.mx-0) {
            margin-left: -16px
        }

        .tc-tooltip__dropdown.offset-center.bottom-end:not(.mx-0),
        .tc-tooltip__dropdown.offset-center.bottom-start:not(.mx-0) .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-center.top-end:not(.mx-0),
        .tc-tooltip__dropdown.offset-center.top-start:not(.mx-0) .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-x.bottom-end:not(.mx-0),
        .tc-tooltip__dropdown.offset-x.bottom-start:not(.mx-0) .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-x.top-end:not(.mx-0),
        .tc-tooltip__dropdown.offset-x.top-start:not(.mx-0) .tc-tooltip__dropdown--arrow {
            margin-left: 16px
        }

        .tc-tooltip__dropdown.offset-center.bottom-end:not(.mx-0) .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-center.top-end:not(.mx-0) .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-x.bottom-end:not(.mx-0) .tc-tooltip__dropdown--arrow,
        .tc-tooltip__dropdown.offset-x.top-end:not(.mx-0) .tc-tooltip__dropdown--arrow {
            margin-left: -16px
        }

        .tc-tooltip__dropdown.offset-center .tc-tooltip__dropdown--arrow {
            margin-left: 0;
            margin-right: 0
        }

        .tc-tooltip__dropdown--arrow {
            margin: auto;
            position: absolute
        }

        .tc-tooltip__dropdown--portal {
            display: block;
            opacity: 1;
            visibility: visible;
            z-index: 70
        }

        @media(min-width:576px) {
            .tc-tooltip__dropdown {
                max-width: 440px
            }
        }

/* --- Extracted from basket.html style tag 7 --- */
.backdrop {
            background: var(--black-16);
            content: "";
            height: 100vh;
            left: 0;
            opacity: 0;
            position: fixed;
            top: 0;
            visibility: hidden;
            width: 100vw;
            z-index: 15
        }

        @media screen and (max-width:1439px) {
            body.max-2xl\:show-backdrop .backdrop {
                opacity: 1;
                transition: var(--ts);
                visibility: initial
            }
        }

        @media screen and (min-width:1100px) {
            body.show-backdrop-xl .backdrop {
                opacity: 1;
                transition: var(--ts);
                visibility: initial
            }
        }

        @media screen and (max-width:1099px) {
            body.max-xl\:show-backdrop .backdrop {
                opacity: 1;
                transition: var(--ts);
                visibility: initial
            }
        }

        @media screen and (max-width:757px) {
            body.max-md\:show-backdrop .backdrop {
                opacity: 1;
                transition: var(--ts);
                visibility: initial
            }
        }

        body.is-app.show-backdrop-app .backdrop,
        body.show-backdrop .backdrop {
            opacity: 1;
            transition: var(--ts);
            visibility: initial
        }

        body.z-index-0 .backdrop {
            z-index: -1
        }

/* --- Extracted from basket.html style tag 8 --- */
.tc-cookies {
            align-items: center;
            background: var(--black);
            border-radius: 24px;
            bottom: 1em;
            color: var(--white);
            display: flex;
            flex-wrap: wrap;
            left: 0;
            margin: 0 auto 8px;
            max-width: calc(100% - 32px);
            padding: 24px;
            position: fixed;
            right: 0;
            width: 100%;
            z-index: 999
        }

        .tc-cookies__text {
            margin-right: auto;
            max-width: 848px;
            padding-bottom: 16px;
            width: 100%
        }

        @media(min-width:576px) {
            .tc-cookies {
                max-width: 476px
            }
        }

        @media(min-width:758px) {
            .tc-cookies {
                flex-wrap: nowrap;
                max-width: 658px
            }

            .tc-cookies .tc-cookies__text {
                padding-bottom: 0;
                padding-right: 24px
            }
        }

        @media(min-width:1100px) {
            .tc-cookies {
                max-width: 1000px
            }
        }

        @media(min-width:1440px) {
            .tc-cookies {
                max-width: 1340px
            }
        }

/* --- Extracted from basket.html style tag 9 --- */
.white-box {
            margin-left: -1rem;
            margin-right: -1rem
        }

        .white-box>:not([hidden])~:not([hidden]) {
            --tw-space-y-reverse: 0;
            margin-bottom: calc(1rem*var(--tw-space-y-reverse));
            margin-top: calc(1rem*(1 - var(--tw-space-y-reverse)))
        }

        .white-box {
            border-radius: 1rem;
            --tw-bg-opacity: 1;
            background-color: rgb(255 255 255/var(--tw-bg-opacity, 1));
            padding: 1rem
        }

        @media(min-width:576px) {
            .white-box {
                margin-left: 0;
                margin-right: 0
            }
        }

        @media(min-width:1100px) {
            .white-box {
                border-radius: 1.5rem;
                padding: 1.5rem
            }
        }

        .white-box-xl {
            margin-left: -1rem;
            margin-right: -1rem
        }

        .white-box-xl>:not([hidden])~:not([hidden]) {
            --tw-space-y-reverse: 0;
            margin-bottom: calc(.5rem*var(--tw-space-y-reverse));
            margin-top: calc(.5rem*(1 - var(--tw-space-y-reverse)))
        }

        .white-box-xl {
            border-radius: 1rem
        }

        @media not all and (min-width:1100px) {
            .white-box-xl {
                left: 0;
                position: absolute;
                right: 0;
                top: 0;
                --tw-bg-opacity: 1;
                background-color: rgb(255 255 255/var(--tw-bg-opacity, 1));
                color: var(--black);
                padding: 1rem
            }
        }

        @media(min-width:576px) {
            .white-box-xl {
                margin-left: 0;
                margin-right: 0
            }
        }

        .white-box__title {
            font-family: DIN Pro Black, DIN Pro Bold Fallback, sans-serif;
            font-size: 24px;
            line-height: 1.2;
            text-transform: uppercase
        }

        @media(min-width:758px) {
            .white-box__title {
                letter-spacing: .02em
            }
        }

        @media not all and (min-width:1100px) {
            .offset-mobile {
                padding-top: 198px
            }

            .offset-mobile:has(.error) {
                padding-top: 223px
            }

            .offset-mobile:has(.error~.error) {
                padding-top: 248px
            }
        }

/* --- Extracted from basket.html style tag 10 --- */
.white-box__title {
            font-family: DIN Pro Black, DIN Pro Bold Fallback, sans-serif;
            font-size: 24px;
            line-height: 1.2;
            text-transform: uppercase
        }

        @media(min-width:758px) {
            .white-box__title {
                letter-spacing: .02em
            }
        }

        .ti-list {
            align-items: flex-start;
            display: inline-flex;
            position: relative;
            z-index: 10
        }

        .ti-list>:not([hidden])~:not([hidden]) {
            --tw-space-x-reverse: 0;
            margin-left: calc(.5rem*(1 - var(--tw-space-x-reverse)));
            margin-right: calc(.5rem*var(--tw-space-x-reverse))
        }

        @media(min-width:375px) {
            .ti-list>:not([hidden])~:not([hidden]) {
                --tw-space-x-reverse: 0;
                margin-left: calc(1.25rem*(1 - var(--tw-space-x-reverse)));
                margin-right: calc(1.25rem*var(--tw-space-x-reverse))
            }
        }

        @media(min-width:1100px) {
            .ti-list>:not([hidden])~:not([hidden]) {
                --tw-space-x-reverse: 0;
                margin-left: calc(.75rem*(1 - var(--tw-space-x-reverse)));
                margin-right: calc(.75rem*var(--tw-space-x-reverse))
            }

            .ti-list {
                border-radius: 1.5rem;
                --tw-bg-opacity: 1;
                background-color: rgb(255 255 255/var(--tw-bg-opacity, 1));
                padding: 1.5rem
            }
        }

        @media(min-width:1440px) {
            .ti-list>:not([hidden])~:not([hidden]) {
                --tw-space-x-reverse: 0;
                margin-left: calc(2rem*(1 - var(--tw-space-x-reverse)));
                margin-right: calc(2rem*var(--tw-space-x-reverse))
            }
        }

        .ti-list-item {
            align-items: center;
            display: flex
        }

        @media not all and (min-width:1440px) {
            .ti-list-item {
                flex-wrap: wrap
            }
        }

        .ti-list__text {
            color: var(--black);
            font-size: 14px;
            line-height: 1.2;
            padding-top: .25rem;
            width: 100%
        }

        @media(min-width:1100px) {
            .ti-list__text {
                padding-left: .25rem;
                padding-top: 0
            }
        }

        .button-basket {
            align-items: center;
            border-radius: 1rem;
            cursor: pointer;
            display: flex;
            height: 100%;
            overflow: hidden;
            position: relative;
            width: 100%;
            z-index: 10;
            --tw-bg-opacity: 1;
            background-color: rgb(255 255 255/var(--tw-bg-opacity, 1));
            font-size: 14px;
            line-height: 1.2;
            padding: 1.5rem;
            text-align: left
        }

        .button-basket:before {
            border-radius: inherit;
            content: var(--tw-content);
            height: 100%;
            left: 0;
            position: absolute;
            top: 0;
            transition-duration: .3s;
            width: 100%;
            z-index: -10
        }

        @media(min-width:1100px) {
            .button-basket {
                border-radius: 1.5rem
            }
        }

        .button-basket:before {
            background: var(--multicolor-2);
            content: ""
        }

        .button-basket:hover:before {
            --tw-scale-x: 1.05;
            --tw-scale-y: 1.05;
            transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
        }

/* --- Extracted from basket.html style tag 11 --- */
@media screen and (max-width:370px) {
            .btn-secondary-sm {
                margin-right: 32px
            }
        }

/* --- Extracted from basket.html style tag 12 --- */
.white-box__title {
            font-family: DIN Pro Black, DIN Pro Bold Fallback, sans-serif;
            font-size: 24px;
            line-height: 1.2;
            text-transform: uppercase
        }

        @media(min-width:758px) {
            .white-box__title {
                letter-spacing: .02em
            }
        }

/* --- Extracted from basket.html style tag 13 --- */
@media not all and (min-width:1100px) {
            .btn-show-all {
                align-items: center;
                background-color: initial !important;
                flex-direction: row !important;
                margin-bottom: 1rem;
                margin-top: 1rem;
                padding: 0 !important;
                width: auto !important
            }
        }

        @media(min-width:1100px) {
            .btn-show-all {
                min-height: 100%
            }
        }

        @media(max-width:1099px) {
            .btn-show-all:before {
                background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' viewBox='0 0 24 24'%3E%3Cpath fill='%231c1b1f' d='m9.357 20.107-1.464-1.464 6.785-6.786-6.785-6.785 1.464-1.465 8.25 8.25z'/%3E%3C/svg%3E");
                background-position: 50%;
                background-repeat: no-repeat;
                background-size: contain;
                content: "";
                height: 24px;
                margin-left: -6px;
                margin-right: 8px;
                width: 24px
            }
        }

/* --- Extracted from basket.html style tag 14 --- */
.tc-btn-card {
            display: flex;
            flex-direction: column;
            position: relative;
            width: 100%
        }

        .tc-btn-card>:not([hidden])~:not([hidden]) {
            --tw-space-y-reverse: 0;
            margin-bottom: calc(1rem*var(--tw-space-y-reverse));
            margin-top: calc(1rem*(1 - var(--tw-space-y-reverse)))
        }

        .tc-btn-card {
            background-color: var(--black-4);
            border-radius: 1rem;
            padding: .5rem 1rem 1rem;
            text-align: left;
            transition-duration: .3s
        }

        @media(hover:hover)and (pointer:fine) {
            .tc-btn-card:hover {
                background-color: var(--black-5)
            }
        }

        .tc-btn-card:active {
            background-color: var(--black-6)
        }

        .tc-btn-card__ic {
            height: 32px;
            margin-bottom: auto;
            margin-left: -.375rem;
            width: 32px
        }

        .tc-btn-card__text {
            display: flex;
            font-size: 18px
        }

        @media not all and (min-width:1100px) {
            .tc-btn-card.basket-view-xl {
                align-items: center;
                background-color: initial;
                flex-direction: row;
                flex-wrap: nowrap;
                padding: 0
            }

            .tc-btn-card.basket-view-xl .tc-btn-card__ic {
                height: 1.5rem;
                margin-bottom: 0;
                margin-right: .5rem;
                margin-top: 0;
                width: 1.5rem
            }

            .tc-btn-card.basket-view-xl .tc-btn-card__text {
                margin: 0
            }
        }

/* --- Extracted from basket.html style tag 15 --- */
.tc-nav-tabs {
            display: flex;
            align-items: center;
            margin-left: -1rem;
            margin-right: -1rem;
            min-width: 100%;
            overflow: visible;
            padding-left: 1rem;
            padding-right: 1rem
        }

        @media(min-width:576px) {
            .tc-nav-tabs {
                margin-left: 0;
                margin-right: 0;
                padding-left: 0;
                padding-right: 0
            }
        }

        .tc-nav-tabs-list {
            align-items: center;
            background-color: var(--opacity-4);
            border-radius: .75rem;
            display: inline-flex;
            padding: .25rem;
            text-wrap: nowrap
        }

        .tc-nav-tabs.full .tc-nav-tabs-list {
            width: 100%
        }

        .tc-nav-tabs.full .tc-nav-tabs-list>li {
            flex: 1
        }

        .tc-nav-tabs.not-scroll {
            margin-left: 0;
            margin-right: 0;
            overflow: visible;
            padding-left: 0;
            padding-right: 0;
            width: 100%
        }

        @media(min-width:375px) {
            .tc-nav-tabs.not-scroll {
                width: auto
            }
        }

        @media(min-width:758px) {
            .tc-nav-tabs.not-scroll {
                min-width: auto
            }
        }

        @media not all and (min-width:576px) {
            .tc-nav-tabs.not-scroll .tc-nav-tabs-list {
                width: 100%
            }

            .tc-nav-tabs.not-scroll .tc-nav-tabs-list li {
                flex: 1 1 0%
            }
        }

        @media not all and (min-width:758px) {
            body.view-search-mob .tc-nav-tabs {
                background-color: var(--black-4);
                left: 0;
                margin: 0;
                max-width: 100dvw;
                padding-bottom: 1rem;
                padding-left: 1rem;
                padding-right: 1rem;
                position: fixed;
                text-align: center;
                top: 76px;
                z-index: 30
            }
        }

        body.view-search-mob .tc-nav-tabs .tc-nav-tabs-list {
            max-width: 476px
        }

/* --- Extracted from basket.html style tag 16 --- */
.tc-modal {
            display: flex;
            height: 100%;
            left: 0;
            padding-top: 0;
            position: fixed;
            top: 0;
            width: 100%;
            z-index: 60
        }

        @media not all and (min-width:758px) {
            .tc-modal {
                touch-action: none
            }
        }

        @media(min-width:758px) {
            .tc-modal {
                justify-content: center;
                overflow: auto;
                padding: 1rem
            }
        }

        .tc-modal .tc-modal-swipe {
            display: flex;
            height: 2rem;
            left: 0;
            position: absolute;
            top: 0;
            width: 100%;
            z-index: 20
        }

        @media(min-width:758px) {
            .tc-modal .tc-modal-swipe {
                display: none
            }
        }

        .tc-modal .tc-modal-swipe:after {
            background: var(--black-50);
            border-radius: 4px;
            content: "";
            display: block;
            height: 4px;
            margin: auto;
            width: 96px
        }

        .tc-modal:before {
            background: var(--black-16);
            content: "";
            height: 100%;
            left: 0;
            position: fixed;
            top: 0;
            width: 100%;
            z-index: -1
        }

        body.show-backdrop .tc-modal:before {
            display: none
        }

        body.show-backdrop .tc-modal .tc-modal__box:before {
            background: var(--black-16);
            content: "";
            height: 100%;
            left: 0;
            position: absolute;
            top: 0;
            width: 100%;
            z-index: 2
        }

        .tc-modal__box {
            border-top-left-radius: 1.5rem;
            border-top-right-radius: 1.5rem;
            margin-top: auto;
            position: relative;
            width: 100%
        }

        @media not all and (min-width:758px) {
            .tc-modal__box {
                display: flex;
                max-height: calc(100% - 64px);
                padding: 0
            }
        }

        @media(min-width:758px) {
            .tc-modal__box {
                border-radius: 1.5rem;
                margin-bottom: auto;
                margin-top: auto
            }
        }

        .tc-modal__box:not([class*=bg-]) {
            --tw-bg-opacity: 1;
            background-color: rgb(255 255 255/var(--tw-bg-opacity, 1))
        }

        @media(min-width:758px) {
            .tc-modal__box:not([class*=max-w-]) {
                max-width: 390px
            }

            .tc-modal__box:not([class*=p-]) {
                padding: 1.5rem
            }
        }

        .tc-modal__box--slot {
            width: 100%;
            z-index: 10
        }

        @media not all and (min-width:758px) {
            .tc-modal__box--slot {
                overflow-y: scroll;
                padding: 2rem 1rem 1rem
            }
        }

        @media(min-width:1440px) {
            .tc-modal.col-span-3-2xl {
                background-color: initial;
                left: 100%;
                margin-left: 1.5rem;
                margin-top: 0;
                overflow: visible;
                padding: 0;
                position: absolute;
                right: auto;
                top: -18px;
                width: auto;
                z-index: 10
            }
        }

        @media screen and (min-width:1099px) {
            .tc-modal.col-span-3-2xl>div:before {
                border-bottom: 13px solid #0000;
                border-right: 18px solid #fff;
                border-top: 13px solid #0000;
                content: "";
                height: 0;
                position: absolute;
                right: 100%;
                top: 29px;
                width: 0
            }
        }

        @media(max-width:757px) {
            .tc-modal.max-md-page-view:before {
                display: none
            }
        }

        @media not all and (min-width:758px) {
            .tc-modal.max-md-page-view .tc-modal__box {
                background-color: var(--black-4);
                border-radius: 0;
                height: 100%
            }

            .tc-modal.max-md-page-view .tc-modal__box .tc-modal-swipe {
                display: none
            }

            .tc-modal.max-md-page-view .tc-modal__box--slot {
                padding-top: 0
            }
        }

/* --- Extracted from basket.html style tag 17 --- */
.white-box__title {
            font-family: DIN Pro Black, DIN Pro Bold Fallback, sans-serif;
            font-size: 24px;
            line-height: 1.2;
            text-transform: uppercase
        }

        @media(min-width:758px) {
            .white-box__title {
                letter-spacing: .02em
            }
        }

        @media screen and (max-width:757px) {
            .mini-list li {
                display: none
            }

            .mini-list li:first-child,
            .mini-list li:nth-child(2),
            .mini-list li:nth-child(3) {
                display: block
            }
        }

/* --- Extracted from CeSFg_NK.css --- */
.tc-counter{align-items:center;display:inline-flex;justify-content:center}.tc-counter.tc-counter-white .tc-counter__btn{background:var(--white)}@media(hover:hover){.tc-counter.tc-counter-white .tc-counter__btn:hover:not(:disabled){background:var(--black);border-color:var(--black);color:var(--white)}.tc-counter.tc-counter-white .tc-counter__btn:hover:not(:disabled):not(.scale-1){box-shadow:0 0 0 1px var(--black)}}.tc-counter.tc-counter-glassy .tc-counter__btn{background:var(--opacity-4)}@media(hover:hover){.tc-counter.tc-counter-glassy .tc-counter__btn:hover:not(:disabled){background:var(--opacity-8)}.tc-counter.tc-counter-glassy .tc-counter__btn:hover:not(:disabled):not(.scale-1){box-shadow:0 0 0 1px var(--opacity-8)}.tc-counter.tc-counter-glassy .tc-counter__btn:active:not(:disabled){background:var(--black-6)}}.tc-counter.tc-counter-sm .tc-counter__btn{border-radius:5px;height:20px;width:20px}.tc-counter.tc-counter-sm .tc-counter__input{align-items:center;display:flex;font-size:10px;height:20px;justify-content:center;padding:2px;width:20px}.tc-counter.tc-counter-lg{background:var(--black-4);border-radius:12px;gap:0;width:100%}.tc-counter.tc-counter-lg .tc-counter__btn{border-radius:12px;height:44px;min-width:44px;width:44px}.tc-counter.tc-counter-lg .tc-counter__btn svg{height:16px;width:16px}.tc-counter.tc-counter-lg .tc-counter__input{align-items:center;background:var(--black-4);border-radius:0;cursor:text;display:flex;flex:1;font-size:16px;height:44px;justify-content:center;line-height:44px;overflow:hidden;padding:12px;transform:none}.tc-counter.tc-counter-lg .tc-counter__input--input{margin-right:4px;max-width:100%}.tc-counter__btn{align-items:center;background:var(--black-4);border-radius:8px;display:flex;height:32px;justify-content:center;transition:.2s;width:32px}.tc-counter__btn:disabled{color:var(--black-30)}@media(hover:hover){.tc-counter__btn:hover{background:var(--black-5)}.tc-counter__btn:hover:not(.scale-1){box-shadow:0 0 0 1px var(--black-5)}.tc-counter__btn:active{background:var(--black-6)}}.tc-counter__input{padding:4px;text-align:center;width:40px}.tc-counter__input.text-wrap{padding:0 12px;width:auto}.tc-counter__input input{background:#0000;height:auto;text-align:center;width:100%}

/* --- Extracted from CHPqa4Jp.css --- */
.tc-weight{align-items:center;border-radius:8px;cursor:pointer;display:inline-flex;justify-content:center;min-height:32px;padding:4px 10px 2px;position:relative;transition:var(--ts);z-index:1}.tc-weight.active{background:var(--black-4)}.tc-tile.bg-gray .tc-weight.active{background:var(--white)}.tc-weight__text{font-size:14px;line-height:1.2}.tc-weight__sup{color:var(--black-50);font-family:Gotham Pro Medium,"sans-serif";font-size:8px;letter-spacing:.06rem;line-height:1.2;margin-left:-10px;margin-right:-7px;margin-top:-12px}.mini>.tc-tile .tc-tile__option--select{display:none}.tc-tile__option{align-items:center;display:flex;width:100%}.tc-tile__option:empty{min-height:2.5rem}@media not all and (min-width:1100px){.basket-options .options-measurable{order:1;width:100%}}

/* --- Extracted from CL9i38Sd.css --- */
.tc-tooltip{display:inline;position:relative}.tc-tooltip.tooltip-active .tc-tooltip__btn,.tc-tooltip.tooltip-active .tc-tooltip__btn-slot{z-index:25}.tc-tooltip.tooltip-active .tc-tooltip__btn-slot:after,.tc-tooltip.tooltip-active .tc-tooltip__btn:after{display:block}.tc-tooltip.tooltip-active .tc-tooltip__dropdown:not(.tc-tooltip__dropdown--portal){display:block;opacity:1;visibility:visible}.tc-tooltip.d-block{display:block}.tc-tooltip__btn{cursor:pointer;display:inline-block;position:relative}.tc-tooltip__btn:after{content:"";display:none;height:calc(100% + 48px);margin:auto;min-width:100%;opacity:0;position:absolute;right:50%;top:50%;transform:translate(50%,-50%);width:64px}@media screen and (max-width:757px){.tc-tooltip__btn:after{width:32px}}.tc-tooltip__btn-slot{cursor:pointer;display:inline;position:relative}.tc-tooltip__btn-slot:empty{display:none}.tc-tooltip__btn-slot:after{content:"";display:none;height:calc(100% + 48px);margin:auto;min-width:100%;opacity:0;position:absolute;right:50%;top:50%;transform:translate(50%,-50%);width:64px}@media screen and (max-width:757px){.tc-tooltip__btn-slot:after{width:32px}}.tc-tooltip .mini:after{content:"";display:none;height:100%;margin:auto;min-width:100%;opacity:0;position:absolute;right:50%;top:50%;transform:translate(50%,-50%);width:64px}@media screen and (max-width:757px){.tc-tooltip .mini:after{width:32px}}.tc-tooltip__dropdown{color:var(--black);display:none;max-width:calc(100dvw - 32px);opacity:0;visibility:hidden;z-index:60}.tc-tooltip__dropdown--wrap{background:#fff;border-radius:16px;padding:24px;width:100%}.tc-tooltip__dropdown.bottom-start{padding-left:8px}.tc-tooltip__btn.w-14~.tc-tooltip__dropdown.bottom-start{padding-left:27px}.tc-tooltip__dropdown.bottom-start .tc-tooltip__dropdown--wrap{border-radius:0 16px 16px}.tc-tooltip__dropdown.bottom-start .tc-tooltip__dropdown--arrow{border-bottom:18px solid #fff;border-right:18px solid #0000;margin-left:8px;top:-17px}.tc-tooltip__dropdown.top-start{padding-left:8px}.tc-tooltip__btn.w-14~.tc-tooltip__dropdown.top-start{padding-left:27px}.tc-tooltip__dropdown.top-start .tc-tooltip__dropdown--wrap{border-radius:16px 16px 16px 0}.tc-tooltip__dropdown.top-start .tc-tooltip__dropdown--arrow{border-right:18px solid #0000;border-top:18px solid #fff;bottom:-17px;margin-left:8px}.tc-tooltip__dropdown.bottom-end{padding-right:8px}.tc-tooltip__btn.w-14~.tc-tooltip__dropdown.bottom-end{padding-right:27px}.tc-tooltip__dropdown.bottom-end .tc-tooltip__dropdown--wrap{border-radius:16px 0 16px 16px}.tc-tooltip__dropdown.bottom-end .tc-tooltip__dropdown--arrow{border-bottom:18px solid #fff;border-left:18px solid #0000;margin-left:-8px;top:-17px}.tc-tooltip__dropdown.top-end{padding-right:8px}.tc-tooltip__btn.w-14~.tc-tooltip__dropdown.top-end{padding-right:27px}.tc-tooltip__dropdown.top-end .tc-tooltip__dropdown--wrap{border-radius:16px 16px 0}.tc-tooltip__dropdown.top-end .tc-tooltip__dropdown--arrow{border-left:18px solid #0000;border-top:18px solid #fff;bottom:-17px;margin-left:-8px}.tc-tooltip__dropdown.offset-center,.tc-tooltip__dropdown.offset-x{padding:0}.tc-tooltip__dropdown.offset-center .tc-tooltip__dropdown--wrap,.tc-tooltip__dropdown.offset-x .tc-tooltip__dropdown--wrap{border-radius:16px}.tc-tooltip__dropdown.offset-center.bottom-end,.tc-tooltip__dropdown.offset-center.bottom-start,.tc-tooltip__dropdown.offset-x.bottom-end,.tc-tooltip__dropdown.offset-x.bottom-start{margin-top:-6px}.tc-tooltip__dropdown.offset-center.bottom-end .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-center.bottom-start .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-x.bottom-end .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-x.bottom-start .tc-tooltip__dropdown--arrow{border-bottom:24px solid #fff;border-left:12px solid #0000;border-right:12px solid #0000;top:-14px}.tc-tooltip__dropdown.offset-center.top-end,.tc-tooltip__dropdown.offset-center.top-start,.tc-tooltip__dropdown.offset-x.top-end,.tc-tooltip__dropdown.offset-x.top-start{margin-top:6px}.tc-tooltip__dropdown.offset-center.top-end .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-center.top-start .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-x.top-end .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-x.top-start .tc-tooltip__dropdown--arrow{border-left:12px solid #0000;border-right:12px solid #0000;border-top:24px solid #fff;bottom:-14px}.tc-tooltip__dropdown.offset-center.bottom-start:not(.mx-0),.tc-tooltip__dropdown.offset-center.top-start:not(.mx-0),.tc-tooltip__dropdown.offset-x.bottom-start:not(.mx-0),.tc-tooltip__dropdown.offset-x.top-start:not(.mx-0){margin-left:-16px}.tc-tooltip__dropdown.offset-center.bottom-end:not(.mx-0),.tc-tooltip__dropdown.offset-center.bottom-start:not(.mx-0) .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-center.top-end:not(.mx-0),.tc-tooltip__dropdown.offset-center.top-start:not(.mx-0) .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-x.bottom-end:not(.mx-0),.tc-tooltip__dropdown.offset-x.bottom-start:not(.mx-0) .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-x.top-end:not(.mx-0),.tc-tooltip__dropdown.offset-x.top-start:not(.mx-0) .tc-tooltip__dropdown--arrow{margin-left:16px}.tc-tooltip__dropdown.offset-center.bottom-end:not(.mx-0) .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-center.top-end:not(.mx-0) .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-x.bottom-end:not(.mx-0) .tc-tooltip__dropdown--arrow,.tc-tooltip__dropdown.offset-x.top-end:not(.mx-0) .tc-tooltip__dropdown--arrow{margin-left:-16px}.tc-tooltip__dropdown.offset-center .tc-tooltip__dropdown--arrow{margin-left:0;margin-right:0}.tc-tooltip__dropdown--arrow{margin:auto;position:absolute}.tc-tooltip__dropdown--portal{display:block;opacity:1;visibility:visible;z-index:70}@media(min-width:576px){.tc-tooltip__dropdown{max-width:440px}}

/* --- Extracted from CVtRrhTG.css --- */
.tc-checkbox{align-items:center;display:flex}.tc-checkbox:hover .tc-checkbox__input:before{opacity:1}.tc-checkbox.checkbox-white .tc-checkbox__input{background-color:var(--white);border-color:var(--white)}.tc-checkbox.checkbox-white .tc-checkbox__input:before{background-color:#fff}.tc-checkbox.checkbox-white .tc-checkbox__input:disabled{opacity:.6}.tc-checkbox.checkbox-dark .tc-checkbox__input{background-color:var(--black-80);border-color:var(--black-80)}.tc-checkbox.checkbox-dark .tc-checkbox__input:before{filter:invert(100%)}.tc-checkbox.checkbox-dark .tc-checkbox__text{color:var(--black-50)}.tc-checkbox.checkbox-glassy .tc-checkbox__input{background-color:var(--opacity-4);border-color:var(--opacity-4)}.tc-checkbox.checkbox-glassy .tc-checkbox__input:before{background-color:var(--opacity-4)}.tc-checkbox__input{-webkit-appearance:none;appearance:none;background-color:var(--black-4);border-color:var(--black-4);border-radius:4px;height:24px;margin-right:8px;min-width:24px;position:relative;transition:var(--ts);width:24px}.tc-checkbox__input:last-child{margin-right:0}.tc-checkbox__input:before{background-color:var(--opacity-4);background-position:50%;background-repeat:no-repeat;background-size:14px;border-radius:inherit;content:"";height:100%;left:0;opacity:0;position:absolute;top:0;transition:var(--ts);width:100%}.tc-checkbox__input:checked:before{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='17' height='14' fill='none' viewBox='0 0 17 14'%3E%3Cpath stroke='%23000' stroke-width='3' d='M1.703 6.5 6.37 11l9.333-9'/%3E%3C/svg%3E");opacity:1}.tc-checkbox__text{line-height:20px}.tc-checkbox__text.sm{font-size:14px;line-height:17px}.tc-checkbox__text.din-black-24{font-family:DIN Pro Black,DIN Pro Bold Fallback,sans-serif;font-size:24px;line-height:1.2;text-transform:uppercase}@media(min-width:758px){.tc-checkbox__text.din-black-24{letter-spacing:.02em}}@media screen and (min-width:1100px){.tc-checkbox.xl\:checkbox-secondary .tc-checkbox__input{background-color:var(--black-4);border-color:var(--black-4)}.tc-checkbox.xl\:checkbox-secondary .tc-checkbox__input:before{background-color:var(--opacity-4)}}@media screen and (max-width:1099px){.tc-checkbox.max-xl\:checkbox-xl .tc-checkbox__input{border-radius:8px;height:32px;min-width:32px;width:32px}.tc-checkbox.max-xl\:tag-white .tc-checkbox__input{display:none}.tc-checkbox.max-xl\:tag-white .tc-checkbox__input:checked~.tc-checkbox__text{background:var(--black);color:var(--white);font-family:Gotham Pro Medium,"sans-serif"}.tc-checkbox.max-xl\:tag-white .tc-checkbox__text{align-items:center;background:#fff;border-radius:8px;display:flex;min-height:32px;padding:4px 12px}}@media screen and (max-width:1099px)and (max-width:757px){.tc-checkbox.max-xl\:tag-white .tc-checkbox__text{font-size:14px}}@media screen and (max-width:757px){.tc-checkbox.max-md\:tag-white .tc-checkbox__input{display:none}.tc-checkbox.max-md\:tag-white .tc-checkbox__input:checked~.tc-checkbox__text{background:var(--black);color:var(--white);font-family:Gotham Pro Medium,"sans-serif"}.tc-checkbox.max-md\:tag-white .tc-checkbox__text{align-items:center;background:#fff;border-radius:8px;display:flex;min-height:32px;padding:4px 12px}}@media screen and (max-width:757px)and (max-width:757px){.tc-checkbox.max-md\:tag-white .tc-checkbox__text{font-size:14px}}

/* --- Extracted from D_9GsFFq.css --- */
.tc-checkbox-gift{display:flex;flex-direction:column;height:100%;position:relative}.tc-checkbox-gift>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.tc-checkbox-gift{background-color:var(--black-4);border-radius:.5rem;padding:.75rem;text-align:center}.tc-checkbox-gift__input{height:1.5rem;left:.5rem;margin-bottom:auto;position:absolute;top:.5rem;width:1.5rem}.tc-checkbox-gift__input+.tc-checkbox-gift__title,.tc-checkbox-gift__input+.tc-checkbox-gift__weight{padding-top:1rem}.tc-checkbox-gift__img{height:4rem;margin-left:auto;margin-right:auto;width:3.5rem}.tc-checkbox-gift__title{width:100%}.tc-checkbox-gift__weight{margin-left:auto;margin-right:auto;width:50%}.tc-checkbox-gift .border-checked{border-color:var(--black);border-radius:.5rem;border-width:2px;height:100%;left:0;opacity:0;position:absolute;top:0;transition-duration:.3s;width:100%}

/* --- Extracted from CXwRM5Zy.css --- */
.tc-input{display:block;position:relative;width:100%}.tc-input.error .tc-input__field--input{color:var(--red)}.tc-input.input-empty input{background:#0000;border:none;max-width:100%;outline:none}.tc-input.tc-input-dark .tc-input__field--input{background:var(--black-80);border:1px solid var(--black-80)}.tc-input.tc-input-dark .tc-input__field--btn-text{opacity:.3}@media screen and (min-width:1100px){.tc-input.tc-input-dark-xl .tc-input__field--input{background:var(--black-80);border:1px solid var(--black-80)}.tc-input.tc-input-dark-xl .tc-input__field--btn-text{opacity:.3}}.tc-input.tc-input-gift-card .tc-input__field:before{background:#fff;bottom:6px;content:"";height:1px;position:absolute;width:100%}@media screen and (max-width:757px){.tc-input.tc-input-gift-card .tc-input__field:before{bottom:0}}.tc-input.tc-input-gift-card .tc-input__field--input{background-color:initial;border-radius:0;border-style:none;font-family:DIN Pro Black,DIN Pro Bold Fallback,sans-serif;font-size:50px;height:50px;letter-spacing:.01em;line-height:1;padding:0!important;text-transform:uppercase}@media(min-width:758px){.tc-input.tc-input-gift-card .tc-input__field--input{font-size:125px;height:125px}}.tc-input__label{display:block;font-family:Gotham Pro Medium,"sans-serif";font-size:14px;line-height:1.3;margin:0 0 4px;width:100%}.tc-input__field{display:block;position:relative;width:100%}.tc-input__field--btn-left{height:24px;inset:0 auto 0 12px;margin:auto 0;position:absolute;width:24px}.tc-input__field--btn-left~.tc-input__field--input{padding-left:40px}.tc-input__field--btn-right{align-items:center;display:flex;height:40px;justify-content:center;inset:0 0 0 auto;margin:auto 0;position:absolute;width:40px}.tc-input__field--btn-text{align-items:center;bottom:0;cursor:pointer;display:flex;margin:auto;position:absolute;right:1rem;top:0}.tc-input__field--input{background:var(--black-4);border:1px solid var(--black-4);border-radius:12px;font-size:16px;height:44px;line-height:44px;padding-bottom:8px;padding-left:12px;padding-top:8px;text-overflow:ellipsis;transition:background-color var(--ts),border-color var(--ts);width:100%}.tc-input__field--input:not([class*=pr-]){padding-right:12px}.tc-input__field--input::placeholder{color:var(--black-50);opacity:1}.tc-input__field--input:hover{background:var(--black-5);border-color:var(--black-5)}.tc-input__field--input:active{background:var(--black-4);border-color:var(--black-4)}.tc-input__field--input[type=password]{letter-spacing:4px}.tc-input__field--input[type=password]::placeholder{letter-spacing:0}.tc-input__field--input[type=search]::-webkit-search-cancel-button,.tc-input__field--input[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.tc-input__field--input[type=search]:placeholder-shown~.tc-input__field--btn-right,.tc-input__field--input[type=search]:placeholder-shown~.tc-input__field--btn-text{display:none}.tc-input__field--input[type=search]~.tc-input__field--btn-right svg{height:20px;width:20px}.tc-phone .tc-input__field--input{background:inherit;border:none;border-radius:0;padding-left:0}.tc-input.input-white .tc-input__field--input{background:var(--white);border:1px solid var(--white)}.tc-input.input-white .tc-input__field--input:active,.tc-input.input-white .tc-input__field--input:hover{background:var(--white);border-color:var(--white)}.tc-input.input-transparent .tc-input__field--input{background:#0000;border:1px solid #0000}.tc-input.input-transparent .tc-input__field--input:active,.tc-input.input-transparent .tc-input__field--input:hover{background:#0000;border-color:#0000}.tc-input.no-padding input{padding:0!important}@media screen and (min-width:1100px){.tc-input.xl\:input-secondary .tc-input__field--input{background:var(--black-4);border:1px solid var(--black-4)}.tc-input.xl\:input-secondary .tc-input__field--input:hover{background:var(--black-5);border-color:var(--black-5)}.tc-input.xl\:input-secondary .tc-input__field--input:active{background:var(--black-4);border-color:var(--black-4)}}@media screen and (min-width:758px){.tc-input.md\:input-secondary .tc-input__field--input{background:var(--black-4);border:1px solid var(--black-4)}.tc-input.md\:input-secondary .tc-input__field--input:hover{background:var(--black-5);border-color:var(--black-5)}.tc-input.md\:input-secondary .tc-input__field--input:active{background:var(--black-4);border-color:var(--black-4)}}@media(min-width:1100px){.tc-input-dark-xl .text-\[var\(--red\)\]{color:var(--red-light)}}input.hide-controls::-webkit-inner-spin-button,input.hide-controls::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}

/* --- Extracted from CbrgtX2j.css --- */
.tc-textarea{width:100%}.tc-textarea__field{border-radius:12px;box-shadow:none;display:block;line-height:20px;outline:none;padding:12px;width:100%}.tc-textarea__field::placeholder{color:var(--black-50);opacity:1}.tc-textarea.white-textarea{background:#0000;outline:none}.tc-textarea.secondary-textarea .tc-textarea__field{background:var(--black-4)}

/* --- Extracted from B8j_iAoN.css --- */
.tc-phone__label{display:block;font-family:Gotham Pro Medium,"sans-serif";font-size:14px;line-height:1.3;margin:0 0 4px;width:100%}.tc-phone__field{align-items:center;background:var(--black-4);border-radius:12px;display:flex;transition:background-color var(--ts),border-color var(--ts)}.tc-phone__field:hover{background:var(--black-5)}.tc-phone__field:active{background:var(--black-6)}.tc-phone.input-white .tc-phone__field,.tc-phone.input-white .tc-phone__field:active,.tc-phone.input-white .tc-phone__field:hover,.tc-phone.select-white .tc-phone__field,.tc-phone.select-white .tc-phone__field:active,.tc-phone.select-white .tc-phone__field:hover{background:var(--white)}@media screen and (max-width:1099px){.tc-phone.max-xl\:input-white .tc-phone__field,.tc-phone.max-xl\:input-white .tc-phone__field:active,.tc-phone.max-xl\:input-white .tc-phone__field:hover,.tc-phone.max-xl\:select-white .tc-phone__field,.tc-phone.max-xl\:select-white .tc-phone__field:active,.tc-phone.max-xl\:select-white .tc-phone__field:hover{background:var(--white)}}

/* --- Extracted from DKQPTsAA.css --- */
.tc-select{display:block;position:relative;width:100%}.tc-select.inline-block{display:inline-block}.tc-select.w-auto{width:auto}.tc-select.high-height .tc-select__field--dropdown{max-height:300px}.tc-select.error .tc-select__field--select{color:var(--red)}.tc-select.disabled .tc-select__field--select .select-text,.tc-select:disabled .tc-select__field--select .select-text{color:var(--black-50)}.tc-select.disabled .tc-select__field--select .tc-select__field--arr,.tc-select:disabled .tc-select__field--select .tc-select__field--arr{opacity:.5}.tc-select.select-white .tc-select__field--select{background:var(--white);border:1px solid var(--white)}.tc-select.select-white .tc-select__field--select:active,.tc-select.select-white .tc-select__field--select:hover{background:var(--white);border-color:var(--white)}.tc-select.disabled .tc-select.select-white .tc-select__field--select{background:var(--white);border:1px solid var(--white)}.tc-select.select-white .tc-select__field--dropdown{background:var(--white)}.tc-select__label{display:block;font-family:Gotham Pro Medium,"sans-serif";font-size:14px;line-height:1.3;margin:0 0 4px;width:100%}.tc-select__field{display:block;position:relative;width:100%;z-index:1}.tc-select__field--select{align-items:center;background:var(--black-4);border:1px solid var(--black-4);border-radius:12px;display:flex;font-size:16px;height:44px;line-height:1.3;padding:8px 38px 8px 12px;transition:var(--ts);transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;width:100%}.tc-tile.bg-gray .tc-select__field--select{background:var(--white);border:1px solid var(--white)}.tc-select__field--select:hover{background:var(--black-5);border-color:var(--black-5)}.tc-select__field--select:active{background:var(--black-6);border-color:var(--black-6)}.tc-select.disabled .tc-select__field--select{background:var(--black-4);border:1px solid var(--black-4)}.tc-select__field--select .select-text{line-height:1.3;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.tc-phone .tc-select__field--select{background:inherit;border:none;border-radius:0;padding-right:22px}.tc-select__field--arr{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='13' height='15' fill='none' viewBox='0 0 13 15'%3E%3Cmask id='a' width='13' height='15' x='0' y='0' maskUnits='userSpaceOnUse' style='mask-type:alpha'%3E%3Cpath fill='%23d9d9d9' d='M13 .5v14H0V.5z'/%3E%3C/mask%3E%3Cg mask='url(%23a)'%3E%3Cpath fill='%23000' d='m2 6.254.799-.754L6.5 8.993 10.201 5.5l.799.754L6.5 10.5z'/%3E%3C/g%3E%3C/svg%3E");background-position:50%;background-repeat:no-repeat;background-size:contain;bottom:0;cursor:pointer;height:14px;margin:auto;position:absolute;right:12px;top:0;width:14px}.tc-phone .tc-select__field--arr{right:4px}.tc-select__field--dropdown{background:var(--black-4);border-radius:8px;box-shadow:0 4px 28px #0000000f;flex-direction:column;max-height:164px;min-width:220px;width:100%;z-index:11}.tc-select__field--dropdown .dropdown-list{flex:1;max-height:100%;overflow:auto;padding:8px 0;width:100%}.tc-select__field--dropdown .dropdown-list li{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:8px 8px 8px 12px;transition:var(--ts)}.tc-select__field--dropdown .dropdown-list li.active{color:var(--black-50)}.tc-select__field--dropdown .dropdown-list li:hover{background:var(--black-5)}.tc-select__field--dropdown .dropdown-list li:active{background:var(--black-6);color:var(--black-50)}.tc-select__field--dropdown:before{content:"";height:8px;left:0;opacity:0;position:absolute;top:100%;width:100%}.tc-select__field--dropdown:after{bottom:100%;content:"";height:8px;left:0;opacity:0;position:absolute;width:100%}.tc-phone .tc-select__field--dropdown{min-width:203px}.tc-tile .tc-select__field--dropdown{inset:auto 0 0 auto!important}.tc-select.xs .tc-select__field--select{border-radius:4px;font-family:Gotham Pro Medium,"sans-serif";font-size:14px;height:24px;line-height:1.3;padding:2px 24px 2px 8px}.tc-select.xs .tc-select__field--arr{background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' viewBox='0 0 12 12'%3E%3Cpath stroke='%23000' stroke-miterlimit='10' stroke-width='1.7' d='M10.388 4.51 6.006 8.891 1.623 4.509'/%3E%3C/svg%3E");height:12px;right:6px;width:12px}.tc-select.xs .tc-select__field--dropdown{border-radius:4px;max-height:112px;min-width:80px;width:auto}.tc-select.xs .tc-select__field--dropdown .dropdown-list{padding:2px 0}.tc-select.xs .tc-select__field--dropdown .dropdown-list li{font-family:Gotham Pro Medium,"sans-serif";font-size:14px;line-height:1.3;padding:0 8px 0 12px}.tc-select.xs .tc-select__field--dropdown .dropdown-list li:not(:last-child){margin-bottom:4px}.tc-select.xs .tc-select__field--dropdown .dropdown-list li.active{color:var(--black)}.tc-select.xs .tc-select__field--dropdown .dropdown-list li:hover{background:var(--black-5)}.tc-select.xs .tc-select__field--dropdown .dropdown-list li:active{background:var(--black-6);color:var(--black-50)}.tc-select.xs .tc-select__field--dropdown .dropdown-list li .icons{display:none}.tc-select.sm .tc-select__field--select{border-radius:8px;font-size:14px;height:32px;line-height:1.3;padding:2px 32px 2px 12px}.tc-select.sm .tc-select__field--arr{right:12px}.tc-select.sm .tc-select__field--dropdown{border-radius:8px;height:148px}.tc-select.sm .tc-select__field--dropdown li{font-size:14px;line-height:1.3}.tc-select.sm .tc-select__field.card-product .tc-select__field--dropdown{height:auto;max-height:310px;width:263px;z-index:40}.tc-select.sm .tc-select__field.card-product .tc-select__field--dropdown .dropdown-list{padding-top:0}.tc-select.sm .tc-select__field.card-product .tc-select__field--dropdown .dropdown-list li{line-height:16px;padding-bottom:5px;padding-top:4px}.tc-select.sm .tc-select__field.card-product .tc-select__field--dropdown .dropdown-list li .icons{height:16px;width:16px}header .tc-select.sm .tc-select__field.card-product .tc-select__field--dropdown{height:120px;max-height:120px}.tc-select.phone-select{padding:0 6px}.tc-select.phone-select .tc-select__field--select{background-color:var(--opacity-4);border-radius:8px;font-size:14px;height:32px;line-height:1.2;padding:2px 22px 2px 8px}.tc-select .image-select{margin:4px 4px 4px 0;max-height:20px;max-width:40px}@media screen and (min-width:1100px){.tc-select.xl\:select-white .tc-select__field--select{background:var(--white);border:1px solid var(--white)}.tc-select.xl\:select-white .tc-select__field--select:active,.tc-select.xl\:select-white .tc-select__field--select:hover{background:var(--white);border-color:var(--white)}.tc-select.disabled .tc-select.xl\:select-white .tc-select__field--select{background:var(--white);border:1px solid var(--white)}.tc-select.xl\:select-white .tc-select__field--dropdown{background:var(--white)}}@media screen and (max-width:757px){.tc-select.max-md\:select-white .tc-select__field--select{background:var(--white);border:1px solid var(--white)}.tc-select.max-md\:select-white .tc-select__field--select:active,.tc-select.max-md\:select-white .tc-select__field--select:hover{background:var(--white);border-color:var(--white)}.tc-select.disabled .tc-select.max-md\:select-white .tc-select__field--select{background:var(--white);border:1px solid var(--white)}.tc-select.max-md\:select-white .tc-select__field--dropdown{background:var(--white)}.tc-select.max-md\:sm .tc-select__field--select{border-radius:8px;font-size:14px;height:32px;line-height:1.3;padding:2px 32px 2px 12px}.tc-select.max-md\:sm .tc-select__field--arr{right:12px}.tc-select.max-md\:sm .tc-select__field--dropdown{border-radius:8px;height:148px}.tc-select.max-md\:sm .tc-select__field--dropdown li{font-size:14px;line-height:1.3}.tc-select.max-md\:sm .tc-select__field.card-product .tc-select__field--dropdown{height:auto;max-height:310px;width:263px;z-index:40}.tc-select.max-md\:sm .tc-select__field.card-product .tc-select__field--dropdown .dropdown-list{padding-top:0}.tc-select.max-md\:sm .tc-select__field.card-product .tc-select__field--dropdown .dropdown-list li{line-height:16px;padding-bottom:5px;padding-top:4px}.tc-select.max-md\:sm .tc-select__field.card-product .tc-select__field--dropdown .dropdown-list li .icons{height:16px;width:16px}header .tc-select.max-md\:sm .tc-select__field.card-product .tc-select__field--dropdown{height:120px;max-height:120px}}

/* --- Extracted from B0_vjm2B.css --- */
@media not all and (min-width:758px){.tc-input.input-white.md\:input-secondary~.tc-input-selection__dropdown{--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}}.tc-input-selection{display:block;position:relative;width:100%}.tc-input-selection__dropdown{background:var(--black-4);border-radius:8px;box-shadow:0 4px 28px #0000000f;flex-direction:column;left:0;max-height:164px;min-width:220px;overflow:auto;position:absolute;top:calc(100% + 4px);width:100%;z-index:11}.tc-input-selection__dropdown .dropdown-list{flex:1;max-height:100%;padding:0;width:100%}.tc-input-selection__dropdown .dropdown-list li{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:8px 8px 8px 12px;transition:var(--ts)}.tc-input-selection__dropdown .dropdown-list li:first-child{margin-top:8px}.tc-input-selection__dropdown .dropdown-list li:last-child{margin-bottom:8px}.tc-input-selection__dropdown .dropdown-list li.active,.tc-input-selection__dropdown .dropdown-list li:hover{background:var(--black-5)}.tc-input-selection__dropdown .dropdown-list li:active{background:var(--black-6);color:var(--black-50)}body.is-app .header-select-city__window .tc-input-selection__dropdown .dropdown-list li{border-bottom:1px solid var(--opacity-4);padding:16px 0}body.is-app .header-select-city__window .tc-input-selection__dropdown .dropdown-list li:first-child{padding-top:12px}body.is-app .header-select-city__window .tc-input-selection__dropdown .dropdown-list li:last-child{border-bottom:none}.tc-input-selection__dropdown:before{bottom:100%;content:"";height:8px;left:0;opacity:0;position:absolute;width:100%}

/* --- Extracted from D_DZfihc.css --- */
.tc-modal{display:flex;height:100%;left:0;padding-top:0;position:fixed;top:0;width:100%;z-index:60}@media not all and (min-width:758px){.tc-modal{touch-action:none}}@media(min-width:758px){.tc-modal{justify-content:center;overflow:auto;padding:1rem}}.tc-modal .tc-modal-swipe{display:flex;height:2rem;left:0;position:absolute;top:0;width:100%;z-index:20}@media(min-width:758px){.tc-modal .tc-modal-swipe{display:none}}.tc-modal .tc-modal-swipe:after{background:var(--black-50);border-radius:4px;content:"";display:block;height:4px;margin:auto;width:96px}.tc-modal:before{background:var(--black-16);content:"";height:100%;left:0;position:fixed;top:0;width:100%;z-index:-1}body.show-backdrop .tc-modal:before{display:none}body.show-backdrop .tc-modal .tc-modal__box:before{background:var(--black-16);content:"";height:100%;left:0;position:absolute;top:0;width:100%;z-index:2}.tc-modal__box{border-top-left-radius:1.5rem;border-top-right-radius:1.5rem;margin-top:auto;position:relative;width:100%}@media not all and (min-width:758px){.tc-modal__box{display:flex;max-height:calc(100% - 64px);padding:0}}@media(min-width:758px){.tc-modal__box{border-radius:1.5rem;margin-bottom:auto;margin-top:auto}}.tc-modal__box:not([class*=bg-]){--tw-bg-opacity:1;background-color:rgb(255 255 255/var(--tw-bg-opacity,1))}@media(min-width:758px){.tc-modal__box:not([class*=max-w-]){max-width:390px}.tc-modal__box:not([class*=p-]){padding:1.5rem}}.tc-modal__box--slot{width:100%;z-index:10}@media not all and (min-width:758px){.tc-modal__box--slot{overflow-y:scroll;padding:2rem 1rem 1rem}}@media(min-width:1440px){.tc-modal.col-span-3-2xl{background-color:initial;left:100%;margin-left:1.5rem;margin-top:0;overflow:visible;padding:0;position:absolute;right:auto;top:-18px;width:auto;z-index:10}}@media screen and (min-width:1099px){.tc-modal.col-span-3-2xl>div:before{border-bottom:13px solid #0000;border-right:18px solid #fff;border-top:13px solid #0000;content:"";height:0;position:absolute;right:100%;top:29px;width:0}}@media(max-width:757px){.tc-modal.max-md-page-view:before{display:none}}@media not all and (min-width:758px){.tc-modal.max-md-page-view .tc-modal__box{background-color:var(--black-4);border-radius:0;height:100%}.tc-modal.max-md-page-view .tc-modal__box .tc-modal-swipe{display:none}.tc-modal.max-md-page-view .tc-modal__box--slot{padding-top:0}}

/* --- Extracted from BsRfNn-w.css --- */
.tc-skeleton{background-color:#d9d9d96b;display:block;overflow:hidden;position:relative;width:100%}.tc-skeleton:not([class*=rounded]){border-radius:12px}.tc-skeleton:after{animation:shimmer-ff704ab2 3s infinite;background-image:linear-gradient(90deg,#fff0,#fff6 20%,#fff9 60%,#fff0);content:"";inset:0;position:absolute;transform:translate(-100%)}@keyframes shimmer-ff704ab2{to{transform:translate(100%)}}

/* Fix: «Сбросить все фильтры» — белый текст на чёрной кнопке (специфичность побеждает .tc-catalog-sidebar a и пр.) */
a.tc-reset-filters.tc-reset-filters--all,
a.tc-reset-filters.tc-reset-filters--all:link,
a.tc-reset-filters.tc-reset-filters--all:visited {
    background: #000 !important;
    color: #fff !important;
}
a.tc-reset-filters.tc-reset-filters--all:hover { opacity: .85; color: #fff !important; }

/* Backdrop: header ichida, z-1.
   Header content z-20 (search) → backdrop ustida.
   Header background opaq → normal holatda backdrop header fonida qorarmaydi.
   Community tooltip show-backdrop → backdrop ko'rinadi, header qoraradi. */
.backdrop {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    min-height: 100vh !important;
    height: 100% !important;
    background: var(--black-16) !important;
    opacity: 0;
    visibility: hidden;
    z-index: 1;
    pointer-events: none;
}
body.show-backdrop .backdrop {
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto;
}


/* ===== Page loader (видео-интро при первом входе + 1s лоадер при навигации) ===== */
.page-loader {
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 1;
    transition: opacity 0.4s ease;
}
.page-loader--hide {
    opacity: 0;
    pointer-events: none;
}
.page-loader__video {
    width: min(280px, 56vw);
    height: auto;
}

/* ===== Линейный прогресс сверху ===== */
.top-progress {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 3px;
    z-index: 100000;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.2s ease;
}
.top-progress--active { opacity: 1; }
.top-progress__bar {
    height: 100%;
    width: 0%;
    background: #1a1a1a;
    border-radius: 0 2px 2px 0;
    transition: width 0.9s cubic-bezier(0.2, 0.6, 0.3, 1);
}

/* tc-tag (catalog hashtag pills) */
.tc-tag {
    align-items: center;
    background-color: var(--black-4, #f0f0f0);
    border-radius: .75rem;
    color: var(--black, #000);
    cursor: pointer;
    display: inline-flex;
    min-height: 44px;
    padding: .25rem .75rem;
    text-decoration: none;
    transition-duration: .3s;
}
.tc-tag:hover { background-color: var(--black-5, #e8e8e8); }
.tc-tag.active, .tc-tag:active { background: #000; color: #fff; }
.tc-tag.active .tc-tag__hashtag, .tc-tag:active .tc-tag__hashtag { color: rgba(255,255,255,0.5) !important; }
.tc-tag__hashtag { color: var(--black-50, #888); margin-right: .25rem; }
.tag-white { background: var(--white, #fff); }
.tag-white:hover { background: var(--black-5, #e8e8e8); }
.tc-tag.tag-white.active, .tc-tag.tag-white:active { background: #000; color: #fff; }
.scrollbar-touch-hide::-webkit-scrollbar { display: none; }
.scrollbar-touch-hide { -ms-overflow-style: none; scrollbar-width: none; }
}

/* =====================================================
   BASKET PAGE OVERRIDES
   ===================================================== */

/* Remove underline from guarantee block */
.button-basket {
    border-bottom: none !important;
}

/* Remove link-doted underline in basket */
/* Basket page */
