.araliales-price-unit {
    font-size: .72em;
    font-weight: 500;
    white-space: nowrap;
}

.araliales-product-units-output {
    margin: -.45em 0 1.25em;
}

.araliales-product-units-output[hidden] {
    display: none !important;
}

.araliales-secondary-price {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: .35em;
}

.araliales-secondary-price__value {
    font-size: 1.08em;
    line-height: 1.3;
    white-space: nowrap;
}

.araliales-secondary-price__value .woocommerce-Price-amount {
    font: inherit;
}

.araliales-secondary-price__unit {
    font-size: .82em;
    font-weight: 500;
    white-space: nowrap;
}

.araliales-conversion-note {
    margin-top: .2em;
    font-size: .82em;
    opacity: .68;
}

.araliales-price-stack {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 3px;
}

.araliales-primary-price {
    display: block;
}

.araliales-reference-price {
    display: block;
    color: #5f6d5e;
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
}

.araliales-reference-price__value,
.araliales-reference-price__value .woocommerce-Price-amount,
.products .price .araliales-reference-price .woocommerce-Price-amount {
    color: #2f5f2b;
    font: inherit !important;
    font-weight: 600 !important;
}

.araliales-reference-price__value {
    white-space: nowrap;
}

.araliales-reference-price__unit {
    font-size: .92em;
    font-weight: 500;
    white-space: nowrap;
}

.araliales-reference-price__note {
    display: none;
}

.araliales-price-stack--single {
    gap: 8px;
    margin-bottom: 8px;
}

.araliales-price-stack--single > .araliales-reference-price {
    display: flex !important;
    flex-direction: column;
    align-items: flex-start;
    gap: 2px;
    width: fit-content;
    box-sizing: border-box;
    margin: 3px 0 0 !important;
    padding: 8px 12px 9px !important;
    border-left: 3px solid #2f7623;
    border-radius: 0 4px 4px 0;
    background: #f7f6f2;
    color: #1f2933;
    font-size: 15px;
    line-height: 21px !important;
}

.araliales-price-stack--single .araliales-reference-price .woocommerce-Price-amount {
    color: #0c4614;
    font: inherit !important;
    font-weight: 600 !important;
}

.araliales-price-stack--single .araliales-reference-price__note {
    display: block;
    margin-top: 0;
    color: #687268;
    font-size: 13px;
    line-height: 18px !important;
}

/*
 * Защита для связанных товаров и TheGem Products Grid на single product.
 * Даже если тема повторно выводит текущий товар внутри цикла, карточка остаётся
 * компактной и не получает справочный блок полной карточки.
 */
.products .araliales-price-stack--single {
    gap: 3px;
    margin-bottom: 0;
}

.products .araliales-price-stack--single > .araliales-reference-price {
    display: block !important;
    width: auto;
    margin: 0 !important;
    padding: 0 !important;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #5f6d5e;
    font-size: 14px;
    line-height: 20px !important;
}

.products .araliales-price-stack--single .araliales-reference-price__note {
    display: none !important;
}

.araliales-product-attributes {
    margin: 8px 0;
}

.araliales-product-attributes--chips {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
}

.araliales-product-attributes--chips .araliales-product-attributes__item {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    box-sizing: border-box;
    padding: 4px 8px;
    border: 1px solid #d7e0d5;
    border-radius: 4px;
    background: #f7f6f2;
    font-size: 14px;
    line-height: 20px;
}

.araliales-product-attributes__label {
    color: #566156;
    font-weight: 400;
}

.araliales-product-attributes__value {
    color: #18231c;
    font-weight: 600;
}

.araliales-product-attributes--grid {
    margin: 18px 0;
}

.araliales-product-attributes__title {
    margin: 0 0 6px;
    color: #0c4614;
    font-size: 20px;
    font-weight: 600;
    line-height: 28px;
}

.araliales-product-attributes__list {
    margin: 0;
    border-top: 1px solid #d7e0d5;
}

.araliales-product-attributes--grid .araliales-product-attributes__item {
    display: grid;
    grid-template-columns: minmax(130px, .8fr) minmax(0, 1.2fr);
    gap: 16px;
    margin: 0;
    padding: 7px 0;
    border-bottom: 1px solid #d7e0d5;
    font-size: 15px;
    line-height: 22px;
}

.araliales-product-attributes--grid .araliales-product-attributes__label,
.araliales-product-attributes--grid .araliales-product-attributes__value {
    margin: 0;
}

