.ps-contact-form-placeholder {
    text-align: center;
    padding-top: 20px;
}
/* Hide "View cart" button from product listings */
.added_to_cart.wc_forward,
span[data-wp-bind--hidden] a.added_to_cart,
.wc-block-product-button .added_to_cart,
.ps-product-card .added_to_cart {
    display: none !important;
    visibility: hidden !important;
}
.woocommerce-account .entry-content.wp-block-post-content {
    max-width: var(--container-screens-2xl) !important;
    width: 100% !important;
    margin: 0 auto;
    padding: 50px 0px;
}
.ps-section {
    padding-top: 40px;
    padding-bottom: 40px;
}

.wc-block-product:hover .wishlist-btn {
    opacity: 100%;
}

.ps-footer-newsletter {
    background-image: url('https://themes.zluck.in/pawluxe/wp-content/uploads/sites/11/2025/12/subscribe.png');
    position: relative;
    background-repeat: no-repeat;
    background-size: auto;
    background-position: top 18% center;
    padding-top: 80px;
    padding-bottom: 96px;
}
.woocommerce-checkout div[data-block-name="woocommerce/mini-cart"]{
    display: none;
}
.ps-footer-newsletter h2 {
    font-size: var(--font-size-text-h4);
    line-height: var(--line-height-text-h4);
    font-weight: var(--font-weight-text-h4);
    color: var(--color-coffee);
    margin-bottom: 12px;
}

.ps-footer-newsletter p {
    font-size: var(--font-size-text-19);
    line-height: var(--line-height-text-19);
    font-weight: var(--font-weight-text-19);
    color: var(--color-gray-dark);
}

.ps-footer-main {
    padding-top: calc(var(--spacing) * 20);
    background-color: var(--color-coffee);
}

.ps-footer-columns {
    gap: calc(var(--spacing) * 10);
}

.ps-footer-image {
    max-width: 622px !important;
    height: auto;
    margin: 0 auto;
    padding: 20px 0 40px;
}

.ps-footer-newsletter figure {
    max-width: 300px !important;
    width: 100% !important;
    position: absolute;
    bottom: -53px;
    left: 0;
    z-index: 2;
}

.ps-footer-newsletter figure img {
    width: 100%;
    height: auto;
    /* vertical-align: bottom !important; */
}

.ps-footer-logo {
    max-width: 168px !important;
    display: block;
    margin-left: 0 !important;
    text-align: left;
}

.ps-header {
    position: relative;
    z-index: 1000;
    transition: transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out;
}

.ps-header.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    z-index: 1000;
    background-color: var(--color-white);
    transform: translateY(0);
}

.ps-footer-main .is-layout-grid p {
    font-size: var(--font-size-text-14);
    line-height: var(--line-height-text-14);
    font-weight: var(--font-weight-text-14);
    color: var(--color-white);
}

.ps-footer-main .is-layout-grid h5 {
    font-size: var(--font-size-text-16);
    line-height: var(--line-height-text-16);
    font-weight: 700;
    color: var(--color-orange);
    margin-bottom: 20px;
}

.ps-footer-main .wp-block-social-links {
    flex-wrap: wrap !important;
}

.ps-footer-main .is-layout-grid ul.wp-block-list,
.ps-footer-main .is-layout-grid .wc-block-product-categories-list {
    text-align: left;
    align-items: flex-start;
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 12px;
}
.ps-footer-main .is-layout-grid .wc-block-product-categories-list ul{
    display: none;
}
.ps-footer-main .is-layout-grid ul.wp-block-list li,
.ps-footer-main .is-layout-grid .wc-block-product-categories-list li {
    margin: 0;
    padding: 0;
}

.ps-footer-main .is-layout-grid ul.wp-block-list a,
.ps-footer-main .is-layout-grid .wc-block-product-categories-list a,
.ps-footer-main .is-layout-grid .wc-block-product-categories-list a span {
    font-size: var(--font-size-text-14);
    line-height: var(--line-height-text-14);
    font-weight: var(--font-weight-text-14);
    transition: all 0.3s ease-in-out;
    color: var(--color-white);
    text-decoration: none;
}

.ps-footer-main .is-layout-grid ul.wp-block-list a:hover,
.ps-footer-main .is-layout-grid .wc-block-product-categories-list a:hover,
.ps-footer-main .is-layout-grid .wc-block-product-categories-list a:hover span {
    color: var(--color-orange);
}

.ps-footer-bottom {
    padding-block: calc(var(--spacing) * 5);
    border-color: var(--color-white);
    border-top-style: solid;
    border-top-width: 1px;
}

.ps-footer-main .is-layout-grid ul.wp-block-social-links {
    gap: 10px;
}

.ps-header.sticky-enter {
    transform: translateY(-100%);
}

.ps-header.sticky .ps-top-header {
    display: none;
}

body.has-sticky-padding {
    padding-top: var(--header-height, 0);
}

.ps-top-header {
    background-color: var(--color-coffee);
    color: var(--color-white);
}

.ps-header-right-side {
    gap: calc(var(--spacing) * 5);
}

/* .has-global-padding>.alignfull {
    padding-bottom: calc(var(--spacing) * 16);
    padding-block: calc(var(--spacing) * 16);
} */

body .is-layout-flex {
    align-items: center !important;
}

:where(.wp-block-button__link) {
    padding: 0px;
}

