/*
Theme Name: Anvogue Child
Theme URI: https://anvogue.presslayouts.com/landing
Description: Anvogue Child Theme
Author: In Our Oven
Author URI: http://inouroven.com
Template: anvogue
Version: 1.0.1
*/

/* Add your custom styles here */

/* RECIPE PAGE */

.category .recipe-filter-title {
    text-align: center;
}

.category .recipe-filter-intro p {
    font-size: 14px;
    font-weight: 400;
    text-align: center;
}

/* =========================================
   RECIPE FILTER PARENT CONTAINER
   ========================================= */

.recipe-filter-container {
    width: 20%;
    max-width: 20%;
    min-width: 0;
    flex: 0 0 20%;
    box-sizing: border-box;
}

.recipe-filter-container .elementor-widget-html,
.recipe-filter-container .elementor-widget-container,
.recipe-filter-container .recipe-filters {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

.recipe-filter-group-toggle {
	background: none;
	border: none;
	box-shadow: none;
	border-radius: 0;
	padding: 0;
	margin: 0;
	color: inherit;
	font: inherit;
	text-align: left;
	cursor: pointer;
}

.recipe-filter-group-toggle:hover,
.recipe-filter-group-toggle:focus,
.recipe-filter-group-toggle:active {
	background: none;
	border: none;
	box-shadow: none;
	color: inherit;
}

.recipe-filter-group-toggle > span:first-child {
	font-family: "DM Serif Display";
	font-size: 20px;
	font-weight: 600;
	text-transform: none;
}

.recipe-filter-label {
	text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 14px;
	font-weight: 500;
	color: #1c1207;
}

/* =========================================
   RECIPE FILTER EMPTY STATE
   ========================================= */

.custom-recipe-grid .recipe-filter-empty {
    display: none;
    grid-column: 1 / -1;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 60px 20px;
    border: 1px solid #e8ddd0;
    border-radius: 16px;
    background: #fff;
}

.custom-recipe-grid .recipe-filter-empty strong {
    margin-bottom: 8px;
    color: #1c1207;
    font-family: "DM Serif Display";
    font-size: 30px;
    font-weight: 700;
}

.custom-recipe-grid .recipe-filter-empty span {
    color: #8a7060;
    font-size: 14px;
}

/* =========================================
   RECIPE FILTERS
   ========================================= */

.recipe-filters {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-bottom: 40px;
    box-sizing: border-box;
}

.recipe-filter-search {
	position: relative;
}

.recipe-filter-search::after {
	content: "\ea88";
	font-family: "presslayouts-font";
	position: absolute;
	color: #8a7060;
	right: 15px;
	bottom: 0;
	height: 42px;
	display: flex;
	align-items: center;
	pointer-events: none;
}

.recipe-filter-search > label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.recipe-filter-search {
    margin-bottom: 24px;
}

.recipe-search-input {
    width: 100%;
    height: 48px;
    padding: 0 16px;
    border: 1px solid #e8ddd0 !important;
    border-radius: 8px;
    background: transparent !important;
    color: #1c1207;
    font-size: 14px;
}

.recipe-search-input:focus {
    border-color: #f9a4d2 !important;
    outline: none;
}

.recipe-search-input::placeholder {
	font-size: 14px;
	font-weight: 400;
	color: #8a7060;
	opacity: 0.5;
}

/*.recipe-filter-search label {
    display: block;
    margin-bottom: 8px;
    color: #1c1207;
    font-family: "DM Sans", sans-serif;
    font-size: 14px;
    font-weight: 600;
}*/

/* =========================================
   SELECTED FILTERS
   ========================================= */

.recipe-filter-selected {
    display: none;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-bottom: 24px;
    padding: 16px;
    border: 1px solid #e8ddd0;
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    overflow: hidden;
}

.recipe-filters.has-selected-filters .recipe-filter-selected {
    display: block;
}

.recipe-filter-selected-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
    min-width: 0;
}

.recipe-filter-selected-title {
		font-family: "DM Serif Display";
    font-size: 16px;
    font-weight: 600;
}

.recipe-filter-reset {
    padding: 0;
    border: 0;
    background: transparent;
    color: #8a7060;
    font-size: 11px;
		letter-spacing: 1px;
    cursor: pointer;
}

.recipe-filter-reset:hover {
    color: #f277b9;
		background-color: transparent;
}

.recipe-filter-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

.recipe-filter-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
		letter-spacing: 1px;
		padding: 6px 10px;
		border-radius: 999px;
		font-size: 10px !important;
		cursor: pointer;
    max-width: 100%;
    min-width: 0;
    border: 1px solid #f9a4d2;
    background: transparent;
    color: #1c1207;
    flex: 0 1 auto;
}

.recipe-filter-chip-remove {
    font-size: 16px;
    line-height: 1;
}

/* =========================================
   FILTER GROUPS
   ========================================= */

.recipe-filter-group {
    border-top: 1px solid #e8ddd0;
}

.recipe-filter-group:last-child {
    border-bottom: 1px solid #e8ddd0;
}

.recipe-filter-group-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 18px 0;
    border: 0;
    background: none;
    color: #1c1207;
    font-size: 15px;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
}

.recipe-filter-group-icon {
    font-size: 20px;
    font-weight: 400;
}

.recipe-filter-options {
    padding: 0 0 18px;
}

.recipe-filter-option {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 6px 0;
    color: #1c1207;
    font-family: "DM Sans", sans-serif;
    font-size: 14px;
    cursor: pointer;
}

.recipe-filter-checkbox {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.recipe-filter-checkbox-box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    border: 1px solid #d8cabe;
    border-radius: 3px;
    background: #fff;
}

.recipe-filter-checkbox:checked + .recipe-filter-checkbox-box {
    border-color: #f9a4d2;
    background: #f9a4d2;
}

.recipe-filter-checkbox:checked + .recipe-filter-checkbox-box::after {
    font-family: 'presslayouts-font';
		content: "\ea02";
    color: #fff;
    font-size: 7px;
}

.recipe-filter-label {
    flex: 1;
}

.recipe-filter-count {
    color: #8a7060;
    font-size: 12px;
}
/* =========================================
   HIDDEN RECIPES
   ========================================= */

.custom-recipe-grid:not(.side-bar-blog *) .blog-post-loop.recipe-filter-hidden {
    display: none !important;
}

/* =========================================
   RECIPE FILTER TRANSITION
   ========================================= */

.custom-recipe-grid:not(.side-bar-blog *) .articles-list {
    transition: opacity 0.2s ease;
}

.custom-recipe-grid:not(.side-bar-blog *) .articles-list.recipe-grid-filtering {
    opacity: 0.55;
}

/* =========================================
   EMPTY STATE
   ========================================= */

.custom-recipe-grid:not(.side-bar-blog *) .recipe-filter-empty {
    width: 100%;
    flex: 0 0 100%;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-thumbnail-wrapper {
	position: relative;
	overflow: hidden;
	aspect-ratio: 4 / 3;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-thumbnail-wrapper .post-thumbnail {
	width: 100%;
	height: 100%;
	border-radius: 16px 16px 0 0;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-thumbnail-wrapper .post-thumbnail a {
	display: block;
	width: 100%;
	height: 100%;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-thumbnail-wrapper .post-thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-post {
	position: relative;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-content-wrapper .entry-category {
	position: absolute;
	top: 30px;
	left: 15px;
	z-index: 10;
	margin: 0;
	color: #fff;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-post {
	background: #ffffff;
	border: 1px solid #e8ddd0;
	border-radius: 16px;
	overflow: hidden;
	height: 100%;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
	padding-top: 0;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-post:hover {
	transform: translateY(-4px);
	box-shadow: 0 10px 25px rgba(28, 18, 7, 0.10);
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-content-wrapper {
	padding: 20px;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-header {
	margin: 0;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-title {
	margin: 0 0 8px;
	font-size: 20px !important;
	font-weight: 700;
	line-height: 1.2;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-title a {
	color: var(--pls-text-color);
	text-decoration: none;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-content {
	margin: 0;
	color: #8a7060;
	font-size: 12px;
	line-height: 1.6;
}

.custom-recipe-grid:not(.side-bar-blog *) .more-link {
	border-radius: 40px !important;
	text-transform: uppercase;
	font-size: 12px;
	font-weight: 600;
}

#primary.custom-recipe-grid .more-link:hover {
    background-color: var(--pls-primary-color) !important;
    color: var(--pls-primary-inverse-color) !important;
}

@media (max-width: 1024px) {
	
    .recipe-index-layout > .e-con-inner {
        flex-wrap: wrap !important;
    }

    .recipe-index-layout .recipe-filter-container,
    .recipe-index-layout .elementor-element-819d229 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 100% !important;
    }
	
	.custom-recipe-grid:not(.side-bar-blog *) .blog-post-loop {
    width: 50%;
    flex: 0 0 50%;
	}
	
	.custom-recipe-grid:not(.side-bar-blog *) .entry-content {
    display: none;
}
	
	.custom-recipe-grid:not(.side-bar-blog *) .entry-content-wrapper .entry-category {
        position: static;
        margin: 0 0 8px;
    }
	
	.custom-recipe-grid:not(.side-bar-blog *) .entry-header {
    text-align: center;
		margin-bottom: 0px !important;
	}
	
		.custom-recipe-grid:not(.side-bar-blog *) .entry-thumbnail-wrapper {
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.custom-recipe-grid:not(.side-bar-blog *) .entry-title,
.custom-recipe-grid:not(.side-bar-blog *) .entry-title a {
    line-height: 0.7 !important;
}
	
	.custom-recipe-grid:not(.side-bar-blog *) .entry-title a {
		font-weight: 600 !important;
    font-size: 16px;
		line-height: 1 !important;
	}
	
	.custom-recipe-grid:not(.side-bar-blog *) .entry-title, 
	.custom-recipe-grid:not(.side-bar-blog *) .entry-category {
		margin: 5px !important;
    }
	
	.custom-recipe-grid:not(.side-bar-blog *) .entry-category .cat-links {
		padding: 2px 10px !important;
	}

    .custom-recipe-grid:not(.side-bar-blog *) .entry-category a, .entry-category .cat-links {
        font-size: 8px !important;
				font-weight: 700 !important;
    }
	
	.custom-recipe-grid:not(.side-bar-blog *) .entry-content-wrapper {
    padding: 2px;
	}
	
	.recipe-filter-group-toggle > span:first-child {
        font-size: 18px;
    }

    .recipe-filter-label {
        font-size: 14px;
    }
	
	.recipe-filter-group-toggle {
        padding: 15px 0;
    }

	.recipe-filters {
    margin-bottom: 10px;
	}
}

/* CHECKOUT PAGE */

.woocommerce.wp-block-group.alignwide {
    width: 90% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


@media (max-width: 767px) {
		.woocommerce.wp-block-group.alignwide {
    width: 100% !important;
	}
}

/* Stack checkout columns earlier */
@media (max-width: 1100px) {
    .pls-wc-checkout {
        display: block !important;
    }

    .pls-wc-checkout .pls-wc-checkout-customer-details,
    .pls-wc-checkout .pls-wc-checkout-order-review {
        width: 100% !important;
        max-width: 100% !important;
        float: none !important;
        flex: none !important;
    }

    .pls-wc-checkout .pls-wc-checkout-order-review {
        margin-top: 40px;
    }
}

/* ========================================
   PREVENT WOOCOMMERCE LOADING OVERLAY
======================================== */

#order_review > .blockUI,
#order_review > .woocommerce-checkout-review-order-table > .blockUI,
#payment > .blockUI,
#woocommerce-checkout-form-coupon > .blockUI {
    display: none !important;
}

#order_review > .blockUI,
#order_review > .woocommerce-checkout-review-order-table > .blockUI,
#payment > .blockUI {
    display: none !important;
}

.woocommerce-checkout .woocommerce-info:not(#payment .woocommerce-info) {
    border: none !important;
    box-shadow: none !important;
}

/* ========================================
   WOOCOMMERCE — VARIATIONS
   ======================================== */

/* Variation container */
.woocommerce .variation {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
		margin: 0;
    margin-bottom: 10px;
    font-size: 10px !important;
    line-height: 1.4 !important;
    color: #5A4E45 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

/* Hide variation labels */
.woocommerce .variation dt {
    display: none !important;
}

/* Variation values */
.woocommerce .variation dd {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: inherit !important;
}

/* Keep value text inline */
.woocommerce .variation dd p {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: inherit !important;
}

/* Separator between variation values */
.woocommerce .variation dd + dt + dd::before {
    content: "∙";
    margin: 0 3px;
}
/* Checkout product images — 1025px and above */
@media (min-width: 1025px) {
    .woocommerce-checkout-review-order .pls-product-thumb {
        width: 75px;
        min-width: 75px;
        flex: 0 0 75px;
        margin-right: 1.5rem;
    }

    .woocommerce-checkout-review-order .pls-product-thumb img {
        display: block !important;
        width: 75px;
        height: 75px;
        object-fit: cover;
    }
}

@media (max-width: 1024px) {
    .woocommerce-checkout-review-order .pls-product-thumb {
        display: block !important;
        width: 60px;
        min-width: 60px;
        height: 60px;
        margin-right: 1rem;
    }

    .woocommerce-checkout-review-order .pls-product-thumb img {
        display: block !important;
        width: 60px;
        height: 60px;
        object-fit: cover;
    }
}

@media (max-width: 767px) {

    /* Order Summary heading */
    .woocommerce-checkout .order-review-inner h3 {
        margin-bottom: 1rem;
    }


    /* Product row layout */
    .woocommerce-checkout-review-order td.product-name {
        flex: 1 1 auto !important;
    }

    .woocommerce-checkout-review-order td.product-total {
    width: auto !important;
        white-space: nowrap;
    }

    /* Product name */
    .woocommerce-checkout-review-order .pls-product-title {
        font-size: 14px !important;
        white-space: nowrap;
    }

    /* Quantity */
    .woocommerce-checkout-review-order .pls-product-desc .quantity {
        height: 30px !important;
        padding: 0;
        margin-top: 0;
    }

    .woocommerce-checkout-review-order .pls-product-desc .quantity input.qty {
        width: 30px !important;
        height: 30px !important;
        padding: 0 !important;
    }

    .woocommerce-checkout-review-order .pls-product-desc .quantity label.minus,
    .woocommerce-checkout-review-order .pls-product-desc .quantity label.plus {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        font-size: 10px;
    }

    .woocommerce-checkout-review-order .pls-product-desc .quantity label.minus::before,
    .woocommerce-checkout-review-order .pls-product-desc .quantity label.plus::before {
        font-size: 8px !important;
    }
}

/* In Our Oven — Empty Row */

.woocommerce-checkout tr:has(#dslpfw-packages-to-ship),
.woocommerce-checkout tr:has(#dslpfw-packages-to-pickup) {
    display: none !important;
}

/* In Our Oven — Hide pickup location address */
.woocommerce-checkout .pickup-location-address {
    display: none !important;
}

/* In Our Oven — Hide redundant pickup date labels */
.woocommerce-checkout .pickup-location-calendar > .pickup-location-field-label,
.woocommerce-checkout [id^="dslpfw-date-clear-"] {
    display: none !important;
}
/* Cart & Checkout — Align all order summary values */
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
    text-align: right;
}

/* Cart & Checkout — Order Summary font size */
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.cart-subtotal > th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.cart-subtotal > td .woocommerce-Price-amount,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.cart-discount > th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.cart-discount > td,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals > th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.woocommerce-shipping-totals > td,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.tax-rate > th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr.tax-rate > td {
    font-size: 14px;
}

/* Order Summary — Footer Heading Color */
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot tr:not(.order-total) > th {
    color: var(--pls-text-color);
		font-weight: 500;
}

/* Order Summary — Total Color */
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total td strong,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total .amount,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr.order-total .amount .woocommerce-Price-currencySymbol {
    color: var(--pls-link-hover-color) !important;
}

table.shop_table td .amount,
.woocommerce-cart .cart-totals .shipping-calculator-button {
    color: var(--pls-heading-color);
    font-weight: 400;
}

.woocommerce ul#shipping_method .amount, .woocommerce-checkout .woocommerce-shipping-methods label strong, table.shop_table .cart-subtotal, table.shop_table .cart-subtotal .amount {
    font-weight: 600;
}

table.shop_table tr.order-total,
table.shop_table tr.order-total .amount {
    font-size: 18px;
}

.woocommerce-checkout .woocommerce-shipping-methods .pickup-location-field small,
.woocommerce-checkout .woocommerce-shipping-methods .pickup-location-field p small {
    color: #8A7D72;
    font-size: 11px;
}

.ioo-minicart-checkout-note {
    font-size: 11px;
    padding: 1rem 1.5rem 0;
		text-align: center;
		color: #c0a898
}

.woocommerce-mini-cart__buttons {
    padding-bottom: 0;
}

.woocommerce form .form-row.woocommerce-invalid label {
    color: #f277b9;
}

.woocommerce form .form-row.woocommerce-invalid .select2-container,
.woocommerce form .form-row.woocommerce-invalid input.input-text,
.woocommerce form .form-row.woocommerce-invalid select {
    border-color: #f277b9;
}

.woocommerce form .form-row .required {
    color: #f277b9;
}

/* ========================================
   CHECKOUT — ORDER SUMMARY — REMOVE BORDERS
======================================== */

.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td,
.woocommerce-checkout .woocommerce-checkout-review-order-table tr {
    border: none !important;
    box-shadow: none !important;
}

/* Product Variation */

.woocommerce .mini-cart-item-content dl.variation dt,
.woocommerce .mini-cart-item-content dl.variation dd,
.woocommerce td.product-name dl.variation dt,
.woocommerce td.product-name dl.variation dd {
    color: #5A4E45;
		font-size: 12px;
}

/* Checkout — Product name & cost & quantity */
.woocommerce-checkout .pls-product-title, .woocommerce-checkout .shop_table .product-total .amount {
    font-size: 14px;
}

.woocommerce-checkout-review-order .pls-product-thumb img.product-img {
    border: 2px solid #fff;
    border-radius: 10px;
    box-shadow:
        0 2px 5px rgba(0, 0, 0, 0.1),
        0 6px 14px rgba(0, 0, 0, 0.1);
    display: block;
}

.woocommerce-checkout .shop_table .quantity .qty {
    width: 50px !important;
    font-size: 12px !important;
}

@media (max-width: 767px) {
    .woocommerce-checkout .shop_table .quantity .qty {
        font-size: 10px !important;
    }
}

/* ========================================
   IN OUR OVEN — MODERN CHECKOUT FORM
======================================== */

#customer_details.col2-set {
    margin-left: 0;
    margin-right: 0;
}

/* Section headings */
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading, #order_review > .shop_table::before, #payment::before {
    font-size: 24px;
    font-weight: 600;
}

.woocommerce-billing-fields__field-wrapper {
    padding-top: 20px !important;
}

/* Checkout input borders */
.woocommerce-checkout input.input-text,
.woocommerce-checkout input[type="text"],
.woocommerce-checkout input[type="tel"],
.woocommerce-checkout input[type="email"],
.woocommerce-checkout input[type="number"],
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-checkout .select2-selection--single {
    border: 1.5px solid #e8dfd4 !important;
}

/* Exclude quantity inputs */
.woocommerce-checkout input.qty {
    border: none !important;
}

/* Labels */
.woocommerce-checkout .form-row label {
    font-size: 13px;
    font-weight: 500;
    color: #1f1f1f;
}

/* Optional text */
.woocommerce-checkout .form-row label .optional {
    font-size: 12px;
    font-weight: 400;
    color: #888;
}

/* Inputs, selects & textarea */
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row textarea {
    min-height: 48px;
    background: #fff;
    font-size: 14px;
    transition: border-color .2s ease, box-shadow .2s ease;
}

/* Placeholder */
.woocommerce-checkout .form-row input::placeholder,
.woocommerce-checkout .form-row textarea::placeholder {
    color: #aaa;
    opacity: 1;
}

/* Focus */
.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .form-row textarea:focus {
    border-color: var(--pls-secondary-color);
    outline: none;
}

/* ========================================
   SELECT2 — PARISH
======================================== */

.woocommerce-checkout .select2-container {
    width: 100% !important;
}

.woocommerce-checkout .select2-container .select2-selection__rendered {
    font-size: 14px;
    color: var(--pls-input-color);
}

/* Select2 focus */
.woocommerce-checkout .select2-container--focus .select2-selection--single,
.woocommerce-checkout .select2-container--open .select2-selection--single {
    border-color: var(--pls-secondary-color);
}

/* ========================================
   VALIDATED FIELDS
======================================== */

.woocommerce form .form-row.woocommerce-validated .select2-container,
.woocommerce form .form-row.woocommerce-validated input.input-text,
.woocommerce form .form-row.woocommerce-validated select {
    border-color: var(--pls-border-color);
}

/* Focus overrides validated state */
.woocommerce-checkout .form-row.woocommerce-validated input.input-text:focus,
.woocommerce-checkout .form-row.woocommerce-validated select:focus,
.woocommerce-checkout .form-row.woocommerce-validated .select2-container--focus .select2-selection--single,
.woocommerce-checkout .form-row.woocommerce-validated .select2-container--open .select2-selection--single {
    border-color: var(--pls-secondary-color) !important;
}

/* ========================================
   ORDER NOTES
======================================== */

.woocommerce-checkout #order_comments {
    min-height: 100px;
}

/* ========================================
   CHECKOUT — SAVE PAYMENT METHOD CHECKBOX
======================================== */

/* Checkbox */
.woocommerce-checkout #wc-woocommerce_payments-new-payment-method {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    margin: 0 8px 0 0 !important;
    padding: 0 !important;
    border: 1.5px solid #e8dfd4 !important;
    border-radius: 4px !important;
    background: #fff !important;
    vertical-align: middle !important;
    position: relative !important;
    bottom: auto !important;
    cursor: pointer;
    transition: all .2s ease;
}

/* Hover */
.woocommerce-checkout #wc-woocommerce_payments-new-payment-method:hover {
    border-color: var(--pls-secondary-color) !important;
}

/* Keyboard focus */
.woocommerce-checkout #wc-woocommerce_payments-new-payment-method:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(242, 119, 185, .2) !important;
}

/* Checked */
.woocommerce-checkout #wc-woocommerce_payments-new-payment-method:checked {
    background-color: #f277b9 !important;
		border-color: var(--pls-secondary-color) !important;
}

/* ========================================
   CHECKOUT — TERMS & CONDITIONS CHECKBOX
======================================== */

/* Checkbox */
.woocommerce-checkout #terms {
    appearance: none;
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    min-width: 18px;
    border-radius: 4px;
		border: 1.5px solid #e8dfd4 !important;
    background: #fff;
    vertical-align: middle;
    cursor: pointer;
    position: relative;
    transition: all .2s ease;
}

/* Hover */
.woocommerce-checkout #terms:hover {
    border-color: var(--pls-secondary-color);
}

/* Keyboard focus */
.woocommerce-checkout #terms:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(242, 119, 185, .2);
}

/* Checked */
.woocommerce-checkout #terms:checked {
		border-color: var(--pls-secondary-color) !important;
}

/* Invalid / unchecked */
.woocommerce-checkout .woocommerce-invalid #terms {
    outline: 2px solid #f277b9;
}

.woocommerce-checkout .ppc-button-wrapper {
    margin-top: 16px;
}

/* ========================================
   CHECKOUT — PAYPAL BUTTON DISABLED STATE
======================================== */

.woocommerce-checkout .ppc-button-wrapper.ioo-paypal-disabled {
    opacity: 0.4;
    pointer-events: none;
    cursor: not-allowed;
}

/* ========================================
   MOBILE
======================================== */

@media (max-width: 767px) {

    .woocommerce-checkout .woocommerce-billing-fields h3,
    .woocommerce-checkout .woocommerce-additional-fields h3 {
        font-size: 22px;
    }

    .woocommerce-checkout .form-row {
        margin-bottom: 1rem;
    }

    .woocommerce-checkout .form-row input.input-text,
    .woocommerce-checkout .form-row select,
    .woocommerce-checkout .form-row textarea,
    .woocommerce-checkout .select2-container .select2-selection--single {
        min-height: 46px;
    }
}

/* In Our Oven — Tighten checkout order summary footer */
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot th,
.woocommerce-checkout .woocommerce-checkout-review-order-table tfoot td {
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
}

/* ========================================
   PICKUP — SELECTION TEXT
   LOCATION + TIME + DATE
======================================== */

#pickup-location-field-for-0 .select2-selection__rendered,
#pickup-appointment-field-for-0 .select2-selection__rendered,
#pickup-appointment-field-for-0 .dslpfw-pickup-location-appointment-date {
    font-size: 14px !important;
}

@media (max-width: 767px) {
    #pickup-location-field-for-0 .select2-selection__rendered,
    #pickup-appointment-field-for-0 .select2-selection__rendered,
    #pickup-appointment-field-for-0 .dslpfw-pickup-location-appointment-date {
        font-size: 13px !important;
    }
}

