/*
Theme Name: Mrittik Child
Theme URI: http://demo.bravisthemes.com/mrittik/
Author: Bravis-Themes
Author URI: https://themeforest.net/user/bravis-themes/
Description: Mrittik – Architecture and Interior Wordpress theme is a template for architectural studio. It is suitable for interior business. Creative design studio can use this template to present their creative contents more attractively. This template can be used as personal portfolio, construction business etc. It has both dark and light version which very perfect for user attraction.
Version: 1.0.5
License: ThemeForest
License URI: https://themeforest.net/licenses
Template: mrittik
Text Domain: mrittik-child
Tags: architect, architecture, constructor, home decor, interior design, landscape design, real estate
*/

/* ============================================================
   Ported from WP Customizer Additional CSS (parent theme slug: mrittik)
   Source: wp_posts ID 9963 — was active while mrittik parent was the active theme.
   This CSS will NOT carry over automatically on child-theme activation;
   it is hardcoded here to ensure no visual regression on switch.
   ============================================================ */

/* Mobile: ≤767px — header logo + nav */
@media screen and (max-width:767px) {
	#pxl-header-mobile .pxl-header-branding img {
		max-height: 30px !important;
		height: 30px !important;
	}

	.pxl-logo-mobile img {
		max-height: 30px !important;
		height: 30px !important;
	}

	#pxl-header-elementor #pxl-header-mobile {
		backdrop-filter: blur(1px) !important;
	}

	#pxl-nav-mobile .pxl-nav-mobile-button span {
		background-color: #fff !important;
	}

	.pxl-header-branding {
		display: none !important;
	}

	#pxl-header-elementor #pxl-nav-mobile {
		margin-top: 30px !important;
	}
}

/* Tablet: 768–1024px — header logo */
@media screen and (min-width:768px) and (max-width:1024px) {
	.pxl-logo-mobile img {
		height: auto !important;
		max-width: 150px !important;
	}

	#pxl-header-mobile .pxl-header-branding img {
		height: auto !important;
		width: 150px !important;
	}

	#pxl-header-elementor #pxl-header-mobile {
		backdrop-filter: blur(1px) !important;
	}

	#pxl-nav-mobile .pxl-nav-mobile-button span {
		background-color: #fff !important;
	}

	.pxl-header-branding {
		display: none !important;
	}

	#pxl-header-elementor #pxl-nav-mobile {
		margin-top: 30px !important;
	}
}

/* Klaviyo form close button reset */
button.klaviyo-close-form,
.klaviyo-close-form {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	padding: 0 !important;
}

button.klaviyo-close-form * {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
}

.klaviyo-close-form circle {
	display: none !important;
}

.klaviyo-form button[id*="downshift"][id*="toggle-button"] {
	background-color: transparent !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: normal !important;
}

/* Global typography overrides (Elementor kit 8) */
.elementor-kit-8 h1 {
	line-height: 2.5em !important;
	font-family: Montserrat, sans-serif !important;
}

.elementor-kit-8 p {
	font-family: Montserrat, sans-serif !important;
	font-size: 0.9rem !important;
}

/* Klaviyo input placeholder font */
#_01KBCB32E48BJSPSNJ1CEMS8SJ::placeholder {
	font-family: 'Montserrat', sans-serif !important;
}

/* Prevent horizontal scroll */
html, body {
	overflow-x: hidden !important;
}

/* Remove bottom margin from last paragraph in any block */
p:last-of-type {
	margin-block-end: 0;
}

/* Collapse icon wrapper line-height to remove unintended spacing */
.elementor-icon-wrapper {
	line-height: 0 !important;
}

/* ============================================================
   Ported from WP Customizer Additional CSS (child theme slug: mrittik-child)
   Source: wp_posts ID 9550 — already bound to child theme slug, will remain
   active after activation. Listed here for reference only; no duplication needed.
   WooCommerce display overrides: hide topbar, product meta, price; font tweaks.
   ============================================================ */


/* =====================================================
   NIDO Light Theme Override — April 2026
   Source: outputs/NIDO_LIGHT_THEME.css
   ===================================================== */
/*
=============================================================
  NIDO STONES — LIGHT THEME OVERRIDE
  Created: 2026-04-16
  Purpose: Transform dark aesthetic to clean/light/minimal
           targeting interior designers & architects.
  How to apply: Paste into WPCode Lite → Add Snippet →
                CSS Snippet → Run Everywhere → Save & Activate
=============================================================

  DESIGN SYSTEM
  ─────────────
  Off-white (page bg):    #F7F6F4
  Pure white (cards/nav): #FFFFFF
  Warm tint (alt section):  #F0EEE9
  Charcoal (primary text):  #2B2B2B
  Blue-grey (secondary text): #5A6473
  Warm olive (accent/CTA):  #a6a182
  Warm neutral (borders):   #D5CFC7
  Footer bg (dark accent):  #2B2B2B
=============================================================
*/

/* ─────────────────────────────────────────
   1. ROOT — CSS VARIABLES OVERRIDE
───────────────────────────────────────── */
:root {
  --primary-color:        #2B2B2B !important;
  --secondary-color:      #a6a182 !important;
  --third-color:          #5A6473 !important;
  --fourth-color:         #FFFFFF !important;
  --fifth-color:          #F7F6F4 !important;
  --sixth-color:          #F0EEE9 !important;
  --bglight-color:        #F7F6F4 !important;
  --bgdark-color:         #2B2B2B !important;
  --link-color:           #5A6473 !important;
  --link-color-hover:     #a6a182 !important;

  /* Elementor global colour overrides */
  --e-global-color-primary:   #2B2B2B !important;
  --e-global-color-secondary: #5A6473 !important;
  --e-global-color-text:      #2B2B2B !important;
  --e-global-color-accent:    #a6a182 !important;
}


/* ─────────────────────────────────────────
   2. BODY & BASE
───────────────────────────────────────── */
body,
html {
  background-color: #F7F6F4 !important;
  color: #2B2B2B !important;
}

/* Remove any site-wide dark background overrides */
.dark-mode,
.dark-bg,
[class*="dark-bg"],
[data-bg="dark"] {
  background-color: #F7F6F4 !important;
  color: #2B2B2B !important;
}


/* ─────────────────────────────────────────
   3. HEADER & NAVIGATION
───────────────────────────────────────── */
header,
.site-header,
#header,
.elementor-location-header,
.e-con.e-parent:has(.elementor-nav-menu),
/* Catches the Elementor header template wrapper */
.elementor-template-type-header > .elementor-section-wrap > .elementor-section,
.elementor-template-type-header .e-con {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #D5CFC7 !important;
}

/* Nav links */
.elementor-nav-menu a,
.elementor-nav-menu .elementor-item,
nav a,
.site-header a,
header a {
  color: #2B2B2B !important;
}

.elementor-nav-menu a:hover,
.elementor-nav-menu .elementor-item:hover,
nav a:hover {
  color: #a6a182 !important;
}

/* Active/current nav item */
.elementor-nav-menu .elementor-item.elementor-item-active,
.elementor-nav-menu .current-menu-item > a {
  color: #a6a182 !important;
  border-bottom-color: #a6a182 !important;
}

/* Nav dropdown menus */
.elementor-nav-menu--dropdown,
.elementor-nav-menu--dropdown.e-pointer-framed .elementor-item:before,
ul.sub-menu,
.sub-menu {
  background-color: #FFFFFF !important;
  border: 1px solid #D5CFC7 !important;
  box-shadow: 0 8px 24px rgba(43, 43, 43, 0.08) !important;
}

.sub-menu a,
.elementor-nav-menu--dropdown a {
  color: #2B2B2B !important;
}

.sub-menu a:hover,
.elementor-nav-menu--dropdown a:hover {
  color: #a6a182 !important;
  background-color: #F7F6F4 !important;
}

/* Logo area */
.site-branding,
.elementor-widget-site-logo img,
.header-logo img {
  /* Logo remains as-is — ensure it's visible on white bg */
  filter: none !important;
}

/* Cart / search / account icons in header */
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle,
.elementor-widget-woocommerce-menu-cart .elementor-menu-cart__toggle svg,
.header-icons svg,
.header-icons i {
  color: #2B2B2B !important;
  stroke: #2B2B2B !important;
}

/* Cart drawer / mini-cart panel */
.elementor-menu-cart__main,
.woocommerce-mini-cart {
  background-color: #FFFFFF !important;
  color: #2B2B2B !important;
}

/* Off-canvas / mobile nav — dark panel, white text */
.e-off-canvas__content,
.e-off-canvas__main,
.elementor-off-canvas,
.elementor-off-canvas__panel {
  color: #FFFFFF !important;
}

.e-off-canvas__content a,
.elementor-off-canvas a {
  color: #FFFFFF !important;
}

.e-off-canvas__content a:hover,
.elementor-off-canvas a:hover {
  color: #a6a182 !important;
}

/* Hamburger / menu toggle button */
.elementor-menu-toggle,
.elementor-menu-toggle .eicon-menu-bar,
.elementor-menu-toggle svg {
  color: #2B2B2B !important;
  fill: #2B2B2B !important;
}

/* Mobile menu overlay backdrop */
.elementor-motion-effects-container {
  background: rgba(43, 43, 43, 0.5) !important;
}


/* ─────────────────────────────────────────
   4. HERO SECTION
───────────────────────────────────────── */
/* Lighten the dark overlay on the hero image */
.elementor-element-779289a1,
[class*="hero"],
.hero-section,
.elementor-section.hero {
  /* The hero image itself is fine — just lighten the overlay */
}

/* Override the dark radial gradient overlay */
.elementor-element-779289a1 > .elementor-background-overlay,
.hero-section > .elementor-background-overlay,
[class*="hero"] > .elementor-background-overlay {
  background: linear-gradient(
    to bottom,
    rgba(43, 43, 43, 0.18) 0%,
    rgba(43, 43, 43, 0.35) 100%
  ) !important;
  opacity: 1 !important;
}

/* Hero title / headline on the image stays white (legible over image) */
.elementor-element-779289a1 h1,
.elementor-element-779289a1 h2,
.elementor-element-779289a1 .elementor-heading-title,
[class*="hero"] h1,
[class*="hero"] h2 {
  color: #FFFFFF !important;
}

.elementor-element-779289a1 p,
[class*="hero"] p {
  color: rgba(255, 255, 255, 0.88) !important;
}


/* ─────────────────────────────────────────
   5. GENERAL SECTIONS & CONTAINERS
───────────────────────────────────────── */
/* All Elementor sections default to off-white */
.elementor-section,
.elementor-top-section,
.e-con,
.e-con-inner,
.elementor-container {
  background-color: transparent !important;
}

/* Sections with explicit dark backgrounds — override to light */
.elementor-section[data-settings*="0e0e0e"],
.elementor-section[style*="background-color: rgb(14, 14, 14)"],
.elementor-section[style*="background-color: #0e0e0e"],
.elementor-section[style*="background-color:#0e0e0e"],
.elementor-section[style*="background-color: #000"],
.elementor-section[style*="background-color:#000"],
.elementor-section[style*="background-color: rgb(0, 0, 0)"],
.elementor-section[style*="background-color: #1b1b1b"],
.elementor-section[style*="background-color:#1b1b1b"] {
  background-color: #F7F6F4 !important;
}

/* Alternating warm tint for visual rhythm */
.elementor-section.section-tinted,
.elementor-section.bg-tint {
  background-color: #F0EEE9 !important;
}

/* Page wrapper */
#page,
.site,
main,
.site-main,
#content,
.site-content {
  background-color: #F7F6F4 !important;
}


/* ─────────────────────────────────────────
   6. TYPOGRAPHY — GLOBAL
───────────────────────────────────────── */
h1, h2, h3, h4, h5, h6,
.elementor-heading-title {
  color: #2B2B2B !important;
  letter-spacing: 0.02em;
}

/* Subheadings / eyebrow text */
.elementor-widget-heading .elementor-heading-title[class*="h4"],
.elementor-widget-heading .elementor-heading-title[class*="h5"],
.elementor-widget-heading .elementor-heading-title[class*="h6"] {
  color: #5A6473 !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-size: 0.75em !important;
}

p,
.elementor-widget-text-editor,
.elementor-text-editor {
  color: #2B2B2B !important;
}

/* De-emphasised / secondary text */
.elementor-widget-text-editor p:not(:first-child),
.description,
.subtitle,
[class*="subtitle"] {
  color: #5A6473 !important;
}

/* Links */
a {
  color: #2B2B2B !important;
  text-decoration: none;
  transition: color 0.2s ease;
}

a:hover {
  color: #a6a182 !important;
}

/* WP admin bar — restore its own colour scheme (our bare `a` rule above bleeds in) */
#wpadminbar a,
#wpadminbar a:hover,
#wpadminbar li a,
#wpadminbar li a:hover,
#wpadminbar .ab-item,
#wpadminbar .ab-item:hover {
  color: inherit !important;
}

/* Dividers */
hr,
.elementor-divider-separator {
  border-color: #D5CFC7 !important;
  opacity: 0.7 !important;
}


/* ─────────────────────────────────────────
   7. BUTTONS & CTA
───────────────────────────────────────── */
/* Primary button — warm olive on off-white */
.elementor-button,
.elementor-button-wrapper .elementor-button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
button[type="submit"],
.btn,
.button {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border: 1px solid #2B2B2B !important;
  border-radius: 2px !important;
  letter-spacing: 0.08em !important;
  font-weight: 500 !important;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease !important;
}

.elementor-button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
button[type="submit"]:hover,
.btn:hover,
.button:hover {
  background-color: #a6a182 !important;
  color: #FFFFFF !important;
  border-color: #a6a182 !important;
}

/* Ghost / outline button variant */
.elementor-button.elementor-button-ghost,
.btn-outline,
.button-outline {
  background-color: transparent !important;
  color: #2B2B2B !important;
  border: 1px solid #2B2B2B !important;
}

.elementor-button.elementor-button-ghost:hover,
.btn-outline:hover {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
}

