/**
 * Theme Name:        avanam-clostich
 * Theme URI:         https://templatemela.com/
 * Template:          avanam
 * Author:            TemplateMela
 * Author URI:        #
 * Description:       This is a child theme of Avanam, generated by TemplateMela.
 * Version:           1.1.0
 * License:           GNU General Public License v3.0 (or later)
 * License URI:       https://www.gnu.org/licenses/gpl-3.0.html
 * Text Domain:       avanam-clostich
 * Requires at least: 6.2
 * Tested up to:      7.1
 * Requires PHP:      7.4
 * Tags: translation-ready, two-columns, right-sidebar, left-sidebar, footer-widgets, blog, custom-logo, custom-background, custom-menu, rtl-language-support, editor-style, threaded-comments, custom-colors, featured-images, wide-blocks, full-width-template, theme-options, e-commerce
 */

/* ==========================================================
   Ciuszki dla Pań — one warm, mobile-first design system
   ========================================================== */

html:root {
    --color-bg-subtle: #FBF0F1;
    --color-bg-offwhite: #FFFDFC;
    --color-bg-page: #FFFAF9;

    --color-text-strongest: #211C1B;
    --color-text-strong: #2E2928;
    --color-text-medium: #665A57;
    --color-text-subtle: #8A7C78;

    --color-accent: #D62F6A;
    --color-accent-hover: #B92759;
    --color-accent-soft: #F3A6BC;

    --color-border-subtle: #E8DAD5;
    --color-success-bg: #E7F6E7;
    --color-success-text: #397B3A;
    --color-warning: #C94A32;

    --space-1: .25rem;
    --space-2: .5rem;
    --space-3: .75rem;
    --space-4: 1rem;
    --space-5: 1.5rem;
    --space-6: 2rem;
    --radius-card: 10px;
    --radius-control: 7px;

    --global-palette1: var(--color-accent);
    --global-palette2: var(--color-accent-hover);
    --global-palette3: var(--color-text-strongest);
    --global-palette4: var(--color-text-strong);
    --global-palette5: var(--color-text-medium);
    --global-palette6: var(--color-text-subtle);
    --global-palette7: var(--color-border-subtle);
    --global-palette8: var(--color-bg-subtle);
    --global-palette9: var(--color-bg-offwhite);
}

/* Product typography and controls */

.single-product .product_title {
    color: var(--color-text-strongest);
    line-height: 1.2;
}

.single-product div.product .summary .price {
    color: var(--color-accent);
}

.single-product .summary.entry-summary {
    color: var(--color-text-medium);
}

.single-product .summary.entry-summary > * {
    max-width: 100%;
}

.single-product .woocommerce-product-details__short-description {
    color: var(--color-text-medium);
    line-height: 1.55;
}

.single-product .woocommerce-product-details__short-description ul {
    margin: var(--space-3) 0 var(--space-4);
    padding-left: 1.25rem;
}

.single-product .woocommerce-product-details__short-description li + li {
    margin-top: .35rem;
}

.single-product .bas_radio_variations label,
.single-product table.variations select {
    color: var(--color-text-strong) !important;
    background-color: var(--color-bg-offwhite) !important;
    border: 1px solid var(--color-border-subtle) !important;
    border-radius: var(--radius-control);
}