/* ========================================
   SELECT2 — PICKUP LOCATION + PICKUP TIME
   FIELD STYLING
======================================== */

#pickup-location-field-for-0 .select2-selection--single,
#pickup-appointment-field-for-0 .select2-selection--single {
    background-color: var(--pls-input-background) !important;
    color: var(--pls-input-color) !important;
    border-radius: var(--pls-border-radius) !important;
    height: 48px !important;
    box-sizing: border-box !important;
}


/* ========================================
   SELECT2 — CURSOR
======================================== */

#pickup-location-field-for-0 .select2-selection,
#pickup-appointment-field-for-0 .select2-selection {
    cursor: pointer !important;
}


/* ========================================
   SELECT2 — ALIGNMENT
======================================== */

.woocommerce-checkout
.woocommerce-shipping-methods
.select2-selection__rendered {
    text-align: left;
}


/* ========================================
   SELECT2 — OPEN DROPDOWNS
   PICKUP LOCATION + PICKUP TIME
======================================== */

/*
 * Select2 moves the dropdown outside of the
 * original pickup field, so we target the
 * generated results IDs by their stable prefix.
 */

/* Pickup location dropdown */
.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
),

/* Pickup time dropdown */
.select2-dropdown:has(
    ul[id^="select2-dslpfw-pickup-appointment-offset-0"][id$="-results"]
) {
    border: 1.5px solid #e8dfd4 !important;
    border-radius: var(--pls-border-radius) !important;
    background: #fff !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
}


/* ========================================
   SELECT2 — DROPDOWN RESULTS
======================================== */

/* Pickup location + pickup time */
.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
) .select2-results__options,

.select2-dropdown:has(
    ul[id^="select2-dslpfw-pickup-appointment-offset-0"][id$="-results"]
) .select2-results__options {
    padding: 6px !important;
    margin: 0 !important;
    background: #fff !important;
}


/* ========================================
   SELECT2 — DROPDOWN OPTIONS
   PICKUP LOCATION + PICKUP TIME
======================================== */

.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
) .select2-results__option,

.select2-dropdown:has(
    ul[id^="select2-dslpfw-pickup-appointment-offset-0"][id$="-results"]
) .select2-results__option {
    padding: 10px 12px !important;
    margin: 2px 0 !important;

    border-radius: var(--pls-border-radius) !important;

    color: var(--pls-text-color) !important;
    background: transparent !important;

    font-size: 14px !important;
    line-height: 1.4 !important;

    transition:
        background-color 0.15s ease,
        color 0.15s ease !important;
}

@media (max-width: 767px) {
    .select2-dropdown:has(ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]) .select2-results__option,
    .select2-dropdown:has(ul[id^="select2-dslpfw-pickup-appointment-offset-0"][id$="-results"]) .select2-results__option {
        font-size: 13px !important;
    }
}


/* ========================================
   SELECT2 — SEARCH FIELD
   PICKUP LOCATION + PICKUP TIME
======================================== */

.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
) .select2-search__field,

.select2-dropdown:has(
    ul[id^="select2-dslpfw-pickup-appointment-offset-0"][id$="-results"]
) .select2-search__field {
    font-size: 14px !important;
    border-radius: var(--pls-border-radius) !important;
}


/* ========================================
   SELECT2 — SELECTED OPTION
======================================== */

.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
) .select2-results__option[aria-selected="true"],

.select2-dropdown:has(
    ul[id^="select2-dslpfw-pickup-appointment-offset-0"][id$="-results"]
) .select2-results__option[aria-selected="true"] {
    background: #fce0ef !important;
    color: var(--pls-text-color) !important;
}


/* ========================================
   SELECT2 — HOVER / KEYBOARD HIGHLIGHT
======================================== */

.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
) .select2-results__option--highlighted,

.select2-dropdown:has(
    ul[id^="select2-dslpfw-pickup-appointment-offset-0"][id$="-results"]
) .select2-results__option--highlighted {
    background: #f9a4d2 !important;
    color: #fff !important;
}


/* ========================================
   SELECT2 — LOCATION ADDRESS
======================================== */

.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
) .select2-results__option small {
    color: var(--pls-text-color) !important;
    opacity: 0.65 !important;
    font-size: 12px !important;
}

.select2-dropdown:has(ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]) 
.select2-results__option small {
    color: var(--pls-text-color) !important;
    opacity: 0.65 !important;
    font-size: 10px !important;
}


/* Highlighted location address */
.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
) .select2-results__option--highlighted small {
    color: #fff !important;
    opacity: 0.9 !important;
}


/* ========================================
   SELECT2 — SELECTED + HIGHLIGHTED
======================================== */

.select2-dropdown:has(
    ul[id^="select2-_shipping_method_pickup_location_id0-"][id$="-results"]
) .select2-results__option--highlighted[aria-selected="true"],

.select2-dropdown:has(
    ul[id^="select2-dslpfw-pickup-appointment-offset-0"][id$="-results"]
) .select2-results__option--highlighted[aria-selected="true"] {
    background: #f9a4d2 !important;
    color: #fff !important;
}


/* ========================================
   DOTSTORE PICKUP CALENDAR
======================================== */

#ui-datepicker-div.dslpfw-appointment-datepicker {
    padding: 16px;
    border: var(--pls-border-top) !important;
    border-radius: var(--pls-border-radius) !important;
    background: #fff;
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}


/* Header */

#ui-datepicker-div .ui-datepicker-header {
    border: none;
    background: transparent;
}

#ui-datepicker-div .ui-datepicker-month,
#ui-datepicker-div .ui-datepicker-year {
    border: none;
    font-family: "Montserrat", sans-serif;
    font-size: 15px;
    font-weight: 600;
}


/* ========================================
   CALENDAR NAVIGATION
======================================== */

/* Move pickup calendar further left */
#ui-datepicker-div {
    transform: translateX(-30px) !important;
}

#ui-datepicker-div .ui-datepicker-prev,
#ui-datepicker-div .ui-datepicker-next {
    top: 7px;
    border-radius: 50%;
}


/* Keep DotStore / jQuery UI's original icons */

#ui-datepicker-div .ui-datepicker-prev span,
#ui-datepicker-div .ui-datepicker-next span {
    display: block;
    position: relative;
    left: auto;
    top: auto;
    margin: 0;
    transform: none;
}


/* Hover */

#ui-datepicker-div .ui-datepicker-prev:hover,
#ui-datepicker-div .ui-datepicker-next:hover {
    opacity: 0.8;
}


/* ========================================
   DISABLED PREVIOUS BUTTON
======================================== */

#ui-datepicker-div .ui-datepicker-prev.ui-state-disabled {
    background: transparent;
    opacity: 0.3;
    cursor: default;
}

#ui-datepicker-div .ui-datepicker-prev.ui-state-disabled:hover {
    background: transparent;
}


/* ========================================
   CALENDAR
======================================== */

#ui-datepicker-div .ui-datepicker-calendar {
    width: 100%;
    border-collapse: separate;
    border-spacing: 3px;
}

#ui-datepicker-div .ui-datepicker-calendar th {
    padding: 6px 0;
    border: none;
    font-size: 11px;
    font-weight: 600;
    color: #888;
}

#ui-datepicker-div .ui-datepicker-calendar td {
    padding: 0;
    border: none;
    text-align: center;
}


/* Date buttons */

#ui-datepicker-div .ui-datepicker-calendar td a,
#ui-datepicker-div .ui-datepicker-calendar td span {
    display: flex;
    align-items: center;
    justify-content: center;

    width: 36px;
    height: 36px;

    border: none;
    border-radius: 50%;

    background: transparent;

    font-size: 13px;
    text-decoration: none;
}


/* Available date hover */

#ui-datepicker-div .ui-datepicker-calendar
.dslpfw_available a:hover {
    background: #f9a4d2;
}


/* Selected date */

#ui-datepicker-div .ui-datepicker-calendar
.ui-state-active {
    background: #f9a4d2;
    color: #fff;
    font-weight: 600;
}


/* Today's date */

#ui-datepicker-div .ui-datepicker-today a {
    font-weight: 600;
}


/* Disabled dates */

#ui-datepicker-div .ui-datepicker-unselectable span {
    color: #ccc;
}


/* ========================================
   PICKUP DATE INPUT
======================================== */

.pickup-location-calendar
.dslpfw-pickup-location-appointment-date {
    cursor: pointer !important;
    border-radius: var(--pls-border-radius) !important;
}


/* ========================================
   CALENDAR TRIGGER
======================================== */

.pickup-location-calendar
.dslpfw-pickup-location-appointment-date
+ .ui-datepicker-trigger {
    cursor: pointer;
}


/* ========================================
   CALENDAR MONTH + YEAR
======================================== */

#ui-datepicker-div .ui-datepicker-month,
#ui-datepicker-div .ui-datepicker-year {
    cursor: pointer;
}


/* ========================================
   CALENDAR ICON
======================================== */

/* Hide plugin visual trigger */

.pickup-location-calendar .ui-datepicker-trigger {
    position: absolute !important;
    top: 50% !important;
    right: 12px !important;

    transform: translateY(-50%) !important;

    width: 24px !important;
    height: 24px !important;

    padding: 0 !important;
    margin: 0 !important;

    border: none !important;

    background: none !important;
    background-image: none !important;

    font-size: 0 !important;
    line-height: 1 !important;

    cursor: pointer !important;
    pointer-events: none !important;
}


/* CSS-only calendar icon */

.pickup-location-calendar
.form-row:has(#dslpfw-datepicker-0)::after {
    content: "\e96a" !important;

    color: var(--pls-input-color) !important;
    font-family: "presslayouts-font" !important;

    font-size: 18px !important;
    font-weight: normal !important;

    position: absolute !important;
    top: 50% !important;
    right: 15px !important;

    transform: translateY(-50%) !important;

    width: auto !important;
    height: auto !important;

    background: none !important;
    background-image: none !important;

    pointer-events: none !important;
    z-index: 2 !important;
}


/* Prevent plugin from adding its own icon */

.pickup-location-calendar
.ui-datepicker-trigger::before,

.pickup-location-calendar
.ui-datepicker-trigger::after {
    content: none !important;
    background-image: none !important;
}


/* ========================================
   PAYMENT DIMENSIONS
======================================== */

#payment.woocommerce-checkout-payment {
    position: static !important;
    box-sizing: border-box !important;
}

/* SHOP PAGE */

.shop-page-heading {
		padding: 0px 20px 20px 20px;
}

.shop-page-heading h2 {
    text-align: center;
    font-family: "Helvetica", Sans-serif;
    font-weight: 600;
    text-transform: lowercase !important;
    letter-spacing: -2.1px;
    color: var(--e-global-color-text);
}

body.woocommerce-shop #sib_signup_form_1 {
    margin-top: 40px;
}

.pls-products-view {
    display: none !important;
}

body.woocommerce-shop .shop-page-heading, body.woocommerce-shop #secondary .sidebar-inner,
body.woocommerce-shop .products.products-wrap,
body.woocommerce-shop #sib_signup_form_1 {
    animation: fadeInUp 1.25s ease both;
}

.pls-quick-shop-wrapper {
    top: 100% !important;
    bottom: auto !important;
    left: 10px !important;
    right: 10px !important;
    padding: 15px !important;
		transform: translateY(-50%) !important;
}

.pls-quick-shop-close {
    left: auto !important;
    right: 10px !important;
    top: 2px !important;
    z-index: 9999 !important;
    pointer-events: auto !important;
}

.pls-quick-shop-close {
    font-size: 0 !important;
		background-color: transparent;
}

.pls-quick-shop-close:before {
    content: "\e9c3";
    font-family: 'presslayouts-font' !important;
    font-size: 10px !important;
    color: var(--pls-input-color) !important;
}

.pls-quick-shop-close:hover:before {
    color: var(--pls-text-color) !important;
}

.pls-quick-shop-form {
    margin-top: 20px !important;
}

.pls-quick-shop-wrapper .pls-swatches .swatch {
    padding: 5px 15px !important;
}

.pls-quick-shop-wrapper .pls-swatches .swatch.swatch-label.swatch-square span {
    height: 20px;
    padding: 0px;
    font-size: 9px;
}

.pls-quick-shop-wrapper .woocommerce-variation-price .woocommerce-Price-amount {
    font-size: 14px !important;
    font-weight: 600 !important;
}

.pls-quick-shop-wrapper .button {
    margin: 0 auto !important;
    display: block !important;
    font-size: 10px !important;
    height: auto !important;
}

@media (max-width: 767px) {
	
	.pls-quick-shop-close {
			display: none;
	}
	
    .pls-quick-shop-wrapper .pls-swatches .swatch {
        padding: 1px 7px !important;
    }

    .pls-quick-shop-wrapper .pls-swatches .swatch.swatch-label.swatch-square span {
        height: 20px !important;
        padding: 0 !important;
    }

    .pls-quick-shop-wrapper {
        padding: 10px 5px !important
    }

    .pls-quick-shop-form {
        margin-top: 0 !important;
    }
}

.products .pls-product-image {
    overflow: visible !important;
}

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

/* Hide Uncategorized from Products Type widget */
#woocommerce_product_categories-2 .cat-item-41 {
    display: none !important;
}


/* Hide active filters / product count */
body.woocommerce-shop .pls-products-active-filters {
    display: none !important;
}

.pls-products-header select
{
		color: var(--pls-input-color)
}

/* =========================================
   SHOP FILTER PARENT CONTAINER
   ========================================= */

.shop-filter-container {
    width: 20%;
    max-width: 20%;
    min-width: 0;
    flex: 0 0 20%;
    box-sizing: border-box;
}

.shop-filter-container .elementor-widget-html,
.shop-filter-container .elementor-widget-container,
.shop-filter-container .shop-filters {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

.shop-filter-group-toggle {
    background: none;
    border: none;
    box-shadow: none;
    border-radius: 0;
    padding: 0;
    margin: 0;
    color: inherit;
    font: inherit;
    text-align: left;
    cursor: pointer;
}

.shop-filter-group-toggle:hover,
.shop-filter-group-toggle:focus,
.shop-filter-group-toggle:active {
    background: none;
    border: none;
    box-shadow: none;
    color: inherit;
}

.shop-filter-group-toggle > span:first-child {
    font-family: "DM Serif Display";
    font-size: 20px;
    font-weight: 600;
    text-transform: none;
		letter-spacing: normal;
}

.shop-filter-label {
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 14px;
    font-weight: 500;
    color: #1c1207;
}

/* =========================================
   SHOP FILTERS
   ========================================= */

.shop-filters {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-bottom: 40px;
    box-sizing: border-box;
}

.shop-filter-title {
    text-align: center;
		line-height: 1;
}

.shop-filter-intro {
    text-align: center;
    font-size: 14px;
}

.shop-filter-search {
    position: relative;
    margin-bottom: 24px;
}

.shop-filter-search::after {
    content: "\ea88";
    font-family: "presslayouts-font";
    position: absolute;
    color: #8a7060;
    right: 15px;
    bottom: 0;
    height: 42px;
    display: flex;
    align-items: center;
    pointer-events: none;
}

.shop-filter-search > label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

.shop-search-input {
    width: 100%;
    height: 48px;
    padding: 0 16px;
    border: 1px solid #e8ddd0 !important;
    border-radius: 8px;
    background: transparent !important;
    color: #1c1207;
    font-size: 14px;
}

.shop-search-input:focus {
    border-color: #f9a4d2 !important;
    outline: none;
}

.shop-search-input::placeholder {
    font-size: 14px;
    font-weight: 400;
    color: #8a7060;
    opacity: 0.5;
}

/* =========================================
   SELECTED FILTERS
   ========================================= */

.shop-filter-selected {
    display: none;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-bottom: 24px;
    padding: 16px;
    border: 1px solid #e8ddd0;
    border-radius: 12px;
    background: #fff;
    box-sizing: border-box;
    overflow: hidden;
}

.shop-filters.has-selected-filters .shop-filter-selected {
    display: block;
}

.shop-filter-selected-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
    min-width: 0;
}

.shop-filter-selected-title {
    font-family: "DM Serif Display";
    font-size: 16px;
    font-weight: 600;
}

.shop-filter-reset {
    padding: 0;
    border: 0;
    background: transparent;
    color: #8a7060;
    font-size: 11px;
    letter-spacing: 1px;
    cursor: pointer;
}

.shop-filter-reset:hover {
    color: #f277b9;
    background-color: transparent;
}

.shop-filter-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    min-width: 0;
    max-width: 100%;
    overflow: hidden;
}

.shop-filter-chip {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    letter-spacing: 1px;
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 10px !important;
    cursor: pointer;
    max-width: 100%;
    min-width: 0;
    border: 1px solid #f9a4d2;
    background: transparent;
    color: #1c1207;
    flex: 0 1 auto;
}

.shop-filter-chip-remove {
    font-size: 16px;
    line-height: 1;
}

/* =========================================
   FILTER GROUPS
   ========================================= */

.shop-filter-group {
    border-top: 1px solid #e8ddd0;
}

.shop-filter-group:last-child {
    border-bottom: 1px solid #e8ddd0;
}

.shop-filter-group-toggle {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 18px 0;
    border: 0;
    background: none;
    color: #1c1207;
    font-size: 15px;
    font-weight: 600;
    text-align: left;
    cursor: pointer;
}

.shop-filter-group-icon {
    font-size: 20px;
    font-weight: 400;
}

.shop-filter-options {
    padding: 0 0 18px;
}

.shop-filter-option {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    padding: 6px 0;
    color: #1c1207;
    font-family: "DM Sans", sans-serif;
    font-size: 14px;
    cursor: pointer;
}

.shop-filter-checkbox {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.shop-filter-checkbox-box {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    border: 1px solid #d8cabe;
    border-radius: 3px;
    background: #fff;
}

.shop-filter-checkbox:checked + .shop-filter-checkbox-box {
    border-color: #f9a4d2;
    background: #f9a4d2;
}

.shop-filter-checkbox:checked + .shop-filter-checkbox-box::after {
    font-family: "presslayouts-font";
    content: "\ea02";
    color: #fff;
    font-size: 7px;
}

.shop-filter-label {
    flex: 1;
}

.shop-filter-count {
    color: #8a7060;
    font-size: 12px;
}

/* =========================================
   ATTRIBUTE FILTERS
   ========================================= */

.shop-filter-attribute-group {
    margin-bottom: 18px;
}

.shop-filter-attribute-group:last-child {
    margin-bottom: 0;
}

.shop-filter-attribute-title {
    margin-bottom: 6px;
    color: #1c1207;
    font-family: "DM Serif Display";
    font-size: 16px;
    font-weight: 600;
}

/* =========================================
   PRICE FILTER
   ========================================= */

.shop-filter-price-options {
    padding-bottom: 24px;
}

.shop-price-range {
    width: 100%;
}

.shop-price-values {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 14px;
    color: #1c1207;
    font-family: "DM Sans", sans-serif;
    font-size: 13px;
}

.shop-price-slider {
    position: relative;
    width: 100%;
    height: 20px;
}

.shop-price-input {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 20px !important;
    min-height: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: normal !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    pointer-events: none !important;
}

.shop-price-track {
    position: absolute;
    top: 9px;
    left: 0;
    width: 100%;
    height: 2px;
    background: #e8ddd0;
    z-index: 1;
    pointer-events: none;
}

.shop-price-range-fill {
    display: none;
}

.shop-price-input {
    z-index: 2 !important;
}

.shop-price-input::-webkit-slider-runnable-track {
    width: 100%;
    height: 2px !important;
    background: transparent !important;
    border: 0 !important;
}

.shop-price-input::-moz-range-track {
    width: 100%;
    height: 2px !important;
    background: transparent !important;
    border: 0 !important;
}

.shop-price-input::-webkit-slider-thumb {
    width: 14px;
    height: 14px;
    margin-top: -6px;
    border: 1px solid #f9a4d2;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    pointer-events: auto;
    appearance: none;
    -webkit-appearance: none;
}

.shop-price-input::-moz-range-thumb {
    width: 14px;
    height: 14px;
    border: 1px solid #f9a4d2;
    border-radius: 50%;
    background: #fff;
    cursor: pointer;
    pointer-events: auto;
}

/* =========================================
   HIDDEN PRODUCTS
   ========================================= */

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

/* =========================================
   SHOP FILTER TRANSITION
   ========================================= */

body.woocommerce-shop .products.products-wrap {
    transition: opacity 0.2s ease;
}

body.woocommerce-shop .products.products-wrap.shop-grid-filtering {
    opacity: 0.55;
}

/* =========================================
   EMPTY STATE
   ========================================= */

.products.products-wrap .shop-filter-empty {
    display: none;
    width: calc(100% - 30px);
    max-width: none;
    flex: 0 0 calc(100% - 30px);
    min-height: 250px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 60px 20px;
    margin-left: 15px;
    margin-right: 15px;
    border: 1px solid #e8ddd0;
    border-radius: 16px;
    background: #fff;
    text-align: center;
    box-sizing: border-box;
}

.products.products-wrap .shop-filter-empty strong {
    margin-bottom: 8px;
    color: #1c1207;
    font-family: "DM Serif Display";
    font-size: 30px;
    font-weight: 700;
}

.products.products-wrap .shop-filter-empty span {
    color: #8a7060;
    font-size: 14px;
}

/* ========================================
   CART — MAIN 3:1 LAYOUT
   ======================================== */

/* EMPTY STATE */

.woocommerce .cart-empty.woocommerce-info::before {
    content: "\e93a" !important;
    font-family: 'presslayouts-font' !important;
    display: block !important;
    position: static !important;
    float: none !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    transform: none !important;
    text-align: center !important;
    font-size: 100px !important;
    color: var(--pls-text-color);
    line-height: 1 !important;
}

.woocommerce .cart-empty.woocommerce-info {
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    color: #3a3330;
    text-align: center;
}

.woocommerce .cart-empty.woocommerce-info::before {
    display: none;
}

.woocommerce .wc-empty-cart-message {
    margin: 0;
}

.woocommerce .return-to-shop {
    margin: 20px 0 0;
    text-align: center;
}


/* ========================================
   CART
   ======================================== */

.woocommerce-cart .cart-empty.woocommerce-info {
	border: none !important;
}

/* CART — SHIPPING ONLY MESSAGE: Remove plugin-added line break */

.in-our-oven-cart-meta > br:first-child {
    display: none !important;
}


/* CART & MINI CART — Hide Shipping & Taxes */

/* Main Cart */
.cart_totals tr.woocommerce-shipping-totals,
.cart_totals tr.tax-rate {
    display: none !important;
}

/* Mini Cart */
.pls-minicart-cart-totals tr:has(#shipping_method),
.pls-minicart-cart-totals tr.tax-rate {
    display: none !important;
}

/* ========================================
   CART — LAYOUT
   ======================================== */

/* Keep all inner sections transparent */

.in-our-oven-cart .custom-cart-main,
.in-our-oven-cart .woocommerce-cart-form,
.in-our-oven-cart .in-our-oven-cart-items,
.in-our-oven-cart .custom-cart-sidebar,
.in-our-oven-cart .custom-cart-summary,
.in-our-oven-cart .cart-collaterals,
.in-our-oven-cart .cart_totals {
    background: transparent !important;
}

/* CART — ORDER SUMMARY CARD */

.in-our-oven-cart .custom-cart-summary, #customer_details, .woocommerce-checkout-review-order-table, #payment.woocommerce-checkout-payment {
    background: #fff !important;
    padding: 25px !important;
    border: 1px solid var(--pls-border-color) !important;
    border-radius: 20px !important;
    box-shadow: 0 3px 12px rgba(58, 51, 48, 0.06) !important;
    box-sizing: border-box !important;
}

/* Add space between Order Summary and Payment */
#order_review .woocommerce-checkout-review-order-table {
    margin-bottom: 30px !important;
}

/* Hide the original Order Summary heading */
#order_review_heading {
    display: none !important;
}

/* Add label above the order summary */

#order_review > .shop_table::before {
    content: "Order Summary";
}

/* Add label above Payment */

#payment::before {
    content: "Payment";
}

#order_review > .shop_table::before, #payment::before {
		display: block;
    margin-bottom: 16px;
		white-space: nowrap;
}

.woocommerce-cart-wrapper {
    width: 100%;
}

.in-our-oven-cart {
    width: 100%;
}

.in-our-oven-cart .custom-cart-layout {
    display: grid;
    grid-template-columns: 6.5fr 3.5fr;
    gap: 50px;
    align-items: start;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
}

.in-our-oven-cart .cart-items-title,
.in-our-oven-cart .cart-coupon-title,
.in-our-oven-cart .cart_totals > h2,
.cart-summary-title {
    margin: 0 0 20px;
    font-family: inherit;
    font-size: 20px;
    font-weight: 600;
    line-height: 1.3;
}

.custom-cart-summary .cart_totals {
    padding: 0;
}

