/*
Theme Name: FalishBaba Storefront
Description: A modern, ultra-luxurious, non-boxy WooCommerce storefront child theme for FalishBaba. Soft curves, ambient depth, glassmorphism, and 60fps GPU performance.
Author: FalishBaba
Template: storefront
Version: 0.3.7
Text Domain: felishbaba-storefront
License: GNU General Public License v2 or later
*/

/* ==========================================================================
   1. Design Tokens & Core Variables
   ========================================================================== */
:root {
	/* Palette */
	--fb-bg: #f9f8f5;
	--fb-surface: #ffffff;
	--fb-surface-subtle: #f3f0ea;
	--fb-surface-glass: rgba(255, 255, 255, 0.85);
	--fb-ink: #1c201a;
	--fb-ink-light: #3d4239;
	--fb-muted: #6e7368;
	--fb-line: #e8e5dc;
	--fb-line-light: rgba(232, 229, 220, 0.6);
	--fb-action: #a24b31;
	--fb-action-hover: #883921;
	--fb-action-subtle: rgba(162, 75, 49, 0.08);
	--fb-gold: #c89d56;

	/* Soft Curved Geometry (Anti-Boxy) */
	--fb-radius-xs: 6px;
	--fb-radius-sm: 10px;
	--fb-radius-md: 16px;
	--fb-radius-lg: 24px;
	--fb-radius-xl: 32px;
	--fb-radius-pill: 9999px;

	/* Ambient Elevation & Diffuse Shadows */
	--fb-shadow-xs: 0 1px 3px rgba(28, 32, 26, 0.04);
	--fb-shadow-sm: 0 4px 14px -2px rgba(28, 32, 26, 0.05);
	--fb-shadow-md: 0 10px 28px -4px rgba(28, 32, 26, 0.07);
	--fb-shadow-lg: 0 20px 42px -10px rgba(28, 32, 26, 0.10);
	--fb-shadow-hover: 0 16px 36px -6px rgba(162, 75, 49, 0.16);

	/* Typography */
	--fb-font-ui: "Plus Jakarta Sans", system-ui, -apple-system, sans-serif;
	--fb-font-serif: "Playfair Display", Georgia, serif;

	/* Fluid Timing & Hardware Acceleration */
	--fb-transition-fast: 160ms cubic-bezier(0.16, 1, 0.3, 1);
	--fb-transition-smooth: 280ms cubic-bezier(0.16, 1, 0.3, 1);
}

/* ==========================================================================
   2. Base & Reset Overrides
   ========================================================================== */
html {
	scroll-behavior: smooth;
	background: var(--fb-bg);
}

body {
	background: var(--fb-bg);
	color: var(--fb-ink);
	font-family: var(--fb-font-ui);
	font-size: 15px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

h1, h2, h3, h4, h5, h6 {
	color: var(--fb-ink);
	font-family: var(--fb-font-serif);
	font-weight: 500;
	letter-spacing: -0.02em;
}

a {
	color: inherit;
	text-decoration: none;
	transition: color var(--fb-transition-fast);
}

a:hover {
	color: var(--fb-action);
}

button, input, select, textarea {
	font-family: var(--fb-font-ui);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
	outline: 2px solid var(--fb-action);
	outline-offset: 3px;
	border-radius: var(--fb-radius-sm);
}

.col-full {
	max-width: 1320px;
	margin: 0 auto;
	padding: 0 32px;
}

/* ==========================================================================
   3. Header & Floating Luxury Navigation (Slide 1 & Slide 4 Stitch)
   ========================================================================== */
.fb-topline {
	display: none !important;
}

.fb-header {
	position: sticky;
	top: 14px;
	z-index: 1000;
	max-width: 1360px;
	margin: 12px auto 16px;
	padding: 0 24px;
}

.fb-header-container {
	background: rgba(255, 255, 255, 0.92);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid rgba(255, 255, 255, 0.7);
	border-radius: var(--fb-radius-pill);
	box-shadow: 0 10px 30px rgba(28, 32, 26, 0.05);
	padding: 10px 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.fb-brand {
	font-family: var(--fb-font-serif);
	font-size: 26px;
	font-weight: 600;
	letter-spacing: -0.02em;
	color: var(--fb-ink);
	white-space: nowrap;
	display: inline-flex;
	align-items: center;
}

.fb-brand span {
	color: var(--fb-action);
	font-weight: 600;
	font-style: normal;
}

/* Nav links in center */
.fb-nav-links {
	display: flex;
	align-items: center;
	gap: 28px;
}

.fb-nav-link {
	position: relative;
	font-size: 14px;
	font-weight: 500;
	color: var(--fb-ink);
	letter-spacing: 0.01em;
	padding: 6px 0;
	text-decoration: none;
	border: none !important;
	outline: none !important;
	background: transparent !important;
	transition: color var(--fb-transition-fast);
}

.fb-nav-link:focus,
.fb-nav-link:focus-visible {
	outline: none !important;
	box-shadow: none !important;
}

.fb-nav-link::after {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 0;
	height: 2px;
	background: var(--fb-action);
	border-radius: 2px;
	transition: width var(--fb-transition-fast);
}

.fb-nav-link:hover {
	color: var(--fb-action);
}

.fb-nav-link:hover::after,
.fb-nav-link.is-active::after {
	width: 100%;
}

.fb-nav-link.is-active {
	color: var(--fb-action) !important;
	font-weight: 600;
}

/* Header actions right */
.fb-header-actions {
	display: flex;
	align-items: center;
	gap: 16px;
}

.fb-search-pill {
	display: flex;
	align-items: center;
	background: #f0ece3;
	border-radius: var(--fb-radius-pill);
	padding: 6px 14px;
	gap: 8px;
	border: 1px solid transparent;
	transition: all var(--fb-transition-fast);
}

.fb-search-pill:focus-within {
	background: #ffffff;
	border-color: var(--fb-line);
	box-shadow: 0 0 0 3px var(--fb-action-subtle);
}

.fb-search-pill input {
	border: none;
	background: transparent;
	font-size: 13px;
	color: var(--fb-ink);
	outline: none;
	width: 110px;
	transition: width var(--fb-transition-fast);
}

.fb-search-pill input:focus {
	width: 150px;
}

.fb-action-text {
	font-size: 13px;
	font-weight: 600;
	color: var(--fb-ink);
	padding: 6px 10px;
}

.fb-action-text:hover {
	color: var(--fb-action);
}

.fb-action-icon {
	color: var(--fb-ink);
	display: flex;
	align-items: center;
	padding: 4px;
	transition: color var(--fb-transition-fast);
}

.fb-action-icon:hover {
	color: var(--fb-action);
}

.fb-cart-pill {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	background: var(--fb-action);
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill);
	padding: 8px 18px;
	font-size: 13px;
	font-weight: 600;
	box-shadow: 0 4px 14px rgba(162, 75, 49, 0.28);
	transition: all var(--fb-transition-fast);
	cursor: pointer;
}

.fb-cart-pill:hover {
	background: var(--fb-action-hover);
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(162, 75, 49, 0.35);
}

.fb-cart-count {
	font-weight: 700;
}

/* ==========================================================================
   4. Homepage Experience (Soft-Curved Hero & Cards)
   ========================================================================== */
.fb-home {
	padding-bottom: 60px;
}

.fb-preview-badge-wrapper {
	text-align: center;
	padding: 12px 20px;
}

.fb-preview-badge {
	display: inline-block;
	background: var(--fb-surface-subtle);
	color: var(--fb-muted);
	font-size: 11px;
	font-weight: 500;
	letter-spacing: 0.03em;
	padding: 6px 18px;
	border-radius: var(--fb-radius-pill);
	border: 1px solid var(--fb-line);
}

/* Eyebrow Pill */
.fb-eyebrow-pill {
	display: inline-flex;
	align-items: center;
	background: var(--fb-action-subtle);
	color: var(--fb-action);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 6px 14px;
	border-radius: var(--fb-radius-pill);
	margin-bottom: 16px;
}

/*/* ==========================================================================
   4. Split Hero Section (Slide 1 Stitch)
   ========================================================================== */
.fb-hero-split {
	max-width: 1360px;
	margin: 36px auto 60px;
	padding: 0 24px;
	display: grid;
	grid-template-columns: 1fr 1.25fr;
	gap: 48px;
	align-items: center;
}

.fb-hero-heading {
	font-family: var(--fb-font-serif);
	font-size: clamp(38px, 4vw, 56px);
	line-height: 1.12;
	font-weight: 600;
	color: var(--fb-ink);
	margin: 0 0 18px;
	letter-spacing: -0.025em;
}

.fb-hero-subheading {
	font-family: var(--fb-font-ui);
	font-size: 18px;
	color: #6a665d;
	margin: 0 0 32px;
	line-height: 1.5;
}

.fb-button-terracotta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--fb-action);
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill);
	padding: 14px 34px;
	font-size: 15px;
	font-weight: 600;
	box-shadow: 0 10px 25px rgba(162, 75, 49, 0.32);
	transition: all var(--fb-transition-smooth);
}

.fb-button-terracotta:hover {
	background: var(--fb-action-hover);
	transform: translateY(-2px);
	box-shadow: 0 14px 32px rgba(162, 75, 49, 0.4);
}

.fb-hero-media-wrap {
	border-radius: 32px;
	overflow: hidden;
	box-shadow: 0 20px 48px rgba(28, 32, 26, 0.08);
	background: #f0ece1;
}

.fb-hero-showcase-img {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 10;
	object-fit: cover;
	display: block;
}

/* ==========================================================================
   5. Category Showcase (Slide 1 Stitch)
   ========================================================================== */
.fb-categories-showcase {
	max-width: 1360px;
	margin: 0 auto 64px;
	padding: 0 24px;
}

.fb-category-tiles-row {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.fb-category-tile-card {
	height: 280px;
	border-radius: 26px;
	overflow: hidden;
	position: relative;
	box-shadow: 0 10px 26px rgba(28, 32, 26, 0.06);
	background: #ece8df;
	display: block;
	transition: transform var(--fb-transition-smooth), box-shadow var(--fb-transition-smooth);
}

.fb-category-tile-card:hover {
	transform: translateY(-6px);
	box-shadow: 0 16px 36px rgba(28, 32, 26, 0.12);
}

.fb-category-tile-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 600ms cubic-bezier(0.16, 1, 0.3, 1);
}

.fb-category-tile-card:hover img {
	transform: scale(1.06);
}

.fb-tile-gradient {
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg, transparent 45%, rgba(20, 22, 18, 0.72) 100%);
	display: flex;
	align-items: flex-end;
	justify-content: center;
	padding-bottom: 22px;
}

.fb-tile-label {
	color: #ffffff;
	font-family: var(--fb-font-ui);
	font-size: 15px;
	font-weight: 600;
	letter-spacing: 0.5px;
}

/* ==========================================================================
   6. Bestsellers Showcase (Slide 1 Stitch)
   ========================================================================== */
.fb-bestsellers-showcase {
	max-width: 1360px;
	margin: 0 auto 72px;
	padding: 0 24px;
}

.fb-bestsellers-header {
	margin-bottom: 24px;
}

.fb-bestsellers-header h2 {
	font-family: var(--fb-font-serif);
	font-size: 32px;
	font-weight: 600;
	color: var(--fb-ink);
	margin: 0;
}

/* ==========================================================================
   7. WooCommerce Product Grid (Slide 1 & Slide 2 Alignment)
   ========================================================================== */
.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 22px !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.woocommerce ul.products:before,
.woocommerce ul.products:after {
	display: none !important;
}

.woocommerce ul.products li.product,
.woocommerce ul.products.columns-4 li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	background: #ffffff !important;
	border: 1px solid rgba(0, 0, 0, 0.04) !important;
	border-radius: 22px !important;
	box-shadow: 0 6px 20px rgba(28, 32, 26, 0.04) !important;
	overflow: hidden !important;
	display: flex !important;
	flex-direction: column !important;
	text-align: left !important;
	padding: 12px !important;
	transition: all var(--fb-transition-smooth) !important;
	position: relative !important;
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 16px 36px rgba(28, 32, 26, 0.09) !important;
	border-color: rgba(0, 0, 0, 0.08) !important;
}

.woocommerce ul.products li.product a.woocommerce-LoopProduct-link {
	display: block !important;
	overflow: hidden !important;
	border-radius: 16px !important;
}

.woocommerce ul.products li.product img {
	width: 100% !important;
	aspect-ratio: 1 / 1 !important;
	object-fit: cover !important;
	background: #f1eee7 !important;
	display: block !important;
	margin: 0 !important;
	border-radius: 16px !important;
	transition: transform 500ms cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.woocommerce ul.products li.product:hover img {
	transform: scale(1.05) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--fb-font-ui) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
	color: var(--fb-ink) !important;
	padding: 12px 4px 4px !important;
	margin: 0 !important;
}

.woocommerce ul.products li.product .price {
	font-size: 14px !important;
	font-weight: 700 !important;
	color: var(--fb-ink) !important;
	padding: 0 4px 12px !important;
	margin: 0 !important;
	display: block !important;
}

.woocommerce ul.products li.product .price del {
	color: var(--fb-muted);
	font-size: 12px;
	font-weight: 400;
	margin-right: 6px;
}

.woocommerce ul.products li.product .price ins {
	text-decoration: none;
	color: var(--fb-action);
}

.woocommerce ul.products li.product .button {
	margin: auto 0 0 !important;
	background: var(--fb-action) !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: var(--fb-radius-pill) !important;
	padding: 10px 18px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-align: center !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: 0 4px 14px rgba(162, 75, 49, 0.25) !important;
	transition: all var(--fb-transition-fast) !important;
}

.woocommerce ul.products li.product .button:hover {
	background: var(--fb-action-hover) !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 20px rgba(162, 75, 49, 0.35) !important;
}

/* ==========================================================================
   8. Unified Account CTA Card
   ========================================================================== */
.fb-account-cta {
	margin: 0 0 60px;
}

.fb-cta-card {
	background: linear-gradient(135deg, #f7f3eb 0%, #ede6d8 100%);
	border-radius: var(--fb-radius-xl);
	padding: 48px;
	border: 1px solid #ded6c5;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
	box-shadow: var(--fb-shadow-sm);
}

.fb-cta-copy h2 {
	font-size: 32px;
	margin: 0 0 10px;
	color: var(--fb-ink);
}

.fb-cta-copy p {
	font-size: 15px;
	color: var(--fb-muted);
	margin: 0;
	max-width: 520px;
}

/* ==========================================================================
   9. Footer Redesign (Soft Rounded Layout & Newsletter Pill)
   ========================================================================== */
.fb-footer {
	background: #181b16;
	color: #edeae2;
	border-top: 1px solid #2b2f27;
	padding: 64px 32px 32px;
	content-visibility: auto;
	contain-intrinsic-size: auto none auto 400px;
}

.fb-footer-inner {
	max-width: 1320px;
	margin: 0 auto;
}

.fb-footer-grid {
	display: grid;
	grid-template-columns: 1.4fr 0.9fr 0.9fr 1.3fr;
	gap: 48px;
	padding-bottom: 48px;
	border-bottom: 1px solid #282c23;
}

.fb-footer .fb-brand {
	color: #ffffff;
}

.fb-footer .fb-brand small {
	color: #94998e;
}

.fb-footer-brand-col p {
	color: #9ea397;
	font-size: 13px;
	margin: 16px 0 24px;
	line-height: 1.6;
	max-width: 320px;
}

.fb-social-pills {
	display: flex;
	align-items: center;
	gap: 12px;
}

.fb-social-icon {
	width: 38px;
	height: 38px;
	border-radius: var(--fb-radius-pill);
	background: #252922;
	color: #c9cebe;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid #363b31;
	transition: all var(--fb-transition-fast);
}

.fb-social-icon:hover {
	background: var(--fb-action);
	color: #ffffff;
	border-color: var(--fb-action);
	transform: translateY(-2px);
}

.fb-footer-col h3 {
	font-family: var(--fb-font-ui);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #ffffff;
	margin: 0 0 20px;
}

.fb-footer-links {
	list-style: none;
	padding: 0;
	margin: 0;
}

.fb-footer-links li {
	margin-bottom: 12px;
}

.fb-footer-links a {
	color: #9ea397;
	font-size: 13px;
	transition: color var(--fb-transition-fast);
}

.fb-footer-links a:hover {
	color: #ffffff;
	padding-left: 3px;
}

.fb-footer-newsletter-col p {
	font-size: 13px;
	color: #9ea397;
	margin: 0 0 16px;
	line-height: 1.5;
}

.fb-newsletter-pill {
	display: flex;
	background: #252922;
	border: 1px solid #383e32;
	border-radius: var(--fb-radius-pill);
	padding: 4px;
	box-shadow: var(--fb-shadow-xs);
	margin-bottom: 8px;
}

.fb-newsletter-pill input[type="email"] {
	flex: 1;
	background: transparent;
	border: none;
	padding: 8px 16px;
	color: #ffffff;
	font-size: 12px;
	outline: none;
}

.fb-newsletter-pill input[type="email"]::placeholder {
	color: #7d8276;
}

.fb-newsletter-pill button {
	background: var(--fb-action);
	color: #ffffff;
	border: none;
	border-radius: var(--fb-radius-pill);
	padding: 8px 18px;
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	transition: background var(--fb-transition-fast);
}

.fb-newsletter-pill button:hover {
	background: var(--fb-action-hover);
}

.fb-subtext {
	font-size: 11px;
	color: #72776c;
}

.fb-footer-bottom {
	padding-top: 28px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 12px;
	color: #83887d;
}

.fb-footer-copy {
	display: flex;
	align-items: center;
	gap: 8px;
	flex-wrap: wrap;
}

.fb-sep {
	color: #4c5246;
}

.fb-footer-badges {
	display: flex;
	align-items: center;
	gap: 10px;
}

.fb-badge-pill {
	background: #232720;
	color: #a4a99d;
	font-size: 10px;
	font-weight: 600;
	letter-spacing: 0.04em;
	padding: 4px 12px;
	border-radius: var(--fb-radius-pill);
	border: 1px solid #33382d;
}

/* ==========================================================================
   10. WooCommerce Shop Catalog & Filter Pills
   ========================================================================== */
.woocommerce-products-header {
	padding: 24px 0 32px !important;
	border-bottom: 1px solid var(--fb-line);
	margin-bottom: 32px;
}

.woocommerce-products-header h1 {
	font-size: 42px;
	margin: 0 0 10px;
}

.storefront-sorting {
	margin-bottom: 28px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 16px;
}

.woocommerce-ordering select {
	border-radius: var(--fb-radius-pill);
	border: 1px solid var(--fb-line);
	background: var(--fb-surface);
	padding: 8px 18px;
	font-size: 13px;
	box-shadow: var(--fb-shadow-xs);
	outline: none;
	cursor: pointer;
}

/* ==========================================================================
   11. WooCommerce Product Detail Page (Modern Rounded Layout)
   ========================================================================== */
.single-product div.product {
	background: var(--fb-surface);
	border-radius: var(--fb-radius-xl);
	padding: 40px;
	border: 1px solid var(--fb-line);
	box-shadow: var(--fb-shadow-md);
	margin-bottom: 48px;
}

.single-product .woocommerce-product-gallery {
	border-radius: var(--fb-radius-lg);
	overflow: hidden;
}

.single-product .woocommerce-product-gallery img {
	border-radius: var(--fb-radius-lg);
	box-shadow: var(--fb-shadow-sm);
}

.single-product .product_title {
	font-size: 38px;
	line-height: 1.15;
	margin-bottom: 12px;
}

.single-product .price {
	font-size: 24px !important;
	font-weight: 700;
	color: var(--fb-action);
	margin-bottom: 24px;
}

.single-product form.cart {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-top: 24px;
	padding-top: 24px;
	border-top: 1px solid var(--fb-line);
}

.single-product .quantity input.qty {
	border-radius: var(--fb-radius-pill);
	border: 1.5px solid var(--fb-line);
	background: var(--fb-surface-subtle);
	width: 64px;
	height: 48px;
	text-align: center;
	font-size: 15px;
	font-weight: 600;
	padding: 0;
}

.single-product button.single_add_to_cart_button {
	background: var(--fb-action) !important;
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill) !important;
	min-height: 48px;
	padding: 12px 32px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	box-shadow: 0 8px 24px -4px rgba(162, 75, 49, 0.35) !important;
	transition: all var(--fb-transition-smooth) !important;
}

.single-product button.single_add_to_cart_button:hover {
	background: var(--fb-action-hover) !important;
	transform: translateY(-2px);
	box-shadow: var(--fb-shadow-hover) !important;
}

/* Tabs & Accordions */
.woocommerce-tabs ul.tabs {
	border-bottom: 1px solid var(--fb-line) !important;
	padding: 0 !important;
	margin: 0 0 24px !important;
	display: flex;
	gap: 12px;
}

.woocommerce-tabs ul.tabs li {
	background: transparent !important;
	border: none !important;
	border-radius: var(--fb-radius-pill) !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce-tabs ul.tabs li a {
	display: inline-block;
	padding: 10px 20px;
	font-size: 13px;
	font-weight: 600;
	color: var(--fb-muted);
	border-radius: var(--fb-radius-pill);
	transition: all var(--fb-transition-fast);
}

.woocommerce-tabs ul.tabs li.active a {
	background: var(--fb-action-subtle);
	color: var(--fb-action);
}

/* ==========================================================================
   12. WooCommerce Cart & Checkout Pages
   ========================================================================== */
.woocommerce-cart table.cart,
.woocommerce-checkout #order_review {
	background: var(--fb-surface);
	border-radius: var(--fb-radius-lg);
	border: 1px solid var(--fb-line);
	box-shadow: var(--fb-shadow-sm);
	overflow: hidden;
}

table.cart th, table.cart td {
	padding: 16px 20px;
	border-color: var(--fb-line) !important;
}

table.cart img {
	border-radius: var(--fb-radius-sm);
}

.cart_totals {
	background: var(--fb-surface);
	border-radius: var(--fb-radius-lg);
	padding: 28px;
	border: 1px solid var(--fb-line);
	box-shadow: var(--fb-shadow-sm);
}

.cart_totals h2 {
	font-size: 24px;
	margin-top: 0;
}

.wc-proceed-to-checkout a.checkout-button {
	background: var(--fb-action) !important;
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill) !important;
	padding: 14px 28px !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	text-align: center;
	display: block;
	box-shadow: 0 8px 24px -4px rgba(162, 75, 49, 0.35);
	transition: all var(--fb-transition-smooth);
}

.wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--fb-action-hover) !important;
	transform: translateY(-2px);
	box-shadow: var(--fb-shadow-hover);
}

/* Auth Access Container */
.fb-access {
	max-width: 520px;
	margin: 50px auto;
	background: var(--fb-surface);
	border-radius: var(--fb-radius-xl);
	padding: 44px;
	border: 1px solid var(--fb-line);
	box-shadow: var(--fb-shadow-md);
	text-align: center;
}

