/*
Theme Name: PA Kosher Poultry - Kadence Child
Theme URI: https://www.kadencewp.com/kadence-theme/
Description: Custom Kadence child theme styles for PA Kosher Poultry.
Author: PA Kosher Poultry
Template: kadence
Version: 2.1.5
Text Domain: kadence-child
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v3.0 or later
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

/* ==========================================================
   STYLESHEET INDEX
   01. Design Tokens
   02. Global Base & Typography
   03. Header & Navigation
   04. Buttons & Links
   05. Hero Sections
   06. Homepage Feature Sections
   07. WooCommerce Shop Grid
   08. Price, Case Details & Quantity Controls
   09. Cart & Checkout Blocks
   10. Account & Saved Payment Methods
   11. Forms, Notices & Utility Elements
   12. Footer
   13. Legacy Page Components
   14. Responsive Styles
   ========================================================== */

/* ==========================================================
   01. DESIGN TOKENS
   ========================================================== */

:root {
	--kp-maroon: #5b1720;
	--kp-maroon-dark: #3f0f15;
	--kp-maroon-soft: #7a2b35;
	--kp-copper: #b9824a;
	--kp-copper-light: #d3ad7f;
	--kp-ivory: #faf6ee;
	--kp-cream: #f4eadc;
	--kp-blush: #f4e9e5;
	--kp-white: #ffffff;
	--kp-charcoal: #2a2523;
	--kp-warm-gray: #6f6661;
	--kp-border: #ded1c2;
	--kp-success: #496b4a;
	--kp-error: #9b2c35;
	--kp-radius-sm: 5px;
	--kp-radius: 9px;
	--kp-radius-lg: 16px;
	--kp-shadow-sm: 0 3px 14px rgba(63, 15, 21, 0.08);
	--kp-shadow: 0 12px 35px rgba(63, 15, 21, 0.13);
	--kp-transition: 180ms ease;

	/* Kadence button variables. */
	--global-palette-btn-bg: var(--kp-maroon);
	--global-palette-btn-bg-hover: var(--kp-maroon-dark);
	--global-palette-btn: var(--kp-white);
	--global-palette-btn-hover: var(--kp-white);
}

/* ==========================================================
   02. GLOBAL BASE & TYPOGRAPHY
   ========================================================== */

body {
	background: var(--kp-ivory);
	color: var(--kp-charcoal);
}

.site-main,
.content-area,
.entry-content-wrap {
	background-color: var(--kp-ivory);
}