.in-our-oven-cart .in-our-oven-cart-remove .remove.picon-trash:before {
    content: "\e9c3";
    font-size: 10px;
		color: #8A7D72;
		transition: color 0.2s ease;
}

.in-our-oven-cart .in-our-oven-cart-remove .remove.picon-trash:hover::before {
    color: var(--pls-text-color);
}

.in-our-oven-cart .in-our-oven-cart-remove a.remove.picon-trash:before {
    border: none !important;
    border-radius: 0 !important;
    width: auto !important;
    height: auto !important;
    background: none !important;
}

    .in-our-oven-cart .in-our-oven-cart-price, .in-our-oven-cart .in-our-oven-cart-product-name, .in-our-oven-cart .in-our-oven-cart-remove a {
        font-size: 14px;
}


/* ========================================
   CART — LOADING
   ======================================== */

/* Hide cart loading overlay while quantity updates */

.in-our-oven-cart .blockUI,
.in-our-oven-cart .blockOverlay,
.in-our-oven-cart .blockMsg {
    display: none !important;
}

/* Visually fading during the update */

.in-our-oven-cart .woocommerce-cart-form.processing,
.in-our-oven-cart .cart_totals.processing {
    opacity: 0.5 !important;
}


/* ========================================
   CART — PROMO CODE
   ======================================== */

.in-our-oven-cart .in-our-oven-coupon-form {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

.in-our-oven-cart .in-our-oven-coupon-form .input-text {
    width: 100%;
    height: 48px;
    padding: 0 85px 0 18px;
    border: 1px solid var(--pls-border-color);
    border-radius: 999px;
    background: #ffffff;
    box-sizing: border-box;
}

.in-our-oven-cart .in-our-oven-coupon-form .button {
    position: absolute;
    right: 5px;
    top: 5px;
    height: 38px;
    padding: 0 15px;
    border: none;
    border-radius: 999px;
    margin: 0;
    font-size: 10px;
    min-width: auto;
}

.in-our-oven-cart .cart-collaterals .cart_totals table,
.in-our-oven-cart .cart-collaterals .cart_totals table th,
.in-our-oven-cart .cart-collaterals .cart_totals table td,
.in-our-oven-cart .cart-collaterals .cart_totals table tr {
    border: none !important;
}

.in-our-oven-cart .cart-collaterals .cart_totals table th,
.in-our-oven-cart .cart-collaterals .cart_totals table td {
    padding: 5px !important;
}

.in-our-oven-cart .cart-collaterals {
    margin-top: 10px;
}


/* ========================================
   REMOVE COUPON — MAIN CART + MINI CART
   ======================================== */

.woocommerce-remove-coupon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-size: 0;
}

.woocommerce-remove-coupon::before {
    font-family: 'presslayouts-font';
    content: "\e9c3";
    font-size: 10px;
    line-height: 1;
    color: var(--pls-primary-color);
    margin-left: 5px;
}

.in-our-oven-cart .woocommerce-remove-coupon:hover::before {
    color: var(--pls-secondary-inverse-color);
}


/* ========================================
   CART SUMMARY — RESPONSIVE TABLE LABELS
   ======================================== */

.in-our-oven-cart .cart-collaterals .shop_table_responsive th {
    display: none;
}

.in-our-oven-cart .cart-collaterals .shop_table_responsive td::before {
    content: attr(data-title);
    color: var(--pls-link-hover-color);
    font-size: 14px;
    font-weight: 500;
    float: left;
}

/* Keep the coupon row label consistent */

.in-our-oven-cart .cart-collaterals .shop_table_responsive .cart-discount td::before {
    content: attr(data-title);
}


/* ========================================
   CART SUMMARY — SUBTOTAL & COUPON VALUES
   ======================================== */

#add_payment_method .wc-proceed-to-checkout a.checkout-button,
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .place-order .button {
    margin: 15px 0;
}

.in-our-oven-cart .cart_totals .cart-subtotal td,
.in-our-oven-cart .cart_totals .cart-subtotal td .woocommerce-Price-amount,
.in-our-oven-cart .cart_totals .cart-subtotal td .woocommerce-Price-amount bdi,
.in-our-oven-cart .cart_totals .cart-subtotal td .woocommerce-Price-currencySymbol,

.in-our-oven-cart .cart_totals .cart-discount td,
.in-our-oven-cart .cart_totals .cart-discount td .woocommerce-Price-amount,
.in-our-oven-cart .cart_totals .cart-discount td .woocommerce-Price-amount bdi,
.in-our-oven-cart .cart_totals .cart-discount td .woocommerce-Price-currencySymbol,

.pls-minicart-cart-totals .cart-subtotal,
.pls-minicart-cart-totals .cart-subtotal td,
.pls-minicart-cart-totals .cart-subtotal td .woocommerce-Price-amount,
.pls-minicart-cart-totals .cart-subtotal td .woocommerce-Price-amount bdi,
.pls-minicart-cart-totals .cart-subtotal td .woocommerce-Price-currencySymbol,

.pls-minicart-cart-totals .cart-discount,
.pls-minicart-cart-totals .cart-discount td,
.pls-minicart-cart-totals .cart-discount td .woocommerce-Price-amount,
.pls-minicart-cart-totals .cart-discount td .woocommerce-Price-amount bdi,
.pls-minicart-cart-totals .cart-discount td .woocommerce-Price-currencySymbol {
    color: #3a3330 !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

.in-our-oven-cart .in-our-oven-coupon-form #coupon_code:focus {
    border-color: var(--pls-product-cart-button-bg-hover-color);
}


/* TOTAL */

.in-our-oven-cart .cart_totals .order-total td,
.in-our-oven-cart .cart_totals .order-total td strong,
.in-our-oven-cart .cart_totals .order-total td .woocommerce-Price-amount,
.in-our-oven-cart .cart_totals .order-total td .woocommerce-Price-amount bdi {
    color: #1f1f1f !important;
    font-size: 18px !important;
    font-weight: 600 !important;
}

.in-our-oven-cart .in-our-oven-coupon-form .input-text::placeholder {
    font-size: 14px;
}

.in-our-oven-cart .cart-checkout-note {
    /*margin-top: 15px;*/
    font-size: 11px;
		text-align: center;
		color: #c0a898;
		margin-bottom: 0;
}


/* ========================================
   CART — INDIVIDUAL CART ITEMS
   ======================================== */

.in-our-oven-cart .in-our-oven-cart-item {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr) auto auto 10px;
    gap: 25px;
    align-items: center;
    width: 100%;
    padding: 15px;
    border: 1px solid var(--pls-border-color);
    border-radius: 20px;
    background: #fff;
    margin-bottom: 15px;
    box-shadow: 0 3px 12px rgba(58, 51, 48, 0.06);
    box-sizing: border-box;
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.in-our-oven-cart .in-our-oven-cart-item:hover {
    box-shadow: 0 5px 16px rgba(0, 0, 0, 0.08);
    transform: translateY(-1px);
}

.woocommerce a.remove:before,
.woosw-list table.woosw-items .woosw-item .woosw-item--remove span:before {
    color: var(--pls-primary-color);
}

.woocommerce a.remove:hover:before,
.woosw-list table.woosw-items .woosw-item .woosw-item--remove span:hover:before {
    color: var(--pls-secondary-inverse-color);
}

/* Product Name */

.in-our-oven-cart .in-our-oven-cart-product-name a {
    font-weight: 600 !important;
}

/* Product Image */

.in-our-oven-cart .in-our-oven-cart-image {
    width: 100px;
    height: 100px;
    overflow: hidden;
    border-radius: 15px;
}

.in-our-oven-cart .in-our-oven-cart-image img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.in-our-oven-cart .in-our-oven-cart-meta .variation {
    font-size: 12px !important;
}

/* Shipping notice */
.in-our-oven-cart-meta > em,
.in-our-oven-cart-meta > div,
.in-our-oven-cart-meta > small {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    font-size: 10px !important;
    line-height: 1.5 !important;
    color: #8A7D72 !important;
}

.in-our-oven-cart-meta > em small,
.in-our-oven-cart-meta > div small,
.in-our-oven-cart-meta > small {
    font-size: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
}

.in-our-oven-cart-meta {
    display: flex !important;
    flex-direction: column !important;
}

.in-our-oven-cart-meta .variation {
    order: 1 !important;
}

.in-our-oven-cart-meta > em,
.in-our-oven-cart-meta > div:not(.variation),
.in-our-oven-cart-meta > small {
    order: 2 !important;
}


/* Product Price & Quantity */

.in-our-oven-cart .in-our-oven-cart-price .cart-item-label,
.in-our-oven-cart .in-our-oven-cart-quantity .cart-item-label,
.in-our-oven-cart .custom-cart-summary .cart_totals > h2 {
    display: none;
}

/* Hide WooCommerce cart notifications, but keep empty-cart message */

.woocommerce-notices-wrapper .woocommerce-message {
    display: none !important;
}


/* ========================================
   CART — INTERMEDIATE WIDTH
   ======================================== */

@media (min-width: 768px) and (max-width: 1100px) {

    /* Stack cart and order summary */

    .in-our-oven-cart .custom-cart-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    /* Cart item */

    .in-our-oven-cart .in-our-oven-cart-item {
        grid-template-columns: 90px minmax(0, 1fr) 95px 20px;
        grid-template-rows: auto auto;
        grid-template-areas:
            "image details price remove"
            "image details quantity remove";
        column-gap: 5px;
        row-gap: 1px;
    }

    /* Make the price/quantity column genuinely narrower */

    .in-our-oven-cart .in-our-oven-cart-price,
    .in-our-oven-cart .in-our-oven-cart-quantity {
        width: 75px;
        max-width: 75px;
        min-width: 0;
    }

    /* Allow the quantity control to fit inside the column */

    .in-our-oven-cart .in-our-oven-cart-quantity .quantity {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    /* Product image */

    .in-our-oven-cart .in-our-oven-cart-image {
        grid-area: image;
        width: 80px;
        height: 80px;
    }

    /* Product details */

    .in-our-oven-cart .in-our-oven-cart-details {
        grid-area: details;
        min-width: 0;
    }

    .in-our-oven-cart .in-our-oven-cart-quantity input.qty {
        max-width: 60px;
    }

    /* Variation data */

    .in-our-oven-cart .in-our-oven-cart-meta {
        min-width: 0;
        max-width: 100%;
    }
	
    /* Remove — vertically aligned toward the lower row */
.in-our-oven-cart .in-our-oven-cart-remove {
    grid-area: remove;
    justify-self: end;
    align-self: end;
    min-width: 0;
    margin-bottom: 5px;
}

    /* Resize */

    .in-our-oven-cart .in-our-oven-cart-price,
    .in-our-oven-cart .in-our-oven-cart-product-name,
    .in-our-oven-cart .in-our-oven-cart-remove a {
        font-size: 14px;
    }

    .in-our-oven-cart .in-our-oven-cart-meta .variation {
        font-size: 12px;
    }

}


/* ========================================
   CART — MOBILE
   ======================================== */

@media (max-width: 767px) {

    /* Keep the overall cart layout stacked */

    .in-our-oven-cart .custom-cart-layout {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    /* Cart card */

    .in-our-oven-cart .in-our-oven-cart-item {
        display: grid;
        grid-template-columns: minmax(50px, 55px) minmax(0, 1fr) minmax(40px, auto) 20px;
        grid-template-rows: auto auto;
        column-gap: 5px;
        row-gap: 0px;
        width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    /* Align bottom-row content to the top */

    .in-our-oven-cart .in-our-oven-cart-meta,
    .in-our-oven-cart .in-our-oven-cart-quantity,
    .in-our-oven-cart .in-our-oven-cart-remove {
        align-self: start;
    }


    /* Image */

    .in-our-oven-cart .in-our-oven-cart-image {
        grid-column: 1;
        grid-row: 1 / 3;
        width: 100%;
        max-width: 80px;
        height: auto;
        aspect-ratio: 1 / 1;
        min-width: 0;
    }


    /* Let the product name + variation participate in the card grid */

    .in-our-oven-cart .in-our-oven-cart-details {
        display: contents;
    }


    /* Product name — top middle */

    .in-our-oven-cart .in-our-oven-cart-product-name {
        grid-column: 2;
        grid-row: 1;
        min-width: 0;
    }


    /* Size — directly underneath product name */

    .in-our-oven-cart .in-our-oven-cart-meta {
        grid-column: 2;
        grid-row: 2;
        min-width: 0;
    }


    /* Price — top right */

    .in-our-oven-cart .in-our-oven-cart-price {
        grid-column: 3;
        grid-row: 1;
        justify-self: end;
        margin-right: 10px;
    }


    /* Quantity — directly underneath price */

    .in-our-oven-cart .in-our-oven-cart-quantity input.qty {
        max-width: 50px !important;
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    .in-our-oven-cart .in-our-oven-cart-quantity {
        grid-column: 3;
        grid-row: 2;
        justify-self: end;
        min-width: 0;
        max-width: 100%;
        white-space: nowrap;
        transform: scale(0.85);
        transform-origin: right center;
    }

    .in-our-oven-cart .in-our-oven-cart-quantity .quantity {
        min-width: 0;
        max-width: 100%;
    }


    /* Scale cart variation/meta data */

    .in-our-oven-cart .in-our-oven-cart-meta {
        /*transform: scale(0.9);*/
        min-width: 0;
        max-width: 100%;
    }

    /* Keep variation label together */

    .in-our-oven-cart .in-our-oven-cart-meta .variation dt {
        white-space: nowrap;
        flex-shrink: 0;
    }

    /* Allow variation value to wrap */

    .in-our-oven-cart .in-our-oven-cart-meta .variation dd {
        min-width: 0;
        max-width: 100%;
        overflow-wrap: anywhere;
        word-break: normal;
    }


    /* Delete — leave it in the far-right column for now */

    .in-our-oven-cart .in-our-oven-cart-remove {
        grid-column: 4;
        grid-row: 2;
        justify-self: end;
        min-width: 0;
        align-self: auto;
    }

    .in-our-oven-cart .cart_totals .shop_table tr {
        margin-bottom: 0 !important;
    }

}
@media (max-width: 729px) {

    .in-our-oven-cart .in-our-oven-cart-product-name a {
        font-size: 13px;
    }

    .in-our-oven-cart .in-our-oven-cart-product-name {
        line-height: 1 !important;
        margin-bottom: 5px;
    }

    .in-our-oven-cart .in-our-oven-cart-item {
        grid-template-columns: 42px minmax(0, 1fr) minmax(40px, auto);
        column-gap: 10px;
				padding: 12px;
    }

    .in-our-oven-cart .in-our-oven-cart-image {
        display: block !important;
        width: 45px;
        max-width: 45px;
        height: 45px;
        aspect-ratio: 1 / 1;
        border-radius: 10px !important;
    }

    .in-our-oven-cart .in-our-oven-cart-details {
        min-width: 0;
    }

    /* Product name */

    .in-our-oven-cart .in-our-oven-cart-product-name {
        grid-column: 2;
        grid-row: 1;
    }

    /* Product meta */

    .in-our-oven-cart .in-our-oven-cart-meta {
        grid-column: 2;
        grid-row: 2;
    }

    /* Price */

    .in-our-oven-cart .in-our-oven-cart-price {
        grid-column: 3;
        grid-row: 1;
        justify-self: end;
        margin-right: 0;
    }

    /* Quantity */

    .in-our-oven-cart .in-our-oven-cart-quantity {
        grid-column: 3;
        grid-row: 2;
        justify-self: end;
    }
	
	.in-our-oven-cart .in-our-oven-cart-quantity .quantity input.qty,
    .in-our-oven-cart .in-our-oven-cart-quantity input.qty {
        width: 45px !important;
        max-width: 45px !important;
        min-width: 35px !important;
    }
}

/* PRODUCT PAGE CUSTOMIZATIONS */

.pls-mobile-menu, .pls-mobile-categories-menu {
		transform: translateX(100%);
}

.pls-mobile-menu-header .pls-close-btn { 
		left: auto; right: 1rem; }

@media (max-width: 991px) {
    #header.fixed,
    .pls-header-main.pls-header-sticked {
        top: 0 !important;
    }
	
		.pls-mobile-menu.opened {
			top: 0 !important;
		}
	
		.pls-mobile-menu-header {
		padding-top: 10px !important;
		overflow: visible !important;
		}
}

.entry-post {
	padding-top: 10px;
}

.entry-breadcrumb,
.entry-breadcrumb a {
    font-size: 12px !important;
    font-weight: 500;
    color: #8A7D72;
}

.entry-breadcrumb a:hover {
    color: var(--pls-header-link-hover-color) !important;
}

.entry-breadcrumb .last {
    font-weight: 600;
    color: var(--pls-header-link-color) !important;
}

.breadcrumb .delimiter.greater-than:before,
.pls-breadcrumb .pls-delimiter-sep.pls-greater-than:before {
    font-size: 6px;
}

/* Remove theme breadcrumb width restriction */
.pls-single-product-top .pls-breadcrumb a,
.pls-single-product-top .pls-breadcrumb span:last-child {
    max-width: none !important;
}

.entry-thumbnail-wrapper {
		margin: 0px !important;
}

.elementor-element-d51383f .e-link-in-bio {
    width: 100%;
}

.pls-header-main {
    border-bottom: var(--pls-header-border-bottom);
}

.single-post-page .entry-header {
		text-align: center;
}

/* PRODUCT GALLERY */

/* ========================================
   WOOCOMMERCE — ALL NOTICES & ERRORS
======================================== */

.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
    background-color: #fff4f9;
    color: #5a4a52;
    border: 1px solid #f9a4d2 !important;
    border-radius: 8px;
    font-size: 14px;
    line-height: 1.5;
    font-weight: 500;
    position: relative;
}

/* Notice icons */
.woocommerce-error::before,
.woocommerce-info::before,
.woocommerce-message::before {
    color: #f277b9;
}

/* Change layout */

.pls-single-product-top {
    margin-bottom: 20px !important;
}

@media (min-width: 992px) {
    .woocommerce div.product .col-md-6:first-child {
        max-width: 55%;
    }

    .woocommerce div.product .col-md-6:last-child {
        max-width: 45%;
    }
}

@media (min-width: 992px) {
    .product-thumbnail-left.pls-product-image-default .pls-product-thumbnail-inner {
        height: auto !important;
    }

    .product-thumbnail-left .pls-product-gallery-with-thumbnails:not(.is-quick-view) .pls-product-thumbnail-wrapper {
        max-width: none;
    }
	
		.product-thumbnail-left .woocommerce-product-gallery:not(.is-quick-view) {
        gap: 20px;
    }
}

/* Make every main gallery slide square */

.pls-product-gallery-with-thumbnails
.pls-single-product-gallery
.woocommerce-product-gallery__image,

.pls-product-gallery-without-thumbnails
.pls-single-product-gallery
.woocommerce-product-gallery__image {
    aspect-ratio: 1 / 1 !important;
}


/* Make the product images fill the square */

.pls-product-gallery-with-thumbnails
.pls-single-product-gallery
.woocommerce-product-gallery__image > img.wp-post-image,

.pls-product-gallery-without-thumbnails
.pls-single-product-gallery
.woocommerce-product-gallery__image > img.wp-post-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Pointer */

/* Gallery and thumbnail controls */
.pls-gallery-slider-prev,
.pls-gallery-slider-next,
.pls-thumb-slider-prev,
.pls-thumb-slider-next {
    cursor: pointer;
}

/* Product thumbnails */
.pls-product-thumbnail-wrapper .pls-product-thumb-image {
    cursor: pointer;
}

/* Disabled slider controls */
.swiper-button-disabled {
    cursor: not-allowed;
}

/* Thumbnail rounded div borders */

.pls-product-thumbnail-wrapper
.pls-product-thumb-image {
    border-radius: 12px !important;
    overflow: hidden !important;
}

/* Make thumbnails square */

.pls-product-thumbnail-wrapper
.pls-product-thumb-image {
    aspect-ratio: 1 / 1 !important;
    height: 120px !important;
    width: 120px !important;
}

/* Make thumbnail images fill their square */

.pls-product-thumbnail-wrapper
.pls-product-thumb-image > img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* Remove default thumbnail borders */
.pls-product-thumbnail-wrapper
.pls-product-thumb-image img {
    border: 2px solid transparent !important;
    box-shadow: none !important;
}

/* Pink border on the currently selected thumbnail */
.pls-product-thumbnail-wrapper
.pls-product-thumb-image.swiper-slide-thumb-active img {
    border-color: var(--pls-link-hover-color) !important;
}

/* Keep thumbnail container positioned for overlay */
.pls-product-thumbnail-wrapper
.pls-product-thumb-image {
    position: relative !important;
}

/* White overlay on unselected thumbnails */

.pls-product-thumbnail-wrapper
.pls-product-thumb-image:not(.swiper-slide-thumb-active)::after {
    content: "" !important;
    position: absolute !important;
    inset: 0 !important;
    background: rgba(255, 255, 255, 0.55) !important;
    pointer-events: none !important;
    transition: opacity 0.2s ease !important;
}

/* Remove overlay on hover */

.pls-product-thumbnail-wrapper
.pls-product-thumb-image:not(.swiper-slide-thumb-active):hover::after {
    opacity: 0 !important;
}

/* Keep selected thumbnail clear */
.pls-product-thumbnail-wrapper
.pls-product-thumb-image.swiper-slide-thumb-active::after {
    display: none !important;
}

@media (max-width: 767px) {

    .pls-product-thumbnail-wrapper {
        width: 100%;
        overflow: hidden;
    }

    .pls-product-thumbnail-inner {
        width: 100%;
        overflow: hidden;
    }

    .pls-single-product-thumbnails {
        width: 100%;
    }

    .pls-single-product-thumbnails .pls-product-thumb-image {
        width: calc((100% - 48px) / 4) !important;
        flex-shrink: 0;
        height: auto !important;
        box-sizing: border-box !important;

     /* Space for the active border */
        margin-bottom: 2px !important;
    }

    .pls-single-product-thumbnails .pls-product-thumb-image img {
        width: 100%;
        height: auto !important;
        display: block;
    }

    .pls-single-product-thumbnails
    .pls-product-thumb-image.swiper-slide-thumb-active {
        border-bottom: 2px solid var(--pls-button-bg-hover-color) !important;
    }
}

/* PRODUCT SPECIFICATIONS */

.pls-product-cat .posted_in {
    font-size: 0;
}

.pls-product-cat .posted_in a:first-child {
    font-size: 12px;
}

.pls-product-cat .posted_in a:not(:first-child) {
    display: none;
}

div.summary .pls-product-cat .posted_in a {
		color: var(--pls-primary-color) !important;
    font-size: 12px !important;
    font-weight: 600 !important;
		border: none !important;
		margin: 0 !important;
		padding: 0 !important;
}

div.summary .pls-product-cat .posted_in a:hover {
		background-color: transparent !important;
		color: var(--pls-product-cart-button-bg-color) !important;
}

.pls-single-product-title .product_title.entry-title {
    margin-top: 30px;
		padding-right: 0px !important;
		font-size: 50px !important;
		line-height: 1 !important;
		font-weight: 700;
}

p.pls-product-price .woocommerce-Price-amount.amount {
    font-weight: 500 !important;
}


.woocommerce-product-details__short-description .elementor-widget-container p {   
		font-size: 14px;
}

/* Put category and rating on the same line */
.single-product .summary.entry-summary .pls-single-product-title {
    position: relative !important;
}

/* Rating beside the category */
.single-product .summary.entry-summary .woocommerce-product-rating {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    order: unset !important;
}

/* Product rating */
.woocommerce-product-rating {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
}

/* Stars */
.woocommerce-product-rating .star-rating {
    font-size: 13px !important;
    margin: 0 !important;
    line-height: 13px !important;
}

/* Star color */
.woocommerce-product-rating .star-rating::before {
    color: #E8DFD4 !important;
}

.woocommerce-product-rating .star-rating span::before {
    color: var(--pls-button-bg-hover-color) !important;
}

.woocommerce .star-rating span {
		color: var(--pls-button-bg-hover-color) !important;
}

/* Rating number */
.woocommerce-product-rating .star-rating .rating {
    font-size: 12px !important;
    font-weight: 700 !important;
}

/* Reviews */
.woocommerce-product-rating .woocommerce-review-link {
    font-size: 12px !important;
    text-decoration: none !important;
    margin: 0 !important;
}

/* Keep the review link compact */
.single-product .summary.entry-summary .woocommerce-product-rating .woocommerce-review-link {
    margin: 0 !important;
} 

/* Keep review rating clickable */
.single-product .summary.entry-summary .woocommerce-product-rating {
    z-index: 20 !important;
    pointer-events: auto !important;
}

.single-product .summary.entry-summary .woocommerce-product-rating a {
    position: relative !important;
    z-index: 21 !important;
    pointer-events: auto !important;
}

/* Swatches */

/* SIZE SWATCH CONTAINER */
.pls-swatches {
    display: flex !important;
    width: 100% !important;
}

/* Individual size options */
.pls-swatches .swatch {
    padding: 0px 25px !important;
    justify-content: center !important;
    border: 1px solid #B0A49A !important;
    border-radius: 999px !important;
    background: transparent !important;
    box-shadow: none !important;
    font-size: 12px !important;
    color: #5a4e45 !important;
    cursor: pointer !important;
}

/* SELECTED SIZE */
.pls-swatches .swatch.selected,
.pls-swatches .swatch.swatch-selected,
.pls-swatches .swatch.active {
    background: var(--pls-button-bg-hover-color) !important;
		border: 1px solid var(--pls-button-bg-hover-color) !important;
    color: #fff !important;
}

/* HOVER */
.pls-swatches .swatch.swatch-enabled:hover {
    color: var(--pls-button-bg-hover-color) !important;
		border: 1px solid var(--pls-button-bg-hover-color) !important;
}

.pls-swatches .swatch.swatch-selected:hover,
.pls-swatches .swatch.selected:hover,
.pls-swatches .swatch.active:hover {
    color: #fff !important;
}

/* OUT OF STOCK / UNAVAILABLE SIZE */
.pls-swatches .swatch.swatch-disabled {
    opacity: 0.3 !important;
    pointer-events: none !important;
    filter: grayscale(100%);
}

.pls-swatches .swatch.swatch-disabled > span:first-child,
.pls-swatches .swatch.swatch-disabled .custom-variation-description,
.pls-swatches .swatch.swatch-disabled .custom-variation-price {
    color: #a79b91 !important;
}

/* Keep not-allowed cursor on the entire disabled swatch */
.pls-swatches .swatch.swatch-disabled,
.pls-swatches .swatch.swatch-disabled *,
.pls-swatches .swatch.swatch-disabled:hover,
.pls-swatches .swatch.swatch-disabled:hover * {
    cursor: not-allowed !important;
}

.pls-swatches-wrap {
    position: relative;
}

/* White Bread variation description
.postid-3462 .pls-swatches-wrap .woocommerce-variation-description {
    position: absolute !important;
    top: 25px;
    right: 0;
    margin: 0 !important;
}

.pls-swatches-wrap .woocommerce-variation-description p {
} */

.pls-swatches-wrap .reset_variations, .pls-quantity-label, .pls-product-policy-label, .sku_wrapper {
    display: none !important;
}

div.summary form.cart .variations .label,
label[for="pa_size"],
.share-label,
.pls-product-share span:before,
.pls-product-trust-badge legend, .ingredients .custom-label, .ingredients-allergens .custom-label, .woocommerce-product-attributes-item__label {
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 1px;
    font-weight: 600 !important;
}

.pls-swatches-wrap .woocommerce-variation-description {
		font-size: 12px;
}

.pls-product-trust-badge img {
		max-width: 60%;
}

.tagged_as {
    font-size: 0;
}

.pls-product-policy-list {
		background-color: var(--pls-border-color);
    border-radius: var(--pls-border-radius);
		padding: 15px;
    display: flex !important;
    width: 100% !important;
}

.pls-product-policy-list .pls-policy-item {
    flex: 1 1 0 !important;
    min-width: 0 !important;
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
}


.pls-product-policy-list .pls-policy-item-info {
    min-width: 0 !important;
}

.pls-product-policy-list .pls-policy-item-icon {
    flex-shrink: 0;
    margin: 0;
		max-width: 25px;
}

.pls-product-policy-list .pls-policy-item-name {
    display: block;
    font-size: 11px;
    font-weight: 700;
		color: #5A4E45 !important;
		line-height: 1;
		margin-bottom: 2px;
}

.pls-product-policy-list .pls-policy-item-desc {
    display: block;
    margin-top: 2px;
    font-size: 10px;
    line-height: 1.4;
    color: #5A4E45;
}

.woocommerce div.summary .woocommerce-review-link {
    color: #8A7D72;
}

/* WooCommerce Buttons */

.woocommerce-variation-add-to-cart .pls-quantity-label,
.woocommerce-variation-add-to-cart .quantity .minus,
.woocommerce-variation-add-to-cart .quantity .plus,
.woocommerce-variation-add-to-cart .single_add_to_cart_button,
.woocommerce-variation-add-to-cart .pls_quick_buy_button {
    cursor: pointer !important;
}

.summary.entry-summary .woocommerce-variation-add-to-cart .single_add_to_cart_button {
     height: 42px !important;
     min-height: 42px !important;
     border: 0 !important;
}

.woocommerce button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce .button,
.woocommerce #respond input#submit,
.woocommerce input[type="submit"],
.woocommerce .added_to_cart {
    border-radius: 40px !important;
		letter-spacing: 1px;
		font-size: 12px;
		font-weight: 600;
}

/* Make quantity control smaller */
.woocommerce-variation-add-to-cart .quantity {
    width: auto !important;
}

.woocommerce .quantity .qty {
    background-color: var(    --pls-secondary-color) !important;
	border-radius: 40px !important;
    color: var(--pls-text-color);
		font-weight: 500;
		font-size: 14px !important;
		min-width: 40px;
		width: 90px !important;
}

.woocommerce-variation-add-to-cart .quantity .minus,
.woocommerce-variation-add-to-cart .quantity .plus {
    width: 40px !important;
    height: 40px !important;
}

.minus, .plus {
		background-color: var(--pls-button-bg-color) !important;
		min-width: 25px !important;
    height: 25px !important;
		color: #fff;
    border-radius: 50% !important;
		margin: 5px !important;
}

.minus:hover, .plus:hover {
		background-color: var(    --pls-product-cart-button-bg-color) !important;
}

/* ========================================
   CART — PRICE & QUANTITY
   ======================================== */

.in-our-oven-cart .in-our-oven-cart-price .cart-item-label,
.in-our-oven-cart .in-our-oven-cart-quantity .cart-item-label,
.in-our-oven-cart .custom-cart-summary .cart_totals > h2 {
    display: none;
}

/* CART — QUANTITY INPUT */

.woocommerce-cart .quantity .qty {
    background-color: transparent !important;
    color: var(--pls-text-color);
    font-weight: 500;
    font-size: 14px !important;
    width: 40px !important;
}

/* CART — QUANTITY +/- BUTTONS */

.in-our-oven-cart .quantity .minus,
.in-our-oven-cart .quantity .plus {
		min-width: 25px !important;
    height: 25px !important;
		margin: 0 !important;
}

.woocommerce-cart .quantity label::before {
		font-size: 10px;
}


div.summary .quantity label:before {
    font-size: 10px;
}

div.quantity {
    background-color: transparent !important;
    border: none !important;
		border-radius: 0px !important;
		padding: 0
}

.pls-product-compare-share-wrap {
    border: none !important;
}

.pls-product-compare-share-wrap {
    padding-bottom: 0rem;
    margin-bottom: 0rem;
}

/* Accordion */

.accordion-title span, .tab-content-wrap > .accordion-title:after {
    font-size: 16px !important;
		color: var(--pls-heading-color);
}

/* Content */

.tab-content-wrap #tab-description .elementor-widget-container {
    padding: 0;
}

.tab-content-wrap .accordion-title::before,
.tab-content-wrap .accordion-title::after {
    font-size: 12px !important;
}

.woocommerce-tabs .accordion-title span {
    text-transform: capitalize !important;
}

.tab-content-wrap #tab-description p, .woocommerce-product-attributes-item__label, .woocommerce-product-attributes-item__value, .custom-label p, #tab-pls_custom_tab .ingredients > p:last-child  {
    color: #5a4e45;
    font-size: 14px;
}

/* Storage heading */
.tab-content-wrap #tab-description strong {
    color: #3a3330;
    font-weight: 600;
}