.fb-access h2 {
	font-size: 34px;
	margin: 8px 0 16px;
}

.fb-access p {
	color: var(--fb-muted);
	font-size: 14px;
	line-height: 1.6;
}

.fb-access .fb-button-pill {
	width: 100%;
	margin: 24px 0 16px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	background: #1f221e;
	color: #ffffff;
}

.fb-access .fb-button-pill:hover {
	background: #000000;
}

.fb-access .fb-small {
	font-size: 11px;
	color: #8c9185;
	margin-bottom: 20px;
}

/* ==========================================================================
   13. Responsive Media Queries
   ========================================================================== */
@media (max-width: 1080px) {
	.fb-hero-card {
		grid-template-columns: 1fr;
		padding: 32px;
		gap: 28px;
	}
	.fb-hero-copy h1 {
		font-size: 42px;
	}
	.fb-value-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.fb-category-grid {
		grid-template-columns: repeat(2, 1fr);
	}
	.woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
	}
	.fb-footer-grid {
		grid-template-columns: 1fr 1fr;
		gap: 36px;
	}
}

@media (max-width: 768px) {
	.col-full {
		padding: 0 18px;
	}
	.fb-topline {
		font-size: 11px;
		padding: 8px 18px;
		text-align: center;
	}
	.fb-topline a {
		display: none;
	}
	.fb-header-main {
		padding: 14px 18px;
		flex-wrap: wrap;
		gap: 14px;
	}
	.fb-search {
		order: 3;
		max-width: 100%;
		flex-basis: 100%;
	}
	.fb-account-links {
		gap: 10px;
	}
	.fb-brand {
		font-size: 26px;
	}
	.fb-brand small {
		font-size: 8px;
		letter-spacing: 1.5px;
	}
	.fb-hero-card {
		padding: 24px;
		border-radius: var(--fb-radius-lg);
	}
	.fb-hero-copy h1 {
		font-size: 34px;
	}
	.fb-hero-copy p {
		font-size: 14px;
	}
	.fb-section-header h2 {
		font-size: 26px;
	}
	.fb-value-grid {
		grid-template-columns: 1fr;
		gap: 12px;
	}
	.fb-category-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 14px;
	}
	.fb-cat-info {
		padding: 14px;
	}
	.fb-cat-text h3 {
		font-size: 16px;
	}
	.fb-cat-text p {
		display: none;
	}
	.woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 16px !important;
	}
	.fb-cta-card {
		flex-direction: column;
		padding: 28px;
		text-align: center;
	}
	.fb-cta-copy h2 {
		font-size: 26px;
	}
	.fb-footer {
		padding: 44px 18px 24px;
	}
	.fb-footer-grid {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.fb-footer-bottom {
		flex-direction: column;
		gap: 16px;
		text-align: center;
	}
}

/* ==========================================================================
   14. Motion & Accessibility
   ========================================================================== */
@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
	*,
	*::before,
	*::after {
		animation-duration: 0.001ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.001ms !important;
	}
}

/* ==========================================================================
   15. FalishBaba Identity & MSG91 Verification Card
   ========================================================================== */
.fb-access-card {
	max-width: 540px;
	margin: 40px auto 60px;
	background: var(--fb-surface);
	border: 1px solid var(--fb-line);
	border-radius: var(--fb-radius-xl);
	padding: 44px;
	box-shadow: var(--fb-shadow-lg);
	text-align: center;
	position: relative;
	overflow: hidden;
}

.fb-access-card.is-logged-in {
	text-align: center;
}

.fb-access-actions {
	display: flex;
	gap: 16px;
	justify-content: center;
	margin-top: 24px;
	flex-wrap: wrap;
}

.fb-auth-header h2 {
	font-size: 32px;
	margin: 8px 0 12px;
	color: var(--fb-ink);
}

.fb-auth-header p {
	font-size: 14px;
	color: var(--fb-muted);
	line-height: 1.5;
	margin-bottom: 28px;
}

.fb-google-btn {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	background: #ffffff;
	color: #1f221e;
	border: 1.5px solid #d9d6cb;
	border-radius: var(--fb-radius-pill);
	padding: 13px 24px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04);
	transition: all var(--fb-transition-fast);
}

.fb-google-btn:hover {
	border-color: #a49f92;
	background: #faf9f6;
	transform: translateY(-2px);
	box-shadow: var(--fb-shadow-sm);
}

.fb-staging-hint {
	margin-top: 14px;
}

.fb-staging-btn {
	background: transparent;
	border: 1px dashed var(--fb-action);
	color: var(--fb-action);
	padding: 8px 18px;
	border-radius: var(--fb-radius-pill);
	font-size: 12px;
	font-weight: 600;
	cursor: pointer;
	transition: all var(--fb-transition-fast);
}

.fb-staging-hint,
.fb-staging-btn {
	display: none !important;
}

.fb-auth-security-notice {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	font-size: 11px;
	color: var(--fb-muted);
	margin-top: 24px;
}

/* User Verified Chip */
.fb-user-chip {
	display: flex;
	align-items: center;
	gap: 12px;
	background: var(--fb-surface-subtle);
	border: 1px solid var(--fb-line);
	border-radius: var(--fb-radius-pill);
	padding: 8px 16px;
	margin-bottom: 24px;
	text-align: left;
}

.fb-user-chip strong {
	display: block;
	font-size: 13px;
	color: var(--fb-ink);
}

.fb-user-chip span {
	font-size: 11px;
	color: var(--fb-muted);
}

.fb-badge-verified {
	margin-left: auto;
	background: #e8f5e9;
	color: #2e7d32;
	font-size: 10px;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: var(--fb-radius-pill);
}

.fb-phone-prompt h3 {
	font-size: 20px;
	margin: 0 0 6px;
}

.fb-phone-prompt p {
	font-size: 12px;
	color: var(--fb-muted);
	margin: 0 0 20px;
}

.fb-input-prefix-group {
	display: flex;
	align-items: center;
	background: #ffffff;
	border: 1.5px solid var(--fb-line);
	border-radius: var(--fb-radius-pill);
	padding: 4px 18px;
	margin-bottom: 16px;
	box-shadow: var(--fb-shadow-xs);
	transition: border-color var(--fb-transition-fast);
}

.fb-input-prefix-group:focus-within {
	border-color: var(--fb-action);
}

.fb-country-code {
	font-size: 14px;
	font-weight: 700;
	color: var(--fb-ink);
	margin-right: 10px;
	padding-right: 10px;
	border-right: 1px solid var(--fb-line);
}

.fb-input-prefix-group input[type="tel"] {
	flex: 1;
	border: none;
	background: transparent;
	font-size: 15px;
	padding: 10px 0;
	outline: none;
	box-shadow: none;
}

/* Luxury Core Button System (.fb-button, .fb-button-primary, .fb-button-ghost) */
.fb-button,
.fb-button-primary,
.fb-phone-input-wrap button,
.fb-otp-input-wrap button[type="submit"],
#fb-send-otp-btn,
#fb-verify-otp-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	width: 100% !important;
	height: 52px !important;
	padding: 0 28px !important;
	background: var(--fb-action, #a24b31) !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: var(--fb-radius-pill, 9999px) !important;
	font-family: var(--fb-font-ui, 'Plus Jakarta Sans', sans-serif) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: 0.01em !important;
	cursor: pointer !important;
	box-shadow: 0 8px 24px rgba(162, 75, 49, 0.28) !important;
	transition: all var(--fb-transition-smooth, 0.25s ease) !important;
	text-decoration: none !important;
	outline: none !important;
	box-sizing: border-box !important;
}

.fb-button:hover,
.fb-button-primary:hover,
.fb-phone-input-wrap button:hover,
.fb-otp-input-wrap button[type="submit"]:hover,
#fb-send-otp-btn:hover,
#fb-verify-otp-btn:hover {
	background: var(--fb-action-hover, #8a3c25) !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 28px rgba(162, 75, 49, 0.38) !important;
}

.fb-button:active,
.fb-button-primary:active,
#fb-send-otp-btn:active,
#fb-verify-otp-btn:active {
	transform: translateY(0) !important;
	box-shadow: 0 4px 14px rgba(162, 75, 49, 0.25) !important;
}

.fb-button:disabled,
.fb-button-primary:disabled,
#fb-send-otp-btn:disabled,
#fb-verify-otp-btn:disabled {
	opacity: 0.6 !important;
	cursor: not-allowed !important;
	transform: none !important;
	box-shadow: none !important;
}

.fb-button svg,
#fb-send-otp-btn svg,
#fb-verify-otp-btn svg {
	transition: transform var(--fb-transition-fast, 0.2s ease) !important;
}

.fb-button:hover svg,
#fb-send-otp-btn:hover svg,
#fb-verify-otp-btn:hover svg {
	transform: translateX(3px) !important;
}

.fb-button-ghost {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 10px !important;
	height: 52px !important;
	padding: 0 28px !important;
	background: transparent !important;
	color: var(--fb-ink, #1c201a) !important;
	border: 1.5px solid var(--fb-line, #e8e5dc) !important;
	border-radius: var(--fb-radius-pill, 9999px) !important;
	font-family: var(--fb-font-ui, 'Plus Jakarta Sans', sans-serif) !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: all var(--fb-transition-smooth, 0.25s ease) !important;
	text-decoration: none !important;
	box-sizing: border-box !important;
}

.fb-button-ghost:hover {
	border-color: var(--fb-action, #a24b31) !important;
	color: var(--fb-action, #a24b31) !important;
	background: rgba(162, 75, 49, 0.04) !important;
	transform: translateY(-2px) !important;
}

.fb-otp-input-wrap {
	margin-top: 16px;
}

.fb-otp-sent-to {
	font-size: 13px;
	color: var(--fb-muted);
	margin-bottom: 14px;
}

/* Segmented 6-Box OTP Inputs */
.fb-otp-segmented-wrap {
	margin-bottom: 20px;
}

.fb-otp-boxes {
	display: flex;
	gap: 10px;
	justify-content: center;
}

.fb-otp-digit {
	width: 46px;
	height: 52px;
	text-align: center;
	font-size: 22px;
	font-weight: 700;
	color: var(--fb-ink);
	background: #ffffff;
	border: 1.5px solid var(--fb-line);
	border-radius: var(--fb-radius-md);
	box-shadow: var(--fb-shadow-xs);
	outline: none;
	transition: border-color var(--fb-transition-fast), box-shadow var(--fb-transition-fast), transform var(--fb-transition-fast);
}

.fb-otp-digit:focus {
	border-color: var(--fb-action);
	box-shadow: 0 0 0 3px rgba(162, 75, 49, 0.12);
	transform: translateY(-2px);
}

.fb-otp-digit.is-error {
	border-color: #d32f2f !important;
	animation: fb-shake 0.4s ease-in-out;
}

@keyframes fb-shake {
	0%, 100% { transform: translateX(0); }
	20%, 60% { transform: translateX(-4px); }
	40%, 80% { transform: translateX(4px); }
}

@media (max-width: 480px) {
	.fb-otp-boxes {
		gap: 6px;
	}
	.fb-otp-digit {
		width: 40px;
		height: 48px;
		font-size: 19px;
	}
}

.fb-otp-resend {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 8px;
	margin-top: 14px;
	font-size: 12px;
	color: var(--fb-muted);
}

.fb-otp-resend button {
	background: transparent;
	border: none;
	color: var(--fb-action);
	font-weight: 600;
	cursor: pointer;
	text-decoration: underline;
}

.fb-status-box {
	margin-top: 16px;
	padding: 10px 16px;
	border-radius: var(--fb-radius-md);
	font-size: 12px;
}

.fb-status-box.is-success {
	background: #e8f5e9;
	color: #1b5e20;
	border: 1px solid #c8e6c9;
}

.fb-status-box.is-error {
	background: #ffebee;
	color: #b71c1c;
	border: 1px solid #ffcdd2;
}

/* ==========================================================================
   SLIDE 4: SLIDE-OVER SHOPPING BAG DRAWER & CART EXPERIENCE
   ========================================================================== */

/* Background Overlay */
.fb-cart-overlay {
	position: fixed;
	inset: 0;
	background: rgba(28, 32, 26, 0.45);
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	z-index: 99998;
	opacity: 0;
	pointer-events: none;
	transition: opacity 350ms cubic-bezier(0.16, 1, 0.3, 1);
}

.fb-cart-overlay.is-open {
	opacity: 1;
	pointer-events: auto;
}

body.fb-drawer-active {
	overflow: hidden !important;
}

/* ==========================================================================
   SLIDE 4: FLOATING LUXURY SHOPPING BAG MODAL (Exact Stitch Match)
   ========================================================================== */
.fb-cart-drawer {
	position: fixed;
	top: 24px;
	right: 24px;
	bottom: 24px;
	width: 440px;
	max-width: calc(100vw - 32px);
	height: calc(100vh - 48px);
	background: rgba(246, 243, 237, 0.96);
	backdrop-filter: blur(28px);
	-webkit-backdrop-filter: blur(28px);
	border-radius: 28px;
	border: 1px solid rgba(255, 255, 255, 0.85);
	box-shadow: 0 24px 60px rgba(35, 30, 25, 0.18);
	transform: translate3d(calc(100% + 40px), 0, 0);
	transition: transform 380ms cubic-bezier(0.16, 1, 0.3, 1), visibility 380ms;
	display: flex;
	flex-direction: column;
	overflow: hidden;
	z-index: 99999;
	visibility: hidden;
	pointer-events: none;
}

.fb-cart-drawer.is-open {
	transform: translate3d(0, 0, 0);
	visibility: visible;
	pointer-events: auto;
}

.fb-cart-drawer.is-loading {
	opacity: 0.65;
	pointer-events: none;
}

.fb-cart-drawer-content {
	display: flex;
	flex-direction: column;
	height: 100%;
	width: 100%;
}

/* Drawer Header */
.fb-drawer-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 24px 28px 16px;
}

.fb-drawer-title {
	font-family: var(--fb-font-ui);
	font-size: 22px;
	font-weight: 700;
	color: var(--fb-ink);
	margin: 0;
	letter-spacing: -0.01em;
}

.fb-drawer-close {
	background: transparent;
	border: none;
	color: var(--fb-ink);
	cursor: pointer;
	padding: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: transform var(--fb-transition-fast), color var(--fb-transition-fast);
}

.fb-drawer-close:hover {
	color: var(--fb-action);
	transform: scale(1.15);
}

/* Shipping Meter */
.fb-shipping-meter {
	padding: 0 28px 18px;
}

.fb-meter-track {
	width: 100%;
	height: 6px;
	background: #8c4d32;
	border-radius: var(--fb-radius-pill);
	position: relative;
	display: flex;
	align-items: center;
}

.fb-meter-fill {
	height: 100%;
	background: #10b981;
	border-radius: var(--fb-radius-pill);
	transition: width 400ms cubic-bezier(0.16, 1, 0.3, 1);
}

.fb-meter-gift-icon {
	position: absolute;
	right: -4px;
	top: -9px;
	font-size: 15px;
}

.fb-meter-info {
	text-align: center;
	font-size: 13px;
	color: var(--fb-ink);
	margin-top: 10px;
}

.fb-highlight-green {
	color: #059669;
	font-weight: 600;
}

/* Body & Items */
.fb-drawer-body {
	flex: 1;
	overflow-y: auto;
	padding: 8px 24px;
}

.fb-drawer-items {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.fb-drawer-item {
	display: flex;
	align-items: center;
	gap: 14px;
	background: #ffffff;
	border-radius: 20px;
	padding: 14px 16px;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.03);
	border: 1px solid rgba(0, 0, 0, 0.02);
}

.fb-item-thumb {
	width: 68px;
	height: 68px;
	border-radius: 14px;
	overflow: hidden;
	background: #f0ece1;
	flex-shrink: 0;
}

.fb-item-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.fb-item-details {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.fb-item-info-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 8px;
}

.fb-item-title {
	font-family: var(--fb-font-ui);
	font-size: 14px;
	font-weight: 600;
	color: var(--fb-ink);
	margin: 0;
	line-height: 1.3;
}

.fb-item-title a {
	color: var(--fb-ink);
}

.fb-item-remove {
	background: transparent;
	border: none;
	color: #999388;
	cursor: pointer;
	padding: 2px;
	display: flex;
	align-items: center;
	transition: color 150ms ease;
}

.fb-item-remove:hover {
	color: #b71c1c;
}

.fb-item-bottom-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.fb-item-price {
	font-size: 14px;
	font-weight: 600;
	color: var(--fb-ink);
}

.fb-qty-stepper {
	display: inline-flex;
	align-items: center;
	background: #f5f3ec;
	border: 1px solid #e8e4d8;
	border-radius: var(--fb-radius-pill);
	height: 28px;
	padding: 0 6px;
	gap: 8px;
}

.fb-qty-minus,
.fb-qty-plus {
	background: transparent;
	border: none;
	font-size: 14px;
	font-weight: 600;
	color: var(--fb-ink);
	cursor: pointer;
	padding: 0 4px;
}

.fb-qty-val {
	font-size: 13px;
	font-weight: 600;
	color: var(--fb-ink);
	min-width: 14px;
	text-align: center;
}

/* Footer & Promo */
.fb-drawer-footer {
	padding: 16px 28px 24px;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
	background: transparent;
}

.fb-drawer-promo {
	margin-bottom: 16px;
}

.fb-promo-label {
	display: block;
	font-size: 13px;
	font-weight: 500;
	color: var(--fb-ink);
	margin-bottom: 8px;
}

.fb-promo-capsule {
	display: flex;
	align-items: center;
	background: #f0ece3;
	border-radius: var(--fb-radius-pill);
	padding: 4px 4px 4px 16px;
}

.fb-promo-capsule input {
	flex: 1;
	background: transparent;
	border: none;
	font-size: 13px;
	color: var(--fb-ink);
	outline: none;
}

.fb-promo-apply {
	background: var(--fb-action);
	color: #ffffff;
	border: none;
	border-radius: var(--fb-radius-pill);
	padding: 8px 18px;
	font-size: 13px;
	font-weight: 600;
	cursor: pointer;
	transition: background var(--fb-transition-fast);
}

.fb-promo-apply:hover {
	background: var(--fb-action-hover);
}

.fb-drawer-totals {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin-bottom: 16px;
}

.fb-total-row {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	color: #6a665d;
}

.fb-total-row.fb-total-grand {
	font-size: 16px;
	font-weight: 700;
	color: var(--fb-ink);
	padding-top: 8px;
	margin-top: 4px;
}

.fb-checkout-cta {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: var(--fb-action) !important;
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill) !important;
	height: 48px !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	box-shadow: 0 8px 22px rgba(162, 75, 49, 0.3) !important;
	transition: all var(--fb-transition-smooth) !important;
}

.fb-checkout-cta:hover {
	background: var(--fb-action-hover) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 28px rgba(162, 75, 49, 0.4) !important;
}

@media (max-width: 600px) {
	.fb-cart-drawer {
		top: 12px;
		right: 12px;
		bottom: 12px;
		left: auto;
		width: calc(100vw - 24px);
		max-width: calc(100vw - 24px);
		height: calc(100vh - 24px);
		border-radius: 24px;
	}
}

/* ==========================================================================
   ENHANCE WOOCOMMERCE /cart/ PAGE (Soft-Curved Slide 4 Alignment)
   ========================================================================== */

.woocommerce-cart .entry-title {
	font-family: var(--fb-font-serif) !important;
	font-size: 32px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	margin-bottom: 24px !important;
}

.woocommerce-cart table.shop_table {
	border-collapse: separate !important;
	border-spacing: 0 !important;
	border: 1px solid var(--fb-line) !important;
	border-radius: var(--fb-radius-xl) !important;
	background: #ffffff !important;
	overflow: hidden !important;
	box-shadow: var(--fb-shadow-sm) !important;
}

.woocommerce-cart table.shop_table th {
	background: #faf8f2 !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.5px !important;
	color: var(--fb-muted) !important;
	padding: 16px 20px !important;
	border-bottom: 1px solid var(--fb-line) !important;
}

.woocommerce-cart table.shop_table td {
	padding: 18px 20px !important;
	border-bottom: 1px solid var(--fb-line) !important;
	font-size: 14px !important;
}

.woocommerce-cart table.shop_table tr:last-child td {
	border-bottom: none !important;
}

.woocommerce-cart table.shop_table td.product-thumbnail img {
	border-radius: var(--fb-radius-md) !important;
	border: 1px solid var(--fb-line) !important;
	width: 68px !important;
	height: 68px !important;
	object-fit: cover !important;
}

.woocommerce-cart table.shop_table td.product-name a {
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	font-size: 15px !important;
}

.woocommerce-cart table.shop_table td.product-price,
.woocommerce-cart table.shop_table td.product-subtotal {
	font-weight: 700 !important;
	color: var(--fb-action) !important;
}

.woocommerce-cart .quantity input.qty {
	border-radius: var(--fb-radius-pill) !important;
	border: 1px solid var(--fb-line) !important;
	background: #faf8f2 !important;
	padding: 6px 12px !important;
	font-weight: 600 !important;
}

.woocommerce-cart .coupon {
	display: flex !important;
	gap: 10px !important;
	align-items: center !important;
}

.woocommerce-cart .coupon input#coupon_code {
	border-radius: var(--fb-radius-pill) !important;
	border: 1px solid var(--fb-line) !important;
	padding: 10px 18px !important;
	font-size: 13px !important;
}

.woocommerce-cart button[name="apply_coupon"],
.woocommerce-cart button[name="update_cart"] {
	border-radius: var(--fb-radius-pill) !important;
	background: var(--fb-ink) !important;
	color: #ffffff !important;
	font-weight: 600 !important;
	padding: 10px 22px !important;
	border: none !important;
	transition: background 200ms ease !important;
}

.woocommerce-cart button[name="apply_coupon"]:hover,
.woocommerce-cart button[name="update_cart"]:hover {
	background: var(--fb-action) !important;
}

.woocommerce-cart .cart_totals {
	background: #ffffff !important;
	border: 1px solid var(--fb-line) !important;
	border-radius: var(--fb-radius-xl) !important;
	padding: 24px 28px !important;
	box-shadow: var(--fb-shadow-sm) !important;
}

.woocommerce-cart .cart_totals h2 {
	font-family: var(--fb-font-serif) !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	margin-bottom: 16px !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
	border-radius: var(--fb-radius-pill) !important;
	background: var(--fb-action) !important;
	color: #ffffff !important;
	font-weight: 600 !important;
	font-size: 16px !important;
	padding: 16px 28px !important;
	box-shadow: 0 8px 24px rgba(200, 90, 50, 0.25) !important;
	display: block !important;
	text-align: center !important;
	transition: all 250ms cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover {
	background: var(--fb-action-hover) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 28px rgba(200, 90, 50, 0.35) !important;
}

/* ==========================================================================
   LUXURY JAPANDI CHECKOUT EXPERIENCE (Matching Stitch Design Aesthetics)
   ========================================================================== */

/* Main Page Container & Layout */
.woocommerce-checkout {
	background: var(--fb-bg) !important;
	min-height: 100vh;
}

.woocommerce-checkout .site-content {
	padding-top: 36px !important;
	padding-bottom: 90px !important;
}

.woocommerce-checkout .col-full {
	max-width: 1220px !important;
	margin: 0 auto !important;
	padding: 0 24px !important;
}

/* Breadcrumb & Title */
.woocommerce-checkout .woocommerce-breadcrumb {
	font-family: var(--fb-font-ui);
	font-size: 13px;
	color: var(--fb-muted);
	margin-bottom: 14px;
	display: flex;
	align-items: center;
	gap: 8px;
}

.woocommerce-checkout .woocommerce-breadcrumb a {
	color: var(--fb-ink);
	text-decoration: none;
	transition: color var(--fb-transition-fast);
}

.woocommerce-checkout .woocommerce-breadcrumb a:hover {
	color: var(--fb-action);
}

.woocommerce-checkout .entry-header {
	margin-bottom: 32px;
	text-align: left;
}

.woocommerce-checkout .entry-title {
	font-family: var(--fb-font-serif) !important;
	font-size: 38px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	letter-spacing: -0.02em !important;
	margin: 0 0 8px !important;
}

.woocommerce-checkout .entry-header::after {
	content: "Review your selected pieces and complete your order with secure checkout.";
	display: block;
	font-family: var(--fb-font-ui);
	font-size: 15px;
	color: var(--fb-muted);
	margin-top: 6px;
}

/* Luxury Info & Notice Banners (Full-Width Grid Span & Japandi Palette) */
.woocommerce-checkout .woocommerce-NoticeGroup,
.woocommerce-checkout .woocommerce-NoticeGroup-checkout {
	grid-column: 1 / -1 !important;
	width: 100% !important;
	margin-bottom: 28px !important;
}

.woocommerce-checkout .woocommerce-info,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-error {
	background: #ffffff !important;
	border: 1px solid var(--fb-line) !important;
	border-left: 4px solid var(--fb-action) !important;
	border-radius: 18px !important;
	padding: 18px 24px 18px 54px !important;
	color: var(--fb-ink) !important;
	font-size: 14px !important;
	box-shadow: 0 4px 16px rgba(28, 32, 26, 0.04) !important;
	margin-bottom: 24px !important;
	position: relative !important;
	display: block !important;
	line-height: 1.5 !important;
	box-sizing: border-box !important;
}

.woocommerce-checkout .woocommerce-error {
	background: #fdf6f5 !important;
	border-color: rgba(162, 75, 49, 0.22) !important;
	border-left-color: var(--fb-action) !important;
	list-style: none !important;
}

.woocommerce-checkout .woocommerce-info::before,
.woocommerce-checkout .woocommerce-message::before,
.woocommerce-checkout .woocommerce-error::before {
	color: var(--fb-action) !important;
	position: absolute !important;
	left: 20px !important;
	top: 20px !important;
	transform: none !important;
	margin: 0 !important;
	font-size: 18px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.woocommerce-checkout .woocommerce-error li {
	list-style: none !important;
	margin: 0 0 8px !important;
	padding: 0 !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.5 !important;
	color: var(--fb-ink) !important;
}

.woocommerce-checkout .woocommerce-error li:last-child {
	margin-bottom: 0 !important;
}

/* Fix link color inside error and info notices so text is NEVER invisible white */
.woocommerce-checkout .woocommerce-info a,
.woocommerce-checkout .woocommerce-error a,
.woocommerce-checkout .woocommerce-error a:visited,
.woocommerce-error a,
.woocommerce-error a:visited {
	color: var(--fb-action) !important;
	font-weight: 600 !important;
	text-decoration: underline !important;
	text-underline-offset: 3px !important;
	transition: color var(--fb-transition-fast) !important;
}

.woocommerce-checkout .woocommerce-info a:hover,
.woocommerce-checkout .woocommerce-error a:hover,
.woocommerce-error a:hover {
	color: var(--fb-action-hover) !important;
}

.woocommerce-checkout .woocommerce-error strong,
.woocommerce-error strong {
	color: var(--fb-ink) !important;
	font-weight: 700 !important;
}

/* Invalid / Missing Required Field Highlights */
.woocommerce-checkout .woocommerce-invalid input.input-text,
.woocommerce-checkout .woocommerce-invalid select {
	border-color: #d32f2f !important;
	background-color: #fff9f9 !important;
	box-shadow: 0 0 0 3px rgba(211, 47, 47, 0.12) !important;
}

/* Coupon form dropdown */
.woocommerce-checkout form.checkout_coupon {
	background: #ffffff !important;
	border: 1px solid var(--fb-line) !important;
	border-radius: 20px !important;
	padding: 20px 24px !important;
	box-shadow: var(--fb-shadow-sm) !important;
	margin-bottom: 32px !important;
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	align-items: center !important;
}

.woocommerce-checkout form.checkout_coupon input.input-text {
	border-radius: var(--fb-radius-pill) !important;
	border: 1.5px solid var(--fb-line) !important;
	background: #faf8f2 !important;
	padding: 10px 18px !important;
	font-size: 14px !important;
	min-width: 240px !important;
	flex: 1 !important;
}

.woocommerce-checkout form.checkout_coupon button.button {
	border-radius: var(--fb-radius-pill) !important;
	background: var(--fb-ink) !important;
	color: #ffffff !important;
	font-weight: 600 !important;
	padding: 11px 24px !important;
	border: none !important;
	cursor: pointer !important;
	transition: background var(--fb-transition-fast) !important;
}

.woocommerce-checkout form.checkout_coupon button.button:hover {
	background: var(--fb-action) !important;
}

/* Two-Column Editorial Grid Layout */
@media (min-width: 992px) {
	.woocommerce-checkout form.woocommerce-checkout {
		display: grid !important;
		grid-template-columns: 1.25fr 1fr !important;
		gap: 36px !important;
		align-items: start !important;
	}

	.woocommerce-checkout #customer_details {
		grid-column: 1 !important;
		width: 100% !important;
		float: none !important;
		margin: 0 !important;
	}

	.woocommerce-checkout #order_review_heading {
		display: none !important;
	}

	.woocommerce-checkout #order_review {
		grid-column: 2 !important;
		width: 100% !important;
		float: none !important;
		position: sticky !important;
		top: 96px !important;
		margin: 0 !important;
	}
}