.single-product .bas_radio_variations label {
    transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.single-product .bas_radio_variations label:hover {
    border-color: var(--color-accent-soft) !important;
}

.single-product .bas_radio_variations input:checked + label {
    color: var(--color-text-strongest) !important;
    background: var(--color-bg-subtle) !important;
    border-color: var(--color-accent) !important;
    box-shadow: 0 0 0 1px var(--color-accent);
}

.single-product .reset_variations {
    color: var(--color-text-medium);
}

.single-product .quantity {
    color: var(--color-text-strongest) !important;
    background: var(--color-bg-offwhite) !important;
    border: 1px solid var(--color-border-subtle);
    border-radius: var(--radius-control);
}

.single-product .quantity .qty,
.single-product .quantity input {
    color: var(--color-text-strongest) !important;
    background: var(--color-bg-offwhite) !important;
    opacity: 1 !important;
}

.single-product .quantity .minus,
.single-product .quantity .plus {
    color: var(--color-text-strong) !important;
    background: var(--color-bg-subtle) !important;
}

.single-product .single_add_to_cart_button {
    background: var(--color-accent) !important;
    border-color: var(--color-accent) !important;
}

.single-product .single_add_to_cart_button:hover,
.single-product .single_add_to_cart_button:focus {
    background: var(--color-accent-hover) !important;
    border-color: var(--color-accent-hover) !important;
}

/* Calm supporting messages */

.single-product .tmcore-sold-incart {
    display: none !important;
}

.single-product .tmcore-live-viewing-visitors {
    margin-block: var(--space-2) !important;
    color: var(--color-text-subtle) !important;
    font-size: .82rem !important;
    font-weight: 400 !important;
    line-height: 1.35;
}

.single-product .tmcore-live-viewing-visitors svg,
.single-product .tmcore-live-viewing-visitors i {
    color: var(--color-accent-soft) !important;
    transform: scale(.82);
    transform-origin: center;
}

.single-product .stock.in-stock {
    color: var(--color-success-text);
    background: var(--color-success-bg);
    border-radius: 5px;
}

.single-product .ciuszkidlapan-delivery-line {
    width: 100%;
    margin-block: .35rem !important;
    color: var(--color-text-medium);
    font-size: clamp(.72rem, 1.15vw, .88rem) !important;
    line-height: 1.35;
    letter-spacing: -.012em;
    white-space: nowrap;
}

.single-product .ciuszkidlapan-product-actions {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    align-items: center;
    gap: var(--space-2);
    width: 100%;
}

.single-product .ciuszkidlapan-product-action {
    min-width: 0;
    color: var(--color-text-medium) !important;
    font-size: .84rem !important;
    line-height: 1.25;
    text-align: center;
    white-space: nowrap;
}

.single-product .ciuszkidlapan-payments {
    width: 100%;
    max-width: 100%;
    margin-top: var(--space-4);
    padding: var(--space-3);
    overflow: hidden;
    text-align: center;
    background: var(--color-bg-offwhite);
    border: 1px solid var(--color-border-subtle);
    border-radius: var(--radius-card);
}

.single-product .ciuszkidlapan-payments img {
    display: block;
    width: min(100%, 620px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin-inline: auto;
}

/* Desktop product information tabs */

.ciuszkidlapan-accordion-trigger {
    display: none;
}

.single-product .woocommerce-tabs {
    overflow: hidden;
    margin-top: var(--space-6);
    background: var(--color-bg-offwhite);
    border: 1px solid var(--color-border-subtle);
    border-radius: var(--radius-card);
}

.single-product .woocommerce-tabs ul.tabs {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    flex-wrap: wrap;
    gap: var(--space-5);
    margin: 0 0 var(--space-5);
    padding: 0 var(--space-5);
    background: var(--color-bg-offwhite);
    border-bottom: 1px solid var(--color-border-subtle);
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after {
    display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
}

.single-product .woocommerce-tabs ul.tabs li a {
    display: block;
    padding: .85rem 0 .7rem;
    color: var(--color-text-medium);
    font-weight: 600;
    text-decoration: none;
    border-bottom: 3px solid transparent;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
    color: var(--color-text-strongest);
    border-bottom-color: var(--color-accent);
}

.single-product .woocommerce-Tabs-panel {
    color: var(--color-text-medium);
    padding: 0 var(--space-6) var(--space-6) !important;
}

.single-product .woocommerce-Tabs-panel h2,
.single-product .woocommerce-Tabs-panel h3,
.single-product .woocommerce-Tabs-panel strong {
    color: var(--color-text-strongest);
}

/* Compact quality bar */

.single-product .product-after-images-element {
    width: 100%;
    max-width: 100%;
    margin: var(--space-4) 0 var(--space-3);
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

.single-product .product-after-images-element .elementor-2921 .elementor-container {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-2);
    width: 100% !important;
    max-width: 100% !important;
}

.single-product .product-after-images-element .elementor-2921 .elementor-column {
    width: auto !important;
    min-width: 0 !important;
}

.single-product .product-after-images-element .elementor-2921 .elementor-element.elementor-element-635a61b > .elementor-widget-wrap,
.single-product .product-after-images-element .elementor-2921 .elementor-element.elementor-element-daa9a10 > .elementor-widget-wrap,
.single-product .product-after-images-element .elementor-2921 .elementor-element.elementor-element-aa1cb6e > .elementor-widget-wrap {
    height: 100%;
    min-height: 48px;
    padding: .5rem .45rem !important;
    background-color: var(--color-bg-offwhite) !important;
    border: 1px solid var(--color-border-subtle) !important;
    border-radius: var(--radius-control) !important;
    box-shadow: none !important;
}

.single-product .product-after-images-element .elementor-2921 .elementor-icon-box-wrapper {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .4rem !important;
    text-align: left !important;
}

.single-product .product-after-images-element .elementor-2921 .elementor-icon {
    color: var(--color-accent) !important;
    fill: var(--color-accent) !important;
    border-color: var(--color-accent) !important;
    font-size: 1rem !important;
}

.single-product .product-after-images-element .elementor-2921 .elementor-icon-box-title,
.single-product .product-after-images-element .elementor-2921 .elementor-icon-box-title a {
    margin: 0 !important;
    color: var(--color-text-strong) !important;
    font-size: .78rem !important;
    line-height: 1.2 !important;
}

/* Product recommendations */

.single-product .ciuszkidlapan-recommendations {
    clear: both;
    width: 100%;
    margin: clamp(2rem, 5vw, 4rem) 0 0;
    padding-top: var(--space-5);
    border-top: 1px solid var(--color-border-subtle);
}

.single-product .ciuszkidlapan-recommendations > h2 {
    margin: 0 0 var(--space-5);
    color: var(--color-text-strongest);
    font-size: clamp(1.45rem, 2.4vw, 2rem);
    line-height: 1.2;
    text-align: left;
}

.single-product .ciuszkidlapan-recommendations ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: clamp(.75rem, 1.8vw, 1.5rem) !important;
    width: 100% !important;
    margin: 0 !important;
}

.single-product .ciuszkidlapan-recommendations ul.products > li.product {
    float: none !important;
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
}

.single-product .ciuszkidlapan-recommendations [hidden] {
    display: none !important;
}

.single-product .ciuszkidlapan-recommendations-sentinel {
    min-height: 2.5rem;
    padding: var(--space-4);
    color: var(--color-text-subtle);
    font-size: .82rem;
    text-align: center;
}

/* ==========================================================
   Phone and tablet: one responsive family, up to 1024px
   ========================================================== */

@media (max-width: 1024px) {
    body.single-product {
        overflow-x: clip;
    }

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

    /* Smaller, calmer sticky mobile/tablet header */
    #mobile-header .site-top-header-inner-wrap,
    #mobile-header .site-top-header-wrap .site-header-row-container-inner {
        min-height: 28px !important;
    }

    #mobile-header .mobile-html,
    #mobile-header .mobile-html-inner {
        font-size: .74rem !important;
        line-height: 1.2 !important;
    }

    #mobile-header .site-main-header-wrap .site-header-row-container-inner,
    #mobile-header .site-main-header-inner-wrap {
        min-height: 64px !important;
    }

    #mobile-header .site-main-header-wrap .site-container {
        padding-inline: .75rem !important;
    }

    #mobile-header .site-header-item {
        margin-inline: .2rem !important;
    }

    #mobile-header .custom-logo {
        width: auto !important;
        max-width: 96px !important;
        max-height: 54px !important;
        object-fit: contain;
    }

    #mobile-header button svg,
    #mobile-header .header-account-button svg,
    #mobile-header .header-cart-button svg {
        width: 23px !important;
        height: 23px !important;
    }

    #mobile-header .header-cart-title {
        font-size: .78rem !important;
    }

    /* One-column product flow */
    .single-product #primary,
    .single-product .content-container,
    .single-product .site-main,
    .single-product div.product,
    .single-product #wrap-summary,
    .single-product .base-product-image-wrap,
    .single-product div.product div.images,
    .single-product div.product div.summary,
    .single-product .woocommerce-tabs {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .single-product #wrap-summary {
        display: block !important;
    }

    .single-product div.product .base-product-image-wrap,
    .single-product div.product div.images,
    .single-product div.product div.summary {
        float: none !important;
    }

    .single-product div.product .base-product-image-wrap,
    .single-product div.product div.images {
        margin-bottom: var(--space-2) !important;
    }

    .single-product div.product div.summary {
        clear: both;
        margin: var(--space-3) 0 0 !important;
        padding-inline: 0 !important;
    }

    .single-product .product_title {
        margin-bottom: var(--space-2) !important;
        font-size: clamp(1.4rem, 3.1vw, 1.75rem) !important;
        line-height: 1.22 !important;
        letter-spacing: -.012em;
        overflow-wrap: anywhere;
    }

    .single-product div.product .summary .price {
        margin-bottom: var(--space-3) !important;
        font-size: 1.35rem;
        line-height: 1.2;
    }

    /* Gallery spacing */
    .single-product .ksk-gallery,
    .single-product .product_image,
    .single-product .base-product-gallery-main,
    .single-product .base-product-gallery-thumbnails,
    .single-product .splide__track,
    .single-product .splide__list {
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .single-product .product_image,
    .single-product .base-product-gallery-main {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    .single-product .base-product-gallery-thumbnails {
        position: static !important;
        inset: auto !important;
        width: 100% !important;
        margin: var(--space-2) 0 0 !important;
        padding: 0 !important;
    }

    .single-product .base-product-gallery-thumbnails .splide__track,
    .single-product .base-product-gallery-thumbnails .splide__list {
        margin: 0 !important;
        padding-block: 0 !important;
    }

    .single-product .product_image img,
    .single-product .woocommerce-product-gallery img {
        display: block;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }

    /* Variations: color, size, cart */
    .single-product table.variations,
    .single-product table.variations tbody,
    .single-product table.variations tr,
    .single-product table.variations th,
    .single-product table.variations td {
        display: block;
        width: 100% !important;
        max-width: 100% !important;
    }

    .single-product table.variations {
        margin: var(--space-2) 0 var(--space-3) !important;
    }

    .single-product table.variations tr {
        margin: 0 0 .65rem !important;
    }

    .single-product table.variations th,
    .single-product table.variations td {
        padding: .15rem 0 !important;
        text-align: left !important;
    }

    .single-product .bas_radio_variations,
    .single-product .variable-items-wrapper {
        display: flex !important;
        flex-wrap: wrap !important;
        gap: var(--space-2) !important;
        max-width: 100% !important;
    }

    .single-product .bas_radio_variations label {
        min-height: 40px;
        padding: .5rem .7rem !important;
    }

    .single-product .woocommerce-variation-add-to-cart {
        display: grid !important;
        grid-template-columns: auto minmax(0, 1fr);
        gap: var(--space-3);
        align-items: stretch;
        width: 100%;
        margin-top: var(--space-2);
    }

    .single-product .woocommerce-variation-add-to-cart .quantity {
        min-height: 48px;
        margin: 0 !important;
    }

    .single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button {
        width: 100%;
        min-width: 0;
        min-height: 48px;
        margin: 0 !important;
    }

    .single-product .woocommerce-product-details__short-description {
        margin: var(--space-4) 0;
        font-size: .96rem;
    }

    .single-product .tmcore-live-viewing-visitors {
        font-size: .76rem !important;
    }

    .single-product .ciuszkidlapan-delivery-line {
        font-size: clamp(.7rem, 2.1vw, .84rem) !important;
    }

    .single-product .ciuszkidlapan-product-action {
        font-size: clamp(.68rem, 1.8vw, .8rem) !important;
    }

    .single-product .ciuszkidlapan-payments {
        margin-top: var(--space-3);
        padding: var(--space-2);
    }

    /* Accordion on both phone and tablet */
    .single-product .woocommerce-tabs {
        overflow: visible;
        margin-top: var(--space-5);
        background: transparent;
        border: 0;
        border-radius: 0;
    }

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

    .single-product .ciuszkidlapan-accordion-trigger {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        min-height: 48px;
        margin: var(--space-2) 0 0;
        padding: .75rem .9rem;
        color: var(--color-text-strong);
        font: inherit;
        font-size: .95rem;
        font-weight: 650;
        line-height: 1.25;
        text-align: left;
        background: var(--color-bg-offwhite);
        border: 1px solid var(--color-border-subtle);
        border-radius: var(--radius-control);
        cursor: pointer;
    }

    .single-product .ciuszkidlapan-accordion-trigger::after {
        content: "";
        flex: 0 0 .5rem;
        width: .5rem;
        height: .5rem;
        margin-left: var(--space-4);
        border-right: 2px solid currentColor;
        border-bottom: 2px solid currentColor;
        transform: rotate(45deg);
        transition: transform 180ms ease;
    }

    .single-product .ciuszkidlapan-accordion-trigger[aria-expanded="true"] {
        color: var(--color-text-strongest);
        border-bottom-color: transparent;
        border-radius: var(--radius-control) var(--radius-control) 0 0;
    }

    .single-product .ciuszkidlapan-accordion-trigger[aria-expanded="true"]::after {
        transform: rotate(225deg);
    }

    .single-product .woocommerce-Tabs-panel {
        display: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: .35rem .9rem 1.1rem !important;
        overflow-wrap: anywhere;
        color: var(--color-text-medium);
        background: var(--color-bg-offwhite);
        border: 1px solid var(--color-border-subtle);
        border-top: 0;
        border-radius: 0 0 var(--radius-control) var(--radius-control);
    }

    .single-product .woocommerce-Tabs-panel.is-mobile-open {
        display: block !important;
    }

    .single-product .woocommerce-Tabs-panel > :first-child {
        margin-top: 0;
    }

    .single-product .woocommerce-Tabs-panel > :last-child {
        margin-bottom: 0;
    }

    .single-product .woocommerce-Tabs-panel table {
        width: 100% !important;
        table-layout: fixed;
    }

    .single-product .woocommerce-Tabs-panel th,
    .single-product .woocommerce-Tabs-panel td {
        overflow-wrap: anywhere;
    }

    .single-product .woocommerce-Tabs-panel blockquote {
        margin: var(--space-4) 0 0;
        padding: .8rem .9rem;
        font-size: .88rem;
        line-height: 1.45;
        background: var(--color-bg-subtle);
        border-left: 3px solid var(--color-accent);
    }

    /* Quality bar is moved below the accordion by JavaScript */
    .single-product .product-after-images-element {
        margin: var(--space-4) 0 var(--space-3);
    }

    .single-product .product-after-images-element .elementor-2921 .elementor-element.elementor-element-635a61b > .elementor-widget-wrap,
    .single-product .product-after-images-element .elementor-2921 .elementor-element.elementor-element-daa9a10 > .elementor-widget-wrap,
    .single-product .product-after-images-element .elementor-2921 .elementor-element.elementor-element-aa1cb6e > .elementor-widget-wrap {
        min-height: 42px;
        padding: .4rem .3rem !important;
    }

    .single-product .product-after-images-element .elementor-2921 .elementor-icon-box-title,
    .single-product .product-after-images-element .elementor-2921 .elementor-icon-box-title a {
        font-size: clamp(.68rem, 1.6vw, .76rem) !important;
    }

    .single-product .ciuszkidlapan-recommendations ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

/* Phone refinements */

@media (max-width: 767px) {
    #mobile-header .site-main-header-wrap .site-header-row-container-inner,
    #mobile-header .site-main-header-inner-wrap {
        min-height: 58px !important;
    }

    #mobile-header .custom-logo {
        max-width: 86px !important;
        max-height: 48px !important;
    }

    #mobile-header button svg,
    #mobile-header .header-account-button svg,
    #mobile-header .header-cart-button svg {
        width: 21px !important;
        height: 21px !important;
    }

    #mobile-header .header-cart-title {
        display: none !important;
    }

    .single-product .content-container,
    .single-product .site-container {
        padding-inline: .75rem;
    }

    .single-product .product_title {
        font-size: clamp(1.28rem, 5.8vw, 1.55rem) !important;
    }

    .single-product .product-after-images-element .elementor-2921 .elementor-container {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: .35rem;
    }

    .single-product .product-after-images-element .elementor-2921 .elementor-icon-box-wrapper {
        flex-direction: column !important;
        justify-content: center !important;
        gap: .2rem !important;
        text-align: center !important;
    }

    .single-product .product-after-images-element .elementor-2921 .elementor-icon {
        font-size: .9rem !important;
    }

    .single-product .product-after-images-element .elementor-2921 .elementor-icon-box-title,
    .single-product .product-after-images-element .elementor-2921 .elementor-icon-box-title a {
        font-size: clamp(.62rem, 2.5vw, .72rem) !important;
        line-height: 1.15 !important;
    }

    .single-product .ciuszkidlapan-product-actions {
        gap: .35rem;
    }

    .single-product .ciuszkidlapan-product-action {
        font-size: clamp(.66rem, 2.7vw, .78rem) !important;
    }

    .single-product .ciuszkidlapan-delivery-line {
        font-size: clamp(.68rem, 3vw, .8rem) !important;
    }

    .single-product .ciuszkidlapan-payments img {
        width: 100% !important;
    }

    .single-product .ciuszkidlapan-recommendations {
        margin-top: var(--space-6);
    }

    .single-product .ciuszkidlapan-recommendations > h2 {
        margin-bottom: var(--space-4);
        font-size: 1.4rem;
    }

    .single-product .ciuszkidlapan-recommendations ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: .75rem .55rem !important;
    }
}