.wp-block-woocommerce-customer-account {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

:root :where(.wp-block-button .wp-block-button__link):hover {
    background-color: var(--color-orange);
    color: var(--color-coffee) !important;
}

.wp-block-woocommerce-customer-account a .icon,
.wp-block-woocommerce-customer-account a svg {
    width: 20px;
    height: 20px;
    display: block;
}

.ps-header-right-side figure {
    position: relative;
}

.grid {
    display: grid;
}

.testimonials-button-prev {
    left: auto !important;
}

.testimonials-button-next {
    right: 2px !important;
}

.testimonials-button-prev svg path,
.testimonials-button-next svg path {
    color: var(--color-coffee);
    fill: var(--color-coffee);
}

.ps-blog-sidebar h3.text-h5.text-black.wp-block-heading {
    margin-bottom: 28px;
}

.ps-category p.text-19.text-black {
    margin-top: 20px;
}

.wp-block-tag-cloud a {
    font-size: var(--font-size-text-12) !important;
    line-height: var(--line-height-text-12);
    width: -moz-fit-content;
    width: fit-content;
    border-radius: calc(infinity * 1px);
    background-color: var(--color-orange);
    padding-inline: calc(var(--spacing) * 3);
    padding-block: calc(var(--spacing) * 2);
    font-weight: var(--font-weight-semibold);
}

.ps-blog-sidebar li.cat-item {
    color: var(--color-gray-dark);
    font-size: var(--font-size-text-18);
    line-height: var(--line-height-text-18);
    font-weight: var(--font-weight-text-18);
    text-transform: capitalize;
}

.ps-blog-sidebar .wp-block-search__inside-wrapper {
    background-color: var(--color-white);
    border-color: var(--color-orange);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-radius: calc(infinity * 1px);
}

.woocommerce-pagination ul.page-numbers,
.ps-blog-article-items .wp-block-query-pagination,
.ps-blog-article-items .wp-block-query-pagination .wp-block-query-pagination-numbers,
.ps-search-results-content .wp-block-query-pagination-numbers {
    display: flex !important;
    align-items: center;
    gap: 8px;
    justify-content: center;
    vertical-align: middle;
    border: none !important;
}

.woocommerce-pagination ul.page-numbers .page-numbers,
.ps-blog-article-items .wp-block-query-pagination .page-numbers,
.ps-blog-article-items .wp-block-query-pagination .wp-block-query-pagination-numbers .page-numbers,
.ps-search-results-content .wp-block-query-pagination-numbers .page-numbers,
.ps-search-results-content .wp-block-query-pagination-next,
.ps-search-results-content .wp-block-query-pagination-previous {
    width: 45px;
    height: 45px;
    border-radius: 12px;
    border: 1px solid #d1d5dc;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 500;
    background: #fff;
    color: #364153;
    transition: all 200ms ease;
}

.ps-search-results-content .wp-block-query-pagination-next span,
.ps-search-results-content .wp-block-query-pagination-previous span {
    margin: 0 !important;
}

.woocommerce-pagination ul.page-numbers .page-numbers.current,
.ps-blog-article-items .wp-block-query-pagination .page-numbers.current,
.ps-blog-article-items .wp-block-query-pagination .wp-block-query-pagination-numbers .page-numbers.current,
.ps-search-results-content .wp-block-query-pagination-numbers.current {
    width: 45px;
    height: 45px;
    border-radius: 12px;
    border: 1px solid #FBB03B;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    font-weight: 500;
    background: #FBB03B;
    color: #fff;
    transition: all 200ms ease;
}

.single-product .ps-product-detail-price.price.flex .sale-price bdi,
.sale-price bdi {
    color: var(--color-coffee);
    font-weight: var(--font-weight-extrabold) !important;
}

.single-product .ps-product-detail-price.price.flex .original-price bdi,
.original-price bdi {
    color: var(--color-gray-dark);
    font-weight: var(--font-weight-semibold) !important;
}

.single-product form.woocommerce-cart-form {
    display: flex;
    gap: calc(var(--spacing) * 5);
}

.ps-price bdi {
    font-size: var(--font-size-text-40);
    line-height: var(--line-height-text-40);
}

.woocommerce nav.woocommerce-pagination ul li {
    border: none !important;
}

span.page-numbers.current {
    background-color: var(--color-orange) !important;
    border-color: var(--color-orange) !important;
}

.ps-category img {
    height: 66px;
}

.ps-category .bg-orange-light {
    align-items: center;
}

nav.ps-pagination a.active,
.ps-pagination .page-numbers,
.woocommerce-pagination a.page-numbers,
span.page-numbers.current {
    background-color: var(--color-white);
    border-style: var(--tw-border-style);
    border-width: 1px;
    border-radius: 8px;
    border-color: #F1F1F1;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    color: var(--color-black) !important;
    font-weight: var(--font-weight-semibold);
}

footer .ps-product-cat .justify-center {
    display: none;
}

footer .ps-product-cat a.text-gray-dark {
    color: var(--color-white) !important;
}

.rounded-full {
    overflow: hidden;
}

.wp-block-button.wc-block-components-product-button {
    width: max-content;
}

.wp-block-button.wc-block-components-product-button span {
    text-transform: capitalize;
}

.wc-block-product .wp-block-group:hover .wishlist-btn {
    opacity: 100%;
}

.ps-circle-banner {
    position: absolute;
}

.ps-blog-sidebar li.wp-block-post {
    display: flex;
    gap: calc(var(--spacing) * 2);
    align-items: center;
    --tw-space-y-reverse: 0;
    margin-block-start: calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));
    margin-block-end: calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)));
}

.ps-blog-sidebar li.wp-block-post img {
    height: 50px;
    width: 50px;
    border-radius: 8px;
}

.subscribe {
    background-image: url('https://themes.zluck.in/pawluxe/wp-content/uploads/sites/11/2025/12/subscribe.png');
}

.ps-our-journey :where(.wp-block-group.wp-block-group-is-layout-constrained) {
    position: revert-layer;
}

footer .wp-block-navigation .wp-block-navigation-item {
    margin-bottom: 12px;
}

:where(.wp-block-social-links:not(.is-style-logos-only)) .wp-social-link {
    background-color: #f0f0f0 !important;
    color: var(--color-coffee) !important;
    font-size: 20px;
    border-radius: 5px;
}

.wp-block-buttons.is-content-justification-center {
    display: flex;
}

.wp-block-social-links .wp-social-link svg {
    color: var(--color-coffee) !important;
    fill: var(--color-coffee) !important;

}

footer a,
.footer-link a.active {
    color: var(--color-white) !important;
}

/* Shop Category Grid Styles */
.ps-shop-category .category-grid ul,
.ps-shop-category .category-grid li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.ps-shop-category .category-grid ul {
    display: contents;
    /* Make ul transparent to grid */
}

.ps-shop-category .category-grid li {
    display: contents;
    /* Make li transparent to grid */
}

/* Wishlist page styles */
.ps-wishlist-products .wc-block-product-template {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.25rem;
    list-style: none;
    margin: 0;
    padding: 0;
}