.woocommerce-product-attributes-item__label {
		color: var(--pls-button-bg-hover-color) !important;
		font-size: 12px !important;
}

.ingredients .custom-label {
		margin-bottom: 5px;
		margin-top: 5px;
}

#tab-pls_custom_tab .ingredients-allergens {
    background-color: var(--pls-secondary-color);
    padding: 15px;
    border-radius: 15px;
}

#tab-pls_custom_tab .ingredients-allergens .custom-label {
    margin-bottom: 5px;
}

#tab-pls_custom_tab .ingredients-allergens .custom-label strong {
    color: var(--pls-button-bg-hover-color) !important;
}

#tab-pls_custom_tab .ingredients-allergens p:last-child {
    margin-bottom: 0;
    color: var(--e-global-color-58e7dde);
    font-size: 14px;
}

@media (max-width: 767px) {
	
	.pls-single-product-title .product_title.entry-title {
			font-size: 36px !important;
	}
	
	.pls-swatches .swatch {
			padding: 0px 20px !important;
			font-size: 11px !important;
	}
	
	.pls-swatches .swatch.swatch-label.swatch-square span, .products .pls-swatches .swatch.swatch-label.swatch-square span {
			height: 35px;
	}
	
	.pls-swatches .swatch.swatch-label.swatch-square span, .products .pls-swatches .swatch.swatch-label.swatch-square span {
			padding: 0;
	}
	
	.woocommerce .quantity .qty 	{
			max-width: 50px !important;
			height: 36px !important;
	}
	
	.woocommerce .quantity .qty 	{
			font-size: 14px !important;
	}
	
	.woocommerce-variation-add-to-cart .quantity .minus, .woocommerce-variation-add-to-cart .quantity .plus {
    width: 28px !important;
    height: 28px !important;
	}
	
	.summary.entry-summary  .single_add_to_cart_button,
    .summary.entry-summary
    .pls_quick_buy_button {

        font-size: 11px;
        padding: 11px 20px !important;

    }
	
	.pls-product-policy-list {
			padding: 10px;
	}
	
	.pls-product-policy-list .pls-policy-item-icon {
    max-width: 20px;
	}
	
	.pls-product-policy-list .pls-policy-item {
			gap: 2px !important;
	}
	
	.pls-product-policy-list .pls-policy-item-name {
			font-size: 10px;
	}
	
	.pls-product-policy-list .pls-policy-item-desc {
			font-size: 9px;
	}
}

/* REVIEW SECTION */

/* Reorder entire section */

.pls-product-reviews #reviews {
    display: flex !important;
    flex-direction: column !important;
}

.pls-product-reviews #review_form_wrapper,
.pls-product-reviews #comments {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

.pls-product-reviews #comments {
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

.pls-product-reviews #review_form_wrapper {
    order: 2 !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
}

.pls-product-reviews #comments {
    margin-bottom: 50px !important;
}

.pls-product-reviews #review_form_wrapper > .pls-product-rating-histogram {
    display: none !important;
}

.pls-product-reviews {
    position: relative;
}

.pls-product-reviews > .pls-product-rating-histogram {
    position: absolute !important;
    top: -10px !important;
    right: 0 !important;
    width: auto !important;
    margin: 0 !important;
}

@media (max-width: 767px) {
    .pls-product-reviews > .pls-product-rating-histogram {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        left: auto !important;
        bottom: auto !important;
        float: none !important;
        clear: both !important;
        width: fit-content !important;
        margin: 20px 0 0 0 !important;
    }
}

/* REVIEW & COMMENT SECTION */
.pls-product-reviews {
    position: relative !important;
    z-index: 0 !important;
}

.pls-product-reviews::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100vw !important;
    height: 100% !important;
    background-image: url("https://inouroven.com/wp-content/uploads/2026/08/sprinkles-bg.svg") !important;
    background-position: bottom;
    background-size: 100% !important;
background-repeat: repeat !important;
    opacity: 0.5 !important;
    z-index: -1 !important;
    pointer-events: none !important;
    margin-left: calc(50% - 50vw) !important;
}

.pls-product-reviews h3, #reply-title, .recently-viewed h2 {
		font-family: "DM Serif Display";
		font-size: 36px !important;
		font-weight: 700 !important;
		letter-spacing: -1px;
}

@media (max-width: 767px) {
		.pls-product-reviews h3, #reply-title, .recently-viewed h2 {
			font-size: 28px !important;
	}
}

.pls-product-reviews > h3::before {
    content: "What bakers say";
    display: block !important;
    font-family: "DM Sans";
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 600;
    font-style: normal;
    font-size: 12px;
    color: var(--pls-link-hover-color) !important;
    margin-bottom: 5px !important;
}

.single-product .pls-product-reviews #comments {
    background: transparent !important;
}

/* 2-column review grid */

#comments .commentlist {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 20px !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Remove theme clearfix pseudo-elements from the grid */

#comments .commentlist::before,
#comments .commentlist::after {
    display: none !important;
    content: none !important;
}

/* Remove WooCommerce/theme positioning */

#comments .commentlist > li {
    position: relative !important;
    float: none !important;
    clear: none !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    bottom: auto !important;
    grid-column: auto !important;
    grid-row: auto !important;
    order: initial !important;
    width: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

/* Review card + layout */
#comments .comment_container {
    display: grid !important;
    grid-template-columns: 36px minmax(0, 1fr) !important;
    column-gap: 25px !important;
    align-items: start !important;
    background: #fff !important;
    border-radius: 20px !important;
    padding: 24px !important;
    height: 100% !important;
		box-shadow: 0 4px 14px rgba(90, 78, 69, 0.08) !important;
}

/* Avatar */

#comments .comment-gravatar {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    min-height: 50px !important;
    border-radius: 50% !important;
    background: #fde8f3 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    position: relative !important;
}

/* Hide actual Gravatar */

#comments .comment-gravatar img {
    display: none !important;
}

/* Reviewer initial */

#comments .comment-gravatar::after {
    content: attr(data-initial) !important;
    display: block !important;
    font-family: inherit !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: var(--pls-link-hover-color) !important;
}

/* Review Header */

#comments .comment-meta {
    grid-column: 2 !important;
    grid-row: 1 !important;
    min-width: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 0 12px !important;
    padding-left: 0 !important;
    margin-left: 0 !important;
    text-indent: 0 !important;
}

/* Name + date */
#comments .comment-meta .meta {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Name */
#comments .woocommerce-review__author {
    order: 1 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
}

/* Date */
#comments .woocommerce-review__published-date {
    order: 2 !important;
    font-size: 10px !important;
    color: #8A7D72 !important;
    margin: 0 0 3px !important;
}

/* Hide WooCommerce dash */
#comments .woocommerce-review__dash {
    display: none !important;
}

/* Stars */

#comments .star-rating {
    --review-star-size: 8px;
    --review-star-spacing: 5px;
    position: absolute !important;
    top: 30px !important;
    right: 30px !important;
    margin: 0 !important;
    font-size: var(--review-star-size) !important;
    letter-spacing: var(--review-star-spacing) !important;
}

#comments .star-rating::before {
    color: #E8DFD4 !important;
    font-size: var(--review-star-size) !important;
    letter-spacing: var(--review-star-spacing) !important;
}

#comments .star-rating span::before {
    color: var(--pls-link-hover-color) !important;
    font-size: var(--review-star-size) !important;
    letter-spacing: var(--review-star-spacing) !important;
}

/* Review text */

#comments .comment-text {
    grid-column: 1 / -1 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

#comments .description {
    margin: 0 !important;
    padding: 0 !important;
}

#comments .description p {
    margin: 0 !important;
    font-size: 14px !important;
    line-height: 1.65 !important;
    color: #5a4e45 !important;
}

/* Show all reviews */

/* Hide reviews after the first 4 */
#comments .commentlist > li:nth-child(n+5) {
    display: none !important;
}

/* Show all reviews button */
#comments .show-all-reviews {
    display: block;
    margin: 25px auto 0;
    padding: 12px 30px;
    border: none;
    border-radius: 40px;
    background: var(--pls-button-bg-hover-color);
    color: #fff;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 1px;
    cursor: pointer;
    transition: opacity 0.2s ease;
}

#comments .show-all-reviews:hover {
    opacity: 0.85;
}

/* AVERAGE RATING */

.pls-product-rating-histogram {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
    background: #fff !important;
		box-shadow: 0 4px 14px rgba(90, 78, 69, 0.08) !important;
    border-radius: 20px !important;
    padding: 20px !important;
    width: fit-content !important;
    max-width: 100% !important;
}

.pls-product-rating-avg-wrapper {
    text-align: center !important;
    flex-shrink: 0 !important;
}

.pls-product-rating-avg {
    font-family: "Fraunces", serif !important;
    font-size: 36px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    color: var(--pls-link-hover-color) !important;
    margin-bottom: 6px !important;
}

/* Stars */

.pls-product-rating-avg-wrapper .star-rating {
    width: auto !important;
    height: auto !important;
    margin: 0 auto !important;
    color: var(--pls-link-hover-color) !important;
}

.pls-product-rating-avg-wrapper .star-rating::before, .pls-product-rating-avg-wrapper .star-rating span, .pls-product-rating-avg-wrapper .star-rating span::before {
    color: var(--pls-link-hover-color) !important;
		font-size: 10px !important;
		letter-spacing: 5px !important;
}

/* Hide the text inside the accessible rating span visually */
.pls-product-rating-avg-wrapper .star-rating span {
    font-size: 0 !important;
}

/* Number of ratings */

.pls-product-rating-count {
    margin-top: 4px !important;
    font-size: 10px !important;
    color: #8A7D72 !important;
}

.pls-product-rating-count span {
    font-size: 10px !important;
		color: #8A7D72 !important;
}

/* Divider */

.pls-product-rating-avg-wrapper {
    position: relative !important;
    padding-right: 10px !important;
}

.pls-product-rating-avg-wrapper::after {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    right: 0 !important;
    transform: translateY(-50%) !important;
    width: 1px !important;
    height: 48px !important;
    background: #E8DFD4 !important;
}

/* Rating bars */

.pls-rating-histogram-wrapper {
    flex-shrink: 0 !important;
}

.pls-rating-histogram {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.pls-rating-bar {
    display: flex !important;
    align-items: center !important;
    height: 10px !important;
}

/* Rating number */

.pls-rating-star {
    font-size: 10px !important;
		font-weight: 400 !important;
    line-height: 1 !important;
    color: #8A7D72 !important;
}

.pls-rating-histogram .pls-rating-star:after {
    font-size: 8px;
}

/* Bar background */

.pls-rating-bar .pls-progress {
    width: 80px !important;
		height: 6px !important;
    background: #E8DFD4 !important;
}

/* Actual percentage */

.pls-rating-bar .pls-progress-bar {
    height: 100% !important;
    background: var(--pls-link-hover-color) !important;
}

/* Hide percentage/count on the right */

.pls-rating-bar > .pls-rating-count {
    display: none !important;
}

/* REVIEW FORM */

/* Label above review form title */

#reply-title::before {
    content: "SHARE YOUR EXPERIENCE" !important;
    display: block !important;
    font-family: "DM Sans";
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 600;
    font-style: normal;
    font-size: 12px;
    color: #f58bc4 !important;
    margin-bottom: 5px !important;
}

/* Hide comment label */

label[for="comment"] {
    display: none !important;
}

/* Required asterisk */
#commentform label .required {
    color: #f58bc4 !important;
}

/* Comment focus */

#commentform #comment:focus {
    border-color: #f58bc4 !important;
}

/* Stars */
.woocommerce p.stars.selected a:before, .woocommerce p.stars.selected:hover a:before, .woocommerce p.stars:hover a:before {
    color: #f58bc4;
}

.woocommerce p.stars a.active~a:before, .woocommerce p.stars a:before, .woocommerce p.stars a:hover~a:before, .woocommerce p.stars.selected:hover a:hover~a:before {
    color: #E8DFD4;
}

#review_form {
    background-color: var(--pls-secondary-color) !important;
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
		margin-top: 0 !important;
    padding: 60px;
}

.comment-form-rating {
		margin: 0 !important;
}

.comment-form-comment {
		margin: 20px ;
		padding: 0 !important;
}

.review-rating-notice {
    margin: 0 !important;
    padding: 10px 14px;
    color: #5a4e45;
    font-size: 13px;
    line-height: 1.5;
}

#commentform:has(.comment-form-rating .stars.selected) .review-rating-notice {
    display: none !important;
}

@media (max-width: 767px) {
	#review_form {
			padding: 30px;
	}
}

/* RECENTLY VIEWED */

.recently-viewed h2::before {
    content: "Take Another Look";
    display: block !important;
    font-family: "DM Sans";
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 600;
    font-style: normal;
    font-size: 12px;
    color: #f58bc4 !important;
    margin-bottom: 5px !important;
}

/*.recently-viewed {
    background-color: var(--e-global-color-secondary) !important;
    width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    box-sizing: border-box !important;
		padding: 30px;
}

.recently-viewed {
    margin-bottom: -100px !important;
} */

/* Product action buttons */
.pls-product-actions {
    display: flex !important;
    gap: 8px !important;
}

@media (min-width: 1025px) {

    /* Product action buttons */
    .pls-product-actions {
        display: flex !important;
        gap: 8px !important;
    }

    /* Both buttons */
    .pls-product-actions a {
        border-radius: 40px !important;
        transition: all 0.2s ease !important;
        cursor: pointer !important;
        box-sizing: border-box !important;
    }

    .pls-product-actions .pls-quickview-btn,
    .pls-product-actions .pls-cart-button a {
        font-size: 11px !important;
        font-weight: 600 !important;
        letter-spacing: 0px !important;
    }

    .pls-product-actions .pls-quickview-btn::before,
    .pls-product-actions .pls-cart-button a::before {
        font-size: 14px !important;
        margin-right: 5px !important;
    }
}

/* PRODUCT CARD */
.pls-product-inner {
    background: #fff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05) !important;
    transition: box-shadow 0.25s ease, transform 0.25s ease !important;
}

.pls-product-inner {
    transition: box-shadow 0.25s ease, transform 0.25s ease;
}

.pls-product-inner:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.10) !important;
}
/* IMAGE AREA — rounded ONLY at the top */
.pls-product-image {
    background: #f2ebe0 !important;
    overflow: hidden !important;
    border-radius: 16px 16px 0 0 !important;
    aspect-ratio: 1 / 1 !important;
}


/* Make product images fill the square */

.pls-product-image img.front-image,
.pls-product-image img.hover-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

/* IMAGES */

.pls-product-info {
    padding: 0px 10px 15px 10px !important;
}

/* MINI CART */

/* BACKGROUND */

.pls-minicart-slide,
.pls-minicart-slide .pls-minicart-items,
.pls-minicart-slide .widget_shopping_cart,
.pls-minicart-slide .widget_shopping_cart_content {
    background: #fff !important;
}

.pls-minicart-header .minicart-title {
    font-family: "DM Serif Display";
}

/* Mini Cart — You May Also Like */

/* Mini Cart — Sprinkles */

.pls-minicart-cross-sells {
    position: relative;
    overflow: hidden;
}

.pls-minicart-cross-sells .mini-cart-sprinkle {
    position: absolute;
    display: block;
    width: 10px;
    height: 28px;
    border-radius: 999px;
    opacity: 0.45;
    pointer-events: none;
    z-index: 0;
}

/* Pink */
.pls-minicart-cross-sells .sprinkle-1 {
    top: -5px;
    left: 15px;
    background: #f58bc4;
    transform: rotate(25deg);
}

/* Lavender */
.pls-minicart-cross-sells .sprinkle-2 {
    top: 5%;
    right: 5%;
    background: #c3b1e1;
    transform: rotate(-35deg);
}

/* Soft blue */
.pls-minicart-cross-sells .sprinkle-3 {
    top: 42%;
    left: 10%;
    background: #a8c9e8;
    transform: rotate(-55deg);
}

/* Soft yellow */
.pls-minicart-cross-sells .sprinkle-4 {
    top: 34%;
    right: 0;
    background: #f5d58a;
    transform: rotate(45deg);
}

/* Lavender */
.pls-minicart-cross-sells .sprinkle-5 {
    bottom: 20%;
    left: 0;
    background: #c3b1e1;
    transform: rotate(-25deg);
}

/* Soft blue */
.pls-minicart-cross-sells .sprinkle-6 {
    bottom: 10%;
    right: 10%;
    background: #a8c9e8;
    transform: rotate(35deg);
}

/* Pink */
.pls-minicart-cross-sells .sprinkle-7 {
    top: 60%;
    left: 48%;
    background: #f9a4d2;
    transform: rotate(65deg);
}

/* Soft yellow */
.pls-minicart-cross-sells .sprinkle-8 {
    bottom: 5px;
    right: 50%;
    background: #f5d58a;
    transform: rotate(-45deg);
}

.pls-minicart-cross-sells {
    border: none;
}

.pls-minicart-cross-sells {
    padding: 18px;
    background: #fff5f9;
}

.pls-minicart-cross-sells-header .minicart-title {
		padding-top: 10px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
		font-family: var(--pls-primary-font);
    color: var(--e-global-color-58e7dde);
}

/* Product */
.pls-minicart-cross-sells-products {
    margin: 0;
}

.pls-cross-sells-product {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: #fff;
    border: 1px solid #F5F0E5;
    border-radius: 20px;
}

/* Image */
.pls-cross-sells-product .product-widget-image {
    flex: 0 0 64px;
    width: 64px;
}