/* "Add to Cart" and action circle buttons on product cards */
.woocommerce-product-inner .button,
.woocommerce ul.products li.product .add_to_cart_button,
.product-action-btn {
  background-color: #FFFFFF !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
}

.woocommerce-product-inner .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover,
.product-action-btn:hover {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border-color: #2B2B2B !important;
}


/* ─────────────────────────────────────────
   8. SHOP & PRODUCT GRID
───────────────────────────────────────── */
/* Woo shop page wrapper */
.woocommerce,
.woocommerce-page,
#primary,
.woocommerce-products-header,
.woocommerce-notices-wrapper {
  background-color: transparent !important;
  color: #2B2B2B !important;
}

/* Product cards */
.woocommerce ul.products li.product,
.woocommerce-product-inner,
.product-item,
.elementor-widget-ucaddon_woocommerce_product_grid .woocommerce ul.products li.product {
  background-color: #FFFFFF !important;
  border: 1px solid #F0EEE9 !important;
  transition: box-shadow 0.25s ease !important;
}

.woocommerce ul.products li.product:hover,
.woocommerce-product-inner:hover {
  box-shadow: 0 4px 20px rgba(43, 43, 43, 0.07) !important;
  border-color: #D5CFC7 !important;
}

/* Product title & price */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.product-title,
.woocommerce-product-header h2 {
  color: #2B2B2B !important;
  font-weight: 500 !important;
}

.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .price .woocommerce-Price-amount,
.price {
  color: #5A6473 !important;
}

/* Product header (image bg) */
.woocommerce-product-header {
  background-color: #F7F6F4 !important;
}

/* Product category/taxonomy filter */
.elementor-widget-ucaddon_woocommerce_product_grid .product-filter-item,
.product-filter-item,
.wc-filter-item {
  background-color: transparent !important;
  border: 1px solid #D5CFC7 !important;
  color: #5A6473 !important;
  transition: all 0.2s ease !important;
}

.product-filter-item:hover,
.product-filter-item.active,
.product-filter-item.selected {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border-color: #2B2B2B !important;
}

/* Checkbox filters */
.elementor-widget-ucaddon_woocommerce_product_grid input[type="checkbox"],
.wc-filter-checkbox {
  accent-color: #a6a182 !important;
}

/* Sort / ordering dropdown */
.woocommerce-ordering select,
.orderby {
  background-color: #FFFFFF !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
}

/* Pagination */
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  background-color: transparent !important;
  color: #5A6473 !important;
  border: 1px solid #D5CFC7 !important;
}

.woocommerce nav.woocommerce-pagination ul li a:hover,
.woocommerce nav.woocommerce-pagination ul li span.current {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border-color: #2B2B2B !important;
}

/* Single product page */
.woocommerce div.product,
.woocommerce-single-product {
  background-color: #F7F6F4 !important;
  color: #2B2B2B !important;
}

.woocommerce div.product .product_title {
  color: #2B2B2B !important;
}

.woocommerce div.product .price {
  color: #5A6473 !important;
}

/* Product tabs */
.woocommerce-tabs .tabs li a {
  color: #5A6473 !important;
  background-color: transparent !important;
  border-bottom: 2px solid transparent !important;
}

.woocommerce-tabs .tabs li.active a {
  color: #2B2B2B !important;
  border-bottom-color: #a6a182 !important;
}

.woocommerce-tabs .panel {
  background-color: #FFFFFF !important;
  border: 1px solid #F0EEE9 !important;
  color: #2B2B2B !important;
}


/* ─────────────────────────────────────────
   9. FORMS & INPUTS
───────────────────────────────────────── */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="search"],
textarea,
select,
.elementor-field-group input,
.elementor-field-group textarea,
.elementor-field-group select,
.woocommerce input.input-text,
.woocommerce textarea {
  background-color: #FFFFFF !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus,
.elementor-field-group input:focus,
.woocommerce input.input-text:focus {
  border-color: #a6a182 !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(166, 161, 130, 0.12) !important;
}

input::placeholder,
textarea::placeholder {
  color: #B8B4AD !important;
}

label,
.elementor-field-label {
  color: #5A6473 !important;
  font-size: 0.8125rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}


/* ─────────────────────────────────────────
   10. FOOTER
───────────────────────────────────────── */
/* Footer stays charcoal — provides premium dark contrast
   at the base without the harshness of pure black */
footer,
.site-footer,
#footer,
.elementor-location-footer,
.elementor-template-type-footer .elementor-section,
.elementor-template-type-footer .e-con {
  background-color: #2B2B2B !important;
  color: #D5CFC7 !important;
}

footer h1,
footer h2,
footer h3,
footer h4,
footer h5,
footer h6,
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4 {
  color: #FFFFFF !important;
}

footer p,
.site-footer p {
  color: #D5CFC7 !important;
}

footer a,
.site-footer a {
  color: #D5CFC7 !important;
}

footer a:hover,
.site-footer a:hover {
  color: #a6a182 !important;
}

/* Footer dividers */
footer hr,
.site-footer hr,
.footer-divider {
  border-color: rgba(213, 207, 199, 0.2) !important;
}

/* Footer menu items */
.footer-menu a,
.elementor-template-type-footer .elementor-nav-menu a {
  color: #D5CFC7 !important;
}

/* Copyright bar */
.copyright,
.footer-bottom,
.site-info {
  background-color: #1F1F1F !important;
  color: rgba(213, 207, 199, 0.6) !important;
  border-top: 1px solid rgba(213, 207, 199, 0.1) !important;
}


/* ─────────────────────────────────────────
   11. BREADCRUMBS
───────────────────────────────────────── */
.woocommerce-breadcrumb,
.breadcrumbs,
nav.breadcrumb {
  color: #5A6473 !important;
  background-color: transparent !important;
}

.woocommerce-breadcrumb a {
  color: #5A6473 !important;
}

.woocommerce-breadcrumb a:hover {
  color: #a6a182 !important;
}


/* ─────────────────────────────────────────
   12. NOTICES / MESSAGES
───────────────────────────────────────── */
.woocommerce-message,
.woocommerce-info {
  background-color: #F0EEE9 !important;
  color: #2B2B2B !important;
  border-left-color: #a6a182 !important;
}

.woocommerce-error {
  background-color: #FDF3F3 !important;
  color: #2B2B2B !important;
  border-left-color: #C0392B !important;
}


/* ─────────────────────────────────────────
   13. MODAL / POPUP (Login/Register)
───────────────────────────────────────── */
.elementor-popup-modal,
.elementor-location-popup,
.dialog-widget-content,
.elementor-popup-modal .dialog-widget-content {
  background-color: #FFFFFF !important;
  color: #2B2B2B !important;
}

.elementor-popup-modal h1,
.elementor-popup-modal h2,
.elementor-popup-modal h3,
.dialog-widget-content h1,
.dialog-widget-content h2 {
  color: #2B2B2B !important;
}

/* Popup close button */
.dialog-close-button,
.elementor-popup-modal .dialog-close-button {
  color: #5A6473 !important;
}

.dialog-close-button:hover {
  color: #2B2B2B !important;
}

/* Tab switcher (Login / Register tabs) */
.e-n-tabs-heading .e-n-tab-title,
.elementor-tab-title {
  color: #5A6473 !important;
  border-bottom: 2px solid transparent !important;
}

.e-n-tabs-heading .e-n-tab-title.e-active,
.elementor-tab-title.elementor-active {
  color: #2B2B2B !important;
  border-bottom-color: #a6a182 !important;
}


/* ─────────────────────────────────────────
   14. WPC WIDGETS (Wishlist, Compare, Quick View)
───────────────────────────────────────── */
.wpc-wishlist-popup,
.wpc-compare-popup,
.woosc-popup,
.woosw-popup {
  background-color: #FFFFFF !important;
  color: #2B2B2B !important;
}

/* Product action icons (wishlist/compare on card) */
.wpc-wishlist-btn,
.wpc-compare-btn,
.woosw-btn,
.woosc-btn {
  background-color: #FFFFFF !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
}

.wpc-wishlist-btn:hover,
.wpc-compare-btn:hover,
.woosw-btn:hover,
.woosc-btn:hover {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border-color: #2B2B2B !important;
}


/* ─────────────────────────────────────────
   15. SLIDER REVOLUTION (if used in sections)
───────────────────────────────────────── */
/* Allow sliders to keep their own imagery/backgrounds */
.rev_slider_wrapper,
.rev_slider {
  /* Do not override — hero/banner sliders use their own bg */
}

/* But do fix text overlaid on light sliders */
.rev_slider .tp-caption:not([class*="hero"]) {
  color: #2B2B2B !important;
}


/* ─────────────────────────────────────────
   16. COLLECTIONS / CATEGORY TILES
───────────────────────────────────────── */
.product-category a,
.woocommerce ul.products li.product-category {
  color: #2B2B2B !important;
}

.product-category .woocommerce-loop-category__title,
.product-category mark {
  color: #2B2B2B !important;
  background-color: transparent !important;
}

/* Category image overlays — lighten the dark tint */
.woocommerce ul.products li.product-category .woocommerce-loop-category__title::before,
.product-category-overlay {
  background: linear-gradient(
    to top,
    rgba(43, 43, 43, 0.55) 0%,
    rgba(43, 43, 43, 0.0) 60%
  ) !important;
}


/* ─────────────────────────────────────────
   17. SCROLLBAR (Optional polish)
───────────────────────────────────────── */
::-webkit-scrollbar {
  width: 6px;
  height: 6px;
}

::-webkit-scrollbar-track {
  background: #F0EEE9;
}

::-webkit-scrollbar-thumb {
  background-color: #D5CFC7;
  border-radius: 3px;
}

::-webkit-scrollbar-thumb:hover {
  background-color: #a6a182;
}


/* ─────────────────────────────────────────
   18. SELECTION HIGHLIGHT
───────────────────────────────────────── */
::selection {
  background-color: rgba(166, 161, 130, 0.25);
  color: #2B2B2B;
}


/* ─────────────────────────────────────────
   19. UTILITY — FORCE LIGHT ON ANY
       REMAINING DARK INLINE STYLES
   (Catches Elementor inline style="" overrides)
───────────────────────────────────────── */
/*
   NOTE: Elementor sometimes writes background-color as
   inline styles. If any section still appears dark after
   applying this CSS, use the Elementor editor to manually
   set that section's background to #F7F6F4 or #FFFFFF.

   The selectors below catch the most common patterns but
   inline styles have higher specificity than class-based rules.
*/

/* Override dark Elementor sections that Elementor writes
   as inline styles — use important on the section background
   via Elementor > Style > Background > Color. */


/* ─────────────────────────────────────────
   20. RESPONSIVE ADJUSTMENTS
───────────────────────────────────────── */
@media (max-width: 991px) {
  /* Mobile nav panel */
  .elementor-nav-menu--mobile,
  .elementor-nav-menu--mobile .elementor-nav-menu {
    background-color: #FFFFFF !important;
  }

  .elementor-nav-menu--mobile .elementor-item {
    color: #2B2B2B !important;
    border-bottom: 1px solid #F0EEE9 !important;
  }

  .elementor-nav-menu--mobile .elementor-item:hover {
    color: #a6a182 !important;
    background-color: #F7F6F4 !important;
  }
}

@media (max-width: 575px) {
  /* Hero overlay lighter on mobile too */
  [class*="hero"] > .elementor-background-overlay {
    background: linear-gradient(
      to bottom,
      rgba(43, 43, 43, 0.1) 0%,
      rgba(43, 43, 43, 0.3) 100%
    ) !important;
  }
}

/* ════════════════════════════════════════════════════════
   Product Grid Section — Full Width Container + Square Images
   Target: section elementor-element-94a6a90 (homepage product/shop section)
   Layout: sidebar (2d34910, 228px) + grid (e661e85) inside b23a44f container
   The constraining element is 7ef26be0 > .elementor-container (max-width: 1170px)
   ════════════════════════════════════════════════════════ */

/* The real constraint: the Elementor inner section's container */
.elementor-element-7ef26be0 > .elementor-container {
  max-width: min(calc(100vw - 80px), 1520px) !important;
}

/* Also expand the e-con-boxed and its inner */
.elementor-element-b23a44f,
.elementor-element-b23a44f > .e-con-inner {
  --container-max-width: min(calc(100vw - 80px), 1520px) !important;
  max-width: min(calc(100vw - 80px), 1520px) !important;
  width: 100% !important;
}

/* Grid area — let Elementor manage width naturally after container expands */
.elementor-element-e661e85 {
  max-width: none !important;
}

/* Product grid — 3 columns (HTML design). Scoped to ≥768px so Elementor's
   mobile repeat(2,1fr) at max-width:767px still wins on small screens. */
@media (min-width: 768px) {
  .elementor-7932 .elementor-element.elementor-element-211a7ef .ue-woo-grid {
    grid-template-columns: repeat(3, 1fr) !important;
    width: 100% !important;
  }
}

.elementor-element-77f766e {
  width: 100% !important;
}

/* Square product images — aspect-ratio 1:1, cover crop */
.uc_post_grid_style_one_image-wrapper {
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  background: #F0EEE9;
  display: block;
}

.uc_post_image {
  width: 100% !important;
  height: 100% !important;
  display: block;
}

.uc_post_grid_style_one_image-wrapper img,
.uc_post_image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block;
}

/* Product card white bg + hover shadow */
.uc_post_grid_style_one_item.ue-item {
  background: #FFFFFF !important;
  border: 1px solid #EEEBE6 !important;
  border-radius: 2px;
  overflow: hidden;
  transition: box-shadow 0.25s, border-color 0.25s;
}

.uc_post_grid_style_one_item.ue-item:hover {
  box-shadow: 0 5px 24px rgba(43,43,43,0.08) !important;
  border-color: #D5CFC7 !important;
}

/* Product content area padding */
.uc_post_grid_style_one_item .uc_content.padding {
  padding: 14px 16px 16px !important;
  background: #FFFFFF !important;
}

