/* === Ocultar descripcion === */
.mp-details-wrapper {
    position: relative;
}
.mp-details-content {
    overflow: hidden;
}
.mp-details-wrapper:not(.is-open) .mp-details-content {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: var(--mp-lines, 3);
    overflow: hidden;
}
.mp-details-wrapper.is-open .mp-details-content {
    display: block;
}

.mp-details-toggle{
    display:inline-block;
    margin-top:10px;
    padding:0;
    border:0;
    background:none;
    text-decoration:underline;
    cursor:pointer;
    font:inherit;
}
.mp-details-content > p:first-child:empty { 
    display:none; 
}

/* === Layout === */
.single-product .is-layout-constrained > .alignwide {
    max-width: 100%;
}
@media (max-width: 767px) {
    .single-product .has-global-padding {
        padding-left: 10px;
        padding-right: 10px;
    }
}

/* === Product 2 Columns === */
body .product-2-columns.is-layout-flex {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
}
body .product-2-columns.is-layout-flex > .wp-block-column:first-child {
    padding-right: 100px;
}
@media (max-width: 1200px) {
    body .product-2-columns.is-layout-flex > .wp-block-column:first-child {
        padding-right: 60px;
    }
}
@media (max-width: 1024px) {
    body .product-2-columns.is-layout-flex > .wp-block-column:first-child {
        padding-right: 20px;
    }
}
@media (max-width: 767px) {
    body .product-2-columns.is-layout-flex {
        grid-template-columns: 1fr;
    }
    body .product-2-columns.is-layout-flex > .wp-block-column:first-child {
        order: 2;
        padding-right: 0;
    }
    body .product-2-columns.is-layout-flex > .wp-block-column:last-child {
        order: 1;
    }
}

/* === Product Image Gallery === */
.woocommerce .wp-block-woocommerce-product-image-gallery {
    max-width: none;
}

/* === Product Content === */
.wc-block-grid__product-price {
    font-weight: 400;
}
.mp-product-specs {
    margin-top: 50px;
}
.mp-specs-grid {
    display: grid;
    grid-template-columns: 2fr 3fr;
    column-gap: 20px;
    margin-bottom: 20px;
}
.mp-spec-label,
.mp-spec-value {
    font-weight: 500;
}
.mp-spec-value p:last-child {
    margin: 0;
}
.mp-row-divider {
    grid-column: 1 / -1;
    border-top: 1px solid #000000;
}
@media (max-width: 1366px) {
    h1.product-title {
        font-size: 47px;
    }
    .single-product .woocommerce-Price-amount,
    .mp-product-specs {
        font-size: 20px;
    }
}
@media (max-width: 1024px) {
    h1.product-title {
        font-size: 32px;
    }
}
@media (max-width: 767px) {
    .mp-product-specs {
        margin-top: 40px;
    }
}

/* === Add to cart === */
.product-add-to-cart {
    margin-top: 160px;
}
.wp-block-woocommerce-add-to-cart-form.product-add-to-cart form.cart {
    grid-template-columns: 2fr 3fr auto;
    column-gap: 20px;
    margin-bottom: 0;
}
.woocommerce div.product .product-add-to-cart form.cart .button {
    width: 100%;
    background-color: transparent;
    border: 1px solid #000000;
    color: #000000;
    font-weight: 500;
    transition: all 0.3s ease;
}
.woocommerce div.product .product-add-to-cart form.cart .button:hover {
    background-color: #00FF00;
    border-color: #00FF00;
    color: #000000;
}
@media (max-width: 1354px) {
    .product-add-to-cart {
        margin-top: 80px;
    }
}
@media (max-width: 1024px) {
    .product-add-to-cart {
        margin-top: 60px;
    }
    :root :where(.wp-element-button, .wp-block-button__link) {
        padding: 16px 30px;
    }
}
@media (max-width: 880px) {
    .woocommerce div.product .product-add-to-cart form.cart .button {
        padding: 15px 18px;
        font-size: 18px;
    }
}
@media (max-width: 360px) {
    .wp-block-woocommerce-add-to-cart-form.product-add-to-cart form.cart {
        column-gap: 0;
    }
}