.pls-cross-sells-product .product-widget-image img {
    display: block;
    width: 64px;
    height: 64px;
    object-fit: cover;
    border-radius: 10px;
}

/* Content */

.pls-cross-sells-product .product-widget-content {
    gap: 0 !important;
}

.pls-cross-sells-product .product-widget-content {
    flex: 1;
    min-width: 0;
}

.pls-cross-sells-product .product-title {
    display: block;
    margin: 0;
    color: #3A3330;
    font-size: 13px;
    font-weight: 600;
}

.pls-cross-sells-product .price {
    display: block;
    margin: 0 0 4px;
    color: #3A3330;
    font-size: 12px;
    font-weight: 600;
}

/* Add to Bag */
.pls-cross-sells-product .pls-product-actions {
    margin: 0;
}

.pls-cross-sells-product .pls-cart-button .button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    font-size: 9px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    transition: all 0.2s ease;
}

.pls-cross-sells-product .pls-cart-button .button:hover {
    transform: translateY(-1px);
}

/* NOTE & COUPON PANELS */

.pls-minicart-slide .pls-minicart-action-block,
.pls-minicart-slide .pls-minicart-order-note,
.pls-minicart-slide .pls-minicart-coupon,
.pls-minicart-slide .pls-minicart-block-content {
    background: #fff !important;
}

.pls-minicart-block-title {
    border-bottom: 1px solid #F5F0E5;
}

/* QUANTITY INPUT */

.pls-minicart-slide .quantity .qty {
    background-color: transparent !important;
    border-radius: 40px !important;
    color: var(--pls-text-color);
    font-weight: 500;
    font-size: 14px !important;
    width: 30px !important;
}

/* CLOSE */

.pls-minicart-slide .pls-close-btn,
.pls-minicart-slide .mfp-close-btn-in .mfp-close {
    background-color: transparent !important;
}

.pls-close-btn:before {
		font-size: 12px;
		color: var(--pls-input-color);
}

.pls-close-btn:hover:before {
    color: var(--pls-text-color);
}

/* PRODUCT TITLE */

.pls-mini-cart-item-title .mini_cart_item_title {
    font-weight: 600;
    font-size: 14px;
}

/* PRODUCT IMAGE */

.widget_shopping_cart_body .mini_cart_item_image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center !important;
}

/* MINI CART — VARIATIONS */

.widget_shopping_cart_body .pls-mini-cart-item-data .variation {
    display: flex !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
    min-width: 0;
    max-width: 100%;
}

/* Hide Pack: / Flavor: labels */
.widget_shopping_cart_body .pls-mini-cart-item-data .variation dt {
    display: none !important;
}

/* Variation values */
.widget_shopping_cart_body .pls-mini-cart-item-data .variation dd {
    display: block !important;
    min-width: 0;
    max-width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Variation value text */
.widget_shopping_cart_body .pls-mini-cart-item-data .variation dd p {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Separator between values */
.widget_shopping_cart_body .pls-mini-cart-item-data .variation dd + dt + dd::before {
    content: "∙";
    margin: 2px;
}

.woocommerce ul.cart_list li:not(:last-child) {
    border-bottom: none !important;
}

/* MINI CART — NOTE & COUPON BUTTONS */

.pls-minicart-action-btns .pls-minicart-action-btn {
    color: #5A4E45 !important;
    font-weight: 500;
}

/* Panel titles */
.pls-minicart-slide .pls-minicart-block-title {
    color: #5A4E45 !important;
    font-weight: 500;
		font-size: 14px;
	
}
.pls-minicart-coupon .pls-coupon-form > span {
    font-size: 14px !important;
}

/* Note + coupon input fields */
.pls-minicart-slide .pls-order-notes,
.pls-minicart-slide #pls_coupon_code {
    font-size: 14px;
    border: 1px solid #DDD3CC !important;
}

/* Placeholder text */
.pls-minicart-slide .pls-order-notes::placeholder,
.pls-minicart-slide #pls_coupon_code::placeholder {
    font-size: 14px;
}

/* MINI CART — COUPON LOADING */

/* Soften mini cart loading overlay */

.pls-minicart-slide .widget_shopping_cart.active-block::before {
    background-color: rgba(255, 255, 255, 0.5) !important;
}

/* Mini cart coupon input */
.pls-minicart-coupon #pls_coupon_code {
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.pls-minicart-coupon #pls_coupon_code:focus {
    border-color: var(--pls-primary-color) !important;
}

/* Apply coupon */
.pls-minicart-coupon .pls-apply-coupon.loading {
    opacity: 0.5 !important;
    pointer-events: none !important;
}

/* Remove spinner from Apply button */
.pls-minicart-coupon .pls-apply-coupon.loading::before,
.pls-minicart-coupon .pls-apply-coupon.loading::after {
    display: none !important;
    content: none !important;
    animation: none !important;
}


/* Remove coupon — entire footer loads */
.widget_shopping_cart_footer.loading {
    opacity: 0.5 !important;
}

/* Remove the loading spinner/overlay from the footer */
.widget_shopping_cart_footer.loading::before,
.widget_shopping_cart_footer.loading::after {
    display: none !important;
    content: none !important;
    animation: none !important;
}


/* Hide ALL WooCommerce alerts/messages in the mini cart */
.pls-minicart-slide .woocommerce-message,
.pls-minicart-slide .woocommerce-error,
.pls-minicart-slide .woocommerce-info {
    display: none !important;
}

/* Constrain mini-cart item content */
.widget_shopping_cart_body .mini_cart_item {
    min-width: 0 !important;
}

.widget_shopping_cart_body .mini-cart-item-content {
    min-width: 0 !important;
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Reserve space for quantity/price */
.widget_shopping_cart_body .pls-mini-cart-item-data {
    min-width: 0 !important;
    max-width: 100% !important;
    padding-right: 75px !important;
    box-sizing: border-box !important;
}

/* Make mini-cart quantity input narrower */
.widget_shopping_cart_body .pls-mini-cart-item-quantity input.qty {
    max-width: 25px !important;
		min-width: 20px !important;
    padding-left: 1px !important;
    padding-right: 1px !important;
}

.mini-cart-item-quantity .quantity .minus,
.mini-cart-item-quantity .quantity .plus {
    min-width: 25px !important;
    width: 25px !important;
    height: 25px !important;
}

.mini-cart-item-quantity .quantity label::before {
    font-size: 10px;
}

/* CART + MINI CART — TOTALS LABELS */

.pls-minicart-cart-totals .minicart_table th {
    color: var(--pls-link-hover-color);
    font-size: 14px;
    font-weight: 500;
}

/* CART + MINI CART — ORDER TOTAL */

.pls-minicart-cart-totals .minicart_table .order-total td,
.pls-minicart-cart-totals .minicart_table .order-total td strong,
.pls-minicart-cart-totals .minicart_table .order-total td .woocommerce-Price-amount,
.pls-minicart-cart-totals .minicart_table .order-total td .woocommerce-Price-amount bdi,
.pls-minicart-cart-totals .minicart_table .order-total .woocommerce-Price-currencySymbol {
    color: #1f1f1f !important;
    font-size: 18px !important;
    font-weight: 600 !important;
}

/* MINI CART — hide loading overlay/spinner */

.widget_shopping_cart_body .mini_cart_item.loading {
    opacity: 0.5 !important;
}

/* Remove loading overlay */
.widget_shopping_cart_body .mini_cart_item.loading::before,
.widget_shopping_cart_body .mini_cart_item.loading::after {
    display: none !important;
    content: none !important;
}

/* Remove common spinner/loading elements */
.widget_shopping_cart_body .mini_cart_item.loading .loader,
.widget_shopping_cart_body .mini_cart_item.loading .spinner,
.widget_shopping_cart_body .mini_cart_item.loading .loading-icon {
    display: none !important;
}

/* VIEW CART BUTTON Match Checkout styling */

.widget_shopping_cart .woocommerce-mini-cart__buttons a:first-child {
    background-color: var(--pls-checkout-button-bg-color) !important;
    color: var(--pls-checkout-button-color) !important;
}

/* View Cart — hover */

.widget_shopping_cart .woocommerce-mini-cart__buttons a:first-child:hover,
.widget_shopping_cart .woocommerce-mini-cart__buttons a:first-child:focus {
    background-color: var(--pls-checkout-button-bg-hover-color) !important;
}

/*@media (max-width: 992px) {
    .pls-minicart-slide {
        left: auto !important;
        width: 400px !important;
        max-width: 100vw !important;
        min-width: 0 !important;
    }
}*/

/* Product Grid 

body.woocommerce-shop .products.products-wrap {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

body.woocommerce-shop .products.products-wrap .product {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.woocommerce-shop .products.products-wrap .product:nth-child(odd) {
    padding-right: 7.5px !important;
}

body.woocommerce-shop .products.products-wrap .product:nth-child(even) {
    padding-left: 7.5px !important;
} */

/* Shop product labels */

.products.products-wrap .pls-product-labels span {
    display: inline-block;
    border-radius: 999px !important;
    font-size: 9px !important;
    letter-spacing: 1px;
    padding: 3px 10px !important;
}

/* Shop product image zoom on card hover */

.products .pls-product-inner:hover .pls-product-image img {
    transform: scale(1.05);
}

.pls-product-image img.front-image,
.pls-product-image img.hover-image {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}

.products .pls-product-image img {
    transition: transform 0.7s ease;
    width: 100%;
}

/* Shop product category */

.products.products-wrap .pls-product-cats a[rel="tag"] {
    border: none !important;
    background-color: transparent !important;
    color: #f58bc4 !important;
    font-size: 9px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    padding: 0 !important;
    letter-spacing: 1px;
    margin: 0 !important;
    border-radius: 0 !important;
}

/* Shop product title */

.products.products-wrap .pls-product-info .product-title {
    margin: 0 0 4px 0 !important;
    font-family: "DM Serif Display" !important;
    font-size: 16px !important;
    font-weight: 900 !important;
    line-height: 1.375 !important;
    cursor: pointer;
}

.products.products-wrap .pls-product-info .product-title a {
    color: #1a1a1a;
}

.products.products-wrap .pls-product-inner:hover .product-title a {
    color: var(--pls-link-hover-color) !important;
}

/* Shop product price */

.products.products-wrap .pls-product-price .price,
.products.products-wrap .pls-product-price .woocommerce-Price-amount,
.products.products-wrap .pls-product-price .woocommerce-Price-currencySymbol {
    font-family: "DM Serif Display", serif !important;
    font-size: 18px !important;
    font-weight: 900 !important;
}

/* Shop product description */

.products.products-wrap .woocommerce-product-details__short-description p {
    min-height: 40px !important;
    line-height: 20px !important;
}

.products.products-wrap .woocommerce-product-details__short-description {
    display: -webkit-box !important;
    width: 100%;
    flex: 0 0 100%;
    margin: 8px 0 12px;
    order: 3;

    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
}

.products.products-wrap .woocommerce-product-details__short-description p {
    margin: 0 !important;
    color: #8a7d72 !important;
    font-size: 11px !important;
    line-height: 1.625 !important;
    font-weight: 400 !important;
}

/* Shop product tags */

.products.products-wrap .pls-product-tags {
    min-height: 20px;
    margin: 10px 0 !important;
}

.products.products-wrap .pls-product-tags a[rel="tag"] {
    display: inline-block;
    font-size: 8px !important;
    padding: 4px 8px !important;
}

@media (max-width: 767px) {
    .products.products-wrap .pls-product-tags {
        display: none !important;
    }
}

/* Price + Add button */

.products.products-wrap .pls-product-price-cart {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    width: 100%;
}

.products.products-wrap .pls-product-price-cart .pls-product-price {
    flex: 1 1 auto !important;
    min-width: 0 !important;
    white-space: nowrap !important;
    margin-right: 0 !important;
}

.products.products-wrap .pls-product-price-cart .pls-cart-button {
    flex: 0 0 auto !important;
    margin-left: 0 !important;
}

/* Shop — Add button */

.products.products-wrap .pls-cart-button .button {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 8px 16px !important;
    border-radius: 999px !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    transition: all 0.2s ease !important;
}

@media (max-width: 767px) {
	
		.products.products-wrap .pls-cart-button .button {
			font-size: 8px !important;
	}
	
	.products.products-wrap .pls-product-price .price, .products.products-wrap .pls-product-price .woocommerce-Price-amount, .products.products-wrap .pls-product-price .woocommerce-Price-currencySymbol {
		 font-size: 16px !important;
}
	
	.pls-quick-shop-wrapper form.cart .button {
			padding: 4px;
			font-size: 8px !important;
			font-weight: 700;
	}
}

/* Add button plus icon */

.products.products-wrap .pls-cart-button .button::before {
    content: '+' !important;
    font-size: 15px !important;
    font-weight: 400 !important;
}

/* Mini cart item content */

.widget_shopping_cart_body .mini-cart-item-content {
    position: relative !important;
    padding-bottom: 22px !important;
    min-width: 0 !important;
}

/* Remove — bottom of ALL item content */

.widget_shopping_cart_body .mini-cart-item-content .remove.remove_from_cart_button {
    position: absolute !important;
    bottom: -5px !important;
    left: 0 !important;
    font-size: 11px !important;
		font-weight: 400;
    color: #c0a898;
}

/* Move quantity + price to the right */

.widget_shopping_cart_body .mini-cart-item-content .pls-mini-cart-item-quantity {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-end !important;
    width: auto !important;
    max-width: 85px !important;
    min-width: 0 !important;
}

/* Hide Quantity label */

.widget_shopping_cart_body .pls-mini-cart-item-quantity .pls-quantity-label {
    display: none !important;
}

/* Quantity controls */

.widget_shopping_cart_body .pls-mini-cart-item-quantity .mini-cart-item-quantity {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    width: auto !important;
    min-width: 0 !important;
    transform: scale(0.85);
    transform-origin: right center;
}

/* Price underneath the controls */

.pls-mini-cart-item-quantity > span.quantity {
    font-size: 0;
    white-space: nowrap;
}

.pls-mini-cart-item-quantity > span.quantity .woocommerce-Price-amount {
    font-size: 14px;
    margin-right: 5px;
}

.widget_shopping_cart .mini-cart-item-content div.quantity {
    padding: 0;
		margin: 0;
		margin-top: 15px;
}

.up-sells > h2::before {
	content: "More to love";
	display: block !important;
	font-family: "DM Sans";
	text-transform: uppercase;
	letter-spacing: 2px;
	font-weight: 600;
	font-style: normal;
	font-size: 12px;
	color: var(--pls-link-hover-color) !important;
	margin-bottom: 5px !important;
}

/* =========================================
   FREQUENTLY BOUGHT TOGETHER
   ========================================= */

div.summary .pls-bought-together-products .pls-fbt-title, .pls-single-product-page > .pls-bought-together-products .pls-fbt-title {
		font-family: "DM Serif Display";
    font-size: 24px !important;
    font-weight: 700 !important;
}

/* FBT OUTER CONTAINER */

.pls-fbt-products {
	width: 100%;
}

.pls-fbt-product-card.pls-fbt-unselected {
	opacity: 0.5;
}

.pls-fbt-product-card.pls-fbt-unselected:has(input[data-id]:checked) {
	opacity: 1;
	border-color: #f58bc4;
}

/* =========================================
   PRODUCT INFORMATION
   ========================================= */

.pls-fbt-product-card .pls-product-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 12px;
	box-sizing: border-box;
}


/* HIDE INTERNAL CHECKBOX */

.pls-product-info > input[type="checkbox"] {
	display: none;
}


/* =========================================
   PRODUCT CATEGORY
   ========================================= */

.pls-fbt-category {
	display: inline-block;
	align-self: flex-start;
	width: auto;
	margin: 8px 0;
	padding: 5px 9px;
	border-radius: 999px;
	background: #f58bc4;
	color: #fff;
	font-size: 8px;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 1;
	text-transform: uppercase;
	text-align: left;
}


/* =========================================
   PRODUCT TITLE
   ========================================= */

.pls-product-info label {
	display: block;
	align-self: flex-start;
	width: 100%;
	margin-bottom: -6px;
	padding: 0;
	color: #1c1207;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	text-align: left;
	cursor: pointer;
}


/* =========================================
   VARIATION
   ========================================= */

.pls-fbt-variation {
	display: block;
	align-self: flex-start;
	width: 100%;
	margin: 8px 0;
	padding: 0;
	color: #8a7060;
	font-size: 10px;
	font-weight: 400;
	line-height: 1;
	text-align: left;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}


/* =========================================
   PRICE
   ========================================= */

.pls-product-info > .price {
	display: block;
	align-self: flex-start;
	width: 100%;
	margin: 0;
	color: #1c1207;
	font-size: 14px;
	font-weight: 700;
	line-height: 1;
	text-align: left;
}

.pls-product-info > .price .woocommerce-Price-amount {
	font-size: inherit;
	font-weight: inherit;
}

.pls-product-info > .price .woocommerce-Price-currencySymbol {
	font-size: inherit;
}



/* =========================================
   FBT OUTER CONTAINER
   ========================================= */

.pls-fbt-products {
	width: 100%;
	padding: 24px;
	border: 1px solid #e8ddd0;
	border-radius: 24px;
	background: #fff;
	box-sizing: border-box;
}


/* =========================================
   PRODUCT ROW
   ========================================= */

.pls-fbt-images {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 24px minmax(0, 1fr) 24px minmax(0, 1fr);
	align-items: center;
	gap: 5px;
	width: 100%;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-sizing: border-box;
	overflow: visible;
}

/* =========================================
   PRODUCT CARD
   ========================================= */

.pls-fbt-product-card {
	position: relative;
	width: 100%;
	border: 2px solid #e8ddd0;
	border-radius: 16px;
	overflow: hidden;
	background: transparent;
	transition: all 0.2s ease;
	cursor: pointer;
	box-sizing: border-box;
}

.pls-fbt-product-card.pls-fbt-current-item,
.pls-fbt-product-card[data-current-product="true"] {
	border-color: #f58bc4;
	opacity: 1;
}

.pls-fbt-product-card.pls-product-disabled {
	opacity: 0.5;
	cursor: not-allowed;
}


/* =========================================
   IMAGE
   ========================================= */

.pls-fbt-product-image {
	position: relative;
	width: 100%;
	padding-top: 70%;
	overflow: hidden;
	background: #f8f3ef;
}

.pls-fbt-product-image > a {
	display: block;
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
}

.pls-fbt-product-image img {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	border-radius: 0;
}


/* =========================================
   RECOMMENDED PRODUCT CHECKBOX
   ========================================= */

.pls-fbt-product-checkbox {
	position: absolute !important;
	top: 12px !important;
	left: 12px !important;
	z-index: 3;
	width: 24px;
	height: 24px;
	margin: 0;
	padding: 0;
}

.pls-fbt-product-checkbox input {
	position: absolute;
	top: 0;
	left: 0;
	width: 24px;
	height: 24px;
	margin: 0;
	padding: 0;
	opacity: 0;
	cursor: pointer;
	z-index: 2;
}

.pls-fbt-product-checkbox span {
	position: absolute;
	top: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 2px solid #fff;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.85);
	box-sizing: border-box;
	transition: all 0.2s ease;
}

.pls-fbt-product-checkbox input:checked + span {
	border-color: #f58bc4;
	background: #f58bc4;
}

.pls-fbt-product-checkbox input:checked + span:after, .pls-fbt-current-checkbox span:after {
	content: "\ea02";
	font-family: 'presslayouts-font';
	font-size: 8px;
	color: #fff;
}


/* =========================================
   CURRENT ITEM CHECKBOX
   ========================================= */

.pls-fbt-current-checkbox {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 3;
	width: 24px;
	height: 24px;
}

.pls-fbt-current-checkbox span {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 2px solid #f58bc4;
	border-radius: 50%;
	background: #f58bc4;
	box-sizing: border-box;
}


/* =========================================
   THIS ITEM
   ========================================= */

.pls-fbt-this-item {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 3;
	padding: 5px 8px;
	border-radius: 999px;
	background: #1c1207;
	color: #fff;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	line-height: 1;
}


/* =========================================
   OUT OF STOCK
   ========================================= */

.pls-product-info .pls-out-of-stock {
	display: block;
	align-self: flex-start;
	margin-top: 6px;
	color: #8a7060;
	font-size: 11px;
	line-height: 1.3;
	text-align: left;
}


/* =========================================
   PLUS SIGN
   ========================================= */

.pls-fbt-images > .pls-fbt-plus:last-child {
	display: none !important;
}

.pls-fbt-plus {
	width: 24px;
	height: 24px;
	margin: 0;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	align-self: center;
	background: #fce8f3;
	color: #f58bc4;
	font-size: 18px;
	font-weight: 400;
	line-height: 1;
	box-sizing: border-box;
}


/* =========================================
   HIDE OLD LIST
   ========================================= */

.pls-fbt-list-items {
	display: none !important;
}


/* =========================================
   TOTAL / BUTTON
   ========================================= */

.pls-fbt-items-total-button {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 0 0;
	margin-top: 24px;
	border-top: 1px solid #e8ddd0;
	box-sizing: border-box;
}