/* Product title charcoal */
.uc_post_grid_style_one_item .uc_title a {
  color: #2B2B2B !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-transform: none !important;
}

/* Category label — olive, uppercase, small */
.uc_post_grid_style_one_item .ue_category_label,
.uc_post_grid_style_one_item .ue_category_label a {
  color: #a6a182 !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  display: block !important;
  margin-bottom: 5px !important;
}

/* Product price olive */
.uc_post_grid_style_one_item .uc_price,
.uc_post_grid_style_one_item .price {
  color: #a6a182 !important;
  font-size: 13px !important;
}

/* Filter taxonomy pills — horizontal bar styling */
.ue_taxonomy_item {
  display: inline-flex !important;
  align-items: center !important;
  padding: 6px 14px !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  font-size: 12px !important;
  color: #5A6473 !important;
  background: transparent !important;
  cursor: pointer !important;
  transition: all 0.18s !important;
}

.ue_taxonomy_item:hover,
.ue_taxonomy_item.ue-active,
.ue_taxonomy_item.active,
.ue_taxonomy_item[class*="selected"] {
  background: #2B2B2B !important;
  color: #FFFFFF !important;
  border-color: #2B2B2B !important;
}

.ue_taxonomy_item:hover .ue_taxonomy_item_title,
.ue_taxonomy_item.ue-active .ue_taxonomy_item_title,
.ue_taxonomy_item.active .ue_taxonomy_item_title,
.ue_taxonomy_item[class*="selected"] .ue_taxonomy_item_title {
  color: #FFFFFF !important;
}

/* Section background for product grid area */
.elementor-element-94a6a90 {
  background-color: #F7F6F4 !important;
}

/* ── "Trusted in Global Architectural" section — white bg + dividing borders ── */
.elementor-element-83b598f {
  background-color: #FFFFFF !important;
  border-top: 1px solid #D5CFC7 !important;
  border-bottom: 1px solid #D5CFC7 !important;
}
/* Greyscale logo images, match HTML reference opacity */
.elementor-element-83b598f img {
  filter: grayscale(1) opacity(0.38) !important;
  transition: filter 0.25s !important;
  height: 20px !important;
  width: auto !important;
  object-fit: contain !important;
}
.elementor-element-83b598f img:hover {
  filter: grayscale(0) opacity(0.85) !important;
}

/* ── Crafted for Architects section — off-white bg ── */
.elementor-element-60ef3609 {
  background-color: #F7F6F4 !important;
}

/* ── Contact section ("Let's Discuss") — off-white bg ── */
.elementor-element-09a3700 {
  background-color: #F7F6F4 !important;
}

/* ── Hero: keep ALL text white — it sits over the full-bleed background image ── */
.elementor-element-779289a1 h1,
.elementor-element-779289a1 h2,
.elementor-element-779289a1 h3,
.elementor-element-779289a1 h4,
.elementor-element-779289a1 h5,
.elementor-element-779289a1 h6,
.elementor-element-779289a1 p,
.elementor-element-779289a1 a,
.elementor-element-779289a1 .elementor-heading-title,
.elementor-element-779289a1 .elementor-widget-text-editor {
  color: #FFFFFF !important;
}

/* ── Price Match section: ensure off-white bg so charcoal text is readable ── */
.elementor-element-0c84c55 {
  background-color: #F0EEE9 !important;
}

/* ── Body typography — match HTML reference (15px / 1.65 lh) ── */
body {
  font-size: 15px !important;
  line-height: 1.65 !important;
  -webkit-font-smoothing: antialiased !important;
}

/* Paragraph and general body text — grey mid tone matches reference */
p, .elementor-widget-text-editor p {
  font-size: 14px !important;
  color: #5A6473 !important;
  line-height: 1.75 !important;
}

/* ── Ensure page body/main sections inherit off-white background ── */
body,
#pxl-content-main,
.elementor-7932 {
  background-color: #F7F6F4 !important;
}

/* ════════════════════════════════════════════════════════
   Global heading weight — Inter 300, matches HTML design brief
   ════════════════════════════════════════════════════════ */
h1, h2, h3, h4, h5, h6,
.elementor-heading-title,
.pxl-item--title {
  font-family: 'Inter', sans-serif !important;
  font-weight: 300 !important;
  letter-spacing: -0.01em !important;
}

/* ════════════════════════════════════════════════════════
   Header fixes — element b8a6da4 gets charcoal bg from
   var(--e-global-color-primary) via Elementor-generated CSS.
   Override back to white + kill motion-effects dark overlay.
   ════════════════════════════════════════════════════════ */
.elementor-10018 .elementor-element.elementor-element-b8a6da4,
.elementor-10018 .elementor-element.elementor-element-b8a6da4:not(.elementor-motion-effects-element-type-background) {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #D5CFC7 !important;
}

/* Full header wrapper — white with bottom border */
#pxl-header-main,
.pxl-header-sticky,
.pxl-header--inner,
header#masthead,
.elementor-location-header {
  background-color: #FFFFFF !important;
}

/* ── Header container width — expand from 1170px to match HTML reference (1520px) ── */
.elementor-element-b8a6da4 > .e-con-inner,
.elementor-element-691b10d > .e-con-inner {
  max-width: min(calc(100vw - 80px), 1520px) !important;
  width: 100% !important;
}

/* ── Logo column — constrain width so nav gets room to expand ── */
.elementor-element-60bb409 {
  width: auto !important;
  flex: 0 0 auto !important;
  max-width: 160px !important;
}

/* ── Logo image — reduce to 30px height per HTML reference ── */
.elementor-element-db0cb82 img,
.elementor-10018 .elementor-widget-image img {
  height: 30px !important;
  width: auto !important;
  max-width: none !important;
}

/* ── Nav buttons column — take remaining space, wrap prevented ── */
.elementor-element-2b41e51 {
  flex: 1 1 auto !important;
  flex-wrap: nowrap !important;
  min-width: 0 !important;
  justify-content: flex-end !important;
}
.elementor-10018 .elementor-element.elementor-element-b8a6da4 .elementor-motion-effects-container {
  background: transparent !important;
  opacity: 0 !important;
}

/* Nav links — uppercase 12px Inter 500, match HTML design.
   Target by specific element IDs to avoid overriding hero buttons (white text). */
.elementor-10018 .elementor-element.elementor-element-094e329 .elementor-button,
.elementor-10018 .elementor-element.elementor-element-feeaf9b .elementor-button,
.elementor-10018 .elementor-element.elementor-element-cd01d11 .elementor-button,
.elementor-10018 .elementor-element.elementor-element-2f3074c .elementor-button,
.elementor-10018 .elementor-element.elementor-element-687fd73 .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  box-shadow: none !important;
  border: none !important;
  border-style: none !important;
  outline: none !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
}
.elementor-10018 .elementor-element.elementor-element-094e329 .elementor-button:hover,
.elementor-10018 .elementor-element.elementor-element-feeaf9b .elementor-button:hover,
.elementor-10018 .elementor-element.elementor-element-cd01d11 .elementor-button:hover,
.elementor-10018 .elementor-element.elementor-element-2f3074c .elementor-button:hover,
.elementor-10018 .elementor-element.elementor-element-687fd73 .elementor-button:hover {
  color: #a6a182 !important;
}

/* Legacy rule kept for any unlisted nav buttons */
.elementor-10018 .elementor-widget-button .elementor-button,
.elementor-10018 .elementor-button.elementor-button-link {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  box-shadow: none !important;
  border: none !important;
  border-style: none !important;
  outline: none !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
}
.elementor-10018 .elementor-widget-button .elementor-button:hover,
.elementor-10018 .elementor-button.elementor-button-link:hover {
  background-color: transparent !important;
  color: #a6a182 !important;
  border: none !important;
}

/* "Request a Quote" CTA — filled dark button (element 94ccbfb) */
.elementor-10018 .elementor-element.elementor-element-94ccbfb .elementor-button {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  padding: 9px 20px !important;
  border-radius: 2px !important;
  border: none !important;
}
.elementor-10018 .elementor-element.elementor-element-94ccbfb .elementor-button:hover {
  background-color: #a6a182 !important;
  color: #FFFFFF !important;
}

/* ════════════════════════════════════════════════════════
   Sidebar filter — text was near-invisible light grey.
   Force all labels/links to charcoal.
   ════════════════════════════════════════════════════════ */
.elementor-element-2d34910 *,
.elementor-element-2d34910 label,
.elementor-element-2d34910 a,
.elementor-element-2d34910 span,
.elementor-element-2d34910 .ue_filter_item_title,
.elementor-element-2d34910 .uc_filter_item,
.elementor-element-2d34910 .filter-title {
  color: #2B2B2B !important;
}

/* ════════════════════════════════════════════════════════
   SIDEBAR FILTER — UE Woo Grid plugin
   Target: .elementor-element-2d34910 (sidebar column)
   Match HTML reference: accordion groups, checkbox rows
   ════════════════════════════════════════════════════════ */

/* Sidebar wrapper padding + bg */
.elementor-element-2d34910 {
  padding: 0 !important;
  background: transparent !important;
}
.elementor-element-2d34910 > .elementor-widget-container {
  padding: 0 !important;
}

/* Sidebar head — "Filters" title + Clear All */
.elementor-element-2d34910 .ucaddon_ue_checkboxes_filter {
  font-family: 'Inter', sans-serif !important;
}