@media (max-width: 1024px) {
    .ps-wishlist-products .wc-block-product-template {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 860px) {
    .ps-footer-newsletter figure {
        max-width: 354px !important;
        bottom: -62px;
    }
}

@media (max-width: 768px) {
    .ps-wishlist-products .wc-block-product-template {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .ps-wishlist-products .wc-block-product-template {
        grid-template-columns: 1fr;
    }
}

.ps-wishlist-products .wc-block-product {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ps-wishlist-products .ps-product-card {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.ps-wishlist-products .ps-product-image-wrapper {
    position: relative;
    overflow: hidden;
    border: 2px dashed var(--color-gray-dark-100);
    border-radius: 10px;
}

.ps-wishlist-products .wc-block-product-image {
    width: 100%;
    height: auto;
}

.ps-wishlist-products .wc-block-product-image img {
    width: 100%;
    height: auto;
    display: block;
}

.ps-wishlist-products .wc-block-product-sale-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    background-color: var(--color-orange);
    color: var(--color-white);
    padding: 4px 8px;
    border-radius: 4px;
    font-size: 12px;
    font-weight: 700;
    z-index: 10;
}

.ps-wishlist-products .ps-product-content {
    padding: 1rem 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.ps-wishlist-products .wp-block-post-terms.tag {
    font-size: 14px;
    display: inline-block;
    padding: 4px 8px;
    background-color: var(--color-orange-light);
    border-radius: 4px;
    margin-bottom: 0.5rem;
}

.ps-wishlist-products .wc-block-product-rating {
    margin: 0.5rem 0;
}

.ps-wishlist-products .wc-block-product-price {
    font-size: 18px;
    font-weight: 700;
    color: var(--color-coffee);
    margin: 0.5rem 0;
}

.ps-wishlist-products .wc-block-product-button {
    margin-top: auto;
}

.ps-wishlist-products .wc-block-product-button a {
    display: inline-block;
    padding: 10px 20px;
    background-color: var(--color-coffee);
    color: var(--color-white);
    text-decoration: none;
    border-radius: 50px;
    transition: all 0.3s ease;
    font-size: 14px;
    font-weight: 700;
}

.ps-wishlist-products .wc-block-product-button a:hover {
    background-color: var(--color-orange);
    color: var(--color-coffee);
}

/* Generic overlay Add to Cart for WooCommerce product collections */
.wc-block-product:hover .ps-add-to-cart-overlay {
    opacity: 1;
}

.wp-block-woocommerce-product-collection .wc-block-product {
    position: relative;
}

.wp-block-woocommerce-product-collection .wc-block-product-button {
    position: absolute;
    left: 50%;
    bottom: calc(var(--spacing) * 4);
    transform: translateX(-50%);
    opacity: 0;
    transition: all 0.3s ease;
    z-index: 10;
}

.wp-block-woocommerce-product-collection .wc-block-product:hover .wc-block-product-button {
    opacity: 1;
}

.ps-wishlist-empty {
    text-align: center;
    padding: 4rem 0;
}

.ps-product-hero {
    background-color: var(--color-orange-light);
    padding-top: 40px;
    padding-bottom: 40px;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

/* 
.ps-container {
    max-width: var(--container-screens-2xl);
    margin: 0 auto;
    padding: 0 var(--container-padding);
    width: 100%;
} */

.ps-product-hero-content {
    text-align: center;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.ps-product-title-main {
    color: var(--color-coffee);
    font-size: var(--font-size-text-h1);
    line-height: var(--line-height-text-h1);
    font-weight: var(--font-weight-text-h1);
    margin-bottom: 0;
}

.ps-breadcrumb {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    flex-wrap: wrap;
}

.ps-breadcrumb-item {
    color: var(--color-black);
    font-size: var(--font-size-text-19);
    padding-right: 16px;
    position: relative;
    display: block;
}

.ps-breadcrumb-item:last-child {
    padding-right: 0;
}

.ps-breadcrumb-item:not(:last-child)::after {
    content: '';
    position: absolute;
    width: 8px;
    height: 1px;
    background-color: var(--color-black);
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

.ps-product-details {
    padding-block: calc(var(--spacing) * 10);
}

.ps-product-details-grid {
    display: grid !important;
    align-items: start !important;
    grid-template-columns: 1fr;
    gap: 40px;
}

.ps-product-details-grid.is-layout-flex {
    align-items: start !important;
}

@media (min-width: 768px) {
    .ps-product-details-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

.ps-product-gallery {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
}

.ps-product-main-image-wrapper {
    width: 100%;
    height: 100%;
}

.ps-product-image-container {
    border: 2px dashed var(--color-gray-dark-100);
    border-radius: 10px;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto;
}

.ps-product-main-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: all 0.3s ease;
}

.ps-product-image-container:hover .ps-product-main-image {
    filter: blur(2px);
}

.ps-heart-icon {
    transition: all 0.3s ease;
}

.ps-product-thumbnails {
    order: 2;
}

.ps-product-thumbnails .wc-block-product-gallery-thumbnails__scrollable {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 20px;
}

@media (min-width: 1360px) {
    .ps-footer-newsletter {
        padding-top: 40px;
        padding-bottom: 40px;
    }
}

@media (min-width: 640px) {
    .ps-product-thumbnails .wc-block-product-gallery-thumbnails__scrollable {
        grid-template-columns: repeat(4, 1fr);
    }

    .ps-footer-newsletter {
        background-position: top 13% center;
    }
}

@media (min-width: 768px) {
    .ps-product-thumbnails .wc-block-product-gallery-thumbnails__scrollable {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (min-width: 1024px) {
    .ps-product-hero {
        padding-top: 80px;
        padding-bottom: 80px;
    }
}

@media (min-width: 1280px) {
    .ps-product-thumbnails .wc-block-product-gallery-thumbnails__scrollable {
        grid-template-columns: repeat(4, 1fr);
        gap: 40px;
    }
}

.ps-product-thumbnail {
    border: 2px dashed var(--color-gray-dark-100);
    border-radius: 10px;
    position: relative;
    overflow: hidden;
    min-width: 70px;
    width: 100%;
    min-height: 70px;
    height: 100%;
    cursor: pointer;
}

.ps-product-thumbnail img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ps-product-thumbnail.ps-thumbnail-active {
    border-color: var(--color-orange);
}

.ps-product-info {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.ps-product-tags {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.ps-tag {
    font-size: var(--font-size-text-12);
    line-height: var(--line-height-text-12);
    width: fit-content;
    border-radius: 20px;
    background-color: var(--color-orange);
    padding: 8px 12px;
    font-weight: 700;
}

.ps-tag a {
    font-weight: 700;
    font-size: var(--font-size-text-12);
    line-height: var(--line-height-text-12);
}

.ps-product-title-rating {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.ps-product-details-grid .wp-block-woocommerce-product-price .wc-block-components-product-price {
    display: flex;
    align-items: center;
    gap: 10px;
}

.ps-product-details-grid .wp-block-woocommerce-product-price .wc-block-components-product-price del .woocommerce-Price-amount bdi {
    font-size: var(--font-size-text-h4);
    line-height: var(--line-height-text-h4);
}

.ps-product-details-grid .wp-block-woocommerce-product-price .wc-block-components-product-price ins .woocommerce-Price-amount bdi {
    font-size: var(--font-size-text-40);
    line-height: var(--line-height-text-40);
}

.ps-product-title {
    font-size: var(--font-size-text-40);
    line-height: var(--line-height-text-40);
    font-weight: var(--font-weight-text-40);
    color: var(--color-black);
    margin: 0;
}

.ps-product-rating {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 4);
}

.ps-rating-stars {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
}

.ps-star-icon {
    width: 18px;
    height: 18px;
}

.ps-rating-count {
    font-size: var(--font-size-text-14);
    color: var(--color-black);
    font-weight: var(--font-weight-semibold);
    margin: 0;
}

.ps-product-detail-price {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
}

.ps-price {
    font-size: var(--font-size-text-40);
    line-height: var(--line-height-text-40);
}

.ps-price-original .amount bdi {
    text-decoration: line-through;
    color: var(--color-gray-dark);
    font-weight: 600;
    font-size: var(--font-size-text-h4);
    line-height: var(--line-height-text-h4);
}

.ps-price-sale .amount bdi {
    color: var(--color-coffee);
    font-weight: var(--font-weight-extrabold);
    font-size: var(--font-size-text-40);
    line-height: var(--line-height-text-40);
    font-weight: 800;
}

.ps-product-short-description {
    font-size: var(--font-size-text-19);
    color: var(--color-gray-dark);
    font-weight: var(--font-weight-text-19);
    line-height: 30px;
}

.ps-product-cart-form {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 5);
    flex-wrap: wrap;
}

.ps-quantity-control {
    display: flex;
    align-items: center;
    gap: 28px;
    border: 1px solid var(--color-coffee);
    border-radius: 50px;
    padding: 12px 36px;
    box-shadow: none;
    background: none;
}

.quantity {
    position: relative;
    font-size: var(--font-size-text-20);
    line-height: var(--line-height-text-20);
    color: var(--color-coffee);
    font-weight: 700;
    padding: 0 20px;
}

.quantity::after {
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    background: #000;
    top: 0;
    bottom: 0;
    left: 0;
}

.quantity::before {
    content: "";
    position: absolute;
    width: 1px;
    height: 100%;
    background: #000;
    top: 0;
    bottom: 0;
    right: 0;
}

.quantity .qty {
    border: none;
    outline: none;
    font-size: var(--font-size-text-20);
    line-height: var(--line-height-text-20);
    color: var(--color-coffee);
    font-weight: 700;
    width: 1.631em !important;
}

.ps-quantity-btn {
    cursor: pointer;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    padding: 0;
}

.ps-add-to-cart-btn {
    z-index: 10;
    white-space: nowrap;
    background-color: var(--color-coffee);
    color: var(--color-white);
    transition: all 0.3s ease;
    font-size: var(--font-size-text-18);
    font-weight: var(--font-weight-bold);
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
}

.ps-add-to-cart-btn:hover {
    background-color: var(--color-orange);
    color: var(--color-coffee);
}

.ps-product-description {
    grid-column: 1 / -1;
    padding: 18px;
    background-color: var(--color-gray);
    border-radius: 20px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media (min-width: 768px) {
    .ps-product-description {
        grid-column: 1 / 3;
    }

    .ps-product-description {
        padding: 24px 36px;
    }
}

.ps-description-title {
    font-size: var(--font-size-text-h3);
    line-height: var(--line-height-text-h3);
    font-weight: 700;
    margin: 0;
}

.ps-product-details-wrapper {
    padding: 40px 0;
}

.ps-product-description .wc-block-product-description p,
.ps-product-description .wc-block-product-description ul li {
    font-size: var(--font-size-text-19);
    line-height: var(--line-height-text-19);
    font-weight: var(--font-weight-text-19);
    color: var(--color-gray-dark);
}

.ps-product-description .wc-block-product-description h2,
.ps-product-description .wc-block-product-description h3,
.ps-product-description .wc-block-product-description h4,
.ps-product-description .wc-block-product-description h5,
.ps-product-description .wc-block-product-description h6 {
    font-size: var(--font-size-text-22);
    line-height: var(--line-height-text-22);
    font-weight: var(--font-weight-text-22);
    color: var(--color-black);
}

.ps-product-description .wc-block-product-description ul {
    padding-left: 20px;
    display: flex !important;
    flex-direction: column;
    gap: 10px;
}

.ps-description-content {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.ps-product-reviews {
    padding-block: calc(var(--spacing) * 10);
}

.ps-reviews-title {
    font-size: var(--font-size-text-h3);
    line-height: var(--line-height-text-h3);
    font-weight: var(--font-weight-text-h3);
    color: var(--color-black);
    margin-bottom: calc(var(--spacing) * 7.5);
}

.ps-review-item {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 7.5);
    margin-bottom: calc(var(--spacing) * 7.5);
}

.ps-review-header {
    display: flex;
    align-items: flex-start;
    gap: calc(var(--spacing) * 3);
}

.ps-review-avatar {
    flex: none;
    width: 45px;
    height: 45px;
    border-radius: 50%;
}

.ps-review-info {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
}

.ps-review-author-date {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 1);
}

.ps-review-author {
    font-size: var(--font-size-text-22);
    line-height: var(--line-height-text-22);
    font-weight: var(--font-weight-text-22);
    color: var(--color-black);
    margin: 0;
}

.ps-review-date {
    font-size: var(--font-size-text-14);
    color: var(--color-gray-dark);
    margin: 0;
}

.ps-review-content {
    font-size: var(--font-size-text-19);
    color: var(--color-black);
    margin: 0;
}

.ps-product-comments {
    padding-block: calc(var(--spacing) * 10);
}

.ps-comments-title {
    font-size: var(--font-size-text-h3);
    line-height: var(--line-height-text-h3);
    font-weight: var(--font-weight-text-h3);
    color: var(--color-black);
    margin-bottom: calc(var(--spacing) * 7.5);
}

.ps-comment-form-wrapper {
    background-color: var(--color-orange-light);
    border-radius: 20px;
    padding: calc(var(--spacing) * 7);
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 5);
}

@media (min-width: 768px) {
    .ps-comment-form-wrapper {
        padding: calc(var(--spacing) * 9);
        gap: calc(var(--spacing) * 8);
    }
}

@media (min-width: 1024px) {
    .ps-comment-form-wrapper {
        padding: calc(var(--spacing) * 14);
    }
}

.ps-comment-field {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 2);
}

.ps-comment-textarea {
    grid-column: 1 / -1;
}

@media (min-width: 768px) {
    .ps-comment-textarea {
        grid-column: 1 / 3;
    }
}

.ps-comment-input,
.ps-comment-textarea-input {
    width: 100%;
    padding: calc(var(--spacing) * 5) calc(var(--spacing) * 8);
    background-color: var(--color-white);
    border-radius: 10px;
    font-size: var(--font-size-text-20);
    color: var(--color-black);
    outline: none;
    font-weight: var(--font-weight-medium);
    border: none;
}

.ps-comment-input::placeholder,
.ps-comment-textarea-input::placeholder {
    color: #A2A2A2;
    font-size: var(--font-size-text-20);
    font-weight: var(--font-weight-medium);
}

.ps-comment-textarea-input {
    resize: vertical;
    min-height: 120px;
}

.ps-comment-submit {
    margin: 0 auto;
    background-color: var(--color-coffee);
    color: var(--color-white);
    transition: all 0.3s ease;
    font-size: var(--font-size-text-18);
    font-weight: var(--font-weight-bold);
}

.ps-comment-submit:hover {
    background-color: var(--color-orange);
    color: var(--color-coffee);
}

.ps-related-products {
    padding-block: calc(var(--spacing) * 10);
}

.ps-related-products-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    margin-bottom: calc(var(--spacing) * 7.5);
}

.ps-title-icon {
    width: 54px;
    height: auto;
    margin-bottom: calc(var(--spacing) * 2);
}

.ps-related-title {
    font-size: var(--font-size-text-h2);
    line-height: var(--line-height-text-h2);
    font-weight: var(--font-weight-text-h2);
    color: var(--color-black);
    margin: 0;
}

.ps-related-products-controls {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: calc(var(--spacing) * 3);
    height: 35px;
    margin-bottom: calc(var(--spacing) * 5);
}

.ps-swiper-button-prev,
.ps-swiper-button-next {
    position: static;
    transform: translateX(0);
    background-color: var(--color-coffee);
    width: 35px;
    height: 35px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
    margin: 0;
}

.ps-view-all-link {
    font-size: var(--font-size-text-18);
    font-weight: var(--font-weight-bold);
    color: var(--color-black);
    transition: all 0.3s ease;
    text-decoration: none;
}

.ps-view-all-link:hover {
    color: var(--color-orange);
}

.ps-product-card-link {
    height: 100%;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: all 0.3s ease;
    text-decoration: none;
}

.ps-product-card-image-wrapper {
    border: 2px dashed var(--color-gray-dark-100);
    border-radius: 10px;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: auto;
}

.ps-product-card-image {
    height: 100%;
    width: 100%;
    object-fit: cover;
    transition: all 0.3s ease;
}

.ps-product-card-link:hover .ps-product-card-image {
    filter: blur(2px);
}

.ps-sale-badge-related {
    position: absolute;
    top: -4px;
    right: -26px;
    z-index: 10;
    height: 36px;
    font-weight: 700;
    width: 79px;
    padding-bottom: calc(var(--spacing) * 1);
    padding-top: calc(var(--spacing) * 3);
    text-align: center;
    background-color: var(--color-orange);
    color: var(--color-white);
    transform: rotate(45deg);
    font-size: var(--font-size-text-16);
}

.ps-wishlist-button-related {
    position: absolute;
    top: calc(var(--spacing) * 3);
    left: calc(var(--spacing) * 3);
    z-index: 10;
    height: 34px;
    width: 34px;
    border-radius: 50%;
    border: 1px solid var(--color-orange);
    display: flex;
    opacity: 0;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background-color: transparent;
}

.ps-product-card-link:hover .ps-wishlist-button-related {
    opacity: 1;
}

.ps-add-to-cart-overlay {
    position: absolute;
    bottom: calc(var(--spacing) * 4);
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    white-space: nowrap;
    opacity: 0;
    background-color: var(--color-coffee);
    color: var(--color-white);
    transition: all 0.3s ease;
    font-size: var(--font-size-text-18);
    font-weight: var(--font-weight-bold);
}

.ps-product-card-link:hover .ps-add-to-cart-overlay {
    opacity: 1;
}

.ps-add-to-cart-overlay:hover {
    background-color: var(--color-orange);
    color: var(--color-coffee);
}

.ps-product-card-content {
    padding-block: calc(var(--spacing) * 4);
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 3);
}

.ps-product-card-title {
    font-size: var(--font-size-text-20);
    font-weight: var(--font-weight-bold);
    color: var(--color-black);
    margin: 0;
}

.ps-price-wrapper {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2.5);
}

/* Shop Archive Template Styles */
.ps-filter-close-btn,
.ps-filter-open-btn {
    width: 34px !important;
    height: 34px;
    position: absolute;
    top: calc(var(--spacing) * 5);
    right: calc(var(--spacing) * 5);
    border-radius: 50%;
    background-color: var(--color-coffee);
    display: flex;
    align-items: center;
    justify-content: center;
}

.ps-filter-open-btn {
    position: static;
    width: 24px !important;
    height: 24px !important;
}

@media (min-width: 640px) {
    .ps-filter-open-btn {
        width: 34px !important;
        height: 34px !important;
    }
}

@media (min-width: 991px) {

    .ps-filter-close-btn,
    .ps-filter-open-btn {
        display: none;
    }
}

.ps-price-range {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.ps-price-range-labels {
    display: flex;
    justify-content: space-between;
    font-size: var(--font-size-text-18);
    font-weight: var(--font-weight-bold);
    color: var(--color-coffee);
}

.ps-price-label {
    font-size: var(--font-size-text-18);
    line-height: var(--line-height-text-18);
    font-weight: 700;
    color: var(--color-coffee);
}

.ps-price-range-slider {
    position: relative;
    height: 30px;
    display: flex;
    align-items: center;
}

.ps-price-range-track {
    position: absolute;
    width: 100%;
    height: 12px;
    background-color: #C2C2C2;
    border-radius: 9999px;
}

.ps-price-range-fill {
    position: absolute;
    height: 12px;
    background-color: var(--color-orange);
    border-radius: 9999px;
}

.ps-price-range-input {
    position: absolute;
    width: 100%;
    appearance: none;
    background: transparent;
    pointer-events: none;
    margin: 0;
}

.ps-price-range-input::-webkit-slider-thumb {
    appearance: none;
    height: 24px;
    width: 24px;
    border-radius: 50%;
    background-color: #704545;
    cursor: pointer;
    pointer-events: auto;
    position: relative;
    z-index: 3;
    transition: transform 0.2s;
}

.ps-price-range-input::-webkit-slider-thumb:hover {
    transform: scale(1.1);
}

.ps-price-range-input::-moz-range-thumb {
    height: 24px;
    width: 24px;
    border-radius: 50%;
    background-color: #704545;
    cursor: pointer;
    pointer-events: auto;
    z-index: 3;
    transition: transform 0.2s;
    border: none;
}

.ps-price-range-input::-moz-range-thumb:hover {
    transform: scale(1.1);
}

.ps-filter-btn {
    width: fit-content !important;
    box-shadow: none !important;
    margin: 0 !important;
    padding: 7px 36px !important;
}

.ps-search-wrapper {
    position: relative;
    width: 100%;
}

.ps-search-input {
    padding: calc(var(--spacing) * 3);
    width: 100%;
    padding-left: calc(var(--spacing) * 5);
    padding-right: calc(var(--spacing) * 10);
    background-color: var(--color-white);
    border: 1px solid var(--color-orange);
    border-radius: 9999px;
    outline: none;
    font-size: var(--font-size-text-12);
    color: #555555CC;
}

.ps-search-input::placeholder {
    color: #555555CC;
    font-size: var(--font-size-text-12);
}
.wc-block-product-template.is-flex-container>li {

    width: 100% !important;
}
.ps-search-button {
    position: absolute;
    right: calc(var(--spacing) * 5);
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
}

.ps-categories-list {
    display: flex;
    flex-direction: column;
    gap: calc(var(--spacing) * 4);
}

.ps-tags-list {
    display: flex;
    align-items: center;
    gap: calc(var(--spacing) * 2);
    flex-wrap: wrap;
}

.ps-results-count {
    font-size: var(--font-size-text-20);
    font-weight: var(--font-weight-semibold);
    text-align: end;
    color: var(--color-coffee);
}

.ps-product-overlay-btn {
    position: absolute;
    bottom: calc(var(--spacing) * 4);
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
    white-space: nowrap;
    opacity: 0;
    background-color: var(--color-coffee);
    color: var(--color-white);
    transition: all 0.3s ease;
    font-size: var(--font-size-text-18);
    font-weight: var(--font-weight-bold);
}

.ps-product-image-wrapper:hover .ps-product-overlay-btn {
    opacity: 1;
}

.ps-product-overlay-btn:hover {
    background-color: var(--color-orange);
    color: var(--color-coffee);
}

/* Product Collection Slider Styles */
.product-slider.swiper {
    overflow: hidden;
}

.product-slider .wc-block-product-template.swiper-wrapper {
    display: flex !important;
    grid-template-columns: none !important;
    margin: 0 !important;
}

.product-slider .wc-block-product-template .swiper-slide {
    width: auto;
    flex-shrink: 0;
    margin-right: 16px;
}

.product-slider .wp-block-woocommerce-product-template.swiper-wrapper {
    display: flex !important;
    grid-template-columns: none !important;
    margin: 0 !important;
}

.product-slider .wp-block-woocommerce-product-template .swiper-slide {
    width: auto;
    flex-shrink: 0;
    margin-right: 16px;
}


.wp-block-cover,
.wp-block-cover-image {
    min-height: auto !important
}

.ps-meet-team .wp-block-social-links .wp-social-link svg {
    height: 24px;
    width: 24px;
}


/* WooCommerce Product Pagination Styles */
.wc-block-product-pagination,
.wp-block-woocommerce-product-pagination,
.ps-shop-pagination {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin-top: 2rem;
}

.wc-block-product-pagination .wc-block-pagination,
.wp-block-woocommerce-product-pagination .wc-block-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 0.5rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

.wc-block-product-pagination .wc-block-pagination__link,
.wp-block-woocommerce-product-pagination .wc-block-pagination__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.5rem;
    height: 2.5rem;
    padding: 0.5rem;
    text-decoration: none;
    border-radius: 0.5rem;
    transition: all 0.3s ease;
}

.wc-block-product-pagination .wc-block-pagination__link:hover,
.wp-block-woocommerce-product-pagination .wc-block-pagination__link:hover {
    text-decoration: none;
}

th.wc-block-cart-items__header-image,
h2.wp-block-woocommerce-cart-order-summary-heading-block.wc-block-cart__totals-title,
th.wc-block-cart-items__header-total {
    font-size: var(--font-size-text-h4);
    line-height: var(--line-height-text-h4);
    font-weight: var(--font-weight-text-h4);
    text-transform: capitalize;
}

/* .wc-block-cart-items tbody,
.wc-block-cart-items td.wc-block-cart-item__image {
    padding: calc(var(--spacing) * 3);
    border-color: var(--color-gray-dark-100) !important;
    border-style: dashed !important;
    border-width: 2px !important;
    border-radius: 10px !important;
    border: none;
} */

/* .wc-block-cart-items tr.wc-block-cart-items__row {
    border-color: var(--color-gray-dark-100) !important;
    border-style: dashed !important;
    border-bottom: 2px !important;
    border: none;
} */

.woocommerce-cart .wc-block-cart-items a.wc-block-components-product-name {
    font-size: var(--font-size-text-h5) !important;
    line-height: var(--line-height-text-h5) !important;
    font-weight: var(--font-weight-text-h5) !important;
}

.wc-block-cart-items span.wc-block-formatted-money-amount.wc-block-components-formatted-money-amount {
    font-size: var(--font-size-text-20);
    line-height: var(--line-height-text-20);
    font-weight: var(--font-weight-bold);
    color: var(--color-coffee);
}

.wc-block-cart-items .wc-block-components-product-badge {
    border: none !important;
}

.wc-block-cart-items .wc-block-components-product-metadata__description {
    display: none;
}

a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained,
button.wc-block-components-totals-coupon__button,
.wc-block-components-checkout-place-order-button.contained,
a.wc-block-components-button,
div.wpforms-container-full button[type=submit] {
    font-size: var(--font-size-text-18-bold) !important;
    line-height: var(--line-height-text-18-bold) !important;
    font-weight: var(--font-weight-text-18-bold) !important;
    border-radius: 50px !important;
    padding-block: calc(var(--spacing) * 4) !important;
    color: var(--color-white) !important;
    padding-inline: calc(var(--spacing) * 6) !important;
    background-color: var(--color-coffee) !important;
    width: 100%;
    height: auto !important;
}

div.wpforms-container-full button[type=submit] {
    width: auto;
}

.wpforms-submit-container {
    text-align: center;
}

a.wc-block-components-button.wp-element-button.wc-block-cart__submit-button.contained:hover,
button.wc-block-components-totals-coupon__button:hover,
.wc-block-components-checkout-place-order-button.contained:hover,
a.wc-block-components-button:hover,
div.wpforms-container-full button[type=submit]:hover {
    color: var(--color-coffee) !important;
    background-color: var(--color-orange) !important;
}

form#wc-block-components-totals-coupon__form {
    display: block;
}

input#wc-block-components-totals-coupon__input-coupon {
    font-size: var(--font-size-text-18);
    line-height: var(--line-height-text-18);
    color: var(--color-black);
    border-radius: calc(infinity * 1px);
    border-width: 1px;
    border-color: var(--color-coffee);
    background-color: var(--color-white);
    padding-block: calc(var(--spacing) * 4);
    padding-inline: calc(var(--spacing) * 6);
    margin-bottom: 10px;
}

.wc-block-components-form .wc-block-components-text-input label,
.wc-block-components-text-input label {
    margin-bottom: 0px;
    left: 20px;
    top: 27px;
}

.wc-block-components-main.wc-block-checkout__main.wp-block-woocommerce-checkout-fields-block {
    background-color: var(--color-orange-light);
    padding: calc(var(--spacing) * 9);
    border-radius: 20px;
}
.ps-header-contact-item figure{
    background: var(--color-white);
    border-radius: 100%;
    width: 18px;
    height: 18px;
    padding: 4px;
    display: flex;
}

.woocommerce-account .wp-block-post-title, .woocommerce-account main .woocommerce, .woocommerce-cart .wp-block-post-title, .woocommerce-cart main .woocommerce, .woocommerce-checkout .wp-block-post-title, .woocommerce-checkout main .woocommerce{
    max-width: 100%;
}
/* .woocommerce-cart main,
.woocommerce-checkout main {
    max-width: var(--container-screens-2xl) !important;
    margin: 0 auto !important;
    padding: 0 var(--container-padding) !important;
    width: 100% !important;
} */

h1.wp-block-heading {
    color: var(--color-coffee);
}

h1.wp-block-heading span {
    color: var(--color-orange);
}

figure.ps-pet-icon {
    text-align: center;
}

/* Background Image Classes - Hero Patterns */
.ps-banner {
    background-image: url('https://themes.zluck.in/pawluxe/wp-content/uploads/sites/11/2025/12/bannerpattern.png');
    background-size: cover;
    background-position: left bottom;
    background-repeat: no-repeat;
}

.ps-banner h4 {
    color: var(--color-orange);
    font-size: var(--font-size-text-h5);
    line-height: var(--line-height-text-h5);
    font-weight: var(--font-weight-text-h5);
}

.ps-hero h1 {
    font-size: var(--font-size-text-100);
    line-height: var(--line-height-text-100);
    font-weight: var(--font-weight-text-100);
}

.ps-hero {
    /* background-image: url('https://themes.zluck.in/pawluxe/wp-content/uploads/sites/11/2025/12/heropattern1.png'); */
    background-image: url('https://themes.zluck.in/pawluxe/wp-content/uploads/sites/11/2025/12/bannerpattern.png');
    background-size: cover;
    background-position: left bottom;
    background-repeat: no-repeat;
}

/* Background Image Classes - Section Patterns */
.bg-about-hero,
.ps-about-us {
    background-image: url('https://themes.zluck.in/pawluxe/wp-content/uploads/sites/11/2025/12/aboutUS.jpg');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.ps-why-choose-us {
    background-image: url('https://themes.zluck.in/pawluxe/wp-content/uploads/sites/11/2025/12/chooseUs.png');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

/* Service images styling - images are now using wp:image blocks */
.wp-block-image.object-cover img {
    object-fit: cover;
    width: 100%;
    height: 100%;
}

/* Section Overlay Styles */
.section-with-overlay {
    position: relative;
    z-index: 2;
}

/* Shop Archive Template Styles */
.shop-filter-column {
    flex-basis: 33.33% !important;
}

.shop-products-column {
    flex-basis: 66.66% !important;
}

/* Price Range Slider Styles */
.price-slider-fill {
    left: 0%;
    right: 100%;
}

.price-range-min {
    z-index: 4;
}

.price-range-max {
    z-index: 5;
}

/* WooCommerce Block Visibility Styles */
.wc-block-product-pagination-hidden {
    display: none;
}

.wc-block-product-pagination-visible {
    display: block !important;
    visibility: visible !important;
}

/* Force pagination to show on shop page */
.ps-shop-pagination .wc-block-product-pagination,
.ps-shop-pagination .wp-block-woocommerce-product-pagination {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
}

/* Editor-specific styles to match frontend */
.block-editor-page .wp-block-group,
.block-editor-page .wp-block-columns,
.block-editor-page .wp-block-column {
    box-sizing: border-box;
}

/* Ensure editor styles match frontend for header/footer */
.block-editor-page .site-footer,
.block-editor-page .site-header {
    position: relative;
}



/* Editor styles for service images */
.block-editor-page .wp-block-image.object-cover img {
    object-fit: cover;
    width: 100%;
    height: 100%;
    border-radius: 20px;
}

/* Editor styles for subscription form */
.block-editor-page .subscribe-form {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

@media (min-width: 640px) {
    .block-editor-page .subscribe-form {
        flex-direction: row;
        gap: 0;
    }
}

/* Editor styles for header icons */
.block-editor-page .wishlist-icon,
.block-editor-page .cart-icon {
    position: relative;
    display: inline-block;
}

.block-editor-page .wishlist-count,
.block-editor-page .cart-count {
    position: absolute;
    top: -6px;
    right: -4px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    line-height: 1;
}

/* Editor styles for price slider */
.block-editor-page .price-slider-fill {
    position: absolute;
    height: 12px;
    border-radius: 9999px;
}

.block-editor-page .price-range-min,
.block-editor-page .price-range-max {
    position: absolute;
    width: 100%;
    appearance: none;
    background: transparent;
    pointer-events: none;
}

/* Editor column styles */
.block-editor-page .shop-filter-column {
    flex-basis: 33.33%;
}

.block-editor-page .shop-products-column {
    flex-basis: 66.66%;
}

/* Editor styles for columns with CSS grid - override WordPress default column display */
.block-editor-page .wp-block-columns.grid {
    display: grid !important;
}

.block-editor-page .wp-block-columns.grid.grid-cols-1 {
    grid-template-columns: repeat(1, 1fr) !important;
}

/* Use attribute selectors for classes with colons */
.block-editor-page .wp-block-columns.grid[class*="sm:grid-cols-2"] {
    grid-template-columns: repeat(1, 1fr) !important;
}

@media (min-width: 640px) {
    .block-editor-page .wp-block-columns.grid[class*="sm:grid-cols-2"] {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

.block-editor-page .wp-block-columns.grid[class*="lg:grid-cols-3"] {
    grid-template-columns: repeat(1, 1fr) !important;
}

@media (min-width: 1024px) {
    .block-editor-page .wp-block-columns.grid[class*="lg:grid-cols-3"] {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

.block-editor-page .wp-block-columns.grid[class*="xlg:grid-cols-3"] {
    grid-template-columns: repeat(1, 1fr) !important;
}

@media (min-width: 1280px) {
    .block-editor-page .wp-block-columns.grid[class*="xlg:grid-cols-3"] {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

.block-editor-page .wp-block-columns.grid[class*="lg:grid-cols-2"] {
    grid-template-columns: repeat(1, 1fr) !important;
}

@media (min-width: 1024px) {
    .block-editor-page .wp-block-columns.grid[class*="lg:grid-cols-2"] {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* 2xsm breakpoint for grid columns */
.block-editor-page .wp-block-columns.grid[class*="2xsm:grid-cols-2"] {
    grid-template-columns: repeat(1, 1fr) !important;
}

@media (min-width: 480px) {
    .block-editor-page .wp-block-columns.grid[class*="2xsm:grid-cols-2"] {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* Hide WordPress default column flex display when using grid */
.block-editor-page .wp-block-columns.grid {
    flex-direction: row !important;
}

.block-editor-page .wp-block-columns.grid .wp-block-column {
    flex-basis: auto !important;
    flex-grow: 0 !important;
    flex-shrink: 0 !important;
    width: auto !important;
    margin-left: 0 !important;
}

/* Hero section editor styles - ensure 2 column layout displays correctly */
.block-editor-page .hero .wp-block-group.flex,
.block-editor-page .wp-block-group.flex.items-start[class*="xlg:flex-row"] {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
}

@media (min-width: 1280px) {

    .block-editor-page .hero .wp-block-group.flex[class*="xlg:flex-row"],
    .block-editor-page .wp-block-group.flex.items-start[class*="xlg:flex-row"] {
        flex-direction: row !important;
    }
}

.block-editor-page .hero .wp-block-group[class*="xlg:w-[60%]"],
.block-editor-page .wp-block-group[class*="xlg:w-[60%]"],
.block-editor-page .wp-block-group[class*="xlg:w-3/5"] {
    width: 100% !important;
}

@media (min-width: 1280px) {

    .block-editor-page .hero .wp-block-group[class*="xlg:w-[60%]"],
    .block-editor-page .wp-block-group[class*="xlg:w-[60%]"],
    .block-editor-page .wp-block-group[class*="xlg:w-3/5"] {
        width: 60% !important;
    }
}

.block-editor-page .hero .wp-block-group[class*="xlg:w-[48%]"],
.block-editor-page .wp-block-group[class*="xlg:w-[48%]"],
.block-editor-page .wp-block-group[class*="xlg:w-2/5"],
.block-editor-page .wp-block-group[class*="xlg:w-1/2"] {
    width: 100% !important;
}

@media (min-width: 1280px) {

    .block-editor-page .hero .wp-block-group[class*="xlg:w-[48%]"],
    .block-editor-page .wp-block-group[class*="xlg:w-[48%]"],
    .block-editor-page .wp-block-group[class*="xlg:w-2/5"],
    .block-editor-page .wp-block-group[class*="xlg:w-1/2"] {
        width: 48% !important;
    }
}

/* Ensure hero image displays correctly in editor */
.block-editor-page .hero-image {
    width: 100%;
    height: auto;
    display: block;
}

/* Remove ALL WordPress default block styles in editor - comprehensive overrides */
/* Override :root CSS variables */
.block-editor-page :root {
    --wp--style--global--content-size: unset !important;
    --wp--style--global--wide-size: unset !important;
    --wp--style--block-gap: unset !important;
}

/* Override body styles */
.block-editor-page :where(body) {
    margin: 0 !important;
    background-color: unset !important;
    color: unset !important;
    font-family: unset !important;
    line-height: unset !important;
    padding: 0 !important;
}

/* Override wp-site-blocks styles */
.block-editor-page .wp-site-blocks>.alignleft,
.block-editor-page .wp-site-blocks>.alignright,
.block-editor-page .wp-site-blocks>.aligncenter {
    float: none !important;
    margin: 0 !important;
    justify-content: unset !important;
}

.block-editor-page :where(.wp-site-blocks)>* {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}

/* Override is-layout-flow styles */
.block-editor-page :root :where(.is-layout-flow)> :first-child,
.block-editor-page :root :where(.is-layout-flow)> :last-child,
.block-editor-page :root :where(.is-layout-flow)>* {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}

/* Override is-layout-constrained styles */
.block-editor-page :root :where(.is-layout-constrained)> :first-child,
.block-editor-page :root :where(.is-layout-constrained)> :last-child,
.block-editor-page :root :where(.is-layout-constrained)>* {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.block-editor-page .is-layout-constrained>.alignleft,
.block-editor-page .is-layout-constrained>.alignright,
.block-editor-page .is-layout-constrained>.aligncenter {
    float: none !important;
    margin: 0 !important;
}

.block-editor-page .is-layout-constrained> :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.block-editor-page .is-layout-constrained>.alignwide {
    max-width: none !important;
}

/* Override is-layout-flex styles */
.block-editor-page :root :where(.is-layout-flex) {
    gap: 0 !important;
}

.block-editor-page body .is-layout-flex {
    display: flex !important;
}

.block-editor-page .is-layout-flex {
    flex-wrap: wrap !important;
    align-items: center !important;
}

.block-editor-page .is-layout-flex> :is(*, div) {
    margin: 0 !important;
}

/* Override is-layout-grid styles */
.block-editor-page :root :where(.is-layout-grid) {
    gap: 0 !important;
}

.block-editor-page body .is-layout-grid {
    display: grid !important;
}

.block-editor-page .is-layout-grid> :is(*, div) {
    margin: 0 !important;
}

/* Override wp-block-group layout styles */
.block-editor-page :root :where(.wp-block-group-is-layout-flow)> :first-child,
.block-editor-page :root :where(.wp-block-group-is-layout-flow)> :last-child,
.block-editor-page :root :where(.wp-block-group-is-layout-flow)>* {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}

.block-editor-page :root :where(.wp-block-group-is-layout-constrained)> :first-child,
.block-editor-page :root :where(.wp-block-group-is-layout-constrained)> :last-child,
.block-editor-page :root :where(.wp-block-group-is-layout-constrained)>* {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
}

.block-editor-page :root :where(.wp-block-group-is-layout-flex),
.block-editor-page :root :where(.wp-block-group-is-layout-grid) {
    gap: 0 !important;
}

/* Override link styles */
.block-editor-page a:where(:not(.wp-element-button)) {
    color: unset !important;
    text-decoration: none !important;
}

.block-editor-page :root :where(a:where(:not(.wp-element-button)):hover) {
    color: unset !important;
    text-decoration: none !important;
}

/* Override heading styles */
.block-editor-page h1,
.block-editor-page h2,
.block-editor-page h3,
.block-editor-page h4,
.block-editor-page h5,
.block-editor-page h6 {
    color: unset !important;
    font-family: unset !important;
    font-weight: unset !important;
    line-height: unset !important;
}

/* Override button styles */
.block-editor-page :root :where(.wp-element-button, .wp-block-button__link) {
    background-color: unset !important;
    border-radius: unset !important;
    border-width: unset !important;
    color: unset !important;
    font-family: unset !important;
    font-size: unset !important;
    font-weight: unset !important;
    letter-spacing: unset !important;
    line-height: unset !important;
    padding: unset !important;
    text-decoration: none !important;
}

/* Override cover block styles */
.block-editor-page :root :where(.wp-block-cover) {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Override quote block styles */
.block-editor-page :root :where(.wp-block-quote) {
    border-left-color: unset !important;
    border-left-width: unset !important;
    color: unset !important;
}

/* Override pullquote styles */
.block-editor-page :root :where(.wp-block-pullquote) {
    font-size: unset !important;
    line-height: unset !important;
}

span.wc-block-mini-cart__amount,
.account-icon span.label {
    display: none;
}

.wpforms-field-row.wpforms-field-medium,
.wpforms-field-medium {
    max-width: 100% !important;
    border: none !important;
}

.wpforms-field-row-block input {
    border: none !important;
}

.ps-shop-content {
    padding-top: calc(var(--spacing) * 20);
}

.flex.items-center.gap-3.ps-product-cat {
    display: flex;
    align-items: center;
    gap: 12px;
}

.wp-block-query-pagination-numbers {
    display: flex;
    gap: 8px;
    justify-content: center;
    align-items: center;
}

a.page-numbers,
a.wp-block-query-pagination-next,
a.wp-block-query-pagination-previous {
    color: var(--color-black);
    background-color: var(--color-white);
    border-color: #F1F1F1;
    border-style: solid;
    border-width: 1px;
    border-radius: 8px;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

a.wp-block-query-pagination-next {
    margin-left: 12px;
}

a.wp-block-query-pagination-previous {
    margin-right: 12px;
}

nav.wp-block-query-pagination {
    margin-top: calc(var(--spacing) * 10);
}