@media (max-width: 380px) {
    .single-product .ciuszkidlapan-delivery-line {
        font-size: .82rem !important;
        letter-spacing: -.02em;
    }
}

/* ==========================================================
   Component corrections after the mobile review
   ========================================================== */

/* The gallery engine calculates its height from the tallest source image.
   The store standard is a square display area, with portrait photos contained. */
.single-product .base-product-gallery-main {
    height: auto !important;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    background: var(--color-bg-offwhite);
}

.single-product .base-product-gallery-main .splide__track,
.single-product .base-product-gallery-main .splide__list,
.single-product .base-product-gallery-main .splide__slide,
.single-product .base-product-gallery-main .splide__slide > a {
    height: 100% !important;
    min-height: 0 !important;
}

.single-product .base-product-gallery-main .splide__slide > a {
    display: block;
    width: 100%;
}

.single-product .base-product-gallery-main img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
    object-position: center;
}

@media (min-width: 1025px) {
    .single-product .base-product-gallery-thumbnails {
        height: 100% !important;
        max-height: 100% !important;
    }

    .single-product .base-product-gallery-thumbnails .splide__track {
        height: calc(100% - 80px) !important;
    }

    .single-product .base-product-gallery-thumbnails .splide__list {
        min-height: 0 !important;
    }
}