/* Each taxonomy group — border-top divider */
.elementor-element-2d34910 .ue_taxonomy,
.elementor-element-2d34910 .uc-checkbox-filter {
  border-top: 1px solid #D5CFC7 !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}
.elementor-element-2d34910 .ue_taxonomy:last-child,
.elementor-element-2d34910 .uc-checkbox-filter:last-child {
  border-bottom: 1px solid #D5CFC7 !important;
}

/* Group toggle label — uppercase 12px Inter 500 */
.elementor-element-2d34910 .ue_taxonomy_item_title,
.elementor-element-2d34910 .uc_filter_title,
.elementor-element-2d34910 .ue_taxonomy > .ue_title,
.elementor-element-2d34910 .uc-checkbox-filter > label,
.elementor-element-2d34910 .ue_taxonomy_title {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  background: none !important;
  border: none !important;
  padding: 14px 0 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  font-family: 'Inter', sans-serif !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #2B2B2B !important;
  cursor: pointer !important;
}

/* Checkbox items — row layout, hover tint */
.elementor-element-2d34910 .ue_taxonomy_item,
.elementor-element-2d34910 .uc-checkbox-filter_item,
.elementor-element-2d34910 .uc_filter_item {
  display: flex !important;
  align-items: center !important;
  gap: 9px !important;
  padding: 5px 4px !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  background: transparent !important;
  border: none !important;
  margin: 0 0 2px !important;
  transition: background 0.15s !important;
}
.elementor-element-2d34910 .ue_taxonomy_item:hover,
.elementor-element-2d34910 .uc-checkbox-filter_item:hover,
.elementor-element-2d34910 .uc_filter_item:hover {
  background: #F0EEE9 !important;
}

/* Checkbox input — custom styled */
.elementor-element-2d34910 input[type="checkbox"] {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 15px !important;
  height: 15px !important;
  flex-shrink: 0 !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  background: #FFFFFF !important;
  cursor: pointer !important;
  position: relative !important;
  transition: all 0.15s !important;
}
.elementor-element-2d34910 input[type="checkbox"]:checked {
  background: #2B2B2B !important;
  border-color: #2B2B2B !important;
}
.elementor-element-2d34910 input[type="checkbox"]:checked::after {
  content: '' !important;
  position: absolute !important;
  top: 2px !important;
  left: 5px !important;
  width: 3px !important;
  height: 7px !important;
  border: 1.5px solid #fff !important;
  border-top: none !important;
  border-left: none !important;
  transform: rotate(45deg) !important;
}

/* Item label — 13px charcoal */
.elementor-element-2d34910 .uc-checkbox-filter_label,
.elementor-element-2d34910 .ue_taxonomy_item_title,
.elementor-element-2d34910 .ue_filter_item_label,
.elementor-element-2d34910 label span,
.elementor-element-2d34910 .ue_taxonomy_item label {
  font-size: 13px !important;
  font-weight: 400 !important;
  font-family: 'Inter', sans-serif !important;
  color: #2B2B2B !important;
  line-height: 1.3 !important;
  flex: 1 !important;
}

/* Item count — 11px steel-blue */
.elementor-element-2d34910 .ue_count,
.elementor-element-2d34910 .uc_filter_count,
.elementor-element-2d34910 .ue_taxonomy_count {
  font-size: 11px !important;
  color: #5A6473 !important;
  font-weight: 400 !important;
}

/* Remove pill/chip styling from filter items */
.elementor-element-2d34910 .ue_taxonomy_item a,
.elementor-element-2d34910 .ue_filter_item a {
  background: none !important;
  border: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  color: #2B2B2B !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  text-decoration: none !important;
}

/* "Clear All" / clear filters button */
.elementor-element-2d34910 .uc-button-clear-wrapper,
.elementor-element-2d34910 .ue_clear_filters {
  padding: 12px 0 4px !important;
}
.elementor-element-2d34910 .uc-button-clear,
.elementor-element-2d34910 .ue_clear_btn {
  background: none !important;
  border: none !important;
  color: #5A6473 !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  padding: 0 !important;
}
.elementor-element-2d34910 .uc-button-clear:hover,
.elementor-element-2d34910 .ue_clear_btn:hover {
  color: #a6a182 !important;
}

/* Inner body padding below group label */
.elementor-element-2d34910 .ue_taxonomy_body,
.elementor-element-2d34910 .uc-checkbox-filter_body {
  padding-bottom: 14px !important;
}

/* ════════════════════════════════════════════════════════
   CONTRAST FIXES — low-contrast text identified in audit
   ════════════════════════════════════════════════════════ */

/* .pxl-title--highlight (olive #a6a182 on white/light bg — ratio 2.61, fails 3:1)
   Change to charcoal for body-level headings */
.pxl-title--highlight {
  color: #2B2B2B !important;
}

/* Tile Match section (0c84c55) subheading — was rgb(213,207,199) on tint bg, ratio ~1.33 */
.elementor-element-0c84c55 .elementor-widget-text-editor p,
.elementor-element-0c84c55 .elementor-heading-widget .elementor-heading-title + p,
.elementor-element-0c84c55 p {
  color: #5A6473 !important;
}

/* Tile Match highlights ("Right Tile", "Best Price") on tint bg — force olive only in hero/product
   On tint (#F0EEE9) bg the olive reads at 2.25:1 against bg (large text, needs 3:1).
   Use charcoal for text-decoration alternative */
.elementor-element-0c84c55 .pxl-title--highlight {
  color: #2B2B2B !important;
}

/* ════════════════════════════════════════════════════════
   SIDEBAR FILTER — CORRECTED (overrides earlier block)
   Elementor accordion + UE checkboxes filter
   ════════════════════════════════════════════════════════ */

/* Accordion item — border-top divider, no margin-bottom */
.elementor-element-2d34910 .e-n-accordion-item {
  border-top: 1px solid #D5CFC7 !important;
  margin-bottom: 0 !important;
}
.elementor-element-2d34910 .e-n-accordion-item:last-child {
  border-bottom: 1px solid #D5CFC7 !important;
}

/* Accordion summary (group header) — 12px Inter 500 uppercase */
.elementor-element-2d34910 .e-n-accordion-item-title {
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
  color: #2B2B2B !important;
  padding: 14px 0 !important;
  background: none !important;
  cursor: pointer !important;
}
.elementor-element-2d34910 .e-n-accordion-item-title:hover {
  color: #a6a182 !important;
}

/* Accordion summary icon — keep right-aligned, inherit colour */
.elementor-element-2d34910 .e-n-accordion-item-title-icon {
  color: inherit !important;
}

/* Remove inner padding on the filter container */
.elementor-element-2d34910 .e-n-accordion-item > div[class*="elementor-element"] {
  padding-top: 0 !important;
}

/* Checkbox item row — remove l/r padding, tighten gap */
.elementor-element-2d34910 .ue_taxonomy_item {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 5px 4px !important;
  border-radius: 2px !important;
  cursor: pointer !important;
  background: transparent !important;
  border: none !important;
  margin: 0 0 2px !important;
  transition: background 0.15s !important;
}
.elementor-element-2d34910 .ue_taxonomy_item:hover {
  background: #F0EEE9 !important;
}

/* Label span — 13px charcoal */
.elementor-element-2d34910 span.uc-checkbox-filter_label,
.elementor-element-2d34910 .ue_taxonomy_item_title {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #2B2B2B !important;
  line-height: 1.35 !important;
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
}

/* Visual checkbox box (::before pseudo on label span) */
.elementor-element-2d34910 .uc-checkbox-filter_label::before {
  content: '' !important;
  display: block !important;
  flex-shrink: 0 !important;
  width: 15px !important;
  height: 15px !important;
  background: #FFFFFF !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  transition: all 0.15s !important;
}

/* Checked state */
.elementor-element-2d34910 .ue_taxonomy_item input:checked + .uc-checkbox-filter_label::before {
  background: #2B2B2B !important;
  border-color: #2B2B2B !important;
}

/* Remove bottom padding from filter body */
.elementor-element-2d34910 .ue_checkbox_container {
  padding-bottom: 12px !important;
}

/* Search filter at top — clean styling */
.elementor-element-2d34910 .uc-search-filter-input-wrapper input {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  background: #FFFFFF !important;
  padding: 8px 12px !important;
}
.elementor-element-2d34910 .uc-search-filter-input-wrapper input::placeholder {
  color: #5A6473 !important;
}

/* Clear filters button */
.elementor-element-2d34910 .uc-button-clear {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  color: #5A6473 !important;
  background: none !important;
  border: none !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: color 0.15s !important;
}
.elementor-element-2d34910 .uc-button-clear:hover {
  color: #a6a182 !important;
}

/* Sidebar filter — alignment + case fixes */
.elementor-element-2d34910 span.uc-checkbox-filter_label,
.elementor-element-2d34910 .ue_taxonomy_item_title {
  justify-content: flex-start !important;
  text-transform: none !important;
  gap: 10px !important;
}

/* Sidebar — tighten item row gap */
.elementor-element-2d34910 .ue_checkbox_container {
  gap: 0 !important;
  row-gap: 0 !important;
}
.elementor-element-2d34910 .ue_taxonomy_item {
  margin-bottom: 1px !important;
  min-height: unset !important;
}

/* Sidebar — restore input position:absolute (was overridden back to relative) */
.elementor-element-2d34910 input[type="checkbox"].uc-checkbox-filter__checkbox {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
}

/* Sidebar — cancel wrong-block padding/width on item label spans */
.elementor-element-2d34910 span.uc-checkbox-filter_label,
.elementor-element-2d34910 span.ue_taxonomy_item_title {
  padding: 0 !important;
  width: auto !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

/* ════════════════════════════════════════════════════════
   SIDEBAR FILTER — polish pass
   ════════════════════════════════════════════════════════ */

/* 1. Remove box-shadow on custom checkbox box */
.elementor-element-2d34910 .uc-checkbox-filter_label::before {
  box-shadow: none !important;
}

/* 2. Search input — shrink from theme's global 64px height */
.elementor-element-2d34910 .uc-search-filter__input {
  height: 38px !important;
  font-size: 13px !important;
  font-family: 'Inter', sans-serif !important;
  color: #2B2B2B !important;
  background: #FFFFFF !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  padding: 0 36px 0 12px !important;
  box-shadow: none !important;
  outline: none !important;
}
.elementor-element-2d34910 .uc-search-filter__input::placeholder {
  color: #5A6473 !important;
  font-size: 12px !important;
}

/* Wrapper and holder match input height */
.elementor-element-2d34910 .uc-search-filter-input-wrapper,
.elementor-element-2d34910 .uc-search-filter-input-holder,
.elementor-element-2d34910 .uc-search-filter,
.elementor-element-2d34910 .uc-search-filter-wrapper,
.elementor-element-2d34910 .elementor-widget-ucaddon_posts_search_filter {
  height: auto !important;
  max-height: none !important;
}

/* 3. Search icon — re-centre after height change */
.elementor-element-2d34910 .uc-search-filter-indicator {
  position: absolute !important;
  right: 10px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: auto !important;
  height: auto !important;
  display: flex !important;
  align-items: center !important;
  color: #5A6473 !important;
  font-size: 13px !important;
}

/* 4. Filter item label — confirm 13px / 400 / charcoal (belt-and-suspenders) */
.elementor-element-2d34910 span.uc-checkbox-filter_label,
.elementor-element-2d34910 span.ue_taxonomy_item_title {
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
  line-height: 1.35 !important;
  letter-spacing: normal !important;
  text-transform: none !important;
}

/* ════════════════════════════════════════════════════════
   PRODUCT PAGE — elementor-10486 (header template)
   ════════════════════════════════════════════════════════ */

/* Header bg — white + border (same as homepage) */
.elementor-10486 .elementor-element.elementor-element-b8a6da4,
.elementor-10486 .elementor-element.elementor-element-b8a6da4:not(.elementor-motion-effects-element-type-background) {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #D5CFC7 !important;
}

/* Nav links — transparent, charcoal, Inter 500 12px uppercase */
.elementor-10486 .elementor-element.elementor-element-56ebd2f .elementor-button,
.elementor-10486 .elementor-element.elementor-element-a1c1fb1 .elementor-button,
.elementor-10486 .elementor-element.elementor-element-f67d6a0 .elementor-button,
.elementor-10486 .elementor-element.elementor-element-94cb6d2 .elementor-button,
.elementor-10486 .elementor-element.elementor-element-f18a127 .elementor-button,
.elementor-10486 .elementor-element.elementor-element-c0c813c .elementor-button,
.elementor-10486 .elementor-element.elementor-element-809ba60 .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  border: none !important;
  box-shadow: none !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
}
.elementor-10486 .elementor-element.elementor-element-56ebd2f .elementor-button:hover,
.elementor-10486 .elementor-element.elementor-element-a1c1fb1 .elementor-button:hover,
.elementor-10486 .elementor-element.elementor-element-f67d6a0 .elementor-button:hover,
.elementor-10486 .elementor-element.elementor-element-94cb6d2 .elementor-button:hover,
.elementor-10486 .elementor-element.elementor-element-f18a127 .elementor-button:hover,
.elementor-10486 .elementor-element.elementor-element-c0c813c .elementor-button:hover,
.elementor-10486 .elementor-element.elementor-element-809ba60 .elementor-button:hover {
  color: #a6a182 !important;
  background-color: transparent !important;
}

/* Request a Quote — filled dark */
.elementor-10486 .elementor-element.elementor-element-3c5364d .elementor-button {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  padding: 9px 20px !important;
  border-radius: 2px !important;
  border: none !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
}
.elementor-10486 .elementor-element.elementor-element-3c5364d .elementor-button:hover {
  background-color: #a6a182 !important;
  color: #FFFFFF !important;
}

/* ════════════════════════════════════════════════════════
   DOWNLOAD PROJECT FILE BUTTONS — outlined style
   ════════════════════════════════════════════════════════ */
.elementor-element-daa60d6 .elementor-button,
.elementor-element-476a652 .elementor-button,
.elementor-element-8a475a1 .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  padding: 8px 14px !important;
  box-shadow: none !important;
}
.elementor-element-daa60d6 .elementor-button:hover,
.elementor-element-476a652 .elementor-button:hover,
.elementor-element-8a475a1 .elementor-button:hover {
  background-color: #F0EEE9 !important;
  border-color: #a6a182 !important;
  color: #2B2B2B !important;
}

/* ════════════════════════════════════════════════════════
   TYPOGRAPHY — override Elementor Kit's Montserrat
   Kit rule: .elementor-kit-8 h1 { Montserrat !important }
   Match specificity + later cascade position = Inter wins
   ════════════════════════════════════════════════════════ */
.elementor-kit-8 h1,
.elementor-kit-8 h2,
.elementor-kit-8 h3,
.elementor-kit-8 h4,
.elementor-kit-8 h5,
.elementor-kit-8 h6 {
  font-family: 'Inter', sans-serif !important;
  font-weight: 300 !important;
}

/* WooCommerce product page text — Inter */
.woocommerce.single-product .product_title,
.woocommerce.single-product .entry-title,
.woocommerce.single-product p,
.woocommerce.single-product td,
.woocommerce.single-product th,
.woocommerce.single-product label,
.woocommerce.single-product .woocommerce-tabs,
.woocommerce.single-product .elementor-text-editor {
  font-family: 'Inter', sans-serif !important;
}

/* Product title sizing */
.woocommerce.single-product .product_title {
  font-size: 28px !important;
  font-weight: 300 !important;
  color: #2B2B2B !important;
  letter-spacing: -0.01em !important;
}

/* Short description body text */
.woocommerce.single-product .entry-summary p,
.woocommerce-product-details__short-description p,
.woocommerce-product-details__short-description {
  font-family: 'Inter', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #5A6473 !important;
  line-height: 1.75 !important;
}

/* ════════════════════════════════════════════════════════
   PRODUCT ATTRIBUTES TABLE — contrast fix
   th has white text on #F7F6F4 bg — unreadable
   ════════════════════════════════════════════════════════ */
.woocommerce table.woocommerce-product-attributes th,
.woocommerce-product-attributes-item__label {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: #5A6473 !important;
  background-color: transparent !important;
  padding: 10px 12px 10px 0 !important;
  border-bottom: 1px solid #D5CFC7 !important;
}
.woocommerce table.woocommerce-product-attributes td,
.woocommerce-product-attributes-item__value {
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #2B2B2B !important;
  background-color: transparent !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid #D5CFC7 !important;
}
.woocommerce table.woocommerce-product-attributes {
  border: none !important;
  width: 100% !important;
}
.woocommerce table.woocommerce-product-attributes tr {
  background: transparent !important;
}

/* ════════════════════════════════════════════════════════
   PRODUCT PAGE — general button/CTA fixes
   ════════════════════════════════════════════════════════ */

/* REQUEST PRICING + ORDER SAMPLES buttons on product page — keep dark filled */
.woocommerce.single-product .entry-summary .elementor-button:not([class*="elementor-element-daa60d6"]):not([class*="elementor-element-476a652"]):not([class*="elementor-element-8a475a1"]) {
  font-family: 'Inter', sans-serif !important;
}

/* SAVE TO SHORTLIST text link */
.woocommerce.single-product .entry-summary a:not(.elementor-button) {
  font-family: 'Inter', sans-serif !important;
  color: #2B2B2B !important;
  font-size: 12px !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
}

/* Product meta (SKU, categories) */
.woocommerce.single-product .product_meta,
.woocommerce.single-product .product_meta span,
.woocommerce.single-product .product_meta a {
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  color: #5A6473 !important;
}

/* ════════════════════════════════════════════════════════
   FOOTER — product page (same template as homepage)
   Verify charcoal bg already applied globally
   ════════════════════════════════════════════════════════ */
.elementor-location-footer,
.elementor-location-footer p,
.elementor-location-footer a,
.elementor-location-footer span {
  font-family: 'Inter', sans-serif !important;
}

/* Product page header — prevent nav button text from wrapping */
.elementor-10486 .elementor-element.elementor-element-56ebd2f .elementor-button,
.elementor-10486 .elementor-element.elementor-element-a1c1fb1 .elementor-button,
.elementor-10486 .elementor-element.elementor-element-f67d6a0 .elementor-button,
.elementor-10486 .elementor-element.elementor-element-94cb6d2 .elementor-button,
.elementor-10486 .elementor-element.elementor-element-f18a127 .elementor-button,
.elementor-10486 .elementor-element.elementor-element-3c5364d .elementor-button {
  white-space: nowrap !important;
}