@media (max-width: 767px) {
    /*
     * В товарных циклах обе цены занимают одну строку, когда ширины хватает.
     * flex-wrap сохраняет карточку без горизонтального скролла на очень узком
     * экране или при особенно длинной цене.
     */
    .products .price .araliales-price-stack {
        display: flex !important;
        width: 100%;
        max-width: 100%;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: baseline;
        justify-content: flex-start;
        gap: 2px 12px;
        margin-bottom: 0;
    }

    .products .price .araliales-price-stack > .araliales-primary-price,
    .products .price .araliales-price-stack > .araliales-reference-price {
        display: inline-flex !important;
        width: auto;
        align-items: baseline;
        margin: 0 !important;
        white-space: nowrap;
    }

    .products .price .araliales-price-stack .araliales-reference-price__note {
        display: none !important;
    }

    .araliales-product-attributes--grid .araliales-product-attributes__item {
        grid-template-columns: minmax(92px, .75fr) minmax(0, 1.25fr);
        gap: 10px;
        padding: 7px 0;
        font-size: 14px;
        line-height: 20px;
    }
}

.araliales-filter-is-hidden {
    display: none !important;
}

.araliales-filter-value-is-hidden {
    display: none !important;
}

/* Независимая навигация по категориям WooCommerce. */
.araliales-product-categories {
    color: #17221a;
    font-size: 16px;
    line-height: 1.4;
}

.araliales-product-categories__title {
    margin: 0 0 8px;
    color: #0c4614;
    font-size: 18px;
    font-weight: 500;
    line-height: 26px;
}

.araliales-product-categories__list {
    margin: 0 !important;
    padding: 0 0 0 18px !important;
    list-style: none !important;
}

.araliales-product-categories__list--root {
    padding-left: 0 !important;
}

.araliales-product-categories__list[hidden] {
    display: none !important;
}

.araliales-product-categories__item {
    margin: 0 !important;
    padding: 0 !important;
}

.araliales-product-categories__row {
    display: flex;
    min-height: 34px;
    align-items: center;
    gap: 4px;
}

.araliales-product-categories__link {
    display: block;
    min-width: 0;
    flex: 1 1 auto;
    padding: 5px 2px;
    color: #17221a;
    text-decoration: none !important;
    overflow-wrap: anywhere;
    transition: color .15s ease;
}

.araliales-product-categories__link:hover,
.araliales-product-categories__link:focus-visible {
    color: #2f7623;
}

.araliales-product-categories__item.is-current
    > .araliales-product-categories__row > .araliales-product-categories__link,
.araliales-product-categories__item--all.is-current
    > .araliales-product-categories__link {
    color: #0c4614;
    font-weight: 600;
}

.araliales-product-categories__item.is-current-ancestor
    > .araliales-product-categories__row > .araliales-product-categories__link {
    color: #244d27;
    font-weight: 500;
}

.araliales-product-categories__toggle {
    display: inline-flex;
    flex: 0 0 30px;
    width: 30px;
    min-width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    border: 0 !important;
    border-radius: 3px;
    background: transparent !important;
    box-shadow: none !important;
    color: #265d2c;
    cursor: pointer;
}

.araliales-product-categories__toggle:hover,
.araliales-product-categories__toggle:focus-visible {
    background: rgba(47, 118, 35, .09) !important;
    outline: none;
}

.araliales-product-categories__toggle > span {
    display: block;
    width: 7px;
    height: 7px;
    border: solid currentColor;
    border-width: 0 2px 2px 0;
    transform: rotate(-45deg);
    transition: transform .16s ease;
}

.araliales-product-categories__item.is-open
    > .araliales-product-categories__row
    .araliales-product-categories__toggle > span {
    transform: rotate(45deg);
}

@media (max-width: 767px) {
    /*
     * В отдельном мобильном Hidden Grid Filter категории выводит сам TheGem,
     * поэтому отделяем именно его tax_product_cat от фильтров параметров.
     */
    .elementor-widget-thegem-extended-filter
        .style-hidden
        .portfolio-filter-item.tax_product_cat {
        margin-bottom: 22px;
        padding-bottom: 20px;
        border-bottom: 1px solid #d7e0d5;
    }

    .elementor-widget-thegem-extended-filter
        .style-hidden
        .portfolio-filter-item > .name.widget-title {
        margin: 0 0 10px;
        color: #0c4614;
        font-size: 17px;
        font-weight: 600;
        line-height: 24px;
    }
}