/* Keep the shop/home layout flush with its full-width sections. */
.home .entry-content-wrap,
.post-type-archive-product .entry-content-wrap {
	padding: 0 !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.entry-title,
.woocommerce-loop-product__title {
	color: var(--kp-maroon);
}

h1,
h2,
h3,
.entry-title {
	letter-spacing: -0.015em;
}

a {
	color: var(--kp-maroon);
}

a:hover,
a:focus {
	color: var(--kp-maroon-dark);
}

::selection {
	background: var(--kp-copper-light);
	color: var(--kp-maroon-dark);
}

/* ==========================================================
   03. HEADER & NAVIGATION
   ========================================================== */

.site-main-header-wrap .site-header-row-container-inner,
.site-header-row-container-inner {
	border-bottom: 3px solid var(--kp-copper);
	background: var(--kp-ivory);
	box-shadow: 0 4px 16px rgba(63, 15, 21, 0.08);
}

.site-branding .site-title {
	display: none;
}

/* Page-title hero bar */
.entry-hero-container-inner {
	background: var(--kp-maroon) !important;
}

.entry-hero-container-inner,
.entry-hero-container-inner .entry-title {
	color: var(--kp-white) !important;
}

.main-navigation .primary-menu-container > ul > li.menu-item > a,
.site-header .header-navigation a,
.site-header .header-cart-button,
.site-header .kadence-svg-iconset svg {
	color: var(--kp-maroon) !important;
}

/* Header cart: do not inherit the solid global button treatment. */
.site-header .header-cart-button,
.site-header button.header-cart-button {
	border: 0 !important;
	background: transparent !important;
	color: var(--kp-maroon) !important;
	box-shadow: none !important;
}

.site-header .header-cart-button:hover,
.site-header .header-cart-button:focus {
	background: var(--kp-blush) !important;
	color: var(--kp-maroon-dark) !important;
}

.site-header .header-cart-button .kadence-svg-iconset,
.site-header .header-cart-button svg {
	color: currentColor !important;
	fill: currentColor;
}

.site-header .header-cart-total {
	border: 2px solid var(--kp-ivory) !important;
	background: var(--kp-maroon) !important;
	color: var(--kp-white) !important;
	box-shadow: 0 2px 6px rgba(63, 15, 21, 0.18);
}

.main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a,
.main-navigation .primary-menu-container > ul > li.current-menu-ancestor > a {
	color: var(--kp-copper) !important;
}

.main-navigation .sub-menu {
	border-top: 3px solid var(--kp-copper);
	background: var(--kp-white);
	box-shadow: var(--kp-shadow);
}

.main-navigation .sub-menu a {
	color: var(--kp-charcoal) !important;
}

.main-navigation .sub-menu a:hover,
.main-navigation .sub-menu .current-menu-item > a {
	background: var(--kp-blush);
	color: var(--kp-maroon) !important;
}

.mobile-toggle-open-container .menu-toggle-open,
.mobile-toggle-open-container .menu-toggle-open:hover,
.mobile-toggle-open-container .menu-toggle-open:focus {
	background: transparent !important;
	color: var(--kp-maroon) !important;
	box-shadow: none !important; 
}

/* ==========================================================
   04. BUTTONS & LINKS
   ========================================================== */

button:not(.kp-case-qty-button):not(.altein-qty-button),
.button:not(.kp-case-qty-button):not(.altein-qty-button),
.wp-element-button,
.wp-block-button__link,
input[type="button"],
input[type="reset"],
input[type="submit"],
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.wc-block-components-button:not(.is-link) {
	border: 1px solid var(--kp-maroon) !important;
	border-radius: var(--kp-radius-sm) !important;
	background: var(--kp-maroon) !important;
	color: var(--kp-white) !important;
	font-weight: 700;
	text-decoration: none;
	box-shadow: none !important;
	transition: background-color var(--kp-transition), border-color var(--kp-transition), color var(--kp-transition) !important;
}

button:not(.kp-case-qty-button):not(.altein-qty-button):hover,
button:not(.kp-case-qty-button):not(.altein-qty-button):focus,
.button:not(.kp-case-qty-button):not(.altein-qty-button):hover,
.button:not(.kp-case-qty-button):not(.altein-qty-button):focus,
.wp-element-button:hover,
.wp-element-button:focus,
.wp-block-button__link:hover,
.wp-block-button__link:focus,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.wc-block-components-button:not(.is-link):hover,
.wc-block-components-button:not(.is-link):focus {
	border-color: var(--kp-maroon-dark) !important;
	background: var(--kp-maroon-dark) !important;
	color: var(--kp-white) !important;
	transform: none !important;
}

.wp-block-button.is-style-outline .wp-block-button__link,
.button-style-outline,
.kb-btn-global-outline {
	border-color: var(--kp-maroon) !important;
	background: transparent !important;
	color: var(--kp-maroon) !important;
}

.wp-block-button.is-style-outline .wp-block-button__link:hover,
.button-style-outline:hover,
.kb-btn-global-outline:hover {
	background: var(--kp-maroon) !important;
	color: var(--kp-white) !important;
}

/* ==========================================================
   05. HERO SECTIONS
   Set the hero image in the Kadence block editor. This CSS
   supplies the elegant overlay without hardcoding an old image.
   ========================================================== */

.hero-section-overlay {
	position: relative;
	background-color: var(--kp-maroon-dark);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.hero-section-overlay::before {
	position: absolute;
	inset: 0;
	z-index: 0;
	content: "";
	background: linear-gradient(90deg, rgba(45, 8, 13, 0.88) 0%, rgba(63, 15, 21, 0.66) 48%, rgba(63, 15, 21, 0.28) 100%);
	pointer-events: none;
}

.hero-section-overlay > * {
	position: relative;
	z-index: 1;
}

.hero-section-overlay h1,
.hero-section-overlay h2,
.hero-section-overlay p {
	color: var(--kp-white) !important;
}

/* Homepage hero title: maintain contrast across the food photograph. */
.kt-adv-heading118_1486cc-21.wp-block-kadence-advancedheading {
	background: transparent !important;
	color: var(--kp-white) !important;
	text-shadow:
		0 2px 2px rgba(25, 4, 8, 0.95),
		0 4px 7px rgba(25, 4, 8, 0.82),
		0 8px 20px rgba(25, 4, 8, 0.68) !important;
}

/* Subtitle and call-to-action inside the same homepage hero column. */
.kt-inside-inner-col:has(.kt-adv-heading118_1486cc-21)
	.wp-block-kadence-advancedheading:not(.kt-adv-heading118_1486cc-21),
.kt-inside-inner-col:has(.kt-adv-heading118_1486cc-21) p {
	text-shadow:
		0 1px 2px rgba(25, 4, 8, 0.95),
		0 3px 8px rgba(25, 4, 8, 0.78),
		0 6px 16px rgba(25, 4, 8, 0.62) !important;
}

.kt-inside-inner-col:has(.kt-adv-heading118_1486cc-21) .kb-button,
.kt-inside-inner-col:has(.kt-adv-heading118_1486cc-21) .wp-block-button__link,
.kt-inside-inner-col:has(.kt-adv-heading118_1486cc-21) .button {
	text-shadow: 0 2px 3px rgba(25, 4, 8, 0.65) !important;
	box-shadow:
		0 4px 10px rgba(25, 4, 8, 0.42),
		0 9px 22px rgba(25, 4, 8, 0.30) !important;
}

.hero-section-overlay .wp-block-button.is-style-outline .wp-block-button__link {
	border-color: var(--kp-copper-light) !important;
	color: var(--kp-ivory) !important;
}

.hero-section-overlay .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: var(--kp-copper) !important;
	color: var(--kp-maroon-dark) !important;
}

/* Existing homepage bottom callout. */
.kb-row-layout-id118_8d40ac-e2 {
	background-color: var(--kp-maroon-dark) !important;
	background-image: none !important;
}

.kadence-column118_954cf8-8f > .kt-inside-inner-col {
	border: 1px solid rgba(185, 130, 74, 0.35);
	border-radius: var(--kp-radius);
	background-color: rgba(250, 246, 238, 0.94) !important;
	box-shadow: var(--kp-shadow);
}

/* ==========================================================
   06. HOMEPAGE FEATURE SECTIONS
   ========================================================== */

/* Existing three homepage feature cards. */
.kadence-column118_9b6e33-3d > .kt-inside-inner-col,
.kadence-column118_8990f0-ad > .kt-inside-inner-col,
.kadence-column118_6250d7-6a > .kt-inside-inner-col {
	min-height: 310px;
	border: 1px solid rgba(185, 130, 74, 0.42);
	border-radius: var(--kp-radius-lg);
	background: linear-gradient(150deg, var(--kp-maroon) 0%, var(--kp-maroon-dark) 100%) !important;
	box-shadow: var(--kp-shadow);
}

.wp-block-kadence-advancedheading.kt-adv-heading118_2afb1f-4e,
.wp-block-kadence-advancedheading.kt-adv-heading118_d232d1-83,
.wp-block-kadence-advancedheading.kt-adv-heading118_943994-15 {
	color: var(--kp-ivory) !important;
}

.wp-block-kadence-advancedheading.kt-adv-heading118_4fd1a5-2e {
	color: var(--kp-maroon) !important;
	font-size: clamp(2rem, 4vw, 2.6rem) !important;
}

.wp-block-kadence-infobox .kt-info-svg-icon svg,
.wp-block-kadence-infobox .kt-info-svg-icon-flip svg,
.wp-block-kadence-infobox .kt-blocks-info-box-number svg {
	color: var(--kp-copper) !important;
}

/* Optional two-panel story section. Image belongs in the editor. */
.square-split > .kt-row-column-wrap {
	overflow: hidden;
	border-radius: var(--kp-radius-lg);
	background: var(--kp-white);
	box-shadow: var(--kp-shadow-sm);
}

.kt-row-column-wrap > .kadence-column118_d79ce4-46 {
	background: var(--kp-white);
}

.wp-block-kadence-column.kadence-column118_25b217-0c {
	background-color: var(--kp-maroon);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

/* ==========================================================
   07. WOOCOMMERCE SHOP GRID
   ========================================================== */

.woocommerce-result-count {
	display: none !important;
}

.woocommerce ul.products {
	row-gap: 28px;
}

.woocommerce ul.products li.product {
	padding: 18px !important;
	border: 1px solid var(--kp-border);
	border-radius: var(--kp-radius);
	background: var(--kp-white);
	box-shadow: var(--kp-shadow-sm);
	box-sizing: border-box;
	transition: border-color var(--kp-transition), box-shadow var(--kp-transition) !important;
}

.woocommerce ul.products li.product:hover,
.woocommerce ul.products li.product:focus-within {
	border-color: var(--kp-copper-light);
	box-shadow: var(--kp-shadow);
	transform: none !important;
}

.woocommerce ul.products li.product img {
	border-radius: calc(var(--kp-radius) - 2px);
	background: var(--kp-cream);
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	margin-top: 12px;
	font-size: 1.12rem;
	font-weight: 750;
	line-height: 1.3;
}

/* Keep Kadence's action area visible instead of revealing it on hover. */
.woocommerce ul.products.woo-archive-action-on-hover li.product .product-action-wrap,
.woocommerce ul.products.woo-archive-action-on-hover li.product:hover .product-action-wrap,
.woocommerce ul.products.woo-archive-action-on-hover li.product:focus-within .product-action-wrap,
.woocommerce ul.products li.product .product-action-wrap,
.woocommerce ul.products li.product:hover .product-action-wrap,
.woocommerce ul.products li.product:focus-within .product-action-wrap {
	position: static !important;
	inset: auto !important;
	display: block !important;
	width: 100% !important;
	height: auto !important;
	margin: 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
	transition: none !important;
}

.woocommerce ul.products li.product .entry-content-wrap {
	transform: none !important;
	transition: none !important;
}

/* Category filter tabs. Supports the existing class name. */
.altein-category-tabs,
.kp-category-tabs {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 10px 0 28px;
	padding: 3px 0 10px;
	overflow-x: auto;
	scrollbar-width: thin;
	-webkit-overflow-scrolling: touch;
}

.altein-category-tabs button,
.kp-category-tabs button {
	flex: 0 0 auto;
	padding: 10px 19px;
	border: 1px solid var(--kp-copper) !important;
	border-radius: 999px !important;
	background: transparent !important;
	color: var(--kp-maroon) !important;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.2;
	white-space: nowrap;
}

.altein-category-tabs button:hover,
.altein-category-tabs button:focus-visible,
.altein-category-tabs button.active,
.kp-category-tabs button:hover,
.kp-category-tabs button:focus-visible,
.kp-category-tabs button.active {
	border-color: var(--kp-maroon) !important;
	background: var(--kp-maroon) !important;
	color: var(--kp-white) !important;
}

.altein-category-tabs + .altein-no-products,
.kp-category-tabs + .kp-no-products {
	margin: 10px 0 30px;
	padding: 18px;
	border: 1px solid var(--kp-border);
	border-radius: var(--kp-radius);
	background: var(--kp-white);
	color: var(--kp-maroon);
	text-align: center;
}

.woocommerce ul.products li.product.altein-filter-hidden,
.woocommerce ul.products li.product.kp-filter-hidden {
	display: none !important;
}

/* The old More Info button is intentionally hidden. */
.woocommerce ul.products li.product .altein-more-info-button,
.woocommerce ul.products li.product .kp-more-info-button {
	display: none !important;
}

/* ==========================================================
   08. PRICE, CASE DETAILS & QUANTITY CONTROLS
   ========================================================== */

.woocommerce ul.products li.product .kp-shop-price-details {
	display: flex;
	align-items: baseline;
	justify-content: center;
	flex-wrap: wrap;
	gap: 5px;
	min-height: 28px;
	margin: 7px 0 4px;
	color: var(--kp-charcoal);
	text-align: center;
}

.woocommerce ul.products li.product .kp-shop-price-per-lb,
.woocommerce .kp-price-per-lb {
	color: var(--kp-maroon) !important;
	font-size: 1.12rem;
	font-weight: 800;
}

.kp-shop-price-unit {
	font-size: 0.78em;
	font-weight: 750;
}

.kp-shop-details-divider {
	color: var(--kp-copper);
	font-weight: 800;
}

.kp-shop-case-details {
	color: var(--kp-warm-gray);
	font-size: 0.78rem;
	font-weight: 500;
	line-height: 1.35;
}

.kp-case-cart-controls,
.altein-shop-cart-controls {
	position: static !important;
	display: flex !important;
	align-items: stretch;
	justify-content: center;
	gap: 9px;
	width: 100%;
	margin: 15px 0 0 !important;
	opacity: 1 !important;
	visibility: visible !important;
	transform: none !important;
}

.kp-case-stepper,
.altein-shop-cart-controls .quantity {
	display: inline-flex;
	align-items: stretch;
	flex-shrink: 0;
	height: 46px;
	margin: 0 !important;
	padding: 0;
	overflow: hidden;
	border: 1px solid var(--kp-border) !important;
	border-radius: var(--kp-radius-sm);
	background: var(--kp-ivory);
}

.kp-case-stepper .quantity {
	display: contents;
}

.kp-case-stepper .kp-case-qty,
.altein-shop-cart-controls .qty {
	width: 42px;
	height: 46px;
	min-height: 46px;
	margin: 0;
	padding: 0;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--kp-white) !important;
	color: var(--kp-charcoal) !important;
	font-size: 15px;
	font-weight: 750;
	line-height: 46px;
	text-align: center;
	box-shadow: none !important;
	appearance: textfield;
	-moz-appearance: textfield;
}

.kp-case-stepper .kp-case-qty::-webkit-inner-spin-button,
.kp-case-stepper .kp-case-qty::-webkit-outer-spin-button,
.altein-shop-cart-controls .qty::-webkit-inner-spin-button,
.altein-shop-cart-controls .qty::-webkit-outer-spin-button {
	margin: 0;
	-webkit-appearance: none;
}

.kp-case-qty-button,
.altein-shop-cart-controls .altein-qty-button,
.altein-shop-cart-controls .altein-qty-button:hover,
.altein-shop-cart-controls .altein-qty-button:focus {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	min-width: 34px;
	height: 46px;
	min-height: 46px;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
	background: var(--kp-cream) !important;
	color: var(--kp-maroon) !important;
	font-size: 20px;
	font-weight: 700;
	line-height: 1;
	box-shadow: none !important;
	transform: none !important;
}

.kp-case-qty-button:hover,
.kp-case-qty-button:focus {
	background: var(--kp-copper-light) !important;
	color: var(--kp-maroon-dark) !important;
}

.kp-case-cart-controls .add_to_cart_button,
.altein-shop-cart-controls .button {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 46px;
	margin: 0 !important;
	padding: 11px 20px !important;
	white-space: nowrap;
}

.kp-case-cart-controls .added_to_cart,
.altein-shop-cart-controls .added_to_cart {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: var(--kp-maroon);
	font-weight: 700;
}

.kp-weight-pending {
	color: var(--kp-maroon);
	font-size: 0.88rem;
	font-weight: 700;
	line-height: 1.35;
}

/* ==========================================================
   09. CART & CHECKOUT BLOCKS
   ========================================================== */

/* Shared cart and checkout palette */
.woocommerce-cart .wc-block-cart,
.woocommerce-checkout .wc-block-checkout {
	color: var(--kp-charcoal);
}

.woocommerce-cart .wc-block-cart-items,
.woocommerce-checkout .wc-block-components-order-summary {
	border-color: var(--kp-border) !important;
	background: var(--kp-white);
	box-shadow: 0 8px 24px rgba(63, 15, 21, 0.06);
}

.woocommerce-cart .wc-block-cart-items__header,
.woocommerce-checkout .wc-block-components-order-summary__button-text,
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-block > .wc-block-components-checkout-step__heading {
	color: var(--kp-maroon-dark) !important;
	font-weight: 800;
}

.woocommerce-cart .wc-block-cart-items__row,
.woocommerce-checkout .wc-block-components-order-summary-item {
	border-color: var(--kp-border) !important;
}

.woocommerce-cart .wc-block-components-product-name,
.woocommerce-checkout .wc-block-components-product-name {
	color: var(--kp-maroon-dark) !important;
	font-weight: 750;
}

.woocommerce-cart .wc-block-components-quantity-selector {
	border: 1px solid var(--kp-border) !important;
	border-radius: 6px !important;
	background: var(--kp-white) !important;
}

.woocommerce-cart .wc-block-components-quantity-selector__button {
	background: var(--kp-maroon) !important;
	color: var(--kp-white) !important;
}

.woocommerce-cart .wc-block-components-quantity-selector__button:hover,
.woocommerce-cart .wc-block-components-quantity-selector__button:focus {
	background: var(--kp-maroon-dark) !important;
}

.woocommerce-cart .wc-block-components-quantity-selector__input {
	color: var(--kp-charcoal) !important;
	font-weight: 700;
}

.woocommerce-cart .wc-block-cart-item__remove-link {
	color: var(--kp-maroon) !important;
	font-weight: 700;
}

.woocommerce-cart .wc-block-cart-item__remove-link:hover,
.woocommerce-cart .wc-block-cart-item__remove-link:focus {
	color: var(--kp-copper) !important;
}

.woocommerce-cart .wc-block-cart__submit-button,
.woocommerce-checkout .wc-block-components-checkout-place-order-button {
	border: 1px solid var(--kp-maroon) !important;
	border-radius: 6px !important;
	background: var(--kp-maroon) !important;
	color: var(--kp-white) !important;
	font-weight: 800;
	box-shadow: 0 5px 14px rgba(63, 15, 21, 0.16);
}

.woocommerce-cart .wc-block-cart__submit-button:hover,
.woocommerce-cart .wc-block-cart__submit-button:focus,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout .wc-block-components-checkout-place-order-button:focus {
	border-color: var(--kp-maroon-dark) !important;
	background: var(--kp-maroon-dark) !important;
	color: var(--kp-white) !important;
}

.woocommerce-cart .wc-block-components-product-badge,
.woocommerce-checkout .wc-block-components-order-summary-item__quantity {
	border-color: var(--kp-copper) !important;
	background: var(--kp-maroon) !important;
	color: var(--kp-white) !important;
	box-shadow: 0 0 0 2px var(--kp-ivory) !important;
}

/* Hide the estimated subtotal in mini-cart drawers only. */
.widget_shopping_cart_content .woocommerce-mini-cart__total,
.woocommerce-mini-cart__total,
.wc-block-mini-cart__footer-subtotal {
	display: none !important;
}

/* Show the actual per-pound rate supplied by the Blocks extension. */
.kp-block-price-per-lb {
	display: inline-block;
	color: var(--kp-maroon);
	font-weight: 800;
}

/* WooCommerce requires this internal price token, but customers should never
   see the placeholder $0.00 calculation value. */
.kp-block-zero-price {
	display: none !important;
}

/* The zero-dollar Blocks calculation price is never customer-facing. The
   actual rate is supplied below through the Price per lb cart-item field. */
.woocommerce-cart .wc-block-components-product-price,
.woocommerce-checkout .wc-block-components-order-summary-item__description > .wc-block-components-product-price,
.woocommerce-checkout .wc-block-components-order-summary-item__individual-prices {
	display: none !important;
}

.wc-block-components-product-details__price-per-lb,
.woocommerce-cart .variation-Priceperlb {
	display: flex !important;
	align-items: baseline;
	gap: 5px;
	margin-top: 3px !important;
	color: var(--kp-maroon);
}

.wc-block-components-product-details__price-per-lb .wc-block-components-product-details__name,
.woocommerce-cart .variation-Priceperlb dt {
	font-size: 0;
}

.wc-block-components-product-details__price-per-lb .wc-block-components-product-details__name::after,
.woocommerce-cart .variation-Priceperlb dt::after {
	content: "Price per lb:";
	font-size: 0.82rem;
	font-weight: 700;
}

.kp-cart-rate,
.wc-block-components-product-details__price-per-lb .wc-block-components-product-details__value {
	color: var(--kp-maroon);
	font-size: 0.8rem;
	font-weight: 600;
}

/* ==========================================================
 * 08. CASH/ZELLE PRICING – CART & CHECKOUT STYLING
 * ========================================================== */

.wc-block-components-product-details {
    margin: 3px 0 0 !important;
    padding: 0 !important; 
}

.wc-block-components-product-details li {
    display: block !important;
    font-size: 11px !important;
    line-height: 1.5 !important;
    margin: 2px 0 !important;
}

.wc-block-components-product-details__cash-zelle-2-off {
    color: var(--kp-maroon) !important;
    font-weight: 800 !important;
    /display: block;
}

/* Cart Block: remove the line-total column and every totals summary, while
   leaving quantities, remove buttons and Proceed to Checkout available. */
.wc-block-cart-items__header-total,
.wc-block-cart-item__total,
.wc-block-cart .wc-block-cart__totals-title,
.wc-block-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper,
.wc-block-cart .wc-block-components-totals-footer-item,
.woocommerce-cart .wp-block-woocommerce-cart-order-summary-heading-block,
.woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block,
.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item {
	display: none !important;
}

/* In every current Cart Block layout, the submit block is the only sidebar
   element needed for this order-request workflow. */
.woocommerce-cart .wc-block-cart__sidebar > *:not(.wc-block-cart__submit):not(.wp-block-woocommerce-proceed-to-checkout-block) {
	display: none !important;
}

.wc-block-cart-items__header-image,
.wc-block-cart-item__image {
	width: 80px;
}

.wc-block-cart-item__product {
	padding-right: 0 !important;
}

/* Checkout Block: retain the product list and its price-per-pound line, but
   remove each line subtotal plus the subtotal/total summary underneath. */
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__total-price,
.wc-block-checkout__sidebar .wc-block-components-order-summary-item__individual-prices,
.wc-block-checkout__sidebar > .wc-block-components-totals-wrapper,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-subtotal-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-fee-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-discount-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-shipping-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-taxes-block,
.wc-block-checkout__sidebar .wp-block-woocommerce-checkout-order-summary-totals-block,
.wc-block-checkout__sidebar .wc-block-components-totals-footer-item,
.woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-item {
	display: none !important;
}

/* Keep one product list if the Checkout page contains a duplicated Cart
   Items block inside its Order Summary. */
.woocommerce-checkout .wp-block-woocommerce-checkout-order-summary-cart-items-block
	~ .wp-block-woocommerce-checkout-order-summary-cart-items-block {
	display: none !important;
}

/* WooCommerce can render a second responsive summary container inside the
   same Cart Items block. Keep the first rendered summary only. */
.woocommerce-checkout .wc-block-checkout__sidebar
	.wc-block-components-order-summary ~ .wc-block-components-order-summary {
	display: none !important;
}

/* Classic-template fallbacks, in case a page is switched away from Blocks. */
.woocommerce-cart th.product-subtotal,
.woocommerce-cart td.product-subtotal,
.woocommerce-cart .cart_totals > h2,
.woocommerce-cart .cart_totals > .shop_table,
.woocommerce-checkout-review-order-table th.product-total,
.woocommerce-checkout-review-order-table td.product-total,
.woocommerce-checkout-review-order-table tfoot {
	display: none !important;
}

.wc-block-cart,
.wc-block-checkout,
.woocommerce-cart-form,
.woocommerce-checkout {
	color: var(--kp-charcoal);
}

.wc-block-components-sidebar-layout .wc-block-components-main,
.wc-block-components-sidebar,
.wc-block-checkout__form,
.wc-block-components-order-summary {
	border-color: var(--kp-border);
}

.wc-block-components-order-summary,
.wc-block-components-totals-wrapper,
.wc-block-components-panel,
.wc-block-checkout__pickup-options,
.wc-block-checkout__shipping-method-option {
	background: var(--kp-white);
}

.wc-block-components-order-summary {
	border: 1px solid var(--kp-border);
	border-radius: var(--kp-radius);
	box-shadow: var(--kp-shadow-sm);
}

.wc-block-components-title,
.wc-block-components-checkout-step__title,
.wc-block-components-order-summary__button-text,
.wc-block-components-totals-item__label {
	color: var(--kp-maroon-dark);
}

.wc-block-components-text-input input,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-components-address-form select,
.wc-block-components-country-input select,
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	border: 1px solid var(--kp-border) !important;
	border-radius: var(--kp-radius-sm) !important;
	background: var(--kp-white) !important;
	color: var(--kp-charcoal) !important;
	box-shadow: none !important;
}