/* Expand nav container width on product page header */
.elementor-element-3025802 > .e-con-inner,
.elementor-element-0359097 > .e-con-inner {
  max-width: min(calc(100vw - 80px), 1520px) !important;
  width: 100% !important;
}

/* Download buttons (BIM File, Data Sheet, Hi-Res Image) — consistent light-theme style */
/* Targets both Elementor button widgets and plain <button> rendered by Klaviyo triggers */
.bim_file_klaviyo_form_trigger .elementor-button,
.bim_file_klaviyo_form_trigger button,
.bim_file_klaviyo_form_trigger [role="button"],
.data_sheet_klaviyo_form_trigger .elementor-button,
.data_sheet_klaviyo_form_trigger button,
.data_sheet_klaviyo_form_trigger [role="button"],
.jpeg_klaviyo_form_trigger .elementor-button,
.jpeg_klaviyo_form_trigger button,
.jpeg_klaviyo_form_trigger [role="button"],
.elementor-element-02a817b .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  padding: 9px 16px !important;
  box-shadow: none !important;
  text-transform: uppercase !important;
}
.bim_file_klaviyo_form_trigger .elementor-button:hover,
.bim_file_klaviyo_form_trigger button:hover,
.bim_file_klaviyo_form_trigger [role="button"]:hover,
.data_sheet_klaviyo_form_trigger .elementor-button:hover,
.data_sheet_klaviyo_form_trigger button:hover,
.data_sheet_klaviyo_form_trigger [role="button"]:hover,
.jpeg_klaviyo_form_trigger .elementor-button:hover,
.jpeg_klaviyo_form_trigger button:hover,
.jpeg_klaviyo_form_trigger [role="button"]:hover,
.elementor-element-02a817b .elementor-button:hover {
  background-color: #2B2B2B !important;
  border-color: #2B2B2B !important;
  color: #FFFFFF !important;
}
.bim_file_klaviyo_form_trigger .elementor-button-icon,
.data_sheet_klaviyo_form_trigger .elementor-button-icon,
.jpeg_klaviyo_form_trigger .elementor-button-icon {
  color: inherit !important;
}
/* Remove underline / focus highlight on download buttons */
.bim_file_klaviyo_form_trigger a.elementor-button,
.data_sheet_klaviyo_form_trigger a.elementor-button,
.jpeg_klaviyo_form_trigger a.elementor-button,
.elementor-element-02a817b a.elementor-button {
  text-decoration: none !important;
  outline: none !important;
  -webkit-tap-highlight-color: transparent !important;
}
.bim_file_klaviyo_form_trigger .elementor-button:focus,
.bim_file_klaviyo_form_trigger button:focus,
.data_sheet_klaviyo_form_trigger .elementor-button:focus,
.data_sheet_klaviyo_form_trigger button:focus,
.jpeg_klaviyo_form_trigger .elementor-button:focus,
.jpeg_klaviyo_form_trigger button:focus,
.elementor-element-02a817b .elementor-button:focus {
  outline: none !important;
  box-shadow: none !important;
}

/* ════════════════════════════════════════════════════════
   PRODUCT PAGE — "Product Details" tab / accordion contrast fix
   The woocommerce-tabs panel and any collapsible accordion
   inside the product single template must have readable text.
   ════════════════════════════════════════════════════════ */
.woocommerce-tabs .panel,
.woocommerce-tabs .panel p,
.woocommerce-tabs .panel li,
.woocommerce-tabs .panel span:not(.screen-reader-text),
.woocommerce-tabs .panel h1,
.woocommerce-tabs .panel h2,
.woocommerce-tabs .panel h3,
.woocommerce-tabs .panel h4 {
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
}
/* Accordion toggle text in product single Elementor template */
.elementor-10486 .e-n-accordion-item-title,
.elementor-10486 .e-n-accordion-item-title-text,
.elementor-10486 .elementor-accordion-title,
.elementor-10486 .elementor-tab-title,
.elementor-10486 .elementor-toggle-title {
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
}
.elementor-10486 .e-n-accordion-item-body,
.elementor-10486 .elementor-accordion-content,
.elementor-10486 .elementor-tab-content,
.elementor-10486 .elementor-toggle-content {
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
  background: #FFFFFF !important;
}
/* Ensure accordion icon is visible — use dark colour for contrast, not faint taupe */
.elementor-10486 .e-n-accordion-item-title-icon,
.elementor-10486 .elementor-accordion-icon,
.elementor-10486 .e-n-accordion-item-title-icon svg,
.elementor-10486 .e-n-accordion-item-title-icon i {
  color: #2B2B2B !important;
  fill: #2B2B2B !important;
}

/* ════════════════════════════════════════════════════════
   SIDEBAR FILTER — high-specificity font override
   Elementor generates per-widget rules at (0,4,0) with
   !important — match (0,4,1) so our !important wins.
   Selector breakdown: .elementor-7932 (0,1,0)
     + .elementor-element-2d34910 (0,1,0)
     + .ue_taxonomy_item (0,1,0)
     + span.uc-checkbox-filter_label (0,1,1) = (0,4,1)
   ════════════════════════════════════════════════════════ */
.elementor-7932 .elementor-element-2d34910 .ue_taxonomy_item span.uc-checkbox-filter_label,
.elementor-7932 .elementor-element-2d34910 .ue_taxonomy_item span.ue_taxonomy_item_title {
  font-size: 13px !important;
  font-weight: 400 !important;
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
  text-transform: none !important;
  letter-spacing: normal !important;
  line-height: 1.35 !important;
}

/* ════════════════════════════════════════════════════════
   SHORTLIST PAGE (elementor-10497)
   Nav header + action buttons + download buttons
   ════════════════════════════════════════════════════════ */

/* Nav bar background — white + bottom border */
.elementor-10497 .elementor-element.elementor-element-4d58c3a {
  background-color: #FFFFFF !important;
  border-bottom: 1px solid #D5CFC7 !important;
}

/* Nav links — transparent, charcoal, Inter 500 12px uppercase */
.elementor-10497 .elementor-element.elementor-element-12b72c1 .elementor-button,
.elementor-10497 .elementor-element.elementor-element-7f97881 .elementor-button,
.elementor-10497 .elementor-element.elementor-element-85e46bd .elementor-button,
.elementor-10497 .elementor-element.elementor-element-6af3bc0 .elementor-button,
.elementor-10497 .elementor-element.elementor-element-533a09a .elementor-button,
.elementor-10497 .elementor-element.elementor-element-9edb668 .elementor-button,
.elementor-10497 .elementor-element.elementor-element-d0a2e33 .elementor-button,
.elementor-10497 .elementor-element.elementor-element-3b8e96e .elementor-button,
.elementor-10497 .elementor-element.elementor-element-a5e4dbc .elementor-button,
.elementor-10497 .elementor-element.elementor-element-230781f .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  border: none !important;
  box-shadow: none !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
  white-space: nowrap !important;
}
.elementor-10497 .elementor-element.elementor-element-12b72c1 .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-7f97881 .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-85e46bd .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-6af3bc0 .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-533a09a .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-9edb668 .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-d0a2e33 .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-3b8e96e .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-a5e4dbc .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-230781f .elementor-button:hover {
  color: #a6a182 !important;
  background-color: transparent !important;
}

/* Request a Quote nav — filled dark CTA */
.elementor-10497 .elementor-element.elementor-element-ec266a2 .elementor-button,
.elementor-10497 .elementor-element.elementor-element-79937d2 .elementor-button {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 2px !important;
  padding: 9px 20px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
.elementor-10497 .elementor-element.elementor-element-ec266a2 .elementor-button:hover,
.elementor-10497 .elementor-element.elementor-element-79937d2 .elementor-button:hover {
  background-color: #a6a182 !important;
}

/* Explore Collection page CTA (top-right) — outlined */
.elementor-10497 .elementor-element.elementor-element-334fdef .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  border: 1px solid #2B2B2B !important;
  border-radius: 2px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 10px 22px !important;
  box-shadow: none !important;
}
.elementor-10497 .elementor-element.elementor-element-334fdef .elementor-button:hover {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
}

/* Download buttons (per listing item) — small outlined */
.elementor-element-4eb2914 .elementor-button,
.elementor-element-fb7bda6 .elementor-button,
.elementor-element-a313b3b .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  padding: 7px 12px !important;
  box-shadow: none !important;
}
.elementor-element-4eb2914 .elementor-button:hover,
.elementor-element-fb7bda6 .elementor-button:hover,
.elementor-element-a313b3b .elementor-button:hover {
  background-color: #F0EEE9 !important;
  border-color: #a6a182 !important;
  color: #2B2B2B !important;
}

/* Request Pricing — primary action, filled dark */
.elementor-element-68a811a .elementor-button {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 2px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 12px 22px !important;
  box-shadow: none !important;
}
.elementor-element-68a811a .elementor-button:hover {
  background-color: #a6a182 !important;
}

/* Order Samples + Share via Email — outlined */
.elementor-element-141f7d0 .elementor-button,
.elementor-element-e445d0f .elementor-button {
  background-color: transparent !important;
  background: transparent !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.07em !important;
  text-transform: uppercase !important;
  padding: 12px 22px !important;
  box-shadow: none !important;
}
.elementor-element-141f7d0 .elementor-button:hover,
.elementor-element-e445d0f .elementor-button:hover {
  background-color: #F0EEE9 !important;
  border-color: #a6a182 !important;
  color: #2B2B2B !important;
}

/* ════════════════════════════════════════════════════════
   SHORTLIST LISTING ITEMS — text contrast
   Labels + values are white on #F7F6F4 (invisible)
   Widget c286cee = labels col, e7df4fc = values col
   ════════════════════════════════════════════════════════ */