.pls-fbt-items-total {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.pls-fbt-selected-count {
	margin-bottom: 2px;
	color: #8a7060;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	line-height: 1.2;
}


.pls-fbt-total-price,
.pls-fbt-total-price .woocommerce-Price-amount {
	color: #1c1207;
	font-size: 20px !important;
	font-weight: 600 !important;
	line-height: 1.5;
}

.pls-fbt-total-price .woocommerce-Price-currencySymbol {
	font-size: inherit;
	font-weight: inherit;
}


/* =========================================
   ADD TO CART BUTTON
   ========================================= */

.pls-fbt-items-button {
	margin-left: auto;
}

.pls-fbt-items-button .add-items-to-cart:disabled {
	opacity: 0.4;
	cursor: not-allowed;
}

/* =========================================
   MOBILE FBT
   ========================================= */

@media (max-width: 767px) {
		
	    .pls-fbt-products .pls-product-image {
        margin-bottom: 15px !important;
    }

    .pls-fbt-products .pls-fbt-this-item {
        top: auto;
        right: auto;
        bottom: 5px;
        left: 12px;
    }

    .pls-fbt-products .pls-product-info {
        padding: 5px !important;
        gap: 8px !important;
    }

    .pls-fbt-products .pls-product-info .product-title,
    .pls-fbt-products .pls-product-info .product-title a {
        font-size: 12px !important;
    }

.single-product .summary.entry-summary .pls-product-price .price,
.single-product .summary.entry-summary .pls-product-price .woocommerce-Price-amount,
.single-product .summary.entry-summary .pls-product-price .woocommerce-Price-currencySymbol {
    font-size: 20px !important;
}

    .pls-product-labels {
        top: 10px !important;
        left: 10px !important;
    }

    .pls-product-labels .new {
        font-size: 8px !important;
        padding: 6px 10px !important;
    }

    #comments .commentlist {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}

@media (max-width: 767px) {

	.pls-fbt-items-total .pls-fbt-total-price {
			font-size: 18px !important;
	}
	
	.pls-fbt-images {
		padding: 0;
		gap: 3px !important;
	}

	.pls-fbt-products {
		padding: 16px;
	}

	.pls-fbt-product-card {
		width: 100%;
		min-width: 0;
		max-width: none;
	}

	.pls-fbt-plus {
		align-self: center;
		flex: 0 0 20px;
		width: 20px;
		height: 20px;
		font-size: 14px;
	}

	.pls-fbt-items-total-button {
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		padding-top: 18px;
		gap: 12px;
	}

	.pls-fbt-items-total {
		flex: 1 1 auto;
		width: auto;
		min-width: 0;
	}

	.pls-fbt-items-button {
		flex: 0 0 auto;
		width: auto;
		margin-left: auto;
	}

	.pls-fbt-items-button .add-items-to-cart {
		width: auto;
		padding: 12px 18px;
	}

}

/* You May Also Like */

.up-sells.products .woocommerce-product-details__short-description {
		margin: 10px 0;
		height: 20px !important;
}

/*End of Product page Customizations */

/* ========================================
   IN OUR OVEN — ACCOUNT PAGE
======================================== */

.woocommerce {
    background: transparent;
}

/* ========================================
   ACCOUNT LAYOUT
======================================== */

.woocommerce-account .MyAccount-navigation-wrapper {
    padding: 0 3rem !important;
    max-width: 25%;
}

.woocommerce-account .woocommerce-MyAccount-content {
    max-width: 65% !important;
		padding-left: 0 !important;
}

/* ========================================
   ACCOUNT PROFILE
======================================== */

.MyAccount-navigation-wrapper .pls-user-profile .user-info {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.MyAccount-navigation-wrapper .pls-user-profile .user-email {
    margin: 4px 0 0;
    color: #8a7d72;
    font-size: 13px;
    line-height: 1.3;
}

.woocommerce-account .pls-user-profile {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 18px !important;
}

/* Avatar */

.MyAccount-navigation-wrapper .pls-user-profile .user-avatar img {
    display: none !important;
}

.MyAccount-navigation-wrapper .pls-user-profile .user-avatar {
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    border-radius: 50%;
    background: #fde8f3;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.MyAccount-navigation-wrapper .pls-user-profile .user-avatar::before {
    content: attr(data-initial);
    font-size: 20px;
		font-family: "Fraunces";
    font-weight: 900 !important;
    color: #f58bc4;
}

/* Name */

.MyAccount-navigation-wrapper .display-name {
    margin: 0;
    font-size: 24px !important;
		font-family: "Fraunces";
    font-weight: 900 !important;
		letter-spacing: -1px;
}

/* ========================================
   ACCOUNT SIDEBAR
======================================== */

.woocommerce-MyAccount-navigation {
    width: 100%;
    padding: 0;
    background: #fff;
        border: 1px solid var(--pls-border-color) !important;
    border-radius: 20px !important;
    box-shadow: 0 3px 12px rgba(58, 51, 48, 0.06) !important;
    border-radius: 16px;
    overflow: hidden;
		
}

.woocommerce-MyAccount-navigation li a:before {
    font-size: 14px;
    color: rgb(176, 164, 154) !important;
}

.woocommerce-MyAccount-navigation ul li a {
    display: block;
    padding: 14px 18px;
    color: #5a4e45;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.4;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 0;
}

.woocommerce-MyAccount-navigation ul li a:hover {
    background: #faf6f0;
    color: #f58bc4;
}

.woocommerce-MyAccount-navigation ul li.is-active a {
    background: #fde8f3;
    color: #f58bc4;
}

/* Log out */

.woocommerce-MyAccount-navigation
.woocommerce-MyAccount-navigation-link--customer-logout {
    margin-top: 0;
    border-top: 1px solid #f2ebe0;
}

.woocommerce-MyAccount-navigation
.woocommerce-MyAccount-navigation-link--customer-logout a {
    color: #b0a49a !important;
    background: transparent !important;
}

.woocommerce-MyAccount-navigation
.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
    color: #f58bc4 !important;
    background: transparent !important;
    text-decoration: none !important;
}

/* ========================================
   ACCOUNT CONTENT
======================================== */

.woocommerce-MyAccount-content {
    width: 100%;
    min-width: 0;
    margin: 0;
}

.woocommerce-MyAccount-content p {
    color: #5a4e45;
    font-size: 14px;
    line-height: 1.7;
}

/* ========================================
   ACCOUNT BUTTONS
======================================== */

.woocommerce-account .button,
.woocommerce-account .btn,
.woocommerce-account button,
.woocommerce-account input[type="button"],
.woocommerce-account input[type="submit"] {
    padding: 10px 20px !important;
}

/* ========================================
   ACCOUNT SECTION HEADINGS
======================================== */

.woocommerce-account .woocommerce-MyAccount-content form > h2,
.woocommerce-account .woocommerce-MyAccount-content .section-title h2 {
    font-size: 28px;
    font-weight: 600;
}

.woocommerce-account .woocommerce-MyAccount-content #payment::before {
    font-family: "DM Serif Display", serif !important;
    font-size: 28px !important;
    font-weight: 400 !important;
    font-style: normal;
    line-height: 1.2;
    color: #1F1F1F;
    text-transform: capitalize;
    display: block;
    margin-bottom: 16px;
    white-space: nowrap;
}

/* ========================================
   SHARED ACCOUNT FORM STYLES
======================================== */

.woocommerce-account .woocommerce-address-fields, .woocommerce-account .woocommerce-EditAccountForm {
    padding: 3rem !important;
    background-color: #fff !important;
    border: 1px solid var(--pls-border-color) !important;
    border-radius: 20px !important;
    box-shadow: 0 3px 12px rgba(58, 51, 48, 0.06) !important;
    box-sizing: border-box !important;
}

/* Field spacing */

.woocommerce-account form .form-row {
    margin-bottom: 18px;
}

/* Labels */

.woocommerce-account form .form-row label {
    font-size: 13px;
    font-weight: 500;
    color: #1f1f1f;
}

/* Optional text */

.woocommerce-account form .form-row label .optional,
.woocommerce-account form .form-row > span > em,
.woocommerce-account form .form-row #account_display_name_description {
    font-size: 12px;
    font-weight: 400;
    color: #888;
}

/* Required asterisk */

.woocommerce-account form .form-row label .required {
    color: #f58bc4;
}

/* Inputs, selects & textareas */

.woocommerce-account form .form-row input.input-text,
.woocommerce-account form .form-row input[type="text"],
.woocommerce-account form .form-row input[type="tel"],
.woocommerce-account form .form-row input[type="email"],
.woocommerce-account form .form-row input[type="number"],
.woocommerce-account form .form-row input[type="password"],
.woocommerce-account form .form-row select,
.woocommerce-account form .form-row textarea {
    width: 100% !important;
    min-height: 48px;
    padding: 11px 14px !important;
    background: #fff;
    border: 1.5px solid #e8dfd4 !important;
    border-radius: 10px !important;
    color: var(--pls-input-color);
    font-size: 14px;
    box-sizing: border-box;
    transition: border-color .2s ease, box-shadow .2s ease;
}

/* Placeholder */

.woocommerce-account form .form-row input::placeholder,
.woocommerce-account form .form-row textarea::placeholder {
    color: #aaa;
    opacity: 1;
}

/* Focus */

.woocommerce-account form .form-row input.input-text:focus,
.woocommerce-account form .form-row select:focus,
.woocommerce-account form .form-row textarea:focus {
    border-color: var(    --pls-primary-color) !important;
    outline: none;
}

.woocommerce-account form > p:last-child {
    margin-top: 24px !important;
}


/* ========================================
   ACCOUNT DETAILS — HELP TEXT
======================================== */

.woocommerce-account .woocommerce-EditAccountForm
#account_display_name_description,
.woocommerce-account .woocommerce-EditAccountForm
.woocommerce-form-row > span > em {
    display: block;
    margin-top: 6px;
    line-height: 1.5;
}

/* ========================================
   ACCOUNT DETAILS — PASSWORD SECTION
======================================== */

.woocommerce-account .woocommerce-EditAccountForm fieldset {
    margin: 28px 0 24px;
    padding: 24px;
    border: 1px solid #f2ebe0;
    border-radius: 16px;
}

.woocommerce-account .woocommerce-EditAccountForm fieldset legend {
    padding: 0 20px;
    font-family: "DM Serif Display";
    font-size: 18px;
}

.woocommerce-account .woocommerce-EditAccountForm .password-input {
    display: block;
    position: relative;
}

.woocommerce-account .woocommerce-EditAccountForm
.password-input input {
    padding-right: 48px !important;
}

/* ========================================
   ADDRESS CARDS
======================================== */

/* Address cards */

.woocommerce-account .woocommerce-Addresses {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    column-gap: 10px !important;
    row-gap: 10px !important;
    width: 100% !important;
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
    width: 100% !important;
    max-width: none !important;
    flex: none !important;
    margin: 0;
    padding: 24px;
    background: #fff;
    border: 1px solid #f2ebe0;
    border-radius: 16px;
    box-sizing: border-box;
}

/* Address header */

.woocommerce-account .woocommerce-Address-title {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    margin: 0 0 18px;
}

.woocommerce-account .woocommerce-Address-title h2 {
    margin: 0;
    font-family: var(--pls-primary-font);
    font-size: 16px;
    line-height: 1.3;
    font-weight: 800;
    color: #1a1a1a;
}

/* Add / Edit link */

.woocommerce-account .woocommerce-Address-title .edit {
    font-size: 11px;
    font-weight: 700 !important;
    line-height: 1.3;
    text-transform: uppercase;
}

.woocommerce-account .woocommerce-Address-title .edit::before {
    font-size: 11px !important;
}

/* Address text */

.woocommerce-account .woocommerce-Address address {
    margin: 0;
    padding: 18px 0 0;
    border-top: 1px solid #f2ebe0;
    color: #8a7d72;
    font-size: 13px;
    font-style: normal;
    line-height: 1.6;
}

/* ========================================
   ADDRESS FORM
======================================== */

/* Form field wrapper */

.woocommerce-account .woocommerce-address-fields__field-wrapper {
    padding: 20px 0;
}

/* ========================================
   SELECT2 — PARISH
======================================== */

.woocommerce-account .woocommerce-address-fields
.select2-container {
    width: 100% !important;
}

.woocommerce-account .woocommerce-address-fields
.select2-container .select2-selection--single {
    height: 48px;
    min-height: 48px;
    display: flex;
    align-items: center;
    padding: 0 14px !important;
}

.woocommerce-account .woocommerce-address-fields
.select2-container .select2-selection__rendered {
    padding: 0;
    font-size: 14px;
    color: var(--pls-input-color);
}

.woocommerce-account .woocommerce-address-fields
.select2-container .select2-selection__placeholder {
    color: #aaa;
}

.woocommerce-account .woocommerce-address-fields
.select2-container--focus .select2-selection--single,
.woocommerce-account .woocommerce-address-fields
.select2-container--open .select2-selection--single {
    border-color: var(--pls-secondary-color) !important;
    outline: none;
}

/* ========================================
   VALIDATED FIELDS
======================================== */

.woocommerce-account form .form-row.woocommerce-validated
.select2-container,
.woocommerce-account form .form-row.woocommerce-validated
input.input-text,
.woocommerce-account form .form-row.woocommerce-validated
select {
    border-color: var(--pls-border-color);
}

.woocommerce-account form .form-row.woocommerce-validated
input.input-text:focus,
.woocommerce-account form .form-row.woocommerce-validated
select:focus,
.woocommerce-account form .form-row.woocommerce-validated
.select2-container--focus .select2-selection--single,
.woocommerce-account form .form-row.woocommerce-validated
.select2-container--open .select2-selection--single {
    border-color: var(--pls-secondary-color) !important;
}

/* ========================================
   PAYMENT METHOD
======================================== */

.woocommerce-account #add_payment_method #payment {
    background-color: transparent;
}

/* Payment methods card */

.woocommerce-account #add_payment_method .woocommerce-PaymentMethods {
    margin: 0 !important;
    padding: 3rem !important;
    background: #fff !important;
    border: 1px solid var(--pls-border-color) !important;
    border-radius: 20px !important;
    box-shadow: 0 3px 12px rgba(58, 51, 48, 0.06) !important;
    box-sizing: border-box !important;
    list-style: none;
}

/* Payment method */

.woocommerce-account #add_payment_method
.woocommerce-PaymentMethods .woocommerce-PaymentMethod {
    margin: 0 !important;
    padding: 0 !important;
}

/* Card label */

.woocommerce-account #add_payment_method
.woocommerce-PaymentMethod > label {
    margin-bottom: 18px;
}

/* Payment box */

.woocommerce-account #add_payment_method
.woocommerce-PaymentBox {
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
}

/* Stripe fieldset */

.woocommerce-account #add_payment_method
.woocommerce-PaymentBox fieldset.wc-payment-form {
    padding: 20px !important;
    margin: 0 !important;
}

/* Add payment button area */

.woocommerce-account #add_payment_method
.woocommerce-Payment > .form-row {
    margin: 24px 0 0;
}

/* Add payment button */

.woocommerce-account #add_payment_method
#place_order {
    padding: 10px 24px !important;
    border-radius: 999px !important;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* Disabled payment button */

.woocommerce-account #add_payment_method
#place_order:disabled,
.woocommerce-account #add_payment_method
#place_order.disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.woocommerce-account .woocommerce-EditAccountForm .show-password-input {
    background: transparent !important;
}

.woocommerce-account .woocommerce-EditAccountForm .show-password-input::after {
    font-size: 14px !important;
    color: rgb(176, 164, 154) !important;
}

@media (max-width: 1067px) {
    .woocommerce-account.logged-in .entry-content > .woocommerce:not(.pls-element) {
        flex-flow: column !important;
    }

    .woocommerce-account .MyAccount-navigation-wrapper {
        max-width: 100% !important;
    }

    .woocommerce-account .woocommerce-MyAccount-content {
        max-width: 90% !important;
				margin: 0 auto;
    }
	
	.woocommerce-account .woocommerce-Addresses {
        grid-template-columns: 1fr !important;
			margin: 0 auto;
    }
}

/*Custom recipe customizations */

.wp-block-wpzoom-recipe-card-block-recipe-card.is-style-default.custom-recipe .recipe-card-image figure img {
	border-radius: 20px 20px 0 0 !important;
}

.custom-recipe {
    max-width: 100% !important;
		margin: 0 auto !important;
    border: none !important;
    box-shadow: none !important;
	background-color: var(--e-global-color-4e07176) !important;
}

#wpzoom-recipe-card.custom-recipe .recipe-card-title {
    font-family: "DM Serif Display";
    font-weight: 800;
		font-size
}

.custom-recipe .ingredients-list > li .tick-circle {
	border-radius: 4px !important;
	border-color: #736458 !important;
	box-shadow: none !important;
}

.custom-recipe .ingredients-list > li .tick-circle:hover {
		border-color: var(--pls-button-bg-hover-color) !important;
}

.wp-block-wpzoom-recipe-card-block-recipe-card.custom-recipe.is-style-default .ingredients-list > li.ticked .tick-circle {
	border-radius: 4px !important;
	border: 2px solid var(--pls-button-bg-hover-color) !important;
	background: var(--pls-button-bg-hover-color) !important;
}

.wp-block-wpzoom-recipe-card-block-recipe-card.custom-recipe.is-style-default .ingredients-list > li.ticked .tick-circle::after {
	content: '';
    width: 5px;
    height: 9px;
    border-right: 2.5px solid white;
    border-bottom: 2.5px solid white;
    transform: rotate(45deg);
    position: absolute;
    left: 5px;
    top: 2px;
    border-radius: 1px;
}

.custom-recipe .ingredients-list > li.ingredient-item {
	border-bottom: none !important;
}

.custom-recipe .recipe-card-ingredients {
	background-color: transparent !important;
}

.wp-block-wpzoom-recipe-card-block-recipe-card.custom-recipe.is-style-default .recipe-card-ingredients {
    color: var(--pls-text-color) !important;
}

.wp-block-wpzoom-recipe-card-block-recipe-card.custom-recipe.is-style-default .ingredients-list > li.ticked .ingredient-item-name.is-strikethrough-active {
    text-decoration: line-through;
    color: var(--e-global-color-b0fe05e) !important;
}

.custom-recipe .recipe-card-notes ul>li {
	background-color: var(--pls-secondary-color) !important;
}

.custom-recipe .btn-pinit-link {
	background-color: var(--e-global-color-primary) !important;
}

.custom-recipe .btn-pinit-link:hover {
	opacity: 1 !important;
	background-color: var(--pls-button-bg-hover-color) !important;
		cursor: pointer !important;
}

/*.custom-recipe .recipe-card-notes ul>li {
		margin: 0 auto !important;
}*/

.custom-recipe .directions-list>li {
		margin: 0 0 25px !important;
}
.custom-recipe .detail-item-icon {
		color: var(--pls-button-bg-hover-color) !important;
}

.custom-recipe .directions-list>li::before {
		color: var(--e-global-color-primary) !important;
}

.custom-recipe .recipe-card-notes ul>li::before {
		background-color: var(--e-global-color-primary) !important;
}

/*End of custom recipe customization*/

/*Newsletter customizations*/
.pls-site-footer a:hover{
	color: var(--pls-button-bg-hover-color) !important;
}
.button, .btn, button, input[type="button"], input[type="submit"] {
		
}
.sib-default-btn {
		padding: 15px;
    margin: 0 auto 0 0;
    width: 100%;
    border: none;
    border-radius: 30px !important;
    background: var(--pls-button-bg-color); 
    font-size:15px !important;
    font-weight:bold !important;
    text-transform:uppercase;
    cursor:pointer;
    transition:.3s;
    line-height: 1.5;
    height: auto;
    color: #ffffff;
		/*font-family: "Montserrat", sans-serif !important;*/
}

/* Newsletter email field */
.sib-email-area input[type="email"]{
    width:100%;
		border: 1px solid #e0d8cf;
    background: #ffffff;
    cursor: pointer;
    transition: border-color 0.2s ease, background-color 0.2s ease, color 0.2s ease;
    border-radius:40px;
    box-sizing:border-box;
    font-size:15px;
		padding: 15px;
    margin: 0 auto 0 0;
    line-height: 1.5;
    height: auto;
}

.sib-email-area input[type="email"]:focus {
    outline: none;
    border-color: var(--e-global-color-primary);
}

.newsletter-note{
    margin-top:25px;
    text-align:center;
    font-size:12px;
    /*font-style:italic;*/
}

.newsletter-note a{
    color: var(--pls-button-bg-color);
}

.newsletter-note a:hover{
    color: var(--pls-button-bg-hover-color);
}


.header-search-icon:before, .pls-header-myaccount > a:before,
.pls-header-cart .pls-header-cart-icon:before, .pls-header-cart .pls-header-cart-icon:before, .pls-header-wishlist .pls-header-wishlist-icon:before, .pls-store-location-icon:before  {
    font-size: 16px !important;
    font-weight: 600 !important;
}

/*header icon customization*/
.pls-header-main .pls-social.icons-shape-circle.icons-size-small a, .pls-header-cart-icon, .user-myaccount {
	background-color: transparent !important;
}


/*mobile menu customizations*/

.mobile-primary-menu, .mobile-categories-menu {
		margin: 25px;
}

/*calc(100% - 110px)*/

.mobile-main-menu li.menu-item-has-children > a:after {
    font-size: 12px;
    position: absolute;
    left: auto;
    top: calc(50% - 10px);
}

ul.mobile-main-menu li.menu-item-has-children > a::after {
    content: "\e9d2";
}

ul.mobile-main-menu li.menu-item-has-children.open > a::after {
    content: "\e9d1";
}

ul.mobile-main-menu li.menu-item-has-children {
    position: relative;
}

ul.mobile-main-menu .pls-mobile-submenu {
    background-color: transparent;
    position: relative;
    width: 100%;
    height: auto;
    max-height: 0;
    padding: 0 20px;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    transform: translateY(-10px);
    transition: max-height 0.25s ease, opacity 0.25s ease, transform 0.25s ease, visibility 0.25s ease;
}

ul.mobile-main-menu li.open > .pls-mobile-submenu {
    max-height: inherit;
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

ul.mobile-main-menu ul.sub-menu {
    padding-top: 5px;
}

.mobile-main-menu .pls-menu-back {
	display: none !important;
}

ul.mobile-main-menu .pls-mobile-submenu > ul.sub-menu {
		margin: 0 25px;
		width: 90%;
    background-color: transparent;
}

/*ul.mobile-main-menu .pls-mobile-submenu, ul.mobile-main-menu > li.mobile-dropdown {
    background-color: #f9a4d2;
}*/

#menu-mobile-menu li.log-in,
#menu-mobile-menu li.log-out {
    position: absolute !important;
    bottom: 100.5px;
    left: 0;
    width: 100% !important;
    text-align: center;
}

#menu-mobile-menu li.open ~ li.log-in,
#menu-mobile-menu li.open ~ li.log-out {
    position: static !important;
    width: 100% !important;
    text-align: center;
}

#menu-mobile-menu li.log-in a,
#menu-mobile-menu li.log-out a {
    background-color: #f9a4d2;
    border-radius: 40px;
    padding: 10px 25px;
		color: #fff !important;
		font-weight: 600;
}

#menu-mobile-menu li.log-in a:hover,
#menu-mobile-menu li.log-out a:hover {
    background-color: var(--pls-button-bg-hover-color);
}

/* Logged out: hide Log Out */
body:not(.logged-in) #menu-mobile-menu li.log-out {
    display: none;
}

/* Logged in: hide Log In */
body.logged-in #menu-mobile-menu li.log-in {
    display: none;
}

/*hide account menu items*/
.pls-myaccount-items {
    display: none !important;
}

/* Hide the social link text */
.pls-mobile-menu .mobile-main-menu .social .pls-menu-text {
    display: none;
}

/* Keep mobile social menu items horizontal */
.pls-mobile-menu .mobile-main-menu .social li.menu-item-type-custom {
    display: inline-flex;
    width: 0;
}

/*full height and width when expanded*/
.mobile-primary-menu #menu-mobile-menu {
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
}

ul.mobile-main-menu > li {
    padding: 5px;
    margin-bottom: 5px;
}

.pls-mobile-menu .mobile-main-menu li.menu-item-type-custom .nav-link i {
    font-size: 20px !important;
    color: var(--pls-heading-color) !important;
}

.pls-mobile-menu .mobile-main-menu li.menu-item-type-custom .nav-link i:hover {
    color: var(--pls-secondary-inverse-color) !important;
}

#menu-mobile-menu {
    --social-gap: 40px;
}

#menu-mobile-menu li.open ~ li.social-tiktok,
#menu-mobile-menu li.open ~ li.social-instagram,
#menu-mobile-menu li.open ~ li.social-youtube,
#menu-mobile-menu li.open ~ li.social-facebook,
#menu-mobile-menu li.open ~ li.social-pinterest,
#menu-mobile-menu li.open ~ li.social-whatsapp {
    bottom: auto;
}

#menu-mobile-menu li.social-tiktok,
#menu-mobile-menu li.social-instagram,
#menu-mobile-menu li.social-youtube,
#menu-mobile-menu li.social-facebook,
#menu-mobile-menu li.social-pinterest,
#menu-mobile-menu li.social-whatsapp {
    position: absolute !important;
    bottom: 40.5px;
    left: calc(50% - 25px);
    width: 50px !important;
}

#menu-mobile-menu li.social-tiktok {
    transform: translateX(calc(var(--social-gap) * -2.5));
}

#menu-mobile-menu li.social-instagram {
    transform: translateX(calc(var(--social-gap) * -1.5));
}

#menu-mobile-menu li.social-youtube {
    transform: translateX(calc(var(--social-gap) * -0.5));
}

#menu-mobile-menu li.social-facebook {
    transform: translateX(calc(var(--social-gap) * 0.5));
}

#menu-mobile-menu li.social-pinterest {
    transform: translateX(calc(var(--social-gap) * 1.5));
}

#menu-mobile-menu li.social-whatsapp {
    transform: translateX(calc(var(--social-gap) * 2.5));
}

/*Remove tiny margin on mobile*/
.pls-header-mobile .pls-header-col {
	margin: 0px !important;
}

/*match mobile menu to desktop*/
.mobile-primary-menu .mobile-main-menu .menu-item-object-page a, .mobile-primary-menu .mobile-dropdown a, .mobile-primary-menu .mobile-main-menu li.log-in a,
.mobile-primary-menu .mobile-main-menu li.log-out a  {
    font-family: "DM Sans";
    text-transform: uppercase;
    letter-spacing: 2px;
    font-weight: 500;
    font-style: normal;
    font-size: 15px;
		color: #1F1F1F;
}

.mobile-primary-menu .mobile-main-menu .menu-item-object-page a:hover, .mobile-primary-menu .mobile-dropdown a:hover{
    color: var(--pls-header-link-hover-color);
}

/*remove border-bottom from menu items*/

.pls-main-navigation ul.menu > li > a .pls-menu-text::after {
    display: none !important;
}


/*Hide unwanted social icons*/
.pls-header-main .social-facebook {
		font-size: 0px !important; 
    width: 0px !important;
    height: 0px !important;
}

.pls-header-main .social-whatsapp {
		font-size: 0px !important; 
    width: 0px !important;
    height: 0px !important;
}

.pls-header-main .social-pinterest {
		font-size: 0px !important; 
    width: 0px !important;
    height: 0px !important;
}

/*Additional header adjustments*/
.menu-item {
	padding-right: 50px;
}

.pls-header-col-right {
    flex: 1;
    justify-content: flex-end;
    margin-right: 50px !important;
}

/*Inherit header color*/
.pls-mobile-menu, .pls-mobile-categories-menu {
	background-color: var(--pls-mobile-header-background-color);
}

/*Modify default post style*/
.cat-links {
    display: inline-block;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 1px;
    text-align: center;
    padding: 6px 16px !important;
}

.cat-links:hover {
    background-color: var(--pls-button-bg-hover-color);
}

.entry-title {
		font-size: 60px !important;
		margin-top: 15px !important;
}

.entry-header {
    margin-bottom: 24px !important;
}

@media (max-width: 767px) {
		.entry-title {
		font-size: 48px !important;
	}

	.entry-header {
    	margin-bottom: 12px !important;
	}
}

a[rel="tag"] {
		border-radius: calc(infinity * 1px);
		border: 1px solid var(--pls-button-bg-hover-color) !important;
		background-color: transparent !important;
		color: var(--pls-button-bg-hover-color) !important;
		font-size: 9px !important;
    font-weight: 600 !important;
		text-transform:uppercase;
		padding: 8px 16px;
    letter-spacing: 1px;
		margin-bottom: 5px !important;
    margin-right: 5px !important;
}