.wc-block-components-text-input input:focus,
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input:focus,
.wc-block-components-address-form select:focus,
.woocommerce form .form-row input.input-text:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	border-color: var(--kp-copper) !important;
	outline: 3px solid rgba(185, 130, 74, 0.18) !important;
}

.wc-block-checkout__shipping-method-option,
.wc-block-checkout__pickup-option {
	border: 1px solid var(--kp-border) !important;
	background: var(--kp-white) !important;
	color: var(--kp-charcoal) !important;
}

.wc-block-checkout__shipping-method-option--selected,
.wc-block-checkout__pickup-option--selected {
	border: 2px solid var(--kp-maroon) !important;
	background: var(--kp-blush) !important;
	color: var(--kp-maroon-dark) !important;
}

.wc-block-components-radio-control__input:checked {
	border-color: var(--kp-maroon) !important;
	background: var(--kp-maroon) !important;
}

.wc-block-components-checkout-return-to-cart-button,
.wc-block-components-button.is-link {
	color: var(--kp-maroon) !important;
}

.kp-block-weight-notice,
.kp-weight-pricing-notice {
	margin-bottom: 20px !important;
	border: 1px solid var(--kp-copper-light) !important;
	border-left: 5px solid var(--kp-copper) !important;
	border-radius: var(--kp-radius-sm);
	background: var(--kp-cream) !important;
	color: var(--kp-charcoal) !important;
}