.elementor-element-c286cee .elementor-icon-list-text,
.elementor-element-e7df4fc .elementor-icon-list-text {
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
}
.elementor-element-c286cee .elementor-icon-list-text {
  color: #5A6473 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}

/* Send button (contact/discuss form) — filled dark */
.elementor-element-5ec405d .elementor-button {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 2px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  padding: 12px 32px !important;
  box-shadow: none !important;
}
.elementor-element-5ec405d .elementor-button:hover {
  background-color: #a6a182 !important;
}

/* ════════════════════════════════════════════════════════
   HERO SECTION — typography + button (elementor-7932, widget 7262396)
   Demo spec: eyebrow 10px/600/0.2em/uppercase/rgba(255,255,255,.65)
              title clamp(34px,4.8vw,56px)/300/lh1.1/white/-0.01em
              strong 600 | btn-white style
   ════════════════════════════════════════════════════════ */

/* Eyebrow / subtitle */
.elementor-element-7262396 .pxl-item--subtitle,
.elementor-element-7262396 .pxl-item--subtitle span {
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: rgba(255, 255, 255, 0.65) !important;
  margin-bottom: 18px !important;
  display: block !important;
}

/* Hero title */
.elementor-element-7262396 .pxl-item--title {
  font-family: 'Inter', sans-serif !important;
  font-size: clamp(34px, 4.8vw, 56px) !important;
  font-weight: 300 !important;
  line-height: 1.1 !important;
  color: #FFFFFF !important;
  letter-spacing: -0.01em !important;
  margin-bottom: 30px !important;
}
.elementor-element-7262396 .pxl-item--title b,
.elementor-element-7262396 .pxl-item--title strong {
  font-weight: 600 !important;
  color: #FFFFFF !important;
}

/* Hero CTA button — white fill (btn-white from demo) */
.elementor-element-8960561 .elementor-button {
  background-color: #FFFFFF !important;
  background: #FFFFFF !important;
  color: #2B2B2B !important;
  border: 1px solid #FFFFFF !important;
  border-radius: 2px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  padding: 12px 26px !important;
  box-shadow: none !important;
}
.elementor-element-8960561 .elementor-button:hover {
  background-color: #a6a182 !important;
  background: #a6a182 !important;
  color: #FFFFFF !important;
  border-color: #a6a182 !important;
}

/* ════════════════════════════════════════════════════════
   TRUSTED SECTION (83b598f) — dark bg so white logos show
   ════════════════════════════════════════════════════════ */
.elementor-element-83b598f,
.elementor-element-83b598f:not(.elementor-motion-effects-element-type-background) {
  background-color: #2B2B2B !important;
}

/* Section heading text → white */
.elementor-element-83b598f .pxl-item--subtitle,
.elementor-element-83b598f .pxl-item--subtitle span,
.elementor-element-83b598f .elementor-heading-title,
.elementor-element-83b598f p {
  color: rgba(255, 255, 255, 0.6) !important;
}
/* Trusted label — match demo: 10px/600/0.18em uppercase */
.elementor-element-83b598f .pxl-item--title {
  color: rgba(255, 255, 255, 0.6) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

/* Logo images — keep white, just ensure opacity is comfortable */
.elementor-element-83b598f img {
  opacity: 0.85 !important;
  filter: brightness(0) invert(1) !important;
}

/* ════════════════════════════════════════════════════════
   MY ACCOUNT PAGE (9919) — Light theme fixes
   ════════════════════════════════════════════════════════ */

/* Restore dark sidebar bg — overridden by our broad .e-con transparent rule */
.elementor-element-920dd16.e-con {
  background-color: #2B2B2B !important;
}

/* Sidebar logo: black PNG becomes white on dark bg */
.elementor-element-6c68edd img {
  filter: brightness(0) invert(1) !important;
}

/* Right content area: beat Elementor's white !important (0,3,1) with body tag for (0,3,2) */
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 a,
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 p,
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 h1,
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 h2,
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 h3,
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 td,
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 th,
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 span,
body.page-id-9919 .elementor-element.elementor-element-ffed8c9 label {
  color: #2B2B2B !important;
}

/* WooCommerce account nav links */
body.page-id-9919 .woocommerce-MyAccount-navigation ul li a {
  color: #5A6473 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}
body.page-id-9919 .woocommerce-MyAccount-navigation ul li.is-active a,
body.page-id-9919 .woocommerce-MyAccount-navigation ul li a:hover {
  color: #2B2B2B !important;
  font-weight: 600 !important;
}

/* Right content pane bg */
body.page-id-9919 .elementor-element-3cd57bf.e-con,
body.page-id-9919 .elementor-element-8d1fe61.e-con {
  background-color: #F7F6F4 !important;
}

/* ════════════════════════════════════════════════════════
   FOOTER (post 10176) — Match HTML template design spec
   ════════════════════════════════════════════════════════ */

/* Inner section bg: Elementor hardcodes #000 — override to design charcoal */
.elementor-10176 .elementor-element.elementor-element-749253a:not(.elementor-motion-effects-element-type-background) {
  background-color: #2B2B2B !important;
}

/* Footer section padding: 60px top / 28px bottom (design spec) */
.elementor-10176 .elementor-element.elementor-element-749253a {
  padding: 60px 0px 28px 0px !important;
}

/* Logo: shrink from 41px to 26px per design spec */
.elementor-10176 .elementor-element.elementor-element-eec5b73 .pxl-logo img {
  max-height: 26px !important;
  filter: brightness(0) invert(1) !important;
}

/* Contact info column titles — 10px / 600 / 0.18em / uppercase / white */
.elementor-10176 .pxl-contact-info .pxl-item--title {
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  margin-bottom: 14px !important;
}

/* Contact info body — 13px muted stone */
.elementor-10176 .pxl-contact-info .pxl-item--description,
.elementor-10176 .pxl-contact-info .pxl-item--description p,
.elementor-10176 .pxl-contact-info .pxl-item--description a {
  font-size: 13px !important;
  color: rgba(213, 207, 199, 0.55) !important;
  line-height: 1.7 !important;
}

/* Contact info link hover — olive */
.elementor-10176 .pxl-contact-info .pxl-item--description a:hover {
  color: #a6a182 !important;
}

/* Footer bottom divider row */
.elementor-10176 .elementor-element.elementor-element-be80b16 .pxl-grid-lines span {
  background-color: rgba(213, 207, 199, 0.1) !important;
}

/* ── Footer layout — full-width responsive grid ───────────────────────────── */

/* Footer section vertical padding */
.elementor-element-ft_main_row {
  padding-top: 64px !important;
  padding-bottom: 48px !important;
}
.elementor-element-ft_bottom_row {
  padding-top: 0 !important;
  padding-bottom: 28px !important;
}

/* Main row container: full bleed with edge padding */
.elementor-element-ft_main_row .elementor-container,
.elementor-element-ft_bottom_row .elementor-container {
  display: flex !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 60px !important;
  box-sizing: border-box !important;
  align-items: flex-start !important;
}

/* Column widths: 1.4fr : 1fr : 1fr : 1fr matching HTML template */
.elementor-element-ft_c1 {
  flex: 0 0 28% !important;
  width: 28% !important;
  max-width: 28% !important;
  padding-right: 48px !important;
  box-sizing: border-box !important;
}
.elementor-element-ft_c2,
.elementor-element-ft_c3,
.elementor-element-ft_c4 {
  flex: 1 1 0 !important;
  width: auto !important;
  max-width: none !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
}
.elementor-element-ft_c4 {
  padding-right: 0 !important;
}

/* Bottom bar — equal halves, copyright left, pricing right */
.elementor-element-ft_bl,
.elementor-element-ft_br {
  flex: 1 1 50% !important;
  width: 50% !important;
  max-width: 50% !important;
  box-sizing: border-box !important;
}
.elementor-element-ft_br .elementor-widget-wrap {
  align-items: flex-end !important;
  justify-content: flex-end !important;
}

/* Tablet — logo full width, nav columns in a row of 3 */
@media (max-width: 1024px) {
  .elementor-element-ft_main_row .elementor-container {
    flex-wrap: wrap !important;
    padding: 0 30px !important;
  }
  .elementor-element-ft_c1 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    margin-bottom: 40px !important;
  }
  .elementor-element-ft_c2,
  .elementor-element-ft_c3,
  .elementor-element-ft_c4 {
    flex: 0 0 33.33% !important;
    width: 33.33% !important;
    padding-right: 20px !important;
  }
  .elementor-element-ft_bottom_row .elementor-container {
    padding: 0 30px !important;
  }
}

/* Mobile — all columns stack */
@media (max-width: 600px) {
  .elementor-element-ft_main_row .elementor-container {
    padding: 0 20px !important;
  }
  .elementor-element-ft_c2,
  .elementor-element-ft_c3,
  .elementor-element-ft_c4 {
    flex: 0 0 100% !important;
    width: 100% !important;
    padding-right: 0 !important;
    margin-bottom: 28px !important;
  }
  .elementor-element-ft_bl,
  .elementor-element-ft_br {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .ft-copy--right { text-align: left !important; }
  .elementor-element-ft_bottom_row .elementor-container {
    padding: 0 20px !important;
    flex-wrap: wrap !important;
  }
}

/* ── Footer nav columns (new 4-col layout) ────────────────────────────────── */
.ft-col-title {
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: #ffffff !important;
  margin: 0 0 18px !important;
  line-height: 1 !important;
}

.ft-nav-list {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 9px !important;
}

.ft-nav-list li a {
  font-size: 13px !important;
  color: rgba(213, 207, 199, 0.55) !important;
  text-decoration: none !important;
  transition: color 0.2s !important;
}

.ft-nav-list li a:hover {
  color: #a6a182 !important;
}

/* Footer tagline */
.elementor-element-ft_tagline p,
.elementor-element-ft_tagline {
  font-size: 13px !important;
  color: rgba(213, 207, 199, 0.55) !important;
  line-height: 1.7 !important;
  max-width: 210px !important;
}

/* Bottom bar — border + small copyright text */
.elementor-element-ft_bottom_row {
  border-top: 1px solid rgba(213, 207, 199, 0.1) !important;
}

.ft-copy {
  font-size: 11px !important;
  color: rgba(213, 207, 199, 0.35) !important;
  margin: 0 !important;
}

.ft-copy--right {
  text-align: right !important;
}

/* ════════════════════════════════════════════════════════
   HOMEPAGE — "Order Samples" button above products (widget 5fae7b8)
   Match HTML template btn-outline: transparent / stone border / charcoal hover
   Full selector matches Elementor's (0,3,1) specificity
   ════════════════════════════════════════════════════════ */
.elementor-7932 .elementor-element.elementor-element-5fae7b8 .elementor-button {
  background: transparent !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  padding: 12px 26px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  transition: all 0.22s !important;
  box-shadow: none !important;
}
.elementor-7932 .elementor-element.elementor-element-5fae7b8 .elementor-button:hover {
  background: #2B2B2B !important;
  color: #ffffff !important;
  border-color: #2B2B2B !important;
}

/* Font Awesome @font-face intentionally NOT overridden here.
   src: local() overrides caused icons to disappear on WP Engine (visitors
   don't have FA installed locally). The plugin/parent theme handles the
   correct url()-based @font-face declarations. */

/* ════════════════════════════════════════════════════════
   PERFORMANCE — CLS: reserve space for logo to prevent layout shift
   ════════════════════════════════════════════════════════ */
.pxl-logo img {
  width: auto;
  height: auto;
  max-height: 41px;
  display: block;
}

/* ════════════════════════════════════════════════════════
   MOBILE RESPONSIVE — Global
   ════════════════════════════════════════════════════════ */
html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

/* ════════════════════════════════════════════════════════
   MOBILE RESPONSIVE — 767px and below
   ════════════════════════════════════════════════════════ */
@media (max-width: 767px) {
  /* ── Hero heading: Elementor sets title to 16px at 575px — override to legible size */
  .elementor-7932 .elementor-element.elementor-element-7262396 .pxl-heading .pxl-item--title {
    font-size: 32px !important;
    line-height: 1.2em !important;
  }
  /* Subtitle label stays small — Elementor sets it to 24px at 575px which is wrong */
  .elementor-7932 .elementor-element.elementor-element-7262396 .pxl-heading .pxl-item--subtitle span {
    font-size: 10px !important;
  }

  /* ── Footer nav columns stack cleanly */
  .elementor-element-ft_main_row .elementor-container,
  .elementor-element-ft_bottom_row .elementor-container {
    padding: 0 24px !important;
    flex-wrap: wrap !important;
  }
  .elementor-element-ft_c1 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    padding-right: 0 !important;
    margin-bottom: 32px !important;
  }
  .elementor-element-ft_c2,
  .elementor-element-ft_c3,
  .elementor-element-ft_c4 {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin-bottom: 28px !important;
  }
  .elementor-element-ft_bl,
  .elementor-element-ft_br {
    flex: 0 0 100% !important;
    width: 100% !important;
  }
  .ft-copy--right {
    text-align: left !important;
    margin-top: 6px !important;
  }
  .elementor-element-ft_main_row {
    padding-top: 48px !important;
    padding-bottom: 0 !important;
  }
  .elementor-element-ft_tagline p {
    max-width: 100% !important;
  }

  /* ── Prevent horizontal overflow from GSAP split-text animation wrappers */
  .pxl-split-text {
    overflow: hidden !important;
  }

  /* ── Section horizontal padding on mobile */
  .elementor-section.elementor-top-section > .elementor-container {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }
}

/* ════════════════════════════════════════════════════════
   CONTACT FORM — Match HTML preview: padding 11px 14px, 13px font,
   stone border, olive focus ring, #C0BBB3 placeholder
   ════════════════════════════════════════════════════════ */

/* ── Contacts page: pxl CF7 widget (style2) ── */
.pxl-contact-form1.style2 .contact-form-custom1 .wpcf7-form-control-wrap input {
  padding: 11px 14px !important;
  height: auto !important;
  font-size: 13px !important;
  color: #2B2B2B !important;
}
.pxl-contact-form1.style2 .contact-form-custom1 .wpcf7-form-control-wrap .wpcf7-textarea {
  padding: 11px 14px !important;
  height: auto !important;
  min-height: 110px !important;
  font-size: 13px !important;
  color: #2B2B2B !important;
  resize: vertical !important;
}
.pxl-contact-form1 .contact-form-custom1 .wpcf7-form-control-wrap input:focus,
.pxl-contact-form1 .contact-form-custom1 .wpcf7-form-control-wrap .wpcf7-textarea:focus {
  border-color: #a6a182 !important;
  box-shadow: 0 0 0 3px rgba(166, 161, 130, 0.12) !important;
  outline: none !important;
}
.pxl-contact-form1 .contact-form-custom1 .wpcf7-form-control::placeholder {
  color: #C0BBB3 !important;
}

/* ── Homepage Elementor form widget (08f30f2 — "Let's Talk" section) ── */
.elementor-7932 .elementor-element.elementor-element-08f30f2 .elementor-field {
  padding: 11px 14px !important;
  height: auto !important;
  font-size: 13px !important;
  color: #2B2B2B !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  background: #fff !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}
.elementor-7932 .elementor-element.elementor-element-08f30f2 textarea.elementor-field {
  min-height: 110px !important;
  resize: vertical !important;
}
.elementor-7932 .elementor-element.elementor-element-08f30f2 .elementor-field:focus {
  border-color: #a6a182 !important;
  box-shadow: 0 0 0 3px rgba(166, 161, 130, 0.12) !important;
  outline: none !important;
}
.elementor-7932 .elementor-element.elementor-element-08f30f2 .elementor-field::placeholder {
  color: #C0BBB3 !important;
}

/* ════════════════════════════════════════════════════════
   KLAVIYO POPUP FORMS — light theme to match site
   ════════════════════════════════════════════════════════ */

/* Modal container — white card */
.klaviyo-form {
  background: #FFFFFF !important;
  border-radius: 2px !important;
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
}

/* Headings inside popup */
.klaviyo-form h1,
.klaviyo-form h2,
.klaviyo-form h3 {
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  font-size: 14px !important;
}

/* Body / description text */
.klaviyo-form p,
.klaviyo-form [data-testid*="description"],
.klaviyo-form [class*="paragraph"] {
  color: #5A6473 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
}

/* Field labels */
.klaviyo-form label {
  color: #2B2B2B !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  font-family: 'Inter', sans-serif !important;
  margin-bottom: 6px !important;
}

/* All text inputs / email / tel */
.klaviyo-form input[type="text"],
.klaviyo-form input[type="email"],
.klaviyo-form input[type="tel"],
.klaviyo-form input[type="password"],
.klaviyo-form input[type="number"],
.klaviyo-form textarea {
  background: #FFFFFF !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  padding: 11px 14px !important;
  font-size: 13px !important;
  font-family: 'Inter', sans-serif !important;
  color: #2B2B2B !important;
  height: auto !important;
  box-shadow: none !important;
  outline: none !important;
  transition: border-color 0.2s !important;
}

.klaviyo-form input[type="text"]:focus,
.klaviyo-form input[type="email"]:focus,
.klaviyo-form input[type="tel"]:focus,
.klaviyo-form input[type="password"]:focus {
  border-color: #a6a182 !important;
  box-shadow: 0 0 0 3px rgba(166, 161, 130, 0.12) !important;
}

.klaviyo-form input::placeholder,
.klaviyo-form textarea::placeholder {
  color: #C0BBB3 !important;
}

/* Phone country selector button */
.klaviyo-form button[id*="downshift"][id*="toggle-button"],
.klaviyo-form [class*="phone-country"] {
  background: #F5F2EE !important;
  border: 1px solid #D5CFC7 !important;
  border-right: none !important;
  border-radius: 2px 0 0 2px !important;
  color: #2B2B2B !important;
}

/* Submit button — dark charcoal, no pill */
.klaviyo-form button[type="submit"],
.klaviyo-form input[type="submit"],
.klaviyo-form [data-testid*="submit"],
.klaviyo-form [class*="submit-button"] {
  background: #2B2B2B !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 2px !important;
  padding: 13px 24px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
  width: 100% !important;
}

.klaviyo-form button[type="submit"]:hover,
.klaviyo-form input[type="submit"]:hover {
  background: #a6a182 !important;
}

/* Close button — charcoal × */
button.klaviyo-close-form svg,
.klaviyo-close-form svg {
  stroke: #2B2B2B !important;
  color: #2B2B2B !important;
}

button.klaviyo-close-form path,
.klaviyo-close-form path {
  stroke: #2B2B2B !important;
  fill: none !important;
}

/* Success state */
.klaviyo-form [class*="success"],
.klaviyo-form [data-testid*="success"] {
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
}

/* "Powered by Klaviyo" footer — keep but dim */
.klaviyo-form [class*="powered-by"],
.klaviyo-form [class*="klaviyo-powered"] {
  opacity: 0.4 !important;
}


/* ════════════════════════════════════════════════════════
   LOGIN / REGISTER PAGE — EAEL widget + WooCommerce forms
   ════════════════════════════════════════════════════════ */

/* Card wrapper */
.eael-login-form-wrapper,
.eael-lr-form-wrapper {
  background: #FFFFFF !important;
  border: 1px solid #E8E4DF !important;
  border-radius: 2px !important;
  box-shadow: 0 2px 16px rgba(43, 43, 43, 0.06) !important;
}

/* Tab switcher (Login / Register headings) */
.eael-lr-form-wrapper .eael-lr-tab-title,
.eael-lr-form-wrapper [class*="tab-title"],
.eael-lr-form-wrapper [class*="lr-tab"] {
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #5A6473 !important;
  border-bottom: 2px solid transparent !important;
}

.eael-lr-form-wrapper .eael-lr-tab-title.active,
.eael-lr-form-wrapper [class*="tab-title"].active {
  color: #2B2B2B !important;
  border-bottom-color: #a6a182 !important;
}

/* Field labels */
.eael-field-label {
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  color: #2B2B2B !important;
  margin-bottom: 6px !important;
  display: block !important;
}

/* Input fields */
.eael-lr-form-control {
  background: #FFFFFF !important;
  border: 1px solid #D5CFC7 !important;
  border-radius: 2px !important;
  padding: 11px 14px !important;
  font-size: 13px !important;
  font-family: 'Inter', sans-serif !important;
  color: #2B2B2B !important;
  height: auto !important;
  width: 100% !important;
  box-shadow: none !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
}

.eael-lr-form-control:focus {
  border-color: #a6a182 !important;
  box-shadow: 0 0 0 3px rgba(166, 161, 130, 0.12) !important;
  outline: none !important;
}

.eael-lr-form-control::placeholder {
  color: #C0BBB3 !important;
}

/* Password toggle visibility icon */
.eael-lr-password-wrapper {
  position: relative !important;
}

/* Submit buttons */
.eael-lr-btn {
  background: #2B2B2B !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 2px !important;
  padding: 13px 24px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background 0.2s !important;
}

.eael-lr-btn:hover {
  background: #a6a182 !important;
  color: #FFFFFF !important;
}

.eael-lr-btn-block {
  width: 100% !important;
  display: block !important;
}

/* Switch links (Register Now / Sign In) */
.eael-lr-link {
  color: #a6a182 !important;
  font-size: 12px !important;
  font-family: 'Inter', sans-serif !important;
  text-decoration: none !important;
  border-bottom: 1px solid transparent !important;
  transition: border-color 0.2s !important;
}

.eael-lr-link:hover {
  color: #2B2B2B !important;
  border-bottom-color: #2B2B2B !important;
}

/* Forgot password link */
.eael-forever-forget a {
  color: #5A6473 !important;
  font-size: 11px !important;
  font-family: 'Inter', sans-serif !important;
  text-decoration: none !important;
}

.eael-forever-forget a:hover {
  color: #a6a182 !important;
}

/* Remember me checkbox label */
.eael-checkbox-label {
  font-size: 12px !important;
  color: #5A6473 !important;
  font-family: 'Inter', sans-serif !important;
}

/* Success message */
.eael-lr-response.success,
.eael-lr-response[class*="success"],
.woocommerce-message {
  background: #F5F2EE !important;
  border-left: 3px solid #a6a182 !important;
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  padding: 12px 16px !important;
  border-radius: 0 2px 2px 0 !important;
  margin-top: 16px !important;
}

/* Error message */
.eael-lr-response.error,
.eael-lr-response[class*="error"],
.woocommerce-error {
  background: #FEF5F5 !important;
  border-left: 3px solid #C0392B !important;
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  padding: 12px 16px !important;
  border-radius: 0 2px 2px 0 !important;
  margin-top: 16px !important;
  list-style: none !important;
}

/* Info / notice message */
.woocommerce-info {
  background: #F5F2EE !important;
  border-left: 3px solid #5A6473 !important;
  color: #2B2B2B !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 13px !important;
  padding: 12px 16px !important;
  border-radius: 0 2px 2px 0 !important;
  margin-top: 16px !important;
}

/* Validation error inline */
.eael-form-validation-container,
.eael-form-validation-container [class*="error"] {
  color: #C0392B !important;
  font-size: 11px !important;
  font-family: 'Inter', sans-serif !important;
  margin-top: 4px !important;
}

/* Trade account registration — Profession select field */
.nido-profession-field .eael-lr-form-control,
#nido_profession {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%232B2B2B' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  background-size: 12px !important;
  cursor: pointer !important;
  width: 100% !important;
}

/* ── Profession field: force block width to match EAEL repeater fields ──── */
#eael-register-form .nido-profession-field {
  display: block !important;
  width: 100% !important;
  clear: both !important;
}

/* ── Register button: full-width block in register form ─────────────────── */
#eael-register-form .eael-lr-form-loader-wrapper {
  display: block !important;
  width: 100% !important;
  clear: both !important;
}
#eael-register-form .eael-lr-btn {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
}