a[rel="tag"]:hover {
		background-color: var(--pls-button-bg-hover-color) !important;
		color: #fff !important;
}

.pls-tags-title {
    color: var(--e-global-color-58e7dde);
		font-weight: 500 !important;
		font-size: 12px;
}

#comments{
    background-color: var(--pls-secondary-color) !important;
    border-radius: 40px;
    padding: 20px;
}

.comment-respond {
    background-color: transparent;
}

.comment-respond .comment-reply-title {
    display: inline;
}

#commentform {
    margin-top: 30px !important;
}

#comments .comment-reply-title {
    font-family: "Fraunces", Sans-serif;
    font-size: 24px;
    font-weight: 800;
}

#comments .logged-in-as a {
		color: var(--pls-button-bg-hover-color) !important;
}

#comments .logged-in-as a:hover {
		text-decoration: underline;
}

#comments .logged-in-as {
		color: var(--e-global-color-text) !important;
}

#comment.form_control:focus {
    border-color: var(--pls-secondary-inverse-color);
}

.comment-form .submit {
	border-radius: calc(infinity * 1px);
		border: 2px solid var(--pls-secondary-inverse-color) !important;
		color: var(--pls-secondary-inverse-color);
		background-color: transparent;
    font-weight: 600 !important;
    letter-spacing: 1px;
		font-size: 12px;
}

.comment-form .submit:hover {
		color: #fff;
		background-color: var(--pls-secondary-inverse-color);
		cursor: pointer !important;
}

/*End of modify default post style*/

/*side bar customization*/
.side-bar-profile .e-link-in-bio {
    padding: 40px 20px !important;
		border-radius: 20px !important;
    overflow: hidden;
}

.side-bar-profile .e-link-in-bio__icons {
		gap: 10px;
}

.side-bar-profile .e-link-in-bio__icon-svg svg {
    width: 20px !important;
    height: 20px !important;
}

.e-link-in-bio__ctas {
    display: grid;
    gap: 15px;
}
.side-bar-profile .e-link-in-bio__icon-svg svg:hover {
    color: var(--pls-button-bg-hover-color) !important;
	cursor: pointer;
}

.side-bar-profile .e-link-in-bio__cta:hover .e-link-in-bio__cta-text {
    background: var(--pls-button-bg-hover-color) !important;
	cursor: pointer;
}
/*End of sidebar profile customizations*/

.elementor-element-ab6552e.side-bar-blog .pls-blog .entry-title {
    font-size: 12px !important;
		font-weight: 600;
		font-family: var(--e-global-typography-primary-font-family);
}

.elementor-element-ab6552e.side-bar-blog .pls-blog .entry-title a{
		color: var(--e-global-color-text) !important;
		letter-spacing: normal !important;
}

.elementor-element-ab6552e.side-bar-blog .pls-blog .entry-header {
		margin-bottom: 0px !important;
}

.side-bar-blog .entry-footer {
    margin-top: 0 !important;
}

.elementor-element-ab6552e.side-bar-blog .pls-blog .blog-post-loop {
		margin-bottom: 0px !important;
		padding: 5px 10px;
}

.elementor-element-ab6552e.side-bar-blog .pls-blog .cat-links {
    display: inline-block;
    font-size: 8px !important;
    font-weight: 700 !important;
    letter-spacing: 1px;
    text-align: center;
    padding: 4px 10px !important;
}

.elementor-element-ab6552e.side-bar-blog .pls-blog .cat-links:hover {
    background-color: var(--pls-button-bg-hover-color);
}

/* Disable the global hover effect inside the sidebar */
.side-bar-blog .entry-post .post-thumbnail a img {
    transform: none !important;
}

/* Enable hover only when THIS sidebar entry-post is hovered */
.side-bar-blog .entry-post:hover .post-thumbnail a img {
    transform: scale(1.05) !important;
}

/* Remove the global overlay inside the sidebar */
.side-bar-blog .entry-post .post-thumbnail a::after {
    background-color: transparent !important;
}

/* Enable overlay only when THIS sidebar entry-post is hovered */
.side-bar-blog .entry-post:hover .post-thumbnail a::after {
    background-color: rgba(0, 0, 0, 0.3) !important;
}

.side-bar-blog .post-thumbnail {
    aspect-ratio: 1 / 1;
    overflow: hidden;
}

.side-bar-blog .post-thumbnail a {
    display: block;
    width: 100%;
    height: 100%;
}

.side-bar-blog .post-thumbnail a img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.side-bar-tags .tag-social-share {
		margin-bottom: 0 !important;
}

.side-bar-tags .pls-tags-title {
		display: none;
}

.side-bar-order-promo {
    position: relative;
    overflow: hidden;
}

.side-bar-order-promo .elementor-widget-image {
    position: absolute;
    top: 5%;
    right: 5%;
}

/*.sticky-side-bar {
    position: sticky;
    top: 100px;
    align-self: flex-start;
		margin-bottom: 400vh;
}*/

/*End of side bar customizations*/

.image-radius img {
		border-radius: 20px;
}

/* GENERAL STYLE */

/*.pls-header-myaccount:hover .pls-myaccount-items {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translateY(0) !important;
}*/

/* SEARCH RESULTS — HIDE DESCRIPTIONS */

/*.search-results .blog-post-loop .entry-content {
    display: none !important;
}*/

/* CUSTOM ARCHIVES — PREVENT INITIAL FLASH */

.pls-content-area .articles-list {
    opacity: 0;
    transition: opacity 1s ease;
}

.pls-content-area .pls-blog .articles-list {
    opacity: 1;
}

.custom-recipe-grid .articles-list {
    opacity: 1;
}

.search-results .blog-post-loop .entry-content {
    height: 60px;
    overflow: hidden;
}

/* Search Results — Repeating Staggered Float Up */

.custom-recipe-grid article.blog-post-loop {
    opacity: 0;
    transform: translateY(20px);
    animation: searchResultFloatUp 0.6s ease forwards;
}

/* Repeat the 3-result stagger */
.custom-recipe-grid article.blog-post-loop:nth-of-type(3n + 1) {
    animation-delay: 0.05s;
}

.custom-recipe-grid article.blog-post-loop:nth-of-type(3n + 2) {
    animation-delay: 0.15s;
}

.custom-recipe-grid article.blog-post-loop:nth-of-type(3n) {
    animation-delay: 0.25s;
}

@keyframes searchResultFloatUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Accessibility */
@media (prefers-reduced-motion: reduce) {
    .custom-recipe-grid article.blog-post-loop {
        opacity: 1;
        transform: none;
        animation: none;
    }
}

/* SEARCH / ARCHIVE CATEGORY PILL
*/

.entry-category .cat-links {
    background-color: var(--pls-primary-color) !important;
    border: none !important;
    color: var(--pls-primary-inverse-color) !important;
}

.entry-category .cat-links:hover {
    background-color: var(--pls-primary-color) !important;
    color: var(--pls-primary-inverse-color) !important;
}

.pls-slider-navigation .pls-slider-prev,
.pls-slider-navigation .pls-slider-next,
.pls-product-slider-nav .pls-gallery-slider-prev,
.pls-product-slider-nav .pls-gallery-slider-next {
    border: none !important;
}

#pls-search-popup .pls-ajax-search .search-submit {
    height: 60px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Search Results — Floating Product / Recipe CTA */

#primary.custom-recipe-grid .read-more-btn {
    margin: 0 !important;
    position: absolute;
    right: 14px;
    bottom: 100px;
    z-index: 3;
}

/* Desktop */
@media (min-width: 992px) {
    #primary.custom-recipe-grid .read-more-btn {
        bottom: 225px;
    }
}

#primary.custom-recipe-grid .entry-post {
    position: relative;
}

#primary.custom-recipe-grid article.product .read-more-btn .more-link::after {
    content: '→';
    font-size: 13px;
}

/* Recipe / Shop */
#primary.custom-recipe-grid article.post:not(.product) .read-more-btn .more-link, #primary.custom-recipe-grid article.product .read-more-btn .more-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 9px 13px;
    background: #fff5f9;
    border-radius: 14px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    box-shadow: 0 6px 18px rgba(58, 51, 48, 0.10);
    transition: all 0.2s ease;
}

#primary.custom-recipe-grid article.post:not(.product) .read-more-btn .more-link::after {
    content: '→';
    font-size: 13px;
}

/* Hover */
#primary.custom-recipe-grid article.product .read-more-btn .more-link:hover {
    transform: translateY(-2px);
}

#primary.custom-recipe-grid article.post:not(.product) .read-more-btn .more-link:hover {
    background: #fdeaf3;
    transform: translateY(-2px);
}

/* Theme hover override */
#primary.custom-recipe-grid:not(.side-bar-blog *) .more-link:hover {
    background-color: var(--pls-primary-color) !important;
    color: var(--pls-primary-inverse-color) !important;
}

.ajax-search-style-1 .search-submit:before {
    font-size: 18px;
}

.pls-search-popup .pls-ajax-search .search-field, .pls-search-popup .pls-ajax-search select {
        font-size: 16px;
}

/* SEARCH POPUP — PRODUCT SECTION HEADING */

#pls-search-popup .pls-products-grid-slider .section-heading {
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    text-align: center !important;
}

#pls-search-popup .pls-products-grid-slider .section-heading h2 {
    width: 100% !important;
    margin: 0 auto !important;
    text-align: center !important;
}

#pls-search-popup .pls-products-grid-slider .section-heading h2 {
    font-family: "Helvetica", Sans-serif !important;
    font-weight: 600 !important;
    text-transform: lowercase !important;
    letter-spacing: -2.1px !important;
		font-size: 40px !important;
}

/* SEARCH POPUP — CLOSE BUTTON */

.mfp-close-btn-in .mfp-close {
    background-color: transparent !important;
    color: var(--pls-input-color) !important;
		border-radius: 50% !important;
}

.pls-close-btn:hover,
.mfp-close-btn-in .mfp-close:hover {
    background-color: transparent !important;
    color: var(--pls-link-color) !important;
}

.pls-ajax-search .autocomplete-suggestions {
    background: #FFFFFF;
}

.pls-ajax-search .autocomplete-suggestion a,
.pls-ajax-search .autocomplete-suggestion .search-name {
    color: #3A3330 !important;
}

.pls-ajax-search .autocomplete-suggestion strong {
    color: #3A3330 !important;
    background: #FDEAF3;
    font-weight: 600;
    padding: 2px 1px;
    border-radius: 4px;
}

.pls-ajax-search .autocomplete-suggestion:hover {
    background: #FFF5F9;
}

#pls-search-popup .products.products-wrap .pls-cart-button .button::before {
    display: none;
}


/* SEARCH POPUP — MOBILE PRODUCT PRICE / BUTTON */

@media (max-width: 767px) {
	
	.pls-search-popup
	{
			padding-left: 1.75rem;
			padding-right: 1.75rem;
	}
	
	.pls-search-popup .pls-ajax-search .search-field, .pls-search-popup .pls-ajax-search select {
        font-size: 14px;
	}
	
	.ajax-search-style-1 .search-submit:before {
    font-size: 16px;
    font-weight: normal;
	}
	
	.pls-slider-next, .pls-slider-prev {
        height: 32px;
        width: 32px;
    }

    .pls-search-popup .pls-product-price-cart {
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
    }

    .pls-search-popup .pls-product-price,
    .pls-search-popup .pls-cart-button {
        width: 100% !important;
    }

    .pls-search-popup .pls-cart-button .button {
        width: 100% !important;
        box-sizing: border-box !important;
    }
	
	#pls-search-popup .pls-product-info .pls-product-tags {
        display: none !important;
    }
	
	#pls-search-popup .pls-product-info
    .woocommerce-product-details__short-description {
        display: none !important;
    }
	
	 #pls-search-popup .pls-cart-button .button {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        text-align: center !important;
    }
	
	#pls-search-popup .products.products-wrap .pls-cart-button .button {
        padding: 10px 18px !important;
    }
	
#pls-search-popup .pls-products-grid-slider .section-heading h2 {
		font-size: 30px !important;
}

}

@media (max-width: 1024px) {
    .pls-header-myaccount .user-myaccount {
        pointer-events: auto !important;
    }
}

/* ========================================
   BREVO — ALL NOTICES & ERRORS
======================================== */

.sib_msg_disp p.sib-alert-message {
    background-color: #fff4f9 !important;
    color: #5a4a52 !important;
    border: 1px solid #f9a4d2 !important;
    border-radius: 8px;
    font-size: 13px;
    line-height: 1.5;
    position: relative;
}

.button, .btn, button, input[type="button"], input[type="submit"] {
		border-radius: 30px;
}
.main-newsletter {
    padding: 50px !important;
    display: block !important;
    width: 70%;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Newsletter — Main Container */

#sib_signup_form_1 {
    background-color: var(--pls-secondary-color);
    padding: 50px;
    box-sizing: border-box;
    border-radius: 30px;
    position: relative;
    overflow: hidden;
}

#sib_signup_form_1 {
    position: relative;
    overflow: hidden;
}

#sib_signup_form_1 > * {
    position: relative;
    z-index: 1;
}

#sib_signup_form_1 .newsletter-sprinkles {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
}

#sib_signup_form_1 .newsletter-sprinkles .sprinkle {
    position: absolute;
    display: block;
    width: 15px;
    height: 38px;
    border-radius: 999px;
    opacity: 0.45;
}

#sib_signup_form_1 .sprinkle-1 {
    background: #f9a4d2;
    top: 12%;
    left: 8%;
    transform: rotate(35deg);
}

#sib_signup_form_1 .sprinkle-2 {
    background: #c3b1e1;
    top: 18%;
    right: 10%;
    transform: rotate(-25deg);
}

#sib_signup_form_1 .sprinkle-3 {
    background: #c3b1e1;
    top: 55%;
    left: -10%;
    transform: rotate(65deg);
}

#sib_signup_form_1 .sprinkle-4 {
    background: #f9a4d2;
    bottom: -20%;
    right: 0%;
    transform: rotate(-40deg);
}

#sib_signup_form_1 .sprinkle-5 {
    background: #f5d58a;
    bottom: -20%;
    left: 10%;
    transform: rotate(-20deg);
}

#sib_signup_form_1 .sprinkle-6 {
    background: #a8c9e8;
    top: -10%;
    left: 45%;
    transform: rotate(120deg);
}

#sib_signup_form_1 .sprinkle-7 {
    background: #c3b1e1;
    bottom: -15%;
    left: 55%;
    transform: rotate(25deg);
}

#sib_signup_form_1 .sprinkle-8 {
    background: #f5d58a;
    top: 5%;
    right: -10%;
    transform: rotate(75deg);
}

/* Newsletter — Inner Form Width */

#sib_signup_form_1 .sib_signup_box_inside_1 {
    width: 85%;
    margin-left: auto;
    margin-right: auto;
}


/* Newsletter — Heading */

#sib_signup_form_1 .ioo-newsletter-heading {
    text-align: center;
    margin-bottom: 25px;
}

#sib_signup_form_1 .ioo-newsletter-heading h2 {
    margin: 0 0 8px;
		font-size: 36px;
		letter-spacing: -1px;

}

#sib_signup_form_1 .ioo-newsletter-heading p {
    margin: 0;
}


/* Newsletter — Name Fields */

#sib_signup_form_1 .newsletter-name-fields {
    display: flex;
    gap: 20px;
}

#sib_signup_form_1 .newsletter-name-fields > p {
    flex: 1;
    margin: 0;
}


/* Newsletter — All Input Fields */

/* Focus */
#sib_signup_form_1 .newsletter-name-fields input[type="text"]:focus,
#sib_signup_form_1 .newsletter-email-wrapper input[type="email"]:focus {
    outline: none;
    border: 1px solid var(--e-global-color-primary);
}

/* Fields */
#sib_signup_form_1 .newsletter-name-fields input[type="text"],
#sib_signup_form_1 .newsletter-email-wrapper input[type="email"] {
    width: 100%;
    border: none;
    cursor: pointer;

    transition:
        border-color 0.2s ease,
        background-color 0.2s ease,
        color 0.2s ease;

    border-radius: 40px;
    box-sizing: border-box;

    padding: 15px;
    line-height: 1.5;
    height: auto;

    background: rgba(255, 255, 255, 0.8);
}


/* Newsletter — Email Field */

#sib_signup_form_1 .newsletter-input-wrap {
    position: relative;
    display: block;
}


/* Newsletter — Arrow Submit Button */

#sib_signup_form_1 .newsletter-input-wrap .main-newsletter {
    position: absolute !important;
    top: 50% !important;
    right: 15px !important;
    transform: translateY(-50%) !important;

    width: 30px !important;
    min-width: 30px !important;
    height: 30px !important;

    padding: 0 !important;
    margin: 0 !important;

    background: transparent !important;
    color: #000 !important;

    cursor: pointer !important;

    align-items: center !important;
    justify-content: center !important;
}


/* Newsletter — Mobile */

@media (max-width: 600px) {

    #sib_signup_form_1 {
        padding: 30px 20px;
        border-radius: 20px;
    }

    #sib_signup_form_1 .sib_signup_box_inside_1 {
        width: 100%;
    }

    #sib_signup_form_1 .newsletter-name-fields {
        flex-direction: column;
        gap: 0;
    }

    #sib_signup_form_1 .newsletter-name-fields > p {
        width: 100%;
    }

}

/* ========================================
   WOOCOMMERCE — DISABLED BUTTONS
   LOCK NORMAL APPEARANCE
======================================== */

.woocommerce .button:disabled,
.woocommerce .button:disabled:hover,
.woocommerce .button:disabled:focus,
.woocommerce .button:disabled:active,
.woocommerce .button.disabled,
.woocommerce .button.disabled:hover,
.woocommerce .button.alt:disabled,
.woocommerce .button.alt:disabled:hover,
.woocommerce .button.alt:disabled:focus,
.woocommerce .button.alt:disabled:active,
.woocommerce .button.alt.disabled,
.woocommerce .button.alt.disabled:hover {
    background-color: var(--pls-checkout-button-bg-color) !important;
    color: var(--pls-checkout-button-color) !important;
		opacity: 0.5 !important;
		cursor: not-allowed !important;
    pointer-events: none !important;
}


/* CONTACT */

.pls-contact-info-text {
		color: var(--e-global-color-text) !important;
}

/* ABOUT */

/* About Feature Images */

.about-feature .elementor-widget-image {
    width: 100%;
    aspect-ratio: 16 / 9;
    overflow: hidden;
}

.about-feature .elementor-widget-image img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
}

/* About Feature — Keep Images Side-by-Side */

@media (max-width: 767px) {

    .about-feature .e-con-inner {
        display: flex !important;
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
    }

    .about-feature .e-con-inner > .e-con {
        width: 33.333% !important;
        min-width: 0 !important;
        flex: 1 1 33.333% !important;
    }

    .about-feature .elementor-widget-image {
        aspect-ratio: 1 / 1;
    }

}
/* About Info Boxes — Mobile */

@media (max-width: 767px) {

    /* Information section */
    .elementor-element-d048d4a .info-box-content {
        padding: 0 !important;
        margin: 0 !important;
    }

    /* Titles */
    .elementor-element-d048d4a .info-box-title {
        margin-bottom: 6px !important;
    }

    .elementor-element-d048d4a .info-box-title > * {
        font-size: 14px !important;
        line-height: 1.5 !important;
        margin: 0 !important;
    }

    /* Descriptions */
    .elementor-element-d048d4a .info-box-description {
        margin: 0 !important;
    }

    .elementor-element-d048d4a .info-box-description > * {
        font-size: 12px !important;
        line-height: 1.5 !important;
        margin: 0 !important;
    }
	
	 /* Icons */
	.elementor-element-d048d4a .box-icon-wrap .info-box-icon img {
        width: 30px !important;
        height: 30px !important;
        max-width: 30px !important;
    }
	
	.elementor-element-d048d4a .info-box-wrap .box-icon-wrap {
        margin-bottom: 10px !important;
    }

}

/* FAQs */

/* FAQ Accordion Titles */
.pls-accordion-item .accordion-title .card-title a {
    font-family: var(--pls-primary-font);
    font-weight: 600;
    /*color: #333333;*/
    text-decoration: none;
}

/* HOME PAGE */

/* Home top section */
.hp-top-section {
    position: relative;
    overflow: visible;
}

/* Home hero sprinkle widgets */

.hp-top-section .elementor-element-eb2be88,
.hp-top-section .elementor-element-e8f97e1 {
    position: absolute !important;
    inset: 0;
    width: 100% !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    pointer-events: none;
    z-index: 0;
}