@media (max-width: 1024px) {
    .single-product .woocommerce-product-gallery,
    .single-product .product_image {
        height: auto !important;
        min-height: 0 !important;
        padding-bottom: 0 !important;
    }

    .single-product .base-product-gallery-thumbnails,
    .single-product .base-product-gallery-thumbnails .splide__track,
    .single-product .base-product-gallery-thumbnails .splide__list {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
    }

    .single-product .base-product-gallery-thumbnails {
        margin-top: .45rem !important;
        margin-bottom: .35rem !important;
    }

    .single-product div.product .base-product-image-wrap,
    .single-product div.product div.images {
        margin-bottom: .35rem !important;
    }
}

/* Variation controls */
.single-product .reset_variations {
    display: none !important;
}

.single-product .woocommerce-variation-add-to-cart {
    grid-template-columns: 108px minmax(0, 1fr) !important;
    gap: .65rem !important;
    align-items: stretch !important;
}

.single-product .woocommerce-variation-add-to-cart .quantity {
    display: grid !important;
    grid-template-columns: 34px 40px 34px;
    width: 108px !important;
    min-width: 108px !important;
    min-height: 46px !important;
    overflow: hidden;
}

.single-product .woocommerce-variation-add-to-cart .quantity .minus,
.single-product .woocommerce-variation-add-to-cart .quantity .plus,
.single-product .woocommerce-variation-add-to-cart .quantity .qty {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--color-text-strongest) !important;
    opacity: 1 !important;
    visibility: visible !important;
    border: 0 !important;
    border-radius: 0 !important;
}

