/*
Theme Name: Ferme Child
Theme URI: https://ferme.vamtam.com
Description: Child theme for Ferme.
Author: MCS Group
Author URI: https://www.mcsgroup.pl
Template: ferme
Version: 1.0.0
Text Domain: ferme-child
*/

.tak-product {
    --tak-green: #173f38;
    --tak-border: #d9ddd9;
    max-width: 1240px;
    margin: 0 auto;
    padding: 64px 24px;
}

.tak-product__main {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
    gap: clamp(40px, 7vw, 96px);
    align-items: start;
}

.tak-product__gallery .woocommerce-product-gallery,
.tak-product__gallery img {
    width: 100%;
}

.tak-product__summary .woocommerce-breadcrumb {
    margin: 0 0 24px;
    color: #68716d;
    font-size: 14px;
}

.tak-product__summary .product_title {
    margin: 0 0 20px;
    color: var(--tak-green);
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.15;
}

.tak-product__summary > .price {
    display: block;
    margin: 0 0 32px;
    color: var(--tak-green);
    font-size: 26px;
    font-weight: 700;
}

.tak-product .variations,
.tak-product .variations tbody,
.tak-product .variations tr,
.tak-product .variations td {
    display: block;
    width: 100%;
}

.tak-product .variations tr {
    margin-bottom: 24px;
}

.tak-product .variations .label {
    margin-bottom: 10px;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--tak-green);
    font-weight: 700;
    text-align: left;
    text-transform: uppercase;
}

.tak-product .attribute-smak select {
    width: 100%;
    min-height: 52px;
    padding: 0 44px 0 16px;
    border: 1px solid var(--tak-border);
    background: #fff;
}

.tak-product .attribute-gramatura .value {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.tak-product .attribute-gramatura input {
    position: absolute;
    opacity: 0;
}

.tak-product .attribute-gramatura label {
    display: block;
    min-width: 92px;
    padding: 13px 18px;
    border: 1px solid var(--tak-border);
    cursor: pointer;
    text-align: center;
}

.tak-product .attribute-gramatura input:checked + label {
    border-color: var(--tak-green);
    background: var(--tak-green);
    color: #fff;
}

.tak-product .attribute-gramatura input:disabled + label {
    border-color: #ddd;
    background: #eee;
    color: #999;
    cursor: not-allowed;
    opacity: .65;
}

.tak-product .attribute-gramatura input:focus-visible + label {
    outline: 2px solid var(--tak-green);
    outline-offset: 2px;
}

.tak-product .reset_variations {
    align-self: center;
    margin-left: 8px;
}

.tak-product .variations_button {
    display: grid;
    grid-template-columns: 100px 1fr;
    gap: 12px;
}

.tak-product .quantity .qty,
.tak-product .single_add_to_cart_button {
    width: 100%;
    min-height: 54px;
}

.tak-product .single_add_to_cart_button {
    border: 0;
    background: var(--tak-green);
    color: #fff;
    font-weight: 700;
    text-transform: uppercase;
}

.tak-product .added_to_cart.wc-forward {
    grid-column: 1 / -1;
    width: 100%;
    padding: 14px 18px;
    text-align: center;
}

.tak-product__summary .woocommerce-variation-description {
    display: none;
}

.tak-product__summary .woocommerce-variation-price {
    display: none;
}

.tak-product__section {
    margin-top: 80px;
    padding-top: 56px;
    border-top: 1px solid var(--tak-border);
}

.tak-product__section > h2,
.tak-product__related .related > h2 {
    margin: 0 0 32px;
    color: var(--tak-green);
    font-size: clamp(30px, 3vw, 44px);
}

.elementor-widget-woocommerce-menu-cart.vamtam-has-theme-widget-styles {
    --product-divider-gap: 0;
}

.elementor-widget-woocommerce-menu-cart.vamtam-has-theme-widget-styles
    .elementor-menu-cart__container .elementor-menu-cart__main .cart_item {
    grid-template-columns: 56px minmax(0, 1fr) 24px;
    gap: 8px;
    padding: 18px 7%;
}

.elementor-widget-woocommerce-menu-cart.vamtam-has-theme-widget-styles
    .elementor-menu-cart__container .elementor-menu-cart__main .woocommerce-cart-form__contents {
    align-self: start;
}

.elementor-widget-woocommerce-menu-cart.vamtam-has-theme-widget-styles
    .elementor-menu-cart__container .elementor-menu-cart__main .product-thumbnail {
    max-width: 56px;
}

.elementor-widget-woocommerce-menu-cart.vamtam-has-theme-widget-styles
    .elementor-menu-cart__container .elementor-menu-cart__main .product-name {
    padding: 0 12px;
    line-height: 1.35;
}

.elementor-widget-woocommerce-menu-cart.vamtam-has-theme-widget-styles
    .elementor-menu-cart__container .elementor-menu-cart__main .product-price .quantity {
    min-height: 26px;
}

.elementor-widget-woocommerce-menu-cart.vamtam-has-theme-widget-styles
    .elementor-menu-cart__container .elementor-menu-cart__main .elementor-menu-cart__subtotal {
    padding-top: 18px;
    padding-bottom: 18px;
}

.elementor-widget-woocommerce-menu-cart.vamtam-has-theme-widget-styles
    .elementor-menu-cart__container .elementor-menu-cart__main .vamtam-elementor-menu-cart__header {
    padding-bottom: 12px;
}

.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout {
    max-width: 1240px;
    margin-inline: auto;
}

@media (max-width: 767px) {
    .tak-product {
        padding: 32px 20px;
    }

    .tak-product__main {
        grid-template-columns: 1fr;
        gap: 32px;
    }

    .tak-product__summary .woocommerce-breadcrumb {
        display: block;
    }

    .tak-product .variations_button {
        grid-template-columns: 84px 1fr;
    }

    .tak-product__section {
        margin-top: 56px;
        padding-top: 40px;
    }
}