/* Customer Details Card */
.woocommerce-checkout #customer_details {
	background: #ffffff !important;
	border-radius: 28px !important;
	padding: 36px 36px 40px !important;
	border: 1px solid var(--fb-line) !important;
	box-shadow: 0 10px 30px rgba(28, 32, 26, 0.04) !important;
}

.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-shipping-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3 {
	font-family: var(--fb-font-serif) !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	letter-spacing: -0.01em !important;
	margin: 0 0 20px !important;
	padding-bottom: 12px !important;
	border-bottom: 1px solid var(--fb-line) !important;
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
}

.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields {
	margin-top: 32px !important;
}

/* Form Fields Grid & Pill Formatting */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
	display: grid !important;
	grid-template-columns: 1fr 1fr !important;
	gap: 16px !important;
}

.woocommerce-checkout .form-row {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce-checkout .form-row-wide,
.woocommerce-checkout .woocommerce-additional-fields .form-row {
	grid-column: 1 / -1 !important;
}

.woocommerce-checkout .form-row label {
	display: block !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	margin-bottom: 7px !important;
	letter-spacing: 0.01em !important;
}

.woocommerce-checkout .form-row label .required {
	color: var(--fb-action) !important;
	text-decoration: none !important;
	margin-left: 3px !important;
}

.woocommerce-checkout .form-row label .optional {
	color: var(--fb-muted) !important;
	font-weight: 400 !important;
	font-size: 12px !important;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout select,
.woocommerce-checkout textarea {
	width: 100% !important;
	background: #faf8f2 !important;
	border: 1.5px solid var(--fb-line) !important;
	border-radius: 14px !important;
	padding: 13px 18px !important;
	font-size: 14px !important;
	color: var(--fb-ink) !important;
	outline: none !important;
	box-shadow: none !important;
	transition: all var(--fb-transition-fast) !important;
	box-sizing: border-box !important;
}

.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout select:focus,
.woocommerce-checkout textarea:focus {
	background: #ffffff !important;
	border-color: var(--fb-action) !important;
	box-shadow: 0 0 0 3px rgba(162, 75, 49, 0.12) !important;
}

.woocommerce-checkout textarea {
	height: 100px !important;
	resize: vertical !important;
}

/* Select2 Dropdown Styling */
.woocommerce-checkout .select2-container--default .select2-selection--single {
	background-color: #faf8f2 !important;
	border: 1.5px solid var(--fb-line) !important;
	border-radius: 14px !important;
	height: 48px !important;
	padding: 10px 14px !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: var(--fb-ink) !important;
	line-height: 26px !important;
	font-size: 14px !important;
}

.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow {
	height: 46px !important;
	right: 12px !important;
}

/* Right Column: Elevated Order Review Card */
.woocommerce-checkout #order_review {
	background: #ffffff !important;
	border-radius: 28px !important;
	padding: 32px 32px 36px !important;
	border: 1px solid var(--fb-line) !important;
	box-shadow: 0 12px 36px rgba(28, 32, 26, 0.06) !important;
}

.woocommerce-checkout #order_review::before {
	content: "Order Summary";
	display: block;
	font-family: var(--fb-font-serif);
	font-size: 24px;
	font-weight: 600;
	color: var(--fb-ink);
	letter-spacing: -0.01em;
	margin-bottom: 20px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--fb-line);
}