.single-product .woocommerce-variation-add-to-cart .quantity .minus,
.single-product .woocommerce-variation-add-to-cart .quantity .plus {
    font-size: 1.15rem !important;
    font-weight: 650;
    line-height: 1;
    background: var(--color-bg-offwhite) !important;
}

.single-product .woocommerce-variation-add-to-cart .quantity .qty {
    text-align: center !important;
    background: var(--color-bg-page) !important;
    border-inline: 1px solid var(--color-border-subtle) !important;
    appearance: textfield;
}

.single-product .woocommerce-variation-add-to-cart .single_add_to_cart_button {
    min-height: 46px !important;
    padding-inline: .7rem !important;
    font-size: clamp(.78rem, 3vw, .95rem) !important;
    line-height: 1.15 !important;
    white-space: normal;
}

/* Three equal and aligned product actions */
.single-product .ciuszkidlapan-product-actions {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: .4rem !important;
    margin-bottom: .65rem !important;
    padding-bottom: .65rem !important;
}

.single-product .ciuszkidlapan-product-actions > .wrap_compare_wishlist,
.single-product .ciuszkidlapan-product-actions > .wrap_ask_share,
.single-product .ciuszkidlapan-product-actions .ask-question,
.single-product .ciuszkidlapan-product-actions .social-share {
    display: contents !important;
}