/* ==========================================================
   10. ACCOUNT & SAVED PAYMENT METHODS
   ========================================================== */

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-PaymentMethods,
.woocommerce-MyAccount-paymentMethods {
	border-color: var(--kp-border);
}

.woocommerce-account .woocommerce-MyAccount-navigation {
	overflow: hidden;
	border: 1px solid var(--kp-border);
	border-radius: var(--kp-radius);
	background: var(--kp-white);
}

.woocommerce-account .woocommerce-MyAccount-navigation-link a {
	display: block;
	padding: 11px 15px;
	border-bottom: 1px solid var(--kp-border);
	color: var(--kp-charcoal);
}

.woocommerce-account .woocommerce-MyAccount-navigation-link.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation-link a:hover {
	background: var(--kp-blush);
	color: var(--kp-maroon);
}

.kp-return-to-checkout {
	margin-top: 20px;
}

/* ==========================================================
   11. FORMS, NOTICES & UTILITY ELEMENTS
   ========================================================== */

.woocommerce-notices-wrapper .woocommerce-message,
.woocommerce-notices-wrapper .woocommerce-info,
.woocommerce-notices-wrapper .woocommerce-error,
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-top-color: var(--kp-copper);
	background-color: var(--kp-white);
	color: var(--kp-charcoal);
}