/* ── Post-registration success screen ───────────────────────────────────── */
.nido-register-success {
  padding: 8px 0 16px;
}
.nido-register-success__eyebrow {
  margin: 0 0 6px !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: #a6a182 !important;
}
.nido-register-success__heading {
  margin: 0 0 14px !important;
  font-size: 22px !important;
  font-weight: 400 !important;
  color: #2B2B2B !important;
  letter-spacing: -0.01em !important;
}
.nido-register-success__body {
  margin: 0 0 28px !important;
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #555555 !important;
}
.nido-register-success__steps {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  margin: 0 0 28px !important;
  padding: 20px !important;
  background: #F5F2EE !important;
  border-radius: 2px !important;
}
.nido-register-success__step {
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  font-size: 13px !important;
  color: #2B2B2B !important;
}
.nido-register-success__step-num {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 24px !important;
  height: 24px !important;
  min-width: 24px !important;
  background: #2B2B2B !important;
  color: #FFFFFF !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  border-radius: 50% !important;
}
.nido-register-success__note {
  margin: 0 !important;
  font-size: 12px !important;
  color: #999999 !important;
}
.nido-register-success__link {
  color: #a6a182 !important;
  text-decoration: underline !important;
}

/*=================================================================QA Fixes=====================================================================*/

/* 1. JetWooBuilder "Add to Shortlist" / "View Shortlist" button — override amber to charcoal */
.jet-data-store-link,
.jet-add-to-store,
.jet-compare-button,
.jet-wishlist-button {
  background-color: #2B2B2B !important;
  color: #FFFFFF !important;
  border-color: #2B2B2B !important;
  border-radius: 2px !important;
}
.jet-data-store-link:hover,
.jet-add-to-store:hover {
  background-color: #444444 !important;
  border-color: #444444 !important;
}
/* Icon inside the shortlist button */
.jet-data-store-link .jet-data-store-link__icon,
.jet-add-to-store .jet-data-store-link__icon {
  color: #FFFFFF !important;
}

/* 2. My Account page — light-theme sidebar override */
/* Sidebar nav panel */
.pxl-myaccount-sidebar,
.pxl-wc-my-account .pxl-wc-account-nav,
.woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-navigation {
  background-color: #FFFFFF !important;
  border: 1px solid #E8E4DF !important;
  border-radius: 2px !important;
}
/* Nav links */
.pxl-myaccount-sidebar a,
.pxl-wc-account-nav a,
.woocommerce-MyAccount-navigation a,
.woocommerce-MyAccount-navigation ul li a {
  color: #2B2B2B !important;
}
.pxl-myaccount-sidebar a:hover,
.pxl-wc-account-nav a:hover,
.woocommerce-MyAccount-navigation a:hover {
  color: #a6a182 !important;
}
/* Active / current nav item */
.woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-MyAccount-navigation li.woocommerce-MyAccount-navigation-link--dashboard a {
  color: #a6a182 !important;
  font-weight: 600 !important;
}
/* Logo area inside the sidebar (if any) */
.pxl-myaccount-sidebar .pxl-logo img,
.pxl-wc-account-nav .pxl-logo img {
  filter: none !important;
}
/* Mrittik theme uses a dark card for the account sidebar widget */
.elementor-widget-ucaddon_wc_my_account .pxl-myaccount-sidebar,
[class*="wc_my_account"] .pxl-myaccount-sidebar,
.uc-wc-my-account-sidebar,
.uc_wc_my_account .sidebar-panel {
  background: #FFFFFF !important;
  color: #2B2B2B !important;
}
.uc-wc-my-account-sidebar *,
.uc_wc_my_account .sidebar-panel * {
  color: #2B2B2B !important;
}

/* 3. My Account page — the dark sidebar block (post 9919 custom layout) */
.pxl-sc-my-account-sidebar {
  background: #FFFFFF !important;
}
.pxl-sc-my-account-sidebar,
.pxl-sc-my-account-sidebar *:not(img) {
  color: #2B2B2B !important;
}

/* 4. Header logo — force dark on all inner pages (product, page, single, archive)
   The header template uses NIDO-LOGO-WHITE.png; on light-background pages it must appear dark.
   Homepage is excluded (.home) because the hero handles the dark-bg logo correctly via JS. */
body:not(.home):not(.woocommerce-account) .elementor-widget-image img[src*="NIDO-LOGO"],
body.single-product .elementor-widget-image img[src*="NIDO-LOGO"],
body.archive .elementor-widget-image img[src*="NIDO-LOGO"],
body.single:not(.woocommerce-account) .elementor-widget-image img[src*="NIDO-LOGO"] {
  filter: brightness(0) !important;
}
/* Exception: footer logo must stay white (dark bg) */
.elementor-location-footer .elementor-widget-image img[src*="NIDO-LOGO"],
.elementor-10176 .elementor-widget-image img[src*="NIDO-LOGO"] {
  filter: brightness(0) invert(1) !important;
}

/* 5. My Account page — override dark sidebar container (elementor-9919 element 920dd16)
   Elementor sets background-color: rgb(43,43,43) !important inline CSS — need same specificity */
.elementor-9919 .elementor-element-920dd16.e-con,
.elementor-element-920dd16.e-con {
  background-color: #FFFFFF !important;
  border: 1px solid #E8E4DF !important;
}
/* All text inside the sidebar → charcoal */
.elementor-9919 .elementor-element-920dd16 *:not(img) {
  color: #2B2B2B !important;
}
/* Logout link — keep it slightly subdued */
.elementor-9919 .elementor-element-920dd16 a[href*="logout"] {
  color: #888888 !important;
}

/* 6. Header account/login icon — white text invisible on light-background pages
   Elementor-10018 sets icon + text to white for use over dark hero.
   On inner pages (non-home), force charcoal. Keep hover accent. */
body:not(.home) .elementor-10018 .elementor-element-7d2f7e7 .elementor-icon-list-icon i,
body:not(.home) .elementor-10018 .elementor-element-7d2f7e7 .elementor-icon-list-text {
  color: #2B2B2B !important;
}
body:not(.home) .elementor-10018 .elementor-element-7d2f7e7 {
  border-color: #D5CFC7 !important;
}
/* Hover stays accent olive */
body:not(.home) .elementor-10018 .elementor-element-7d2f7e7 .elementor-icon-list-item:hover .elementor-icon-list-icon i,
body:not(.home) .elementor-10018 .elementor-element-7d2f7e7 .elementor-icon-list-item:hover .elementor-icon-list-text {
  color: #a6a182 !important;
}

/*=================================================================QA Fixes End===============================================================*/

/* ── Product Details accordion — max-height + internal scroll ── */
/* Prevents expanded content from overflowing into sections below */
.elementor-element-ae6a59c .e-n-accordion-item[open] > [role="region"] {
    max-height: 280px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scroll-behavior: smooth;
    /* Scrollbar to match site style */
    scrollbar-width: thin;
    scrollbar-color: #D5CFC7 #F0EEE9;
}
.elementor-element-ae6a59c .e-n-accordion-item[open] > [role="region"]::-webkit-scrollbar {
    width: 4px;
}
.elementor-element-ae6a59c .e-n-accordion-item[open] > [role="region"]::-webkit-scrollbar-track {
    background: #F0EEE9;
    border-radius: 2px;
}
.elementor-element-ae6a59c .e-n-accordion-item[open] > [role="region"]::-webkit-scrollbar-thumb {
    background: #D5CFC7;
    border-radius: 2px;
}
.elementor-element-ae6a59c .e-n-accordion-item[open] > [role="region"]::-webkit-scrollbar-thumb:hover {
    background: #a6a182;
}

/* ═══════════════════════════════════════════════════════════════════════════
   Nido contact form — shared styles for page-contacts.php + [nido_contact_form] shortcode
   ═══════════════════════════════════════════════════════════════════════════ */
.nido-sc-form-wrap { width: 100%; }

.nido-contact-error {
    margin: 0 0 24px;
    padding: 14px 18px;
    background: #fff0f0;
    border-left: 3px solid #c0392b;
    font-size: 13px;
    color: #c0392b;
}
.nido-contact-form {
    display: flex;
    flex-direction: column;
    gap: 0;
}
.nido-contact-row {
    display: flex;
    flex-direction: column;
    gap: 0;
    margin-bottom: 24px;
}
.nido-contact-row--two {
    flex-direction: row;
    gap: 20px;
}
.nido-contact-row--two .nido-contact-field { flex: 1; }
.nido-contact-row--submit { margin-top: 8px; }