.single-product .ciuszkidlapan-product-actions button,
.single-product .ciuszkidlapan-product-actions a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    gap: .3rem;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 40px;
    margin: 0 !important;
    padding: .4rem .25rem !important;
    font-size: clamp(.7rem, 2.7vw, .82rem) !important;
    line-height: 1.15 !important;
    text-align: center;
    white-space: nowrap;
}

.single-product .ciuszkidlapan-product-actions svg {
    flex: 0 0 auto;
    width: 18px !important;
    height: 18px !important;
}

/* Delivery and payments: compact, readable, without empty bands */
.single-product .single-product-extras {
    margin: .5rem 0 !important;
    padding: 0 !important;
}

.single-product .single-product-extras ul {
    margin: 0 !important;
    padding: 0 !important;
}

.single-product .ciuszkidlapan-delivery-line {
    margin: .35rem 0 !important;
    font-size: clamp(.84rem, 2.5vw, .92rem) !important;
    line-height: 1.3 !important;
    white-space: nowrap;
}

.single-product .single-product-payments.ciuszkidlapan-payments {
    display: flex !important;
    flex-direction: column !important;
    align-items: center;
    gap: .45rem;
    min-height: 0 !important;
    margin: .7rem 0 .85rem !important;
    padding: .7rem !important;
    overflow: hidden;
    background: var(--color-bg-offwhite);
    border: 1px solid var(--color-border-subtle);
    border-radius: var(--radius-card);
}