/* Order Review Table */
.woocommerce-checkout table.woocommerce-checkout-review-order-table {
	border-collapse: separate !important;
	border-spacing: 0 !important;
	width: 100% !important;
	border: none !important;
	margin-bottom: 20px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table th,
.woocommerce-checkout table.woocommerce-checkout-review-order-table td {
	border: none !important;
	padding: 12px 0 !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table thead th {
	font-family: var(--fb-font-ui) !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
	color: var(--fb-muted) !important;
	border-bottom: 1px solid var(--fb-line) !important;
	padding-bottom: 12px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.cart_item td {
	border-bottom: 1px solid rgba(0, 0, 0, 0.04) !important;
	padding: 14px 0 !important;
	font-size: 14px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table td.product-name {
	color: var(--fb-ink) !important;
	font-weight: 600 !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table .product-quantity {
	display: inline-block !important;
	background: #f4efe6 !important;
	color: #6a6458 !important;
	font-size: 12px !important;
	font-weight: 600 !important;
	padding: 2px 8px !important;
	border-radius: var(--fb-radius-pill) !important;
	margin-left: 6px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table td.product-total {
	text-align: right !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
}

/* Subtotal & Totals Rows */
.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot th {
	font-weight: 500 !important;
	color: var(--fb-muted) !important;
	font-size: 14px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tfoot td {
	text-align: right !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	font-size: 14px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total th {
	font-size: 17px !important;
	font-weight: 700 !important;
	color: var(--fb-ink) !important;
	border-top: 1.5px dashed var(--fb-line) !important;
	padding-top: 18px !important;
}

.woocommerce-checkout table.woocommerce-checkout-review-order-table tr.order-total td {
	font-size: 22px !important;
	font-weight: 700 !important;
	color: var(--fb-action) !important;
	border-top: 1.5px dashed var(--fb-line) !important;
	padding-top: 18px !important;
}

/* Payment Gateways Section */
.woocommerce-checkout #payment {
	background: #faf8f2 !important;
	border-radius: 20px !important;
	border: 1px solid var(--fb-line) !important;
	padding: 20px 22px !important;
	margin-top: 24px !important;
}

.woocommerce-checkout #payment ul.payment_methods {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: 1px solid var(--fb-line) !important;
	padding-bottom: 16px !important;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method {
	margin-bottom: 12px !important;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:last-child {
	margin-bottom: 0 !important;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	cursor: pointer !important;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input[type="radio"] {
	accent-color: var(--fb-action) !important;
	width: 18px !important;
	height: 18px !important;
	margin: 0 !important;
	cursor: pointer !important;
}

.woocommerce-checkout #payment div.payment_box {
	background: #ffffff !important;
	border: 1px solid var(--fb-line) !important;
	border-radius: 14px !important;
	padding: 14px 18px !important;
	margin-top: 10px !important;
	font-size: 13px !important;
	color: #6a6458 !important;
	line-height: 1.5 !important;
	position: relative !important;
}

.woocommerce-checkout #payment div.payment_box::before {
	display: none !important;
}

/* Place Order Button */
.woocommerce-checkout #payment .place-order {
	padding: 16px 0 0 !important;
	margin: 0 !important;
}

.woocommerce-checkout #payment #place_order {
	width: 100% !important;
	height: 54px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: var(--fb-action) !important;
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill) !important;
	border: none !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 16px !important;
	font-weight: 700 !important;
	letter-spacing: 0.3px !important;
	box-shadow: 0 10px 25px rgba(162, 75, 49, 0.32) !important;
	cursor: pointer !important;
	transition: all var(--fb-transition-smooth) !important;
	margin-top: 14px !important;
}

.woocommerce-checkout #payment #place_order:hover {
	background: var(--fb-action-hover) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 14px 30px rgba(162, 75, 49, 0.42) !important;
}

/* Trust & Security Badges under Place Order */
.fb-checkout-trust-badges {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 8px;
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid var(--fb-line);
}

.fb-trust-item {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 11px;
	font-weight: 600;
	color: var(--fb-muted);
}

.fb-trust-item svg {
	color: var(--fb-action);
	flex-shrink: 0;
}

/* Responsive adjustments */
@media (max-width: 768px) {
	.woocommerce-checkout #customer_details,
	.woocommerce-checkout #order_review {
		padding: 24px 20px !important;
		border-radius: 20px !important;
	}

	.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
	.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr !important;
	}

	.fb-checkout-trust-badges {
		flex-direction: column;
		align-items: flex-start;
		gap: 8px;
	}
}

/* ==========================================================================
   Gutenberg Block Cart & Checkout Luxury Japandi Theme Harmonization
   ========================================================================== */
.wp-block-woocommerce-cart,
.wp-block-woocommerce-checkout,
.wc-block-cart,
.wc-block-checkout {
	font-family: var(--fb-font-ui, 'Plus Jakarta Sans', sans-serif) !important;
	color: var(--fb-ink, #1c201a) !important;
	overflow: visible !important;
}

/* Eliminate secondary scrollbars inside Gutenberg blocks */
.wc-block-components-sidebar-layout,
.wc-block-checkout__main,
.wc-block-cart__main,
.wc-block-components-sidebar {
	overflow: visible !important;
	overflow-x: clip !important;
}

/* Cart & Checkout Editorial 2-Column Grid */
.wc-block-components-sidebar-layout {
	gap: 36px !important;
}

/* Main Cards */
.wc-block-cart__main,
.wc-block-checkout__main {
	background: #ffffff !important;
	border-radius: 28px !important;
	padding: 32px !important;
	border: 1px solid var(--fb-line, #e8e5dc) !important;
	box-shadow: 0 10px 30px rgba(28, 32, 26, 0.04) !important;
}

/* Sidebar / Order Summary Cards */
.wc-block-components-sidebar {
	background: #ffffff !important;
	border-radius: 28px !important;
	padding: 32px !important;
	border: 1px solid var(--fb-line, #e8e5dc) !important;
	box-shadow: 0 12px 36px rgba(28, 32, 26, 0.06) !important;
}

/* Headings */
.wc-block-checkout__step h2,
.wc-block-components-title,
.wc-block-cart__totals-title {
	font-family: var(--fb-font-serif, 'Playfair Display', serif) !important;
	font-size: 24px !important;
	font-weight: 600 !important;
	color: var(--fb-ink, #1c201a) !important;
	letter-spacing: -0.01em !important;
}

/* Input Fields */
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-combobox .wc-block-components-combobox-control input.components-combobox-control__input,
.wc-block-checkout select {
	background: #faf8f2 !important;
	border: 1.5px solid var(--fb-line, #e8e5dc) !important;
	border-radius: 14px !important;
	padding: 12px 16px !important;
	font-size: 14px !important;
	color: var(--fb-ink, #1c201a) !important;
	transition: all var(--fb-transition-fast, 0.2s ease) !important;
}

.wc-block-components-text-input input:focus,
.wc-block-components-combobox input:focus {
	background: #ffffff !important;
	border-color: var(--fb-action, #a24b31) !important;
	box-shadow: 0 0 0 3px rgba(162, 75, 49, 0.12) !important;
}

/* Primary CTA Buttons */
.wc-block-cart__submit-button,
.wc-block-components-checkout-place-order-button {
	width: 100% !important;
	height: 52px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: var(--fb-action, #a24b31) !important;
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill, 9999px) !important;
	border: none !important;
	font-family: var(--fb-font-ui, 'Plus Jakarta Sans', sans-serif) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	box-shadow: 0 8px 24px rgba(200, 90, 50, 0.25) !important;
	cursor: pointer !important;
	transition: all var(--fb-transition-smooth, 0.25s ease) !important;
	text-decoration: none !important;
}

.wc-block-cart__submit-button:hover,
.wc-block-components-checkout-place-order-button:hover {
	background: var(--fb-action-hover, #8a3c25) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 12px 28px rgba(200, 90, 50, 0.35) !important;
	color: #ffffff !important;
}

/* ==========================================================================
   SLIDE 2: CURATED CATALOG & SHOP EXPERIENCE (Matching Stitch Design)
   ========================================================================== */

.fb-catalog-header {
	text-align: center;
	padding: 20px 20px 36px;
	max-width: 820px;
	margin: 0 auto;
}

.fb-catalog-header .fb-eyebrow {
	font-family: var(--fb-font-ui);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.16em;
	color: var(--fb-action);
	text-transform: uppercase;
	display: block;
	margin-bottom: 8px;
}

.fb-catalog-title {
	font-family: var(--fb-font-serif) !important;
	font-size: 42px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	letter-spacing: -0.02em !important;
	margin: 0 0 12px !important;
}

.fb-catalog-sub {
	font-size: 15px;
	color: var(--fb-muted);
	margin: 0 0 28px;
	line-height: 1.6;
}

/* Horizontal Category Filter Strip (Anti-Boxy Architectural Design) */
.fb-filter-pills {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 14px;
	border: none;
	background: transparent;
}

.fb-filter-pill {
	display: inline-flex;
	align-items: center;
	padding: 8px 18px;
	border-radius: var(--fb-radius-pill);
	border: 1px solid transparent !important;
	background: transparent !important;
	font-family: var(--fb-font-ui);
	font-size: 13.5px;
	font-weight: 500;
	color: var(--fb-muted);
	text-decoration: none;
	box-shadow: none !important;
	transition: all var(--fb-transition-smooth);
}

.fb-filter-pill:hover {
	color: var(--fb-ink);
	background: rgba(28, 32, 26, 0.04) !important;
	border-color: transparent !important;
	transform: none !important;
	box-shadow: none !important;
}

.fb-filter-pill.is-active {
	background: rgba(162, 75, 49, 0.09) !important;
	color: var(--fb-action) !important;
	font-weight: 600;
	border: 1px solid rgba(162, 75, 49, 0.18) !important;
	box-shadow: none !important;
	transform: none !important;
}

/* Sorting & Results Bar */
.storefront-sorting {
	margin-bottom: 32px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	border-bottom: 1px solid var(--fb-line) !important;
	padding-bottom: 18px !important;
}

.woocommerce-ordering {
	margin: 0 !important;
	float: none !important;
}

.woocommerce-ordering select.orderby {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	background: #ffffff url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%231c201a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 16px center !important;
	border: 1px solid var(--fb-line) !important;
	border-radius: var(--fb-radius-pill) !important;
	padding: 9px 38px 9px 18px !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--fb-ink) !important;
	outline: none !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
	cursor: pointer !important;
	transition: all var(--fb-transition-fast) !important;
}

.woocommerce-ordering select.orderby:hover,
.woocommerce-ordering select.orderby:focus {
	border-color: var(--fb-action) !important;
	box-shadow: 0 0 0 3px rgba(162, 75, 49, 0.08) !important;
}

.woocommerce-ordering select.orderby option {
	background: #ffffff !important;
	color: #1c201a !important;
	padding: 8px 12px !important;
}

.woocommerce-result-count {
	font-family: var(--fb-font-ui) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--fb-muted) !important;
	margin: 0 !important;
}

/* Elevated Anti-Boxy Shop Grid */
.woocommerce ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 28px !important;
	margin: 0 0 60px !important;
	padding: 0 !important;
	list-style: none !important;
}

.woocommerce ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
	background: #ffffff !important;
	border: none !important;
	border-radius: 22px !important;
	padding: 12px 12px 18px !important;
	box-shadow: 0 4px 18px rgba(28, 32, 26, 0.04) !important;
	transition: all 300ms cubic-bezier(0.16, 1, 0.3, 1) !important;
	display: flex !important;
	flex-direction: column !important;
	text-align: left !important;
	position: relative !important;
	overflow: hidden !important;
}

.woocommerce ul.products li.product:hover {
	transform: translateY(-5px) !important;
	box-shadow: 0 16px 36px rgba(28, 32, 26, 0.09) !important;
}

.woocommerce ul.products li.product .woocommerce-LoopProduct-link {
	display: block !important;
	position: relative !important;
	text-decoration: none !important;
	color: inherit !important;
}

.woocommerce ul.products li.product img {
	width: 100% !important;
	height: 250px !important;
	object-fit: cover !important;
	border-radius: 16px !important;
	margin: 0 0 14px !important;
	background: #f4efe6 !important;
	display: block !important;
	transition: transform 400ms cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.woocommerce ul.products li.product:hover img {
	transform: scale(1.025) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--fb-font-serif) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	margin: 0 0 8px !important;
	line-height: 1.4 !important;
	padding: 0 4px !important;
}

.woocommerce ul.products li.product .price {
	font-family: var(--fb-font-ui) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	color: var(--fb-action) !important;
	margin: 0 0 14px !important;
	padding: 0 4px !important;
	display: block !important;
}

.woocommerce ul.products li.product .button {
	margin-top: auto !important;
	background: var(--fb-ink) !important;
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill) !important;
	height: 42px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	border: none !important;
	padding: 0 20px !important;
	transition: all var(--fb-transition-smooth) !important;
	text-decoration: none !important;
}

.woocommerce ul.products li.product .button:hover {
	background: var(--fb-action) !important;
	box-shadow: 0 8px 18px rgba(162, 75, 49, 0.3) !important;
	transform: translateY(-2px) !important;
}

/* Anti-Boxy Floating Sale Pill Badge */
span.onsale,
.woocommerce span.onsale,
.woocommerce-page span.onsale,
.woocommerce ul.products li.product .onsale {
	position: absolute !important;
	top: 22px !important;
	right: 22px !important;
	left: auto !important;
	margin: 0 !important;
	padding: 4px 10px !important;
	background: var(--fb-action) !important;
	color: #ffffff !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 10.5px !important;
	font-weight: 700 !important;
	letter-spacing: 0.6px !important;
	text-transform: uppercase !important;
	line-height: 1.3 !important;
	border: none !important;
	border-radius: var(--fb-radius-pill) !important;
	box-shadow: 0 4px 12px rgba(162, 75, 49, 0.28) !important;
	min-height: auto !important;
	min-width: auto !important;
	z-index: 4 !important;
}

/* ==========================================================================
   SLIDE 3: SINGLE PRODUCT DETAIL EXPERIENCE (Matching Stitch Design)
   ========================================================================== */

.single-product .site-main {
	padding-top: 30px !important;
	padding-bottom: 80px !important;
}

.single-product div.product {
	background: #ffffff !important;
	border-radius: 32px !important;
	border: 1px solid var(--fb-line) !important;
	box-shadow: 0 12px 40px rgba(28, 32, 26, 0.05) !important;
	padding: 44px !important;
	overflow: hidden !important;
}

/* Image Showcase Column */
.single-product div.product div.images {
	border-radius: 24px !important;
	overflow: hidden !important;
	margin-bottom: 0 !important;
}

.single-product div.product div.images img {
	border-radius: 24px !important;
	width: 100% !important;
	height: auto !important;
	object-fit: cover !important;
	background: #f4efe6 !important;
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.04) !important;
}

/* Product Summary Column */
.single-product div.product div.summary {
	padding-left: 20px !important;
}

.single-product div.product .product_title {
	font-family: var(--fb-font-serif) !important;
	font-size: 38px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	letter-spacing: -0.02em !important;
	margin: 0 0 10px !important;
	line-height: 1.2 !important;
}

/* Star Rating Chip */
.fb-product-rating {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	margin-bottom: 14px;
	font-family: var(--fb-font-ui);
}

.fb-product-rating .fb-stars {
	color: #e6a23c;
	font-size: 15px;
	letter-spacing: 2px;
}

.fb-product-rating .fb-rating-score {
	font-weight: 700;
	font-size: 13px;
	color: var(--fb-ink);
}

.fb-product-rating .fb-rating-count {
	font-size: 12px;
	color: var(--fb-muted);
}

/* Price */
.single-product div.product p.price {
	font-family: var(--fb-font-ui) !important;
	font-size: 26px !important;
	font-weight: 700 !important;
	color: var(--fb-action) !important;
	margin: 0 0 18px !important;
}

/* Material & Finish Swatches */
.fb-product-finishes {
	margin-bottom: 22px;
	padding: 16px 0;
	border-top: 1px solid var(--fb-line);
	border-bottom: 1px solid var(--fb-line);
}

.fb-finish-label {
	display: block;
	font-family: var(--fb-font-ui);
	font-size: 13px;
	color: var(--fb-ink);
	margin-bottom: 10px;
}

.fb-finish-pills {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

.fb-finish-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 7px 16px;
	border-radius: var(--fb-radius-pill);
	border: 1.5px solid var(--fb-line);
	background: #faf8f2;
	font-family: var(--fb-font-ui);
	font-size: 12px;
	font-weight: 600;
	color: var(--fb-ink);
	cursor: pointer;
	transition: all var(--fb-transition-fast);
}

.fb-finish-pill.is-active {
	border-color: var(--fb-action);
	background: #ffffff;
	box-shadow: 0 0 0 2px rgba(162, 75, 49, 0.15);
}

.fb-dot {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	display: inline-block;
}

.fb-dot-brass { background: #d4af37; }
.fb-dot-charcoal { background: #2f353b; }
.fb-dot-sand { background: #c2b280; }

/* Add to Cart Stepper & CTA */
.single-product div.product form.cart {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	margin: 22px 0 28px !important;
}

.single-product div.product form.cart .quantity {
	margin: 0 !important;
}

.single-product div.product form.cart .quantity input.qty {
	border-radius: var(--fb-radius-pill) !important;
	border: 1.5px solid var(--fb-line) !important;
	background: #faf8f2 !important;
	height: 50px !important;
	width: 72px !important;
	text-align: center !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
}

.single-product div.product form.cart .single_add_to_cart_button {
	flex: 1 !important;
	height: 50px !important;
	background: var(--fb-action) !important;
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill) !important;
	border: none !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 15px !important;
	font-weight: 700 !important;
	letter-spacing: 0.3px !important;
	box-shadow: 0 10px 24px rgba(162, 75, 49, 0.3) !important;
	cursor: pointer !important;
	transition: all var(--fb-transition-smooth) !important;
}

.single-product div.product form.cart .single_add_to_cart_button:hover {
	background: var(--fb-action-hover) !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 14px 28px rgba(162, 75, 49, 0.4) !important;
}

/* Perks Card */
.fb-product-perks {
	display: flex;
	flex-direction: column;
	gap: 10px;
	background: #faf8f2;
	border: 1px solid var(--fb-line);
	border-radius: 18px;
	padding: 16px 20px;
	margin-top: 10px;
}

.fb-perk-item {
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--fb-font-ui);
	font-size: 12px;
	font-weight: 600;
	color: var(--fb-ink);
}

.fb-perk-item svg {
	color: var(--fb-action);
	flex-shrink: 0;
}

/* WooCommerce Tabs Structured Layout (Full-Width, Anti-Boxy) */
.single-product .woocommerce-tabs {
	clear: both !important;
	float: none !important;
	width: 100% !important;
	margin-top: 40px !important;
	padding-top: 32px !important;
	border-top: 1px solid var(--fb-line) !important;
	box-sizing: border-box !important;
}

.single-product .woocommerce-tabs ul.tabs {
	float: none !important;
	width: 100% !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 0 24px !important;
	display: flex !important;
	align-items: center !important;
	gap: 24px !important;
	background: transparent !important;
	border-bottom: 1px solid var(--fb-line) !important;
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after {
	display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li {
	background: transparent !important;
	border: none !important;
	border-bottom: 2px solid transparent !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	transition: all var(--fb-transition-fast) !important;
}

.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after {
	display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
	font-family: var(--fb-font-ui) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	color: var(--fb-muted) !important;
	padding: 10px 18px !important;
	display: block !important;
}

.single-product .woocommerce-tabs ul.tabs li:hover a {
	color: var(--fb-ink) !important;
}

.single-product .woocommerce-tabs ul.tabs li.active {
	background: transparent !important;
	border-bottom: 2px solid var(--fb-action) !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
	color: var(--fb-action) !important;
	font-weight: 600 !important;
}

.single-product .woocommerce-tabs .panel {
	float: none !important;
	width: 100% !important;
	clear: both !important;
	box-sizing: border-box !important;
	background: #fbfaf7 !important;
	border-radius: 20px !important;
	border: 1px solid var(--fb-line) !important;
	padding: 32px 36px !important;
	font-size: 14.5px !important;
	line-height: 1.7 !important;
	color: #555045 !important;
}

.single-product .woocommerce-tabs .panel h2 {
	font-family: var(--fb-font-serif) !important;
	font-size: 24px !important;
	color: var(--fb-ink) !important;
	margin: 0 0 16px !important;
}

/* Responsive Grid */
@media (max-width: 1024px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 768px) {
	.single-product div.product {
		padding: 24px !important;
		border-radius: 24px !important;
	}

	.single-product div.product div.summary {
		padding-left: 0 !important;
		margin-top: 24px !important;
	}

	.woocommerce ul.products {
		grid-template-columns: 1fr !important;
		gap: 18px !important;
	}
}

/* ==========================================================================
   Header Refinements & Action Pills
   ========================================================================== */
.fb-header-actions {
	display: flex;
	align-items: center;
	gap: 14px;
}

.fb-login-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 16px;
	border-radius: 999px;
	background: #f4f0e8;
	color: var(--fb-ink);
	font-size: 13px;
	font-weight: 500;
	text-decoration: none;
	border: 1px solid var(--fb-line);
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.fb-login-pill:hover {
	background: #eae4d8;
	color: var(--fb-ink);
	transform: translateY(-1px);
}

.fb-login-pill svg {
	color: #7b7468;
}

.fb-cart-pill {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 18px;
	border-radius: 999px;
	background: var(--fb-ink);
	color: #ffffff !important;
	font-size: 13px;
	font-weight: 500;
	text-decoration: none;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}

.fb-cart-pill:hover {
	background: #2a2825;
	transform: translateY(-1px);
}

.fb-cart-pill svg {
	color: #ffffff;
}

/* ==========================================================================
   Category Tile Hover & Arrow Animation
   ========================================================================== */
.fb-tile-label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	transition: transform 0.25s ease;
}

.fb-category-tile-card:hover .fb-tile-label svg {
	transform: translateX(4px);
}

.fb-tile-label svg {
	transition: transform 0.25s ease;
}

/* ==========================================================================
   Brand Values & Guarantees Bar
   ========================================================================== */
.fb-values-bar {
	max-width: 1400px;
	margin: 0 auto 56px;
	padding: 0 40px;
}

.fb-values-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
	background: #faf8f3;
	border: 1px solid var(--fb-line);
	border-radius: 20px;
	padding: 28px 32px;
}

.fb-value-card {
	display: flex;
	align-items: flex-start;
	gap: 16px;
}

.fb-value-icon {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	background: #f0ece3;
	color: var(--fb-terracotta);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.fb-value-text {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.fb-value-text strong {
	font-size: 14px;
	font-weight: 600;
	color: var(--fb-ink);
}

.fb-value-text span {
	font-size: 12px;
	line-height: 1.5;
	color: #7b7468;
}

@media (max-width: 1024px) {
	.fb-values-grid {
		grid-template-columns: repeat(2, 1fr);
		gap: 24px;
	}
}

@media (max-width: 640px) {
	.fb-values-bar {
		padding: 0 20px;
	}
	.fb-values-grid {
		grid-template-columns: 1fr;
		gap: 20px;
		padding: 20px;
	}
}

/* ==========================================================================
   Floating Category Badge on Product Loop Cards
   ========================================================================== */
.woocommerce ul.products li.product {
	position: relative;
}

.fb-card-cat-badge {
	position: absolute !important;
	top: 22px !important;
	left: 22px !important;
	z-index: 5 !important;
	font-size: 10.5px !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.8px !important;
	color: #3d4239 !important;
	background: rgba(255, 255, 255, 0.94) !important;
	backdrop-filter: blur(10px) !important;
	-webkit-backdrop-filter: blur(10px) !important;
	padding: 5px 12px !important;
	border-radius: var(--fb-radius-pill) !important;
	border: 1px solid rgba(229, 223, 212, 0.8) !important;
	pointer-events: none !important;
	box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05) !important;
	line-height: 1.2 !important;
}

/* ==========================================================================
   Header Search & Action Pills Alignment Fix
   ========================================================================== */
.fb-header-actions {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
	margin: 0 !important;
}

form.fb-search-pill {
	display: flex !important;
	align-items: center !important;
	background: #f0ece3 !important;
	border-radius: 999px !important;
	height: 38px !important;
	min-height: 38px !important;
	max-height: 38px !important;
	padding: 0 14px !important;
	margin: 0 !important;
	gap: 8px !important;
	border: 1px solid var(--fb-line) !important;
	box-sizing: border-box !important;
	transition: all var(--fb-transition-fast) !important;
}

form.fb-search-pill .fb-search-icon {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	color: #7b7468 !important;
	line-height: 1 !important;
	height: 15px !important;
	flex-shrink: 0 !important;
}

form.fb-search-pill input[type="search"] {
	border: none !important;
	background: transparent !important;
	font-size: 13px !important;
	color: var(--fb-ink) !important;
	outline: none !important;
	width: 110px !important;
	height: 36px !important;
	line-height: 36px !important;
	padding: 0 !important;
	margin: 0 !important;
	box-shadow: none !important;
	box-sizing: border-box !important;
}

form.fb-search-pill input[type="search"]:focus {
	width: 150px !important;
}

.fb-login-pill {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	height: 38px !important;
	min-height: 38px !important;
	max-height: 38px !important;
	padding: 0 16px !important;
	margin: 0 !important;
	border-radius: 999px !important;
	background: #f4f0e8 !important;
	color: var(--fb-ink) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	text-decoration: none !important;
	border: 1px solid var(--fb-line) !important;
	box-sizing: border-box !important;
	line-height: 1 !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.fb-login-pill:hover {
	background: #eae4d8 !important;
	color: var(--fb-ink) !important;
	transform: translateY(-1px) !important;
}

.fb-cart-pill {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	height: 38px !important;
	min-height: 38px !important;
	max-height: 38px !important;
	padding: 0 18px !important;
	margin: 0 !important;
	border-radius: 999px !important;
	background: var(--fb-ink) !important;
	color: #ffffff !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	text-decoration: none !important;
	border: 1px solid var(--fb-ink) !important;
	box-sizing: border-box !important;
	line-height: 1 !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.fb-cart-pill:hover {
	background: #2a2825 !important;
	transform: translateY(-1px) !important;
}

/* ==========================================================================
   Space Reduction Below Header / Navbar & Uncongested Breadcrumbs
   ========================================================================== */
.site-content {
	padding-top: 30px !important;
	padding-bottom: 60px !important;
}

.storefront-breadcrumb {
	margin: 18px 0 16px !important;
	padding: 0 !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: #9c9489 !important;
	line-height: 1.6 !important;
}

.storefront-breadcrumb .col-full {
	padding: 0 32px !important;
}

.storefront-breadcrumb .woocommerce-breadcrumb {
	margin: 0 !important;
	padding: 4px 0 !important;
}

.storefront-breadcrumb a {
	color: #7b7468 !important;
	text-decoration: none !important;
	transition: color 0.15s ease !important;
}

.storefront-breadcrumb a:hover {
	color: var(--fb-action) !important;
}

.storefront-breadcrumb + .site-content {
	padding-top: 14px !important;
}

/* ==========================================================================
   Luxury WooCommerce Notice Banners (Cart Additions & Alerts)
   ========================================================================== */
.woocommerce-notices-wrapper {
	margin-bottom: 24px !important;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
	border-radius: 16px !important;
	padding: 14px 22px !important;
	margin: 0 0 24px !important;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04) !important;
	font-size: 14px !important;
	font-weight: 500 !important;
	line-height: 1.6 !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 16px !important;
	border: 1px solid rgba(0, 0, 0, 0.08) !important;
}

.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-error::before {
	position: static !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin-right: 8px !important;
	font-size: 16px !important;
}

/* Success notice (e.g. Added to cart) */
.woocommerce-message {
	background: #f2f7f0 !important;
	color: #1e3d1c !important;
	border-color: rgba(60, 120, 50, 0.2) !important;
}

.woocommerce-message::before {
	color: #2e7d32 !important;
}

/* Info notice */
.woocommerce-info {
	background: #fbf8f2 !important;
	color: #4a4237 !important;
	border-color: rgba(160, 130, 90, 0.2) !important;
}

.woocommerce-info::before {
	color: var(--fb-action) !important;
}

/* Error notice */
.woocommerce-error {
	background: #fdf2f2 !important;
	color: #6a1a1a !important;
	border-color: rgba(200, 50, 50, 0.2) !important;
	list-style: none !important;
}

.woocommerce-error a,
.woocommerce-error a:visited {
	color: var(--fb-action, #a24b31) !important;
	font-weight: 600 !important;
	text-decoration: underline !important;
}

.woocommerce-error::before {
	color: #c62828 !important;
}

/* View cart button inside notice */
.woocommerce-message .button,
.woocommerce-info .button,
.woocommerce-error .button {
	background: var(--fb-ink) !important;
	color: #ffffff !important;
	border-radius: var(--fb-radius-pill) !important;
	padding: 8px 22px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	line-height: 1.2 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	border: none !important;
	float: none !important;
	margin: 0 !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1) !important;
	transition: all var(--fb-transition-fast) !important;
	text-decoration: none !important;
	white-space: nowrap !important;
}

.woocommerce-message .button:hover,
.woocommerce-info .button:hover,
.woocommerce-error .button:hover {
	background: var(--fb-action) !important;
	color: #ffffff !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 12px rgba(162, 75, 49, 0.3) !important;
}

/* ==========================================================================
   Cart Page Spacing & Typography Refinements
   ========================================================================== */
.woocommerce-cart .site-content {
	padding-top: 14px !important;
}

.woocommerce-cart .entry-header {
	margin: 0 0 18px !important;
	padding: 0 !important;
	text-align: left !important;
	border: none !important;
}

.woocommerce-cart .entry-header .entry-title {
	font-family: var(--fb-font-serif) !important;
	font-size: 32px !important;
	font-weight: 600 !important;
	letter-spacing: -0.02em !important;
	color: var(--fb-ink) !important;
	margin: 0 0 16px !important;
	text-align: left !important;
}

.woocommerce-cart table.cart {
	border-radius: 16px !important;
	overflow: hidden !important;
	border: 1px solid var(--fb-line) !important;
	background: #ffffff !important;
}

.woocommerce-cart table.cart th {
	background: #fbf9f5 !important;
	font-size: 12px !important;
	letter-spacing: 0.05em !important;
	text-transform: uppercase !important;
	color: #7b7468 !important;
	padding: 14px 18px !important;
}

.woocommerce-cart table.cart td {
	padding: 16px 18px !important;
	vertical-align: middle !important;
}

/* ==========================================================================
   Universal Quantity Stepper & Number Visibility (Product & Cart)
   ========================================================================== */
.quantity,
.single-product div.product form.cart .quantity,
.woocommerce-cart table.cart .quantity {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	background: #f4f0e8 !important;
	border: 1px solid var(--fb-line) !important;
	border-radius: 999px !important;
	height: 44px !important;
	min-height: 44px !important;
	padding: 0 4px !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	float: none !important;
}

.single-product div.product form.cart .quantity {
	height: 48px !important;
	min-height: 48px !important;
	padding: 0 6px !important;
}

.quantity .fb-qty-btn {
	width: 32px !important;
	height: 32px !important;
	border-radius: 50% !important;
	border: none !important;
	background: #ffffff !important;
	color: var(--fb-ink) !important;
	font-size: 16px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	transition: all 0.2s ease !important;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08) !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	flex-shrink: 0 !important;
}

.quantity .fb-qty-btn:hover {
	background: var(--fb-action) !important;
	color: #ffffff !important;
}

.quantity input.qty {
	border: none !important;
	background: transparent !important;
	min-width: 42px !important;
	width: auto !important;
	max-width: 65px !important;
	text-align: center !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	padding: 0 4px !important;
	margin: 0 !important;
	height: 100% !important;
	line-height: 1 !important;
	box-shadow: none !important;
	outline: none !important;
	-moz-appearance: textfield !important;
	box-sizing: border-box !important;
}

.quantity input.qty::-webkit-outer-spin-button,
.quantity input.qty::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

.fb-catalog-header {
	text-align: center !important;
	padding: 4px 20px 20px !important;
	max-width: 820px !important;
	margin: 0 auto !important;
}

.storefront-sorting {
	margin-top: 0 !important;
	margin-bottom: 24px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	border-bottom: 1px solid var(--fb-line) !important;
	padding-bottom: 14px !important;
}

.woocommerce-ordering select.orderby {
	background: #ffffff !important;
	border: 1.5px solid var(--fb-line) !important;
	border-radius: 999px !important;
	padding: 8px 18px !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	color: var(--fb-ink) !important;
	outline: none !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
	cursor: pointer !important;
}

/* ==========================================================================
   Product Loop Add to Cart & Elimination of Boxy "View Cart"
   ========================================================================== */
.woocommerce ul.products li.product .button {
	margin: auto 0 0 !important;
	background: var(--fb-ink) !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: var(--fb-radius-pill) !important;
	height: 42px !important;
	min-height: 42px !important;
	padding: 0 18px !important;
	font-size: 13px !important;
	font-weight: 600 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 6px !important;
	box-shadow: 0 4px 14px rgba(28, 32, 26, 0.15) !important;
	transition: all var(--fb-transition-fast) !important;
	text-decoration: none !important;
	box-sizing: border-box !important;
	white-space: nowrap !important;
	overflow: hidden !important;
}

.woocommerce ul.products li.product .button:hover {
	background: var(--fb-action) !important;
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 20px rgba(162, 75, 49, 0.35) !important;
}

/* Crisp SVG Plus Icon in Add to Cart Button */
.woocommerce ul.products li.product .button::before {
	content: "" !important;
	display: inline-block !important;
	width: 13px !important;
	height: 13px !important;
	margin-right: 6px !important;
	flex-shrink: 0 !important;
	vertical-align: middle !important;
	background-color: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' y1='5' x2='12' y2='19'%3E%3C/line%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E") no-repeat center / contain !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='12' y1='5' x2='12' y2='19'%3E%3C/line%3E%3Cline x1='5' y1='12' x2='19' y2='12'%3E%3C/line%3E%3C/svg%3E") no-repeat center / contain !important;
}

/* Hide WooCommerce default added_to_cart "View cart ->" link completely */
.woocommerce ul.products li.product .added_to_cart {
	display: none !important;
}

.woocommerce ul.products li.product .button.loading::after,
.woocommerce ul.products li.product .button.added::after {
	display: none !important;
}

/* ==========================================================================
   Single Product Interactive Quantity Stepper & Alignment
   ========================================================================== */
.single-product div.product form.cart {
	display: flex !important;
	align-items: center !important;
	gap: 16px !important;
	margin: 28px 0 !important;
}

.single-product div.product form.cart .single_add_to_cart_button {
	height: 48px !important;
	min-height: 48px !important;
	line-height: 48px !important;
	padding: 0 32px !important;
	border-radius: 999px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	margin: 0 !important;
	box-sizing: border-box !important;
	background: var(--fb-action) !important;
	color: #ffffff !important;
	font-weight: 600 !important;
	box-shadow: 0 6px 18px rgba(162, 75, 49, 0.28) !important;
	transition: all var(--fb-transition-smooth) !important;
	float: none !important;
}

.single-product div.product form.cart .single_add_to_cart_button:hover {
	background: var(--fb-action-hover) !important;
	box-shadow: 0 10px 24px rgba(162, 75, 49, 0.4) !important;
	transform: translateY(-2px) !important;
}

/* Single Product Add to Cart Bag Icon */
.single-product .single_add_to_cart_button::before {
	content: "" !important;
	display: inline-block !important;
	width: 16px !important;
	height: 16px !important;
	margin-right: 8px !important;
	vertical-align: middle !important;
	background-color: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") no-repeat center / contain !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 2 3 6v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6l-3-4Z'/%3E%3Cpath d='M3 6h18'/%3E%3Cpath d='M16 10a4 4 0 0 1-8 0'/%3E%3C/svg%3E") no-repeat center / contain !important;
}

/* Checkout Lock Icon */
#place_order::before {
	content: "" !important;
	display: inline-block !important;
	width: 15px !important;
	height: 15px !important;
	margin-right: 8px !important;
	vertical-align: -2px !important;
	background-color: currentColor !important;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E") no-repeat center / contain !important;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='11' width='18' height='11' rx='2' ry='2'/%3E%3Cpath d='M7 11V7a5 5 0 0 1 10 0v4'/%3E%3C/svg%3E") no-repeat center / contain !important;
}

/* ==========================================================================
   Homepage Enhancements: Craftsmanship, Trade, Testimonials, FAQs
   ========================================================================== */

/* Section Headers */
.fb-section-header {
	text-align: center;
	max-width: 680px;
	margin: 0 auto 40px auto;
}

.fb-section-header .fb-eyebrow {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--fb-action);
	margin-bottom: 8px;
	display: inline-block;
}

.fb-section-header h2 {
	font-size: 32px;
	line-height: 1.25;
	color: var(--fb-ink);
	margin-bottom: 12px;
}

.fb-section-header p {
	font-size: 15px;
	color: var(--fb-muted);
	line-height: 1.6;
}

/* 1. Craftsmanship Section */
.fb-craft-section {
	padding: 70px 24px;
	background: var(--fb-surface-subtle);
	border-radius: var(--fb-radius-xl);
	margin: 50px 0;
}

.fb-craft-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	max-width: 1200px;
	margin: 0 auto;
}