.nido-contact-field label {
    display: block;
    margin-bottom: 12px !important;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #2B2B2B;
}
.nido-contact-field label span { color: #a6a182; }

.nido-contact-field input,
.nido-contact-field textarea {
    width: 100%;
    padding: 13px 16px;
    font-size: 14px;
    font-family: inherit;
    color: #2B2B2B !important;
    background: #FFFFFF;
    border: 1px solid #D5CFC7;
    border-radius: 2px;
    outline: none;
    transition: border-color 0.2s;
    box-sizing: border-box;
    -webkit-appearance: none;
}
.nido-contact-field input:not(textarea) { height: 48px; }
.nido-contact-field input:focus,
.nido-contact-field textarea:focus { border-color: #2B2B2B; }
.nido-contact-field textarea { resize: vertical; min-height: 140px; }
.nido-contact-field input::placeholder,
.nido-contact-field textarea::placeholder { color: #a0a0a0; opacity: 1; }

.nido-contact-select-wrap { position: relative; }
.nido-contact-select-wrap select {
    width: 100%;
    height: 48px;
    padding: 0 40px 0 16px;
    font-size: 14px;
    font-family: inherit;
    color: #2B2B2B !important;
    background: #FFFFFF;
    border: 1px solid #D5CFC7;
    border-radius: 2px;
    outline: none;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
    transition: border-color 0.2s;
    box-sizing: border-box;
}
.nido-contact-select-wrap select.is-placeholder { color: #a0a0a0 !important; }
.nido-contact-select-wrap select:focus { border-color: #2B2B2B; }
.nido-contact-select-arrow {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 18px;
    color: #a6a182;
    pointer-events: none;
    line-height: 1;
}

.nido-contact-btn {
    display: inline-block;
    padding: 14px 36px;
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.14em !important;
    text-transform: uppercase !important;
    color: #FFFFFF !important;
    background: #2B2B2B !important;
    border: none !important;
    border-radius: 2px !important;
    cursor: pointer;
    text-decoration: none !important;
    transition: opacity 0.2s !important;
    font-family: inherit !important;
}
.nido-contact-btn:hover { opacity: 0.75 !important; background: #2B2B2B !important; }

.nido-contact-product-tag {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    padding: 7px 14px;
    background: #FFFFFF;
    border: 1px solid #D5CFC7;
    border-radius: 2px;
    font-size: 13px;
    color: #2B2B2B;
}
.nido-contact-product-tag__label {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #a6a182;
}
.nido-contact-success { padding: 40px 0; }
.nido-contact-success__eyebrow {
    margin: 0 0 16px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #a6a182;
}
.nido-contact-success__heading {
    margin: 0 0 16px;
    font-size: 28px;
    font-weight: 300;
    color: #2B2B2B;
    letter-spacing: -0.02em;
}
.nido-contact-success__body {
    margin: 0 0 32px;
    font-size: 15px;
    line-height: 1.7;
    color: #777;
}

@media (max-width: 768px) {
    .nido-contact-row--two {
        flex-direction: column;
        gap: 0;
    }

    /* Hero heading — larger on mobile for prominence */
    .elementor-element-7262396 .pxl-item--title {
        font-size: 40px !important;
        line-height: 1.08 !important;
        letter-spacing: -0.02em !important;
    }
}

/* ═══════════════════════════════════════════════════════════════════════════
   Product page — "Explore Our Collection" loop cards (template 10011)
   Match the homepage product grid card design
   ═══════════════════════════════════════════════════════════════════════════ */

/* Card wrapper — white card with border */
.elementor-10011.e-loop-item {
    background: #FFFFFF !important;
    border: 1px solid #EEEBE6 !important;
    overflow: hidden !important;
    transition: box-shadow 0.25s ease, border-color 0.25s ease !important;
}

.elementor-10011.e-loop-item:hover {
    box-shadow: 0 4px 20px rgba(43, 43, 43, 0.07) !important;
    border-color: #D5CFC7 !important;
}

/* Image — square crop with subtle zoom on hover */
.elementor-10011 .elementor-widget-image .elementor-widget-container {
    line-height: 0 !important;
    overflow: hidden !important;
    aspect-ratio: 1 / 1 !important;
    display: block !important;
}

.elementor-10011 .elementor-widget-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.4s ease !important;
}

.elementor-10011.e-loop-item:hover .elementor-widget-image img {
    transform: scale(1.04) !important;
}

/* Image link — remove any inline-block gap */
.elementor-10011 .elementor-widget-image a {
    display: block !important;
    line-height: 0 !important;
}

/* Title — match homepage: uppercase, 13px Inter, warm dark */
.elementor-10011 .elementor-widget-heading {
    padding: 14px 16px 16px !important;
    margin: 0 !important;
    background: #FFFFFF !important;
}

.elementor-10011 .elementor-heading-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.05em !important;
    color: #2B2B2B !important;
    margin: 0 !important;
    line-height: 1.4 !important;
}

/* ── Nido "Coming soon" tooltip — global (product page + shortlist) ───────── */
[data-nido-tooltip] {
    position: relative;
}
[data-nido-tooltip]::after {
    content: attr(data-nido-tooltip);
    position: absolute;
    bottom: calc(100% + 7px);
    left: 50%;
    transform: translateX(-50%) translateY(4px);
    white-space: nowrap;
    background: #2B2B2B;
    color: #FFFFFF;
    font-family: 'Inter', sans-serif;
    font-size: 9px;
    font-weight: 700;
    letter-spacing: 0.13em;
    text-transform: uppercase;
    padding: 5px 10px;
    border-radius: 2px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.18s ease, transform 0.18s ease;
    z-index: 9999;
}
[data-nido-tooltip]::before {
    content: '';
    position: absolute;
    bottom: calc(100% + 3px);
    left: 50%;
    transform: translateX(-50%) translateY(4px);
    border: 4px solid transparent;
    border-top-color: #2B2B2B;
    pointer-events: none;
    opacity: 0;
    transition: opacity 0.18s ease, transform 0.18s ease;
    z-index: 9999;
}
[data-nido-tooltip]:hover::after,
[data-nido-tooltip]:hover::before {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
}

/* ══════════════════════════════════════════════════════════════════════
   MOBILE HERO — force background image (Elementor clears it on mobile
   when no separate mobile image is set in the editor)
   Element: section.elementor-element-779289a1 (homepage hero)
   ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 1024px) {
    .elementor-element-779289a1 {
        background-image: url('/wp-content/uploads/2025/11/compressed_nido-hero-image.webp') !important;
        background-size: cover !important;
        background-position: center center !important;
        background-repeat: no-repeat !important;
    }
}

/* ══════════════════════════════════════════════════════════════════════
   MOBILE HERO — left-align "Explore Our Collection" button
   At ≤575px Elementor sets --align-items:center on container 7ab3977
   which horizontally centres the button widget. Override it.
   ══════════════════════════════════════════════════════════════════════ */
@media (max-width: 575px) {
    .elementor-7932 .elementor-element.elementor-element-8960561 {
        align-self: flex-start !important;
    }
}

/* ══════════════════════════════════════════════════════════════════════
   MOBILE BURGER MENU — off-canvas drawer legibility + toggle contrast
   Card: "Fix mobile burger menu — invisible items + low-contrast toggle"
   (2026-08-14). Elementor header template 10018, Off-Canvas widget f9460da.

   Problem 1 — invisible drawer items: the drawer panel background is the
   Elementor global "primary" (#2B2B2B). The 7 nav buttons intend white
   text (button_text_color #FFFFFF in the DB) but render #2B2B2B on the
   front end — the parent theme's `nav a { color:rgb(43,43,43)!important }`
   rule (and Autoptimize stripping the widget's element-CSS on prod) beats
   Elementor's non-important colour → dark-on-dark, ~1:1 contrast.
   Fix: force the drawer button labels back to white with !important.
   #FFFFFF on #2B2B2B ≈ 12.6:1 (AAA).

   Problem 2 — low-contrast toggle: the burger icon (element 7c9effd) uses
   the global "accent" colour (#D5CFC7, warm neutral) which is near-invisible
   on the white header (~1.3:1). Fix: force it to charcoal #2B2B2B in every
   state (default/hover/focus/active). #2B2B2B on #FFFFFF ≈ 12.6:1 (AAA).

   All rules use element-id classes + !important so they win over both the
   parent theme rule and Elementor's per-element CSS, regardless of load
   order or Autoptimize bundling. Files-only deployable (no DB edit); the
   drawer link destinations are repaired separately in functions.php
   (CAL-133 repairNav). After deploy, clear the Autoptimize cache.
   ══════════════════════════════════════════════════════════════════════ */

/* 1 — Off-canvas drawer menu links: light label on the dark panel */
.elementor-element-f9460da .elementor-button,
.elementor-element-f9460da a.elementor-button,
.elementor-element-f9460da .elementor-button:link,
.elementor-element-f9460da .elementor-button:visited,
.elementor-element-f9460da .elementor-button .elementor-button-content-wrapper,
.elementor-element-f9460da .elementor-button .elementor-button-text {
    color: #FFFFFF !important;
}

/* 1b — hover / focus / active: warm accent, still AA on #2B2B2B (~9.6:1) */
.elementor-element-f9460da .elementor-button:hover,
.elementor-element-f9460da .elementor-button:hover .elementor-button-text,
.elementor-element-f9460da .elementor-button:focus,
.elementor-element-f9460da .elementor-button:focus .elementor-button-text,
.elementor-element-f9460da .elementor-button:active,
.elementor-element-f9460da .elementor-button:active .elementor-button-text {
    color: #D5CFC7 !important;
}

/* 2 — Burger toggle icon: dark charcoal on the white header, all states */
.elementor-element-7c9effd,
.elementor-element-7c9effd a,
.elementor-element-7c9effd .elementor-icon,
.elementor-element-7c9effd i,
.elementor-element-7c9effd svg,
.elementor-element-7c9effd:hover,
.elementor-element-7c9effd:hover a,
.elementor-element-7c9effd:hover .elementor-icon,
.elementor-element-7c9effd:hover i,
.elementor-element-7c9effd:hover svg,
.elementor-element-7c9effd:focus i,
.elementor-element-7c9effd:focus svg,
.elementor-element-7c9effd:active i,
.elementor-element-7c9effd:active svg {
    color: #2B2B2B !important;
    fill: #2B2B2B !important;
}

/* ══════════════════════════════════════════════════════════════════════
   CAL-423 — bootstrap-icons webfont: SAME-ORIGIN @font-face (backstop)
   ──────────────────────────────────────────────────────────────────────
   PRIMARY FIX now lives in functions.php item 9b: the parent 'bootstrap-icons'
   stylesheet is DEQUEUED and replaced with a child copy whose @font-face src is
   root-relative — so the parent's rewriteable relative url() never reaches the
   page and Autoptimize can no longer emit the stale https://nidostones.com/...
   (.com, not .com.au) cross-origin URL that CORS-blocked the font and left the
   mobile drawer close-✕ (.bi-x-lg) as an empty square. (Reviewer's revised fix,
   option 2 — a second @font-face alone did NOT clear it: the parent face stayed
   in the served CSS and its font was still requested.)
   This block is a HARMLESS SAME-ORIGIN BACKSTOP: the child style.css loads last
   (dep: pxl-style, priority 99), so this root-relative face also resolves on
   every host (localhost / staging / prod) should the child bootstrap-icons.css
   enqueue ever be bypassed. With the parent handle dequeued there is no longer a
   competing foreign-domain face, so this can only help. Files-only deployable.
   ══════════════════════════════════════════════════════════════════════ */
@font-face {
    font-display: block;
    font-family: "bootstrap-icons";
    font-style: normal;
    font-weight: normal;
    src: url("/wp-content/themes/mrittik/assets/fonts/bootstrap-icons/fonts/bootstrap-icons.woff2?8d200481aa7f02a2d63a331fc782cfaf") format("woff2"),
         url("/wp-content/themes/mrittik/assets/fonts/bootstrap-icons/fonts/bootstrap-icons.woff?8d200481aa7f02a2d63a331fc782cfaf") format("woff");
}

/* ══════════════════════════════════════════════════════════════════════
   Skip-to-content link (CAL-424, a11y #33)
   Visually hidden until it receives keyboard focus, then pinned top-left
   above all site chrome. Charcoal on white matches the light theme; the
   target is the <main id="pxl-content-main"> landmark. Injected as the
   first focusable element by the front-page output buffer in functions.php.
   ══════════════════════════════════════════════════════════════════════ */
.nido-skip-link {
    position: absolute;
    left: -9999px;
    top: 0;
    z-index: 100001;
    padding: 12px 22px;
    background: #2B2B2B;
    color: #FFFFFF !important;
    font-size: 15px;
    line-height: 1.2;
    text-decoration: none;
    border-radius: 0 0 4px 0;
}
.nido-skip-link:focus {
    left: 0;
    outline: 2px solid #FFFFFF;
    outline-offset: -4px;
}
/* Skip-link target is focused programmatically; suppress the container focus ring. */
#pxl-content-main[tabindex="-1"]:focus {
    outline: none;
}

/* ============================================================
   CAL — Hero display font + CTA restyle — REVERTED 2026-08-16
   ------------------------------------------------------------
   The "Nido Display" (Fraunces) substitute and the CTA restyle were
   REMOVED per reviewer correction: the LIVE site (nidostones.com.au)
   renders the hero .saol-displayregular heading in Inter (there is no
   serif on prod) and the CTA as uppercase "EXPLORE OUR COLLECTION".
   Removing the @font-face + binding lets the hero fall back to Inter
   (the child theme's .elementor-kit-8 h1…h6 Inter rule), matching live;
   removing the CTA override restores the original uppercase white button
   above (widget 8960561). No font-swap CLS remains (Inter is already the
   site font, so nothing swaps). The fraunces-latin-var.woff2 asset and
   the functions.php font preload were removed too.
   ============================================================ */
