/* Edglow bundle: edglow-brand, edglow-product-cards, edglow-latest-blogs, edglow-single-post, edglow-typography, edglow-pages, edglow-header, edglow-canvas, edglow-footer-boost, edglow-responsive, edglow-cart-drawer, edglow-ui, edglow-search, edglow-quiz, edglow-marquee, edglow-rhythm, edglow-fomo, edglow-badges */

/* ---- edglow-brand ---- */
/* ==========================================================================
   Edglow — Brand layer for Woodmart
   Palette pulled from the Edglow logo (deep teal) and GLOGIN packaging (copper)
   ========================================================================== */

:root {
	--edg-teal:        #0f4a44;
	--edg-teal-dark:   #0a3733;
	--edg-teal-soft:   #e7efed;
	--edg-teal-line:   #cfe0dd;
	--edg-copper:      #c89a64;
	--edg-copper-dark: #b0834f;
	--edg-copper-soft: #f6efe4;
	--edg-cream:       #faf7f2;
	--edg-cream-2:     #f3efe9;
	--edg-ink:         #14201e;
	--edg-body:        #5c6663;
	--edg-muted:       #8a9491;
	--edg-line:        #e6e2db;
	--edg-sale:        #b23b3b;
	--edg-radius:      8px;
	--edg-radius-lg:   16px;

	--wd-primary-color: #0f4a44;
	--wd-alternative-color: #c89a64;
	--wd-link-color: #14201e;
	--wd-link-color-hover: #0f4a44;
	--wd-text-color: #5c6663;
	--wd-title-color: #14201e;
	--wd-entities-title-color: #14201e;
	--wd-entities-title-color-hover: #0f4a44;
	--wd-widget-title-color: #14201e;

	--btn-accented-bgcolor: #0f4a44;
	--btn-accented-bgcolor-hover: #0a3733;
	--btn-default-bgcolor: #f3efe9;
	--btn-default-bgcolor-hover: #e8e1d6;

	--notices-success-bg: #0f4a44;
	--notices-success-color: #fff;
	--notices-warning-bg: #c89a64;
	--notices-warning-color: #fff;

	--wd-title-font: "Jost", "Helvetica Neue", Arial, sans-serif;
	--wd-entities-title-font: "Jost", "Helvetica Neue", Arial, sans-serif;
	--wd-widget-title-font: "Jost", "Helvetica Neue", Arial, sans-serif;
	--wd-alternative-font: "Jost", "Helvetica Neue", Arial, sans-serif;
	--wd-title-font-weight: 600;
	--wd-entities-title-font-weight: 600;
	--wd-widget-title-transform: none;
}

/* --------------------------------------------------------------- typography */

h1, h2, h3, h4, h5,
.title,
.wd-entities-title,
.widget-title,
.woocommerce-loop-product__title,
.product_title {
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-weight: 600;
	color: var(--edg-ink);
	letter-spacing: -0.01em;
}

.edg-script {
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-style: italic;
	font-weight: 500;
	color: var(--edg-copper);
}

body { color: var(--edg-body); }

/* ------------------------------------------------------------------ buttons */

.single_add_to_cart_button,
.woocommerce-cart .button[name="update_cart"],
.wc-proceed-to-checkout .checkout-button {
	background-color: var(--edg-teal) !important;
	color: #fff !important;
	border: 1px solid var(--edg-teal) !important;
	border-radius: var(--edg-radius) !important;
	font-weight: 700;
	letter-spacing: .02em;
}

.single_add_to_cart_button:hover,
.woocommerce-cart .button[name="update_cart"]:hover,
.wc-proceed-to-checkout .checkout-button:hover {
	background-color: var(--edg-teal-dark) !important;
	border-color: var(--edg-teal-dark) !important;
}

/* Buy Now (copper) */
.edg-buy-now {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	min-height: 48px;
	padding: 12px 24px;
	margin-top: 10px;
	border: 1px solid var(--edg-copper);
	border-radius: var(--edg-radius);
	background-color: var(--edg-copper);
	color: #fff;
	font-family: inherit;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: .04em;
	text-transform: uppercase;
	text-align: center;
	cursor: pointer;
	transition: background-color .2s ease, border-color .2s ease, transform .1s ease;
}

.edg-buy-now:hover,
.edg-buy-now:focus {
	background-color: var(--edg-copper-dark);
	border-color: var(--edg-copper-dark);
	color: #fff;
}

.edg-buy-now:active { transform: translateY(1px); }
.edg-buy-now.edg-loading { opacity: .65; pointer-events: none; }

.edg-buy-now--loop {
	min-height: 38px;
	margin-top: 6px;
	padding: 8px 14px;
	font-size: 12px;
}

/* ------------------------------------------------------- prices & discounts */

.price { color: var(--edg-teal); font-weight: 700; }

.price del,
.price del .woocommerce-Price-amount {
	color: var(--edg-muted) !important;
	font-weight: 400;
	text-decoration: line-through;
	text-decoration-thickness: 1px;
	opacity: 1;
}

.price ins,
.price ins .woocommerce-Price-amount {
	color: var(--edg-sale) !important;
	font-weight: 800;
	text-decoration: none;
	background: none;
}

.edg-save {
	display: inline-block;
	margin-inline-start: 8px;
	padding: 2px 8px;
	border-radius: 999px;
	background-color: var(--edg-copper-soft);
	color: var(--edg-copper-dark);
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: .03em;
	text-transform: uppercase;
	vertical-align: middle;
	white-space: nowrap;
}

.product-labels .onsale,
.product-label.onsale,
span.onsale {
	background-color: var(--edg-sale) !important;
	color: #fff !important;
	border-radius: 999px !important;
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif !important;
	font-size: 11px !important;
	font-weight: 800 !important;
	letter-spacing: .03em;
	text-transform: uppercase;
}

.product-labels .new,
.product-label.new {
	background-color: var(--edg-teal) !important;
	color: #fff !important;
	border-radius: 999px !important;
}

/* -------------------------------------------------------------- product card */

.wd-product .wd-entities-title { font-size: 15px; line-height: 1.35; }
.wd-product .wd-entities-title a:hover { color: var(--edg-teal); }
.wd-product .product-image-link img { border-radius: var(--edg-radius-lg); }

/* --------------------------------------------------------- single product */

.single-product .product_title {
	font-size: clamp(24px, 3.4vw, 38px);
	line-height: 1.15;
	margin-bottom: 10px;
}

.single-product .summary .price {
	display: flex;
	align-items: baseline;
	flex-wrap: wrap;
	gap: 10px;
	font-size: 26px;
	margin-bottom: 6px;
}

.single-product .summary .price del { font-size: 18px; }

.edg-trust {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	gap: 10px;
	margin: 22px 0 0;
	padding: 16px;
	border: 1px solid var(--edg-line);
	border-radius: var(--edg-radius-lg);
	background-color: var(--edg-cream);
	list-style: none;
}

.edg-trust li {
	display: flex;
	align-items: flex-start;
	gap: 9px;
	margin: 0;
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-size: 13px;
	line-height: 1.4;
	color: var(--edg-body);
}

.edg-trust li::before {
	content: "";
	flex: 0 0 16px;
	width: 16px;
	height: 16px;
	margin-top: 1px;
	border-radius: 50%;
	background: var(--edg-teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") center/10px no-repeat;
}

.edg-trust li strong { color: var(--edg-ink); font-weight: 700; }

.quantity .qty {
	border-radius: var(--edg-radius);
	border-color: var(--edg-line);
	font-weight: 700;
	color: var(--edg-ink);
}

/* ------------------------------------------------------------ cart & checkout */

.woocommerce-cart-form__contents th,
.shop_table thead th,
.cart_totals h2,
.woocommerce-checkout h3,
#order_review_heading {
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	color: var(--edg-ink);
}

.woocommerce-checkout #place_order,
#place_order {
	background-color: var(--edg-teal) !important;
	border-color: var(--edg-teal) !important;
	color: #fff !important;
	border-radius: var(--edg-radius) !important;
	min-height: 52px;
	font-size: 15px;
	font-weight: 800;
	letter-spacing: .03em;
}

.woocommerce-checkout #place_order:hover { background-color: var(--edg-teal-dark) !important; }

.woocommerce-checkout .wd-prefooter,
.woocommerce-cart .wd-prefooter,
.woocommerce-checkout .cross-sells,
.woocommerce-checkout .related.products {
	display: none !important;
}

.edg-checkout-steps {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	flex-wrap: wrap;
	margin: 0 0 26px;
	padding: 0;
	list-style: none;
	counter-reset: edgstep;
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
}

.edg-checkout-steps li {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .02em;
	color: var(--edg-muted);
	text-transform: uppercase;
}

.edg-checkout-steps li::before {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border-radius: 50%;
	background-color: var(--edg-cream-2);
	color: var(--edg-muted);
	font-size: 12px;
	counter-increment: edgstep;
	content: counter(edgstep);
}

.edg-checkout-steps li.is-active { color: var(--edg-teal); }

.edg-checkout-steps li.is-active::before,
.edg-checkout-steps li.is-done::before {
	background-color: var(--edg-teal);
	color: #fff;
}

.edg-checkout-steps li:not(:last-child) {
	padding-inline-end: 8px;
	border-inline-end: 1px solid var(--edg-line);
}

.edg-checkout-assure {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 22px;
	justify-content: center;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid var(--edg-line);
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-size: 12.5px;
	color: var(--edg-muted);
}

.cart-empty { font-family: "Jost", "Helvetica Neue", Arial, sans-serif; color: var(--edg-ink); }

/* ------------------------------------------------------------------- FAQ */

.edg-faq { max-width: 860px; margin-inline: auto; }
.edg-faq__item { border-bottom: 1px solid var(--edg-line); }

.edg-faq__q {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 18px;
	width: 100%;
	padding: 20px 2px;
	border: 0;
	background: none;
	color: var(--edg-ink);
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-size: 17px;
	font-weight: 600;
	line-height: 1.35;
	text-align: start;
	cursor: pointer;
}

.edg-faq__q:hover { color: var(--edg-teal); }

.edg-faq__q::after {
	content: "";
	flex: 0 0 18px;
	width: 18px;
	height: 18px;
	margin-top: 3px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f4a44' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/18px no-repeat;
	transition: transform .25s ease;
}

.edg-faq__item.is-open .edg-faq__q::after { transform: rotate(45deg); }

.edg-faq__a {
	display: none;
	padding: 0 2px 22px;
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-size: 14.5px;
	line-height: 1.7;
	color: var(--edg-body);
}

.edg-faq__item.is-open .edg-faq__a { display: block; }
.edg-faq__a a { color: var(--edg-teal); text-decoration: underline; }

/* --------------------------------------------------------------- footer */

.edg-footer-about {
	max-width: 320px;
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-size: 14px;
	line-height: 1.7;
}

.edg-footer-logo { max-width: 170px; height: auto; margin-bottom: 16px; }

.edg-contact-list {
	margin: 0;
	padding: 0;
	list-style: none;
	font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
	font-size: 14px;
	line-height: 1.7;
}

.edg-contact-list li { margin-bottom: 10px; }
.edg-contact-list a { color: inherit; }
.edg-contact-list a:hover { color: var(--edg-teal); }

/* ------------------------------------------------------------------ misc */

.wd-nav > li > a:hover,
.wd-nav > li.current-menu-item > a { color: var(--edg-teal); }

a:hover { color: var(--edg-teal); }