.woocommerce-notices-wrapper .woocommerce-message::before,
.woocommerce-notices-wrapper .woocommerce-info::before,
.woocommerce-message::before,
.woocommerce-info::before {
	color: var(--kp-success);
}

.woocommerce-notices-wrapper .woocommerce-error::before,
.woocommerce-error::before {
	color: var(--kp-error);
}

.woocommerce-notices-wrapper a,
.kadence-breadcrumbs {
	color: var(--kp-maroon);
}

.woocommerce-Tabs-panel--description > h2:first-child {
	display: none;
}

table.shop_table,
.woocommerce table.shop_table {
	border-color: var(--kp-border);
	background: var(--kp-white);
}

table.shop_table th,
.woocommerce table.shop_table th {
	color: var(--kp-maroon-dark);
}

/* Optional bulk-pricing plugin table, if retained. */
.awdr-dragable {
	padding: 8px !important;
	background: var(--kp-maroon);
	color: var(--kp-white);
}

.shop-bulk-price {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding-top: 12px;
	color: var(--kp-maroon);
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}

.shop-bulk-price table,
.shop-bulk-price tbody,
.shop-bulk-price tr,
.shop-bulk-price td {
	background: transparent !important;
	box-shadow: none !important;
}

/* ==========================================================
   12. FOOTER
   ========================================================== */