.fb-craft-card {
	background: var(--fb-surface);
	padding: 36px 30px;
	border-radius: var(--fb-radius-lg);
	box-shadow: var(--fb-shadow-sm);
	border: 1px solid var(--fb-line-light);
	display: flex;
	flex-direction: column;
	transition: transform var(--fb-transition-smooth), box-shadow var(--fb-transition-smooth);
}

.fb-craft-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--fb-shadow-md);
}

.fb-craft-pill {
	display: inline-block;
	align-self: flex-start;
	background: var(--fb-action-subtle);
	color: var(--fb-action);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 4px 10px;
	border-radius: var(--fb-radius-pill);
	margin-bottom: 16px;
}

.fb-craft-card h3 {
	font-size: 20px;
	color: var(--fb-ink);
	margin-bottom: 12px;
}

.fb-craft-card p {
	font-size: 14px;
	color: var(--fb-muted);
	line-height: 1.65;
	margin-bottom: 20px;
	flex-grow: 1;
}

.fb-craft-spec {
	font-size: 12px;
	font-weight: 600;
	color: var(--fb-ink-light);
	border-top: 1px solid var(--fb-line);
	padding-top: 14px;
}

/* 2. Trade & Architect Section */
.fb-trade-section {
	margin: 50px 0;
	padding: 0 16px;
}

.fb-trade-card {
	background: linear-gradient(135deg, #1c201a 0%, #2b3027 100%);
	color: #ffffff;
	border-radius: var(--fb-radius-xl);
	padding: 56px 48px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
	box-shadow: var(--fb-shadow-lg);
}

.fb-trade-copy {
	max-width: 680px;
}

.fb-trade-badge {
	display: inline-block;
	background: rgba(200, 157, 86, 0.2);
	color: var(--fb-gold);
	border: 1px solid rgba(200, 157, 86, 0.35);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	padding: 5px 14px;
	border-radius: var(--fb-radius-pill);
	margin-bottom: 16px;
}

.fb-trade-copy h2 {
	font-size: 34px;
	color: #ffffff;
	margin-bottom: 14px;
	line-height: 1.2;
}

.fb-trade-copy p {
	font-size: 15px;
	color: #b7bcae;
	line-height: 1.65;
	margin-bottom: 24px;
}

.fb-trade-perks {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 12px 20px;
}

.fb-trade-perk {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 13px;
	color: #e5e9df;
	font-weight: 500;
}

.fb-trade-perk svg {
	color: var(--fb-gold);
	flex-shrink: 0;
}

.fb-trade-cta {
	flex-shrink: 0;
}

/* 3. Testimonials Section */
.fb-testimonials-section {
	padding: 60px 0;
}

.fb-testimonials-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	max-width: 1200px;
	margin: 0 auto;
}

.fb-testimonial-card {
	background: var(--fb-surface);
	padding: 34px 28px;
	border-radius: var(--fb-radius-lg);
	border: 1px solid var(--fb-line-light);
	box-shadow: var(--fb-shadow-xs);
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.fb-testimonial-card .fb-stars {
	color: #e09f3e;
	font-size: 15px;
	letter-spacing: 2px;
	margin-bottom: 14px;
}

.fb-quote {
	font-size: 15px;
	line-height: 1.65;
	color: var(--fb-ink-light);
	font-style: italic;
	margin-bottom: 24px;
}

.fb-author {
	display: flex;
	flex-direction: column;
	border-top: 1px solid var(--fb-line-light);
	padding-top: 14px;
}

.fb-author strong {
	font-size: 14px;
	color: var(--fb-ink);
}

.fb-author span {
	font-size: 12px;
	color: var(--fb-muted);
	margin-top: 2px;
}

/* 4. FAQ Accordion Section */
.fb-faq-section {
	padding: 60px 24px;
	max-width: 860px;
	margin: 0 auto;
}

.fb-faq-list {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.fb-faq-item {
	background: var(--fb-surface);
	border: 1px solid var(--fb-line);
	border-radius: var(--fb-radius-md);
	overflow: hidden;
	transition: border-color var(--fb-transition-fast), box-shadow var(--fb-transition-fast);
}

.fb-faq-item[open] {
	border-color: var(--fb-action);
	box-shadow: var(--fb-shadow-sm);
}

.fb-faq-question {
	list-style: none;
	padding: 20px 24px;
	font-size: 16px;
	font-weight: 600;
	color: var(--fb-ink);
	display: flex;
	align-items: center;
	justify-content: space-between;
	cursor: pointer;
	user-select: none;
}

.fb-faq-question::-webkit-details-marker {
	display: none;
}

.fb-faq-chevron {
	color: var(--fb-muted);
	transition: transform var(--fb-transition-smooth);
}

.fb-faq-item[open] .fb-faq-chevron {
	transform: rotate(180deg);
	color: var(--fb-action);
}

.fb-faq-answer {
	padding: 0 24px 22px 24px;
	font-size: 14px;
	line-height: 1.65;
	color: var(--fb-muted);
	border-top: 1px solid var(--fb-line-light);
	padding-top: 14px;
}

/* ==========================================================================
   Essential & Legal Pages: About, Contact, Policies
   ========================================================================== */
.fb-page-container {
	max-width: 960px;
	margin: 40px auto 80px auto;
	padding: 0 24px;
}

.fb-page-header {
	text-align: center;
	max-width: 720px;
	margin: 0 auto 50px auto;
}

.fb-page-header .fb-eyebrow {
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--fb-action);
	margin-bottom: 10px;
	display: inline-block;
}

.fb-page-title {
	font-size: 38px;
	line-height: 1.2;
	color: var(--fb-ink);
	margin-bottom: 16px;
}

.fb-page-lead {
	font-size: 16px;
	color: var(--fb-muted);
	line-height: 1.7;
}

/* About Page Specifics */
.fb-about-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 28px;
	margin-bottom: 50px;
}

.fb-about-card {
	background: var(--fb-surface);
	padding: 36px 28px;
	border-radius: var(--fb-radius-lg);
	border: 1px solid var(--fb-line);
	box-shadow: var(--fb-shadow-xs);
}

.fb-card-num {
	font-family: var(--fb-font-serif);
	font-size: 26px;
	color: var(--fb-gold);
	font-weight: 600;
	margin-bottom: 14px;
}

.fb-about-card h3 {
	font-size: 19px;
	color: var(--fb-ink);
	margin-bottom: 10px;
}

.fb-about-card p {
	font-size: 14px;
	color: var(--fb-muted);
	line-height: 1.65;
}

.fb-about-manifesto {
	background: var(--fb-surface-subtle);
	padding: 48px;
	border-radius: var(--fb-radius-xl);
	text-align: center;
}

.fb-manifesto-inner {
	max-width: 660px;
	margin: 0 auto;
}

.fb-manifesto-inner h2 {
	font-size: 28px;
	margin-bottom: 16px;
}

.fb-manifesto-inner p {
	font-size: 15px;
	color: var(--fb-muted);
	line-height: 1.75;
	margin-bottom: 28px;
}

.fb-manifesto-actions {
	display: flex;
	gap: 16px;
	justify-content: center;
	flex-wrap: wrap;
}

/* Contact Page Specifics */
.fb-contact-grid {
	display: grid;
	grid-template-columns: 1fr 1.35fr;
	gap: 36px;
	align-items: start;
}