::selection { background-color: var(--edg-teal); color: #fff; }

/* ------------------------------------------------------------- responsive */

@media (max-width: 768.98px) {
	.single-product .summary .price { font-size: 22px; }
	.edg-buy-now,
	.single_add_to_cart_button { min-height: 50px; font-size: 14px; }
	.edg-trust { grid-template-columns: 1fr; }
	.edg-checkout-steps li { font-size: 11px; }
	.edg-faq__q { font-size: 16px; padding: 17px 2px; }
}


/* ================= layout corrections ================= */

/* hero copy */
.edg-hero-copy, .elementor-element-816d3fc { max-width: 640px; width: 100% !important; }
@media (max-width: 1024px) { .edg-hero-copy, .elementor-element-816d3fc { max-width: 100%; } }

/* trust bar */
.edg-trustbar, .elementor-element-c805da4 { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: 18px !important; align-items: start; }
.elementor-element-c805da4 > .e-con, .edg-trustbar > .e-con { width: auto !important; max-width: none !important; }
.elementor-element-c805da4 p, .edg-trustbar p { text-align: center; }
@media (max-width: 900px) { .edg-trustbar, .elementor-element-c805da4 { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 480px) { .edg-trustbar, .elementor-element-c805da4 { grid-template-columns: 1fr !important; } }

/* GLOGIN split section */
.edg-split, .elementor-element-9808007 { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 0 !important; }
.elementor-element-9808007 > .e-con, .edg-split > .e-con { width: auto !important; max-width: none !important; }
@media (max-width: 900px) { .edg-split, .elementor-element-9808007 { grid-template-columns: 1fr !important; } }

/* why-Edglow cards */
.edg-cardgrid, .elementor-element-c45f68e { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 20px !important; }
.elementor-element-c45f68e > .e-con, .edg-cardgrid > .e-con { width: auto !important; max-width: none !important; }
@media (max-width: 900px) { .edg-cardgrid, .elementor-element-c45f68e { grid-template-columns: 1fr !important; } }

/* FAQ questions read as sentences, not shouting */
.edg-faq__q { text-transform: none !important; letter-spacing: 0; }

/* even product cards */
.wd-product { display: flex; flex-direction: column; }
.wd-product > .wd-product-wrapper { flex: 1 1 auto; display: flex; flex-direction: column; }
.wd-product > .wd-product-wrapper > .price { margin-bottom: 8px; }
.wd-product > .wd-product-wrapper > .edg-buy-now--loop { margin-top: auto; }

/* free-delivery nudge */
.edg-ship-nudge { margin: 0 0 14px; padding: 10px 14px; border-radius: 8px; background: #f6efe4; color: #b0834f; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 13.5px; font-weight: 700; }
.edg-ship-nudge.is-free { background: #e7efed; color: #0f4a44; }

.edg-continue { display: inline-flex; align-items: center; margin-top: 14px; }

/* category tiles: one consistent crop */
.wd-cats .wd-cat-thumb { aspect-ratio: 3 / 4; overflow: hidden; border-radius: 12px; }
.wd-cats .wd-cat-thumb a { display: block; width: 100%; height: 100%; }
.wd-cats .wd-cat-thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.wd-cats .wd-cat-content { padding-top: 14px; text-align: center; }
.wd-cats .wd-cat-content .wd-entities-title { font-size: 16px; text-transform: none; letter-spacing: 0; }
.wd-cats .wd-cat-count { font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 12.5px; color: #8a9491; }

/* keep Buy Now aligned across a row */
.wd-products .wd-grid-g, .products.wd-grid-g { align-items: stretch; }
.wd-product { height: 100%; }

/* consistent card rhythm: two-line titles, one-line prices */
.wd-product > .wd-product-wrapper > .wd-entities-title { min-height: 2.7em; display: flex; align-items: flex-start; justify-content: center; }
.wd-product > .wd-product-wrapper > .price { min-height: 46px; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 6px; }
.wd-product > .wd-product-wrapper > .wd-product-cats { min-height: 1.4em; }
/* ============ footer + hero slider ============ */

/* hero slider: full-bleed 1920x750 banners */
.edg-hero-slider, .edg-hero-slider > .e-con-inner { padding: 0 !important; max-width: none !important; }
.edg-hero-slider .wd-banner-carousel, .edg-hero-slider .wd-carousel-container { margin: 0 !important; }
.edg-hero-slider img { width: 100%; height: auto; display: block; }
.edg-hero-slider .wd-banner-title { line-height: 1.1; }
@media (max-width: 768.98px) { .edg-hero-slider .wd-banner-title { font-size: 26px !important; } }

/* ---------------- footer ---------------- */
.wd-footer .main-footer { padding-top: 0; }

.edg-f-assure { padding: 30px 0 34px; border-bottom: 1px solid #e6e2db; }
.edg-f-assure__head { margin: 0 0 20px; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 22px; font-weight: 600; color: #14201e; text-align: center; }
.edg-f-assure__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; }
.edg-f-assure__item { display: flex; flex-direction: column; gap: 4px; align-items: center; text-align: center; padding: 0 10px; }
.edg-f-assure__item strong { font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 16px; font-weight: 600; color: #14201e; }
.edg-f-assure__item span { font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 13.5px; line-height: 1.55; color: #5c6663; }

.edg-footer-grid { display: grid; grid-template-columns: 1.5fr 1fr 1fr 1fr; gap: 40px; padding: 42px 0 46px; }
.edg-f-col { min-width: 0; }
.edg-f-logo { display: block; max-width: 160px; height: auto; margin: 0 0 16px; }
.edg-f-about { margin: 0 0 20px; max-width: 330px; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 14px; line-height: 1.75; color: #5c6663; }
.edg-f-contact { margin: 0; padding: 0; list-style: none; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 14px; line-height: 1.6; color: #14201e; }
.edg-f-contact li { margin-bottom: 14px; }
.edg-f-lbl { display: block; margin-bottom: 2px; font-size: 11px; font-weight: 800; letter-spacing: .09em; text-transform: uppercase; color: #c89a64; }
.edg-f-contact a { color: #14201e; text-decoration: none; }
.edg-f-contact a:hover { color: #0f4a44; text-decoration: underline; }

.edg-f-head { margin: 0 0 16px; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 17px; font-weight: 600; color: #14201e; }
.edg-f-head--soc { margin-top: 26px; }
.edg-f-links { margin: 0; padding: 0; list-style: none; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 14px; line-height: 1.6; }
.edg-f-links li { margin-bottom: 11px; }
.edg-f-links a { color: #5c6663; text-decoration: none; }
.edg-f-links a:hover { color: #0f4a44; }

.edg-f-social { display: flex; flex-wrap: wrap; gap: 10px; }
.edg-soc { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; border: 1px solid #dfd9d0; border-radius: 50%; color: #0f4a44; background: #fff; transition: background-color .2s ease, color .2s ease, border-color .2s ease; }
.edg-soc:hover { background: #0f4a44; border-color: #0f4a44; color: #fff; }
.edg-soc svg { display: block; }

@media (max-width: 1024px) { .edg-footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; } }
@media (max-width: 700px) { .edg-f-assure__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 560px) { .edg-footer-grid { grid-template-columns: 1fr; gap: 30px; } .edg-f-assure__grid { grid-template-columns: 1fr; } .edg-f-about { max-width: none; } }
/* ---- hero slider desktop guarantees ---- */
.edg-hero-slider { width: 100%; max-width: 100% !important; padding: 0 !important; margin: 0 !important; }
.edg-hero-slider > .e-con-inner { max-width: 100% !important; width: 100% !important; padding: 0 !important; }
.edg-hero-slider .banners-carousel-wrapper, .edg-hero-slider .wd-carousel-inner { margin: 0 !important; padding: 0 !important; }
.edg-hero-slider .promo-banner { border-radius: 0 !important; }
.edg-hero-slider .banner-image img { width: 100%; height: auto; display: block; object-fit: cover; }
.edg-hero-slider .wrapper-content-banner { padding-inline: clamp(20px, 7vw, 120px); }
.edg-hero-slider .content-banner { max-width: 640px; }
.edg-hero-slider .banner-title { font-family: "Jost", "Helvetica Neue", Arial, sans-serif !important; font-weight: 600 !important; line-height: 1.1 !important; }
.edg-hero-slider .banner-subtitle { font-family: "Jost", "Helvetica Neue", Arial, sans-serif !important; font-style: italic; color: #e2c79c !important; }
@media (max-width: 1024px) { .edg-hero-slider .banner-title { font-size: 32px !important; } }
@media (max-width: 768.98px) { .edg-hero-slider .banner-title { font-size: 24px !important; } .edg-hero-slider .content-banner p { display: none; } }
/* ============ Inside the glow (4-card section) ============ */
:root { --edg-glow-bg: #F8F5EF; --edg-glow-ink: #0A2E2A; --edg-glow-body: #173630; --edg-glow-accent: #B88C59; }

/* full-bleed section */
.elementor-element-edga100 {
  --edg-half: calc(var(--edg-vw, 100vw) / 2);
  width: var(--edg-vw, 100vw) !important;
  max-width: var(--edg-vw, 100vw) !important;
  margin-left: calc(50% - var(--edg-half)) !important;
  margin-right: calc(50% - var(--edg-half)) !important;
  background-color: var(--edg-glow-bg);
  padding: clamp(56px, 6vw, 104px) 0 clamp(60px, 6.5vw, 112px) !important;
}
.elementor-element-edga100 > .e-con-inner { max-width: 100% !important; width: 100% !important; padding: 0 !important; }

/* heading */
.edg-glow-head { padding: 0 clamp(20px, 5vw, 72px); margin: 0 auto clamp(34px, 4vw, 56px); text-align: center; }
.edg-glow-eyebrow { display: block; margin-bottom: 12px; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-style: italic; font-weight: 500; font-size: clamp(19px, 2vw, 24px); letter-spacing: .01em; color: var(--edg-glow-accent); }
.edg-glow-title { margin: 0; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-weight: 600; font-size: clamp(27px, 3.6vw, 46px); line-height: 1.15; letter-spacing: -0.015em; color: var(--edg-glow-ink); }
.edg-glow-title::after { content: ""; display: block; width: 54px; height: 1px; margin: 20px auto 0; background: var(--edg-glow-accent); opacity: .55; }

/* grid */
.elementor-element-edga110 { display: grid !important; grid-template-columns: repeat(4, 1fr) !important; gap: clamp(16px, 1.6vw, 26px) !important; align-items: stretch; width: 100% !important; max-width: 100% !important; padding: 0 clamp(20px, 5vw, 72px) !important; }
.elementor-element-edga110 > .e-con-inner { display: contents; }

/* card */
.elementor-element-edga121, .elementor-element-edga122, .elementor-element-edga123, .elementor-element-edga124 {
  display: flex !important; flex-direction: column; width: auto !important; max-width: none !important;
  background: #FFFDFA; border: 1px solid rgba(10,46,42,.10); border-radius: 4px; overflow: hidden;
  transition: border-color .3s ease, transform .3s ease; }
.elementor-element-edga121:hover, .elementor-element-edga122:hover, .elementor-element-edga123:hover, .elementor-element-edga124:hover {
  border-color: var(--edg-glow-accent); transform: translateY(-4px); }

/* image area - replace each image in Elementor */
.edg-glow-card__img { margin: 0 !important; width: 100%; }
.edg-glow-card__img .elementor-widget-container, .edg-glow-card__img figure, .edg-glow-card__img .elementor-image { margin: 0; }
.edg-glow-card__img img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; background: #EFE9DF; }

/* card text */
.edg-glow-card__body { display: flex; flex-direction: column; gap: 10px; padding: clamp(20px, 1.8vw, 30px) clamp(18px, 1.6vw, 28px) clamp(24px, 2vw, 34px); }
.edg-glow-card__title { margin: 0; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-weight: 600; font-size: clamp(18px, 1.35vw, 22px); line-height: 1.25; color: var(--edg-glow-ink); }
.edg-glow-card__text { margin: 0; font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 14.5px; line-height: 1.75; color: var(--edg-glow-body); opacity: .82; }

/* the html widget must not add its own spacing */
.elementor-element-edga151, .elementor-element-edga152, .elementor-element-edga153, .elementor-element-edga154 { margin: 0 !important; flex: 1 1 auto; }
.elementor-element-edga151 .elementor-widget-container, .elementor-element-edga152 .elementor-widget-container, .elementor-element-edga153 .elementor-widget-container, .elementor-element-edga154 .elementor-widget-container { height: 100%; }
.elementor-element-edga151 .edg-glow-card__body, .elementor-element-edga152 .edg-glow-card__body, .elementor-element-edga153 .edg-glow-card__body, .elementor-element-edga154 .edg-glow-card__body { height: 100%; }

/* responsive */
@media (max-width: 1024px) { .elementor-element-edga110 { grid-template-columns: repeat(2, 1fr) !important; gap: 22px !important; } }
@media (max-width: 600px) { .elementor-element-edga110 { grid-template-columns: 1fr !important; gap: 20px !important; padding: 0 20px !important; } .edg-glow-card__img img { aspect-ratio: 16 / 10; } }

/* placeholder hint - disappears automatically once a real image is set */
/* Elementor 4 renders the img as a direct child of the widget element */
.edg-glow-card__img:has(img[src*="elementor/assets/images/placeholder"]) { position: relative; }
.edg-glow-card__img:has(img[src*="elementor/assets/images/placeholder"])::after {
  position: absolute; inset: 0; display: flex; align-items: center; justify-content: center;
  border: 1px dashed rgba(184,140,89,.6); background: #EFE9DF;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 11.5px; font-weight: 700;
  letter-spacing: .12em; text-transform: uppercase; color: #B88C59; text-align: center; padding: 12px;
  content: "Add your image"; }
.elementor-element-edga141:has(img[src*="placeholder"])::after { content: "Image 1 \2014\0020 add yours here"; }
.elementor-element-edga142:has(img[src*="placeholder"])::after { content: "Image 2 \2014\0020 add yours here"; }
.elementor-element-edga143:has(img[src*="placeholder"])::after { content: "Image 3 \2014\0020 add yours here"; }
.elementor-element-edga144:has(img[src*="placeholder"])::after { content: "Image 4 \2014\0020 add yours here"; }


/* ---- edglow-product-cards ---- */
/* ==========================================================================
   Edglow product cards - Featured products / Best sellers
   Structure follows the Beautenic reference; palette is Edglow's own.
   Loaded after brand.css so it wins on equal specificity.
   ========================================================================== */

:root {
  --edg-green:       #123F39;
  --edg-green-dark:  #0A2E2A;
  --edg-text:        #173630;
  --edg-gold:        #B88C59;
  --edg-ivory:       #F8F5EF;
  --edg-thumb-bg:    #EFE9E0;
}

/* ---------------------------------------------------- section headings --- */

.elementor-element-9bf5579 .liner-continer,
.elementor-element-c021774 .liner-continer { margin-bottom: 0; }

.elementor-element-9bf5579 .title-after_title,
.elementor-element-c021774 .title-after_title { display: none; }

.elementor-element-9bf5579 .woodmart-title-container::after,
.elementor-element-c021774 .woodmart-title-container::after,
.elementor-element-9bf5579 .wd-title-wrapp::after,
.elementor-element-c021774 .wd-title-wrapp::after {
  content: "";
  display: block;
  width: 54px;
  height: 1px;
  margin: 22px auto 0;
  background: var(--edg-gold);
  opacity: .55;
}

/* ------------------------------------------------------------- the card --- */

.wd-products .wd-product {
  height: 100%;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.wd-products .wd-product > .wd-product-wrapper {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 0;
  text-align: center;
}

/* image block - the dominant part of the card */
.wd-products .wd-product .wd-product-thumb {
  position: relative;
  margin: 0 0 16px;
  border-radius: 14px;
  overflow: hidden;
  background: var(--edg-thumb-bg);
}

.wd-products .wd-product .wd-product-thumb .product-image-link,
.wd-products .wd-product .wd-product-thumb > a { display: block; }

.wd-products .wd-product .wd-product-thumb img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  object-fit: contain;
  object-position: center center;
  padding: 6%;
  background-color: #F8F5EF;
  border-radius: 0;
  transition: transform .55s cubic-bezier(.2, .6, .2, 1);
}

/* subtle, premium hover - no dark overlay */
.wd-products .wd-product:hover .wd-product-thumb img { transform: scale(1.045); }

.wd-products .wd-product .wd-product-img-hover,
.wd-products .wd-product .hover-img { display: none !important; }

/* ------------------------------------------------------------- badges --- */

.wd-products .wd-product .product-labels {
  top: 12px;
  inset-inline-start: 12px;
  inset-inline-end: auto;
  z-index: 3;
}

/* only the discount badge earns a place */
.wd-products .wd-product .product-label.featured,
.wd-products .wd-product .product-label.new,
.wd-products .wd-product .product-label.out-of-stock { display: none !important; }

.wd-products .wd-product .product-labels .onsale {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 0;
  height: auto;
  min-height: 0;
  padding: 5px 10px;
  border-radius: 999px;
  background: var(--edg-gold) !important;
  color: #fff !important;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  line-height: 1 !important;
  letter-spacing: .05em;
}

/* Woodmart also prints a bare duplicate badge - hide it */
.wd-products .wd-product .wd-product-thumb > span.onsale { display: none !important; }

/* wishlist / compare / quick view - quiet until hover */
.wd-products .wd-product .wd-buttons {
  opacity: 0;
  transition: opacity .25s ease;
}

.wd-products .wd-product:hover .wd-buttons { opacity: 1; }

@media (hover: none) {
  .wd-products .wd-product .wd-buttons { opacity: 1; }
}

/* --------------------------------------------------------------- text --- */

.wd-products .wd-product .wd-entities-title {
  display: block;
  min-height: 0;
  margin: 0 0 6px;
  padding: 0;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.32;
  letter-spacing: -0.005em;
  text-align: center;
  text-transform: none;
  color: var(--edg-green-dark);
}

.wd-products .wd-product .wd-entities-title a { color: var(--edg-green-dark); }
.wd-products .wd-product .wd-entities-title a:hover { color: var(--edg-green); }

.wd-products .wd-product .wd-product-cats {
  min-height: 0;
  margin: 0 0 11px;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  line-height: 1.4;
}

.wd-products .wd-product .wd-product-cats a {
  color: var(--edg-text);
  opacity: .52;
}

.wd-products .wd-product .wd-product-cats a:hover {
  color: var(--edg-green);
  opacity: 1;
}

/* ------------------------------------------------------------- prices --- */

.wd-products .wd-product .price {
  display: flex;
  align-items: baseline;
  justify-content: center;
  flex-wrap: wrap;
  gap: 4px 8px;
  min-height: 0;
  margin: 0 0 15px;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
}

.wd-products .wd-product .price del,
.wd-products .wd-product .price del .woocommerce-Price-amount {
  color: var(--edg-text) !important;
  opacity: .45;
  font-size: 14px;
  font-weight: 400;
  text-decoration: line-through;
  text-decoration-thickness: 1px;
}

.wd-products .wd-product .price ins,
.wd-products .wd-product .price ins .woocommerce-Price-amount,
.wd-products .wd-product .price > .woocommerce-Price-amount {
  color: var(--edg-green) !important;
  font-size: 19px;
  font-weight: 800;
  letter-spacing: -0.01em;
  text-decoration: none;
  background: none;
}

.wd-products .wd-product .edg-save {
  margin: 0;
  padding: 3px 8px;
  background: #EFE7DA;
  color: #8A6538;
  font-size: 10.5px;
  font-weight: 800;
  letter-spacing: .05em;
}

/* star rating only renders when real reviews exist - style it, never fake it */
.wd-products .wd-product .star-rating { margin: 0 auto 12px; color: var(--edg-gold); }
.wd-products .wd-product .wd-product-rating { justify-content: center; margin-bottom: 12px; }

/* ------------------------------------------------------- add to cart --- */

.wd-products .wd-product .edg-buy-now--loop,
.wd-products .wd-product .edg-atc {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  margin: auto 0 0;
  padding: 13px 14px;
  min-height: 48px;
  border: 1px solid var(--edg-green);
  border-radius: 8px;
  background-color: var(--edg-green);
  color: #FFFFFF;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  font-size: 12.5px;
  font-weight: 800;
  line-height: 1.2;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .25s ease, border-color .25s ease;
}

.wd-products .wd-product .edg-buy-now--loop:hover,
.wd-products .wd-product .edg-buy-now--loop:focus,
.wd-products .wd-product .edg-atc:hover,
.wd-products .wd-product .edg-atc:focus {
  background-color: var(--edg-green-dark);
  border-color: var(--edg-green-dark);
  color: #FFFFFF;
}

/* hide Woodmart's own loop add-to-cart so there is exactly one button */
.wd-products .wd-product .wd-add-btn,
.wd-products .wd-product .add-to-cart-loop,
.wd-products .wd-product .wd-bottom-actions .woocommerce-loop-product__link + .button { display: none !important; }

/* --------------------------------------------------------- responsive --- */

@media (max-width: 1024px) {
  .wd-products .wd-product .wd-entities-title { font-size: 16px; }
  .wd-products .wd-product .price ins,
  .wd-products .wd-product .price > .woocommerce-Price-amount { font-size: 18px; }
}

@media (max-width: 768.98px) {
  .wd-products .wd-product .wd-product-thumb { margin-bottom: 13px; border-radius: 12px; }
  .wd-products .wd-product .wd-entities-title { font-size: 14.5px; line-height: 1.3; margin-bottom: 5px; }
  .wd-products .wd-product .wd-product-cats { font-size: 10px; letter-spacing: .07em; margin-bottom: 8px; }
  .wd-products .wd-product .price { gap: 3px 6px; margin-bottom: 11px; }
  .wd-products .wd-product .price del,
  .wd-products .wd-product .price del .woocommerce-Price-amount { font-size: 12.5px; }
  .wd-products .wd-product .price ins,
  .wd-products .wd-product .price > .woocommerce-Price-amount { font-size: 16px; }
  .wd-products .wd-product .edg-save { font-size: 9.5px; padding: 2px 6px; }
  .wd-products .wd-product .edg-buy-now--loop,
  .wd-products .wd-product .edg-atc {
    min-height: 44px;
    padding: 11px 8px;
    font-size: 11px;
    letter-spacing: .08em;
    border-radius: 7px;
  }
  .wd-products .wd-product .wd-buttons { display: none !important; }
}

/* very narrow phones: one card per row so nothing is squeezed */
@media (max-width: 400px) {
  .wd-products.wd-grid-g,
  .products.wd-products.wd-grid-g,
  .wd-products .wd-grid-g { --wd-col-sm: 1 !important; }
  .wd-products .wd-product .wd-entities-title { font-size: 17px; }
  .wd-products .wd-product .price ins,
  .wd-products .wd-product .price > .woocommerce-Price-amount { font-size: 19px; }
  .wd-products .wd-product .edg-buy-now--loop,
  .wd-products .wd-product .edg-atc { font-size: 12px; letter-spacing: .12em; min-height: 48px; }
}
/* ============ GLOGIN feature split (stretched container) ============ */
/* the section is inside an XTemos stretched container - keep it edge to edge */
.elementor-element-9808007 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  align-items: stretch !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: clamp(500px, 42vw, 680px);
  background: #F8F5EF;
}
.elementor-element-9808007 > .e-con-inner { display: contents; }
.elementor-element-9808007 > .e-con,
.elementor-element-9808007 > .e-con > .e-con-inner {
  width: auto !important; max-width: none !important; margin: 0 !important;
}

/* LEFT - the full GLOGIN photograph, never cropped */
.edg-glogin-media, .elementor-element-836700d {
  min-height: 0 !important;
  padding: 0 !important;
  background-color: #D6C0AB !important;
  background-size: contain !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
}

/* RIGHT - the content card fills its half completely, no grey gutter */
.edg-glogin-panel, .elementor-element-8661e8e {
  min-height: 0 !important;
  padding: 0 !important;
  background: #F8F5EF !important;
  justify-content: center;
}
.elementor-element-8661e8e > .e-con-inner { width: 100%; height: 100%; padding: 0 !important; }
.elementor-element-9be59df { width: 100%; height: 100%; margin: 0 !important; }
.elementor-element-9be59df > .elementor-widget-container { height: 100%; }
.elementor-element-9be59df .edg-featured-product {
  height: 100%;
  display: flex;
  align-items: center;
  border: 0 !important;
}
.elementor-element-9be59df .edg-featured-product__inner { width: 100%; }

/* ---------------- tablet: still two columns, still uncropped ---------------- */
@media (max-width: 1024px) {
  .elementor-element-9808007 { min-height: clamp(420px, 52vw, 560px); }
  .elementor-element-9be59df .edg-featured-product { padding: 40px 30px; }
}

/* ---------------- stack before anything is squeezed ---------------- */
@media (max-width: 900px) {
  .elementor-element-9808007 {
    grid-template-columns: 1fr !important;
    min-height: 0 !important;
  }
  .edg-glogin-media, .elementor-element-836700d {
    width: 100% !important;
    max-width: none !important;
    aspect-ratio: 1 / 1;
    max-height: none !important;
    background-size: contain !important;
    background-position: center center !important;
  }
  .elementor-element-8661e8e { width: 100% !important; max-width: none !important; }
}

@media (max-width: 480px) {
  .edg-glogin-media, .elementor-element-836700d { aspect-ratio: 4 / 5; }
}
/* ---- GLOGIN CTA + suppress the old detached pill ---- */
/* the old rounded 'Shop GLOGIN' button, hidden rather than deleted so it stays hidden after Elementor saves */
.elementor-element-9808007 .elementor-widget-wd_button,
.elementor-element-d2e1962 { display: none !important; }

.edg-featured-product__cta {
  display: flex; align-items: center; justify-content: center;
  width: 100%; margin-top: 30px; padding: 17px 22px; min-height: 56px;
  border: 1px solid #123F39; border-radius: 2px;
  background: #123F39; color: #FFFFFF;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif; font-size: 13px; font-weight: 800;
  line-height: 1.2; letter-spacing: .18em; text-transform: uppercase;
  text-align: center; text-decoration: none; cursor: pointer;
  transition: background-color .25s ease, border-color .25s ease;
}
.edg-featured-product__cta:hover,
.edg-featured-product__cta:focus,
.edg-featured-product__cta:active {
  background: #0A2E2A; border-color: #0A2E2A; color: #FFFFFF; text-decoration: none;
}
@media (max-width: 767px) {
  .edg-featured-product__cta { margin-top: 26px; min-height: 52px; font-size: 12px; letter-spacing: .14em; }
}


/* ---- edglow-latest-blogs ---- */
/* ==========================================================================
   Edglow - Latest insights section
   Same palette, spacing rhythm and Jost typography as the rest of the site.
   ========================================================================== */

.edg-blogs {
  --edg-b-bg:    #F8F5EF;
  --edg-b-deep:  #0A2E2A;
  --edg-b-green: #123F39;
  --edg-b-text:  #173630;
  --edg-b-muted: #5F6D68;
  --edg-b-gold:  #B88C59;
  --edg-b-line:  rgba(10, 46, 42, .12);

  padding: clamp(56px, 6vw, 96px) 0 clamp(58px, 6vw, 100px);
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  color: var(--edg-b-text);
}

/* ---------------------------------------------------------------- head --- */

.edg-blogs__head {
  margin: 0 auto clamp(32px, 3.6vw, 50px);
  text-align: center;
}

.edg-blogs__eyebrow {
  display: block;
  margin-bottom: 10px;
  font-size: 16px;
  font-style: italic;
  font-weight: 500;
  letter-spacing: .05em;
  text-transform: uppercase;
  color: var(--edg-b-gold);
}

.edg-blogs__title {
  margin: 0;
  font-family: inherit;
  font-size: clamp(28px, 3.4vw, 44px);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: -.02em;
  color: var(--edg-b-deep);
}

.edg-blogs__title::after {
  content: "";
  display: block;
  width: 54px;
  height: 1px;
  margin: 20px auto 0;
  background: var(--edg-b-gold);
  opacity: .55;
}

/* ---------------------------------------------------------------- grid --- */

.edg-blogs__inner,
.edg-blogs__head,
.edg-blogs__grid,
.edg-blogs__foot {
  max-width: 1240px;
  margin-inline: auto;
}

.edg-blogs__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(20px, 2vw, 32px);
  align-items: stretch;
  justify-content: center;
}

/* Keep the grid balanced when there are only one or two posts, instead of
   letting a single card stretch across a third of an empty row. */
.edg-blogs__grid[data-count="1"] {
  grid-template-columns: minmax(0, 1fr);
  max-width: 720px;
}

.edg-blogs__grid[data-count="2"] {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  max-width: 900px;
}

.edg-blog {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #FFFDFA;
  border: 1px solid var(--edg-b-line);
  border-radius: 4px;
  overflow: hidden;
  transition: border-color .3s ease, transform .3s ease;
}

.edg-blog:hover {
  border-color: var(--edg-b-gold);
  transform: translateY(-4px);
}

/* --------------------------------------------------------------- media --- */

.edg-blog__media {
  display: block;
  overflow: hidden;
  background: #EFE9E0;
}

.edg-blog__img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center center;
  transition: transform .55s cubic-bezier(.2, .6, .2, 1);
}

.edg-blog:hover .edg-blog__img { transform: scale(1.04); }

.edg-blog__img--empty { background: #EFE9E0; }

/* ---------------------------------------------------------------- body --- */

.edg-blog__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  gap: 9px;
  padding: clamp(20px, 1.8vw, 28px) clamp(18px, 1.6vw, 26px) clamp(22px, 2vw, 30px);
}

.edg-blog__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px 12px;
  margin-bottom: 2px;
}

.edg-blog__cat {
  display: inline-flex;
  align-items: center;
  padding: 5px 12px;
  border: 1px solid rgba(184, 140, 89, .5);
  border-radius: 999px;
  background: rgba(184, 140, 89, .08);
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .14em;
  line-height: 1;
  text-transform: uppercase;
  color: #8A6432;
}

.edg-blog__date {
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--edg-b-muted);
  opacity: .8;
}

.edg-blog__title {
  margin: 0;
  font-family: inherit;
  font-size: clamp(18px, 1.35vw, 21px);
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -.008em;
}

.edg-blog__title a {
  color: var(--edg-b-deep);
  text-decoration: none;
}

.edg-blog__title a:hover { color: var(--edg-b-green); }

.edg-blog__excerpt {
  margin: 0;
  font-size: 15px;
  font-weight: 450;
  line-height: 1.72;
  color: var(--edg-b-muted);
}

.edg-blog__more {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
  padding-top: 14px;
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--edg-b-green);
  text-decoration: none;
}

.edg-blog__more::after {
  content: "";
  width: 18px;
  height: 1px;
  background: currentColor;
  transition: width .25s ease;
}

.edg-blog__more:hover { color: var(--edg-b-deep); }
.edg-blog__more:hover::after { width: 28px; }

/* ---------------------------------------------------------------- foot --- */

.edg-blogs__foot {
  margin-top: clamp(30px, 3vw, 44px);
  text-align: center;
}

.edg-blogs__all {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 14px 38px;
  border: 1px solid var(--edg-b-green);
  border-radius: 2px;
  background: transparent;
  color: var(--edg-b-green);
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color .25s ease, color .25s ease;
}

.edg-blogs__all:hover,
.edg-blogs__all:focus {
  background: var(--edg-b-green);
  color: #FFFFFF;
  text-decoration: none;
}

/* ------------------------------------------- blog listing / archives --- */

.blog .wd-post-img img,
.archive .wd-post-img img,
.search .wd-post-img img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center center;
}

.blog .wd-post-cat a,
.archive .wd-post-cat a {
  display: inline-flex;
  align-items: center;
  padding: 5px 12px;
  border: 1px solid rgba(184, 140, 89, .5);
  border-radius: 999px;
  background: rgba(184, 140, 89, .08);
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  font-size: 10.5px;
  font-weight: 600;
  letter-spacing: .14em;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  color: #8A6432;
}

.blog .wd-post-cat a:hover,
.archive .wd-post-cat a:hover { background: #123F39; border-color: #123F39; color: #FFF; }

/* ---------------------------------------------------------- responsive --- */

@media (max-width: 1024px) {
  .edg-blogs__grid,
  .edg-blogs__grid[data-count="2"] { grid-template-columns: repeat(2, minmax(0, 1fr)); max-width: 100%; }
  .edg-blogs__grid[data-count="1"] { grid-template-columns: minmax(0, 1fr); max-width: 560px; }
}

@media (max-width: 680px) {
  .edg-blogs__grid,
  .edg-blogs__grid[data-count="1"],
  .edg-blogs__grid[data-count="2"] { grid-template-columns: minmax(0, 1fr); gap: 20px; max-width: 100%; }
  .edg-blogs__eyebrow { font-size: 14px; }
  .edg-blog__title { font-size: 19px; }
  .edg-blog__excerpt { font-size: 15px; }
  .edg-blogs__all { width: 100%; }
}


/* ---- edglow-single-post ---- */
/* ==========================================================================
   Edglow - editorial article layout for single blog posts
   Woodmart markup: article.post-single-page > header.wd-single-post-header
                    + div.wd-entry-content
   ========================================================================== */

.single-post {
  --edg-deep:  #0A2E2A;
  --edg-green: #123F39;
  --edg-text:  #173630;
  --edg-muted: #5F6D68;
  --edg-gold:  #B88C59;
  --edg-cream: #F8F5EF;
  --edg-line:  rgba(10, 46, 42, .12);
  --edg-wide:  1240px;
  --edg-read:  1000px;
  --edg-head:  940px;
}

.single-post .wd-page-content { background: var(--edg-cream); }

/* ------------------------------------------------- compact title strip --- */

.single-post .wd-page-title {
  min-height: 0;
  padding: 26px 0 0;
  background: transparent;
}

.single-post .wd-page-title-bg { display: none !important; }
.single-post .wd-page-title > .container > .entry-title { display: none; }

.single-post .wd-page-title .wd-breadcrumbs {
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--edg-muted);
  text-align: center;
}

.single-post .wd-page-title .wd-breadcrumbs a { color: var(--edg-muted); }
.single-post .wd-page-title .wd-breadcrumbs a:hover { color: var(--edg-green); }
.single-post .wd-page-title .wd-delimiter { margin: 0 7px; opacity: .5; }

/* -------------------------------------------------------- the measure --- */

.single-post main.content-layout-wrapper.container,
.single-post .wd-content-layout.container {
  max-width: var(--edg-wide);
  padding-top: 22px;
}

.single-post .wd-content-area { width: 100%; max-width: 100%; }

.single-post article.post-single-page {
  max-width: 100%;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  color: var(--edg-text);
}

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

.single-post .wd-post-cat,
.single-post .wd-post-title,
.single-post .wd-post-meta {
  max-width: var(--edg-head);
  margin-inline: auto;
}

/* ------------------------------------------------------ category chips --- */

.single-post .wd-post-cat {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin: 0 0 18px;
  font-size: 0;
  background: none !important;
}

.single-post .wd-post-cat a {
  display: inline-flex;
  align-items: center;
  padding: 6px 15px;
  border: 1px solid rgba(184, 140, 89, .5);
  border-radius: 999px;
  background: rgba(184, 140, 89, .08);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: .14em;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  color: #8A6432;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}

.single-post .wd-post-cat a:hover {
  background: var(--edg-green);
  border-color: var(--edg-green);
  color: #FFFFFF;
}

/* ---------------------------------------------------------------- title --- */

.single-post h1.wd-post-title {
  margin: 0 0 16px;
  font-family: inherit;
  font-size: clamp(30px, 3.5vw, 48px);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -.022em;
  color: var(--edg-deep);
}

/* ----------------------------------------------------------------- meta --- */

.single-post .wd-post-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 8px 22px;
  margin: 0 auto 34px;
  padding: 0;
  border: 0;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--edg-muted);
}

.single-post .wd-post-meta > div { margin: 0; }
.single-post .wd-post-meta a { color: var(--edg-muted); text-decoration: none; }
.single-post .wd-post-meta a:hover { color: var(--edg-green); }
.single-post .wd-post-meta .avatar { width: 22px; height: 22px; border-radius: 50%; }
.single-post .wd-modified-date { display: none; }

/* -------------------------------------------------------- featured art --- */

.single-post .wd-post-image {
  width: 100%;
  margin: 0 0 clamp(34px, 3.4vw, 54px);
  border-radius: 10px;
  overflow: hidden;
  background: #EFE9E0;
  box-shadow: 0 18px 44px -28px rgba(10, 46, 42, .45);
}

.single-post .wd-post-image img,
.single-post .wd-post-image .wp-post-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  object-position: center center;
  border-radius: inherit;
}

/* ------------------------------------------------------------- article --- */

.single-post article.post-single-page > .wd-entry-content {
  max-width: var(--edg-read);
  margin-inline: auto;
  font-family: inherit;
  font-size: 17.5px;
  font-weight: 450;
  line-height: 1.82;
  color: var(--edg-text);
}

.single-post article.post-single-page > .wd-entry-content > p { margin: 0 0 22px; }

.single-post article.post-single-page > .wd-entry-content > p:first-of-type {
  font-size: 19.5px;
  line-height: 1.72;
  color: var(--edg-green);
}

.single-post article.post-single-page > .wd-entry-content h2 {
  margin: 48px 0 15px;
  font-family: inherit;
  font-size: clamp(25px, 2.5vw, 32px);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: -.018em;
  color: var(--edg-deep);
}

.single-post article.post-single-page > .wd-entry-content h2::after {
  content: "";
  display: block;
  width: 46px;
  height: 1px;
  margin-top: 15px;
  background: var(--edg-gold);
  opacity: .6;
}

.single-post article.post-single-page > .wd-entry-content h3 {
  margin: 34px 0 10px;
  font-family: inherit;
  font-size: clamp(19px, 1.7vw, 23px);
  font-weight: 600;
  line-height: 1.3;
  color: var(--edg-green);
}

.single-post article.post-single-page > .wd-entry-content ul,
.single-post article.post-single-page > .wd-entry-content ol { margin: 0 0 24px; padding-inline-start: 22px; }
.single-post article.post-single-page > .wd-entry-content li { margin-bottom: 10px; }

.single-post article.post-single-page > .wd-entry-content a {
  color: var(--edg-green);
  font-weight: 500;
  text-decoration: underline;
  text-underline-offset: 3px;
  text-decoration-thickness: 1px;
}

.single-post article.post-single-page > .wd-entry-content strong { font-weight: 600; color: var(--edg-deep); }

.single-post article.post-single-page > .wd-entry-content blockquote {
  margin: 34px 0;
  padding: 24px 28px;
  border: 0;
  border-inline-start: 2px solid var(--edg-gold);
  background: #FFFDFA;
  font-size: 18px;
  font-style: normal;
  line-height: 1.75;
  color: var(--edg-green);
}

.single-post article.post-single-page > .wd-entry-content img { border-radius: 8px; height: auto; }

.single-post article.post-single-page > .wd-entry-content hr {
  margin: 42px 0;
  border: 0;
  border-top: 1px solid var(--edg-line);
}

/* --------------------------------------------------- share + comments --- */

.single-post .wd-single-footer,
.single-post .wd-single-post-nav,
.single-post #comments,
.single-post .comments-area {
  max-width: var(--edg-read);
  margin-inline: auto;
}

.single-post .wd-single-footer {
  margin-top: clamp(38px, 3.6vw, 56px);
  padding-top: 26px;
  border-top: 1px solid var(--edg-line);
}

/* ------------------------------------------------------------- mobile --- */

@media (max-width: 1024px) {
  .single-post { --edg-read: 100%; --edg-head: 100%; }
}

@media (max-width: 767px) {
  .single-post main.content-layout-wrapper.container { padding-top: 14px; }
  .single-post .wd-page-title { padding-top: 18px; }
  .single-post h1.wd-post-title { font-size: 27px; }
  .single-post .wd-post-meta { gap: 6px 16px; margin-bottom: 24px; font-size: 11px; }
  .single-post .wd-post-image { border-radius: 8px; margin-bottom: 28px; }
  .single-post .wd-post-image img { aspect-ratio: 4 / 3; }
  .single-post article.post-single-page > .wd-entry-content { font-size: 16.5px; line-height: 1.8; }
  .single-post article.post-single-page > .wd-entry-content > p:first-of-type { font-size: 17.5px; }
  .single-post article.post-single-page > .wd-entry-content h2 { margin-top: 36px; font-size: 22px; }
  .single-post article.post-single-page > .wd-entry-content h3 { margin-top: 26px; font-size: 19px; }
}



/* ---- edglow-typography ---- */
/* ==========================================================================
   Edglow typography - Jost everywhere, one step up in size and weight.
   Loaded last. Layout, spacing and colour are deliberately untouched.
   ========================================================================== */

:root {
  --edg-font: "Jost", "Helvetica Neue", Helvetica, Arial, sans-serif;

  --wd-text-font: var(--edg-font);
  --wd-title-font: var(--edg-font);
  --wd-entities-title-font: var(--edg-font);
  --wd-widget-title-font: var(--edg-font);
  --wd-alternative-font: var(--edg-font);
  --wd-header-el-font: var(--edg-font);

  --wd-text-font-weight: 450;
  --wd-title-font-weight: 600;
  --wd-entities-title-font-weight: 600;
  --wd-widget-title-font-weight: 600;

  --wd-text-font-size: 16px;
  --wd-widget-title-font-size: 18px;
  --wd-header-el-font-size: 14px;
}

/* --------------------------------------------------------- one family --- */

body,
button,
input,
optgroup,
select,
textarea,
h1, h2, h3, h4, h5, h6,
p, li, td, th, label,
.title,
.wd-entities-title,
.widget-title,
.product_title,
.price,
.woocommerce-Price-amount,
.wd-nav a,
.wd-accordion-title,
.wd-accordion-content,
.elementor-heading-title {
  font-family: var(--edg-font);
}

/* Elements that hard-code a serif inline or in their own rules. */
[style*="Playfair"],
[style*="playfair"],
[style*="Cormorant"],
[style*="cormorant"],
[style*="Lato"],
[style*="Satisfy"] {
  font-family: var(--edg-font) !important;
}

/* Icon fonts keep their own family - never Jost, or the glyphs turn into empty boxes. */
[class*="wd-icon"],
[class*="wd-icon"]:before,
.wd-action-icon,
.wd-action-icon:before,
.wd-action-btn > a:before,
.wd-btn-arrow:before,
.wd-nav-arrows i,
.wd-tools-icon:before,
.wd-dropdown-menu li.menu-item-has-children > a:after,
.wd-nav > li.menu-item-has-children > a:after,
.woodmart-font,
[class^="wd-"]:before,
[class*=" wd-"]:before,
.wd-checkout-steps li:before,
td.product-remove a:before,
.woocommerce-remove-coupon:before {
  font-family: "woodmart-font" !important;
}

/* FontAwesome and generic icon sets */
i[class^="fa"], i[class*=" fa"],
.fas, .far, .fab, .fa,
i[class^="icon-"], i[class*=" icon-"] { font-family: inherit; }

/* WooCommerce star rating */
.star-rating,
.star-rating:before,
.star-rating span:before {
  font-family: star !important;
}


/* ------------------------------------------------- scale and weight --- */

body { font-size: 16px; font-weight: 450; letter-spacing: .002em; }

/* headings: a touch larger, a touch tighter */
h1, .elementor-heading-title.elementor-size-xxl { font-weight: 600; letter-spacing: -.018em; }
h2 { font-weight: 600; letter-spacing: -.016em; }
h3, h4 { font-weight: 600; letter-spacing: -.01em; }
h5, h6 { font-weight: 600; letter-spacing: 0; }

/* header + navigation */
html .wd-nav.wd-nav-main > li > a { font-size: 14px; font-weight: 600; letter-spacing: .05em; }
.wd-dropdown-menu .wd-nav a, .wd-sub-menu a { font-size: 14.5px; font-weight: 450; }
.wd-header-nav .wd-tools-text, .wd-header-cart .wd-tools-text { font-size: 13.5px; font-weight: 600; }
.wd-toolbar .wd-tools-text { font-size: 12px; font-weight: 600; }

/* product cards */
.wd-products .wd-product .wd-entities-title { font-size: 17.5px; font-weight: 600; letter-spacing: -.005em; }
.wd-products .wd-product .wd-product-cats { font-size: 12px; font-weight: 600; letter-spacing: .09em; }
.wd-products .wd-product .price ins, .wd-products .wd-product .price > .woocommerce-Price-amount { font-size: 20px; font-weight: 700; }
.wd-products .wd-product .price del, .wd-products .wd-product .price del .woocommerce-Price-amount { font-size: 15px; font-weight: 400; }
.wd-products .wd-product .edg-buy-now--loop, .wd-products .wd-product .edg-atc { font-size: 13px; font-weight: 600; letter-spacing: .12em; }
.edg-save { font-size: 11.5px; font-weight: 600; }
.product-labels .onsale, span.onsale { font-size: 12px !important; font-weight: 600 !important; }

/* single product */
.single-product .product_title { font-size: clamp(29px, 3vw, 42px); font-weight: 600; }
.single-product .summary .price, .edg-sp-price .price > .woocommerce-Price-amount, .edg-sp-price .price ins .woocommerce-Price-amount { font-size: 32px; font-weight: 700; }
.edg-sp-price .price del, .edg-sp-price .price del .woocommerce-Price-amount { font-size: 19px; }
.single-product .woocommerce-product-details__short-description { font-size: 16px; font-weight: 450; line-height: 1.8; }
.single-product .single_add_to_cart_button, .single-product .edg-buy-now { font-size: 13.5px; font-weight: 600; letter-spacing: .12em; }
.single-product .wd-accordion-title { font-size: 17px; font-weight: 600; }
.single-product .wd-accordion-content { font-size: 15.5px; font-weight: 450; line-height: 1.8; }

/* buttons everywhere */
.btn, .button, button, input[type=submit], .wd-button, .edg-featured-product__cta { font-weight: 600; letter-spacing: .1em; }
.single_add_to_cart_button, #place_order, .checkout-button { font-size: 13.5px; font-weight: 600; }

/* forms */
input, select, textarea { font-size: 15.5px; font-weight: 450; }
label, .form-row label { font-size: 14px; font-weight: 500; }

/* --------------------------------------- custom Edglow sections --- */

/* homepage: Inside the glow */
.edg-glow-eyebrow { font-size: clamp(15px, 1.3vw, 17px); font-weight: 500; font-style: italic; letter-spacing: .04em; text-transform: uppercase; }
.edg-glow-title { font-size: clamp(28px, 3.6vw, 47px); font-weight: 600; letter-spacing: -.02em; }
.edg-glow-card__title { font-size: clamp(19px, 1.4vw, 23px); font-weight: 600; letter-spacing: -.008em; }
.edg-glow-card__text { font-size: 15.5px; font-weight: 450; line-height: 1.72; }

/* homepage: GLOGIN feature */
.edg-featured-product__eyebrow { font-size: 16px; font-weight: 500; font-style: italic; letter-spacing: .05em; text-transform: uppercase; }
.edg-featured-product__title { font-size: clamp(32px, 3.3vw, 45px); font-weight: 600; letter-spacing: -.02em; }
.edg-featured-product__desc { font-size: 16.5px; font-weight: 450; line-height: 1.78; }
.edg-featured-product__benefits li { font-size: 16px; font-weight: 500; }
.edg-featured-product__price { font-size: 38px; font-weight: 700; letter-spacing: -.02em; }
.edg-featured-product__price-label, .edg-featured-product__note { font-size: 11.5px; font-weight: 600; letter-spacing: 1.4px; }
.edg-featured-product__cta { font-size: 13.5px; font-weight: 600; letter-spacing: .14em; }

/* homepage: section headings */
.wd-title-wrapp .title, .liner-continer .title { font-weight: 600; letter-spacing: -.018em; }
.wd-title-wrapp .title-subtitle, .liner-continer .title-subtitle { font-weight: 500; font-style: italic; letter-spacing: .04em; text-transform: uppercase; }

/* homepage: hero slider */
.edg-hero-slider .banner-title { font-weight: 600 !important; letter-spacing: -.02em; }
.edg-hero-slider .banner-subtitle { font-weight: 500 !important; font-style: italic; letter-spacing: .05em; text-transform: uppercase; }

/* FAQ */
.edg-faq__q { font-size: 18px; font-weight: 600; letter-spacing: -.006em; }
.edg-faq__a { font-size: 15.5px; font-weight: 450; line-height: 1.78; }

/* cart, checkout, trust strips */
.edg-trust li { font-size: 14px; font-weight: 450; }
.edg-checkout-steps li { font-size: 13.5px; font-weight: 600; }
.edg-ship-nudge { font-size: 14.5px; font-weight: 600; }
.edg-checkout-assure { font-size: 13.5px; font-weight: 450; }

/* footer */
.edg-f-assure__head { font-size: 23px; font-weight: 600; letter-spacing: -.012em; }
.edg-f-assure__item strong { font-size: 17px; font-weight: 600; }
.edg-f-assure__item span { font-size: 14.5px; font-weight: 450; }
.edg-f-head { font-size: 18px; font-weight: 600; letter-spacing: -.008em; }
.edg-f-about { font-size: 15px; font-weight: 450; line-height: 1.75; }
.edg-f-links, .edg-f-contact { font-size: 15px; font-weight: 450; }
.edg-f-lbl { font-size: 11.5px; font-weight: 600; letter-spacing: .09em; }
.wd-copyrights { font-size: 14px; font-weight: 450; }

/* --------------------------------------------------------- mobile --- */

@media (max-width: 767px) {
  body { font-size: 15.5px; }
  html .wd-nav.wd-nav-main > li > a { font-size: 15px; }
  .wd-products .wd-product .wd-entities-title { font-size: 15px; }
  .wd-products .wd-product .wd-product-cats { font-size: 10.5px; }
  .wd-products .wd-product .price ins, .wd-products .wd-product .price > .woocommerce-Price-amount { font-size: 17px; }
  .wd-products .wd-product .price del, .wd-products .wd-product .price del .woocommerce-Price-amount { font-size: 13px; }
  .wd-products .wd-product .edg-buy-now--loop, .wd-products .wd-product .edg-atc { font-size: 11.5px; letter-spacing: .08em; }
  .single-product .product_title { font-size: 27px; }
  .single-product .summary .price, .edg-sp-price .price > .woocommerce-Price-amount, .edg-sp-price .price ins .woocommerce-Price-amount { font-size: 27px; }
  .single-product .wd-accordion-title { font-size: 16px; }
  .single-product .wd-accordion-content { font-size: 15px; }
  .edg-glow-card__title { font-size: 19px; }
  .edg-glow-card__text { font-size: 15px; }
  .edg-featured-product__title { font-size: 31px; }
  .edg-featured-product__desc { font-size: 15.5px; }
  .edg-featured-product__price { font-size: 33px; }
  .edg-faq__q { font-size: 16.5px; }
  .edg-faq__a { font-size: 15px; }
  .edg-f-assure__head { font-size: 20px; }
  .edg-f-head { font-size: 17px; }
}


/* ---- edglow-pages ---- */
/* ==========================================================================
   Edglow - About / Contact page layout
   Full-width bands on desktop, clean single column on mobile.
   ========================================================================== */

.edg-page {
  --edg-p-deep:  #0A2E2A;
  --edg-p-green: #123F39;
  --edg-p-text:  #223A35;
  --edg-p-muted: #4A5A55;
  --edg-p-gold:  #B88C59;
  --edg-p-cream: #F8F5EF;
  --edg-p-alt:   #F1EBE1;
  --edg-p-line:  rgba(10, 46, 42, .12);
  --edg-p-wide:  1240px;

  position: relative;
  left: 50%;
  width: 100vw;
  max-width: 100vw;
  margin-left: -50vw;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  color: var(--edg-p-text);
  overflow-x: clip;
}

.edg-page * { box-sizing: border-box; }

.edg-page__hero,
.edg-page__band,
.edg-page__cta {
  padding-inline: clamp(20px, 4vw, 48px);
}

.edg-page__hero > *,
.edg-page__band > *,
.edg-page__cta > * {
  max-width: var(--edg-p-wide);
  margin-inline: auto;
}

/* ---------------------------------------------------------------- hero --- */

.edg-page__hero {
  padding-block: clamp(48px, 5.5vw, 86px) clamp(34px, 4vw, 58px);
  text-align: center;
}

.edg-page__eyebrow {
  display: block;
  margin-bottom: 12px;
  font-size: 17px;
  font-style: italic;
  font-weight: 500;
  letter-spacing: .05em;
  color: var(--edg-p-gold);
}

.edg-page__title {
  margin: 0 0 20px;
  font-family: inherit;
  font-size: clamp(32px, 4vw, 54px);
  font-weight: 600;
  line-height: 1.1;
  letter-spacing: -.024em;
  color: var(--edg-p-deep);
}

.edg-page__lead {
  max-width: 760px;
  margin: 0 auto;
  font-size: clamp(16.5px, 1.2vw, 18.5px);
  font-weight: 450;
  line-height: 1.8;
  color: var(--edg-p-muted);
}

.edg-page__lead--sm { font-size: 16.5px; }
.edg-page__lead strong { color: var(--edg-p-deep); font-weight: 600; }

/* --------------------------------------------------------------- bands --- */

.edg-page__band {
  padding-block: clamp(44px, 4.6vw, 76px);
  border-top: 1px solid var(--edg-p-line);
}

.edg-page__band--alt { background: var(--edg-p-alt); }

.edg-page__h2 {
  margin: 0 0 clamp(24px, 2.4vw, 38px);
  font-family: inherit;
  font-size: clamp(25px, 2.6vw, 34px);
  font-weight: 600;
  line-height: 1.18;
  letter-spacing: -.02em;
  color: var(--edg-p-deep);
  text-align: center;
}

.edg-page__h2::after {
  content: "";
  display: block;
  width: 48px;
  height: 1px;
  margin: 16px auto 0;
  background: var(--edg-p-gold);
  opacity: .6;
}

.edg-page__note {
  max-width: 760px;
  margin: 26px auto 0;
  font-size: 15.5px;
  line-height: 1.75;
  color: var(--edg-p-muted);
  text-align: center;
}

/* The note under the numbered steps shares the steps' exact box, so its
   text starts on the same line as the step text. Forced, because the band
   wrapper also sets a width on every direct child. */
.edg-page__band .edg-steps,
.edg-page__band .edg-steps + .edg-page__note {
  width: 100% !important;
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.edg-page__band .edg-steps + .edg-page__note {
  margin-top: 30px !important;
  padding-top: 22px;
  padding-left: 52px;
  border-top: 1px solid var(--edg-p-line);
  text-align: left;
}

.edg-page__note a,
.edg-page__lead a {
  color: var(--edg-p-green);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* -------------------------------------------------------------- values --- */

.edg-values {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 1.8vw, 26px);
}

.edg-value {
  padding: clamp(22px, 2vw, 30px);
  background: #FFFDFA;
  border: 1px solid var(--edg-p-line);
  border-radius: 4px;
}

.edg-value__title {
  margin: 0 0 10px;
  font-family: inherit;
  font-size: 19px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--edg-p-deep);
}

.edg-value__copy {
  margin: 0;
  font-size: 15.5px;
  font-weight: 450;
  line-height: 1.7;
  color: var(--edg-p-muted);
}

/* ---------------------------------------------------------- categories --- */

.edg-cats {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(16px, 1.8vw, 26px);
}

.edg-cat {
  display: flex;
  flex-direction: column;
  gap: 9px;
  padding: clamp(22px, 2vw, 30px);
  background: #FFFDFA;
  border: 1px solid var(--edg-p-line);
  border-radius: 4px;
  text-decoration: none;
  transition: border-color .25s ease, transform .25s ease;
}

.edg-cat:hover { border-color: var(--edg-p-gold); transform: translateY(-3px); }

.edg-cat__name {
  font-size: 19px;
  font-weight: 600;
  color: var(--edg-p-deep);
}

.edg-cat__copy {
  font-size: 15px;
  font-weight: 450;
  line-height: 1.65;
  color: var(--edg-p-muted);
}

.edg-cat__more {
  margin-top: auto;
  padding-top: 10px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--edg-p-green);
}

/* --------------------------------------------------------------- steps --- */

.edg-steps {
  max-width: 820px;
  margin: 0 auto;
  padding: 0;
  list-style: none;
  counter-reset: edg;
}

.edg-steps li {
  position: relative;
  margin: 0 0 18px;
  padding: 0 0 0 52px;
  font-size: 16px;
  font-weight: 450;
  line-height: 1.75;
  color: var(--edg-p-muted);
}

.edg-steps li::before {
  counter-increment: edg;
  content: counter(edg);
  position: absolute;
  left: 0;
  top: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--edg-p-gold);
  border-radius: 50%;
  font-size: 13px;
  font-weight: 700;
  color: var(--edg-p-green);
}

.edg-steps strong { color: var(--edg-p-deep); font-weight: 600; }

/* ----------------------------------------------------------------- cta --- */

.edg-page__cta {
  padding-block: clamp(46px, 5vw, 80px);
  background: var(--edg-p-alt);
  border-top: 1px solid var(--edg-p-line);
  text-align: center;
}

.edg-page__cta .edg-page__h2 { color: var(--edg-p-deep); }
.edg-page__cta .edg-page__lead { color: var(--edg-p-muted); }

.edg-page__btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
  margin-top: 26px;
}

.edg-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 15px 38px;
  border-radius: 2px;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-decoration: none;
  transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}

.edg-btn--solid { background: var(--edg-p-green); border: 1px solid var(--edg-p-green); color: #FFFFFF; }
.edg-btn--solid:hover { background: var(--edg-p-deep); border-color: var(--edg-p-deep); color: #FFFFFF; }

.edg-btn--ghost { background: transparent; border: 1px solid var(--edg-p-green); color: var(--edg-p-green); }
.edg-btn--ghost:hover { background: var(--edg-p-green); border-color: var(--edg-p-green); color: #FFFFFF; }

/* ====================================================== contact: reach --- */

.edg-reach {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(16px, 1.8vw, 26px);
}

.edg-reach__card {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: clamp(24px, 2.2vw, 32px);
  background: #FFFDFA;
  border: 1px solid var(--edg-p-line);
  border-radius: 4px;
}

.edg-reach__label {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: #8A6432;
}

.edg-reach__value {
  font-size: 18px;
  font-weight: 600;
  line-height: 1.45;
  color: var(--edg-p-deep);
  text-decoration: none;
  word-break: break-word;
}

a.edg-reach__value:hover { color: var(--edg-p-green); text-decoration: underline; }

.edg-reach__note {
  margin: 4px 0 0;
  font-size: 15px;
  font-weight: 450;
  line-height: 1.65;
  color: var(--edg-p-muted);
}

/* ======================================================= contact: form --- */

.edg-form {
  max-width: 900px;
  margin-inline: auto;
  padding: clamp(24px, 2.6vw, 40px);
  background: #FFFDFA;
  border: 1px solid var(--edg-p-line);
  border-radius: 4px;
}

.edg-form .edg-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px 22px;
}

.edg-form .edg-form__field { margin: 0; }
.edg-form .edg-form__field--full { grid-column: 1 / -1; }

.edg-form label {
  display: block;
  margin-bottom: 7px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--edg-p-deep);
}

.edg-form input[type="text"],
.edg-form input[type="email"],
.edg-form input[type="tel"],
.edg-form select,
.edg-form textarea {
  width: 100%;
  min-height: 52px;
  padding: 13px 16px;
  border: 1px solid rgba(10, 46, 42, .18);
  border-radius: 3px;
  background: #FFFFFF;
  font-family: inherit;
  font-size: 16px;
  font-weight: 500;
  color: var(--edg-p-text);
  transition: border-color .2s ease, box-shadow .2s ease;
}

.edg-form textarea { min-height: 150px; line-height: 1.7; resize: vertical; }

.edg-form input:focus,
.edg-form select:focus,
.edg-form textarea:focus {
  outline: none;
  border-color: var(--edg-p-green);
  box-shadow: 0 0 0 3px rgba(18, 63, 57, .09);
}

.edg-form ::placeholder { color: #93A19C; font-weight: 400; }

.edg-form .edg-form__submit { margin: 24px 0 0; }

.edg-form input[type="submit"],
.edg-form .wpcf7-submit {
  width: 100%;
  min-height: 56px;
  padding: 16px 34px;
  border: 1px solid var(--edg-p-green);
  border-radius: 2px;
  background: var(--edg-p-green);
  color: #FFFFFF;
  font-family: inherit;
  font-size: 13.5px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  cursor: pointer;
  transition: background-color .25s ease;
}

.edg-form input[type="submit"]:hover,
.edg-form .wpcf7-submit:hover { background: var(--edg-p-deep); border-color: var(--edg-p-deep); }

.edg-form .wpcf7-not-valid-tip {
  margin-top: 6px;
  font-size: 13px;
  font-weight: 600;
  color: #B3261E;
}

.edg-form .wpcf7-response-output {
  margin: 20px 0 0 !important;
  padding: 14px 16px !important;
  border: 1px solid var(--edg-p-line) !important;
  border-radius: 3px;
  font-size: 15px;
  font-weight: 500;
  color: var(--edg-p-text);
}

.edg-form .wpcf7-spinner { margin-inline: 12px; }

/* ======================================================== contact: faq --- */

.edg-cfaq {
  max-width: 860px;
  margin-inline: auto;
  border-top: 1px solid var(--edg-p-line);
}

.edg-cfaq__item { border-bottom: 1px solid var(--edg-p-line); }

.edg-cfaq__q {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  padding: 20px 2px;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--edg-p-deep);
  cursor: pointer;
  list-style: none;
}

.edg-cfaq__q::-webkit-details-marker { display: none; }

.edg-cfaq__q::after {
  content: "";
  flex: 0 0 18px;
  width: 18px;
  height: 18px;
  margin-top: 3px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230f4a44' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center/18px no-repeat;
  transition: transform .25s ease;
}

.edg-cfaq__item[open] .edg-cfaq__q::after { transform: rotate(45deg); }

.edg-cfaq__a {
  padding: 0 2px 22px;
  font-size: 16px;
  font-weight: 450;
  line-height: 1.75;
  color: var(--edg-p-muted);
}

/* ---------------------------------------------------------- responsive --- */

@media (max-width: 1024px) {
  .edg-values,
  .edg-cats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .edg-reach { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 640px) {
  .edg-values,
  .edg-cats,
  .edg-reach { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .edg-form .edg-form__grid { grid-template-columns: minmax(0, 1fr); }
  .edg-form { padding: 20px; }
  .edg-cfaq__q { font-size: 16px; }
  .edg-cfaq__a { font-size: 15.5px; }
  .edg-page__title { font-size: 30px; }
  .edg-page__lead { font-size: 16px; }
  .edg-steps li { padding-left: 44px; font-size: 15.5px; }
  .edg-steps li::before { width: 28px; height: 28px; }
  .edg-page__band .edg-steps + .edg-page__note { padding-left: 44px; }
  .edg-btn { width: 100%; }
}


/* ---- edglow-header ---- */
/* ==========================================================================
   Edglow - warm ivory header
   Same tone as the footer (#FAF7F2) so the top and bottom of every page
   belong to one another. Layout, heights and structure are untouched.
   ========================================================================== */

:root {
  --edg-hd-bg:      #FAF7F2;
  --edg-hd-line:    rgba(10, 46, 42, .10);
  --edg-hd-ink:     #0A2E2A;
  --edg-hd-ink-2:   #123F39;
  --edg-hd-gold:    #B88C59;
}

/* ------------------------------------------------------ the background --- */

.whb-header,
.whb-header .whb-main-header,
.whb-header .whb-row,
.whb-header .whb-row.whb-with-bg,
.whb-header .whb-row.whb-color-dark,
.whb-header .whb-row.whb-color-dark:not(.whb-with-bg),
.whb-clone .whb-row,
.whb-sticked .whb-row,
.whb-header.whb-sticked .whb-main-header {
  background-color: var(--edg-hd-bg) !important;
  background-image: none !important;
}

/* Woodmart paints a translucent row over hero sections - keep it ivory. */
body:not(.single-product) .whb-overcontent:not(.whb-sticked) .whb-row:not(.whb-with-bg) {
  background-color: var(--edg-hd-bg) !important;
}

/* Soft warm separator instead of a hard white edge. */
.whb-header .whb-row.whb-border-fullwidth,
.whb-header .whb-header-bottom {
  border-color: var(--edg-hd-line) !important;
}

.whb-header .whb-general-header {
  border-bottom: 1px solid var(--edg-hd-line);
}

/* --------------------------------------------------------- navigation --- */

.whb-header .wd-nav-main > li > a,
.whb-header .wd-nav-secondary > li > a,
.whb-header .wd-nav > li > a {
  color: var(--edg-hd-ink) !important;
  font-weight: 700;
}

.whb-header .wd-nav > li > a .nav-link-text { letter-spacing: .06em; }

.whb-header .wd-nav > li > a:hover,
.whb-header .wd-nav > li > a:focus,
.whb-header .wd-nav > li.current-menu-item > a,
.whb-header .wd-nav > li.current-menu-ancestor > a,
.whb-header .wd-nav > li.wd-active > a {
  color: var(--edg-hd-ink-2) !important;
}

/* Keep the underline indicator visible against ivory. */
.whb-header .wd-nav.wd-style-underline > li > a .nav-link-text:after,
.whb-header .wd-nav > li > a .nav-link-text:after {
  background-color: var(--edg-hd-gold) !important;
}

/* -------------------------------------------------------------- tools --- */

.whb-header .wd-tools-element {
  --wd-header-el-color: #0A2E2A;
  --wd-header-el-color-hover: #123F39;
}

.whb-header .wd-tools-element > a,
.whb-header .wd-tools-element > a .wd-tools-icon,
.whb-header .wd-tools-element > a .wd-tools-text {
  color: var(--edg-hd-ink);
}

.whb-header .wd-tools-element > a:hover,
.whb-header .wd-tools-element > a:hover .wd-tools-text { color: var(--edg-hd-ink-2); }

/* Cart amount + counter stay legible. */
.whb-header .wd-cart-subtotal,
.whb-header .wd-tools-text,
.whb-header .subtotal-divider {
  color: var(--edg-hd-ink) !important;
  font-weight: 600;
}

.whb-header .wd-tools-count,
.whb-header .wd-cart-number {
  background-color: var(--edg-hd-ink-2) !important;
  color: #FFFFFF !important;
}

/* ------------------------------------------------------ social icons --- */

.whb-header .wd-social-icons.wd-style-bordered .wd-social-icon {
  border-color: rgba(10, 46, 42, .22);
  color: var(--edg-hd-ink);
  background-color: transparent;
}

.whb-header .wd-social-icons.wd-style-bordered .wd-social-icon:hover {
  border-color: var(--edg-hd-ink-2);
  background-color: var(--edg-hd-ink-2);
  color: #FFFFFF;
}

/* ---------------------------------------------------------------- logo --- */

.whb-header .wd-logo img {
  filter: none;
  opacity: 1;
}

/* --------------------------------------------------------- mobile bar --- */

@media (max-width: 1024px) {
  /* A taller, calmer bar - the old 60px felt cramped. */
  :root { --wd-header-general-sm-h: 78px; }

  .whb-header .whb-row,
  .whb-header .whb-main-header,
  .whb-clone .whb-row {
    background-color: var(--edg-hd-bg) !important;
  }

  .whb-header .whb-general-header { border-bottom: 1px solid var(--edg-hd-line); }

  .whb-header .whb-general-header-inner,
  .whb-header .whb-general-header > .container > .whb-flex-row {
    height: 78px;
    max-height: 78px;
  }

  .whb-header .whb-general-header > .container { padding-inline: 16px; }

  /* Logo: sized by height so it always sits optically centred. */
  .whb-header .whb-mobile-center .site-logo { display: flex; justify-content: center; }

  .whb-header .whb-mobile-center .wd-logo img {
    max-width: none !important;
    max-height: 50px;
    width: auto;
    height: 50px;
    object-fit: contain;
  }

  /* Comfortable, evenly weighted tap targets. */
  .whb-header .whb-mobile-left,
  .whb-header .whb-mobile-right { flex: 0 0 auto; }

  .whb-header .whb-mobile-right { gap: 4px; }

  .whb-header .wd-tools-element > a,
  .whb-header .wd-header-mobile-nav > a {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    height: 44px;
    color: var(--edg-hd-ink);
  }

  .whb-header .whb-hidden-lg .wd-tools-icon:before,
  .whb-header .wd-header-mobile-nav .wd-tools-icon:before {
    font-size: 23px;
  }

  .whb-header .whb-hidden-lg .wd-tools-count,
  .whb-header .whb-hidden-lg .wd-cart-number {
    min-width: 17px;
    height: 17px;
    font-size: 10px;
    line-height: 17px;
  }

  /* The running cart total crowds the bar on a phone. */
  .whb-header .whb-mobile-right .wd-cart-subtotal,
  .whb-header .whb-mobile-right .wd-tools-text { display: none; }
}

@media (max-width: 420px) {
  .whb-header .whb-mobile-center .wd-logo img { max-height: 44px; height: 44px; }
  .whb-header .whb-general-header > .container { padding-inline: 12px; }
}

/* header social row: follow links, limited to five.
   Scoped to this one header element - the sticky social rail keeps YouTube and TikTok. */
.whb-20zkpzxdk3dbjrfv0wgn .wd-social-icon.social-youtube,
.whb-20zkpzxdk3dbjrfv0wgn .wd-social-icon.social-tiktok {
  display: none !important;
}


/* ---- edglow-canvas ---- */
/* ==========================================================================
   Edglow - one continuous ivory canvas
   The whole site sits on the footer tone, so no bare white gaps appear
   between the header, the sections and the footer.
   ========================================================================== */

html,
body,
body.woodmart-theme,
.wd-page-wrapper,
.wd-page-content,
.main-page-wrapper,
.site-content,
.wd-content-area,
.wd-content-layout,
main#main-content,
.wd-builder-off,
.woocommerce-page .wd-page-content,
.single-product .wd-page-content,
.archive .wd-page-content,
.blog .wd-page-content,
.page .wd-page-content,
.error404 .wd-page-content {
  background-color: #FAF7F2;
}

/* Elementor wrappers must not paint their own white. */
.wd-page-content .elementor,
.wd-page-content .elementor-section-wrap,
.elementor-location-single,
.elementor-location-archive {
  background-color: transparent;
}

/* Woodmart page-title strip: warm band, dark ink (the demo photo is gone). */
.wd-page-title,
.wd-page-title.color-scheme-light,
.wd-page-title.title-shop,
.wd-page-title.title-blog,
body .wd-page-title {
  background-color: #F1EBE1 !important;
  background-image: none !important;
}

.wd-page-title .wd-page-title-bg { display: none; }

.wd-page-title.color-scheme-light .entry-title,
.wd-page-title.color-scheme-light .title,
.wd-page-title .entry-title,
.wd-page-title .title {
  color: #0A2E2A !important;
  font-weight: 600;
}

.wd-page-title.color-scheme-light .wd-breadcrumbs,
.wd-page-title.color-scheme-light .wd-breadcrumbs a,
.wd-page-title .wd-breadcrumbs,
.wd-page-title .wd-breadcrumbs a {
  color: #4A5A55 !important;
}

.wd-page-title .wd-breadcrumbs a:hover { color: #123F39 !important; }

/* Shop / archive / account / cart / checkout pages keep the same ground. */
.woocommerce-cart .wd-page-content,
.woocommerce-checkout .wd-page-content,
.woocommerce-account .wd-page-content,
.woocommerce-order-received .wd-page-content {
  background-color: #FAF7F2;
}

/* Nothing should leave a white strip under the last section. */
.wd-page-content > *:last-child { margin-bottom: 0; }

.wd-prefooter:empty { display: none; }

/* Side drawers keep their own dark treatment - deliberately not repainted. */


/* ---- edglow-footer-boost ---- */
/* ==========================================================================
   Edglow - footer legibility boost
   Same layout and palette, stronger type so the footer reads as clearly as
   the rest of the site.
   ========================================================================== */

.edg-footer-pro {
  --muted: #4A5A55;   /* was #5F6D68 - deeper for real contrast */
  --text:  #14302B;
}

/* ------------------------------------------------------ assurance row --- */

.edg-footer-pro .edg-assure__intro {
  font-size: 16px !important;
  font-weight: 500 !important;
  line-height: 1.72 !important;
  color: #3F4F4A !important;
}

.edg-footer-pro .edg-assure__copy,
.edg-footer-pro .edg-assure__copy p,
.edg-footer-pro .edg-assure__copy span {
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
  color: #2C403B !important;
}

.edg-footer-pro .edg-assure__copy strong,
.edg-footer-pro .edg-assure__copy b {
  font-weight: 700 !important;
  color: #0A2E2A !important;
}

/* ---------------------------------------------------------- brand col --- */

.edg-footer-pro .edg-brand__about,
.edg-footer-pro .edg-brand__tag {
  font-size: 15.5px !important;
  font-weight: 500 !important;
  line-height: 1.75 !important;
  color: #3F4F4A !important;
}

.edg-footer-pro .edg-contact-label {
  font-size: 11.5px !important;
  font-weight: 700 !important;
  letter-spacing: .13em !important;
  color: #7A6444 !important;
}

.edg-footer-pro .edg-contact-text,
.edg-footer-pro .edg-contact-text a {
  font-size: 15.5px !important;
  font-weight: 600 !important;
  line-height: 1.55 !important;
  color: #14302B !important;
}

.edg-footer-pro .edg-contact-text a:hover { color: #123F39 !important; }

/* ------------------------------------------------------------ headings --- */

.edg-footer-pro .edg-footer-heading {
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: .15em !important;
  color: #0A2E2A !important;
  opacity: 1 !important;
}

/* --------------------------------------------------------------- links --- */

.edg-footer-pro .edg-footer-links a,
.edg-footer-pro .edg-footer-links li a {
  font-size: 15.5px !important;
  font-weight: 500 !important;
  line-height: 1.5 !important;
  color: #2C403B !important;
  opacity: 1 !important;
}

.edg-footer-pro .edg-footer-links a:hover {
  color: #0A2E2A !important;
  font-weight: 600 !important;
}

/* --------------------------------------------------------- support box --- */

.edg-footer-pro .edg-support-card,
.edg-footer-pro .edg-support-card p,
.edg-footer-pro .edg-support-card span:not(.edg-support-card__eyebrow) {
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.65 !important;
  color: #2C403B !important;
}

.edg-footer-pro .edg-support-card__eyebrow {
  font-weight: 700 !important;
  letter-spacing: .13em !important;
  color: #7A6444 !important;
}

/* ------------------------------------------------------------- bottom --- */

.edg-footer-pro .edg-footer-bottom__copy,
.edg-footer-pro .edg-footer-bottom__copy p {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #3F4F4A !important;
}

.edg-footer-pro .edg-footer-bottom__links a {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #2C403B !important;
}

.edg-footer-pro .edg-footer-bottom__links a:hover { color: #0A2E2A !important; }

/* Woodmart copyright strip, if it ever shows. */
.wd-copyrights,
.wd-copyrights p,
.wd-copyrights a {
  color: #3F4F4A !important;
  font-size: 14px;
  font-weight: 500;
}

/* ==========================================================================
   MOBILE FOOTER
   The block ships desktop-only grids, so the whole mobile layout is rebuilt
   here: nothing overflows, nothing clips, one word per line never happens.
   ========================================================================== */

/* Grid children must be allowed to shrink, or long words widen the track. */
.edg-footer-pro .edg-assure__grid > *,
.edg-footer-pro .edg-footer-main > * { min-width: 0; }

@media (max-width: 1024px) {
  .edg-footer-pro__container { padding-inline: 24px !important; }

  .edg-footer-pro .edg-assure__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .edg-footer-pro .edg-footer-main {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 40px 32px !important;
    padding: 48px 0 40px !important;
  }

  .edg-footer-pro .edg-footer-main > *:first-child { grid-column: 1 / -1; }

  .edg-footer-pro .edg-support-card { width: 100%; }
}

@media (max-width: 767px) {

  /* ---------------------------------------------------------- shell --- */

  .edg-footer-pro {
    overflow-x: hidden;
    text-align: left;
  }

  .edg-footer-pro__container {
    max-width: 100% !important;
    padding-inline: 20px !important;
  }

  /* ------------------------------------------------- shop with confidence --- */

  .edg-footer-pro .edg-assure {
    padding: 38px 0 32px !important;
  }

  .edg-footer-pro .edg-assure__headrow {
    display: block !important;
    margin-bottom: 22px !important;
  }

  .edg-footer-pro .edg-assure__eyebrow {
    font-size: 17px !important;
    margin-bottom: 6px !important;
  }

  .edg-footer-pro .edg-assure__title {
    font-size: 27px !important;
    line-height: 1.18 !important;
    letter-spacing: -.02em !important;
  }

  .edg-footer-pro .edg-assure__intro {
    max-width: 100% !important;
    margin-top: 12px !important;
    font-size: 15.5px !important;
    line-height: 1.7 !important;
    text-align: left !important;
  }

  /* One card per row: full sentences, never one word per line. */
  .edg-footer-pro .edg-assure__grid {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
  }

  .edg-footer-pro .edg-assure__card {
    min-height: 0 !important;
    align-items: center !important;
    gap: 14px !important;
    padding: 15px 16px !important;
    border-radius: 10px !important;
  }

  .edg-footer-pro .edg-assure__icon {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
  }

  .edg-footer-pro .edg-assure__copy {
    min-width: 0;
    font-size: 14.5px !important;
    line-height: 1.5 !important;
  }

  .edg-footer-pro .edg-assure__copy strong {
    display: block;
    margin-bottom: 2px;
    font-size: 15px !important;
  }

  /* ------------------------------------------------------ main columns --- */

  /* One block per row, in the order they are written. Each section keeps
     its own heading and its own card together - nothing floats away. */
  .edg-footer-pro .edg-footer-main {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 32px !important;
    padding: 36px 0 32px !important;
  }

  /* Links pair up so a four-item column is two short rows, not a long list. */
  .edg-footer-pro .edg-footer-links {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 13px 18px !important;
  }

  .edg-footer-pro .edg-footer-col + .edg-footer-col {
    padding-top: 26px;
    border-top: 1px solid rgba(18, 63, 57, .10);
  }

  .edg-footer-pro .edg-brand__logo {
    width: 148px !important;
    margin-bottom: 16px !important;
  }

  .edg-footer-pro .edg-brand__tag {
    font-size: 12px !important;
    letter-spacing: .12em !important;
    line-height: 1.6 !important;
  }

  .edg-footer-pro .edg-brand__about {
    font-size: 15px !important;
    line-height: 1.72 !important;
    text-align: left !important;
  }

  .edg-footer-pro .edg-brand__contact { gap: 13px !important; }

  .edg-footer-pro .edg-contact-text {
    font-size: 14.5px !important;
    line-height: 1.55 !important;
    overflow-wrap: anywhere;
  }

  .edg-footer-pro .edg-footer-heading {
    margin-bottom: 16px !important;
    padding-bottom: 9px !important;
    font-size: 13px !important;
    letter-spacing: .13em !important;
    overflow-wrap: normal;
    hyphens: none;
  }

  .edg-footer-pro .edg-footer-links a {
    font-size: 14.5px !important;
    line-height: 1.45 !important;
  }

  .edg-footer-pro .edg-support-card {
    width: 100%;
    margin-top: 22px !important;
    padding: 18px 16px !important;
  }

  .edg-footer-pro .edg-support-card p { font-size: 14px !important; }
  .edg-footer-pro .edg-support-card strong { font-size: 17px !important; }
  .edg-footer-pro .edg-support-card a { font-size: 12px !important; }

  /* Social row centred under the columns. */
  .edg-footer-pro .wd-social-icons,
  .edg-footer-pro .edg-social {
    justify-content: flex-start;
  }

  /* ---------------------------------------------------------- bottom --- */

  .edg-footer-pro .edg-footer-bottom {
    padding: 20px 20px 26px !important;
    gap: 12px !important;
  }

  .edg-footer-pro .edg-footer-bottom__copy { font-size: 12.5px !important; }
  .edg-footer-pro .edg-footer-bottom__links a { font-size: 12.5px !important; }
}

/* Clear Woodmart's fixed bottom bar so nothing hides behind it. */
@media (max-width: 1024px) {
  .edg-footer-pro { padding-bottom: var(--wd-toolbar-h, 60px); }
}

@media (max-width: 430px) {
  .edg-footer-pro__container { padding-inline: 16px !important; }

  .edg-footer-pro .edg-assure__title { font-size: 25px !important; }
  .edg-footer-pro .edg-assure__intro { font-size: 15px !important; }

  .edg-footer-pro .edg-footer-main { gap: 28px !important; }

  .edg-footer-pro .edg-footer-heading { font-size: 12.5px !important; }
  .edg-footer-pro .edg-footer-links a { font-size: 14px !important; }
  .edg-footer-pro .edg-brand__logo { width: 138px !important; }
}

@media (max-width: 340px) {
  .edg-footer-pro .edg-footer-links {
    grid-template-columns: minmax(0, 1fr) !important;
  }
}


/* ---- edglow-responsive ---- */
/* ==========================================================================
   Edglow - responsive pass
   Wider, full-bleed sections on desktop; clean single-column stacking on
   phones; and no horizontal overflow anywhere.
   ========================================================================== */

/* ------------------------------------------------- never scroll sideways --- */

/* NOTE: the clip lives on the page wrapper, not on html/body. A clip on the
   root also clips position:fixed elements, which cut the sticky social rail
   off at the right edge. */
html,
body {
  max-width: 100%;
}

.wd-page-content,
.wd-footer,
.wd-prefooter {
  overflow-x: clip;
}

img,
video,
iframe,
svg { max-width: 100%; }

/* Wide content scrolls inside itself instead of pushing the page. */
.wd-page-content table,
.woocommerce table.shop_table,
.woocommerce-cart-form,
.wd-entry-content pre {
  display: block;
  max-width: 100%;
  overflow-x: auto;
}

/* Full-bleed blocks measure the real viewport, so a scrollbar cannot make
   them 15px too wide. --edg-vw is published by the front-end script. */
.edg-page,
.edg-footer-pro {
  width: var(--edg-vw, 100vw);
  max-width: var(--edg-vw, 100vw);
  margin-left: calc(var(--edg-vw, 100vw) / -2);
}

/* --------------------------------------------------------- wide screens --- */

@media (min-width: 1500px) {
  :root { --wd-container-w: 1440px; }

  .container,
  .wd-content-layout.container,
  main#main-content.container { max-width: 1440px; }

  .edg-footer-pro__container { max-width: 1440px; }

  .edg-page__hero > *,
  .edg-page__band > *,
  .edg-page__cta > * { max-width: 1440px; }

  .edg-blogs__inner,
  .edg-blogs__head,
  .edg-blogs__grid,
  .edg-blogs__foot { max-width: 1440px; }
}

@media (min-width: 1800px) {
  :root { --wd-container-w: 1600px; }

  .container,
  .wd-content-layout.container,
  main#main-content.container,
  .edg-footer-pro__container,
  .edg-page__hero > *,
  .edg-page__band > *,
  .edg-page__cta > * { max-width: 1600px; }
}

/* ------------------------------------------------------------- tablets --- */

@media (max-width: 1024px) {
  .wd-page-content .container,
  main#main-content.container { padding-inline: 24px; }

  /* Product grids: two clean columns rather than three cramped ones. */
  .wd-products.wd-grid-g { --wd-col-md: 2; }
}

/* -------------------------------------------------------------- phones --- */

@media (max-width: 767px) {
  .wd-page-content .container,
  main#main-content.container { padding-inline: 16px; }

  /* Two product cards per row keeps browsing quick on a phone. */
  .wd-products.wd-grid-g { --wd-col-sm: 2; --wd-gap-sm: 12px; }

  /* Comfortable tap targets everywhere. */
  .wd-products .wd-product .edg-buy-now--loop,
  .wd-products .wd-product .edg-atc,
  .button,
  .wp-element-button,
  .woocommerce a.button,
  .woocommerce button.button { min-height: 46px; }

  /* Single product: full-width action buttons. */
  .single-product .edg-buy-now,
  .single-product .single_add_to_cart_button { width: 100%; }

  /* Cart / checkout tables stack instead of squeezing. */
  .woocommerce-cart table.cart thead { display: none; }

  /* Headings should never overflow their box. */
  h1, h2, h3, .wd-entities-title, .product_title { overflow-wrap: anywhere; }
}

@media (max-width: 480px) {
  .wd-products.wd-grid-g { --wd-col-sm: 1; }
}

/* ==========================================================================
   Woodmart "Stretch container" correction
   The theme sets the negative margin and width with JavaScript from the
   document width. When a stretched container holds another stretched one the
   offset is applied twice, so the block drifts left and spills off screen.
   ========================================================================== */

/* Desktop is left exactly as the theme builds it - the nested stretch there
   is what breaks the inner container out of the boxed wrapper, so touching
   it pushes the whole section off to the right.

   On phones and tablets the container already fills the screen, so the
   stretch offsets have nothing to correct - they only push it off centre. */
@media (max-width: 1024px) {
  .wd-page-content .wd-section-stretch,
  .wd-page-content .wd-section-stretch.e-parent {
    left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform: none !important;
  }

  .wd-page-content .wd-section-stretch > .e-con-inner {
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
  }
}

/* ------------------------------------------ mobile polish, whole site --- */

@media (max-width: 767px) {
  /* Latest insights sits closer to the footer instead of floating. */
  .edg-blogs { padding: 44px 0 40px; }
  .edg-blogs__head { margin-bottom: 26px; }

  /* Section headings scale down cleanly rather than wrapping mid-word. */
  .edg-page__h2,
  .edg-blogs__title { overflow-wrap: normal; hyphens: none; }

  /* Anything that lays itself out in fixed columns collapses safely. */
  .wd-page-content [class*="grid-template-columns"] { min-width: 0; }

  /* Elementor containers must not force a min width on small screens. */
  .wd-page-content .e-con,
  .wd-page-content .e-con-inner,
  .wd-page-content .elementor-widget-wrap { min-width: 0; max-width: 100%; }

  /* Hand-built homepage sections stay inside the screen and centred. */
  .edg-why,
  .edg-why__container,
  .edg-faq,
  .edg-glow,
  .edg-assure {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: auto !important;
  }
}

/* ------------------------------------------------ sensible touch sizing --- */

@media (hover: none) {
  .wd-nav a,
  .wd-tools-element > a,
  .edg-footer-links a,
  .edg-faq__q,
  .edg-cfaq__q { min-height: 40px; }
}


/* ---- edglow-cart-drawer ---- */
/* ==========================================================================
   Edglow - shopping cart side drawer
   Dark drawer kept as-is; every text element rebuilt for readable contrast.
   Structure, widths, image sizes and behaviour are untouched.
   ========================================================================== */

.cart-widget-side {
  --edg-cd-ink:     #FFFFFF;   /* primary text        */
  --edg-cd-ivory:   #F5F1EA;   /* headings / titles   */
  --edg-cd-soft:    #C6D2CE;   /* secondary text      */
  --edg-cd-accent:  #7FD8BD;   /* prices / totals     */
  --edg-cd-gold:    #D8AE79;   /* hover accent        */
  --edg-cd-line:    rgba(255, 255, 255, .14);
}

/* Nothing inside the drawer may inherit a dark brand colour. */
.cart-widget-side,
.cart-widget-side p,
.cart-widget-side span,
.cart-widget-side div,
.cart-widget-side li,
.cart-widget-side dt,
.cart-widget-side dd,
.cart-widget-side strong {
  color: var(--edg-cd-ink);
}

/* ------------------------------------------------------------ heading --- */

.cart-widget-side > .wd-heading {
  border-bottom: 1px solid var(--edg-cd-line);
}

.cart-widget-side > .wd-heading .title {
  color: var(--edg-cd-ivory) !important;
  font-weight: 600;
  letter-spacing: -.01em;
  opacity: 1;
}

.cart-widget-side .close-side-widget a,
.cart-widget-side .close-side-widget .wd-action-text,
.cart-widget-side .close-side-widget .wd-action-icon {
  color: var(--edg-cd-ink) !important;
  opacity: 1;
}

.cart-widget-side .close-side-widget a:hover,
.cart-widget-side .close-side-widget a:hover .wd-action-text,
.cart-widget-side .close-side-widget a:hover .wd-action-icon {
  color: var(--edg-cd-gold) !important;
}

.cart-widget-side .shopping-cart-widget-body,
.cart-widget-side .shopping-cart-widget-footer,
.cart-widget-side .cart-info {
  color: var(--edg-cd-ink);
}

/* ------------------------------------------------------------- items --- */

.cart-widget-side .woocommerce-mini-cart li,
.cart-widget-side .cart_list li,
.cart-widget-side .mini_cart_item {
  border-color: var(--edg-cd-line) !important;
}

.cart-widget-side .wd-entities-title,
.cart-widget-side .wd-entities-title a,
.cart-widget-side .cart_list li > a:not(.remove),
.cart-widget-side .woocommerce-mini-cart-item a:not(.remove) {
  color: var(--edg-cd-ivory) !important;
  font-weight: 600;
  opacity: 1;
}

.cart-widget-side .wd-entities-title a:hover,
.cart-widget-side .woocommerce-mini-cart-item a:not(.remove):hover {
  color: var(--edg-cd-accent) !important;
}

/* Quantity line: "3 x Rs 1,999" */
.cart-widget-side .quantity,
.cart-widget-side .quantity span,
.cart-widget-side .wd-product-detail,
.cart-widget-side .variation,
.cart-widget-side .variation dt,
.cart-widget-side .variation dd,
.cart-widget-side .variation p {
  color: var(--edg-cd-soft) !important;
  opacity: 1;
  font-weight: 500;
}

/* ------------------------------------------------------------- prices --- */

.cart-widget-side .amount,
.cart-widget-side bdi,
.cart-widget-side .woocommerce-Price-amount,
.cart-widget-side .quantity .woocommerce-Price-amount,
.cart-widget-side .price,
.cart-widget-side .price .woocommerce-Price-amount,
.cart-widget-side .price ins,
.cart-widget-side .price ins .woocommerce-Price-amount,
.cart-widget-side .woocommerce-Price-currencySymbol {
  color: var(--edg-cd-accent) !important;
  opacity: 1;
}

.cart-widget-side .price del,
.cart-widget-side .price del .woocommerce-Price-amount,
.cart-widget-side del,
.cart-widget-side del .woocommerce-Price-amount {
  color: var(--edg-cd-soft) !important;
  opacity: .7 !important;
}

/* -------------------------------------------------------- remove icon --- */

.cart-widget-side a.remove,
.cart-widget-side a.remove_from_cart_button,
.cart-widget-side .cart_list li > a.remove {
  color: var(--edg-cd-ink) !important;
  background-color: transparent !important;
  opacity: .95;
  font-weight: 400;
}

.cart-widget-side a.remove:hover,
.cart-widget-side a.remove_from_cart_button:hover {
  color: var(--edg-cd-gold) !important;
  background-color: transparent !important;
  opacity: 1;
}

/* ------------------------------------------------------------ totals --- */

.cart-widget-side .woocommerce-mini-cart__total,
.cart-widget-side .total {
  border-top: 1px solid var(--edg-cd-line) !important;
  color: var(--edg-cd-ivory) !important;
}

.cart-widget-side .woocommerce-mini-cart__total strong,
.cart-widget-side .total strong,
.cart-widget-side .wd-cart-subtotal {
  color: var(--edg-cd-ivory) !important;
  font-weight: 600;
}

.cart-widget-side .woocommerce-mini-cart__total .amount,
.cart-widget-side .total .amount,
.cart-widget-side .total bdi {
  color: var(--edg-cd-accent) !important;
  font-weight: 700;
}

/* --------------------------------------------------- messages / notes --- */

.cart-widget-side .woocommerce-mini-cart__empty-message,
.cart-widget-side .wd-empty-mini-cart,
.cart-widget-side .edg-ship-nudge,
.cart-widget-side .woocommerce-message,
.cart-widget-side .wd-free-progress-bar,
.cart-widget-side .wd-free-progress-bar span {
  color: var(--edg-cd-soft) !important;
  opacity: 1;
}

.cart-widget-side .edg-ship-nudge strong,
.cart-widget-side .wd-free-progress-bar strong {
  color: var(--edg-cd-accent) !important;
}

/* ------------------------------------------------------------ buttons --- */

/* View cart - ivory panel, deep green ink */
.cart-widget-side .buttons .button:not(.checkout),
.cart-widget-side a.wc-forward:not(.checkout) {
  background-color: #F5F1EA !important;
  border: 1px solid #F5F1EA !important;
  color: #0A2E2A !important;
  font-weight: 700 !important;
  letter-spacing: .12em;
}

.cart-widget-side .buttons .button:not(.checkout):hover,
.cart-widget-side a.wc-forward:not(.checkout):hover,
.cart-widget-side .buttons .button:not(.checkout):focus {
  background-color: #FFFFFF !important;
  border-color: #FFFFFF !important;
  color: #0A2E2A !important;
}

/* Checkout - brighter green so it lifts off the dark drawer */
.cart-widget-side .buttons a.checkout,
.cart-widget-side a.checkout.wc-forward,
.cart-widget-side .button.checkout {
  background-color: #14554B !important;
  border: 1px solid #2E7E70 !important;
  color: #FFFFFF !important;
  font-weight: 700 !important;
  letter-spacing: .12em;
}

.cart-widget-side .buttons a.checkout:hover,
.cart-widget-side a.checkout.wc-forward:hover,
.cart-widget-side .buttons a.checkout:focus,
.cart-widget-side .buttons a.checkout:active {
  background-color: #1B6C5F !important;
  border-color: #7FD8BD !important;
  color: #FFFFFF !important;
}

/* Any residual link inside the drawer stays visible. */
.cart-widget-side a:not(.button):not(.checkout):not(.remove) { color: var(--edg-cd-ivory); }
.cart-widget-side a:not(.button):not(.checkout):not(.remove):hover { color: var(--edg-cd-accent); }


/* ---- edglow-ui ---- */
/* ==========================================================================
   Edglow - floating controls
   Scroll-to-top, carousel arrows and the WhatsApp help launcher.
   ========================================================================== */

:root {
  --edg-ui-deep:  #0A2E2A;
  --edg-ui-green: #123F39;
  --edg-ui-gold:  #B88C59;
  --edg-ui-cream: #F8F5EF;
  --edg-ui-wa:    #25D366;
  --edg-ui-wa-dk: #128C7E;
  --edg-ui-bottom: 24px;
}

@media (max-width: 1024px) {
  :root { --edg-ui-bottom: calc(var(--wd-toolbar-h, 60px) + 14px); }
}

/* ------------------------------------------------------- scroll to top --- */

a.scrollToTop {
  right: 20px !important;
  bottom: calc(var(--edg-ui-bottom) + 74px) !important;
  width: 46px !important;
  height: 46px !important;
  border-radius: 50% !important;
  background-color: var(--edg-ui-deep) !important;
  border: 1px solid rgba(255, 255, 255, .22) !important;
  color: #FFFFFF !important;
  box-shadow: 0 10px 26px -10px rgba(10, 46, 42, .6) !important;
  opacity: 1 !important;
  transition: background-color .25s ease, transform .25s ease;
}

a.scrollToTop:hover {
  background-color: var(--edg-ui-green) !important;
  transform: translateY(-3px);
}

a.scrollToTop::before,
a.scrollToTop::after {
  color: #FFFFFF !important;
  opacity: 1 !important;
}

/* --------------------------------------------------- carousel controls --- */

.wd-nav-arrows .wd-btn-arrow {
  --wd-arrow-color: #FFFFFF;
  --wd-arrow-bg: var(--edg-ui-deep);
}

.wd-nav-arrows .wd-btn-arrow .wd-arrow-inner {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: var(--edg-ui-deep);
  border: 1px solid rgba(10, 46, 42, .18);
  color: #FFFFFF;
  box-shadow: 0 8px 22px -12px rgba(10, 46, 42, .7);
  transition: background-color .25s ease, border-color .25s ease;
}

.wd-nav-arrows .wd-btn-arrow .wd-arrow-inner::before,
.wd-nav-arrows .wd-btn-arrow .wd-arrow-inner::after {
  color: #FFFFFF !important;
}

.wd-nav-arrows .wd-btn-arrow:hover .wd-arrow-inner {
  background-color: var(--edg-ui-green);
  border-color: var(--edg-ui-gold);
}

.wd-nav-arrows .wd-btn-arrow.wd-disabled .wd-arrow-inner {
  background-color: rgba(10, 46, 42, .28);
  border-color: transparent;
  opacity: 1;
}

/* Pagination dots */
.wd-nav-pagin li a,
.wd-nav-pagin-wrap .swiper-pagination-bullet {
  background-color: rgba(10, 46, 42, .28) !important;
  border-color: rgba(10, 46, 42, .28) !important;
}

.wd-nav-pagin li.wd-active a,
.wd-nav-pagin-wrap .swiper-pagination-bullet-active {
  background-color: var(--edg-ui-gold) !important;
  border-color: var(--edg-ui-gold) !important;
}

/* ------------------------------------------------- sticky social rail --- */

.wd-sticky-social.wd-sticky-social-right {
  position: fixed !important;
  right: 0 !important;
  left: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 340;
  max-width: none !important;
  border-radius: 6px 0 0 6px;
  overflow: hidden;
  box-shadow: -6px 0 20px -12px rgba(10, 46, 42, .5);
}

.wd-sticky-social.wd-sticky-social-right .wd-social-icon {
  border-radius: 0 !important;
  margin: 0 !important;
}

/* It must not sit on top of the help launcher or the back-to-top button. */
@media (max-width: 1500px) {
  .wd-sticky-social.wd-sticky-social-right {
    top: 42% !important;
  }
}

/* On a phone the rail covers the content and fights the bottom bar. */
@media (max-width: 1024px) {
  .wd-sticky-social.wd-sticky-social-right { display: none !important; }
}

/* ==========================================================================
   WhatsApp help launcher
   ========================================================================== */

.edg-wa {
  position: fixed;
  right: 20px;
  bottom: var(--edg-ui-bottom);
  z-index: 998;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
}

.edg-wa * { box-sizing: border-box; }

/* ------------------------------------------------------------- button --- */

.edg-wa__launch {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  height: 54px;
  padding: 0 20px 0 16px;
  border: 0;
  border-radius: 999px;
  background: var(--edg-ui-wa);
  color: #FFFFFF;
  font-family: inherit;
  font-size: 14.5px;
  font-weight: 700;
  letter-spacing: .01em;
  cursor: pointer;
  box-shadow: 0 14px 30px -12px rgba(18, 63, 57, .65);
  transition: background-color .25s ease, transform .25s ease;
}

.edg-wa__launch:hover { background: var(--edg-ui-wa-dk); transform: translateY(-2px); }

.edg-wa__launch svg { width: 26px; height: 26px; flex: 0 0 26px; }
.edg-wa__icon-x { display: none; }

.edg-wa.is-open .edg-wa__icon-wa { display: none; }
.edg-wa.is-open .edg-wa__icon-x { display: block; }
.edg-wa.is-open .edg-wa__launch { background: var(--edg-ui-deep); }

/* -------------------------------------------------------------- panel --- */

.edg-wa__panel {
  position: absolute;
  right: 0;
  bottom: 66px;
  width: min(340px, calc(100vw - 40px));
  border-radius: 14px;
  overflow: hidden;
  background: #FFFFFF;
  border: 1px solid rgba(10, 46, 42, .12);
  box-shadow: 0 26px 60px -24px rgba(10, 46, 42, .55);
  opacity: 0;
  visibility: hidden;
  transform: translateY(12px) scale(.98);
  transform-origin: bottom right;
  transition: opacity .22s ease, transform .22s ease, visibility .22s;
}

.edg-wa.is-open .edg-wa__panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scale(1);
}

.edg-wa__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 15px 14px;
  background: var(--edg-ui-deep);
  color: #FFFFFF;
}

.edg-wa__id { display: flex; align-items: center; gap: 11px; min-width: 0; }

.edg-wa__avatar {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  flex: 0 0 38px;
  border-radius: 50%;
  background: var(--edg-ui-wa);
  color: #FFFFFF;
}

.edg-wa__avatar svg { width: 22px; height: 22px; }

.edg-wa__who { display: flex; flex-direction: column; min-width: 0; }
.edg-wa__who strong { font-size: 15px; font-weight: 600; line-height: 1.25; }
.edg-wa__who span { font-size: 12px; font-weight: 450; color: rgba(255, 255, 255, .72); }

.edg-wa__close {
  flex: 0 0 auto;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, .14);
  color: #FFFFFF;
  font-size: 20px;
  line-height: 1;
  cursor: pointer;
}

.edg-wa__close:hover { background: rgba(255, 255, 255, .26); }

.edg-wa__body { padding: 16px 14px 6px; background: var(--edg-ui-cream); }

.edg-wa__bubble {
  margin: 0 0 14px;
  padding: 12px 14px;
  border-radius: 3px 14px 14px 14px;
  background: #FFFFFF;
  border: 1px solid rgba(10, 46, 42, .10);
  font-size: 14px;
  font-weight: 450;
  line-height: 1.6;
  color: #2C403B;
}

.edg-wa__topics { display: grid; gap: 8px; }

.edg-wa__topic {
  display: block;
  padding: 11px 14px;
  border: 1px solid rgba(18, 63, 57, .28);
  border-radius: 999px;
  background: #FFFFFF;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--edg-ui-green);
  text-decoration: none;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

.edg-wa__topic:hover {
  background: var(--edg-ui-green);
  border-color: var(--edg-ui-green);
  color: #FFFFFF;
  text-decoration: none;
}

.edg-wa__foot {
  padding: 14px;
  background: var(--edg-ui-cream);
  text-align: center;
}

.edg-wa__cta {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 48px;
  border-radius: 999px;
  background: var(--edg-ui-wa);
  color: #FFFFFF !important;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .04em;
  text-decoration: none !important;
  transition: background-color .2s ease;
}

.edg-wa__cta:hover { background: var(--edg-ui-wa-dk); }
.edg-wa__cta svg { width: 20px; height: 20px; }

.edg-wa__num {
  display: block;
  margin-top: 9px;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .04em;
  color: #5F6D68;
}

/* ------------------------------------------------------------- mobile --- */

@media (max-width: 600px) {
  .edg-wa { right: 14px; left: 14px; }
  .edg-wa__launch { float: right; }
  .edg-wa__panel { width: 100%; right: 0; bottom: 68px; }
  .edg-wa__label { display: none; }
  .edg-wa__launch { padding: 0; width: 54px; justify-content: center; }
  a.scrollToTop { right: 14px !important; }
}

@media print {
  .edg-wa, a.scrollToTop { display: none !important; }
}


/* ---- edglow-search ---- */
/* ==========================================================================
   Edglow - slide-in search drawer
   ========================================================================== */

.edg-search {
  --edg-s-deep:  #0A2E2A;
  --edg-s-green: #123F39;
  --edg-s-gold:  #B88C59;
  --edg-s-cream: #F8F5EF;
  --edg-s-muted: #5F6D68;
  --edg-s-line:  rgba(10, 46, 42, .12);

  position: fixed;
  inset: 0;
  z-index: 1200;
  visibility: hidden;
  pointer-events: none;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
}

.edg-search * { box-sizing: border-box; }

.edg-search.is-open { visibility: visible; pointer-events: auto; }

/* The theme's own full-screen search is replaced by this drawer. */
.wd-search-full-screen { display: none !important; }

.edg-search-lock, .edg-search-lock body { overflow: hidden; }

.edg-search__scrim {
  position: absolute;
  inset: 0;
  background: rgba(10, 46, 42, .42);
  opacity: 0;
  transition: opacity .32s ease;
}

.edg-search.is-open .edg-search__scrim { opacity: 1; }

.edg-search__panel {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  width: min(440px, 100vw);
  background: #FFFDFA;
  border-right: 1px solid var(--edg-s-line);
  box-shadow: 24px 0 60px -30px rgba(10, 46, 42, .55);
  transform: translateX(-100%);
  transition: transform .34s cubic-bezier(.22, .7, .25, 1);
}

.edg-search.is-open .edg-search__panel { transform: translateX(0); }

.edg-search__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 20px 20px 14px;
}

.edg-search__eyebrow {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--edg-s-gold);
}

.edg-search__close {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border: 1px solid var(--edg-s-line);
  border-radius: 50%;
  background: transparent;
  color: var(--edg-s-deep);
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease;
}

.edg-search__close svg { width: 17px; height: 17px; }
.edg-search__close:hover { background: var(--edg-s-deep); color: #FFFFFF; }

/* ---------------------------------------------------------------- input --- */

.edg-search__form {
  position: relative;
  display: flex;
  align-items: center;
  margin: 0 20px 6px;
}

.edg-search__icon {
  position: absolute;
  left: 16px;
  display: flex;
  color: var(--edg-s-green);
  pointer-events: none;
}

.edg-search__icon svg { width: 19px; height: 19px; }

.edg-search__input {
  width: 100%;
  height: 56px;
  padding: 0 44px 0 46px;
  border: 1px solid rgba(10, 46, 42, .20);
  border-radius: 3px;
  background: #FFFFFF;
  font-family: inherit;
  font-size: 16.5px;
  font-weight: 500;
  color: #173630;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.edg-search__input:focus {
  outline: none;
  border-color: var(--edg-s-green);
  box-shadow: 0 0 0 3px rgba(18, 63, 57, .10);
}

.edg-search__input::placeholder { color: #93A19C; font-weight: 400; }
.edg-search__input::-webkit-search-cancel-button { display: none; }

.edg-search__clear {
  position: absolute;
  right: 12px;
  width: 26px;
  height: 26px;
  border: 0;
  border-radius: 50%;
  background: rgba(10, 46, 42, .08);
  color: var(--edg-s-deep);
  font-size: 17px;
  line-height: 1;
  cursor: pointer;
}

.edg-search__clear:hover { background: rgba(10, 46, 42, .16); }

/* ----------------------------------------------------------------- body --- */

.edg-search__body {
  flex: 1 1 auto;
  overflow-y: auto;
  padding: 14px 20px 28px;
  -webkit-overflow-scrolling: touch;
}

.edg-search__label {
  display: block;
  margin: 16px 0 10px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: var(--edg-s-muted);
}

.edg-search__label:first-child { margin-top: 4px; }

.edg-search__chips { display: flex; flex-wrap: wrap; gap: 8px; }

.edg-search__chip {
  padding: 9px 15px;
  border: 1px solid rgba(18, 63, 57, .26);
  border-radius: 999px;
  background: #FFFFFF;
  font-family: inherit;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--edg-s-green);
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease, border-color .2s ease;
}

.edg-search__chip:hover {
  background: var(--edg-s-green);
  border-color: var(--edg-s-green);
  color: #FFFFFF;
}

/* -------------------------------------------------------------- results --- */

.edg-search__list { display: grid; gap: 6px; }

.edg-search__hit {
  display: flex;
  align-items: center;
  gap: 13px;
  padding: 10px;
  border: 1px solid transparent;
  border-radius: 6px;
  text-decoration: none;
  opacity: 0;
  transform: translateY(6px);
  animation: edg-hit-in .3s cubic-bezier(.22, .7, .25, 1) forwards;
  animation-delay: calc(var(--i, 0) * 45ms);
  transition: background-color .2s ease, border-color .2s ease;
}

.edg-search__hit:hover {
  background: var(--edg-s-cream);
  border-color: var(--edg-s-line);
  text-decoration: none;
}

@keyframes edg-hit-in {
  to { opacity: 1; transform: translateY(0); }
}

.edg-search__thumb {
  flex: 0 0 56px;
  width: 56px;
  height: 56px;
  border-radius: 4px;
  overflow: hidden;
  background: var(--edg-s-cream);
}

.edg-search__thumb img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 5%;
}

.edg-search__meta { display: flex; flex-direction: column; gap: 3px; min-width: 0; }

.edg-search__name {
  font-size: 14.5px;
  font-weight: 600;
  line-height: 1.35;
  color: var(--edg-s-deep);
}

.edg-search__price { font-size: 13.5px; font-weight: 700; color: var(--edg-s-green); }

.edg-search__price del {
  margin-left: 6px;
  font-weight: 400;
  color: var(--edg-s-muted);
  opacity: .8;
}

.edg-search__date {
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: var(--edg-s-muted);
}

.edg-search__hit--post { padding-inline: 10px; }

.edg-search__all {
  display: block;
  margin-top: 18px;
  padding: 14px;
  border: 1px solid var(--edg-s-green);
  border-radius: 2px;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-align: center;
  color: var(--edg-s-green);
  text-decoration: none;
  transition: background-color .2s ease, color .2s ease;
}

.edg-search__all:hover { background: var(--edg-s-green); color: #FFFFFF; text-decoration: none; }

.edg-search__empty {
  margin: 22px 0 0;
  font-size: 15px;
  font-weight: 450;
  line-height: 1.7;
  color: var(--edg-s-muted);
}

.edg-search__empty a { color: var(--edg-s-green); font-weight: 600; text-decoration: underline; }

/* -------------------------------------------------------------- loading --- */

.edg-search__loading {
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 26px 4px;
}

.edg-search__loading span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--edg-s-gold);
  animation: edg-dot 1s ease-in-out infinite;
}

.edg-search__loading span:nth-child(2) { animation-delay: .15s; }
.edg-search__loading span:nth-child(3) { animation-delay: .3s; }

@keyframes edg-dot {
  0%, 100% { opacity: .25; transform: translateY(0); }
  50%      { opacity: 1;   transform: translateY(-5px); }
}

/* ------------------------------------------------------------ responsive --- */

@media (max-width: 600px) {
  .edg-search__panel { width: 100vw; }
  .edg-search__input { height: 52px; font-size: 16px; }
  .edg-search__body { padding-bottom: calc(var(--wd-toolbar-h, 60px) + 24px); }
}

@media (prefers-reduced-motion: reduce) {
  .edg-search__panel,
  .edg-search__scrim { transition: none; }
  .edg-search__hit { animation: none; opacity: 1; transform: none; }
}


/* ============================================================
   edg-search hardening
   Scoped to #edg-search so Woodmart's own button and input rules,
   which load after this file, cannot override the drawer.
   ============================================================ */

/* 1. the hidden attribute must always win */
#edg-search [hidden] { display: none !important; }

/* 2. search field: keep the text clear of the icon */
#edg-search .edg-search__form { position: relative !important; }

#edg-search .edg-search__icon {
  position: absolute !important;
  left: 18px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 2;
  pointer-events: none;
  color: var(--edg-s-green);
}

#edg-search .edg-search__input {
  padding-left: 50px !important;
  padding-right: 48px !important;
  background: #FFFFFF !important;
  text-indent: 0 !important;
}

/* 3. close button: ivory circle, dark cross - never a filled dark blob */
#edg-search .edg-search__close {
  background-color: transparent !important;
  border: 1px solid rgba(10, 46, 42, .18) !important;
  color: #173630 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
}

#edg-search .edg-search__close svg { stroke: currentColor !important; fill: none !important; }

#edg-search .edg-search__close:hover,
#edg-search .edg-search__close:focus {
  background-color: #173630 !important;
  border-color: #173630 !important;
  color: #FFFFFF !important;
}

/* 4. clear button inside the field */
#edg-search .edg-search__clear {
  background-color: rgba(10, 46, 42, .08) !important;
  color: #173630 !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  align-items: center;
  justify-content: center;
}

#edg-search .edg-search__clear:not([hidden]) { display: flex; }
#edg-search .edg-search__loading:not([hidden]) { display: flex; }

/* ---- edglow-quiz ---- */
/* ==========================================================================
   Edglow - skin quiz
   ========================================================================== */

/* The quiz carries its own h1, so the title bar keeps only the breadcrumb. */
.edg-quiz-page .wd-page-title .entry-title { display: none; }
.edg-quiz-page .wd-page-title { padding: 22px 0 0; min-height: 0; }
.edg-quiz-page main#main-content.container { padding-top: 10px; padding-bottom: 0; }
.edg-quiz-page article.entry-content { max-width: 100%; }

.edg-quiz {
  --q-deep:  #0A2E2A;
  --q-green: #123F39;
  --q-gold:  #B88C59;
  --q-cream: #F8F5EF;
  --q-alt:   #F1EBE1;
  --q-text:  #223A35;
  --q-muted: #4A5A55;
  --q-line:  rgba(10, 46, 42, .12);

  position: relative;
  left: 50%;
  width: var(--edg-vw, 100vw);
  max-width: var(--edg-vw, 100vw);
  margin-left: calc(var(--edg-vw, 100vw) / -2);
  padding: clamp(44px, 5vw, 84px) clamp(20px, 4vw, 48px);
  background: var(--q-cream);
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  color: var(--q-text);
  overflow-x: clip;
}

.edg-quiz * { box-sizing: border-box; }

.edg-quiz__stage { display: none; max-width: 820px; margin-inline: auto; }
.edg-quiz__stage.is-active { display: block; animation: edg-q-in .35s ease both; }

@keyframes edg-q-in {
  from { opacity: 0; transform: translateY(10px); }
  to   { opacity: 1; transform: none; }
}

/* ---------------------------------------------------------------- type --- */

.edg-quiz__eyebrow {
  display: block;
  margin-bottom: 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .17em;
  text-transform: uppercase;
  color: var(--q-gold);
  text-align: center;
}

.edg-quiz__title {
  margin: 0 0 18px;
  font-family: inherit;
  font-size: clamp(28px, 3.4vw, 44px);
  font-weight: 600;
  line-height: 1.14;
  letter-spacing: -.022em;
  color: var(--q-deep);
  text-align: center;
}

.edg-quiz__lead {
  max-width: 640px;
  margin: 0 auto 22px;
  font-size: 17px;
  font-weight: 450;
  line-height: 1.75;
  color: var(--q-muted);
  text-align: center;
}

/* --------------------------------------------------------------- intro --- */

.edg-quiz__intro { text-align: center; }

.edg-quiz__facts {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 14px;
  margin: 0 0 30px;
  padding: 0;
  list-style: none;
}

.edg-quiz__facts li {
  padding: 8px 15px;
  border: 1px solid rgba(184, 140, 89, .45);
  border-radius: 999px;
  background: rgba(184, 140, 89, .08);
  font-size: 12.5px;
  font-weight: 600;
  color: #8A6432;
}

/* ------------------------------------------------------------ progress --- */

.edg-quiz__progress { margin-bottom: clamp(26px, 3vw, 42px); }

.edg-quiz__bar {
  height: 3px;
  border-radius: 999px;
  background: rgba(10, 46, 42, .12);
  overflow: hidden;
}

.edg-quiz__bar span {
  display: block;
  width: 14%;
  height: 100%;
  border-radius: 999px;
  background: var(--q-gold);
  transition: width .38s cubic-bezier(.22, .7, .25, 1);
}

.edg-quiz__count {
  display: block;
  margin-top: 11px;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--q-muted);
  text-align: center;
}

.edg-quiz__count b { color: var(--q-deep); }

/* ------------------------------------------------------------- a step --- */

.edg-quiz__step { display: none; }
.edg-quiz__step.is-active { display: block; animation: edg-q-in .32s ease both; }

.edg-quiz__q {
  margin: 0 0 8px;
  font-family: inherit;
  font-size: clamp(23px, 2.5vw, 31px);
  font-weight: 600;
  line-height: 1.24;
  letter-spacing: -.018em;
  color: var(--q-deep);
  text-align: center;
}

.edg-quiz__note {
  margin: 0 auto 26px;
  max-width: 520px;
  font-size: 15px;
  font-weight: 450;
  line-height: 1.65;
  color: var(--q-muted);
  text-align: center;
}

.edg-quiz__input {
  display: block;
  width: min(420px, 100%);
  margin: 0 auto;
  height: 58px;
  padding: 0 18px;
  border: 1px solid rgba(10, 46, 42, .2);
  border-radius: 3px;
  background: #FFFFFF;
  font-family: inherit;
  font-size: 17px;
  font-weight: 500;
  color: var(--q-text);
  text-align: center;
}

.edg-quiz__input:focus {
  outline: none;
  border-color: var(--q-green);
  box-shadow: 0 0 0 3px rgba(18, 63, 57, .10);
}

/* ------------------------------------------------------------- options --- */

.edg-quiz__opts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  max-width: 700px;
  margin-inline: auto;
}