.site-footer {
	padding: 24px 0;
	background: var(--kp-maroon-dark);
	color: var(--kp-ivory);
	text-align: center;
}

.site-footer p {
	margin: 0;
}

.site-footer h2,
.site-footer h3,
.site-footer h4,
.site-footer a {
	color: var(--kp-ivory);
}

.site-footer a:hover,
.site-footer a:focus {
	color: var(--kp-copper-light);
}

/* ==========================================================
   13. LEGACY PAGE COMPONENTS
   Retained for existing Kadence block IDs, but recolored.
   ========================================================== */

.kt-accordion-id196_313ec4-2c > .kt-accordion-inner-wrap > .wp-block-kadence-pane > .kt-accordion-header-wrap > .kt-blocks-accordion-header {
	margin-bottom: 10px !important;
	border: 1px solid var(--kp-border) !important;
	background: var(--kp-white) !important;
	color: var(--kp-charcoal) !important;
}

.kt-accordion-id196_313ec4-2c .kt-accordion-header-wrap .kt-blocks-accordion-header:focus-visible,
.kt-accordion-id196_313ec4-2c > .kt-accordion-inner-wrap > .wp-block-kadence-pane > .kt-accordion-header-wrap > .kt-blocks-accordion-header.kt-accordion-panel-active {
	border-color: var(--kp-maroon) !important;
	background: var(--kp-maroon) !important;
	color: var(--kp-white) !important;
}