/* Sprinkle layers */
.hp-top-section .sprinkles-bg {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

/* Sprinkle pieces */
.hp-top-section .sprinkle {
    position: absolute;
    display: block;
    width: 15px;
    height: 40px;
    border-radius: 999px;
    opacity: 0.45;
}

/* Left */
.hp-top-section .sprinkles-left .sprinkle-1 {
    background: #f9a4d2;
    top: 15%;
    left: 0%;
    transform: rotate(35deg);
}

.hp-top-section .sprinkles-left .sprinkle-2 {
    background: #a8c9e8;
    top: 35%;
    left: 5%;
    transform: rotate(-25deg);
}

.hp-top-section .sprinkles-left .sprinkle-3 {
    background: #c3b1e1;
    bottom: 35%;
    left: 1%;
    transform: rotate(50deg);
}

.hp-top-section .sprinkles-left .sprinkle-4 {
    background: #f5d58a;
    bottom: 8%;
    left: 3%;
    transform: rotate(-35deg);
}

/* Right */
.hp-top-section .sprinkles-right .sprinkle-5 {
    background: #f9a4d2;
    top: 1%;
    right: 1%;
    transform: rotate(25deg);
}

.hp-top-section .sprinkles-right .sprinkle-6 {
    background: #a8c9e8;
    top: 35%;
    right: 3%;
    transform: rotate(-35deg);
}

.hp-top-section .sprinkles-right .sprinkle-7 {
    background: #c3b1e1;
    bottom: 30%;
    right: 15%;
    transform: rotate(45deg);
}

.hp-top-section .sprinkles-right .sprinkle-8 {
    background: #f5d58a;
    bottom: 7%;
    right: 1%;
    transform: rotate(-20deg);
}

/* Featured recipe card */

.featured-image .blog-post-loop {
    position: relative;
}

.featured-image .featured-recipe-card {
    position: absolute;
    top: 32px;
    left: -40px;
    width: 160px;
    padding: 16px;
    background: #ffffff;
    border-radius: 16px;
    box-shadow: 0 10px 30px rgba(28, 18, 7, 0.15);
    z-index: 20;
    box-sizing: border-box;
}

.featured-image .featured-recipe-label {
    margin-bottom: 4px;
    color: #f58bc4;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
    line-height: 1.2;
}

.featured-image .featured-recipe-title {
    color: #1a1a1a;
    font-family: 'Fraunces', serif;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.15;
}

.featured-image .featured-recipe-category {
    margin-top: 6px;
    color: #8a7d72;
    font-size: 11px;
    line-height: 1.3;
		text-transform: capitalize;
}

.elementor-element-886a6ec .button {
    padding: 12px 24px !important;
}

.hp-order-fresh a {
    color: #1f1f1f !important;
    background-color: transparent !important;
    border-color: #1f1f1f !important;
}

.hp-order-fresh a:hover {
    color: #ffffff !important;
    background-color: #1f1f1f !important;
}

/* ========================================
   HOMEPAGE — BLOG OVERRIDE
======================================== */

.featured-image .entry-post {
    background: transparent !important;
    border: none !important;
    overflow: visible;
    height: auto;
    box-shadow: none;
}

.featured-image .entry-thumbnail-wrapper {
    aspect-ratio: auto !important;
    overflow: visible !important;
    margin: 0 !important;
}

.featured-image .entry-thumbnail-wrapper .post-thumbnail {
    width: auto !important;
    height: auto !important;
    border-radius: 16px !important;
}

.featured-image .entry-post:hover {
    box-shadow: none !important;
}

/*home page adjustments*/

/*.side-feature .entry-post {
    position: relative;
}

.side-feature .entry-content-wrapper .entry-category {
    position: absolute;
    top: 30px;
    left: 15px;
    z-index: 10;
    margin: 0;
}

.side-bar-blog .pls-blog .cat-links {
    display: inline-block;
    font-size: 8px !important;
    font-weight: 700 !important;
    letter-spacing: 1px;
    text-align: center;
    padding: 4px 10px !important;
}

.side-bar-blog .entry-category .cat-links {
    background-color: var(--pls-primary-color);
    border-radius: 48px;
    font-size: 14px;
    font-weight: 600;
    padding: 4px 10px;
    text-transform: uppercase;
}

.featured-image .entry-post:hover .post-thumbnail a::after, .side-feature .entry-post:hover .post-thumbnail a::after {
    background-color: rgba(255, 255, 255, .3) !important;
} */

.hp-top-section .side-feature .articles-list.row {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.featured-image .entry-post:hover .post-thumbnail a::after{
    background-color: rgba(0, 0, 0, .4) !important;
}

.featured-image .entry-title {
    margin: 0 0 30px !important;
}

.featured-image .entry-content {
    margin: 0 0 10px !important;
}

.hp-top-section .featured-image .entry-content {
		font-size: 14px !important;
}

.hp-top-section .featured-image .read-more-btn a {
    font-size: 14px !important;
    }

.featured-image .entry-title a {
    color: #E8DDD0 !important;
		font-weight: 500 !important;
		font-size: 50px !important;
}

.featured-image .read-more-btn a, .featured-image .entry-content {
		color: #E8DDD0 !important;
}

.featured-image .entry-post {
    position: relative;
}

.featured-image .entry-content-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    z-index: 10;
    padding: 40px;
    box-sizing: border-box;
}

.featured-image .entry-title, .featured-image .entry-content,
.featured-image .read-more-btn {
    opacity: 0;
    transition: opacity .3s ease;
}

.featured-image .entry-post:hover .entry-title,
.featured-image .entry-post:hover .entry-content,
.featured-image .entry-post:hover .read-more-btn,
.featured-image .entry-content-wrapper:hover .entry-title,
.featured-image .entry-content-wrapper:hover .entry-content,
.featured-image .entry-content-wrapper:hover .read-more-btn {
    opacity: 1;
    pointer-events: auto;
}

.featured-image .entry-content-wrapper {
    pointer-events: none;
}

.featured-image .entry-title a,
.featured-image .read-more-btn a {
    pointer-events: auto;
}

.featured-image .entry-header {
    margin: 0 !important;
}

@media (max-width: 1399px) {

    .category-slider .swiper-slide .banner-wrapper,
    .category-slider .swiper-slide .banner-image-wrap,
    .category-slider .swiper-slide .banner-image {
        width: 100% !important;
        max-width: 100% !important;
    }

    .category-slider .swiper-slide .banner-image {
        aspect-ratio: 1 / 1;
    }

    .hp-top-section .elementor-element-bc4e4a9 p {
        font-size: 11px !important;
    }

    .hp-top-section .elementor-element-76665c6 p {
        font-size: 50px !important;
        line-height: 50px !important;
    }

    .hp-top-section .elementor-element-376c3b5 p {
        font-size: 13px !important;
        line-height: 1.5 !important;
    }

    .side-feature .entry-title a {
        font-size: 10px !important;
    }

    .side-feature .entry-category .cat-links {
        font-size: 7px !important;
        padding: 4px 10px !important;
    }

    .side-feature .entry-post {
        padding-top: 0 !important;
    }

    .side-feature .entry-header {
        margin-bottom: 10px !important;
    }

    .side-feature .entry-title {
        margin-top: 8px !important;
        margin-bottom: 0 !important;
    }

    .side-feature .entry-category {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .hp-top-section .featured-image .entry-content {
        display: block !important;
        font-size: 12px !important;
    }

    .hp-top-section .featured-image .entry-footer {
        display: block !important;
    }

    .hp-top-section .featured-image .read-more-btn {
        display: block !important;
    }

    .hp-top-section .featured-image .blog-post-loop {
        width: 100% !important;
        flex: 0 0 100% !important;
    }

    .hp-top-section .featured-image .entry-thumbnail-wrapper {
        margin: 30px auto !important;
				margin-left: 10px !important;
    }

    .hp-top-section .featured-image .entry-content-wrapper {
        width: 92% !important;
        left: 4% !important;
        padding: 25px !important;
    }

    .hp-top-section .featured-image .entry-title {
        margin: 0 0 20px !important;
    }

    .hp-top-section .featured-image .entry-title a {
        font-size: 28px !important;
        line-height: 1.05 !important;
    }

    .hp-top-section .featured-image .read-more-btn a {
        font-size: 12px !important;
    }

    .hp-top-section .featured-image .featured-recipe-card {
        top: -10px;
    		left: -25px;
        width: 130px;
        padding: 10px;
        border-radius: 12px;
    }

    .hp-top-section .featured-image .featured-recipe-label {
        font-size: 8px;
        letter-spacing: 1.2px;
    }

    .hp-top-section .featured-image .featured-recipe-title {
        font-size: 13px;
    }

    .hp-top-section .featured-image .featured-recipe-category {
        font-size: 10px;
    }

    .elementor-element-886a6ec {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 12px !important;
    }

    .elementor-element-886a6ec > .elementor-element {
        width: 100% !important;
    }
}


@media (max-width: 767px) {
	
	.hp-top-section .featured-image .entry-content, .hp-top-section .featured-image .read-more-btn a {
        font-size: 14px !important;
	}
	
	 .hp-top-section .featured-image .entry-title a {
        font-size: 32px !important;
    }
  
  .hp-top-section .featured-image .featured-recipe-card {
    top: 5px !important;
    left: -10px !important;
		width: 160px;
    padding: 16px !important;
    border-radius: 12px !important;
}
	
	.hp-top-section .featured-image .featured-recipe-label {
        font-size: 10px;
        letter-spacing: 1.2px;
    }

    .hp-top-section .featured-image .featured-recipe-title {
        font-size: 15px;
    }

    .hp-top-section .featured-image .featured-recipe-category {
        font-size: 11px;
    }
	
	    .elementor-element-886a6ec {
        flex-direction: row !important;
        align-items: center !important;
        gap: 12px !important;
    }

    .elementor-element-886a6ec > .elementor-element {
        width: auto !important;
    }
	
    .hp-top-section .side-feature .articles-list {
        display: flex !important;
        flex-wrap: wrap !important;
    }

    .hp-top-section .side-feature .blog-post-loop {
        width: 50% !important;
        flex: 0 0 50% !important;
    }
	
		    .elementor-element-8dc842f, .elementor-element-d8ba50c {
        width: 100% !important;
        max-width: 100% !important;
    }
	
	    .hp-top-section .products.products-wrap .pls-product-price,
    .hp-top-section .products.products-wrap .pls-cart-button {
        width: 100% !important;
    }
}

@media (max-width: 1067px) {
	
	.elementor-element-5471c27 {
    width: 100% !important;
    max-width: 100% !important;
    --container-widget-width: 100% !important;
}
	
    .hp-product-feature .products.products-wrap .pls-product-price-cart {
        display: flex !important;
        flex-direction: column !important;
    }

    .hp-product-feature .products.products-wrap .pls-cart-button {
        width: 100% !important;
    }

    .hp-product-feature .products.products-wrap .pls-cart-button .button {
        width: 100% !important;
        justify-content: center !important;
    }
	
	.hp-product-feature .woocommerce .products.products-wrap .pls-product-price-cart .pls-product-price {
    text-align: left !important;
    margin-right: auto !important;
}
	
	.hp-product-feature .products.products-wrap .pls-cart-button .button {
			padding: 12px 30px !important;
	}

}

.side-feature .entry-category {
    text-align: center;
		margin-top: 10px;
}

.side-feature .entry-category .cat-links {
    display: inline-block;
}

.side-feature .post-thumbnail img {
	object-fit: cover;
	object-position: center;
	aspect-ratio: 1 / 1;
	display: block;
}

.side-feature .entry-title {
	text-transform: uppercase;
	letter-spacing: 1px;
	font-family: "DM Sans", sans-serif;
	font-size: 12px !important;
	text-align: center;
	font-weight: 600;
}

.side-feature .entry-title a {
		color: var(--pls-text-color);
}


.side-feature .blog-post-loop {
    margin: 0 !important;
}

/*
.side-feature .blog-grid .entry-footer, .side-feature .entry-header {
    margin: 0 !important;
}*/

.featured-image .post-thumbnail {
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
	aspect-ratio: 3 / 4;
	border-radius: 0px;
}

.featured-image .entry-thumbnail-wrapper img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .3s ease;
}

.feature-slider .entry-category {
  display: none;
}
/* Force 16:9 aspect ratio */
.feature-slider .post-thumbnail {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9; /* Modern browsers */
  overflow: hidden;
}

/* Make the image cover the container */
.feature-slider .post-thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.category-slider .pls-banners-slider {
    visibility: hidden;
}

.category-slider .pls-banners-slider.is-ready {
    visibility: visible;
}

.feature-slider .swiper-slide {
  padding-left: 0 !important;
  padding-right: 0 !important;
  margin: 0 !important;
}

.feature-slider .entry-thumbnail-wrapper,
.feature-slider .post-thumbnail {
  width: 100%;
  margin: 0;
  padding: 0;
}

.feature-slider {
  position: relative;
}

.feature-slider .section-heading {
  position: absolute;
  top: 1rem;
  left: 1rem;
  z-index: 10;
  color: white;
  padding: 0.75rem 1.5rem;
  font-size: 2rem;
  border-radius: 0.25rem;
  pointer-events: none; /* prevents it from blocking slider arrows */
}

.elementor-element-a173dca {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.elementor-element-a173dca > .e-con-inner {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.elementor-element-a173dca .elementor-element-1574c4d,
.elementor-element-a173dca .elementor-widget-container,
.elementor-element-a173dca .pls-marquee {
    width: 100% !important;
    max-width: 100% !important;
}

.elementor-element-a173dca .e-con-inner {
    width: 100%;
    max-width: 100%;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Category slider */
.category-slider .banner-wrapper {
    text-align: center;
}

.category-slider .banner-image-wrap {
    width: 100%;
    display: flex;
    justify-content: center;
}

.category-slider .banner-image {
    width: 100%;
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    overflow: hidden;
}

.category-slider .banner-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.category-slider .banner-content-wrap {
    position: static !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 18px 0 0 !important;
    text-align: center;
}

.category-slider .banner-content {
    width: 100% !important;
    padding: 0 !important;
    margin: 0 auto !important;
    text-align: center;
}

.category-slider .banner-content-top {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.category-slider .banner-content-bottom {
    width: 100%;
    text-align: center;
}

.category-slider .banner-title-wrap {
    order: 1;
    text-align: center;
}

.category-slider .banner-subtitle-wrap {
    order: 2;
    margin-top: 5px !important;
    line-height: 1.2 !important;
    text-align: center;
}

.category-slider .banner-button {
    text-align: center;
}

.category-slider .banner-title {
    font-family: "DM Serif Display";
    font-size: 22px;
    font-weight: 600;
}

.category-slider .banner-subtitle {
    letter-spacing: 1px;
    font-size: 10px;
    color: #8a7060;
}

.category-slider .pls-banners-slider .pls-banner {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Inactive categories */
.category-slider .swiper-slide .banner-image,
.category-slider .swiper-slide .banner-content {
    transform: scale(0.8);
    transform-origin: top center;
    opacity: 0.65;
    transition: transform 0.3s ease, opacity 0.3s ease;
}

/* Remove the 18px content offset from inactive categories */
.category-slider .swiper-slide:not(.swiper-slide-active) .banner-content-wrap {
    margin-top: -18px !important;
}

/* Active category */
.category-slider .swiper-slide-active .banner-image,
.category-slider .swiper-slide-active .banner-content {
    transform: scale(1);
    opacity: 1;
}

@media (min-width: 768px) {

    .category-slider .pls-banners-slider .swiper-slide {
        flex: 0 0 auto !important;
        max-width: none !important;
    }

}

@media (max-width: 767px) {

    .category-slider .pls-banners-slider .swiper-slide {
        flex: 0 0 auto !important;
        max-width: none !important;
    }
	
	    .category-slider .swiper-slide .banner-image-wrap,
    .category-slider .swiper-slide .banner-image {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 1 / 1 !important;
    }

    .category-slider .swiper-slide .banner-image img {
        width: 100% !important;
        height: 100% !important;
        aspect-ratio: 1 / 1 !important;
        object-fit: cover !important;
    }

}

.hp-product-feature .pls-product-inner {
    background-color: rgba(37, 37, 37, 0.85) !important;
}

.hp-product-feature .pls-product-info .product-title a {
		font-size: 18px;
		letter-spacing: -0.5px;
		font-weight: 800;
		font-family: Fraunces;
    color: #ffffff !important;
}

.hp-product-feature .products.products-wrap .pls-product-price .price,
.hp-product-feature .products.products-wrap .pls-product-price .woocommerce-Price-amount,
.hp-product-feature .products.products-wrap .pls-product-price .woocommerce-Price-currencySymbol {
    font-family: var(--pls-primary-font) !important;
		font-weight: 500 !important;
		font-size: 16px !important;
		color: var(--pls-link-hover-color) !important;
}

.hp-product-feature .products.products-wrap .pls-cart-button .button {
    padding: 12px 30px !important;
}

.hp-product-feature .pls-product-info .woocommerce-product-details__short-description p {
    font-size: 12px !important;
}

.hp-product-feature .pls-product-info .woocommerce-product-details__short-description p {
    min-height: 40px !important;
}

.hp-product-feature .pls-product-info .woocommerce-product-details__short-description {
    display: -webkit-box !important;
    width: 100%;
    margin: 8px 0 12px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
}

.hp-product-feature .pls-product-tags {
    display: none !important;
}

.hp-product-feature .products.products-wrap .pls-cart-button .button::before {
    content: none !important;
}

.elementor-element-d20ae73 {
    position: relative;
    overflow: hidden;
}

#sprinkles-bg {
    position: absolute !important;
    inset: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    z-index: 0;
}
#sprinkles-bg .sprinkle {
    position: absolute;
    width: 15px;
    height: 40px;
    border-radius: 999px;
    opacity: 0.5;
    pointer-events: none;
}

#sprinkles-bg .sprinkle-1 {
    background: #f9a4d2;
    top: 12%;
    left: 8%;
    transform: rotate(35deg);
}

#sprinkles-bg .sprinkle-2 {
    background: #f5d58a;
    top: 28%;
    right: 5%;
    transform: rotate(-25deg);
}

#sprinkles-bg .sprinkle-3 {
    background: #c3b1e1;
    top: 50%;
    left: 35%;
    transform: rotate(15deg);
}

#sprinkles-bg .sprinkle-4 {
    background: #a8c9e8;
    bottom: 30%;
    right: 35%;
    transform: rotate(30deg);
}

#sprinkles-bg .sprinkle-5 {
    background: #f5d58a;
    bottom: 3%;
    left: 15%;
    transform: rotate(60deg);
}

#sprinkles-bg .sprinkle-6 {
    background: #c3b1e1;
    bottom: 1%;
    right: 25%;
    transform: rotate(-40deg);
}

/* Main newsletter */
.main-newsletter {
    width: 100%;
    max-width: 650px;
    margin: 0 auto;
    text-align: center;
}

/* Heading */
.main-newsletter .ioo-newsletter-heading {
    margin-bottom: 30px;
    text-align: center;
}

.main-newsletter .ioo-newsletter-heading h2 {
    font-family: "Fraunces" !important;
		font-weight: 900;
    font-size: 36px !important;
		line-height: 40px;
		text-transform: none;
		letter-spacing: -1.5px;
}

.main-newsletter .ioo-newsletter-heading p {
    max-width: 650px;
    margin: 0 auto !important;
    color: #5a4e45 !important;
    font-size: 16px !important;
}

/* Email + button */
.main-newsletter .newsletter-email-form {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    margin: 0 auto !important;
}

.main-newsletter .newsletter-email-form > p {
    margin: 0 !important;
}

.main-newsletter .newsletter-email-form .floating-field {
    flex: 1 1 auto !important;
    width: auto !important;
}

.main-newsletter .newsletter-email-form .newsletter-submit {
    flex: 0 0 auto !important;
    width: auto !important;
}

/* Email */
.main-newsletter .newsletter-email-wrapper input[type="email"] {
    display: block !important;
    width: 100% !important;
    height: 52px !important;
    margin: 0 !important;
    padding: 0 20px !important;
    border: 2px solid #e8dfd4 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    color: #1a1a1a !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    line-height: 1.5 !important;
    box-sizing: border-box !important;
}

.main-newsletter .newsletter-email-wrapper input[type="email"]::placeholder {
    color: #b0a49a !important;
}

.main-newsletter .newsletter-email-wrapper input[type="email"]:focus {
    outline: none !important;
    border-color: #f58bc4 !important;
}

/* Subscribe button */
.main-newsletter .main-newsletter-button {
    display: block !important;
    width: auto !important;
    height: 52px !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease;
}

/* Terms */
.main-newsletter .newsletter-note {
    text-align: center !important;
    color: #b0a49a !important;
    font-size: 12px !important;
}

/* Mobile */
@media (max-width: 767px) {

    .main-newsletter {
        max-width: 100%;
				padding: 10px !important;
    }

    .main-newsletter .newsletter-email-wrapper {
        flex-direction: column !important;
    }

    .main-newsletter .newsletter-email-wrapper > p,
    .main-newsletter .newsletter-email-wrapper .floating-field,
    .main-newsletter .newsletter-email-wrapper .newsletter-submit,
    .main-newsletter .main-newsletter-button {
        width: 100% !important;
    }
	
	.main-newsletter .ioo-newsletter-heading p {
        font-size: 14px !important;
    }
	
	.sib-email-area input[type="email"] {
			font-size: 14px !important;
	}
}

/* =========================================================
   IN OUR OVEN — SHOP COMING SOON PAGE
   ========================================================= */

/* Hide the entire site header */
body:has(.ioo-shop-coming-soon) header,
body:has(.ioo-shop-coming-soon) #header,
body:has(.ioo-shop-coming-soon) .pls-header {
    display: none !important;
}

/* Hide the entire site footer */
body:has(.ioo-shop-coming-soon) footer,
body:has(.ioo-shop-coming-soon) #footer,
body:has(.ioo-shop-coming-soon) .pls-footer {
    display: none !important;
}

/* Hide the normal Shop page title */
body:has(.ioo-shop-coming-soon) #page-title {
    display: none !important;
}

/* Hide the custom Shop heading */
body:has(.ioo-shop-coming-soon) .shop-page-heading {
    display: none !important;
}

/* Hide the newsletter */
body:has(.ioo-shop-coming-soon) #sib_signup_form_1 {
    display: none !important;
}

/* Remove the empty newsletter/form spacing */
body:has(.ioo-shop-coming-soon) .pls-site-container > .row {
    margin-bottom: 0 !important;
}

/* Remove theme top margin */
body:has(.ioo-shop-coming-soon) .pls-site-header:not(.pls-header-overlay) + .pls-site-content > .pls-site-container {
    margin-top: 0 !important;
}

/* Make the Coming Soon area fill the available page */
.ioo-shop-coming-soon {
    width: 100%;
    min-height: 100vh;
    margin: 0 !important;
    padding: 80px 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.ioo-shop-coming-soon .ioo-coming-soon-inner {
    width: 100%;
    text-align: center;
}

/* =========================================================
   COMING SOON HEADING
   ========================================================= */

.ioo-shop-coming-soon .pls-heading {
    margin: 0 0 25px;
}

.ioo-shop-coming-soon .heading-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
}

.ioo-shop-coming-soon .heading-title {
    font-family: "DM Serif Display" !important;
    text-transform: capitalize !important;
    letter-spacing: -1px !important;
    font-weight: 800 !important;
    font-style: normal !important;
    color: var(--pls-heading-color) !important;
    font-size: 80px !important;
    line-height: 88px !important;
    margin-bottom: 0 !important;
}

/* =========================================================
   COUNTDOWN
   ========================================================= */

.ioo-shop-coming-soon .pls-countdown {
    margin: 0;
}

.ioo-shop-coming-soon .pls-countdown-timer {
    display: flex;
    align-items: center;
    justify-content: center;
}

.ioo-shop-coming-soon .pls-countdown .pls-countdown-timer > span {
    border-style: none !important;
    border-width: 1px;
    border-radius: 1px;
}

.ioo-shop-coming-soon .pls-countdown .pls-cddigits {
    color: var(--pls-link-color);
    font-size: 56px !important;
    margin-bottom: 10px;
}

.ioo-shop-coming-soon .pls-countdown .pls-cdtext {
    color: var(--pls-link-color);
}

/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    .ioo-shop-coming-soon .heading-title {
        font-size: 42px !important;
        line-height: 50px !important;
    }

    .ioo-shop-coming-soon .pls-countdown .pls-countdown-timer {
        gap: 10px;
    }

    .ioo-shop-coming-soon .pls-countdown .pls-cddigits {
        font-size: 34px !important;
    }

    .ioo-shop-coming-soon .pls-countdown .pls-cdtext {
        font-size: 12px;
    }
}

/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 767px) {

    .ioo-shop-coming-soon .heading-title {
        font-size: 24px !important;
        line-height: 30px !important;
    }

    .ioo-shop-coming-soon .pls-countdown .pls-countdown-timer > span {
        min-width: 0 !important;
        min-height: 0 !important;
    }
}

@media (max-width: 767px) {

    .in-our-oven-cart .in-our-oven-cart-remove {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        align-self: stretch !important;

        width: 35px !important;
        min-width: 35px !important;

        height: calc(100% + 30px) !important;
        margin-top: -15px !important;
        margin-bottom: -15px !important;
        margin-right: -15px !important;

        padding: 0 !important;
        background: var(--pls-secondary-color) !important;
        border-radius: 0 20px 20px 0 !important;
        overflow: hidden !important;

        grid-column: 4 !important;
        grid-row: 1 / -1 !important;

        z-index: 5 !important;

        transform: translateX(35px) !important;
        transition: transform 0.25s ease !important;
    }

    .in-our-oven-cart .in-our-oven-cart-remove a.remove {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        height: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        color: #fff !important;
        font-size: 0 !important;
        text-decoration: none !important;
    }

    .in-our-oven-cart .in-our-oven-cart-remove
    a.remove.picon-trash::after {
    content: "\e90e";
    font-family: 'presslayouts-font';
    display: block;
    color: #8A7D72;
    font-size: 16px;
    line-height: 1;
    }

    /*
     * Let the price / quantity column use
     * the space currently occupied by Remove.
     */
    .in-our-oven-cart .in-our-oven-cart-price,
    .in-our-oven-cart .in-our-oven-cart-quantity {
        grid-column: 3 / 5 !important;
    }

    .in-our-oven-cart .in-our-oven-cart-item {
        overflow: hidden !important;
    }

    /*
     * NEW:
     * Make the wrapper created by the swipe script
     * behave as one sliding layer without changing
     * the existing visual layout.
     */
    .in-our-oven-cart .ioo-cart-swipe-content {
        position: relative;
        z-index: 2;
        width: 100%;
        min-width: 0;
        transition: transform 0.25s ease;
        will-change: transform;
    }

}

@media (max-width: 767px) {

    .in-our-oven-cart .in-our-oven-cart-item.swipe-open
    .in-our-oven-cart-remove {
        transform: translateX(0) !important;
    }

}

@media (max-width: 767px) {

    .in-our-oven-cart .ioo-cart-swipe-shell {
        position: relative;
        width: 100%;
        overflow: hidden;
        border-radius: 20px;
        background: var(--pls-secondary-color);
        margin-bottom: 15px;
    }

    .in-our-oven-cart .ioo-cart-swipe-shell
    > .in-our-oven-cart-item {
        position: relative;
        z-index: 2;
        margin-bottom: 0 !important;
    }

    .in-our-oven-cart .ioo-cart-swipe-shell
    > .in-our-oven-cart-remove {
        position: absolute !important;
        top: 0 !important;
        right: 0 !important;

        width: 50px !important;
        min-width: 50px !important;
        height: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        z-index: 1 !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        transform: none !important;
    }
}

@media (max-width: 767px) {

    /*
     * Override the old grid-based Remove positioning
     * once Remove has been moved into the swipe shell.
     */
    .in-our-oven-cart .ioo-cart-swipe-shell
    > .in-our-oven-cart-remove {

        position: absolute !important;

        top: 0 !important;
        right: 0 !important;

        width: 50px !important;
        min-width: 50px !important;

        height: 100% !important;

        margin: 0 !important;
        padding: 0 !important;

        grid-column: auto !important;
        grid-row: auto !important;

        align-self: auto !important;

        z-index: 1 !important;

        /*
         * Remove is now underneath the card.
         * The card reveals it when it swipes left.
         */
        transform: translateX(0) !important;
    }

}

@media (max-width: 767px) {

    .in-our-oven-cart .ioo-cart-swipe-shell
    > .in-our-oven-cart-remove
    a.remove.picon-trash::before {
        display: none !important;
        content: none !important;
    }

}

@media (max-width: 767px) {

    .in-our-oven-cart .in-our-oven-cart-item {
        border: none !important;
        box-shadow: none !important;
    }

}

@media (max-width: 767px) {

    .in-our-oven-cart .ioo-cart-swipe-shell
    > .in-our-oven-cart-item.swipe-open {
        border-top-right-radius: 0 !important;
        border-bottom-right-radius: 0 !important;
    }

}

@media (max-width: 767px) {

    .in-our-oven-cart .ioo-cart-swipe-shell
    > .in-our-oven-cart-remove
    a.remove {
        transition: transform 0.12s ease-out;
    }

}