.edg-quiz__opt {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 18px 20px;
  border: 1px solid var(--q-line);
  border-radius: 6px;
  background: #FFFDFA;
  font-family: inherit;
  text-align: left;
  cursor: pointer;
  opacity: 0;
  transform: translateY(8px);
  animation: edg-q-opt .3s ease forwards;
  animation-delay: calc(var(--i, 0) * 55ms);
  transition: border-color .2s ease, background-color .2s ease, transform .2s ease;
}

@keyframes edg-q-opt { to { opacity: 1; transform: none; } }

.edg-quiz__opt:hover {
  border-color: var(--q-gold);
  transform: translateY(-2px);
}

.edg-quiz__opt.is-picked {
  border-color: var(--q-green);
  background: var(--q-green);
}

.edg-quiz__opt.is-picked .edg-quiz__opt-l { color: #FFFFFF; }
.edg-quiz__opt.is-picked .edg-quiz__opt-s { color: rgba(255, 255, 255, .8); }

.edg-quiz__opt-l { font-size: 17px; font-weight: 600; color: var(--q-deep); }
.edg-quiz__opt-s { font-size: 14px; font-weight: 450; line-height: 1.5; color: var(--q-muted); }

/* ---------------------------------------------------------------- nav --- */

.edg-quiz__nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin-top: 26px;
}