/* ==========================================================
   14. RESPONSIVE STYLES
   ========================================================== */

@media (min-width: 1025px) {
	.square-split > .kt-row-column-wrap {
		aspect-ratio: 2 / 1;
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.square-split .wp-block-kadence-column {
		height: 100%;
		min-height: 0;
	}
}

@media (max-width: 1024px) {
	/* Clean mobile header controls: icons and cart count only. */
	.site-header .mobile-toggle-open-container .menu-toggle-open,
	.site-header .mobile-toggle-open-container .menu-toggle-open:hover,
	.site-header .mobile-toggle-open-container .menu-toggle-open:focus,
	.site-header .header-cart-button,
	.site-header .header-cart-button:hover,
	.site-header .header-cart-button:focus {
		min-width: 0 !important;
		padding: 8px !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		color: var(--kp-maroon) !important;
		box-shadow: none !important;
	}

	.site-header .mobile-toggle-open-container .menu-toggle-icon,
	.site-header .mobile-toggle-open-container svg,
	.site-header .header-cart-button .kadence-svg-iconset,
	.site-header .header-cart-button svg {
		color: var(--kp-maroon) !important;
		fill: currentColor;
	}

	.site-header .header-cart-total {
		position: static !important;
		min-width: 0 !important;
		height: auto !important;
		margin-left: 3px !important;
		padding: 0 !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		color: var(--kp-maroon) !important;
		font-size: 0.82rem !important;
		font-weight: 800 !important;
		line-height: 1 !important;
		box-shadow: none !important;
	}

	.square-split > .kt-row-column-wrap {
		aspect-ratio: auto;
	}

	.square-split .wp-block-kadence-column:last-child {
		min-height: 300px;
	}
}

@media (max-width: 767px) {
	.altein-category-tabs,
	.kp-category-tabs {
		width: calc(100% + 30px);
		margin: 5px -15px 20px;
		padding: 4px 15px 12px;
		gap: 8px;
		overflow-x: auto;
		overflow-y: hidden;
		flex-wrap: nowrap;
		scroll-snap-type: x proximity;
		scroll-padding-left: 15px;
		scrollbar-width: none;
	}

	.altein-category-tabs::-webkit-scrollbar,
	.kp-category-tabs::-webkit-scrollbar {
		display: none;
	}

	.altein-category-tabs button,
	.kp-category-tabs button {
		min-height: 42px;
		padding: 9px 15px;
		font-size: 14px;
		scroll-snap-align: start;
	}

	.woocommerce ul.products li.product {
		padding: 14px !important;
	}

	.kp-case-cart-controls,
	.altein-shop-cart-controls {
		flex-wrap: wrap;
	}

	.kp-case-cart-controls .add_to_cart_button,
	.altein-shop-cart-controls .button {
		flex: 1 1 130px;
	}

	.wc-block-components-sidebar-layout .wc-block-components-main,
	.wc-block-components-sidebar {
		width: 100% !important;
	}
}

@media (max-width: 480px) {
	.hero-section-overlay::before {
		background: rgba(63, 15, 21, 0.72);
	}

	.kp-case-cart-controls .add_to_cart_button,
	.altein-shop-cart-controls .button {
		width: 100%;
		flex-basis: 100%;
	}

	.kp-shop-price-details {
		padding-inline: 4px;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
	}
}

/* misc */
/.entry-hero-container-inner {
    background: var(--kp-copper-light) !important;

}

.woocommerce-notices-wrapper .woocommerce-message, .woocommerce-notices-wrapper .woocommerce-info, .woocommerce-notices-wrapper .woocommerce-error, .woocommerce-message, .woocommerce-info, .woocommerce-error {
    padding: 10px !important;
}

@media (max-width: 1024px) {
	.site-header .mobile-toggle-open-container .menu-toggle-open, .site-header .mobile-toggle-open-container .menu-toggle-open:hover, .site-header .mobile-toggle-open-container .menu-toggle-open:focus, .site-header .header-cart-button, .site-header .header-cart-button:hover, .site-header .header-cart-button:focus{
		background: var(--kp-maroon) !important;
	}
    .site-header .mobile-toggle-open-container .menu-toggle-icon, .site-header .mobile-toggle-open-container svg, .site-header .header-cart-button .kadence-svg-iconset, .site-header .header-cart-button svg {
        color: var(--kp-maroon) !important;
        fill: #f0f0f1 !important;
    }
	.mobile-navigation ul li.current-menu-item > a, .mobile-navigation ul li.current-menu-item.menu-item-has-children > .drawer-nav-drop-wrap {
		color: var(--kp-copper-light) !important;
	}
	    .site-header .header-cart-total {
        color: #f0f0f1 !important;
    }
}

button:not(.kp-case-qty-button):not(.altein-qty-button), .button:not(.kp-case-qty-button):not(.altein-qty-button), .wp-element-button, .wp-block-button__link, input[type="button"], input[type="reset"], input[type="submit"], .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .wc-block-components-button:not(.is-link) {
    padding: 10px !important;
}

.site-header .header-cart-total {
    border: 0px solid var(--kp-ivory) !important;
}

/* WooCommerce Block Cart remove button */
.wc-block-cart-item__remove-link {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    padding: 0 !important;
    position: relative !important;
    overflow: hidden !important;
    font-size: 0 !important;
    border-radius: 5px !important;
}

/* Replace the misaligned icon with a centered × */
.wc-block-cart-item__remove-link::before {
    content: "\00D7" !important;
    position: absolute !important;
    inset: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    color: white !important;
    font-family: Arial, sans-serif !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    margin: 0 !important;
    transform: none !important;
}

.wc-block-cart-item__remove-link::after {
    display: none !important;
}

/* ==========================================================
 *  Add to Cart on Prod Page Fix 
 * ========================================================== */

/* Fix Add to Cart button on product pages */
.single-product form.cart {
    display: flex !important;
    align-items: stretch !important;
    gap: 5px !important;
}

.single-product form.cart .single_add_to_cart_button {
    min-height: 42px !important;
    padding: 8px 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

.single-product form.cart .quantity input.qty {
    height: 42px !important;
}






.kp-dual-price {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: end;
    margin: 15px 0;
}

.kp-regular-column,
.kp-cash-column {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.kp-cash-column {
    border-left: 3px solid #b89522;
    padding-left: 13px;
}

.kp-price-label {
    color: #777;
    font-size: 10px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: 0.35px;
    margin-bottom: 4px;
}

.kp-regular-amount {
    color: #999;
    font-size: 16px;
    line-height: 1;
    font-weight: 600;
    text-decoration: line-through;
}

.kp-cash-amount {
    color: #411b16;
    font-size: 23px;
    line-height: 1;
    font-weight: 800;
}

.kp-regular-amount small,
.kp-cash-amount small {
    font-size: 10px;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
}

@media (max-width: 480px) {
    .kp-price-label {
        font-size: 9px;
    }

    .kp-cash-amount {
        font-size: 20px;
    }
}




/*  */
.kp-dual-price {
    display: grid;
    grid-template-columns: 1fr 1.15fr;
    align-items: end;
    width: 100%;
    margin: 12px 0 8px;
}

.kp-regular-column,
.kp-cash-column {
    display: flex;
    flex-direction: column;
}

.kp-cash-column {
    border-left: 3px solid #d6a300;
    padding-left: 13px;
}

.kp-price-label {
    color: #777;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: .3px;
    margin-bottom: 4px;
    white-space: nowrap;
}

.kp-regular-amount {
    color: #999;
    font-size: 15px;
    line-height: 1;
    font-weight: 600;
    text-decoration: line-through;
}

.kp-cash-amount {
    color: #65101c;
    font-size: 21px;
    line-height: 1;
    font-weight: 800;
}

.kp-regular-amount small,
.kp-cash-amount small {
    font-size: 9px;
    font-weight: 600;
    text-decoration: none;
    display: inline-block;
}

@media (max-width: 480px) {
    .kp-dual-price {
        grid-template-columns: .9fr 1.1fr;
    }

    .kp-price-label {
        font-size: 8px;
    }

    .kp-cash-amount {
        font-size: 19px;
    }
}




/*  */.kp-shop-price-details {
    display: block !important;
    margin-top: 12px;
}

.kp-shop-dual-price {
    display: grid;
    grid-template-columns: 1fr 1.2fr;
    align-items: end;
    width: 100%;
}

.kp-shop-regular-price,
.kp-shop-cash-price {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.kp-shop-cash-price {
    border-left: 3px solid #d8ad7f;
    padding-left: 12px;
}

.kp-shop-price-label {
    color: #777;
    font-size: 9px;
    line-height: 1.2;
    font-weight: 600;
    letter-spacing: .3px;
    margin-bottom: 5px;
    white-space: nowrap;
}

.kp-shop-regular-amount {
    color: #999;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    /text-decoration: line-through;
}

.kp-shop-cash-amount {
    color: #65101c;
    font-size: 21px;
    font-weight: 800;
    line-height: 1;
}

.kp-shop-regular-amount small,
.kp-shop-cash-amount small {
    display: inline-block;
    font-size: 9px;
    font-weight: 600;
    text-decoration: none;
}

.kp-shop-case-details {
    display: block;
    margin-top: 9px;
    color: #666;
    font-size: 12px;
}
.kp-shop-case-details {
    display: block;
    width: 100%;
    margin-top: 9px;
    color: #666;
    font-size: 12px;
    line-height: 1.35;
}