.single-product .single-product-payments.ciuszkidlapan-payments .title {
    order: 1;
    width: auto;
    margin: 0 !important;
    padding: 0 !important;
    color: var(--color-text-strongest);
    font-size: clamp(.9rem, 2.8vw, 1rem);
    line-height: 1.25;
    text-align: center;
    background: transparent;
    border: 0;
}

.single-product .single-product-payments.ciuszkidlapan-payments ul {
    order: 2;
    display: block !important;
    width: 100%;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.single-product .single-product-payments.ciuszkidlapan-payments img {
    display: block;
    width: min(100%, 396px) !important;
    height: auto !important;
    margin: 0 auto !important;
}

.single-product .single-product-payments + .product_meta {
    margin-top: 0 !important;
}

/* Store and recommendation cards */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title a {
    display: block !important;
    max-height: none !important;
    margin: 0 !important;
    overflow: visible !important;
    color: var(--color-text-strong) !important;
    font-size: clamp(.8rem, 1.15vw, .94rem) !important;
    line-height: 1.32 !important;
    white-space: normal !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
}

.woocommerce ul.products li.product .product-details {
    display: flex;
    flex-direction: column;
    align-items: stretch;
}

.woocommerce ul.products li.product .product-action-wrap {
    display: flex !important;
    align-items: stretch;
    width: 100%;
    margin-top: auto !important;
}

.woocommerce ul.products li.product .product-action-wrap > .woosw-btn {
    display: none !important;
}

.woocommerce ul.products li.product .product-action-wrap > .button {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-width: 0 !important;
    padding: .7rem .4rem !important;
    font-size: clamp(.69rem, 1.8vw, .8rem) !important;
    line-height: 1.15 !important;
    text-align: center;
    white-space: normal !important;
}

.woocommerce ul.products li.product .product-action-wrap .add-to-cart-icon,
.woocommerce ul.products li.product .product-action-wrap .svg-baseline {
    display: none !important;
}

@media (max-width: 767px) {
    .woocommerce ul.products {
        align-items: stretch;
    }

    .woocommerce ul.products li.product {
        display: flex !important;
        flex-direction: column;
        min-width: 0 !important;
    }

    .woocommerce ul.products li.product .product-details {
        flex: 1;
        padding-top: .55rem !important;
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title,
    .woocommerce ul.products li.product .woocommerce-loop-product__title a {
        font-size: .8rem !important;
        line-height: 1.3 !important;
    }

    .woocommerce ul.products li.product .price {
        margin-block: .35rem .5rem !important;
        font-size: .95rem !important;
    }

    .woocommerce ul.products li.product .product-action-wrap > .button {
        min-height: 40px;
        font-size: .72rem !important;
        white-space: nowrap !important;
    }
}