.edg-quiz__back {
  border: 0;
  background: none;
  font-family: inherit;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: var(--q-muted);
  cursor: pointer;
}

.edg-quiz__back:hover { color: var(--q-deep); }

/* -------------------------------------------------------------- button --- */

.edg-quiz__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 52px;
  padding: 15px 34px;
  border: 1px solid transparent;
  border-radius: 2px;
  font-family: inherit;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  text-decoration: none;
  cursor: pointer;
  transition: background-color .22s ease, color .22s ease, border-color .22s ease;
}

.edg-quiz__btn--solid { background: var(--q-green); border-color: var(--q-green); color: #FFFFFF; }
.edg-quiz__btn--solid:hover { background: var(--q-deep); border-color: var(--q-deep); color: #FFFFFF; }

.edg-quiz__btn--ghost { background: transparent; border-color: var(--q-green); color: var(--q-green); }
.edg-quiz__btn--ghost:hover { background: var(--q-green); color: #FFFFFF; }

.edg-quiz__btn--wa { background: #25D366; border-color: #25D366; color: #FFFFFF; }
.edg-quiz__btn--wa:hover { background: #128C7E; border-color: #128C7E; color: #FFFFFF; }

/* -------------------------------------------------------------- result --- */

.edg-quiz__result { max-width: 900px; }

.edg-quiz__notice {
  max-width: 700px;
  margin: 0 auto 26px;
  padding: 16px 18px;
  border-inline-start: 3px solid var(--q-gold);
  border-radius: 3px;
  background: rgba(184, 140, 89, .10);
}

.edg-quiz__notice p {
  margin: 0 0 8px;
  font-size: 15px;
  font-weight: 500;
  line-height: 1.65;
  color: #6E5228;
}

.edg-quiz__notice p:last-child { margin-bottom: 0; }

.edg-quiz__picks { display: grid; gap: 16px; margin: 26px 0 34px; }

.edg-quiz__pick {
  position: relative;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  gap: 20px;
  padding: 20px;
  border: 1px solid var(--q-line);
  border-radius: 8px;
  background: #FFFDFA;
}

.edg-quiz__pick.is-lead { border-color: var(--q-gold); box-shadow: 0 16px 40px -28px rgba(10, 46, 42, .5); }

.edg-quiz__badge {
  position: absolute;
  top: -11px;
  left: 20px;
  padding: 5px 13px;
  border-radius: 999px;
  background: var(--q-gold);
  font-size: 10.5px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #FFFFFF;
}

.edg-quiz__pick-media {
  display: block;
  border-radius: 5px;
  overflow: hidden;
  background: var(--q-cream);
  aspect-ratio: 1 / 1;
}

.edg-quiz__pick-media img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  padding: 6%;
}

.edg-quiz__role {
  display: block;
  margin-bottom: 5px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: var(--q-gold);
}

.edg-quiz__pick-name { margin: 0 0 9px; font-family: inherit; font-size: 20px; font-weight: 600; line-height: 1.3; }
.edg-quiz__pick-name a { color: var(--q-deep); text-decoration: none; }
.edg-quiz__pick-name a:hover { color: var(--q-green); }

.edg-quiz__why { margin: 0 0 9px; font-size: 15px; font-weight: 450; line-height: 1.68; color: var(--q-muted); }
.edg-quiz__use { margin: 0 0 14px; font-size: 14.5px; font-weight: 450; line-height: 1.6; color: var(--q-muted); }
.edg-quiz__use b { color: var(--q-deep); font-weight: 600; }

.edg-quiz__pick-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; }
.edg-quiz__price { font-size: 19px; font-weight: 700; color: var(--q-green); }

.edg-quiz__add {
  padding: 11px 22px;
  border-radius: 2px;
  background: var(--q-green);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: #FFFFFF !important;
  text-decoration: none !important;
}

.edg-quiz__add:hover { background: var(--q-deep); }

.edg-quiz__view {
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .13em;
  text-transform: uppercase;
  color: var(--q-green);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* --------------------------------------------------------------- truth --- */

.edg-quiz__truth {
  padding: 22px 24px;
  border: 1px solid var(--q-line);
  border-radius: 8px;
  background: var(--q-alt);
}

.edg-quiz__truth h3 {
  margin: 0 0 12px;
  font-family: inherit;
  font-size: 17px;
  font-weight: 600;
  color: var(--q-deep);
}

.edg-quiz__truth ul { margin: 0; padding-inline-start: 20px; }
.edg-quiz__truth li { margin-bottom: 8px; font-size: 15px; font-weight: 450; line-height: 1.65; color: var(--q-muted); }
.edg-quiz__truth li:last-child { margin-bottom: 0; }

.edg-quiz__foot {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 12px;
  margin-top: 28px;
}

/* =========================================================== promo band --- */

.edg-quizpromo {
  position: relative;
  left: 50%;
  width: var(--edg-vw, 100vw);
  max-width: var(--edg-vw, 100vw);
  margin-left: calc(var(--edg-vw, 100vw) / -2);
  padding: clamp(46px, 5vw, 82px) clamp(20px, 4vw, 48px);
  background: #0A2E2A;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  text-align: center;
  overflow-x: clip;
}

.edg-quizpromo__inner { max-width: 700px; margin-inline: auto; }

.edg-quizpromo__eyebrow {
  display: block;
  margin-bottom: 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .17em;
  text-transform: uppercase;
  color: #D8AE79;
}

.edg-quizpromo__title {
  margin: 0 0 16px;
  font-family: inherit;
  font-size: clamp(27px, 3.2vw, 40px);
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: -.022em;
  color: #FFFFFF;
}

.edg-quizpromo__copy {
  margin: 0 0 26px;
  font-size: 16.5px;
  font-weight: 450;
  line-height: 1.75;
  color: rgba(255, 255, 255, .78);
}

.edg-quizpromo__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 16px 40px;
  border-radius: 2px;
  background: #F5F1EA;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .14em;
  text-transform: uppercase;
  color: #0A2E2A !important;
  text-decoration: none !important;
  transition: background-color .22s ease;
}

.edg-quizpromo__cta:hover { background: #FFFFFF; }

/* ---------------------------------------------------------- responsive --- */

@media (max-width: 767px) {
  .edg-quiz__opts { grid-template-columns: minmax(0, 1fr); }
  .edg-quiz__opt { padding: 16px 18px; }
  .edg-quiz__opt-l { font-size: 16px; }

  .edg-quiz__pick { grid-template-columns: minmax(0, 1fr); gap: 14px; }
  .edg-quiz__pick-media { max-width: 180px; }
  .edg-quiz__pick-foot { gap: 10px; }
  .edg-quiz__add, .edg-quiz__btn { width: 100%; }
  .edg-quiz__view { width: 100%; text-align: center; }
  .edg-quizpromo__cta { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .edg-quiz__stage.is-active,
  .edg-quiz__step.is-active,
  .edg-quiz__opt { animation: none; opacity: 1; transform: none; }
  .edg-quiz__bar span { transition: none; }
}


/* ---- edglow-marquee ---- */
/* ==========================================================================
   Edglow - brand marquee band
   Seamless left drift: one group of items printed twice, the track slides
   exactly half its width, then snaps back with nothing to see.
   ========================================================================== */

.edg-mq {
  --edg-mq-speed: 42s;
  --mq-deep: #0A2E2A;
  --mq-gold: #B88C59;

  position: relative;
  left: 50%;
  width: var(--edg-vw, 100vw);
  max-width: var(--edg-vw, 100vw);
  margin-left: calc(var(--edg-vw, 100vw) / -2);
  padding: clamp(18px, 2vw, 30px) 0;
  overflow: hidden;
  background:
    linear-gradient(
      100deg,
      #F4EFE6 0%,
      #F8F5EF 22%,
      #F3EDE3 46%,
      #EFE7DA 68%,
      #F8F5EF 88%,
      #F1EBE1 100%
    );
  border-block: 1px solid rgba(10, 46, 42, .10);
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  user-select: none;
}

/* Soft fade at both edges so items enter and leave instead of being cut. */
.edg-mq::before,
.edg-mq::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: clamp(40px, 8vw, 130px);
  z-index: 2;
  pointer-events: none;
}

.edg-mq::before { left: 0;  background: linear-gradient(to right, #F4EFE6, rgba(244, 239, 230, 0)); }
.edg-mq::after  { right: 0; background: linear-gradient(to left,  #F1EBE1, rgba(241, 235, 225, 0)); }

/* ---------------------------------------------------------------- track --- */

.edg-mq__track {
  display: flex;
  flex-wrap: nowrap;
  width: max-content;
  will-change: transform;
  animation: edg-mq-slide var(--edg-mq-speed) linear infinite;
}

/* Nothing here may ever become a scroll container. */
.edg-mq,
.edg-mq__track,
.edg-mq__group { overflow: hidden; }
.edg-mq__track,
.edg-mq__group { overflow: visible; }

.edg-mq:hover .edg-mq__track { animation-play-state: paused; }

@keyframes edg-mq-slide {
  from { transform: translate3d(0, 0, 0); }
  to   { transform: translate3d(-50%, 0, 0); }
}

.edg-mq__group { display: flex; flex: 0 0 auto; }

/* ---------------------------------------------------------------- items --- */

.edg-mq__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  flex: 0 0 auto;
  padding-inline: clamp(28px, 4vw, 62px);
}

.edg-mq__main {
  display: flex;
  align-items: center;
  gap: clamp(10px, 1.2vw, 18px);
  font-size: clamp(21px, 2.6vw, 38px);
  font-weight: 600;
  line-height: 1.05;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: var(--mq-deep);
  white-space: nowrap;
}

.edg-mq__main b { font-weight: 600; }

.edg-mq__star {
  font-style: normal;
  font-size: .72em;
  line-height: 1;
  color: var(--mq-gold);
  transform: translateY(-.04em);
}

.edg-mq__sub {
  font-size: clamp(11px, 1vw, 14px);
  font-weight: 500;
  letter-spacing: .04em;
  color: #4A5A55;
  white-space: nowrap;
}

/* ----------------------------------------------------------- responsive --- */

@media (max-width: 767px) {
  .edg-mq { padding: 15px 0; --edg-mq-speed: 30s; }
  .edg-mq__item { padding-inline: 24px; gap: 4px; }
  .edg-mq__main { font-size: 20px; letter-spacing: .05em; }
  .edg-mq__sub { font-size: 11px; }
}

/* Some desktops run with system animations switched off. The band is the
   point of the section, so it keeps moving - just gently - and it never
   turns into a scrollbar. */
@media (prefers-reduced-motion: reduce) {
  .edg-mq { overflow: hidden; }
  .edg-mq__track { animation-duration: calc(var(--edg-mq-speed) * 2); }
}


/* ---- edglow-rhythm ---- */
/* ==========================================================================
   Edglow - homepage vertical rhythm

   Several sections are hand-built blocks that already carry their own top and
   bottom padding, sitting inside an Elementor container that adds its own on
   top. That doubling is what made the gaps between sections so wide. Here the
   wrapper stands down and each section owns its spacing.
   ========================================================================== */

.home {
  --edg-gap:    clamp(46px, 4.6vw, 72px);
  --edg-gap-sm: clamp(38px, 4vw, 58px);
}

/* --------------------------------- wrappers around hand-built sections --- */

/* "What we do differently" - wrapper had 76px on top of the block's own 90px. */
.home .elementor-element-c68e198 {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.home .edg-why {
  padding-top: var(--edg-gap) !important;
  padding-bottom: var(--edg-gap) !important;
}

/* ------------------------------------------------- Elementor sections --- */

/* Product carousel. The glow cards above it sit on the same ivory, so a
   large top padding here just reads as dead space - the heading needs far
   less room above it than below. */
.home .elementor-element-aca1796 {
  padding-top: clamp(26px, 2.2vw, 38px) !important;
  padding-bottom: var(--edg-gap) !important;
}

/* Nothing trailing under the glow cards. */
.home .elementor-element-edga100 { padding-bottom: 0 !important; }
.home .elementor-element-edga110 { margin-bottom: 0 !important; }

/* The section title carries its own breathing room below it already. */
.home .elementor-element-aca1796 .elementor-widget-wd_title { margin-top: 0 !important; }
.home .elementor-element-aca1796 .title-wrapper { margin-top: 0 !important; }
.home .elementor-element-aca1796 .title-wrapper.wd-set-mb { --wd-tt-mb: 26px; }

/* FAQ + "Tell us about your skin" */
.home .elementor-element-4c4bc36 {
  padding-top: var(--edg-gap-sm) !important;
  padding-bottom: var(--edg-gap-sm) !important;
}

/* ------------------------------------------------ hand-built sections --- */

.edg-quizpromo {
  padding-top: var(--edg-gap-sm, 44px) !important;
  padding-bottom: var(--edg-gap-sm, 44px) !important;
}

.edg-blogs {
  padding-top: var(--edg-gap, 52px) !important;
  padding-bottom: var(--edg-gap-sm, 44px) !important;
}

/* No stray gap where one section meets the next. */
.home .wd-page-content .e-con > .e-con-inner > *:last-child { margin-bottom: 0; }
.home .elementor-widget:last-child { margin-bottom: 0; }
.home .elementor-widget-shortcode { margin-bottom: 0; }
.home .elementor-shortcode > section:last-child { margin-bottom: 0; }

/* The prefooter must not add a band of its own on top of the sections. */
.wd-prefooter { padding-top: 0 !important; padding-bottom: 0 !important; }

/* ------------------------------------------------------------ mobile --- */

@media (max-width: 767px) {
  .home {
    --edg-gap:    40px;
    --edg-gap-sm: 34px;
  }

  .home .edg-why__head { margin-bottom: 26px !important; }
}


/* ---- edglow-fomo ---- */
/* ============================================================
   Edglow social proof cards - bottom left
   ============================================================ */

.edg-fomo {
  position: fixed;
  left: 20px;
  bottom: 20px;
  z-index: 9998;
  width: min(360px, calc(100vw - 40px));
  pointer-events: none;
}

.edg-fomo__card {
  position: relative;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 12px 38px 12px 12px;
  background-color: #FFFFFF;
  border: 1px solid rgba(23, 54, 48, .10);
  border-radius: 14px;
  box-shadow: 0 14px 34px rgba(23, 54, 48, .16);
  text-decoration: none;
  color: inherit;
  pointer-events: auto;
  opacity: 0;
  transform: translateY(14px);
  transition: opacity .45s ease, transform .45s cubic-bezier(.22, .9, .3, 1);
}

.edg-fomo__card.is-in {
  opacity: 1;
  transform: translateY(0);
}

a.edg-fomo__card:hover {
  border-color: rgba(23, 54, 48, .22);
  box-shadow: 0 18px 40px rgba(23, 54, 48, .22);
}

/* ---------------------------------------------------- thumb --- */

.edg-fomo__thumb {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  border-radius: 10px;
  background-color: #F8F5EF;
  overflow: hidden;
}

.edg-fomo__thumb img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  padding: 6%;
  box-sizing: border-box;
}

.edg-fomo__mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  font-size: 17px;
  font-weight: 700;
  letter-spacing: .06em;
  color: #173630;
}

/* ----------------------------------------------------- body --- */

.edg-fomo__body {
  min-width: 0;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
}

.edg-fomo__label {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 3px;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .07em;
  text-transform: uppercase;
  color: #2E8B62;
}

.edg-fomo__card--fact .edg-fomo__label {
  color: #B88C59;
}

.edg-fomo__dot {
  flex: 0 0 auto;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: currentColor;
}

.edg-fomo__line {
  margin: 0;
  font-size: 13.5px;
  line-height: 1.35;
  color: #4A5A55;
}

.edg-fomo__who {
  font-weight: 700;
  color: #173630;
}

.edg-fomo__title {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 2px 0 0;
  font-size: 13.5px;
  font-weight: 700;
  line-height: 1.35;
  color: #173630;
}

.edg-fomo__meta {
  margin: 3px 0 0;
  font-size: 11.5px;
  line-height: 1.3;
  color: #7C8A85;
}

/* ---------------------------------------------------- close --- */

.edg-fomo__close {
  position: absolute;
  top: 8px;
  right: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  color: #8C9995;
  font-size: 17px;
  line-height: 1;
  cursor: pointer;
  transition: background-color .2s ease, color .2s ease;
}

.edg-fomo__close:hover,
.edg-fomo__close:focus {
  background-color: #F1EBE1;
  color: #173630;
}

/* --------------------------------------------------- mobile --- */

@media (max-width: 767px) {
  .edg-fomo {
    left: 12px;
    bottom: 84px;
    width: min(320px, calc(100vw - 24px));
  }

  .edg-fomo__card {
    gap: 11px;
    padding: 10px 34px 10px 10px;
    border-radius: 12px;
  }

  .edg-fomo__thumb {
    width: 48px;
    height: 48px;
    border-radius: 8px;
  }

  .edg-fomo__label {
    font-size: 10.5px;
  }

  .edg-fomo__line,
  .edg-fomo__title {
    font-size: 12.5px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .edg-fomo__card {
    transform: none;
    transition: opacity .3s ease;
  }

  .edg-fomo__card.is-in {
    transform: none;
  }
}


/* ---- edglow-badges ---- */
/* ============================================================
   Edglow trust badges - full width strip above the footer
   ============================================================ */

.edg-badges {
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding: clamp(40px, 4.6vw, 68px) clamp(16px, 4vw, 64px);
  background-color: #FAF7F2;
  border-top: 1px solid rgba(23, 54, 48, .07);
}

.edg-badges__inner {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: clamp(18px, 1.8vw, 30px) clamp(10px, 1.4vw, 24px);
  width: 100%;
  max-width: 1560px;
  margin: 0 auto;
}

/* ---------------------------------------------------- badge --- */

.edg-badge {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(12px, 1.1vw, 18px);
  text-align: center;
  opacity: 0;
  transform: translateY(16px);
  transition: opacity .6s ease, transform .6s cubic-bezier(.22, .9, .3, 1);
  transition-delay: var(--edg-badge-delay, 0ms);
}

.edg-badges.is-in .edg-badge {
  opacity: 1;
  transform: translateY(0);
}

.edg-badge__icon {
  display: block;
  width: clamp(62px, 5.6vw, 88px);
  transition: transform .35s cubic-bezier(.22, .9, .3, 1);
}

.edg-badge:hover .edg-badge__icon {
  transform: translateY(-4px) scale(1.06);
}

.edg-badge__svg {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1 / 1;
  color: inherit;
}

.edg-badge__text {
  display: block;
  max-width: 15ch;
  font-family: "Jost", "Helvetica Neue", Arial, sans-serif;
  font-size: clamp(10.5px, .78vw, 12.5px);
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: .11em;
  text-transform: uppercase;
  color: inherit;
}

/* ----------------------------------------------- responsive --- */

@media (max-width: 1200px) {
  .edg-badges__inner {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: clamp(26px, 3vw, 38px) 16px;
  }
}

@media (max-width: 600px) {
  .edg-badges {
    padding: 38px 16px 42px;
  }

  .edg-badges__inner {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px 12px;
  }

  .edg-badge {
    gap: 10px;
  }

  .edg-badge__icon {
    width: 62px;
  }

  .edg-badge__text {
    max-width: 16ch;
    font-size: 10.5px;
    letter-spacing: .09em;
  }
}

@media (prefers-reduced-motion: reduce) {
  .edg-badge {
    opacity: 1;
    transform: none;
    transition: none;
  }

  .edg-badge:hover .edg-badge__icon {
    transform: none;
  }
}