.fb-contact-info-col {
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.fb-info-card {
	background: var(--fb-surface);
	padding: 26px 22px;
	border-radius: var(--fb-radius-md);
	border: 1px solid var(--fb-line);
	box-shadow: var(--fb-shadow-xs);
}

.fb-info-icon {
	color: var(--fb-action);
	margin-bottom: 10px;
}

.fb-info-card h3 {
	font-size: 17px;
	margin-bottom: 6px;
}

.fb-info-card p {
	font-size: 13px;
	color: var(--fb-muted);
	margin-bottom: 10px;
	line-height: 1.5;
}

.fb-contact-link {
	font-size: 14px;
	font-weight: 600;
	color: var(--fb-action);
}

.fb-form-card {
	background: var(--fb-surface);
	padding: 38px 32px;
	border-radius: var(--fb-radius-lg);
	border: 1px solid var(--fb-line);
	box-shadow: var(--fb-shadow-sm);
}

.fb-form-card h3 {
	font-size: 22px;
	margin-bottom: 6px;
}

.fb-form-card .fb-sub {
	font-size: 14px;
	color: var(--fb-muted);
	margin-bottom: 24px;
}

.fb-inquiry-form {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.fb-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

.fb-form-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.fb-form-field label {
	font-size: 13px;
	font-weight: 600;
	color: var(--fb-ink);
}

.fb-form-field input,
.fb-form-field select,
.fb-form-field textarea {
	background: var(--fb-bg);
	border: 1px solid var(--fb-line);
	border-radius: var(--fb-radius-sm);
	padding: 10px 14px;
	font-size: 14px;
	color: var(--fb-ink);
	outline: none;
	transition: border-color var(--fb-transition-fast), background-color var(--fb-transition-fast);
}

.fb-form-field input:focus,
.fb-form-field select:focus,
.fb-form-field textarea:focus {
	border-color: var(--fb-action);
	background: #ffffff;
}

/* Policy Pages Layout */
.fb-policy-body {
	background: var(--fb-surface);
	padding: 44px 40px;
	border-radius: var(--fb-radius-lg);
	border: 1px solid var(--fb-line);
	box-shadow: var(--fb-shadow-xs);
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.fb-policy-section h2 {
	font-size: 20px;
	color: var(--fb-ink);
	margin-bottom: 10px;
	padding-bottom: 8px;
	border-bottom: 1px solid var(--fb-line-light);
}

.fb-policy-section p {
	font-size: 14px;
	line-height: 1.7;
	color: var(--fb-ink-light);
	margin-bottom: 12px;
}

.fb-policy-section ul,
.fb-policy-section ol {
	padding-left: 20px;
	font-size: 14px;
	line-height: 1.7;
	color: var(--fb-ink-light);
}

.fb-policy-section li {
	margin-bottom: 6px;
}

/* Mobile Media Queries */
@media (max-width: 900px) {
	.fb-craft-grid,
	.fb-testimonials-grid,
	.fb-about-grid {
		grid-template-columns: 1fr;
	}

	.fb-trade-card {
		flex-direction: column;
		padding: 36px 28px;
		text-align: left;
	}

	.fb-trade-cta {
		width: 100%;
	}

	.fb-trade-cta .fb-button-terracotta {
		width: 100%;
		justify-content: center;
	}

	.fb-contact-grid {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 600px) {
	.fb-trade-perks {
		grid-template-columns: 1fr;
	}

	.fb-form-row {
		grid-template-columns: 1fr;
	}

	.fb-policy-body {
		padding: 24px 18px;
	}
}

/* ==========================================================================
   Drawers & Overlays: Mobile Nav & Slide-Out Shopping Bag
   ========================================================================== */

/* Body Lock when Drawer is Open */
body.fb-drawer-active {
	overflow: hidden !important;
}

/* Overlays */
.fb-mobile-overlay,
.fb-cart-overlay {
	position: fixed;
	inset: 0;
	background: rgba(28, 32, 26, 0.45);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	z-index: 99990;
	opacity: 0;
	pointer-events: none;
	transition: opacity var(--fb-transition-smooth);
}

.fb-mobile-overlay.is-open,
.fb-cart-overlay.is-open {
	opacity: 1;
	pointer-events: auto;
}

/* Mobile Nav Toggle Button */
.fb-mobile-nav-toggle {
	display: none;
	align-items: center;
	justify-content: center;
	background: transparent;
	border: 1px solid var(--fb-line);
	border-radius: var(--fb-radius-sm);
	padding: 8px;
	color: var(--fb-ink);
	cursor: pointer;
	margin-right: 12px;
	transition: background var(--fb-transition-fast), color var(--fb-transition-fast);
}

.fb-mobile-nav-toggle:hover {
	background: var(--fb-surface-subtle);
	color: var(--fb-action);
}

/* Mobile Nav Drawer */
.fb-mobile-drawer {
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	width: min(340px, 85vw);
	max-width: 100vw;
	background: var(--fb-surface);
	z-index: 99995;
	display: flex;
	flex-direction: column;
	transform: translateX(-100%);
	transition: transform var(--fb-transition-smooth), visibility var(--fb-transition-smooth);
	box-shadow: var(--fb-shadow-lg);
	overflow-y: auto;
	visibility: hidden;
	pointer-events: none;
}

.fb-mobile-drawer.is-open {
	transform: translateX(0);
	visibility: visible;
	pointer-events: auto;
}

.fb-mobile-drawer-header {
	padding: 20px 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid var(--fb-line);
}

.fb-mobile-drawer-close {
	background: transparent;
	border: none;
	color: var(--fb-muted);
	padding: 6px;
	cursor: pointer;
	border-radius: var(--fb-radius-pill);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: color var(--fb-transition-fast), background var(--fb-transition-fast);
}

.fb-mobile-drawer-close:hover {
	color: var(--fb-ink);
	background: var(--fb-surface-subtle);
}

.fb-mobile-drawer-body {
	padding: 24px;
	display: flex;
	flex-direction: column;
	gap: 20px;
	flex-grow: 1;
}

.fb-mobile-search {
	position: relative;
	display: flex;
	align-items: center;
}

.fb-mobile-search .fb-search-icon {
	position: absolute;
	left: 14px;
	color: var(--fb-muted);
	pointer-events: none;
}

.fb-mobile-search input {
	width: 100%;
	background: var(--fb-bg);
	border: 1px solid var(--fb-line);
	border-radius: var(--fb-radius-pill);
	padding: 10px 16px 10px 38px;
	font-size: 14px;
	color: var(--fb-ink);
	outline: none;
}

.fb-mobile-search input:focus {
	border-color: var(--fb-action);
	background: #ffffff;
}

.fb-mobile-menu {
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.fb-menu-label {
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: var(--fb-muted);
	text-transform: uppercase;
	margin: 14px 0 6px 4px;
}

.fb-mobile-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 12px 14px;
	font-size: 15px;
	font-weight: 500;
	color: var(--fb-ink);
	border-radius: var(--fb-radius-sm);
	transition: background var(--fb-transition-fast), color var(--fb-transition-fast);
}

.fb-mobile-link:hover {
	background: var(--fb-surface-subtle);
	color: var(--fb-action);
}

.fb-mobile-link svg {
	color: var(--fb-muted);
}

.fb-mobile-drawer-footer {
	margin-top: auto;
	padding-top: 20px;
	border-top: 1px solid var(--fb-line);
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.fb-mobile-auth-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: var(--fb-ink);
	color: #ffffff !important;
	padding: 12px;
	border-radius: var(--fb-radius-pill);
	font-size: 14px;
	font-weight: 600;
}

.fb-mobile-whatsapp-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	background: #25d366;
	color: #ffffff !important;
	padding: 12px;
	border-radius: var(--fb-radius-pill);
	font-size: 14px;
	font-weight: 600;
}

/* ==========================================================================
   Slide-Out Cart Drawer Styling
   ========================================================================== */
.fb-cart-drawer {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	width: min(440px, 90vw);
	max-width: 100vw;
	background: var(--fb-surface);
	z-index: 99995;
	display: flex;
	flex-direction: column;
	transform: translateX(100%);
	transition: transform var(--fb-transition-smooth), visibility var(--fb-transition-smooth);
	box-shadow: -10px 0 30px rgba(0, 0, 0, 0.12);
	visibility: hidden;
	pointer-events: none;
}

.fb-cart-drawer.is-open {
	transform: translateX(0);
	visibility: visible;
	pointer-events: auto;
}

.fb-cart-drawer.is-loading .fb-drawer-body {
	opacity: 0.5;
	pointer-events: none;
}

.fb-cart-drawer-content {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.fb-drawer-header {
	padding: 20px 24px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid var(--fb-line);
}

.fb-drawer-title {
	font-size: 19px;
	color: var(--fb-ink);
	margin: 0;
}

.fb-drawer-close {
	background: transparent;
	border: none;
	color: var(--fb-muted);
	padding: 6px;
	cursor: pointer;
	border-radius: var(--fb-radius-pill);
	display: flex;
	align-items: center;
	justify-content: center;
	transition: all var(--fb-transition-fast);
}

.fb-drawer-close:hover {
	color: var(--fb-ink);
	background: var(--fb-surface-subtle);
}

/* Shipping Meter */
.fb-shipping-meter {
	background: var(--fb-surface-subtle);
	padding: 14px 24px;
	border-bottom: 1px solid var(--fb-line);
}

.fb-meter-track {
	position: relative;
	height: 8px;
	background: #e4dfd5;
	border-radius: var(--fb-radius-pill);
	overflow: visible;
	margin-bottom: 8px;
}

.fb-meter-fill {
	height: 100%;
	background: var(--fb-action);
	border-radius: var(--fb-radius-pill);
	transition: width var(--fb-transition-smooth);
}

.fb-meter-fill.is-complete {
	background: #2e7d32;
}

.fb-meter-gift-icon {
	position: absolute;
	right: -4px;
	top: -9px;
	font-size: 14px;
}

.fb-meter-info {
	font-size: 12px;
	color: var(--fb-ink-light);
	font-weight: 500;
}

.fb-highlight-green {
	color: #2e7d32;
	font-weight: 700;
}

/* Drawer Body & Items */
.fb-drawer-body {
	flex-grow: 1;
	overflow-y: auto;
	padding: 20px 24px;
}

.fb-drawer-empty {
	text-align: center;
	padding: 50px 20px;
}

.fb-empty-icon {
	color: var(--fb-muted);
	margin-bottom: 16px;
}

.fb-drawer-empty h3 {
	font-size: 20px;
	margin-bottom: 8px;
}

.fb-drawer-empty p {
	font-size: 14px;
	color: var(--fb-muted);
	margin-bottom: 24px;
}

.fb-drawer-items {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 18px;
}

.fb-drawer-item {
	display: flex;
	gap: 16px;
	padding-bottom: 18px;
	border-bottom: 1px solid var(--fb-line-light);
}

.fb-item-thumb {
	width: 72px;
	height: 72px;
	border-radius: var(--fb-radius-sm);
	overflow: hidden;
	background: var(--fb-bg);
	flex-shrink: 0;
}

.fb-item-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fb-item-details {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.fb-item-info-row {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	gap: 10px;
}

.fb-item-title {
	font-size: 14px;
	font-weight: 600;
	color: var(--fb-ink);
	margin: 0;
	line-height: 1.35;
}

.fb-item-remove {
	background: transparent;
	border: none;
	color: var(--fb-muted);
	padding: 4px;
	cursor: pointer;
	border-radius: var(--fb-radius-xs);
	transition: color var(--fb-transition-fast);
}

.fb-item-remove:hover {
	color: #d32f2f;
}

.fb-item-bottom-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 8px;
}

.fb-item-price {
	font-size: 14px;
	font-weight: 700;
	color: var(--fb-ink);
}

.fb-qty-stepper {
	display: flex;
	align-items: center;
	background: var(--fb-bg);
	border: 1px solid var(--fb-line);
	border-radius: var(--fb-radius-pill);
	padding: 2px 4px;
}

.fb-qty-stepper button {
	background: transparent;
	border: none;
	width: 24px;
	height: 24px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 16px;
	cursor: pointer;
	color: var(--fb-ink);
}

.fb-qty-val {
	font-size: 13px;
	font-weight: 600;
	min-width: 20px;
	text-align: center;
}

/* Drawer Footer */
.fb-drawer-footer {
	padding: 20px 24px;
	border-top: 1px solid var(--fb-line);
	background: var(--fb-surface);
}

.fb-drawer-totals {
	display: flex;
	flex-direction: column;
	gap: 8px;
	margin-bottom: 16px;
}

.fb-total-row {
	display: flex;
	justify-content: space-between;
	font-size: 14px;
	color: var(--fb-muted);
}

.fb-total-grand {
	font-size: 17px;
	font-weight: 700;
	color: var(--fb-ink);
	padding-top: 8px;
	border-top: 1px solid var(--fb-line-light);
}

.fb-checkout-cta {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--fb-action);
	color: #ffffff !important;
	padding: 14px 20px;
	border-radius: var(--fb-radius-pill);
	font-size: 15px;
	font-weight: 600;
	box-shadow: 0 6px 18px rgba(162, 75, 49, 0.28);
	transition: all var(--fb-transition-smooth);
}

.fb-checkout-cta:hover {
	background: var(--fb-action-hover);
	transform: translateY(-2px);
}

/* Responsiveness for Header on Tablet / Mobile */
@media (max-width: 900px) {
	.fb-mobile-nav-toggle {
		display: flex;
	}

	.fb-nav-links {
		display: none !important;
	}

	.fb-search-pill {
		display: none !important;
	}
}

/* ==========================================================================
   Checkout B2B GSTIN Section
   ========================================================================== */
.fb-checkout-b2b-wrap {
	background: var(--fb-surface);
	border: 1.5px dashed var(--fb-line);
	border-radius: var(--fb-radius-md);
	padding: 18px 20px;
	margin: 24px 0;
	transition: border-color var(--fb-transition-fast);
}

.fb-checkout-b2b-wrap:focus-within {
	border-color: var(--fb-action);
}

.fb-b2b-checkbox-label {
	display: flex;
	align-items: center;
	gap: 12px;
	font-size: 14px;
	font-weight: 500;
	color: var(--fb-ink);
	cursor: pointer;
	user-select: none;
}

.fb-b2b-checkbox-label input[type="checkbox"] {
	width: 18px;
	height: 18px;
	accent-color: var(--fb-action);
	cursor: pointer;
}

.fb-b2b-fields {
	margin-top: 16px;
	padding-top: 16px;
	border-top: 1px solid var(--fb-line-light);
}

.fb-gstin-status {
	display: block;
	margin-top: 4px;
}

/* ==========================================================================
   Mobile Sticky Add-to-Bag Floating Bar
   ========================================================================== */
.fb-sticky-mobile-bar {
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-top: 1px solid var(--fb-line);
	padding: 12px 18px;
	display: none;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	z-index: 99980;
	box-shadow: 0 -6px 20px rgba(0, 0, 0, 0.08);
	transform: translateY(100%);
	transition: transform var(--fb-transition-smooth);
}

.fb-sticky-mobile-bar.is-visible {
	transform: translateY(0);
}

.fb-sticky-bar-info {
	display: flex;
	align-items: center;
	gap: 12px;
	overflow: hidden;
}

.fb-sticky-thumb {
	width: 44px;
	height: 44px;
	border-radius: var(--fb-radius-xs);
	overflow: hidden;
	background: var(--fb-bg);
	flex-shrink: 0;
}

.fb-sticky-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fb-sticky-text {
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.fb-sticky-title {
	font-size: 13px;
	font-weight: 600;
	color: var(--fb-ink);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.fb-sticky-price {
	font-size: 13px;
	font-weight: 700;
	color: var(--fb-action);
}

.fb-sticky-cta {
	background: var(--fb-action);
	color: #ffffff !important;
	border: none;
	padding: 10px 18px;
	border-radius: var(--fb-radius-pill);
	font-size: 13px;
	font-weight: 600;
	flex-shrink: 0;
	cursor: pointer;
	box-shadow: 0 4px 12px rgba(162, 75, 49, 0.25);
}

@media (max-width: 768px) {
	.fb-sticky-mobile-bar {
		display: flex;
	}
}

/* ==========================================================================
   Architectural Hardware & Product Detail Page Styling
   ========================================================================== */
.fb-pdp-lead {
	font-size: 15px;
	line-height: 1.7;
	color: #51574d;
	margin-bottom: 20px;
}

/* Finish Swatch Selector */
.fb-pdp-finishes {
	margin: 20px 0 16px;
	padding: 16px;
	background: #fbfaf8;
	border: 1px solid #ebe8e1;
	border-radius: var(--fb-radius-sm);
	max-width: 520px;
	width: 100%;
	box-sizing: border-box;
}

.fb-finish-label {
	display: block;
	font-size: 13px;
	color: #71766a;
	margin-bottom: 10px;
}

.fb-finish-label strong {
	color: #1c211b;
	font-weight: 600;
}

.fb-finish-pills {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.fb-finish-pill {
	background: #ffffff;
	border: 1px solid #dcd7cc;
	color: #2b3028;
	padding: 7px 14px;
	font-size: 12px;
	font-weight: 500;
	border-radius: var(--fb-radius-pill);
	cursor: pointer;
	transition: all 0.2s ease;
}

.fb-finish-pill:hover {
	border-color: #a24b31;
	color: #a24b31;
}

.fb-finish-pill.is-active {
	background: #1c211b;
	border-color: #1c211b;
	color: #ffffff;
}

/* WhatsApp Direct Trade Inquiry */
.fb-pdp-actions-row {
	margin: 14px 0 18px;
	max-width: 520px;
	width: 100%;
	box-sizing: border-box;
}

.fb-whatsapp-quote-btn {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	box-sizing: border-box;
	padding: 13px 20px;
	background: #25d366;
	color: #ffffff !important;
	font-size: 13.5px;
	font-weight: 600;
	border-radius: var(--fb-radius-pill);
	text-decoration: none !important;
	box-shadow: 0 4px 14px rgba(37, 211, 102, 0.22);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.fb-whatsapp-quote-btn:hover {
	transform: translateY(-1px);
	box-shadow: 0 6px 18px rgba(37, 211, 102, 0.32);
	color: #ffffff !important;
}

/* Pincode Delivery Estimator */
.fb-pdp-delivery-checker {
	margin: 16px 0;
	padding: 16px;
	background: #fbfaf8;
	border: 1px solid #ebe8e1;
	border-radius: var(--fb-radius-sm);
	max-width: 520px;
	width: 100%;
	box-sizing: border-box;
}

.fb-delivery-label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.6px;
	color: #71766a;
	margin-bottom: 8px;
}

.fb-delivery-input-group {
	display: flex;
	align-items: center;
	gap: 8px;
	background: #ffffff;
	border: 1px solid #dcd7cc;
	border-radius: var(--fb-radius-sm);
	padding: 4px 6px 4px 12px;
}

.fb-delivery-input-group svg {
	color: #71766a;
	flex-shrink: 0;
}

.fb-delivery-input-group input {
	flex: 1;
	border: none !important;
	outline: none !important;
	box-shadow: none !important;
	background: transparent !important;
	padding: 6px 0;
	font-size: 13px;
	color: #1c211b;
}

.fb-delivery-input-group button {
	background: #1c211b;
	color: #ffffff;
	border: none;
	padding: 8px 16px;
	font-size: 12px;
	font-weight: 600;
	border-radius: var(--fb-radius-xs);
	cursor: pointer;
	transition: background 0.2s ease;
}

.fb-delivery-input-group button:hover {
	background: #a24b31;
}

.fb-delivery-status {
	margin-top: 8px;
	font-size: 12px;
}

/* Trust Badges Grid */
.fb-pdp-trust-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 10px;
	margin: 22px 0 10px;
	padding-top: 16px;
	border-top: 1px solid #ebe8e1;
}

.fb-pdp-trust-item {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 11.5px;
	color: #51574d;
	font-weight: 500;
}

.fb-pdp-trust-item svg {
	color: #a24b31;
	flex-shrink: 0;
}

/* Specifications Table in Product Description */
.fb-specs-container {
	margin: 28px 0 20px;
}

.fb-specs-heading {
	font-size: 18px;
	font-weight: 600;
	color: #1c211b;
	margin-bottom: 14px;
	letter-spacing: -0.2px;
}

.fb-specs-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 13.5px;
	margin-bottom: 24px;
	background: #ffffff;
	border: 1px solid #ebe8e1;
	border-radius: var(--fb-radius-sm);
	overflow: hidden;
}

.fb-specs-table tr {
	border-bottom: 1px solid #f0ede6;
}

.fb-specs-table tr:last-child {
	border-bottom: none;
}

.fb-specs-table tr:nth-child(even) {
	background: #faf9f6;
}

.fb-specs-table th {
	width: 38%;
	padding: 12px 16px;
	text-align: left;
	font-weight: 600;
	color: #2b3028;
	border-right: 1px solid #f0ede6;
}

.fb-specs-table td {
	padding: 12px 16px;
	color: #51574d;
}

.fb-trade-care-box {
	background: #f6f5f0;
	border: 1px solid #e5e1d7;
	border-radius: var(--fb-radius-sm);
	padding: 18px 20px;
	margin-top: 20px;
}

.fb-trade-care-box h4 {
	font-size: 14px;
	font-weight: 600;
	color: #1c211b;
	margin-bottom: 6px;
}

.fb-trade-care-box p {
	font-size: 13px;
	line-height: 1.6;
	color: #63695f;
	margin: 0;
}

.fb-trade-care-box a {
	color: #a24b31;
	font-weight: 600;
	text-decoration: underline;
}

/* ==========================================================================
   Complete Suppression of Storefront Parent Legacy Chevrons & 500px Drawer
   ========================================================================== */
.storefront-product-pagination,
.storefront-product-pagination a,
.storefront-product-pagination a::before,
.storefront-product-pagination a::after {
	display: none !important;
	content: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
	width: 0 !important;
	height: 0 !important;
	position: absolute !important;
	left: -9999px !important;
}

/* ==========================================================================
   Master Responsive System (Mobile, Tablet, Fluid Resolutions)
   ========================================================================== */

/* Universal Fluid Root & Overflow Guard */
html,
body {
	overflow-x: hidden !important;
	width: 100% !important;
	max-width: 100vw !important;
	position: relative !important;
	margin: 0;
	padding: 0;
	-webkit-text-size-adjust: 100%;
}

#page,
.site,
.site-content,
.col-full,
.site-main {
	overflow-x: hidden !important;
	max-width: 100vw !important;
	box-sizing: border-box !important;
}

*, *::before, *::after {
	box-sizing: border-box;
}

img, video, iframe {
	max-width: 100%;
	height: auto;
}

/* Local Preview Badge Fluid Wrap */
.fb-preview-badge-wrapper {
	padding: 0 14px !important;
	margin-bottom: 16px !important;
	text-align: center !important;
}

.fb-preview-badge {
	font-size: clamp(10px, 3vw, 12px) !important;
	padding: 5px 12px !important;
	line-height: 1.4 !important;
	display: inline-block !important;
	word-break: break-word !important;
}

/* Mobile & Tablet Header (Screen <= 900px) */
@media (max-width: 900px) {
	.fb-header {
		top: 8px !important;
		margin: 6px auto 12px !important;
		padding: 0 12px !important;
		max-width: 100% !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.fb-header-container {
		padding: 8px 14px !important;
		gap: 10px !important;
		justify-content: space-between !important;
		border-radius: 999px !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}

	.fb-brand {
		font-size: clamp(18px, 4.8vw, 22px) !important;
		line-height: 1 !important;
	}

	.fb-nav-links,
	form.fb-search-pill,
	.fb-search-pill,
	.fb-header-actions .fb-action-icon,
	.fb-header-actions .fb-action-text {
		display: none !important;
	}

	.fb-mobile-nav-toggle {
		display: flex !important;
		width: 38px !important;
		height: 38px !important;
		align-items: center !important;
		justify-content: center !important;
		border-radius: 50% !important;
		flex-shrink: 0 !important;
	}

	.fb-header-actions {
		gap: 8px !important;
		flex-shrink: 0 !important;
	}

	.fb-cart-pill {
		padding: 7px 12px !important;
		font-size: 12px !important;
		gap: 6px !important;
		flex-shrink: 0 !important;
	}

	.fb-cart-pill span:not(.fb-cart-count) {
		display: none !important;
	}
}

/* Homepage Hero Split (Screen <= 900px) */
@media (max-width: 900px) {
	.fb-hero-split {
		grid-template-columns: 1fr !important;
		gap: 28px !important;
		margin: 16px auto 36px !important;
		padding: 0 16px !important;
		text-align: center !important;
	}

	.fb-hero-heading {
		font-size: clamp(28px, 7.5vw, 42px) !important;
		line-height: 1.15 !important;
		margin: 0 0 12px !important;
	}

	.fb-hero-subheading {
		font-size: 15px !important;
		margin: 0 auto 22px !important;
		max-width: 480px !important;
	}

	.fb-hero-cta-wrap {
		display: flex !important;
		justify-content: center !important;
	}

	.fb-hero-media-wrap {
		border-radius: 22px !important;
		max-width: 100% !important;
	}
}

/* Homepage Category Showcase Tiles (Screen <= 900px) */
@media (max-width: 900px) {
	.fb-categories-showcase {
		padding: 0 16px !important;
		margin: 0 auto 36px !important;
	}

	.fb-category-tiles-row {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px !important;
	}

	.fb-category-tile-card {
		height: 175px !important;
		border-radius: 18px !important;
	}

	.fb-tile-label {
		font-size: 13px !important;
	}
}

@media (max-width: 420px) {
	.fb-category-tiles-row {
		gap: 10px !important;
	}

	.fb-category-tile-card {
		height: 145px !important;
		border-radius: 16px !important;
	}

	.fb-tile-label {
		font-size: 12px !important;
	}
}

/* Brand Values Bar (Screen <= 900px & <= 600px) */
@media (max-width: 900px) {
	.fb-values-bar {
		padding: 0 16px !important;
		margin: 0 auto 36px !important;
	}

	.fb-values-grid {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 16px !important;
		padding: 20px !important;
	}
}

@media (max-width: 600px) {
	.fb-values-grid {
		grid-template-columns: 1fr !important;
		gap: 14px !important;
		padding: 16px !important;
	}

	.fb-value-card {
		gap: 12px !important;
	}

	.fb-value-icon {
		width: 38px !important;
		height: 38px !important;
	}

	.fb-value-text strong {
		font-size: 13px !important;
	}

	.fb-value-text span {
		font-size: 11.5px !important;
	}
}

/* Materiality & Craftsmanship Section (Screen <= 900px) */
@media (max-width: 900px) {
	.fb-craft-section {
		padding: 36px 16px !important;
		margin: 32px 0 !important;
		border-radius: 22px !important;
	}

	.fb-craft-grid {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.fb-craft-card {
		padding: 22px 18px !important;
		border-radius: 16px !important;
	}

	.fb-craft-card h3 {
		font-size: 18px !important;
	}

	.fb-craft-card p {
		font-size: 13.5px !important;
	}
}

/* Trade Partnership Section (Screen <= 900px & <= 600px) */
@media (max-width: 900px) {
	.fb-trade-section {
		padding: 0 16px !important;
		margin: 32px 0 !important;
	}

	.fb-trade-card {
		flex-direction: column !important;
		padding: 28px 20px !important;
		border-radius: 22px !important;
		gap: 22px !important;
		text-align: left !important;
	}

	.fb-trade-copy h2 {
		font-size: clamp(22px, 5.5vw, 28px) !important;
	}

	.fb-trade-perks {
		grid-template-columns: 1fr !important;
		gap: 10px !important;
	}

	.fb-trade-cta {
		width: 100% !important;
	}

	.fb-trade-cta .fb-button-terracotta {
		width: 100% !important;
		justify-content: center !important;
	}
}

/* Testimonials Section (Screen <= 900px) */
@media (max-width: 900px) {
	.fb-testimonials-section {
		padding: 36px 16px !important;
	}

	.fb-testimonials-grid {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.fb-testimonial-card {
		padding: 22px 18px !important;
		border-radius: 16px !important;
	}

	.fb-quote {
		font-size: 13.5px !important;
		margin-bottom: 16px !important;
	}
}

/* Account Banner (Screen <= 900px) */
@media (max-width: 900px) {
	.fb-account-cta {
		padding: 0 16px !important;
		margin: 0 0 36px !important;
	}

	.fb-cta-card {
		flex-direction: column !important;
		padding: 26px 18px !important;
		border-radius: 22px !important;
		text-align: center !important;
		gap: 18px !important;
	}

	.fb-cta-copy h2 {
		font-size: clamp(22px, 5.5vw, 28px) !important;
	}

	.fb-cta-action {
		width: 100% !important;
	}

	.fb-cta-action a {
		width: 100% !important;
		justify-content: center !important;
	}
}

/* FAQ Accordion (Screen <= 900px) */
@media (max-width: 900px) {
	.fb-faq-section {
		padding: 36px 16px !important;
	}

	.fb-faq-question {
		padding: 14px 16px !important;
		font-size: 14.5px !important;
	}

	.fb-faq-answer {
		padding: 0 16px 14px 16px !important;
		font-size: 13px !important;
	}
}

/* Footer (Screen <= 900px) */
@media (max-width: 900px) {
	.fb-footer {
		padding: 40px 16px 24px !important;
	}

	.fb-footer-grid {
		grid-template-columns: 1fr !important;
		gap: 28px !important;
		padding-bottom: 28px !important;
	}

	.fb-footer-bottom {
		flex-direction: column !important;
		gap: 16px !important;
		text-align: center !important;
	}

	.fb-footer-copy {
		justify-content: center !important;
		text-align: center !important;
	}

	.fb-footer-badges {
		justify-content: center !important;
		flex-wrap: wrap !important;
		gap: 8px !important;
	}

	.fb-newsletter-pill {
		width: 100% !important;
		box-sizing: border-box !important;
	}
}

/* Mobile Catalog Hero & Category Horizontal Swipe (Screen <= 768px) */
@media (max-width: 768px) {
	.fb-catalog-hero {
		padding: 24px 16px 20px !important;
		text-align: center !important;
	}

	.fb-catalog-title {
		font-size: clamp(24px, 7vw, 32px) !important;
		margin-bottom: 8px !important;
		line-height: 1.25 !important;
	}

	.fb-catalog-sub {
		font-size: 13px !important;
		line-height: 1.6 !important;
		margin-bottom: 16px !important;
	}

	/* Fluid Horizontal Touch-Scroll Category Strip */
	.fb-filter-pills {
		display: flex !important;
		flex-wrap: nowrap !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch !important;
		justify-content: flex-start !important;
		scrollbar-width: none !important;
		padding: 6px 16px !important;
		margin: 0 -16px 12px !important;
		gap: 8px !important;
	}

	.fb-filter-pills::-webkit-scrollbar {
		display: none !important;
	}

	.fb-filter-pill {
		flex-shrink: 0 !important;
		white-space: nowrap !important;
		font-size: 12.5px !important;
		padding: 7px 16px !important;
	}

	/* Sorting & Result Counter Stack */
	.storefront-sorting {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px !important;
		margin-bottom: 24px !important;
		padding-bottom: 14px !important;
	}

	.woocommerce-ordering {
		width: 100% !important;
	}

	.woocommerce-ordering select.orderby {
		width: 100% !important;
		font-size: 12.5px !important;
		padding: 10px 38px 10px 16px !important;
	}

	.woocommerce-result-count {
		text-align: center !important;
		font-size: 12px !important;
	}
}

/* Responsive Product Grids Across All Breakpoints */
@media (min-width: 541px) and (max-width: 900px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 16px !important;
	}
}

@media (max-width: 540px) {
	.woocommerce ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px !important;
	}

	.woocommerce ul.products li.product {
		padding: 8px !important;
		border-radius: 16px !important;
	}

	.woocommerce ul.products li.product img {
		height: 160px !important;
		border-radius: 12px !important;
	}

	.woocommerce ul.products li.product .woocommerce-loop-product__title {
		font-size: 13px !important;
		line-height: 1.35 !important;
		padding: 8px 2px 2px !important;
	}

	.woocommerce ul.products li.product .price {
		font-size: 13px !important;
		padding: 0 2px 8px !important;
	}

	.woocommerce ul.products li.product .button {
		height: 38px !important;
		min-height: 38px !important;
		font-size: 12px !important;
		padding: 0 12px !important;
	}

	.fb-card-cat-badge {
		top: 14px !important;
		left: 14px !important;
		font-size: 9px !important;
		padding: 3px 8px !important;
	}
}

@media (max-width: 340px) {
	.woocommerce ul.products {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	.woocommerce ul.products li.product img {
		height: 220px !important;
	}
}

/* Mobile Single Product Page Layout */
@media (max-width: 768px) {
	.single-product .site-main {
		padding-top: 10px !important;
		padding-bottom: 95px !important;
	}

	.single-product div.product {
		padding: 16px 14px !important;
		border-radius: 20px !important;
		margin-bottom: 24px !important;
	}

	.single-product div.product div.images {
		float: none !important;
		width: 100% !important;
		margin-bottom: 18px !important;
		border-radius: 16px !important;
	}

	.single-product div.product div.images img {
		border-radius: 16px !important;
	}

	.single-product div.product div.summary {
		float: none !important;
		width: 100% !important;
		padding-left: 0 !important;
		margin-top: 0 !important;
	}

	.single-product div.product .product_title {
		font-size: clamp(20px, 6vw, 28px) !important;
		line-height: 1.25 !important;
		margin-bottom: 8px !important;
		word-break: break-word !important;
		overflow-wrap: break-word !important;
	}

	.single-product div.product .price {
		font-size: 20px !important;
		margin-bottom: 14px !important;
	}

	.fb-finish-label {
		font-size: 12px !important;
	}

	.fb-finish-pills {
		gap: 6px !important;
	}

	.fb-finish-pill {
		padding: 6px 12px !important;
		font-size: 11.5px !important;
	}

	/* Form cart buttons wrap comfortably */
	.single-product div.product form.cart {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 10px !important;
		margin: 16px 0 !important;
		width: 100% !important;
	}

	.single-product div.product form.cart .quantity {
		height: 44px !important;
		min-height: 44px !important;
		padding: 0 4px !important;
		flex-shrink: 0 !important;
	}

	.single-product div.product form.cart .single_add_to_cart_button {
		height: 44px !important;
		min-height: 44px !important;
		line-height: 44px !important;
		font-size: 13px !important;
		padding: 0 16px !important;
		flex: 1 1 auto !important;
		min-width: 140px !important;
		white-space: nowrap !important;
	}

	.fb-whatsapp-quote-btn {
		padding: 12px 16px !important;
		font-size: 12.5px !important;
		width: 100% !important;
		justify-content: center !important;
	}

	/* Trust Badges on Mobile */
	.fb-pdp-trust-grid {
		grid-template-columns: 1fr !important;
		gap: 8px !important;
		margin: 16px 0 !important;
	}

	.fb-pdp-trust-item {
		font-size: 11.5px !important;
	}

	/* Tabs on mobile */
	.single-product .woocommerce-tabs {
		margin-top: 24px !important;
		padding-top: 18px !important;
	}

	.single-product .woocommerce-tabs ul.tabs {
		gap: 12px !important;
		margin-bottom: 16px !important;
		display: flex !important;
		flex-wrap: wrap !important;
	}

	.single-product .woocommerce-tabs ul.tabs li a {
		font-size: 12.5px !important;
		padding: 7px 12px !important;
	}

	.single-product .woocommerce-tabs .panel {
		padding: 18px 14px !important;
		border-radius: 16px !important;
	}

	/* Specifications Table Responsive */
	.fb-specs-table {
		font-size: 12px !important;
		width: 100% !important;
	}

	.fb-specs-table th,
	.fb-specs-table td {
		padding: 8px 10px !important;
		word-break: break-word !important;
	}

	/* Floating Sticky Bottom Bar Guard */
	.fb-sticky-mobile-bar {
		display: flex !important;
		box-sizing: border-box !important;
		width: 100% !important;
		max-width: 100vw !important;
		left: 0 !important;
		right: 0 !important;
		bottom: 0 !important;
		padding: 8px 12px !important;
		gap: 8px !important;
		overflow: hidden !important;
	}

	.fb-sticky-bar-info {
		flex: 1 1 auto !important;
		min-width: 0 !important;
		gap: 8px !important;
		overflow: hidden !important;
	}

	.fb-sticky-thumb {
		width: 36px !important;
		height: 36px !important;
		flex-shrink: 0 !important;
	}

	.fb-sticky-text {
		min-width: 0 !important;
		overflow: hidden !important;
	}

	.fb-sticky-title {
		font-size: 12px !important;
		white-space: nowrap !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		max-width: 100% !important;
	}

	.fb-sticky-price {
		font-size: 12px !important;
		font-weight: 700 !important;
	}

	.fb-sticky-cta {
		padding: 8px 14px !important;
		font-size: 12px !important;
		white-space: nowrap !important;
		flex-shrink: 0 !important;
	}
}

/* ==========================================================================
   19. Clean Full-Width Store Architecture & Sidebar Suppression
   ========================================================================== */
#secondary,
.widget-area,
aside#secondary,
.sidebar,
.storefront-sidebar {
	display: none !important;
}

#primary,
.content-area,
.site-main,
.woocommerce-page #primary,
.woocommerce #primary {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.site-content .col-full {
	max-width: 1360px !important;
	padding-left: 28px !important;
	padding-right: 28px !important;
}

/* ==========================================================================
   20. Architectural Catalog Toolbar & Luxury Custom Sorting Dropdown
   ========================================================================== */
.storefront-sorting {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	flex-wrap: wrap !important;
	gap: 16px 24px !important;
	margin: 28px 0 36px !important;
	padding: 0 !important;
	border: none !important;
	position: relative !important;
	width: 100% !important;
	box-sizing: border-box !important;
}

.storefront-sorting::before,
.storefront-sorting::after {
	display: none !important;
}

/* Empty notices wrapper shouldn't take flex space */
.storefront-sorting .woocommerce-notices-wrapper {
	margin: 0 !important;
	padding: 0 !important;
	width: 0 !important;
	height: 0 !important;
	flex-shrink: 1 !important;
}

.storefront-sorting .woocommerce-notices-wrapper:empty {
	display: none !important;
}

/* Toolbar items alignment: perfect vertical centering across the bar */
.storefront-sorting .woocommerce-ordering,
.storefront-sorting .woocommerce-result-count,
.storefront-sorting .woocommerce-pagination {
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
	display: inline-flex !important;
	align-items: center !important;
	vertical-align: middle !important;
}

/* Result count: refined architectural typography */
.storefront-sorting .woocommerce-result-count {
	font-family: var(--fb-font-ui, 'Plus Jakarta Sans', sans-serif) !important;
	font-size: 13.5px !important;
	font-weight: 500 !important;
	color: var(--fb-muted, #6e7368) !important;
	letter-spacing: -0.01em !important;
	line-height: 1.4 !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Fallback native select styling (for no-JS or pre-hydration) */
.woocommerce-ordering {
	position: relative !important;
	margin: 0 !important;
	float: none !important;
}

.woocommerce-ordering select.orderby {
	appearance: none !important;
	-webkit-appearance: none !important;
	-moz-appearance: none !important;
	background: #ffffff url("data:image/svg+xml,%3Csvg width='10' height='6' viewBox='0 0 10 6' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 1L5 5L9 1' stroke='%231c201a' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 16px center !important;
	border: 1.5px solid var(--fb-line, #e2dcd3) !important;
	border-radius: var(--fb-radius-pill, 9999px) !important;
	padding: 0 40px 0 18px !important;
	height: 42px !important;
	font-family: var(--fb-font-ui, 'Plus Jakarta Sans', sans-serif) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--fb-ink, #1c201a) !important;
	outline: none !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
	cursor: pointer !important;
	box-sizing: border-box !important;
	transition: all 0.22s ease !important;
}

.woocommerce-ordering select.orderby:hover,
.woocommerce-ordering select.orderby:focus {
	border-color: var(--fb-action, #a24b31) !important;
	box-shadow: 0 0 0 3px rgba(162, 75, 49, 0.08) !important;
}

/* Visually hide native OS select once enhanced into luxury dropdown */
.woocommerce-ordering select.orderby.fb-select-enhanced {
	position: absolute !important;
	opacity: 0 !important;
	pointer-events: none !important;
	width: 1px !important;
	height: 1px !important;
	margin: -1px !important;
	padding: 0 !important;
	border: 0 !important;
	clip: rect(0 0 0 0) !important;
	overflow: hidden !important;
}

/* Custom Luxury Architectural Sorting Component */
.fb-custom-select-wrap {
	position: relative !important;
	display: inline-flex !important;
	vertical-align: middle !important;
}

.fb-custom-select-trigger {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	background: #ffffff !important;
	border: 1.5px solid var(--fb-line, #e2dcd3) !important;
	border-radius: var(--fb-radius-pill, 9999px) !important;
	padding: 0 18px !important;
	height: 42px !important;
	box-sizing: border-box !important;
	font-family: var(--fb-font-ui, 'Plus Jakarta Sans', sans-serif) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--fb-ink, #1c201a) !important;
	cursor: pointer !important;
	outline: none !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.03) !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
	white-space: nowrap !important;
	user-select: none !important;
}

.fb-custom-select-trigger:hover,
.fb-custom-select-wrap.is-open .fb-custom-select-trigger {
	border-color: var(--fb-action, #a24b31) !important;
	box-shadow: 0 4px 14px rgba(162, 75, 49, 0.12) !important;
	color: var(--fb-ink, #1c201a) !important;
}

.fb-custom-select-arrow {
	transition: transform 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
	stroke: var(--fb-ink, #1c201a) !important;
	flex-shrink: 0 !important;
}

.fb-custom-select-wrap.is-open .fb-custom-select-arrow {
	transform: rotate(180deg) !important;
	stroke: var(--fb-action, #a24b31) !important;
}

.fb-custom-select-dropdown {
	position: absolute !important;
	top: calc(100% + 8px) !important;
	left: 0 !important;
	min-width: 230px !important;
	background: rgba(255, 255, 255, 0.98) !important;
	backdrop-filter: blur(20px) !important;
	-webkit-backdrop-filter: blur(20px) !important;
	border: 1px solid rgba(226, 220, 211, 0.95) !important;
	border-radius: 18px !important;
	box-shadow: 0 20px 48px -6px rgba(28, 32, 26, 0.14), 0 8px 18px -2px rgba(28, 32, 26, 0.06) !important;
	padding: 8px !important;
	z-index: 1000 !important;
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	transform: translateY(-8px) scale(0.97) !important;
	transform-origin: top left !important;
	transition: opacity 0.2s cubic-bezier(0.16, 1, 0.3, 1), transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.2s !important;
}

.fb-custom-select-wrap.is-open .fb-custom-select-dropdown {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	transform: translateY(0) scale(1) !important;
}

.fb-custom-select-option {
	display: flex !important;
	align-items: center !important;
	justify-content: space-between !important;
	gap: 12px !important;
	padding: 9px 14px !important;
	border-radius: 12px !important;
	font-family: var(--fb-font-ui, 'Plus Jakarta Sans', sans-serif) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--fb-ink, #1c201a) !important;
	cursor: pointer !important;
	outline: none !important;
	transition: background 0.15s ease, color 0.15s ease !important;
	user-select: none !important;
}

.fb-custom-select-option:hover,
.fb-custom-select-option:focus {
	background: #f7f4ee !important;
	color: var(--fb-action, #a24b31) !important;
}

.fb-custom-select-option.is-selected {
	background: rgba(162, 75, 49, 0.08) !important;
	color: var(--fb-action, #a24b31) !important;
	font-weight: 600 !important;
}

.fb-opt-check {
	display: none !important;
	color: var(--fb-action, #a24b31) !important;
	flex-shrink: 0 !important;
}

.fb-custom-select-option.is-selected .fb-opt-check {
	display: inline-block !important;
}

/* Pagination inside the toolbar: align cleanly without huge margins or top dividers */
.storefront-sorting .woocommerce-pagination {
	margin: 0 !important;
	padding: 0 !important;
	position: static !important;
	clear: none !important;
}

.storefront-sorting .woocommerce-pagination::before {
	display: none !important;
}

.storefront-sorting .woocommerce-pagination ul.page-numbers {
	padding: 4px 6px !important;
	gap: 4px !important;
	height: 42px !important;
	box-sizing: border-box !important;
}

.storefront-sorting .woocommerce-pagination ul.page-numbers li .page-numbers {
	min-width: 34px !important;
	height: 34px !important;
	padding: 0 10px !important;
	font-size: 13px !important;
	line-height: 34px !important;
}

/* Bottom sorting bar */
.site-main > .storefront-sorting:last-child {
	justify-content: center !important;
	margin: 56px 0 32px !important;
	padding-top: 28px !important;
	position: relative !important;
}

.site-main > .storefront-sorting:last-child::before {
	content: '' !important;
	display: block !important;
	position: absolute !important;
	top: 0 !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	width: 140px !important;
	height: 1px !important;
	background: linear-gradient(90deg, transparent, var(--fb-line, #e2dcd3), transparent) !important;
}

@media (max-width: 768px) {
	.storefront-sorting {
		flex-direction: column !important;
		align-items: center !important;
		justify-content: center !important;
		gap: 16px !important;
	}
	.storefront-sorting .woocommerce-ordering,
	.storefront-sorting .woocommerce-result-count,
	.storefront-sorting .woocommerce-pagination {
		width: 100% !important;
		justify-content: center !important;
		text-align: center !important;
	}
	.storefront-sorting .woocommerce-ordering {
		display: flex !important;
		justify-content: center !important;
	}
	.fb-custom-select-wrap {
		width: 100% !important;
		max-width: 320px !important;
	}
	.fb-custom-select-trigger {
		width: 100% !important;
	}
}

/* ==========================================================================
   21. Architectural WooCommerce Catalog Pagination
   ========================================================================== */
nav.woocommerce-pagination,
.woocommerce-pagination {
	text-align: center;
	margin: 56px 0 32px;
	padding: 24px 0 0;
	position: relative;
	clear: both;
}

nav.woocommerce-pagination::before,
.woocommerce-pagination::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 120px;
	height: 1px;
	background: linear-gradient(90deg, transparent, var(--fb-line), transparent);
}

.woocommerce-pagination ul.page-numbers {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	list-style: none !important;
	margin: 0 !important;
	padding: 6px !important;
	background: rgba(255, 255, 255, 0.7) !important;
	backdrop-filter: blur(12px) !important;
	-webkit-backdrop-filter: blur(12px) !important;
	border: 1px solid var(--fb-line) !important;
	border-radius: var(--fb-radius-pill) !important;
	box-shadow: var(--fb-shadow-xs) !important;
}

.woocommerce-pagination ul.page-numbers li {
	display: inline-block !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
	float: none !important;
}

.woocommerce-pagination ul.page-numbers li .page-numbers {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	min-width: 42px !important;
	height: 42px !important;
	padding: 0 14px !important;
	font-family: var(--fb-font-ui) !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	line-height: 1 !important;
	color: var(--fb-ink) !important;
	text-decoration: none !important;
	border-radius: var(--fb-radius-pill) !important;
	border: 1px solid transparent !important;
	background: transparent !important;
	transition: all var(--fb-transition-fast) !important;
	user-select: none !important;
}

.woocommerce-pagination ul.page-numbers li a.page-numbers:hover {
	background: #ffffff !important;
	border-color: var(--fb-line) !important;
	color: var(--fb-action) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04) !important;
}

.woocommerce-pagination ul.page-numbers li span.page-numbers.current {
	background: var(--fb-action) !important;
	color: #ffffff !important;
	border-color: var(--fb-action) !important;
	font-weight: 700 !important;
	box-shadow: 0 4px 14px rgba(162, 75, 49, 0.28) !important;
}

.woocommerce-pagination ul.page-numbers li .page-numbers.dots {
	min-width: 28px !important;
	letter-spacing: 2px !important;
	color: var(--fb-muted) !important;
	background: transparent !important;
	border: none !important;
}

.woocommerce-pagination ul.page-numbers li .page-numbers.prev,
.woocommerce-pagination ul.page-numbers li .page-numbers.next {
	gap: 6px !important;
	padding: 0 18px !important;
	font-weight: 600 !important;
}

.woocommerce-pagination ul.page-numbers li .page-numbers.prev svg,
.woocommerce-pagination ul.page-numbers li .page-numbers.next svg {
	transition: transform var(--fb-transition-fast) !important;
}

.woocommerce-pagination ul.page-numbers li a.page-numbers.prev:hover svg {
	transform: translateX(-2px) !important;
}

.woocommerce-pagination ul.page-numbers li a.page-numbers.next:hover svg {
	transform: translateX(2px) !important;
}

@media (max-width: 640px) {
	.woocommerce-pagination ul.page-numbers {
		border-radius: 20px !important;
		padding: 4px !important;
		gap: 4px !important;
	}
	.woocommerce-pagination ul.page-numbers li .page-numbers {
		min-width: 36px !important;
		height: 36px !important;
		padding: 0 10px !important;
		font-size: 12.5px !important;
	}
	.woocommerce-pagination ul.page-numbers li .page-numbers.prev span,
	.woocommerce-pagination ul.page-numbers li .page-numbers.next span {
		display: none !important;
	}
	.woocommerce-pagination ul.page-numbers li .page-numbers.prev,
	.woocommerce-pagination ul.page-numbers li .page-numbers.next {
		padding: 0 10px !important;
	}
}

/* ==========================================================================
   21. Permanent Double-Scrollbar Elimination & Ultra-Smooth Native Scroll
   ========================================================================== */
html {
	overflow-x: clip !important;
	overflow-y: scroll !important;
	scroll-behavior: auto !important;
}

body,
#page,
.site,
.site-content,
.site-main {
	overflow-x: clip !important;
	overflow-y: visible !important;
}

/* ==========================================================================
   22. Luxury Floating Product Navigation Arrows (Single Product Pages)
   ========================================================================== */
#fb-product-pagination {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	pointer-events: none;
	z-index: 900;
}

.fb-pagi-btn {
	pointer-events: all;
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.94);
	backdrop-filter: blur(16px);
	-webkit-backdrop-filter: blur(16px);
	border: 1.5px solid rgba(162, 75, 49, 0.22);
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.08), 0 1px 4px rgba(0, 0, 0, 0.04);
	color: var(--fb-ink);
	text-decoration: none;
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
	z-index: 900;
}

.fb-pagi-btn:hover {
	background: #ffffff;
	border-color: var(--fb-action);
	color: var(--fb-action);
	box-shadow: 0 8px 32px rgba(162, 75, 49, 0.15), 0 2px 8px rgba(0, 0, 0, 0.06);
	transform: translateY(-50%) scale(1.06);
}

.fb-pagi-prev {
	left: 16px;
}

.fb-pagi-next {
	right: 16px;
}

.fb-pagi-card {
	position: absolute;
	top: 50%;
	transform: translateY(-50%) scaleX(0.88);
	transform-origin: left center;
	opacity: 0;
	transition: opacity 0.22s ease, transform 0.22s cubic-bezier(0.4, 0, 0.2, 1);
	pointer-events: none;
	width: 210px;
	background: rgba(255, 255, 255, 0.97);
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1px solid var(--fb-line);
	border-radius: 16px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.12);
	padding: 14px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}

.fb-pagi-card--prev {
	left: calc(100% + 12px);
	transform-origin: left center;
}

.fb-pagi-card--next {
	right: calc(100% + 12px);
	transform-origin: right center;
}

.fb-pagi-btn:hover .fb-pagi-card {
	opacity: 1;
	transform: translateY(-50%) scaleX(1);
}

.fb-pagi-label {
	font-family: var(--fb-font-ui);
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--fb-action);
}

.fb-pagi-media {
	width: 100%;
	height: 130px;
	border-radius: 10px;
	overflow: hidden;
	background: var(--fb-bg);
}

.fb-pagi-media .fb-pagi-thumb {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.fb-pagi-title {
	font-family: var(--fb-font-display);
	font-size: 12.5px;
	font-weight: 500;
	color: var(--fb-ink);
	line-height: 1.35;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.fb-pagi-price {
	font-family: var(--fb-font-ui);
	font-size: 12px;
	font-weight: 600;
	color: var(--fb-action);
}

@media (max-width: 900px) {
	.fb-pagi-btn {
		display: none !important;
	}
}


/* ==========================================================================
   Universal Suppression of Legacy / Unwanted Storefront Elements
   ========================================================================== */
#secondary,
.widget-area,
aside#secondary,
.sidebar,
.storefront-sidebar,
.site-header-cart,
.widget_shopping_cart,
.storefront-handheld-footer-bar {
	display: none !important;
}

#primary,
.content-area,
.site-main,
.woocommerce-page #primary,
.woocommerce #primary {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

.site-content .col-full {
	max-width: 1360px !important;
	padding-left: 28px !important;
	padding-right: 28px !important;
}

.woocommerce-breadcrumb a,
.woocommerce-breadcrumb a:focus,
.woocommerce-breadcrumb a:active {
	outline: none !important;
	box-shadow: none !important;
	border: none !important;
}


/* ==========================================================================
   45. Luxury WooCommerce Account & Login Card (Japandi Aesthetics)
   ========================================================================== */
.woocommerce-account .woocommerce {
	max-width: 100% !important;
	margin: 0 auto !important;
}

.woocommerce-account:not(.logged-in) .woocommerce {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	padding: 40px 16px !important;
	min-height: 50vh !important;
}

.woocommerce-form-login,
.woocommerce-form-register,
.fb-access-card {
	background: #ffffff !important;
	border: 1px solid rgba(229, 222, 210, 0.9) !important;
	border-radius: 28px !important;
	padding: 40px 36px !important;
	box-shadow: 0 20px 48px rgba(44, 42, 38, 0.06), 0 2px 8px rgba(44, 42, 38, 0.02) !important;
	max-width: 520px !important;
	width: 100% !important;
	margin: 20px auto 40px auto !important;
	box-sizing: border-box !important;
	transition: all 0.3s ease !important;
}

.woocommerce-account h2:first-of-type,
.woocommerce-form-login h2,
.woocommerce-form-login h3 {
	font-family: "Playfair Display", "Times New Roman", serif !important;
	font-size: 26px !important;
	font-weight: 500 !important;
	letter-spacing: -0.02em !important;
	color: #1c201a !important;
	margin-bottom: 24px !important;
	text-align: center !important;
}

.woocommerce-form-login .form-row {
	margin-bottom: 20px !important;
	padding: 0 !important;
}

.woocommerce-form-login label {
	display: block !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	letter-spacing: 0.01em !important;
	color: #3d4239 !important;
	margin-bottom: 8px !important;
}

.woocommerce-form-login .input-text,
.woocommerce-form-login input[type="text"],
.woocommerce-form-login input[type="password"],
.woocommerce-form-login input[type="email"] {
	width: 100% !important;
	height: 50px !important;
	background: #faf8f2 !important;
	border: 1px solid #e5ded2 !important;
	border-radius: 14px !important;
	padding: 0 18px !important;
	font-size: 15px !important;
	color: #1c201a !important;
	box-sizing: border-box !important;
	transition: all 0.2s ease !important;
	outline: none !important;
	box-shadow: none !important;
}

.woocommerce-form-login .input-text:focus,
.woocommerce-form-login input[type="text"]:focus,
.woocommerce-form-login input[type="password"]:focus,
.woocommerce-form-login input[type="email"]:focus {
	background: #ffffff !important;
	border-color: #9e4a3b !important;
	box-shadow: 0 0 0 3px rgba(158, 74, 59, 0.12) !important;
}

.woocommerce-form-login__rememberme {
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px !important;
	font-size: 13.5px !important;
	color: #6e7368 !important;
	cursor: pointer !important;
	margin: 6px 0 18px 0 !important;
}

.woocommerce-form-login__rememberme input[type="checkbox"] {
	width: 17px !important;
	height: 17px !important;
	accent-color: #9e4a3b !important;
	cursor: pointer !important;
	border-radius: 4px !important;
}

.woocommerce-form-login__submit,
button.woocommerce-form-login__submit {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 100% !important;
	height: 50px !important;
	background: #9e4a3b !important;
	color: #ffffff !important;
	font-family: inherit !important;
	font-size: 15px !important;
	font-weight: 600 !important;
	letter-spacing: 0.02em !important;
	border: none !important;
	border-radius: 9999px !important;
	cursor: pointer !important;
	transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-shadow: 0 4px 14px rgba(158, 74, 59, 0.22) !important;
	text-decoration: none !important;
}

.woocommerce-form-login__submit:hover,
button.woocommerce-form-login__submit:hover {
	background: #84382c !important;
	transform: translateY(-1.5px) !important;
	box-shadow: 0 6px 20px rgba(158, 74, 59, 0.3) !important;
	color: #ffffff !important;
}

.woocommerce-LostPassword,
.lost_password {
	text-align: center !important;
	margin-top: 18px !important;
	font-size: 13.5px !important;
}

.woocommerce-LostPassword a,
.lost_password a {
	color: #9e4a3b !important;
	text-decoration: none !important;
	font-weight: 500 !important;
	transition: color 0.2s ease !important;
}

.woocommerce-LostPassword a:hover,
.lost_password a:hover {
	color: #84382c !important;
	text-decoration: underline !important;
}

/* ==========================================================================
   Header Additions: Deals Link & Orders Pill
   ========================================================================== */
.fb-nav-deals {
	display: inline-flex !important;
	align-items: center !important;
	gap: 4px !important;
	color: #a24b31 !important;
	font-weight: 600 !important;
}

.fb-nav-deals:hover {
	color: #883921 !important;
}

.fb-flame-icon,
.fb-flame-badge {
	display: inline-block;
	font-size: 13px;
	line-height: 1;
}

.fb-orders-pill {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	padding: 8px 14px !important;
	border-radius: 9999px !important;
	background: rgba(28, 32, 26, 0.04) !important;
	border: 1px solid rgba(28, 32, 26, 0.08) !important;
	color: #1c201a !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	text-decoration: none !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
}

.fb-orders-pill:hover {
	background: rgba(162, 75, 49, 0.08) !important;
	border-color: rgba(162, 75, 49, 0.25) !important;
	color: #a24b31 !important;
	transform: translateY(-1px);
}

@media (max-width: 600px) {
	.fb-orders-pill span {
		display: none;
	}
	.fb-orders-pill {
		padding: 8px !important;
	}
}

/* ==========================================================================
   Essential & Legal Pages: About, Contact, Policies
   ========================================================================== */
.fb-essential-page-main {
	background: #f9f8f5;
	min-height: 70vh;
	padding: 40px 20px 80px;
}

.fb-page-container {
	max-width: 1040px;
	margin: 0 auto;
}

.fb-page-header {
	text-align: center;
	margin-bottom: 48px;
}

.fb-page-header .fb-eyebrow {
	display: inline-block;
	font-size: 11.5px;
	font-weight: 700;
	letter-spacing: 0.12em;
	color: #a24b31;
	margin-bottom: 12px;
	text-transform: uppercase;
}

.fb-page-title {
	font-family: var(--fb-font-serif, "Playfair Display", serif);
	font-size: clamp(30px, 4.5vw, 46px);
	font-weight: 500;
	color: #1c201a;
	line-height: 1.15;
	margin: 0 0 16px;
}

.fb-page-lead {
	font-size: clamp(15px, 1.8vw, 17px);
	color: #6e7368;
	max-width: 680px;
	margin: 0 auto;
	line-height: 1.6;
}

/* About Page Specifics */
.fb-about-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
	gap: 24px;
	margin-bottom: 48px;
}

.fb-about-card {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 20px;
	padding: 32px 28px;
	box-shadow: 0 4px 14px -2px rgba(28, 32, 26, 0.04);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.fb-about-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 10px 28px -4px rgba(28, 32, 26, 0.08);
}

.fb-card-num {
	font-family: var(--fb-font-serif, "Playfair Display", serif);
	font-size: 28px;
	font-weight: 600;
	color: #a24b31;
	margin-bottom: 16px;
}

.fb-about-card h3 {
	font-size: 19px;
	font-weight: 600;
	color: #1c201a;
	margin: 0 0 12px;
}

.fb-about-card p {
	font-size: 14.5px;
	color: #3d4239;
	line-height: 1.65;
	margin: 0;
}

.fb-about-manifesto {
	background: #1c201a;
	color: #ffffff;
	border-radius: 24px;
	padding: 56px 40px;
	text-align: center;
	margin-top: 24px;
}

.fb-manifesto-inner {
	max-width: 720px;
	margin: 0 auto;
}

.fb-manifesto-inner h2 {
	font-family: var(--fb-font-serif, "Playfair Display", serif);
	font-size: clamp(26px, 3.5vw, 36px);
	color: #ffffff;
	margin: 0 0 18px;
}

.fb-manifesto-inner p {
	font-size: 16px;
	color: #c9cdc5;
	line-height: 1.7;
	margin: 0 0 32px;
}

.fb-manifesto-actions {
	display: flex;
	gap: 16px;
	justify-content: center;
	flex-wrap: wrap;
}

/* Contact Page Specifics */
.fb-contact-grid {
	display: grid;
	grid-template-columns: 1fr 1.3fr;
	gap: 32px;
	align-items: start;
}

@media (max-width: 820px) {
	.fb-contact-grid {
		grid-template-columns: 1fr;
	}
}

.fb-contact-info-col {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.fb-info-card {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 18px;
	padding: 24px 22px;
	box-shadow: 0 2px 10px rgba(28, 32, 26, 0.03);
}

.fb-info-icon {
	color: #a24b31;
	margin-bottom: 12px;
}

.fb-info-card h3 {
	font-size: 17px;
	font-weight: 600;
	color: #1c201a;
	margin: 0 0 6px;
}

.fb-info-card p {
	font-size: 13.5px;
	color: #6e7368;
	line-height: 1.5;
	margin: 0 0 10px;
}

.fb-contact-link {
	display: inline-block;
	color: #a24b31;
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
}

.fb-contact-link:hover {
	text-decoration: underline;
}

.fb-form-card {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 24px;
	padding: 36px 32px;
	box-shadow: 0 6px 22px -3px rgba(28, 32, 26, 0.06);
}

.fb-form-card h3 {
	font-size: 22px;
	font-weight: 600;
	color: #1c201a;
	margin: 0 0 6px;
}

.fb-form-card .fb-sub {
	font-size: 13.5px;
	color: #6e7368;
	margin: 0 0 24px;
}

.fb-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
}

@media (max-width: 580px) {
	.fb-form-row {
		grid-template-columns: 1fr;
	}
}

.fb-form-field {
	margin-bottom: 18px;
}

.fb-form-field label {
	display: block;
	font-size: 12.5px;
	font-weight: 600;
	color: #1c201a;
	margin-bottom: 6px;
}

.fb-form-field input,
.fb-form-field select,
.fb-form-field textarea {
	width: 100% !important;
	padding: 12px 14px !important;
	border: 1px solid #dcd7ce !important;
	border-radius: 10px !important;
	font-size: 14px !important;
	background: #ffffff !important;
	color: #1c201a !important;
	box-sizing: border-box !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.fb-form-field input:focus,
.fb-form-field select:focus,
.fb-form-field textarea:focus {
	outline: none !important;
	border-color: #a24b31 !important;
	box-shadow: 0 0 0 3px rgba(162, 75, 49, 0.12) !important;
}

/* Policy Pages (Shipping, Returns, Privacy, Terms) */
.fb-policy-body {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 24px;
	padding: 44px 40px;
	box-shadow: 0 4px 20px -3px rgba(28, 32, 26, 0.05);
}

@media (max-width: 600px) {
	.fb-policy-body {
		padding: 28px 20px;
	}
}

.fb-policy-section {
	margin-bottom: 36px;
}

.fb-policy-section:last-child {
	margin-bottom: 0;
}

.fb-policy-section h2 {
	font-size: 19px;
	font-weight: 600;
	color: #1c201a;
	margin: 0 0 12px;
	padding-bottom: 8px;
	border-bottom: 1px solid #f0ede6;
}

.fb-policy-section p {
	font-size: 14.5px;
	color: #3d4239;
	line-height: 1.7;
	margin: 0 0 12px;
}

.fb-policy-section ul,
.fb-policy-section ol {
	padding-left: 20px;
	margin: 0 0 12px;
}

.fb-policy-section li {
	font-size: 14px;
	color: #3d4239;
	line-height: 1.65;
	margin-bottom: 8px;
}

/* ==========================================================================
   Amazon-Style Recent Orders Section
   ========================================================================== */
.fb-recent-orders-section {
	padding: 32px 0 24px;
	background: transparent;
}

.fb-section-inner {
	max-width: 1200px;
	margin: 0 auto;
	padding: 0 20px;
}

.fb-orders-header-row {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 20px;
}

.fb-orders-heading-group h2 {
	font-family: var(--fb-font-serif, "Playfair Display", serif);
	font-size: 26px;
	color: #1c201a;
	margin: 4px 0 0;
}

.fb-orders-view-all {
	color: #a24b31;
	font-weight: 600;
	font-size: 13.5px;
	text-decoration: none;
}

.fb-orders-view-all:hover {
	text-decoration: underline;
}

.fb-orders-cards-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(360px, 1fr));
	gap: 20px;
}

.fb-order-card {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 18px;
	overflow: hidden;
	box-shadow: 0 4px 14px -2px rgba(28, 32, 26, 0.05);
}

.fb-order-card-top {
	background: #f7f5f0;
	padding: 14px 18px;
	border-bottom: 1px solid #e8e5dc;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px;
}

.fb-order-meta-left {
	display: flex;
	flex-direction: column;
	gap: 2px;
}

.fb-order-num {
	font-weight: 600;
	font-size: 13.5px;
	color: #1c201a;
}

.fb-order-date {
	font-size: 12px;
	color: #6e7368;
}

.fb-order-meta-right {
	display: flex;
	align-items: center;
	gap: 12px;
}

.fb-order-total {
	font-weight: 700;
	font-size: 15px;
	color: #1c201a;
}

.fb-order-status-badge {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 10px;
	border-radius: 9999px;
	font-size: 11.5px;
	font-weight: 600;
	background: #eaf5eb;
	color: #226a33;
}

.fb-status-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: currentColor;
}

.fb-order-status-badge.fb-status-processing {
	background: #fff4e5;
	color: #b76e00;
}

.fb-order-status-badge.fb-status-on-hold {
	background: #edf2f7;
	color: #4a5568;
}

/* Amazon-Style Visual Tracker */
.fb-order-progress-track {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 18px 24px 10px;
}

.fb-order-progress-track::before {
	content: "";
	position: absolute;
	top: 26px;
	left: 36px;
	right: 36px;
	height: 2px;
	background: #e8e5dc;
	z-index: 1;
}

.fb-track-step {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}

.fb-step-marker {
	width: 20px;
	height: 20px;
	border-radius: 50%;
	background: #e8e5dc;
	color: #6e7368;
	font-size: 10px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}

.fb-step-label {
	font-size: 11px;
	color: #6e7368;
	font-weight: 500;
}

.fb-track-step.is-active .fb-step-marker {
	background: #226a33;
	color: #ffffff;
}

.fb-track-step.is-active .fb-step-label {
	color: #1c201a;
	font-weight: 600;
}

.fb-order-items-preview {
	padding: 14px 18px;
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.fb-order-preview-row {
	display: flex;
	align-items: center;
	gap: 14px;
}

.fb-preview-thumb img {
	width: 52px;
	height: 52px;
	object-fit: cover;
	border-radius: 8px;
	border: 1px solid #e8e5dc;
}

.fb-preview-placeholder {
	width: 52px;
	height: 52px;
	background: #f0ede6;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
}

.fb-preview-details {
	flex: 1;
	min-width: 0;
}

.fb-preview-title {
	display: block;
	font-size: 13.5px;
	color: #1c201a;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.fb-preview-qty {
	font-size: 12px;
	color: #6e7368;
}

.fb-buy-again-btn {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	background: #ffffff !important;
	border: 1px solid #dcd7ce !important;
	border-radius: 9999px !important;
	padding: 7px 14px !important;
	font-size: 12.5px !important;
	font-weight: 600 !important;
	color: #1c201a !important;
	cursor: pointer !important;
	transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1) !important;
	white-space: nowrap !important;
}

.fb-buy-again-btn:hover {
	background: #a24b31 !important;
	border-color: #a24b31 !important;
	color: #ffffff !important;
	transform: translateY(-1px);
}

.fb-order-card-footer {
	padding: 12px 18px;
	border-top: 1px solid #f0ede6;
	text-align: right;
}

.fb-order-link {
	font-size: 12.5px;
	font-weight: 600;
	color: #a24b31;
	text-decoration: none;
}

.fb-order-link:hover {
	text-decoration: underline;
}

/* Prompt Card for Logged-Out or New Users */
.fb-orders-prompt-card {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 20px;
	padding: 24px 28px;
	display: flex;
	align-items: center;
	gap: 24px;
	box-shadow: 0 4px 16px -2px rgba(28, 32, 26, 0.04);
}

@media (max-width: 768px) {
	.fb-orders-prompt-card {
		flex-direction: column;
		text-align: center;
		padding: 24px 18px;
	}
}

.fb-prompt-icon-badge {
	width: 56px;
	height: 56px;
	border-radius: 16px;
	background: rgba(162, 75, 49, 0.08);
	color: #a24b31;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
}

.fb-prompt-copy-col {
	flex: 1;
}

.fb-prompt-copy-col h3 {
	font-size: 18px;
	font-weight: 600;
	color: #1c201a;
	margin: 0 0 4px;
}

.fb-prompt-copy-col p {
	font-size: 13.5px;
	color: #6e7368;
	margin: 0;
	line-height: 1.5;
}

.fb-prompt-actions-col {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
}

/* Quick Track Form & Result */
.fb-quick-track-wrap {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 20px;
	padding: 28px 24px;
	margin-top: 14px;
}

.fb-track-form h4 {
	font-size: 17px;
	color: #1c201a;
	margin: 0 0 4px;
}

.fb-track-desc {
	font-size: 13px;
	color: #6e7368;
	margin: 0 0 16px;
}

.fb-track-form-row {
	display: grid;
	grid-template-columns: 1fr 1fr auto;
	gap: 14px;
	align-items: flex-end;
}

@media (max-width: 640px) {
	.fb-track-form-row {
		grid-template-columns: 1fr;
	}
}

.fb-track-field label {
	display: block;
	font-size: 12px;
	font-weight: 600;
	color: #1c201a;
	margin-bottom: 5px;
}

.fb-track-field input {
	width: 100% !important;
	padding: 10px 12px !important;
	border: 1px solid #dcd7ce !important;
	border-radius: 8px !important;
	font-size: 13.5px !important;
}

.fb-track-card-result {
	margin-top: 20px;
	padding: 20px;
	background: #f9f8f5;
	border: 1px solid #e8e5dc;
	border-radius: 14px;
}

.fb-track-res-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 16px;
}

.fb-track-date {
	font-size: 12px;
	color: #6e7368;
}

.fb-track-meta-row {
	display: flex;
	gap: 20px;
	font-size: 13px;
	color: #3d4239;
	margin: 16px 0;
	flex-wrap: wrap;
}

.fb-progress-timeline {
	display: flex;
	justify-content: space-between;
	position: relative;
	margin: 20px 10px;
}

.fb-progress-timeline::before {
	content: "";
	position: absolute;
	top: 8px;
	left: 20px;
	right: 20px;
	height: 2px;
	background: #e8e5dc;
	z-index: 1;
}

.fb-timeline-step {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}

.fb-timeline-dot {
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background: #e8e5dc;
}

.fb-timeline-label {
	font-size: 11px;
	color: #6e7368;
}

.fb-timeline-step.is-complete .fb-timeline-dot {
	background: #226a33;
}

.fb-timeline-step.is-complete .fb-timeline-label {
	color: #1c201a;
	font-weight: 600;
}

.fb-track-items-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
	border-top: 1px solid #e8e5dc;
	padding-top: 14px;
}

.fb-track-item-row {
	display: flex;
	align-items: center;
	gap: 12px;
}

.fb-track-item-img {
	width: 44px;
	height: 44px;
	object-fit: cover;
	border-radius: 6px;
}

.fb-track-item-info {
	flex: 1;
	font-size: 13px;
}

.fb-track-item-info strong {
	display: block;
	color: #1c201a;
}

.fb-track-item-info span {
	color: #6e7368;
	font-size: 12px;
}

.fb-track-error {
	padding: 12px 16px;
	background: #fde8e8;
	color: #9b1c1c;
	border-radius: 8px;
	font-size: 13.5px;
	margin-top: 12px;
}

/* ==========================================================================
   Amazon-Style Today's Deals (Limited Time Offers)
   ========================================================================== */
.fb-deals-section {
	padding: 48px 0 32px;
}

.fb-deals-header-bar {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 28px;
	flex-wrap: wrap;
	gap: 16px;
}

.fb-deals-title-wrap h2 {
	font-family: var(--fb-font-serif, "Playfair Display", serif);
	font-size: clamp(24px, 3.2vw, 34px);
	color: #1c201a;
	margin: 6px 0;
}

.fb-deals-sub {
	font-size: 14px;
	color: #6e7368;
	margin: 0;
}

.fb-countdown-card {
	display: flex;
	align-items: center;
	gap: 12px;
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 16px;
	padding: 10px 18px;
	box-shadow: 0 4px 14px -2px rgba(28, 32, 26, 0.04);
}

.fb-countdown-label {
	font-size: 12px;
	font-weight: 700;
	color: #a24b31;
	letter-spacing: 0.05em;
	text-transform: uppercase;
}

.fb-countdown-digits {
	display: flex;
	align-items: center;
	gap: 6px;
}

.fb-timer-box {
	display: flex;
	flex-direction: column;
	align-items: center;
	background: #1c201a;
	color: #ffffff;
	padding: 4px 8px;
	border-radius: 6px;
	min-width: 38px;
}

.fb-timer-box strong {
	font-size: 16px;
	font-family: monospace;
	line-height: 1;
}

.fb-timer-box small {
	font-size: 8px;
	color: #c9cdc5;
	margin-top: 2px;
}

.fb-timer-colon {
	font-weight: 700;
	color: #1c201a;
}

.fb-deals-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 20px;
}

.fb-deal-card {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 20px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	box-shadow: 0 4px 14px -2px rgba(28, 32, 26, 0.04);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.fb-deal-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 30px -4px rgba(28, 32, 26, 0.1);
}

.fb-deal-img-link {
	position: relative;
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	background: #f7f5f0;
}

.fb-deal-img-link img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.4s ease;
}

.fb-deal-card:hover .fb-deal-img-link img {
	transform: scale(1.05);
}

.fb-deal-pill {
	position: absolute;
	top: 12px;
	left: 12px;
	background: #a24b31;
	color: #ffffff;
	font-size: 11px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 9999px;
	letter-spacing: 0.02em;
}

.fb-deal-info {
	padding: 18px 20px;
	display: flex;
	flex-direction: column;
	flex: 1;
}

.fb-deal-badges-row {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 8px;
}

.fb-discount-tag {
	background: #eaf5eb;
	color: #226a33;
	font-size: 11px;
	font-weight: 700;
	padding: 3px 8px;
	border-radius: 6px;
}

.fb-deal-deal-label {
	font-size: 11px;
	color: #6e7368;
	font-weight: 500;
}

.fb-deal-title {
	font-size: 15px;
	font-weight: 600;
	color: #1c201a;
	line-height: 1.35;
	margin: 0 0 10px;
}

.fb-deal-title a {
	color: inherit;
	text-decoration: none;
}

.fb-deal-title a:hover {
	color: #a24b31;
}

.fb-deal-pricing {
	display: flex;
	align-items: baseline;
	gap: 8px;
	margin-bottom: 4px;
}

.fb-deal-current-price {
	font-size: 20px;
	font-weight: 700;
	color: #1c201a;
}

.fb-deal-mrp {
	font-size: 12.5px;
	color: #6e7368;
}

.fb-deal-savings-line {
	font-size: 12px;
	font-weight: 600;
	color: #226a33;
	margin-bottom: 12px;
}

.fb-deal-progress-wrap {
	margin-bottom: 16px;
}

.fb-deal-bar-track {
	height: 6px;
	background: #e8e5dc;
	border-radius: 9999px;
	overflow: hidden;
	margin-bottom: 6px;
}

.fb-deal-bar-fill {
	height: 100%;
	background: #a24b31;
	border-radius: 9999px;
}

.fb-deal-bar-labels {
	display: flex;
	justify-content: space-between;
	font-size: 11.5px;
	color: #6e7368;
}

.fb-urgency-tag {
	color: #a24b31;
	font-weight: 600;
}

.fb-deal-add-btn {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: 8px !important;
	width: 100% !important;
	background: #1c201a !important;
	color: #ffffff !important;
	border: none !important;
	border-radius: 9999px !important;
	padding: 10px 16px !important;
	font-size: 13.5px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	transition: background 0.2s ease, transform 0.2s ease !important;
	margin-top: auto !important;
}

.fb-deal-add-btn:hover {
	background: #a24b31 !important;
	transform: translateY(-1px) !important;
}

/* ==========================================================================
   Amazon 4-in-1 Category Deals Quad Cards
   ========================================================================== */
.fb-amazon-quad-section {
	padding: 36px 0 48px;
}

.fb-quad-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
	gap: 20px;
}

.fb-quad-card {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 20px;
	padding: 24px 20px;
	display: flex;
	flex-direction: column;
	box-shadow: 0 4px 14px -2px rgba(28, 32, 26, 0.04);
}

.fb-quad-card h3 {
	font-size: 18px;
	font-weight: 600;
	color: #1c201a;
	margin: 0 0 16px;
	line-height: 1.3;
}

.fb-quad-tiles {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-bottom: 18px;
	flex: 1;
}

.fb-quad-tile {
	text-decoration: none;
	display: flex;
	flex-direction: column;
	gap: 4px;
}

.fb-quad-thumb {
	width: 100%;
	aspect-ratio: 1.1;
	background-color: #f7f5f0;
	background-size: cover;
	background-position: center;
	border-radius: 12px;
	border: 1px solid #e8e5dc;
	transition: transform 0.25s ease;
}

.fb-quad-tile:hover .fb-quad-thumb {
	transform: scale(1.03);
}

.fb-quad-label {
	font-size: 12px;
	font-weight: 600;
	color: #1c201a;
	line-height: 1.2;
}

.fb-quad-offer {
	font-size: 11px;
	color: #a24b31;
	font-weight: 600;
}

.fb-quad-footer-link {
	font-size: 13px;
	font-weight: 600;
	color: #a24b31;
	text-decoration: none;
	margin-top: auto;
}

.fb-quad-footer-link:hover {
	text-decoration: underline;
}

/* ==========================================================================
   Amazon-Style Recommended For You Shelf
   ========================================================================== */
.fb-recommended-section {
	padding: 48px 0;
}

.fb-rec-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 20px;
	margin-top: 28px;
}

.fb-rec-card {
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 20px;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	padding: 16px;
	box-shadow: 0 4px 14px -2px rgba(28, 32, 26, 0.04);
	transition: transform 0.25s ease;
}

.fb-rec-card:hover {
	transform: translateY(-3px);
}

.fb-rec-badge-wrap {
	margin-bottom: 8px;
}

.fb-choice-badge {
	display: inline-block;
	background: #1c201a;
	color: #c89d56;
	font-size: 10.5px;
	font-weight: 700;
	padding: 3px 8px;
	border-radius: 4px;
	letter-spacing: 0.02em;
}

.fb-rec-img-link {
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	border-radius: 12px;
	background: #f7f5f0;
	margin-bottom: 12px;
}

.fb-rec-img-link img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fb-rec-stars {
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 12px;
	margin-bottom: 6px;
}

.fb-stars-gold {
	color: #e3a008;
}

.fb-review-count {
	color: #6e7368;
}

.fb-rec-title {
	font-size: 14.5px;
	font-weight: 600;
	color: #1c201a;
	margin: 0 0 10px;
	line-height: 1.35;
}

.fb-rec-title a {
	color: inherit;
	text-decoration: none;
}

.fb-rec-title a:hover {
	color: #a24b31;
}

.fb-rec-price-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 14px;
}

.fb-rec-price {
	font-size: 17px;
	font-weight: 700;
	color: #1c201a;
}

.fb-prime-badge {
	font-size: 11px;
	color: #226a33;
	font-weight: 600;
	background: #eaf5eb;
	padding: 2px 7px;
	border-radius: 4px;
}

.fb-rec-add-btn {
	background: #ffffff !important;
	color: #1c201a !important;
	border: 1px solid #dcd7ce !important;
}

.fb-rec-add-btn:hover {
	background: #a24b31 !important;
	border-color: #a24b31 !important;
	color: #ffffff !important;
}

/* ==========================================================================
   Amazon-Style Recently Viewed Items Shelf
   ========================================================================== */
.fb-recently-viewed-section {
	padding: 36px 0 48px;
	border-top: 1px solid #e8e5dc;
}

.fb-recent-header-row {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 20px;
}

.fb-recent-heading-group h2 {
	font-family: var(--fb-font-serif, "Playfair Display", serif);
	font-size: 24px;
	color: #1c201a;
	margin: 4px 0 0;
}

.fb-clear-history-btn {
	background: none !important;
	border: none !important;
	color: #a24b31 !important;
	font-size: 12.5px !important;
	cursor: pointer !important;
	text-decoration: underline !important;
	padding: 0 !important;
}

.fb-recently-viewed-shelf {
	display: flex;
	gap: 16px;
	overflow-x: auto;
	padding-bottom: 12px;
	scrollbar-width: thin;
}

.fb-recent-view-card {
	flex: 0 0 160px;
	background: #ffffff;
	border: 1px solid #e8e5dc;
	border-radius: 14px;
	padding: 12px;
	display: flex;
	flex-direction: column;
	text-decoration: none;
}

.fb-recent-img-wrap {
	width: 100%;
	aspect-ratio: 1;
	border-radius: 10px;
	overflow: hidden;
	background: #f7f5f0;
	margin-bottom: 8px;
	display: block;
}

.fb-recent-img-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.fb-recent-title {
	font-size: 12.5px;
	color: #1c201a;
	font-weight: 500;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-decoration: none;
	line-height: 1.3;
	margin-bottom: 4px;
}

.fb-recent-title:hover {
	color: #a24b31;
}

.fb-recent-price {
	font-size: 13.5px;
	font-weight: 700;
	color: #1c201a;
}
