/* ============================================
   INFO STRIP (Slim dark top bar - centered)
   ============================================ */
.info-strip {
	font-family: var(--wp--preset--font-family--ubuntu);
	border-bottom: 1px solid #3a3a3a;
}

/* Subtle tagline on the left */
.info-strip-tagline {
	margin: 0 !important;
}

.info-strip-item {
	display: inline;
}

.info-strip-item + .info-strip-item {
	margin-left: 50px !important;
}

.info-strip-link {
	color: #999999 !important;
	text-decoration: none !important;
	transition: color 0.2s ease;
}

.info-strip-link:hover {
	color: #FDB827 !important;
}

/* ============================================
   ICON LOGO
   ============================================ */
.header-icon-logo {
	margin: 0 !important;
	flex-shrink: 0;
}

.header-icon-logo img {
	border-radius: 4px;
}

/* Logo + nav grouping */
.logo-nav-group {
	gap: 1.5rem !important;
}

/* ============================================
   HEADER ACTIONS (right side: auth + cart + CTA)
   ============================================ */
.header-auth-links {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.header-auth-link {
	color: #aaaaaa !important;
	text-decoration: none !important;
	font-size: 0.8125rem;
	font-weight: 400;
	transition: color 0.2s ease;
	white-space: nowrap;
}

.header-auth-link:hover {
	color: #FDB827 !important;
}

.header-action-link {
	color: #aaaaaa !important;
	text-decoration: none !important;
	transition: color 0.2s ease;
}

.header-action-link:hover {
	color: #FDB827 !important;
}

/* Header action icons equal treatment */
.header-actions {
	gap: 1.25rem !important;
}

/* Make all action icons the same size */
.header-auth-link i,
.header-action-link i {
	font-size: 1rem;
}

/* ============================================
   HEADER CART DROPDOWN WIDGET
   ============================================ */
.header-cart-wrap {
	position: relative;
	margin: 0 !important;
	display: flex;
	align-items: center;
}

.header-cart-toggle {
	position: relative;
	display: inline-flex;
	align-items: center;
	cursor: pointer;
	line-height: 1;
}

.hc-badge {
	position: absolute;
	top: -8px;
	right: -10px;
	background: #FDB827;
	color: #000;
	font-size: 0.625rem;
	font-weight: 700;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	pointer-events: none;
}

/* Badge pop when cart updates */
.hc-updated .hc-badge {
	animation: hc-badge-pop 0.5s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

@keyframes hc-badge-pop {
	0%   { transform: scale(0); opacity: 0; }
	50%  { transform: scale(1.4); opacity: 1; }
	70%  { transform: scale(0.85); }
	100% { transform: scale(1); opacity: 1; }
}

/* Cart icon wiggle when cart updates */
.hc-updated .header-cart-toggle i {
	animation: hc-icon-wiggle 0.6s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
}

@keyframes hc-icon-wiggle {
	0%   { transform: rotate(0deg) scale(1); }
	15%  { transform: rotate(-14deg) scale(1.15); }
	30%  { transform: rotate(12deg) scale(1.1); }
	45%  { transform: rotate(-8deg) scale(1.05); }
	60%  { transform: rotate(5deg) scale(1.02); }
	75%  { transform: rotate(-2deg) scale(1); }
	100% { transform: rotate(0deg) scale(1); }
}

/* Dropdown panel */
.header-cart-dropdown {
	position: absolute;
	top: calc(100% + 14px);
	right: -10px;
	width: 320px;
	background: #2a2a2a;
	border: 1px solid #444;
	border-radius: 10px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.5);
	z-index: 10000;
	font-family: var(--wp--preset--font-family--ubuntu);
	opacity: 0;
	visibility: hidden;
	transform: translateY(-8px) scale(0.97);
	transform-origin: top right;
	transition: opacity 0.25s ease, transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.25s;
	pointer-events: none;
}

.header-cart-wrap.is-open .header-cart-dropdown {
	opacity: 1;
	visibility: visible;
	transform: translateY(0) scale(1);
	pointer-events: auto;
}

/* Arrow pointer */
.header-cart-dropdown::before {
	content: '';
	position: absolute;
	top: -7px;
	right: 18px;
	width: 12px;
	height: 12px;
	background: #2a2a2a;
	border-top: 1px solid #444;
	border-left: 1px solid #444;
	transform: rotate(45deg);
}

/* Header inside dropdown */
.hc-header {
	padding: 0.875rem 1rem;
	font-size: 0.6875rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #999;
	border-bottom: 1px solid #3a3a3a;
}

/* Items list */
.hc-items {
	max-height: 280px;
	overflow-y: auto;
	scrollbar-width: thin;
	scrollbar-color: #555 #2a2a2a;
}

.hc-item {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	padding: 0.75rem 1rem;
	border-bottom: 1px solid #333;
}

.hc-item:last-child {
	border-bottom: none;
}

.hc-item-thumb {
	flex-shrink: 0;
	width: 50px;
	height: 50px;
	border-radius: 6px;
	overflow: hidden;
	background: #3a3a3a;
}

.hc-item-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.hc-item-info {
	flex: 1;
	min-width: 0;
}

.hc-item-name {
	color: #fff;
	font-size: 0.8125rem;
	font-weight: 500;
	line-height: 1.3;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.hc-item-meta {
	color: #999;
	font-size: 0.75rem;
	margin-top: 2px;
}

.hc-remove {
	flex-shrink: 0;
	background: none;
	border: none;
	color: #666;
	font-size: 1.125rem;
	cursor: pointer;
	padding: 4px;
	line-height: 1;
	transition: color 0.2s ease;
}

.hc-remove:hover {
	color: #e74c3c;
}

/* Footer with subtotal and buttons */
.hc-footer {
	border-top: 1px solid #3a3a3a;
	padding: 0.875rem 1rem;
}

.hc-subtotal {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 0.875rem;
	font-size: 0.875rem;
}

.hc-subtotal > span:first-child {
	color: #999;
	font-weight: 500;
	text-transform: uppercase;
	font-size: 0.75rem;
	letter-spacing: 0.05em;
}

.hc-subtotal > span:last-child {
	color: #FDB827;
	font-weight: 700;
}

.hc-btn {
	display: block;
	text-align: center;
	padding: 0.6rem 1rem;
	border-radius: 30px;
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-decoration: none !important;
	transition: opacity 0.2s ease;
	cursor: pointer;
}

.hc-btn:hover {
	opacity: 0.85;
}

.hc-btn-primary {
	background: #FDB827;
	color: #000 !important;
	border: 1px solid #e59c02;
}

.hc-btn-secondary {
	background: transparent;
	color: #aaa !important;
	border: 1px solid #555;
	margin-bottom: 0.5rem;
}

.hc-btn-secondary:hover {
	border-color: #888;
	color: #fff !important;
}

/* Empty state */
.hc-empty {
	padding: 1.5rem 1rem;
	text-align: center;
}

.hc-empty p {
	color: #888;
	font-size: 0.875rem;
	margin: 0 0 1rem;
}

/* Mobile responsive */
@media (max-width: 600px) {
	.header-cart-dropdown {
		position: fixed;
		top: auto;
		bottom: 0;
		left: 0;
		right: 0;
		width: 100%;
		border-radius: 16px 16px 0 0;
		max-height: 70vh;
		overflow-y: auto;
	}

	.header-cart-dropdown::before {
		display: none;
	}

	.hc-items {
		max-height: 45vh;
	}
}

/* Mobile nav badge in overlay */
.mobile-nav-actions .hc-badge {
	position: static;
	display: inline-flex;
	margin-left: 4px;
	font-size: 0.5625rem;
	width: 16px;
	height: 16px;
}

/* ============================================
   MAIN HEADER - Dark theme, sticky
   ============================================ */
.main-header {
	z-index: 10000000;
	transition: box-shadow 0.3s ease;
}

.main-header.is-fixed {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.4);
}

/* Offset for WordPress admin bar when logged in */
.admin-bar .main-header.is-fixed {
	top: 32px;
}

@media (max-width: 782px) {
	.admin-bar .main-header.is-fixed {
		top: 46px;
	}
}

/* Placeholder to prevent content jump when header becomes fixed */
.header-spacer {
	display: none;
}

.header-spacer.active {
	display: block;
}

/* ============================================
   NAVIGATION - White text on dark, gold hover
   ============================================ */
.main-header .wp-block-navigation a {
	color: #ffffff !important;
	text-decoration: none;
	transition: color 0.2s ease;
}

.main-header .wp-block-navigation a:hover {
	color: #FDB827 !important;
}

/* Active nav link */
.main-header .wp-block-navigation .current-menu-item > a,
.main-header .wp-block-navigation .current_page_item > a {
	color: #FDB827 !important;
}

/* Submenu icon color (the dropdown arrow) */
.main-header .wp-block-navigation svg,
.main-header .wp-block-navigation .wp-block-navigation__submenu-icon {
	fill: #ffffff;
	transition: fill 0.2s ease;
}

.main-header .wp-block-navigation .wp-block-navigation-submenu:hover > .wp-block-navigation__submenu-icon,
.main-header .wp-block-navigation .wp-block-navigation-submenu:hover > button svg {
	fill: #FDB827;
}

/* Dropdown submenu - dark theme */
.main-header .wp-block-navigation .wp-block-navigation__submenu-container {
	background: #2a2a2a;
	border: 1px solid #444;
	border-radius: 0 0 6px 6px;
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.5);
	min-width: 260px;
	padding: 0.5rem 0;
	margin-top: 0;
}

.main-header .wp-block-navigation .wp-block-navigation__submenu-container a {
	padding: 0.75rem 1.5rem;
	font-size: 0.875rem;
	text-transform: none;
	letter-spacing: normal;
	font-weight: 400;
	color: #cccccc !important;
}

.main-header .wp-block-navigation .wp-block-navigation__submenu-container a:hover {
	color: #FDB827 !important;
	background: rgba(253, 184, 39, 0.08);
}

/* Nav + CTA button alignment */
.nav-with-cta {
	align-items: center;
}

/* Header CTA button */
.header-cta-btn .wp-block-button__link {
	white-space: nowrap;
	transition: box-shadow 0.3s ease, transform 0.2s ease;
}

.header-cta-btn .wp-block-button__link:hover {
	box-shadow: 0 0 20px rgba(253, 184, 39, 0.4);
	transform: translateY(-1px);
	color: #333333 !important;
}

/* Mobile hamburger menu - gold icon on dark */
.main-header .wp-block-navigation__responsive-container-open {
	color: #FDB827;
}

.main-header .wp-block-navigation__responsive-container-open svg {
	fill: #FDB827;
}

/* Mobile overlay menu */
.wp-block-navigation__responsive-container.is-menu-open {
	padding: 2rem;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-link a,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu > a {
	font-size: 1.125rem;
	padding: 0.75rem 0;
}

/* Mobile overlay: submenu styling - no box shadow, full width */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container {
	background: transparent !important;
	border: none !important;
	box-shadow: none !important;
	min-width: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	position: static !important;
	width: 100% !important;
	border-radius: 0 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a {
	padding: 0.5rem 0 0.5rem 1.5rem !important;
	font-size: 1rem !important;
	color: #cccccc !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container a:hover {
	color: #FDB827 !important;
	background: transparent !important;
}

/* Mobile overlay: submenu toggle button */
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-submenu__toggle {
	color: #ffffff;
}

/* Mobile nav bottom section (injected by JS) - hidden by default */
.mobile-nav-extras {
	display: none;
}

/* Only show inside the open mobile overlay */
.wp-block-navigation__responsive-container.is-menu-open .mobile-nav-extras {
	display: block;
	margin-top: auto;
	padding-top: 1.5rem;
	border-top: 1px solid #444;
}

.mobile-nav-actions {
	display: flex;
	align-items: center;
	gap: 1.5rem;
	margin-bottom: 1.25rem;
}

.mobile-nav-actions a {
	color: #aaaaaa !important;
	text-decoration: none !important;
	font-size: 1.25rem;
	transition: color 0.2s ease;
}

.mobile-nav-actions a:hover {
	color: #FDB827 !important;
}

.mobile-nav-contact {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.mobile-nav-contact a {
	color: #999999 !important;
	text-decoration: none !important;
	font-size: 0.875rem;
	transition: color 0.2s ease;
}

.mobile-nav-contact a:hover {
	color: #FDB827 !important;
}

.mobile-nav-contact i {
	color: #FDB827;
	margin-right: 0.5em;
	font-size: 0.8rem;
}

/* ============================================
   GEOMETRIC PATTERN BACKGROUNDS
   ============================================ */
.geo-hero {
	position: relative;
	overflow: hidden;
}

/* P5.js canvas - override WP constrained layout max-width */
.geo-hero canvas {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	pointer-events: none;
	max-width: none !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: auto !important;
}

/* Static SVG fallback (when JS is disabled) */
.no-js .geo-hero::after {
	content: "";
	position: absolute;
	inset: 0;
	background-image: url("../img/geo-pattern.svg");
	background-repeat: repeat;
	background-size: 56px 100px;
	z-index: 0;
	pointer-events: none;
}

.geo-hero > .wp-block-group,
.geo-hero > .wp-block-cover__inner-container,
.geo-hero > *:not(span):not(.wp-block-cover__background):not(.wp-block-cover__image-background) {
	position: relative;
	z-index: 1;
}

/* BigPAM gradient: #333 left to #000 right (top to bottom on mobile) */
.bigpam-gradient {
	background: linear-gradient(to right, #333333 0%, #000000 60%) !important;
}

@media (max-width: 768px) {
	.bigpam-gradient {
		background: linear-gradient(to bottom, #333333 0%, #000000 60%) !important;
	}
}

/* ============================================
   SERVICE CARDS (Products & Services page)
   ============================================ */
.service-card {
	border: 1px solid #eaeaea;
	border-radius: 8px;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.08);
}

.service-card-icon {
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: rgba(253, 184, 39, 0.12);
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 1rem auto;
	font-size: 1.5rem;
	color: #FDB827;
}

.service-card h3 {
	margin-bottom: 0.5rem !important;
}

/* Section divider accent */
.section-accent {
	width: 60px;
	height: 3px;
	background: #FDB827;
	margin: 0 auto 1.5rem auto;
	border: none;
}

/* Service grid responsive */
@media (max-width: 768px) {
	.service-grid .wp-block-column {
		flex-basis: 100% !important;
	}
}

/* ============================================
   FOOTER
   ============================================ */

/* Footer gold top accent */
.site-footer {
	border-top: 4px solid #FDB827;
	position: relative;
}

/* Footer links */
.site-footer a {
	transition: color 0.2s ease;
}

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

.site-footer .is-style-no-bullets {
	list-style: none;
	padding-left: 0;
}

.site-footer .is-style-no-bullets li {
	padding: 0.3rem 0;
}

/* Footer CTA mini section */
.footer-cta {
	border: none;
	border-radius: 0;
}

/* Footer bottom bar */
.footer-bottom-bar {
	border-top: 1px solid #444;
	justify-content: space-between;
}

.footer-bottom-bar > p:not([class]) {
	display: none;
}

/* Footer social icons */
.footer-social-links a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 36px;
	height: 36px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.06);
	color: #888 !important;
	text-decoration: none !important;
	transition: all 0.3s ease;
	font-size: 0.9rem;
}

.footer-social-links a:hover {
	background: rgba(253, 184, 39, 0.15);
	color: #FDB827 !important;
	transform: translateY(-2px);
}

/* Footer column headings gold underline */
.footer-heading {
	position: relative;
	padding-bottom: 0.75rem;
	margin-bottom: 1rem !important;
}

.footer-heading::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 30px;
	height: 2px;
	background: #FDB827;
}

/* Footer responsive */
@media (max-width: 768px) {
	.site-footer .wp-block-columns {
		gap: 2.5rem !important;
	}

	.footer-heading::after {
		left: 0;
		transform: none;
	}

	.footer-contact-row {
		flex-direction: column !important;
		gap: 1rem !important;
	}
}

/* ============================================
   BLOG: Card grid & pagination
   ============================================ */

/* Post card */
.blog-card {
	background: #fff;
	border: 1px solid #eaeaea;
	border-radius: 8px;
	overflow: hidden;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.blog-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08);
}

/* Featured image — consistent aspect ratio */
.blog-card .wp-block-post-featured-image {
	margin: 0 !important;
}

.blog-card .wp-block-post-featured-image img {
	aspect-ratio: 16 / 9;
	object-fit: cover;
	width: 100%;
	display: block;
}

/* Card body content padding */
.blog-card-body {
	padding: 1.25rem;
}

/* Post title */
.blog-card .wp-block-post-title {
	font-size: 1.1rem !important;
	font-weight: 600;
	line-height: 1.4;
	margin-bottom: 0.4rem !important;
}

.blog-card .wp-block-post-title a {
	color: #333 !important;
	text-decoration: none !important;
}

.blog-card .wp-block-post-title a:hover {
	color: #FDB827 !important;
}

/* Post date */
.blog-card .wp-block-post-date {
	font-size: 0.75rem !important;
	color: #999 !important;
	margin-bottom: 0.6rem !important;
}

/* Excerpt */
.blog-card .wp-block-post-excerpt {
	font-size: 0.85rem !important;
	color: #666 !important;
	line-height: 1.6;
	margin-bottom: 0 !important;
}

.blog-card .wp-block-post-excerpt__more-link {
	display: inline-block;
	margin-top: 0.75rem;
	color: #FDB827 !important;
	text-decoration: none !important;
	font-size: 0.8rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.03em;
}

.blog-card .wp-block-post-excerpt__more-link:hover {
	color: #e5a520 !important;
}

/* Pagination */
.blog-pagination .wp-block-query-pagination-numbers .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	padding: 0 0.5rem;
	border: 1px solid #ddd;
	border-radius: 4px;
	color: #666;
	text-decoration: none;
	font-size: 0.85rem;
	transition: all 0.2s ease;
}

.blog-pagination .wp-block-query-pagination-numbers .page-numbers.current,
.blog-pagination .wp-block-query-pagination-numbers .page-numbers:hover {
	background: #FDB827;
	border-color: #FDB827;
	color: #333;
}

.blog-pagination a {
	color: #666 !important;
	text-decoration: none !important;
	font-size: 0.85rem;
}

.blog-pagination a:hover {
	color: #FDB827 !important;
}

/* Blog grid responsive */
@media (max-width: 768px) {
	.blog-card .wp-block-post-title {
		font-size: 1rem !important;
	}
}

/* ============================================
   SINGLE POST
   ============================================ */

/* Category badges in hero */
.single-categories a {
	display: inline-block;
	background: #FDB827;
	color: #333 !important;
	padding: 0.25rem 0.75rem;
	border-radius: 3px;
	text-decoration: none !important;
	font-size: 0.7rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	margin-right: 0.4rem;
}

.single-categories a:hover {
	background: #e5a520;
}

/* Content area typography */
.single-content .wp-block-post-content {
	font-size: 1.05rem;
	line-height: 1.8;
	color: #444;
}

.single-content .wp-block-post-content h2 {
	margin-top: 2rem;
	margin-bottom: 0.75rem;
	color: #333;
}

.single-content .wp-block-post-content h3 {
	margin-top: 1.5rem;
	margin-bottom: 0.5rem;
	color: #333;
}

.single-content .wp-block-post-content img {
	border-radius: 6px;
}

/* Tags as pills */
.single-tags .wp-block-post-terms a {
	display: inline-block;
	background: #f0f0f0;
	color: #555 !important;
	padding: 0.3rem 0.75rem;
	border-radius: 20px;
	text-decoration: none !important;
	font-size: 0.75rem;
	margin: 0.2rem;
	transition: all 0.2s ease;
}

.single-tags .wp-block-post-terms a:hover {
	background: #FDB827;
	color: #333 !important;
}

/* Hero cover fallback (no featured image) */
.single-hero:not(.has-post-featured-image) {
	background-color: #333 !important;
}

/* WooCommerce mini cart icon in utility bar */
.utility-bar .wp-block-woocommerce-mini-cart {
	color: #AAAAAA;
}

/* ============================================
   SHOP: Filament CTA section
   ============================================ */

.filament-cta {
	margin-top: calc(-1 * var(--wp--style--block-gap, 0.75em)) !important;
}

.filament-cta .wp-block-button.is-style-outline .wp-block-button__link:hover {
	background: rgba(255, 255, 255, 0.1) !important;
}

/* ============================================
   WOOCOMMERCE: Product grid & shop styling
   ============================================ */

/* Hide duplicate WooCommerce page title & style breadcrumb */
.shop-products .woocommerce-products-header__title {
	display: none !important;
}

.shop-products .woocommerce-breadcrumb {
	font-size: 0.8rem;
	color: #999;
	margin-bottom: 1rem;
}

.shop-products .woocommerce-breadcrumb a {
	color: #FDB827;
	text-decoration: none;
}

/* Force 3-column grid — kill clearfix pseudo-elements that occupy grid cells */
.shop-products ul.products::before,
.shop-products ul.products::after {
	display: none !important;
}

.shop-products ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, 1fr) !important;
	gap: 1.5rem !important;
	list-style: none;
	padding: 0;
}

.shop-products ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
}

@media (max-width: 768px) {
	.shop-products ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 480px) {
	.shop-products ul.products {
		grid-template-columns: 1fr !important;
	}
}

/* Product card styling */
.shop-products .products li.product,
.woocommerce ul.products li.product {
	background: #fff;
	border: 1px solid #eaeaea;
	border-radius: 8px;
	overflow: hidden;
	padding: 0 !important;
	box-sizing: border-box;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.shop-products .products li.product:hover,
.woocommerce ul.products li.product:hover {
	transform: translateY(-4px);
	box-shadow: 0 12px 24px rgba(0, 0, 0, 0.08);
}

/* Product image */
.shop-products .products li.product a img,
.woocommerce ul.products li.product a img {
	margin: 0 !important;
	border-radius: 0;
}

/* Product title */
.shop-products .products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-size: 0.95rem !important;
	font-weight: 600;
	color: #333;
	padding: 0.75rem 1rem 0.25rem !important;
	margin: 0;
}

/* Product price */
.shop-products .products li.product .price,
.woocommerce ul.products li.product .price {
	color: #FDB827 !important;
	font-weight: 700;
	font-size: 1rem !important;
	padding: 0 1rem;
}

/* Add to cart / Select options button */
.shop-products .products li.product .button,
.woocommerce ul.products li.product .button {
	background: #FDB827 !important;
	color: #333 !important;
	border: none !important;
	border-radius: 30px !important;
	padding: 0.5rem 1.25rem !important;
	font-size: 0.75rem !important;
	font-weight: 700 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em;
	margin: 0.75rem 1rem 1rem !important;
	transition: background 0.2s ease;
}

.shop-products .products li.product .button:hover,
.woocommerce ul.products li.product .button:hover {
	background: #e5a520 !important;
}

/* Result count & ordering */
.shop-products .woocommerce-result-count {
	color: #888;
	font-size: 0.85rem;
}

.shop-products .woocommerce-ordering select {
	border: 1px solid #ddd;
	border-radius: 4px;
	padding: 0.4rem 0.75rem;
	font-size: 0.85rem;
	color: #555;
}

/* WooCommerce pagination */
.shop-products .woocommerce-pagination ul.page-numbers {
	border: none !important;
	display: flex;
	justify-content: center;
	gap: 0.25rem;
	margin-top: 2rem;
}

.shop-products .woocommerce-pagination ul.page-numbers li {
	border: none !important;
}

.shop-products .woocommerce-pagination ul.page-numbers li a,
.shop-products .woocommerce-pagination ul.page-numbers li span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 36px;
	height: 36px;
	border: 1px solid #ddd !important;
	border-radius: 4px !important;
	color: #666;
	background: #fff !important;
	font-size: 0.85rem;
	text-decoration: none;
	transition: all 0.2s ease;
}

.shop-products .woocommerce-pagination ul.page-numbers li span.current,
.shop-products .woocommerce-pagination ul.page-numbers li a:hover {
	background: #FDB827 !important;
	border-color: #FDB827 !important;
	color: #333 !important;
}

/* Sale badge */
.shop-products .products li.product .onsale,
.woocommerce span.onsale {
	background: #FDB827 !important;
	color: #333 !important;
	font-weight: 700;
	border-radius: 4px;
}

/* Star ratings */
.shop-products .star-rating span::before,
.woocommerce .star-rating span::before {
	color: #FDB827 !important;
}

/* Hide SKU and category text on shop grid */
.shop-products .products li.product .posted_in,
.shop-products .products li.product .sku_wrapper {
	display: none;
}

/* ============================================
   SINGLE PRODUCT: Dark immersive showcase
   ============================================ */

/* Kill gaps above and below */
.single-product-content {
	margin-top: calc(-1 * var(--wp--style--block-gap, 0.75em)) !important;
}

.single-product-content + .geo-hero {
	margin-top: 0 !important;
}

/* Breadcrumb — subtle, integrated into dark section */
.single-product-content .woocommerce-breadcrumb {
	font-size: 0.8rem;
	color: #888;
	margin-bottom: 1.5rem;
	position: relative;
	z-index: 1;
}

.single-product-content .woocommerce-breadcrumb a {
	color: #aaa;
	text-decoration: none;
	transition: color 0.2s ease;
}

.single-product-content .woocommerce-breadcrumb a:hover {
	color: #FDB827;
}

/* ============================================
   SINGLE PRODUCT: Vertical thumbnail gallery
   ============================================ */

.single-product-content .woocommerce-product-gallery {
	display: grid !important;
	grid-template-columns: 80px 1fr;
	grid-template-rows: auto;
	gap: 0.75rem;
	position: relative;
	z-index: 1;
}

/* Magnifying glass trigger — reposition */
.single-product-content .woocommerce-product-gallery__trigger {
	position: absolute;
	top: 0.75rem;
	right: 0.75rem;
	z-index: 5;
	background: rgba(0, 0, 0, 0.5) !important;
	border-radius: 50%;
	width: 36px;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	opacity: 0.7;
	transition: opacity 0.2s ease;
}

.single-product-content .woocommerce-product-gallery__trigger:hover {
	opacity: 1;
}

/* Main image — glow on dark bg */
.single-product-content .woocommerce-product-gallery .flex-viewport {
	grid-column: 2;
	grid-row: 1;
	border-radius: 10px;
	overflow: hidden;
	box-shadow: 0 8px 40px rgba(0, 0, 0, 0.4);
}

.single-product-content .woocommerce-product-gallery .flex-viewport img {
	border-radius: 10px;
}

/* Vertical thumbnail strip — left column */
.single-product-content .woocommerce-product-gallery .flex-control-thumbs {
	grid-column: 1;
	grid-row: 1;
	display: flex !important;
	flex-direction: column;
	gap: 0.5rem;
	margin: 0 !important;
	order: -1;
}

.single-product-content .woocommerce-product-gallery .flex-control-thumbs li {
	width: 100% !important;
	border-radius: 6px;
	overflow: hidden;
	border: 2px solid rgba(255, 255, 255, 0.15);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	cursor: pointer;
}

.single-product-content .woocommerce-product-gallery .flex-control-thumbs li:hover {
	border-color: rgba(253, 184, 39, 0.5);
}

.single-product-content .woocommerce-product-gallery .flex-control-thumbs li .flex-active,
.single-product-content .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
	border-color: #FDB827 !important;
}

/* Apply gold border to parent li when child img has flex-active */
.single-product-content .woocommerce-product-gallery .flex-control-thumbs li:has(img.flex-active) {
	border-color: #FDB827;
	box-shadow: 0 0 10px rgba(253, 184, 39, 0.3);
}

.single-product-content .woocommerce-product-gallery .flex-control-thumbs li img {
	border-radius: 4px;
	display: block;
	width: 100%;
}

/* Single image (no gallery) — no grid needed */
.single-product-content .woocommerce-product-gallery--columns-1 {
	display: block !important;
}

/* ============================================
   SINGLE PRODUCT: Summary — dark theme
   ============================================ */

.single-product-content .entry-summary {
	position: relative;
	z-index: 1;
}

.single-product-content .entry-summary .product_title {
	font-size: 1.85rem;
	font-weight: 700;
	color: #ffffff;
	margin-bottom: 0.5rem;
	line-height: 1.25;
}

.single-product-content .entry-summary .price {
	font-size: 1.6rem !important;
	color: #FDB827 !important;
	font-weight: 800;
	margin-bottom: 1.25rem;
}

.single-product-content .entry-summary .price del {
	color: #888 !important;
	font-weight: 400;
	font-size: 1.1rem;
}

.single-product-content .entry-summary .price ins {
	text-decoration: none;
	color: #FDB827;
}

.single-product-content .entry-summary .woocommerce-product-details__short-description {
	font-size: 0.95rem;
	color: #bbbbbb;
	line-height: 1.7;
	margin-bottom: 1.5rem;
	border-bottom: 1px solid #555;
	padding-bottom: 1.5rem;
}

/* ============================================
   SINGLE PRODUCT: Variations & form — dark theme
   ============================================ */

.single-product-content .variations td.label label {
	font-weight: 600;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #ccc;
}

.single-product-content .variations td {
	padding: 0.4rem 0;
}

.single-product-content .variations select,
.single-product-content .entry-summary select {
	border: 1px solid #666;
	border-radius: 6px;
	padding: 0.5rem 0.75rem;
	font-size: 0.9rem;
	color: #fff;
	background: #444;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	width: 100%;
}

.single-product-content .variations select:focus,
.single-product-content .entry-summary select:focus {
	border-color: #FDB827;
	outline: none;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.2);
}

.single-product-content .reset_variations {
	color: #888 !important;
	font-size: 0.8rem;
	text-decoration: none !important;
	transition: color 0.2s ease;
}

.single-product-content .reset_variations:hover {
	color: #FDB827 !important;
}

/* Quantity input — dark theme */
.single-product-content .quantity .qty {
	border: 1px solid #666;
	border-radius: 6px;
	padding: 0.5rem;
	font-size: 0.95rem;
	width: 70px;
	text-align: center;
	color: #fff;
	background: #444;
}

.single-product-content .quantity .qty:focus {
	border-color: #FDB827;
	outline: none;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.2);
}

/* Add to Cart button — gold pill (primary action) */
.single-product-content .entry-summary .single_add_to_cart_button,
.single-product-content .entry-summary button.button.alt:not(.dokan-store-support-btn) {
	background: #FDB827 !important;
	color: #333 !important;
	border: none !important;
	border-radius: 30px !important;
	padding: 0.75rem 2.5rem !important;
	font-size: 0.85rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	cursor: pointer;
	transition: all 0.3s ease;
}

.single-product-content .entry-summary .single_add_to_cart_button:hover,
.single-product-content .entry-summary button.button.alt:not(.dokan-store-support-btn):hover {
	background: #e5a520 !important;
	box-shadow: 0 4px 20px rgba(253, 184, 39, 0.4);
	transform: translateY(-1px);
}

/* Contact Seller / secondary buttons — ghost outline style */
.single-product-content .entry-summary .dokan-store-support-btn.button.alt {
	background: transparent !important;
	color: #ffffff !important;
	border: 2px solid rgba(255, 255, 255, 0.4) !important;
	border-radius: 30px !important;
	padding: 0.65rem 2rem !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	cursor: pointer;
	transition: all 0.3s ease;
}

.single-product-content .entry-summary .dokan-store-support-btn.button.alt:hover {
	border-color: #ffffff !important;
	background: rgba(255, 255, 255, 0.08) !important;
	color: #ffffff !important;
}

/* ============================================
   SINGLE PRODUCT: Meta — muted on dark
   ============================================ */

.single-product-content .product_meta {
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid #555;
	font-size: 0.8rem;
	color: #777;
	position: relative;
	z-index: 1;
}

.single-product-content .product_meta > span {
	display: block;
	margin-bottom: 0.35rem;
}

.single-product-content .product_meta a {
	color: #999;
	text-decoration: none;
	transition: color 0.2s ease;
}

.single-product-content .product_meta a:hover {
	color: #FDB827;
}

/* ============================================
   SINGLE PRODUCT: Tabs — floating white card
   ============================================ */

.single-product-content .woocommerce-tabs {
	margin-top: 3rem;
	background: #ffffff;
	border-radius: 12px;
	padding: 2rem;
	box-shadow: 0 4px 30px rgba(0, 0, 0, 0.15);
	position: relative;
	z-index: 1;
	clear: both;
}

.single-product-content .woocommerce-tabs ul.tabs {
	list-style: none;
	padding: 0;
	margin: 0 0 1.5rem 0;
	display: flex;
	gap: 0;
	border-bottom: 2px solid #eee;
	overflow: visible !important;
}

.single-product-content .woocommerce-tabs ul.tabs::before {
	display: none !important;
}

.single-product-content .woocommerce-tabs ul.tabs li {
	margin: 0;
	padding: 0;
	border: none !important;
	background: none !important;
	border-radius: 0 !important;
	position: relative;
}

.single-product-content .woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 0.75rem 1.5rem;
	color: #888;
	text-decoration: none;
	font-size: 0.85rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	transition: color 0.2s ease;
	position: relative;
}

.single-product-content .woocommerce-tabs ul.tabs li a::after {
	content: "";
	position: absolute;
	bottom: -2px;
	left: 0;
	right: 0;
	height: 2px;
	background: transparent;
	transition: background 0.2s ease;
}

.single-product-content .woocommerce-tabs ul.tabs li.active a {
	color: #333;
}

.single-product-content .woocommerce-tabs ul.tabs li.active a::after {
	background: #FDB827;
}

.single-product-content .woocommerce-tabs ul.tabs li a:hover {
	color: #333;
}

/* Tab content */
.single-product-content .woocommerce-tabs .woocommerce-Tabs-panel {
	padding: 0;
	font-size: 0.95rem;
	line-height: 1.75;
	color: #555;
}

/* Hide redundant heading inside tab panels */
.single-product-content .woocommerce-tabs .woocommerce-Tabs-panel > h2:first-child {
	display: none;
}

/* Reviews tab */
.single-product-content .woocommerce-Reviews .comment-text {
	border: 1px solid #eee;
	border-radius: 8px;
	padding: 1rem !important;
}

.single-product-content .woocommerce-Reviews .star-rating span::before {
	color: #FDB827 !important;
}

/* ============================================
   SINGLE PRODUCT: Related products — breakout section
   ============================================ */

/* Break related products out to full-width row */
.single-product-content .related.products {
	margin-top: 3rem;
	margin-bottom: -3rem; /* absorb parent bottom padding */
	background: #eeeeee;
	border-radius: 0;
	padding: 2.5rem 2rem;
	position: relative;
	z-index: 1;
	clear: both;
	/* Full-bleed: break out of 1200px constrained container */
	width: 100vw;
	margin-left: calc(-50vw + 50%);
}

/* Re-constrain inner content */
.single-product-content .related.products > h2,
.single-product-content .related.products > ul.products {
	max-width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.single-product-content .related.products > h2 {
	font-size: 1.25rem;
	font-weight: 700;
	color: #333;
	margin-bottom: 0.5rem;
	text-align: center;
}

.single-product-content .related.products > h2::after {
	content: "";
	display: block;
	width: 60px;
	height: 3px;
	background: #FDB827;
	margin: 0.75rem auto 1.5rem;
}

/* Related products grid — kill clearfix */
.single-product-content .related.products ul.products::before,
.single-product-content .related.products ul.products::after {
	display: none !important;
}

.single-product-content .related.products ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, 1fr) !important;
	gap: 1.25rem !important;
	list-style: none;
	padding: 0;
}

.single-product-content .related.products ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	float: none !important;
}

/* ============================================
   SINGLE PRODUCT: Sale badge
   ============================================ */

.single-product-content .onsale {
	background: #FDB827 !important;
	color: #333 !important;
	font-weight: 700;
	border-radius: 4px;
	font-size: 0.75rem;
	padding: 0.3rem 0.75rem;
	position: relative;
	z-index: 2;
}

/* ============================================
   SINGLE PRODUCT: Star ratings on dark bg
   ============================================ */

.single-product-content .entry-summary .star-rating span::before {
	color: #FDB827 !important;
}

.single-product-content .entry-summary .star-rating::before {
	color: #555 !important;
}

/* ============================================
   SINGLE PRODUCT: Responsive
   ============================================ */

@media (max-width: 768px) {
	.single-product-content .entry-summary .product_title {
		font-size: 1.4rem;
	}

	.single-product-content .entry-summary .price {
		font-size: 1.25rem !important;
	}

	/* Thumbnails go horizontal on mobile */
	.single-product-content .woocommerce-product-gallery {
		display: block !important;
	}

	.single-product-content .woocommerce-product-gallery .flex-control-thumbs {
		flex-direction: row;
		flex-wrap: wrap;
		margin-top: 0.75rem !important;
	}

	.single-product-content .woocommerce-product-gallery .flex-control-thumbs li {
		width: auto !important;
		flex: 0 0 60px;
	}

	.single-product-content .woocommerce-tabs {
		padding: 1.25rem;
		border-radius: 8px;
	}

	.single-product-content .woocommerce-tabs ul.tabs {
		flex-wrap: wrap;
	}

	.single-product-content .woocommerce-tabs ul.tabs li a {
		padding: 0.6rem 1rem;
		font-size: 0.8rem;
	}

	.single-product-content .related.products {
		padding: 1.5rem 1rem;
		border-radius: 8px;
	}

	.single-product-content .related.products ul.products {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}

@media (max-width: 480px) {
	.single-product-content .related.products ul.products {
		grid-template-columns: 1fr !important;
	}
}

/* ============================================
   WOOCOMMERCE NOTICES — Unified Brand System
   ============================================ */

/* Base notice styles — dark card with gold accent */
.woocommerce-message,
.woocommerce-info,
.woocommerce-notice,
.woocommerce-error,
.wc-block-components-notice-banner {
	background: #1a1a1a !important;
	color: #ffffff !important;
	border: 1px solid #333 !important;
	border-left: 4px solid #FDB827 !important;
	border-radius: 0 10px 10px 0 !important;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
	padding: 1.125rem 1.5rem 1.125rem 3.25rem !important;
	margin-bottom: 1.5rem !important;
	font-size: 0.875rem !important;
	line-height: 2.4 !important;
	position: relative;
	list-style: none !important;
	max-width: 1170px;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Error variant — red accent */
.woocommerce-error,
.wc-block-components-notice-banner.is-error {
	border-left-color: #e53935 !important;
}

/* Icon — gold (or red for errors) */
.woocommerce-message::before,
.woocommerce-info::before,
.woocommerce-notice::before {
	color: #FDB827 !important;
	font-size: 1.25rem;
	position: absolute;
	left: 1rem;
	top: 50%;
	transform: translateY(-50%);
}

.woocommerce-error::before {
	color: #e53935 !important;
	font-size: 1.25rem;
	position: absolute;
	left: 1rem;
	top: 50%;
	transform: translateY(-50%);
}

/* Links inside notices */
.woocommerce-message a,
.woocommerce-info a,
.woocommerce-notice a,
.woocommerce-error a {
	color: #FDB827 !important;
	font-weight: 600;
	text-decoration: underline;
}

.woocommerce-message a:hover,
.woocommerce-info a:hover,
.woocommerce-notice a:hover,
.woocommerce-error a:hover {
	color: #e5a520 !important;
}
/* Buttons inside notices (e.g. "View cart") — gold pill, floated right */
.woocommerce-message a.button,
.woocommerce-message a.button.wc-forward,
.woocommerce-message a.wp-element-button,
.woocommerce-message a.button.wc-forward.wp-element-button,
.woocommerce-info a.button,
.woocommerce-info a.button.wc-forward,
.woocommerce-info a.wp-element-button,
.woocommerce-page .woocommerce-message a.button,
.woocommerce-page .woocommerce-message a.button.wc-forward,
.woocommerce-page .woocommerce-message a.wp-element-button,
.woocommerce-page .woocommerce-info a.button,
.woocommerce-page .woocommerce-info a.button.wc-forward,
.woocommerce-page .woocommerce-info a.wp-element-button,
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content .wc-forward,
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content a.wp-element-button {
	background: #FDB827 !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
	text-decoration-line: none !important;
	border-radius: 50px !important;
	padding: 12px 28px !important;
	font-size: 0.8rem !important;
	font-weight: 700 !important;
	letter-spacing: 0.03em;
	transition: background 0.2s ease, color 0.2s ease;
	display: inline-block !important;
	border: none !important;
	box-shadow: none !important;
	text-transform: uppercase;
	white-space: nowrap;
	line-height: 1 !important;
	float: right !important;
	margin-left: 1rem;
	opacity: 1 !important;
	-moz-appearance: none !important;
	appearance: none !important;
}

.woocommerce-message a.button:hover,
.woocommerce-message a.button.wc-forward:hover,
.woocommerce-message a.wp-element-button:hover,
.woocommerce-info a.button:hover,
.woocommerce-info a.button.wc-forward:hover,
.woocommerce-info a.wp-element-button:hover,
.woocommerce-page .woocommerce-message a.button:hover,
.woocommerce-page .woocommerce-message a.button.wc-forward:hover,
.woocommerce-page .woocommerce-message a.wp-element-button:hover,
.woocommerce-page .woocommerce-info a.button:hover,
.woocommerce-page .woocommerce-info a.button.wc-forward:hover,
.woocommerce-page .woocommerce-info a.wp-element-button:hover,
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content .wc-forward:hover,
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content .wc-forward:focus,
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content .wc-forward:active,
.wc-block-components-notice-banner > .wc-block-components-notice-banner__content a.wp-element-button:hover {
	background: #e5a520 !important;
	color: #1a1a1a !important;
	text-decoration: none !important;
}
/* Header cart dropdown — minimum order notice */
.hc-min-order-notice {
	background: rgba(253, 184, 39, 0.15);
	border-left: 3px solid #FDB827;
	color: #ddd;
	font-size: 0.6875rem;
	line-height: 1.4;
	padding: 0.5rem 0.75rem;
	margin: 0;
	border-bottom: 1px solid #3a3a3a;
}

.hc-min-order-notice i {
	color: #FDB827;
	margin-right: 0.25rem;
}

/* --- Custom print header highlight text --- */
.custom-print-header span.highlight {
	color: #fdb827 !important;
	font-weight: 900;
}

/* --- Hide Dokan support button on product page --- */
.dokan-store-support-btn-product {
	display: none !important;
}

/* --- Hide short description on 3D print product --- */
.woocommerce-product-details__short-description {
	display: none !important;
}

/* --- BB layout wrapper classes (preserved for reference) --- */
.p3d-wrapper {
	display: flex;
	align-items: stretch;
	justify-content: center;
	margin: 0;
	padding: 0;
}

.p3d-details {
	background: #333;
	width: 400px;
	flex-basis: 400px;
	margin-left: auto;
}

.p3d-images {
	width: calc(100% - 400px);
	flex-basis: calc(100% - 400px);
	text-align: center;
}

/* --- WooCommerce global button overrides (gold pill) --- */
.woocommerce-page ul.products li.product a.button,
.woocommerce-page .woocommerce-message a.button,
.woocommerce-page .woocommerce-message a.button.wc-forward,
.woocommerce-page .woocommerce a.button.wc-forward,
.woocommerce-page button.button,
.woocommerce-page button.button.alt,
.woocommerce-page a.button,
.woocommerce-page a.button.alt,
.woocommerce-page .woocommerce button[type="submit"],
.woocommerce-page button[type="submit"].alt.disabled {
	padding: 15px 30px !important;
	border: none !important;
	border-radius: 50px !important;
	color: #ffffff !important;
	background: #FDB827 !important;
}

.woocommerce-page ul.products li.product a.button:hover,
.woocommerce-page .woocommerce-message a.button:hover,
.woocommerce-page .woocommerce-message a.button.wc-forward:hover,
.woocommerce-page .woocommerce a.button.wc-forward:hover,
.woocommerce-page button.button:hover,
.woocommerce-page button.button.alt:hover,
.woocommerce-page a.button:hover,
.woocommerce-page a.button.alt:hover,
.woocommerce-page .woocommerce button[type="submit"]:hover,
.woocommerce-page button[type="submit"].alt.disabled:hover {
	color: #ffffff;
	text-decoration: none;
	background: #FDB827 !important;
}

/* --- Dokan overrides --- */
.dokan-progress-bar-info {
	background-color: #FDB827 !important;
}

.profile-info ul.dokan-store-info li.dokan-store-address {
	display: none;
}

.store-data .store-address {
	display: none;
}

.woocommerce-tabs div#tab-seller .store-address {
	display: none !important;
}

/* ============================================
   GLOBAL LAYOUT: Section spacing & containment
   ============================================ */

/* Remove gaps between top-level full-width sections only */
.wp-block-post-content > .wp-block-group.alignfull,
.wp-block-post-content > .wp-block-cover.alignfull {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

/* Also remove gap between post-content direct children */
.wp-block-post-content > * + * {
	margin-top: 0;
}

/* Cover blocks: constrain inner content to site width */
.wp-block-cover__inner-container {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
}

/* Gallery: masonry-like layout */
.wp-block-gallery.columns-4 {
	display: block !important;
	columns: 4;
	column-gap: 8px;
}

.wp-block-gallery.columns-4 .wp-block-image {
	break-inside: avoid;
	margin-bottom: 10px !important;
	width: 100% !important;
}

.wp-block-gallery.columns-4 .wp-block-image img {
	width: 100%;
	height: auto;
}

@media (max-width: 768px) {
	.wp-block-gallery.columns-4 {
		columns: 2;
	}
}

/* Client Logo Grayscale */
.client-logo-grayscale img {
	filter: grayscale(100%);
	opacity: 0.7;
	transition: all 0.3s ease;
}

.client-logo-grayscale:hover img {
	filter: grayscale(0);
	opacity: 1;
}

/* ============================================
   HERO LOTTIE: Break out of content column,
   position at bottom-right of cover container
   ============================================ */
.wp-block-cover.alignfull.has-parallax > .wp-block-cover__inner-container {
	position: static;
}

.wp-block-cover.alignfull.has-parallax > .wp-block-cover__inner-container > .wp-block-columns {
	position: static;
}

.wp-block-cover.alignfull.has-parallax .hide-on-mobile {
	position: absolute;
	right: -250px;
	bottom: -230px;
	width: 900px;
	max-width: 65%;
	flex-basis: auto !important;
	pointer-events: none;
	z-index: 1;
}

.wp-block-cover.alignfull.has-parallax .hide-on-mobile lottie-player {
	width: 100% !important;
	height: auto !important;
}

/* ============================================
   "We've Got You Covered" h3 — no top margin
   ============================================ */
.wp-block-cover .wp-block-heading.has-brand-gold-color {
	margin-top: 0 !important;
	padding-top: 0 !important;
}


/* ============================================
   MOBILE RESPONSIVE
   ============================================ */
@media (max-width: 768px) {
	.info-strip {
		display: none;
	}

	.main-header {
		position: sticky;
		top: 0;
	}

	/* Hide auth icons and cart on mobile header bar */
	.header-auth-links,
	.header-cart-icon {
		display: none !important;
	}

	/* SHOW CTA button on mobile */
	.header-cta-btn,
	.header-actions .wp-block-buttons {
		display: block !important;
	}

	/* Smaller CTA button on mobile */
	.header-cta-btn .wp-block-button__link {
		padding: 0.4rem 0.9rem !important;
		font-size: 0.7rem !important;
	}

	/* Tighten header actions gap on mobile */
	.header-actions {
		gap: 0.5rem !important;
	}

	/* Logo smaller on mobile */
	.header-icon-logo img {
		width: 35px !important;
		height: 35px !important;
	}

	/* Tighter logo-nav gap */
	.logo-nav-group {
		gap: 0.5rem !important;
	}

	.site-footer .wp-block-columns {
		gap: 2rem !important;
	}

	.hide-on-mobile {
		display: none !important;
	}

	/* Logo row: wrap into 2 rows on mobile */
	.is-not-stacked-on-mobile.are-vertically-aligned-center {
		flex-wrap: wrap !important;
		justify-content: center !important;
		gap: 15px 0 !important;
	}

	.is-not-stacked-on-mobile .wp-block-column {
		flex-basis: 33.33% !important;
		max-width: 33.33%;
		padding: 0 5px;
	}

	.client-logo-grayscale img {
		max-height: 50px;
		width: auto !important;
		object-fit: contain;
	}

	.client-logo-grayscale {
		margin-bottom: 0 !important;
	}

	/* Our Services: left-align everything on mobile */
	.has-text-align-right {
		text-align: left !important;
	}
}

@media (max-width: 480px) {
	.main-header .wp-block-site-logo img {
		max-width: 200px;
	}
}

/* ============================================
   404 — PRINT FAILED (Interactive Canvas)
   ============================================ */
.error-404-page {
	position: relative;
	min-height: 100vh;
	min-height: 100dvh;
	background: #333333;
	display: flex;
	align-items: center;
	justify-content: center;
	overflow: hidden;
	cursor: crosshair;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.error-404-canvas {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}

.error-404-canvas canvas {
	display: block;
}

/* Giant "404" watermark */
.error-404-watermark {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: clamp(12rem, 25vw, 22rem);
	font-weight: 900;
	color: rgba(255, 255, 255, 0.03);
	letter-spacing: 0.05em;
	z-index: 1;
	user-select: none;
	pointer-events: none;
	line-height: 1;
}

/* Content overlay */
.error-404-content {
	position: relative;
	z-index: 2;
	text-align: center;
	padding: 2rem;
	max-width: 650px;
	pointer-events: none;
}

.error-404-content > * {
	pointer-events: auto;
}

.error-404-label {
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.2em;
	text-transform: uppercase;
	color: #FDB827;
	margin: 0 0 0.75rem 0;
}

.error-404-title {
	font-size: clamp(2.5rem, 6vw, 4rem);
	font-weight: 800;
	color: #ffffff;
	margin: 0 0 1.25rem 0;
	line-height: 1.1;
}

.error-404-desc {
	font-size: 1.1rem;
	line-height: 1.75;
	color: #bbbbbb;
	margin: 0 0 2.5rem 0;
}

/* Button row */
.error-404-buttons {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
	margin-bottom: 2rem;
}

.error-404-btn {
	display: inline-block;
	padding: 0.65rem 2rem;
	border-radius: 30px;
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-decoration: none;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
	cursor: pointer;
}

.error-404-btn:hover {
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(0, 0, 0, 0.3);
}

.error-404-btn-primary {
	background: #FDB827;
	color: #333333;
	border: 1px solid #e59c02;
}

.error-404-btn-primary:hover {
	color: #333333;
}

.error-404-btn-outline {
	background: transparent;
	color: #ffffff;
	border: 2px solid rgba(255, 255, 255, 0.35);
}

.error-404-btn-outline:hover {
	border-color: rgba(255, 255, 255, 0.7);
	color: #ffffff;
}

/* Meta row — counter + clear btn */
.error-404-meta {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1.25rem;
	margin-bottom: 1.25rem;
}

.filament-counter {
	font-size: 0.8rem;
	font-weight: 500;
	color: #777777;
	letter-spacing: 0.03em;
	font-variant-numeric: tabular-nums;
}

.clear-bed-btn {
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.7rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #999999;
	background: transparent;
	border: 1px solid #555555;
	border-radius: 20px;
	padding: 0.35rem 1rem;
	cursor: pointer;
	transition: border-color 0.2s ease, color 0.2s ease;
}

.clear-bed-btn:hover {
	border-color: #FDB827;
	color: #FDB827;
}

.error-404-doodle-hint {
	font-size: 0.85rem;
	color: #666666;
	font-style: italic;
	margin: 0;
}

/* Responsive */
@media (max-width: 600px) {
	.error-404-watermark {
		font-size: 10rem;
	}

	.error-404-desc {
		font-size: 0.95rem;
	}

	.error-404-buttons {
		flex-direction: column;
		align-items: center;
	}

	.error-404-btn {
		width: 80%;
		text-align: center;
	}

	.error-404-meta {
		flex-direction: column;
		gap: 0.5rem;
	}
}

/* ============================================
   WOOCOMMERCE CART PAGE
   ============================================ */

/* Cart table */
.woocommerce-cart .shop_table.cart {
	border-collapse: collapse;
	border: none;
	width: 100%;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.woocommerce-cart .shop_table.cart thead th {
	background: #333333;
	color: #ffffff;
	font-weight: 700;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	padding: 0.85rem 1rem;
	border: none;
}

.woocommerce-cart .shop_table.cart thead th:first-child {
	border-radius: 8px 0 0 0;
}

.woocommerce-cart .shop_table.cart thead th:last-child {
	border-radius: 0 8px 0 0;
}

.woocommerce-cart .shop_table.cart td {
	padding: 1.25rem 1rem;
	vertical-align: middle;
	border-bottom: 1px solid #e8e8e8;
	background: #ffffff;
	font-size: 0.95rem;
	color: #333333;
}

.woocommerce-cart .shop_table.cart .cart_item:last-child td {
	border-bottom: none;
}

/* Product thumbnail */
.woocommerce-cart .shop_table.cart .product-thumbnail img {
	border-radius: 8px;
	width: 80px;
	height: 80px;
	object-fit: cover;
	border: 2px solid #eeeeee;
	transition: border-color 0.2s ease;
}

.woocommerce-cart .shop_table.cart .product-thumbnail img:hover {
	border-color: #FDB827;
}

/* Product name */
.woocommerce-cart .shop_table.cart .product-name a {
	color: #333333;
	text-decoration: none;
	font-weight: 600;
	font-size: 0.95rem;
	transition: color 0.2s ease;
}

.woocommerce-cart .shop_table.cart .product-name a:hover {
	color: #FDB827;
}

/* Product price */
.woocommerce-cart .shop_table.cart .product-price .amount,
.woocommerce-cart .shop_table.cart .product-subtotal .amount {
	font-weight: 700;
	color: #333333;
	font-size: 1rem;
}

/* Remove button */
.woocommerce-cart .shop_table.cart .product-remove a.remove {
	color: #cccccc !important;
	font-size: 1.5rem;
	transition: color 0.2s ease;
}

.woocommerce-cart .shop_table.cart .product-remove a.remove:hover {
	background: transparent !important;
	color: #e74c3c !important;
}

/* Quantity input */
.woocommerce-cart .shop_table.cart .quantity .qty {
	width: 60px;
	padding: 0.4rem 0.5rem;
	border: 2px solid #dddddd;
	border-radius: 6px;
	text-align: center;
	font-weight: 600;
	font-size: 0.95rem;
	transition: border-color 0.2s ease;
}

.woocommerce-cart .shop_table.cart .quantity .qty:focus {
	border-color: #FDB827;
	outline: none;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.15);
}

/* Actions row (coupon + update cart) */
.woocommerce-cart .shop_table.cart .actions {
	padding: 1.25rem 1rem;
	background: #ffffff;
	border-top: 2px solid #f0f0f0;
}

.woocommerce-cart .shop_table.cart .actions .coupon label {
	display: none;
}

.woocommerce-cart .shop_table.cart .actions .coupon #coupon_code {
	padding: 0.5rem 0.85rem;
	border: 2px solid #dddddd;
	border-radius: 25px;
	font-size: 0.85rem;
	width: 180px;
	transition: border-color 0.2s ease;
}

.woocommerce-cart .shop_table.cart .actions .coupon #coupon_code:focus {
	border-color: #FDB827;
	outline: none;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.15);
}

.woocommerce-cart .shop_table.cart .actions .coupon .button {
	background: #333333;
	color: #ffffff;
	border: none;
	padding: 0.5rem 1.25rem;
	border-radius: 25px;
	font-weight: 700;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	cursor: pointer;
	transition: background 0.2s ease;
}

.woocommerce-cart .shop_table.cart .actions .coupon .button:hover {
	background: #444444;
}

.woocommerce-cart .shop_table.cart .actions > .button {
	background: transparent;
	color: #999999;
	border: 2px solid #dddddd;
	padding: 0.5rem 1.25rem;
	border-radius: 25px;
	font-weight: 600;
	font-size: 0.8rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	cursor: pointer;
	transition: all 0.2s ease;
}

.woocommerce-cart .shop_table.cart .actions > .button:hover {
	border-color: #333333;
	color: #333333;
}

.woocommerce-cart .shop_table.cart .actions > .button[disabled] {
	opacity: 0.5;
	cursor: not-allowed;
}

/* Cart totals box */
.woocommerce-cart .cart-collaterals {
	margin-top: 2rem;
}

.woocommerce-cart .cart_totals {
	background: #ffffff;
	border-radius: 12px;
	padding: 2rem;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
	border: 1px solid #eeeeee;
}

.woocommerce-cart .cart_totals h2 {
	font-size: 1.15rem;
	font-weight: 800;
	color: #333333;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	margin-bottom: 1.25rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid #FDB827;
}

.woocommerce-cart .cart_totals table {
	border: none;
}

.woocommerce-cart .cart_totals table th {
	font-weight: 600;
	color: #666666;
	font-size: 0.9rem;
	padding: 0.75rem 0;
	border: none;
	background: transparent;
	text-transform: uppercase;
	letter-spacing: 0.02em;
}

.woocommerce-cart .cart_totals table td {
	padding: 0.75rem 0;
	border: none;
	text-align: right;
	color: #333333;
	font-weight: 600;
	font-size: 0.95rem;
}

.woocommerce-cart .cart_totals table tr {
	border-bottom: 1px solid #f0f0f0;
}

.woocommerce-cart .cart_totals table tr:last-child {
	border-bottom: none;
}

.woocommerce-cart .cart_totals .order-total .amount {
	font-size: 1.35rem;
	font-weight: 800;
	color: #FDB827;
}

/* Checkout button - gold pill */
.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button {
	background: #FDB827 !important;
	color: #1a1a1a !important;
	border: none;
	padding: 0.85rem 2rem;
	border-radius: 30px;
	font-weight: 800;
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	text-decoration: none;
	display: block;
	text-align: center;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(253, 184, 39, 0.3);
	margin-top: 1rem;
}

.woocommerce-cart .cart_totals .wc-proceed-to-checkout .checkout-button:hover {
	background: #e5a620 !important;
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(253, 184, 39, 0.4);
}

/* Shipping calculator in cart totals */
.woocommerce-cart .cart_totals .woocommerce-shipping-calculator .button {
	background: #333333;
	color: #ffffff;
	border: none;
	padding: 0.45rem 1rem;
	border-radius: 20px;
	font-weight: 600;
	font-size: 0.8rem;
	cursor: pointer;
}

/* Wrap the cart table in a rounded card on light bg */
.woocommerce-cart .woocommerce > form {
	background: #ffffff;
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 2px 12px rgba(0, 0, 0, 0.06);
	border: 1px solid #eeeeee;
}

/* Cart return to shop link */
.woocommerce-cart .return-to-shop .button {
	background: #333333;
	color: #ffffff;
	border: none;
	padding: 0.65rem 1.5rem;
	border-radius: 25px;
	font-weight: 700;
	font-size: 0.85rem;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	text-decoration: none;
	transition: background 0.2s ease;
}

.woocommerce-cart .return-to-shop .button:hover {
	background: #444444;
}

/* Empty cart message — special centered layout */
.woocommerce-cart .cart-empty.woocommerce-info {
	background: #ffffff;
	border-radius: 12px;
	padding: 3rem 2rem;
	text-align: center;
	padding: 3rem 2rem !important;
	border-left: none !important;
	border-radius: 12px !important;
	font-size: 1rem !important;
	color: #aaaaaa !important;
}

.woocommerce-cart .cart-empty.woocommerce-info::before {
	color: #FDB827;
}

/* WooCommerce notices */
.woocommerce-cart .woocommerce-message,
.woocommerce-cart .woocommerce-info {
	border-top-color: #FDB827;
	background: #ffffff;
	border-radius: 8px;
	margin-bottom: 1.5rem;
}

.woocommerce-cart .woocommerce-message::before,
.woocommerce-cart .woocommerce-info::before {
	color: #FDB827;
}

/* RESPONSIVE: Cart page */
@media (max-width: 768px) {
	.woocommerce-cart .shop_table.cart,
	.woocommerce-cart .shop_table.cart thead,
	.woocommerce-cart .shop_table.cart tbody,
	.woocommerce-cart .shop_table.cart tr,
	.woocommerce-cart .shop_table.cart td {
		display: block;
	}

	.woocommerce-cart .shop_table.cart thead {
		display: none;
	}

	.woocommerce-cart .shop_table.cart .cart_item {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		padding: 1rem;
		gap: 0.75rem;
		border-bottom: 1px solid #e8e8e8;
	}

	.woocommerce-cart .shop_table.cart .cart_item td {
		border: none;
		padding: 0;
	}

	.woocommerce-cart .shop_table.cart .cart_item .product-thumbnail {
		width: 70px;
		flex-shrink: 0;
	}

	.woocommerce-cart .shop_table.cart .cart_item .product-name {
		flex: 1;
		min-width: 120px;
	}

	.woocommerce-cart .shop_table.cart .cart_item .product-price {
		display: none;
	}

	.woocommerce-cart .shop_table.cart .cart_item .product-quantity {
		width: auto;
	}

	.woocommerce-cart .shop_table.cart .cart_item .product-subtotal {
		font-weight: 700;
		margin-left: auto;
	}

	.woocommerce-cart .shop_table.cart .cart_item .product-remove {
		position: absolute;
		right: 0.5rem;
		top: 0.5rem;
	}

	.woocommerce-cart .shop_table.cart .actions {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
		align-items: stretch;
	}

	.woocommerce-cart .shop_table.cart .actions .coupon {
		display: flex;
		gap: 0.5rem;
	}

	.woocommerce-cart .shop_table.cart .actions .coupon #coupon_code {
		flex: 1;
		width: auto;
	}

	.woocommerce-cart .cart-collaterals {
		max-width: 100%;
		box-sizing: border-box;
	}

	.woocommerce-cart .cart_totals {
		padding: 1.25rem;
		box-sizing: border-box;
		max-width: 100%;
		overflow: hidden;
	}

	.woocommerce-cart .cart_totals table {
		width: 100%;
		table-layout: fixed;
	}

	.woocommerce-cart .cart_totals table th,
	.woocommerce-cart .cart_totals table td {
		word-wrap: break-word;
		overflow-wrap: break-word;
	}
}

/* ============================================
   CHECKOUT WIZARD — Multi-Step Branded Checkout
   ============================================ */

/* FOUC prevention — hide native checkout until JS wizard takes over */
.checkout-page form.woocommerce-checkout {
	opacity: 0;
	transition: opacity 0.35s ease;
	max-width: 100%;
	overflow-x: hidden;
}
body.cw-active form.woocommerce-checkout {
	opacity: 1;
}
/* Hide native WC elements that the wizard rearranges */
.checkout-page .woocommerce-form-coupon-toggle,
.checkout-page .checkout_coupon.woocommerce-form-coupon {
	display: none !important;
}

/* Mini header */
.checkout-mini-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.85rem 2rem;
	background: #111111;
	border-bottom: 1px solid #2a2a2a;
	font-family: var(--wp--preset--font-family--ubuntu);
	position: relative;
	z-index: 10;
}

.checkout-mini-logo img {
	display: block;
	border-radius: 4px;
}

.checkout-mini-title {
	color: #999999;
	font-size: 0.85rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.checkout-mini-lock {
	color: #FDB827;
	font-size: 0.9rem;
}

/* Mini footer */
.checkout-mini-footer {
	text-align: center;
	padding: 1.5rem 2rem;
	border-top: 1px solid #2a2a2a;
}

.checkout-mini-footer p {
	color: #555555;
	font-size: 0.75rem;
	margin: 0;
	font-family: var(--wp--preset--font-family--ubuntu);
}

/* Hide default WooCommerce chrome on checkout */
.cw-active .woocommerce-form-coupon-toggle {
	display: none;
}

.cw-active .woocommerce-NoticeGroup {
	max-width: 700px;
	margin: 0 auto 1rem;
}

/* ── Progress Bar ───────────────────────── */
.cw-progress {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0;
	padding: 1.75rem 1rem 0.5rem;
	max-width: 500px;
	margin: 0 auto;
}

.cw-progress-step {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.35rem;
	cursor: pointer;
	z-index: 1;
	transition: all 0.3s ease;
}

.cw-progress-num {
	width: 36px;
	height: 36px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 0.85rem;
	font-weight: 700;
	background: #333333;
	color: #888888;
	border: 2px solid #444444;
	transition: all 0.3s ease;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-progress-label {
	font-size: 0.7rem;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	font-weight: 600;
	color: #666666;
	transition: color 0.3s ease;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-progress-line {
	flex: 1;
	height: 2px;
	background: #333333;
	min-width: 40px;
	margin: 0 0.5rem;
	margin-bottom: 1.25rem;
	transition: background 0.3s ease;
}

/* Active step */
.cw-progress-active .cw-progress-num {
	background: #FDB827;
	color: #1a1a1a;
	border-color: #FDB827;
	box-shadow: 0 0 15px rgba(253, 184, 39, 0.35);
}

.cw-progress-active .cw-progress-label {
	color: #FDB827;
}

/* Completed step */
.cw-progress-completed .cw-progress-num {
	background: #2a6e2a;
	color: #ffffff;
	border-color: #2a6e2a;
}

.cw-progress-completed .cw-progress-num::after {
	content: '\2713';
	position: absolute;
}

.cw-progress-completed .cw-progress-num {
	font-size: 0;
	position: relative;
}

.cw-progress-completed .cw-progress-num::after {
	font-size: 0.85rem;
}

.cw-progress-completed .cw-progress-label {
	color: #999999;
}

.cw-progress-completed + .cw-progress-line {
	background: #2a6e2a;
}

/* ── Layout: Main + Sidebar ─────────────── */
.cw-layout {
	display: grid;
	grid-template-columns: 1fr 340px;
	gap: 2rem;
	max-width: 1000px;
	margin: 1.5rem auto 0;
	align-items: start;
}

.cw-main {
	background: #ffffff;
	border-radius: 16px;
	padding: 2.5rem;
	box-shadow: 0 4px 24px rgba(0, 0, 0, 0.3);
	overflow: hidden;
	position: relative;
	min-height: 400px;
}

/* ── Step containers ────────────────────── */
.cw-step {
	transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1),
	            opacity 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	position: absolute;
	top: 2.5rem;
	left: 2.5rem;
	right: 2.5rem;
	opacity: 0;
	pointer-events: none;
}

.cw-step-active {
	position: relative;
	top: 0;
	left: 0;
	right: 0;
	opacity: 1;
	transform: translateX(0);
	pointer-events: auto;
}

.cw-step-left {
	transform: translateX(-40px);
}

.cw-step-right {
	transform: translateX(40px);
}

.cw-step-title {
	font-size: 1.35rem;
	font-weight: 700;
	color: #333333;
	margin: 0 0 0.25rem;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-step-subtitle {
	font-size: 0.85rem;
	color: #888888;
	margin: 0 0 1.75rem;
	font-family: var(--wp--preset--font-family--ubuntu);
}

/* ── Form fields (inside steps) ─────────── */
.cw-fields {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 0.75rem 1rem;
}

.cw-fields .form-row-wide,
.cw-fields .address-field {
	grid-column: 1 / -1;
}

.cw-fields .form-row-first,
.cw-fields .form-row-last {
	width: 100% !important;
	float: none !important;
}

.cw-fields .form-row-first {
	grid-column: 1;
}

.cw-fields .form-row-last {
	grid-column: 2;
}

.cw-active .woocommerce-checkout .form-row label {
	font-size: 0.8rem;
	font-weight: 600;
	color: #555555;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	margin-bottom: 0.35rem;
	display: block;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-active .woocommerce-checkout .form-row label .required {
	color: #FDB827;
	text-decoration: none;
}

.cw-active .woocommerce-checkout .form-row label .optional {
	color: #aaaaaa;
	font-weight: 400;
	text-transform: none;
}

.cw-active .woocommerce-checkout .form-row .woocommerce-input-wrapper {
	display: block;
}

.cw-active .woocommerce-checkout .form-row input.input-text,
.cw-active .woocommerce-checkout .form-row textarea,
.cw-active .woocommerce-checkout .form-row select {
	width: 100%;
	padding: 0.7rem 0.85rem;
	border: 2px solid #e0e0e0;
	border-radius: 10px;
	font-size: 0.95rem;
	font-family: var(--wp--preset--font-family--ubuntu);
	color: #333333;
	background: #fafafa;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box;
}

.cw-active .woocommerce-checkout .form-row input.input-text:focus,
.cw-active .woocommerce-checkout .form-row textarea:focus,
.cw-active .woocommerce-checkout .form-row select:focus {
	border-color: #FDB827;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.15);
	outline: none;
	background: #ffffff;
}

/* Select2 dropdown overrides */
.cw-active .select2-container {
	width: 100% !important;
}

.cw-active .select2-container--default .select2-selection--single {
	border: 2px solid #e0e0e0;
	border-radius: 10px;
	height: auto;
	padding: 0.55rem 0.85rem;
	background: #fafafa;
	transition: border-color 0.2s ease;
}

.cw-active .select2-container--default .select2-selection--single .select2-selection__rendered {
	color: #333333;
	font-size: 0.95rem;
	font-family: var(--wp--preset--font-family--ubuntu);
	line-height: 1.5;
	padding: 0;
}

.cw-active .select2-container--default .select2-selection--single .select2-selection__arrow {
	top: 50%;
	transform: translateY(-50%);
	right: 12px;
}

.cw-active .select2-container--open .select2-selection--single {
	border-color: #FDB827;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.15);
}

/* Validation states */
.cw-active .woocommerce-checkout .form-row.woocommerce-invalid input.input-text,
.cw-active .woocommerce-checkout .form-row.woocommerce-invalid select {
	border-color: #e74c3c;
	box-shadow: 0 0 0 3px rgba(231, 76, 60, 0.1);
}

.cw-active .woocommerce-checkout .form-row.woocommerce-validated input.input-text,
.cw-active .woocommerce-checkout .form-row.woocommerce-validated select {
	border-color: #2ecc71;
}

/* Shake animation for invalid step */
@keyframes cwShake {
	0%, 100% { transform: translateX(0); }
	20% { transform: translateX(-6px); }
	40% { transform: translateX(6px); }
	60% { transform: translateX(-4px); }
	80% { transform: translateX(4px); }
}

.cw-shake {
	animation: cwShake 0.4s ease;
}

/* Mailchimp newsletter checkbox */
.cw-active .mailchimp-newsletter {
	margin-top: 0.5rem;
	padding: 0.75rem 1rem;
	background: #f9f9f9;
	border-radius: 10px;
	border: 1px solid #eee;
}

.cw-active .mailchimp-newsletter label {
	display: flex !important;
	align-items: center;
	gap: 0.6rem;
	font-size: 0.85rem !important;
	font-weight: 400 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	color: #555 !important;
	cursor: pointer;
	margin: 0 !important;
}

.cw-active .mailchimp-newsletter input[type="checkbox"] {
	width: 18px;
	height: 18px;
	accent-color: #FDB827;
	flex-shrink: 0;
}

/* Coupon code field */
.cw-coupon {
	margin-top: 1.25rem;
	padding-top: 1.25rem;
	border-top: 1px solid #f0f0f0;
}

.cw-coupon-toggle {
	background: none;
	border: none;
	color: #FDB827;
	font-size: 0.85rem;
	font-weight: 600;
	font-family: var(--wp--preset--font-family--ubuntu);
	cursor: pointer;
	padding: 0;
	display: flex;
	align-items: center;
	gap: 0.4rem;
	transition: color 0.2s ease;
}

.cw-coupon-toggle:hover {
	color: #e5a620;
}

.cw-coupon-toggle i {
	font-size: 0.8rem;
}

.cw-coupon-field {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	margin-top: 0.75rem;
	flex-wrap: wrap;
}

.cw-coupon-input {
	flex: 1;
	min-width: 140px;
	padding: 0.55rem 0.75rem;
	border: 2px solid #e0e0e0;
	border-radius: 8px;
	font-size: 0.85rem;
	font-family: var(--wp--preset--font-family--ubuntu);
	color: #333;
	background: #fafafa;
	transition: border-color 0.2s ease;
	box-sizing: border-box;
}

.cw-coupon-input:focus {
	border-color: #FDB827;
	outline: none;
	background: #fff;
}

.cw-coupon-apply {
	padding: 0.55rem 1.25rem;
	background: #333;
	color: #fff;
	border: none;
	border-radius: 8px;
	font-size: 0.8rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	font-family: var(--wp--preset--font-family--ubuntu);
	cursor: pointer;
	transition: background 0.2s ease;
	white-space: nowrap;
}

.cw-coupon-apply:hover {
	background: #555;
}

.cw-coupon-msg {
	font-size: 0.8rem;
	font-family: var(--wp--preset--font-family--ubuntu);
	width: 100%;
}

.cw-coupon-success {
	color: #2ecc71;
}

.cw-coupon-error {
	color: #e74c3c;
}

/* Ship to different address section */
.cw-active .woocommerce-shipping-fields {
	margin-top: 1.5rem;
	padding-top: 1.5rem;
	border-top: 1px solid #eee;
}

.cw-active .woocommerce-shipping-fields h3 {
	font-size: 0.9rem;
	font-weight: 600;
	color: #555;
}

/* Order notes */
.cw-active .woocommerce-additional-fields {
	margin-top: 1.25rem;
}

.cw-active .woocommerce-additional-fields textarea {
	min-height: 80px;
	resize: vertical;
}

/* ── Navigation Buttons ─────────────────── */
.cw-nav {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 2rem;
	padding-top: 1.5rem;
	border-top: 1px solid #f0f0f0;
}

.cw-btn {
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 0.75rem 2rem;
	border-radius: 30px;
	cursor: pointer;
	transition: all 0.3s ease;
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
}

.cw-btn-next {
	background: #FDB827;
	color: #1a1a1a;
	border: none;
	box-shadow: 0 4px 15px rgba(253, 184, 39, 0.3);
	margin-left: auto;
}

.cw-btn-next:hover {
	background: #e5a620;
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(253, 184, 39, 0.4);
}

.cw-btn-back {
	background: transparent;
	color: #888888;
	border: 2px solid #ddd;
}

.cw-btn-back:hover {
	border-color: #999;
	color: #555;
}

/* ── Sidebar (Order Summary) ────────────── */
.cw-sidebar {
	background: #222222;
	border-radius: 16px;
	overflow: visible;
	border: 1px solid #333333;
	position: sticky;
	top: 2rem;
}

.cw-summary-toggle {
	display: none; /* shown on mobile */
}

.cw-sidebar-body {
	padding: 1.5rem;
	overflow: hidden;
}

.cw-sidebar-title {
	color: #ffffff;
	font-size: 0.9rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	margin: 0 0 1rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid #FDB827;
	font-family: var(--wp--preset--font-family--ubuntu);
}

/* Summary table */
.cw-summary-table {
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
	word-wrap: break-word;
}

.cw-summary-table thead {
	display: none;
}

.cw-summary-table td,
.cw-summary-table th {
	overflow: hidden;
	text-overflow: ellipsis;
}

.cw-summary-table .product-name {
	width: 60%;
}

.cw-summary-table .product-total {
	width: 40%;
}

.cw-summary-table tbody td {
	padding: 0.6rem 0;
	border-bottom: 1px solid #333;
	color: #cccccc;
	font-size: 0.85rem;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-summary-table tbody .product-name {
	color: #ffffff;
	font-weight: 500;
}

.cw-summary-table tbody .product-total {
	text-align: right;
	color: #FDB827;
	font-weight: 600;
}

.cw-summary-table tfoot th {
	padding: 0.5rem 0;
	color: #999999;
	font-size: 0.8rem;
	font-weight: 500;
	text-align: left;
	border: none;
	background: transparent;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-summary-table tfoot td {
	padding: 0.5rem 0;
	color: #ffffff;
	font-size: 0.85rem;
	font-weight: 600;
	text-align: right;
	border: none;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-summary-table tfoot tr {
	border-bottom: 1px solid #333;
}

.cw-summary-table tfoot tr:last-child {
	border-bottom: none;
}

.cw-summary-table tfoot .order-total th,
.cw-summary-table tfoot .order-total td {
	padding-top: 0.75rem;
	border-top: 1px solid #444;
}

.cw-summary-table tfoot .order-total td .amount {
	color: #FDB827;
	font-size: 1.15rem;
	font-weight: 800;
}

/* Prevent WC blockUI overlay from leaking into sidebar */
.cw-sidebar .blockUI,
.cw-sidebar .blockOverlay {
	display: none !important;
}

/* Sidebar shipping selected text (non-interactive) */
.cw-shipping-selected {
	display: block;
	font-size: 0.8rem;
	color: #ccc;
}

/* Trust badges */
.cw-trust {
	margin-top: 1.25rem;
	padding-top: 1rem;
	border-top: 1px solid #333;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.cw-trust-item {
	color: #777777;
	font-size: 0.75rem;
	font-family: var(--wp--preset--font-family--ubuntu);
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.cw-trust-item i {
	color: #FDB827;
	width: 16px;
	text-align: center;
}

/* ── Step 3: Order review + Payment ─────── */
.cw-active #order_review {
	margin: 0;
}

.cw-active .woocommerce-checkout-review-order-table {
	border: none;
	width: 100% !important;
	max-width: 100%;
	table-layout: auto;
	margin-bottom: 1.5rem;
}

.cw-active .woocommerce-checkout-review-order-table thead th {
	background: #f5f5f5;
	padding: 0.85rem 0.75rem;
	font-size: 0.8rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #555;
	border: none;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-active .woocommerce-checkout-review-order-table td,
.cw-active .woocommerce-checkout-review-order-table th {
	padding: 0.65rem 0.75rem;
	border-bottom: 1px solid #f0f0f0;
	font-size: 0.9rem;
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-active .woocommerce-checkout-review-order-table tfoot .order-total td {
	font-size: 1.15rem;
	font-weight: 800;
	color: #FDB827;
}

/* Payment section */
.cw-active #payment {
	background: #f5f5f5;
	border-radius: 14px;
	padding: 1.75rem;
	margin-top: 1.5rem;
	border: 1px solid #e8e8e8;
}

.cw-active #payment .wc_payment_methods {
	list-style: none;
	padding: 0 !important;
	margin: 0 !important;
}

.cw-active #payment .wc_payment_method {
	padding: 1rem;
	margin-bottom: 0;
	background: #ffffff;
	border: 2px solid #e0e0e0;
	border-radius: 10px;
	transition: border-color 0.2s ease;
}

.cw-active #payment .wc_payment_method.wc_payment_method input[type="radio"]:checked ~ label,
.cw-active #payment .wc_payment_method:has(input:checked) {
	border-color: #FDB827;
}

.cw-active #payment .wc_payment_method label {
	font-size: 0.95rem;
	font-weight: 700;
	color: #333;
	cursor: pointer;
	display: flex !important;
	align-items: center;
	gap: 0.5rem;
	text-transform: none !important;
	letter-spacing: 0 !important;
	margin: 0 !important;
}

.cw-active #payment .wc_payment_method label img {
	height: 22px;
	width: auto;
}

.cw-active #payment .wc_payment_method input[type="radio"] {
	accent-color: #FDB827;
	width: 18px;
	height: 18px;
	margin: 0;
}

.cw-active #payment .payment_box {
	background: transparent;
	border-radius: 0;
	padding: 1rem 0 0;
	margin-top: 0.75rem;
	border: none;
	border-top: 1px solid #eee;
}

.cw-active #payment .payment_box p {
	font-size: 0.82rem;
	color: #777;
	line-height: 1.5;
	margin: 0 0 0.75rem;
}

.cw-active #payment .payment_box fieldset {
	border: none;
	padding: 0;
	margin: 0;
}

/* Hide Stripe Link autofill button */
.cw-active #payment iframe[src*="link-button"],
.cw-active #payment iframe[src*="elements-inner-link"] {
	display: none !important;
}

/* Stripe card input frame */
.cw-active #payment .wc-stripe-elements-field,
.cw-active #payment .stripe-card-group {
	background: #fafafa;
	border: 2px solid #e0e0e0;
	border-radius: 10px;
	padding: 0.7rem 0.85rem;
	transition: border-color 0.2s ease;
}

/* Save payment method checkbox */
.cw-active #payment .woocommerce-SavedPaymentMethods-saveNew {
	margin-top: 0.75rem;
}

.cw-active #payment .woocommerce-SavedPaymentMethods-saveNew label {
	font-size: 0.82rem !important;
	font-weight: 400 !important;
	color: #777 !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
}

/* WC loading overlay — match our styling */
.cw-active #order_review .blockOverlay {
	background: rgba(255, 255, 255, 0.7) !important;
	border-radius: 12px;
}

/* Place order button */
.cw-active .place-order {
	margin-top: 1.5rem;
	text-align: right;
}

.cw-active #place_order {
	background: #FDB827 !important;
	color: #1a1a1a !important;
	border: none !important;
	padding: 0.85rem 2.5rem;
	border-radius: 30px;
	font-weight: 800;
	font-size: 0.9rem;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	cursor: pointer;
	transition: all 0.3s ease;
	box-shadow: 0 4px 15px rgba(253, 184, 39, 0.3);
	font-family: var(--wp--preset--font-family--ubuntu);
}

.cw-active #place_order:hover {
	background: #e5a620 !important;
	transform: translateY(-1px);
	box-shadow: 0 6px 20px rgba(253, 184, 39, 0.4);
}

/* Privacy text */
.cw-active .woocommerce-terms-and-conditions-wrapper {
	font-size: 0.8rem;
	color: #888;
	margin-top: 1rem;
}

.cw-active .woocommerce-terms-and-conditions-wrapper a {
	color: #FDB827;
}

/* Shipping methods in review table */
.cw-active .woocommerce-checkout-review-order-table .shipping td {
	text-align: right;
}

.cw-active .woocommerce-checkout-review-order-table .shipping ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.cw-active .woocommerce-checkout-review-order-table .shipping label {
	font-size: 0.85rem;
	cursor: pointer;
}

/* ── RESPONSIVE ─────────────────────────── */
@media (max-width: 768px) {
	.checkout-mini-header {
		padding: 0.65rem 1rem;
	}

	.checkout-mini-title {
		font-size: 0.75rem;
	}

	.cw-progress {
		padding: 1.25rem 0.5rem 0.25rem;
	}

	.cw-progress-num {
		width: 30px;
		height: 30px;
		font-size: 0.75rem;
	}

	.cw-progress-label {
		font-size: 0.6rem;
	}

	.cw-progress-line {
		min-width: 20px;
		margin-bottom: 1rem;
	}

	/* Stack layout */
	.cw-layout {
		grid-template-columns: 1fr;
		gap: 1rem;
		margin: 1rem auto 0;
		padding: 0 0.75rem;
		box-sizing: border-box;
		max-width: 100%;
	}

	/* Sidebar becomes collapsible top section */
	.cw-sidebar {
		order: -1;
		position: relative;
		top: 0;
		max-width: 100%;
		box-sizing: border-box;
	}

	.cw-summary-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		padding: 0.85rem 1.25rem;
		background: #222222;
		color: #FDB827;
		border: none;
		font-size: 0.85rem;
		font-weight: 600;
		font-family: var(--wp--preset--font-family--ubuntu);
		cursor: pointer;
	}

	.cw-summary-toggle .cw-toggle-arrow {
		transition: transform 0.3s ease;
		font-size: 0.7rem;
	}

	.cw-summary-open .cw-toggle-arrow {
		transform: rotate(180deg);
	}

	.cw-sidebar-body {
		display: none;
		padding: 0 1.25rem 1.25rem;
	}

	.cw-summary-open .cw-sidebar-body {
		display: block;
	}

	/* Main card */
	.cw-main {
		padding: 1.5rem;
		border-radius: 12px;
		box-sizing: border-box;
		max-width: 100%;
		overflow: hidden;
	}

	.cw-step {
		top: 1.5rem;
		left: 1.5rem;
		right: 1.5rem;
	}

	.cw-step-active {
		left: 0;
		right: 0;
		max-width: 100%;
	}

	.cw-fields {
		grid-template-columns: 1fr;
		max-width: 100%;
	}

	.cw-fields .form-row-first,
	.cw-fields .form-row-last {
		grid-column: 1;
	}

	/* Payment + review sections — contain padding */
	.cw-active #payment {
		padding: 1.25rem;
		box-sizing: border-box;
		max-width: 100%;
	}

	.cw-active #order_review {
		max-width: 100%;
		overflow: hidden;
	}

	.cw-active .woocommerce-checkout-review-order-table {
		table-layout: fixed;
	}

	.cw-active .woocommerce-checkout-review-order-table td,
	.cw-active .woocommerce-checkout-review-order-table th {
		word-wrap: break-word;
		overflow-wrap: break-word;
	}

	/* Payment method cards */
	.cw-active #payment .wc_payment_method {
		padding: 0.75rem;
		box-sizing: border-box;
	}

	.cw-active #payment .payment_box {
		overflow: hidden;
	}

	/* Stripe card fields */
	.cw-active #payment .wc-stripe-elements-field,
	.cw-active #payment .stripe-card-group {
		max-width: 100%;
		box-sizing: border-box;
	}

	.cw-nav {
		flex-direction: column-reverse;
		gap: 0.75rem;
	}

	.cw-btn {
		width: 100%;
		justify-content: center;
		box-sizing: border-box;
	}

	.cw-btn-next {
		margin-left: 0;
	}
}

/* ============================================
   MY ACCOUNT PAGE
   ============================================ */

/* ── Welcome bar (logged-in) ────────────── */
.acct-welcome {
	background: #ffffff;
	border: 1px solid #e8e8e8;
	border-radius: 14px 14px 0 0;
	padding: 1rem 2rem;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	box-shadow: 0 2px 16px rgba(0,0,0,0.06);
	box-sizing: border-box;
}

.acct-welcome-text {
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.9rem;
	color: #555;
}

.acct-welcome-text strong {
	color: #1a1a1a;
}

/* ── LOGGED OUT: Login / Register ───────── */
.woocommerce-account form.login,
.woocommerce-account form.register {
	border: none !important;
	padding: 0;
	margin: 0;
}

.woocommerce-account #customer_login {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
	align-items: start;
}

.woocommerce-account #customer_login::before,
.woocommerce-account #customer_login::after {
	display: none !important;
}

/* Cards — override WC default float layout */
.woocommerce-account #customer_login .u-column1,
.woocommerce-account #customer_login .u-column2 {
	float: none !important;
	width: 100% !important;
	max-width: none;
	margin: 0;
	padding: 0;
	background: #ffffff;
	border: none;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 4px 24px rgba(0,0,0,0.08);
	transition: box-shadow 0.3s ease, transform 0.3s ease;
}

.woocommerce-account #customer_login .u-column1:hover,
.woocommerce-account #customer_login .u-column2:hover {
	box-shadow: 0 8px 32px rgba(0,0,0,0.12);
	transform: translateY(-2px);
}

/* Card headings — dark header strip with icon */
.woocommerce-account #customer_login h2 {
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: #ffffff;
	background: #333333;
	margin: 0;
	padding: 1.1rem 2rem;
	border-bottom: 3px solid #FDB827;
	display: flex;
	align-items: center;
	gap: 0.6rem;
}

.woocommerce-account #customer_login h2::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 1rem;
	color: #FDB827;
}

.woocommerce-account #customer_login .u-column1 h2::before {
	content: "\f2f6";
}

.woocommerce-account #customer_login .u-column2 h2::before {
	content: "\f234";
}

/* Form body padding */
.woocommerce-account #customer_login .u-column1 form,
.woocommerce-account #customer_login .u-column2 form {
	padding: 2rem 2rem 1.75rem;
}

/* Shared form styles */
.woocommerce-account .woocommerce-form-login .form-row,
.woocommerce-account .woocommerce-form-register .form-row {
	margin-bottom: 1.25rem;
}

.woocommerce-account .woocommerce-form-login label,
.woocommerce-account .woocommerce-form-register label {
	display: block;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #888;
	margin-bottom: 0.45rem;
}

.woocommerce-account .woocommerce-form-login input[type="text"],
.woocommerce-account .woocommerce-form-login input[type="password"],
.woocommerce-account .woocommerce-form-login input[type="email"],
.woocommerce-account .woocommerce-form-register input[type="text"],
.woocommerce-account .woocommerce-form-register input[type="password"],
.woocommerce-account .woocommerce-form-register input[type="email"] {
	width: 100%;
	padding: 0.8rem 1rem;
	background: #f9f9f9;
	border: 2px solid #e4e4e4;
	border-radius: 10px;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.9rem;
	color: #333;
	transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
	box-sizing: border-box;
}

.woocommerce-account .woocommerce-form-login input:focus,
.woocommerce-account .woocommerce-form-register input:focus {
	outline: none;
	border-color: #FDB827;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.15);
	background: #fff;
}

/* Password field wrapper */
.woocommerce-account .password-input {
	display: block;
	position: relative;
}

.woocommerce-account .show-password-input {
	position: absolute;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
	cursor: pointer;
	color: #aaa;
	transition: color 0.2s ease;
}

.woocommerce-account .show-password-input:hover {
	color: #FDB827;
}

/* Remember me checkbox */
.woocommerce-account .woocommerce-form-login .woocommerce-form-login__rememberme {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.82rem;
	color: #666;
	margin: 0.5rem 0 1rem;
}

.woocommerce-account .woocommerce-form-login .woocommerce-form-login__rememberme input[type="checkbox"] {
	accent-color: #FDB827;
	width: 16px;
	height: 16px;
}

/* Submit buttons — full width gold pill */
.woocommerce-account .woocommerce-form-login button[type="submit"],
.woocommerce-account .woocommerce-form-register button[type="submit"] {
	display: block;
	width: 100%;
	background: #FDB827;
	color: #1a1a1a;
	border: none;
	padding: 0.85rem 2rem;
	border-radius: 30px;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	cursor: pointer;
	transition: all 0.25s ease;
	box-shadow: 0 4px 16px rgba(253, 184, 39, 0.3);
}

.woocommerce-account .woocommerce-form-login button[type="submit"]:hover,
.woocommerce-account .woocommerce-form-register button[type="submit"]:hover {
	background: #e5a620;
	transform: translateY(-2px);
	box-shadow: 0 6px 22px rgba(253, 184, 39, 0.4);
}

/* Lost password link */
.woocommerce-account .woocommerce-LostPassword {
	margin-top: 1.25rem;
	text-align: center;
}

.woocommerce-account .woocommerce-LostPassword a {
	color: #999;
	font-size: 0.8rem;
	font-weight: 600;
	text-decoration: none;
	transition: color 0.2s ease;
}

.woocommerce-account .woocommerce-LostPassword a:hover {
	color: #FDB827;
}

/* Dokan role selector */
.woocommerce-account .vendor-customer-registration {
	background: #f9f9f9;
	border: 1px solid #eee;
	border-radius: 10px;
	padding: 1rem 1.25rem !important;
	margin-bottom: 1.25rem;
}

.woocommerce-account .vendor-customer-registration label.radio {
	display: inline-flex;
	align-items: center;
	gap: 0.35rem;
	font-size: 0.85rem;
	color: #555;
	cursor: pointer;
	text-transform: none;
	letter-spacing: 0;
	font-weight: 500;
	margin-right: 1.5rem;
}

.woocommerce-account .vendor-customer-registration label.radio br {
	display: none;
}

.woocommerce-account .vendor-customer-registration input[type="radio"] {
	accent-color: #FDB827;
	width: 16px;
	height: 16px;
}

/* Newsletter checkbox */
.woocommerce-account .mailchimp-newsletter {
	margin-bottom: 1rem;
}

.woocommerce-account .mailchimp-newsletter label {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 0.82rem;
	color: #666;
	text-transform: none;
	letter-spacing: 0;
	font-weight: 500;
	cursor: pointer;
}

.woocommerce-account .mailchimp-newsletter input[type="checkbox"] {
	accent-color: #FDB827;
	width: 16px;
	height: 16px;
}

/* Privacy policy text */
.woocommerce-account .woocommerce-privacy-policy-text {
	font-size: 0.78rem;
	color: #999;
	line-height: 1.6;
	margin-bottom: 1.25rem;
	padding: 0.75rem 1rem;
	background: #fafafa;
	border-radius: 8px;
	border: 1px solid #f0f0f0;
}

.woocommerce-account .woocommerce-privacy-policy-text p {
	margin: 0;
}

.woocommerce-account .woocommerce-privacy-policy-text a {
	color: #FDB827;
	font-weight: 600;
}

/* ── LOGGED IN: Unified card wrapper ────── */
.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none !important;
	width: 100% !important;
}

/* ── LOGGED IN: Navigation ──────────────── */
.woocommerce-account .woocommerce-MyAccount-navigation {
	background: #ffffff;
	border: 1px solid #e8e8e8;
	border-top: none;
	border-radius: 0;
	padding: 0;
	margin-bottom: 0;
	box-shadow: 0 2px 16px rgba(0,0,0,0.06);
}

/* When welcome bar is absent (e.g. direct endpoint URL) */
.woocommerce-account .woocommerce-MyAccount-navigation:first-child {
	border-top: 1px solid #e8e8e8;
	border-radius: 14px 14px 0 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
	border-bottom: 2px solid #f0f0f0;
	background: linear-gradient(to bottom, #ffffff, #fafafa);
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li {
	margin: 0;
	padding-top: 0;
	padding-bottom: 0;
	flex: 1 1 auto;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.35rem;
	padding: 0.85rem 0.75rem;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.73rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	color: #777;
	text-decoration: none;
	border-bottom: 3px solid transparent;
	margin-bottom: -2px;
	transition: color 0.2s ease, border-color 0.2s ease, background 0.2s ease;
	white-space: nowrap;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover {
	color: #FDB827;
	background: rgba(253, 184, 39, 0.04);
	text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a[aria-current="page"] {
	color: #FDB827;
	border-bottom-color: #FDB827;
	background: rgba(253, 184, 39, 0.04);
	text-decoration: none;
}

/* Font Awesome icons via ::before pseudo-elements */
.woocommerce-account .woocommerce-MyAccount-navigation ul li a::before {
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 0.9rem;
	width: 1.1rem;
	text-align: center;
	display: inline-block;
	flex-shrink: 0;
	opacity: 0.7;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.is-active a::before,
.woocommerce-account .woocommerce-MyAccount-navigation ul li a:hover::before {
	opacity: 1;
}

.woocommerce-MyAccount-navigation-link--dashboard a::before { content: "\f624"; }
.woocommerce-MyAccount-navigation-link--orders a::before { content: "\f466"; }
.woocommerce-MyAccount-navigation-link--downloads a::before { content: "\f019"; }
.woocommerce-MyAccount-navigation-link--edit-address a::before { content: "\f3c5"; }
.woocommerce-MyAccount-navigation-link--payment-methods a::before { content: "\f09d"; }
.woocommerce-MyAccount-navigation-link--edit-account a::before { content: "\f013"; }
.woocommerce-MyAccount-navigation-link--price-requests a::before { content: "\f02b"; }
.woocommerce-MyAccount-navigation-link--support-tickets a::before { content: "\f1cd"; }
.woocommerce-MyAccount-navigation-link--customer-logout a::before { content: "\f2f5"; }

/* Logout link — subtle */
.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a {
	color: #bbb;
}

.woocommerce-account .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--customer-logout a:hover {
	color: #cc4444;
	background: rgba(204, 68, 68, 0.04);
}

/* ── LOGGED IN: Content area ────────────── */
.woocommerce-account .woocommerce-MyAccount-content {
	background: #ffffff;
	border: 1px solid #e8e8e8;
	border-top: none;
	border-radius: 0 0 14px 14px;
	padding: 2.25rem 2rem;
	box-shadow: 0 4px 20px rgba(0,0,0,0.06);
	box-sizing: border-box;
	overflow: hidden;
}

/* Dashboard intro text */
.woocommerce-account .woocommerce-MyAccount-content > p {
	font-size: 0.9rem;
	color: #555;
	line-height: 1.7;
}

.woocommerce-account .woocommerce-MyAccount-content > p a {
	color: #FDB827;
	font-weight: 600;
	text-decoration: none;
}

.woocommerce-account .woocommerce-MyAccount-content > p a:hover {
	text-decoration: underline;
}

/* ── Orders table ───────────────────────── */
.woocommerce-account .woocommerce-orders-table {
	width: 100%;
	border-collapse: collapse;
	font-size: 0.85rem;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid #eee;
}

.woocommerce-account .woocommerce-orders-table thead th {
	background: #333333;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	color: #ffffff;
	padding: 0.85rem 1rem;
	text-align: left;
}

.woocommerce-account .woocommerce-orders-table tbody td {
	padding: 0.9rem 1rem;
	border-bottom: 1px solid #f0f0f0;
	color: #444;
	vertical-align: middle;
}

.woocommerce-account .woocommerce-orders-table tbody tr:last-child td {
	border-bottom: none;
}

.woocommerce-account .woocommerce-orders-table tbody tr:nth-child(even) {
	background: #fafafa;
}

.woocommerce-account .woocommerce-orders-table tbody tr:hover {
	background: rgba(253, 184, 39, 0.04);
}

/* Order status badges */
.woocommerce-account .woocommerce-orders-table .woocommerce-orders-table__cell-order-status {
	font-weight: 600;
	font-size: 0.8rem;
}

/* View order button */
.woocommerce-account .woocommerce-orders-table .woocommerce-button {
	display: inline-block;
	background: #FDB827;
	color: #1a1a1a;
	border: none;
	padding: 0.45rem 1.1rem;
	border-radius: 20px;
	font-size: 0.72rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	text-decoration: none;
	transition: all 0.2s ease;
	box-shadow: 0 2px 8px rgba(253, 184, 39, 0.2);
}

.woocommerce-account .woocommerce-orders-table .woocommerce-button:hover {
	background: #e5a620;
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(253, 184, 39, 0.3);
}

/* ── Address cards ──────────────────────── */
.woocommerce-account .woocommerce-Addresses {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1.5rem;
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
	background: #ffffff;
	border: 1px solid #e8e8e8;
	border-radius: 12px;
	padding: 1.5rem;
	transition: box-shadow 0.3s ease;
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address:hover {
	box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 0.75rem;
	padding-bottom: 0.75rem;
	border-bottom: 2px solid #FDB827;
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address header h3 {
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #333;
	margin: 0;
	padding: 0;
	border: none;
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address header a {
	color: #FDB827;
	font-size: 0.78rem;
	font-weight: 700;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	transition: color 0.2s ease;
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address header a:hover {
	color: #e5a620;
}

.woocommerce-account .woocommerce-Addresses .woocommerce-Address address {
	font-size: 0.85rem;
	color: #555;
	line-height: 1.7;
	font-style: normal;
}

/* ── Edit forms (address, account details) ── */
.woocommerce-account .woocommerce-EditAccountForm .form-row,
.woocommerce-account .woocommerce-address-fields .form-row {
	margin-bottom: 1.15rem;
}

.woocommerce-account .woocommerce-EditAccountForm label,
.woocommerce-account .woocommerce-address-fields label {
	display: block;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #888;
	margin-bottom: 0.4rem;
}

.woocommerce-account .woocommerce-EditAccountForm input[type="text"],
.woocommerce-account .woocommerce-EditAccountForm input[type="email"],
.woocommerce-account .woocommerce-EditAccountForm input[type="password"],
.woocommerce-account .woocommerce-address-fields input[type="text"],
.woocommerce-account .woocommerce-address-fields input[type="email"],
.woocommerce-account .woocommerce-address-fields input[type="tel"],
.woocommerce-account .woocommerce-address-fields select {
	width: 100%;
	padding: 0.75rem 1rem;
	background: #ffffff;
	border: 2px solid #e0e0e0;
	border-radius: 10px;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.9rem;
	color: #333;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	box-sizing: border-box;
}

.woocommerce-account .woocommerce-EditAccountForm input:focus,
.woocommerce-account .woocommerce-address-fields input:focus,
.woocommerce-account .woocommerce-address-fields select:focus {
	outline: none;
	border-color: #FDB827;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.15);
}

/* Save buttons in edit forms */
.woocommerce-account .woocommerce-EditAccountForm button[type="submit"],
.woocommerce-account .woocommerce-address-fields button[type="submit"] {
	display: inline-block;
	background: #FDB827;
	color: #1a1a1a;
	border: none;
	padding: 0.75rem 2.5rem;
	border-radius: 30px;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	cursor: pointer;
	transition: all 0.25s ease;
	box-shadow: 0 4px 14px rgba(253, 184, 39, 0.3);
}

.woocommerce-account .woocommerce-EditAccountForm button[type="submit"]:hover,
.woocommerce-account .woocommerce-address-fields button[type="submit"]:hover {
	background: #e5a620;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(253, 184, 39, 0.4);
}

/* Password change fieldset */
.woocommerce-account .woocommerce-EditAccountForm fieldset {
	border: 2px solid #e8e8e8;
	border-radius: 12px;
	padding: 1.5rem;
	margin: 1.75rem 0;
	background: #fafafa;
}

.woocommerce-account .woocommerce-EditAccountForm fieldset legend {
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.75rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #888;
	padding: 0 0.6rem;
}

/* WooCommerce notices on account page */
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-info {
	background: #f0faf0;
	border-left: 4px solid #4caf50;
	padding: 1rem 1.5rem;
	border-radius: 0 10px 10px 0;
	font-size: 0.85rem;
	color: #333;
	margin-bottom: 1.5rem;
}

.woocommerce-account .woocommerce-error {
	background: #fef0f0;
	border-left: 4px solid #e53935;
	padding: 1rem 1.5rem;
	border-radius: 0 10px 10px 0;
	font-size: 0.85rem;
	color: #333;
	margin-bottom: 1.5rem;
}

.woocommerce-account .woocommerce-message a,
.woocommerce-account .woocommerce-info a {
	color: #FDB827;
	font-weight: 600;
}

/* ── Dokan "Go to Vendor Dashboard" button ── */
.woocommerce-account .woocommerce-MyAccount-content .dokan-btn-theme {
	display: inline-block;
	background: #FDB827 !important;
	color: #1a1a1a !important;
	border: none !important;
	padding: 0.75rem 2rem;
	border-radius: 30px;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.85rem;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: all 0.25s ease;
	box-shadow: 0 4px 14px rgba(253, 184, 39, 0.3);
}

.woocommerce-account .woocommerce-MyAccount-content .dokan-btn-theme:hover {
	background: #e5a620 !important;
	transform: translateY(-2px);
	box-shadow: 0 6px 20px rgba(253, 184, 39, 0.4);
}

/* ══════════════════════════════════════════
   DOKAN VENDOR DASHBOARD
   ══════════════════════════════════════════ */

/* ── Layout wrapper ────────────────────── */
.dokan-dashboard-section {
	overflow: hidden;
}

.dokan-dashboard-wrap {
	display: flex !important;
	gap: 0;
	font-family: var(--wp--preset--font-family--ubuntu);
	align-items: stretch;
	min-height: calc(100vh - 200px);
}

/* ── Sidebar ───────────────────────────── */
.dokan-dashboard-wrap .dokan-dash-sidebar {
	flex: 0 0 230px !important;
	max-width: 230px !important;
	width: 230px !important;
	background: #2a2a2a !important;
}

.dokan-dashboard-wrap #dokan-navigation {
	background: transparent !important;
	border-radius: 0 !important;
	overflow: visible;
}

.dokan-dashboard-wrap .dokan-dashboard-menu {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.dokan-dashboard-wrap .dokan-dashboard-menu > li {
	margin: 0 !important;
	background: transparent !important;
}

.dokan-dashboard-wrap .dokan-dashboard-menu > li > a {
	display: flex !important;
	align-items: center;
	gap: 0.65rem;
	padding: 0.75rem 1.25rem !important;
	color: #aaa !important;
	text-decoration: none !important;
	font-size: 0.82rem !important;
	font-weight: 500;
	transition: all 0.2s ease;
	border-left: 3px solid transparent !important;
	background: transparent !important;
}

.dokan-dashboard-wrap .dokan-dashboard-menu > li > a i {
	width: 1.1rem;
	text-align: center;
	font-size: 0.85rem;
	opacity: 0.7;
	color: inherit !important;
}

.dokan-dashboard-wrap .dokan-dashboard-menu > li > a:hover {
	color: #FDB827 !important;
	background: rgba(253, 184, 39, 0.06) !important;
	border-left-color: rgba(253, 184, 39, 0.3) !important;
}

.dokan-dashboard-wrap .dokan-dashboard-menu > li > a:hover i {
	opacity: 1;
	color: #FDB827 !important;
}

/* Active state — high specificity to beat Dokan */
.dokan-dashboard-wrap .dokan-dash-sidebar .dokan-dashboard-menu > li.active {
	background: transparent !important;
	border-color: transparent !important;
}

.dokan-dashboard-wrap .dokan-dash-sidebar .dokan-dashboard-menu > li.active > a,
ul.dokan-dashboard-menu > li.active > a {
	color: #FDB827 !important;
	background: rgba(253, 184, 39, 0.08) !important;
	border-left: 3px solid #FDB827 !important;
	font-weight: 600 !important;
}

.dokan-dashboard-wrap .dokan-dash-sidebar .dokan-dashboard-menu > li.active > a i,
ul.dokan-dashboard-menu > li.active > a i {
	opacity: 1 !important;
	color: #ffffff !important;
}

/* Submenu */
.dokan-dashboard-wrap .dokan-dashboard-menu .navigation-submenu {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 0 0.25rem !important;
	background: rgba(0,0,0,0.15) !important;
}

.dokan-dashboard-wrap .dokan-dashboard-menu .navigation-submenu li a {
	display: flex !important;
	align-items: center;
	gap: 0.5rem;
	padding: 0.55rem 1.25rem 0.55rem 2.5rem !important;
	color: #888 !important;
	text-decoration: none !important;
	font-size: 0.78rem !important;
	background: transparent !important;
	transition: color 0.2s ease;
}

.dokan-dashboard-wrap .dokan-dashboard-menu .navigation-submenu li a:hover {
	color: #FDB827 !important;
}

.dokan-dashboard-wrap .dokan-dashboard-menu .navigation-submenu li a i {
	width: 1rem;
	text-align: center;
	font-size: 0.75rem;
}

/* Bottom icon links — selectors match Dokan's specificity */
.dokan-dashboard .dokan-dash-sidebar ul.dokan-dashboard-menu li.dokan-common-links {
	display: flex !important;
	justify-content: center !important;
	gap: 0.5rem !important;
	padding: 0.75rem 1rem !important;
	border: none !important;
	margin-top: 0.25rem !important;
	background: transparent !important;
}

.dokan-dashboard .dokan-dash-sidebar ul.dokan-dashboard-menu li.dokan-common-links.dokan-clearfix a {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 36px !important;
	height: 36px !important;
	border-radius: 8px !important;
	color: #888 !important;
	text-decoration: none !important;
	font-size: 0.85rem !important;
	line-height: 36px !important;
	background: rgba(255,255,255,0.06) !important;
	padding: 0 !important;
	border: none !important;
}

.dokan-dashboard .dokan-dash-sidebar ul.dokan-dashboard-menu li.dokan-common-links.dokan-clearfix a i {
	width: auto !important;
	padding: 0 !important;
	margin: 0 !important;
	line-height: 1 !important;
	color: inherit !important;
}

.dokan-dashboard .dokan-dash-sidebar ul.dokan-dashboard-menu li.dokan-common-links.dokan-clearfix a:hover {
	color: #FDB827 !important;
	background: rgba(255, 255, 255, 0.1) !important;
}

/* Hide mobile menu toggle on desktop */
#mobile-menu-icon {
	display: none;
}

/* ── Content area ──────────────────────── */
.dokan-dashboard-wrap .dokan-dashboard-content {
	flex: 1 1 0 !important;
	min-width: 0 !important;
	width: auto !important;
	max-width: none !important;
	padding: 2rem 2.5rem 3rem !important;
}

/* Page title (hide default, we use geo-hero) */
.page-id-478 .wp-block-post-title,
.page-id-478 > .entry-header {
	display: none;
}

/* Alert banners */
.dokan-dashboard-content .dokan-alert {
	border-radius: 10px;
	padding: 0.85rem 1.25rem;
	font-size: 0.85rem;
	margin-bottom: 1.25rem;
	border: none;
}

.dokan-dashboard-content .dokan-alert-warning {
	background: rgba(253, 184, 39, 0.1);
	color: #8a6d00;
	border-left: 4px solid #FDB827;
}

.dokan-dashboard-content .dokan-alert-info {
	background: rgba(52, 152, 219, 0.08);
	color: #1a6b9c;
	border-left: 4px solid #3498db;
}

.dokan-dashboard-content .dokan-alert strong {
	font-weight: 700;
}

/* Profile completeness panel — full width across both columns */
.dokan-profile-completeness {
	background: #ffffff;
	border-radius: 14px;
	border: none !important;
	box-shadow: 0 2px 16px rgba(0,0,0,0.06);
	overflow: hidden;
	margin-bottom: 1.5rem;
	flex: 0 0 100% !important;
	width: 100% !important;
}

.dokan-profile-completeness .dokan-panel-body {
	padding: 1.25rem 1.5rem;
}

.dokan-progress {
	background: #f0f0f0;
	border-radius: 20px;
	height: 10px;
	overflow: hidden;
	margin-bottom: 1rem;
}

.dokan-progress-bar {
	background: linear-gradient(90deg, #FDB827, #f0a000) !important;
	border-radius: 20px;
	height: 100%;
	font-size: 0;
	transition: width 0.6s ease;
}

.dokan-profile-completeness .dokan-panel-alert {
	background: rgba(52, 152, 219, 0.06) !important;
	border: 1px solid rgba(52, 152, 219, 0.15) !important;
	border-radius: 8px;
	padding: 0.7rem 1rem;
	font-size: 0.82rem;
	color: #1a6b9c;
	margin: 0;
}

/* ── Dashboard columns ─────────────────── */
.dokan-dashboard-content .dashboard-content-area {
	display: flex !important;
	flex-wrap: wrap;
	gap: 1.5rem;
}

.dokan-dashboard-content .dokan-dash-left,
.dokan-dashboard-content .dokan-dash-right {
	float: none !important;
	width: calc(50% - 0.75rem) !important;
	max-width: calc(50% - 0.75rem) !important;
	flex: 0 1 calc(50% - 0.75rem) !important;
	min-width: 0 !important;
	box-sizing: border-box !important;
}

/* Clear Dokan's clearfix pseudo-elements */
.dokan-dashboard-content .dashboard-content-area::before,
.dokan-dashboard-content .dashboard-content-area::after {
	display: none !important;
}

/* ── Dashboard widget cards ────────────── */
.dokan-dashboard-content .dashboard-widget {
	background: #ffffff !important;
	border-radius: 14px !important;
	border: none !important;
	box-shadow: 0 2px 16px rgba(0,0,0,0.06) !important;
	overflow: hidden !important;
	margin-bottom: 1.5rem !important;
	padding: 0 !important;
}

.dokan-dashboard-content .dashboard-widget .widget-title {
	background: #333333 !important;
	color: #ffffff !important;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 0.9rem 1.5rem !important;
	border-bottom: 3px solid #FDB827 !important;
	border-top: none !important;
	margin: 0 !important;
	display: flex !important;
	align-items: center;
	gap: 0.5rem;
}

.dokan-dashboard-content .dashboard-widget .widget-title i {
	color: #FDB827 !important;
	font-size: 0.9rem;
}

.dokan-dashboard-content .dashboard-widget .widget-title .pull-right {
	margin-left: auto;
	float: none !important;
}

.dokan-dashboard-content .dashboard-widget .widget-title .pull-right a {
	color: #FDB827 !important;
	font-size: 0.75rem !important;
	text-decoration: none !important;
	font-weight: 600;
	text-transform: none;
	letter-spacing: 0;
}

.dokan-dashboard-content .dashboard-widget .widget-title .pull-right a:hover {
	text-decoration: underline !important;
}

/* ── Big counter stats ─────────────────── */
.dokan-dashboard-content .dashboard-widget.big-counter {
	padding: 0 !important;
}

.dokan-dashboard-content .dashboard-widget.big-counter ul.list-inline {
	display: grid !important;
	grid-template-columns: 1fr 1fr;
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.dokan-dashboard-content .dashboard-widget.big-counter ul li {
	text-align: center;
	padding: 1.5rem 1rem !important;
	border-bottom: 1px solid #f0f0f0 !important;
	border-right: 1px solid #f0f0f0;
	float: none !important;
	display: block !important;
}

.dokan-dashboard-content .dashboard-widget.big-counter ul li:nth-child(2n) {
	border-right: none;
}

.dokan-dashboard-content .dashboard-widget.big-counter ul li:nth-last-child(-n+2) {
	border-bottom: none !important;
}

.dokan-dashboard-content .dashboard-widget.big-counter .title {
	font-size: 0.72rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	color: #999 !important;
	margin-bottom: 0.35rem;
}

.dokan-dashboard-content .dashboard-widget.big-counter .count {
	font-size: 1.5rem !important;
	font-weight: 800 !important;
	color: #333 !important;
}

/* ── List-count widgets (Orders, Reviews, Products) ── */
.dokan-dashboard-content .dashboard-widget .list-unstyled,
.dokan-dashboard-content .dashboard-widget .list-count {
	list-style: none !important;
	max-width: 1170px;
	margin-left: auto !important;
	margin-right: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

.dokan-dashboard-content .dashboard-widget .list-count li {
	border-bottom: 1px solid #f5f5f5 !important;
}

.dokan-dashboard-content .dashboard-widget .list-count li:last-child {
	border-bottom: none !important;
}

.dokan-dashboard-content .dashboard-widget .list-count li a {
	display: flex !important;
	justify-content: space-between;
	align-items: center;
	padding: 0.7rem 1.5rem !important;
	color: #555 !important;
	text-decoration: none !important;
	font-size: 0.85rem !important;
	transition: background 0.2s ease;
}

.dokan-dashboard-content .dashboard-widget .list-count li a:hover {
	background: rgba(253, 184, 39, 0.04) !important;
}

.dokan-dashboard-content .dashboard-widget .list-count .count {
	font-weight: 700 !important;
	color: #333 !important;
}

/* Orders widget — half-part layout */
.dashboard-widget.orders .content-half-part {
	float: none !important;
	width: 100% !important;
}

.dashboard-widget.orders .content-half-part:last-child {
	display: flex;
	justify-content: center;
	padding: 1rem 1.5rem 1.5rem;
}

.dashboard-widget.orders canvas {
	max-width: 160px !important;
	max-height: 160px !important;
}

/* ── Sales chart widget ────────────────── */
.dashboard-widget.sells-graph .chart-container {
	padding: 1rem 1rem 0;
}

.dashboard-widget.sells-graph .chart-placeholder {
	border-radius: 8px;
}

/* ── Announcement widget ───────────────── */
.dokan-announcement-widget ul {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.dokan-announcement-widget li {
	display: flex;
	align-items: flex-start;
	gap: 1rem;
	padding: 1.25rem 1.5rem;
	border-bottom: 1px solid #f5f5f5;
}

.dokan-announcement-widget li:last-child {
	border-bottom: none;
}

.dokan-announcement-widget .dokan-dashboard-announce-content {
	flex: 1;
	float: none !important;
}

.dokan-announcement-widget .dokan-dashboard-announce-content h3 {
	font-size: 0.88rem;
	font-weight: 500;
	color: #444;
	line-height: 1.5;
	margin: 0;
}

.dokan-announcement-widget .dokan-dashboard-announce-content a {
	text-decoration: none;
	color: inherit;
}

.dokan-announcement-widget .dokan-dashboard-announce-content a:hover h3 {
	color: #FDB827;
}

.dokan-announcement-widget .dokan-dashboard-announce-date {
	float: none !important;
	flex-shrink: 0;
	background: #FDB827;
	color: #1a1a1a;
	border-radius: 10px;
	padding: 0.6rem 0.75rem;
	text-align: center;
	min-width: 60px;
	line-height: 1.2;
}

.dokan-announcement-widget .announce-day {
	font-size: 1.3rem;
	font-weight: 800;
}

.dokan-announcement-widget .announce-month {
	font-size: 0.65rem;
	font-weight: 700;
	text-transform: uppercase;
}

.dokan-announcement-widget .announce-year {
	font-size: 0.65rem;
	font-weight: 600;
	opacity: 0.7;
}

/* ── Dokan content page headers ────────── */
.dokan-dashboard-content .dokan-dashboard-header {
	margin-bottom: 1.5rem;
}

.dokan-dashboard-content h1.entry-title {
	background: #333333;
	color: #ffffff !important;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.88rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 0.9rem 1.5rem !important;
	border-bottom: 3px solid #FDB827;
	border-radius: 14px 14px 0 0;
	margin: 0 0 0 0 !important;
}

.dokan-dashboard-content .dokan-dashboard-header + .entry-content,
.dokan-dashboard-content .dokan-dashboard-header ~ .entry-content {
	background: #ffffff;
	border-radius: 0 0 14px 14px;
	box-shadow: 0 2px 16px rgba(0,0,0,0.06);
	padding: 1.5rem;
	margin-bottom: 1.5rem;
}

/* Settings page header with action button */
.dokan-dashboard-content .dokan-settings-content .dokan-dashboard-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.dokan-dashboard-content .dokan-settings-content .dokan-dashboard-header .dokan-btn {
	margin-left: auto;
}

/* ── Dokan panels (Withdraw, etc.) ────── */
.dokan-dashboard-content .dokan-panel {
	background: #ffffff;
	border: none !important;
	border-radius: 14px !important;
	box-shadow: 0 2px 16px rgba(0,0,0,0.06);
	overflow: hidden;
	margin-bottom: 1.25rem;
}

.dokan-dashboard-content .dokan-panel-heading {
	background: #333333 !important;
	color: #ffffff !important;
	font-family: var(--wp--preset--font-family--ubuntu);
	font-size: 0.82rem !important;
	font-weight: 700 !important;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	padding: 0.9rem 1.5rem !important;
	border-bottom: 3px solid #FDB827 !important;
	margin: 0 !important;
}

.dokan-dashboard-content .dokan-panel-heading strong {
	color: #ffffff !important;
	font-weight: 700;
}

.dokan-dashboard-content .dokan-panel-body {
	padding: 1.25rem 1.5rem !important;
}

/* ── Dokan tab navigation ─────────────── */
.dokan-dashboard-content ul.dokan_tabs {
	list-style: none !important;
	display: flex !important;
	gap: 0;
	margin: 0 0 1.5rem !important;
	padding: 0 !important;
	border-bottom: 2px solid #e8e8e8;
}

.dokan-dashboard-content ul.dokan_tabs li {
	margin: 0 !important;
}

.dokan-dashboard-content ul.dokan_tabs li a {
	display: block;
	padding: 0.65rem 1.25rem;
	color: #666 !important;
	text-decoration: none !important;
	font-size: 0.82rem;
	font-weight: 500;
	border-bottom: 2px solid transparent;
	margin-bottom: -2px;
	transition: all 0.2s ease;
}

.dokan-dashboard-content ul.dokan_tabs li a:hover {
	color: #FDB827 !important;
}

.dokan-dashboard-content ul.dokan_tabs li.active a {
	color: #FDB827 !important;
	font-weight: 600;
	border-bottom-color: #FDB827;
}

/* ── Order status filter tabs ─────────── */
.dokan-dashboard-content ul.subsubsub,
.dokan-dashboard-content ul.order-statuses-filter {
	list-style: none !important;
	display: flex !important;
	flex-wrap: wrap;
	gap: 0.25rem;
	margin: 0 0 1.25rem !important;
	padding: 0 !important;
}

.dokan-dashboard-content ul.subsubsub li,
.dokan-dashboard-content ul.order-statuses-filter li {
	margin: 0 !important;
}

.dokan-dashboard-content ul.subsubsub li a,
.dokan-dashboard-content ul.order-statuses-filter li a {
	color: #666 !important;
	text-decoration: none !important;
	font-size: 0.8rem;
	padding: 0.35rem 0.75rem;
	border-radius: 20px;
	transition: all 0.2s ease;
}

.dokan-dashboard-content ul.subsubsub li a:hover,
.dokan-dashboard-content ul.order-statuses-filter li a:hover {
	color: #FDB827 !important;
	background: rgba(253, 184, 39, 0.08);
}

.dokan-dashboard-content ul.subsubsub li.active a,
.dokan-dashboard-content ul.subsubsub li a.current,
.dokan-dashboard-content ul.order-statuses-filter li.active a {
	color: #1a1a1a !important;
	font-weight: 600;
	background: rgba(253, 184, 39, 0.12);
}

.dokan-dashboard-content ul.subsubsub li .separator {
	display: none;
}

/* ── Form inputs ──────────────────────── */
.dokan-dashboard-content .dokan-form-control,
.dokan-dashboard-content input[type="text"],
.dokan-dashboard-content input[type="email"],
.dokan-dashboard-content input[type="url"],
.dokan-dashboard-content input[type="password"],
.dokan-dashboard-content input[type="number"],
.dokan-dashboard-content input[type="search"],
.dokan-dashboard-content input[type="tel"],
.dokan-dashboard-content textarea,
.dokan-dashboard-content select {
	border: 1px solid #ddd !important;
	border-radius: 8px !important;
	padding: 0.55rem 0.85rem !important;
	font-size: 0.85rem !important;
	color: #333 !important;
	background: #fafafa !important;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	outline: none !important;
}

.dokan-dashboard-content .dokan-form-control:focus,
.dokan-dashboard-content input[type="text"]:focus,
.dokan-dashboard-content input[type="email"]:focus,
.dokan-dashboard-content input[type="url"]:focus,
.dokan-dashboard-content input[type="password"]:focus,
.dokan-dashboard-content input[type="number"]:focus,
.dokan-dashboard-content input[type="search"]:focus,
.dokan-dashboard-content input[type="tel"]:focus,
.dokan-dashboard-content textarea:focus,
.dokan-dashboard-content select:focus {
	border-color: #FDB827 !important;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.15) !important;
	background: #ffffff !important;
}

.dokan-dashboard-content textarea {
	min-height: 120px;
}

/* ── Buttons ──────────────────────────── */
.dokan-dashboard-content .dokan-btn {
	border-radius: 30px !important;
	padding: 0.5rem 1.25rem !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	text-decoration: none !important;
	transition: all 0.2s ease;
	cursor: pointer;
	border: 2px solid transparent !important;
	line-height: 1.4 !important;
	display: inline-flex !important;
	align-items: center;
	gap: 0.4rem;
}

/* Default button — outline */
.dokan-dashboard-content .dokan-btn:not(.dokan-btn-theme):not(.dokan-btn-danger):not(.dokan-btn-success) {
	background: transparent !important;
	color: #555 !important;
	border-color: #ccc !important;
}

.dokan-dashboard-content .dokan-btn:not(.dokan-btn-theme):not(.dokan-btn-danger):not(.dokan-btn-success):hover {
	border-color: #FDB827 !important;
	color: #FDB827 !important;
	background: rgba(253, 184, 39, 0.05) !important;
}

/* Theme / Primary button — gold */
.dokan-dashboard-content .dokan-btn-theme,
.dokan-dashboard-content .dokan-btn-danger {
	background: #FDB827 !important;
	color: #1a1a1a !important;
	border-color: #FDB827 !important;
}

.dokan-dashboard-content .dokan-btn-theme:hover,
.dokan-dashboard-content .dokan-btn-danger:hover {
	background: #e5a520 !important;
	border-color: #e5a520 !important;
}

/* Success button */
.dokan-dashboard-content .dokan-btn-success {
	background: #28a745 !important;
	color: #ffffff !important;
	border-color: #28a745 !important;
}

.dokan-dashboard-content .dokan-btn-success:hover {
	background: #218838 !important;
}

/* Small buttons */
.dokan-dashboard-content .dokan-btn-sm {
	padding: 0.35rem 0.9rem !important;
	font-size: 0.75rem !important;
}

/* Update Settings button (page-level action) */
.dokan-dashboard-content .dokan-btn.dokan-right,
.dokan-dashboard-content input[type="submit"] {
	background: #FDB827 !important;
	color: #1a1a1a !important;
	border: 2px solid #FDB827 !important;
	border-radius: 30px !important;
	padding: 0.5rem 1.5rem !important;
	font-size: 0.8rem !important;
	font-weight: 600 !important;
	text-transform: uppercase;
	letter-spacing: 0.03em;
	cursor: pointer;
	transition: all 0.2s ease;
}

.dokan-dashboard-content .dokan-btn.dokan-right:hover,
.dokan-dashboard-content input[type="submit"]:hover {
	background: #e5a520 !important;
	border-color: #e5a520 !important;
}

/* ── Tables ───────────────────────────── */
.dokan-dashboard-content table {
	width: 100%;
	border-collapse: collapse;
	border: none !important;
	font-size: 0.85rem;
}

.dokan-dashboard-content table thead th,
.dokan-dashboard-content table th {
	background: #333333 !important;
	color: #ffffff !important;
	font-size: 0.78rem;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	padding: 0.75rem 1rem !important;
	border: none !important;
	text-align: left;
}

.dokan-dashboard-content table thead th:first-child {
	border-radius: 10px 0 0 0;
}

.dokan-dashboard-content table thead th:last-child {
	border-radius: 0 10px 0 0;
}

.dokan-dashboard-content table tbody td {
	padding: 0.7rem 1rem !important;
	border-bottom: 1px solid #f0f0f0 !important;
	border-left: none !important;
	border-right: none !important;
	color: #555;
	vertical-align: middle;
}

.dokan-dashboard-content table tbody tr:nth-child(even) {
	background: #fafafa;
}

.dokan-dashboard-content table tbody tr:hover {
	background: rgba(253, 184, 39, 0.04);
}

.dokan-dashboard-content table tbody tr:last-child td {
	border-bottom: none !important;
}

/* Table checkboxes */
.dokan-dashboard-content table input[type="checkbox"] {
	accent-color: #FDB827;
}

/* ── Filter / Search bars ─────────────── */
.dokan-dashboard-content .dokan-order-filter-serach {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	align-items: center;
	margin-bottom: 1.25rem;
	padding: 1rem;
	background: #fafafa;
	border-radius: 10px;
}

/* ── Settings form layout ─────────────── */
.dokan-dashboard-content .dokan-settings-content .dokan-form-group {
	margin-bottom: 1.25rem;
}

.dokan-dashboard-content .dokan-settings-content .dokan-w3 {
	font-weight: 600;
	font-size: 0.82rem;
	color: #444;
}

/* Settings store banner upload area */
.dokan-dashboard-content .dokan-banner-drag {
	border: 2px dashed #ddd !important;
	border-radius: 14px !important;
	background: #fafafa !important;
	transition: border-color 0.2s ease;
}

.dokan-dashboard-content .dokan-banner-drag:hover {
	border-color: #FDB827 !important;
}

/* Profile picture upload */
.dokan-dashboard-content .dokan-gravatar-drag {
	border: 2px dashed #ddd !important;
	border-radius: 50% !important;
	overflow: hidden;
}

/* Upload buttons */
.dokan-dashboard-content .dokan-banner-drag .dokan-btn,
.dokan-dashboard-content .dokan-gravatar-drag .dokan-btn {
	background: #FDB827 !important;
	color: #1a1a1a !important;
	border-color: #FDB827 !important;
}

/* ── Reports page ─────────────────────── */
.dokan-dashboard-content .dokan-reports-wrap {
	display: flex;
	gap: 1.5rem;
}

.dokan-dashboard-content .dokan-reports-sidebar {
	flex: 0 0 280px;
	float: none !important;
}

.dokan-dashboard-content .dokan-reports-main {
	flex: 1;
	float: none !important;
}

.dokan-dashboard-content ul.chart-legend {
	list-style: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.dokan-dashboard-content ul.chart-legend li {
	padding: 0.65rem 0;
	border-bottom: 1px solid #f0f0f0;
	font-size: 0.85rem;
	color: #666;
}

.dokan-dashboard-content ul.chart-legend li:last-child {
	border-bottom: none;
}

.dokan-dashboard-content ul.chart-legend li strong {
	font-size: 1.1rem;
	color: #333;
	display: block;
	margin-bottom: 0.15rem;
}

/* ── Empty states ─────────────────────── */
.dokan-dashboard-content .dokan-no-product-found-image,
.dokan-dashboard-content .dokan-error {
	text-align: center;
	padding: 2rem 1rem;
}

.dokan-dashboard-content .dokan-no-product-found-image img {
	max-width: 120px;
	opacity: 0.6;
}

/* "No orders found" etc */
.dokan-dashboard-content .dokan-error {
	background: rgba(220, 53, 69, 0.06);
	border-left: 4px solid #dc3545;
	border-radius: 10px;
	padding: 0.85rem 1.25rem;
	font-size: 0.85rem;
	color: #721c24;
	text-align: left;
}

/* ── Select2 dropdowns (Dokan uses these) ── */
.dokan-dashboard-content .select2-container .select2-selection--single {
	border: 1px solid #ddd !important;
	border-radius: 8px !important;
	height: auto !important;
	padding: 0.35rem 0.5rem !important;
	background: #fafafa !important;
}

.dokan-dashboard-content .select2-container--default .select2-selection--single:focus,
.dokan-dashboard-content .select2-container--default.select2-container--open .select2-selection--single {
	border-color: #FDB827 !important;
	box-shadow: 0 0 0 3px rgba(253, 184, 39, 0.15) !important;
}

/* ── Dokan action links in content ────── */
.dokan-dashboard-content a.dokan-btn {
	text-decoration: none !important;
}

/* "Add new Coupon" type action links */
.dokan-dashboard-content .dokan-add-new-product-btn,
.dokan-dashboard-content a[class*="dokan-add-new"] {
	background: #FDB827 !important;
	color: #1a1a1a !important;
	border-radius: 30px !important;
	padding: 0.5rem 1.25rem !important;
	font-weight: 600 !important;
	text-decoration: none !important;
	font-size: 0.8rem !important;
}

/* ── DOKAN RESPONSIVE ──────────────────── */
@media (max-width: 768px) {
	.dokan-dashboard-wrap {
		flex-direction: column !important;
	}

	.dokan-dashboard-wrap .dokan-dash-sidebar {
		flex: none !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.dokan-dashboard-wrap #dokan-navigation {
		position: static;
	}

	#mobile-menu-icon {
		display: block;
		padding: 0.85rem 1.25rem;
		color: #fff;
		font-size: 1.2rem;
		cursor: pointer;
	}

	.dokan-dashboard-menu {
		display: none;
	}

	#toggle-mobile-menu:checked ~ .dokan-dashboard-menu {
		display: block;
	}

	.dokan-dashboard-wrap .dokan-dashboard-content {
		padding: 1.5rem 1rem 2rem !important;
	}

	.dokan-dashboard-content .dokan-dash-left,
	.dokan-dashboard-content .dokan-dash-right {
		width: 100% !important;
		max-width: 100% !important;
		flex: 0 0 100% !important;
	}

	.dokan-dashboard-content .dashboard-widget .widget-title {
		font-size: 0.78rem !important;
		padding: 0.8rem 1.25rem !important;
	}

	.dokan-dashboard-content .dashboard-widget .list-count li a {
		padding: 0.65rem 1.25rem !important;
		font-size: 0.82rem !important;
	}

	.dokan-dashboard-content .dashboard-widget.big-counter .count {
		font-size: 1.2rem !important;
	}
}

/* ── MY ACCOUNT RESPONSIVE ─────────────── */
@media (max-width: 768px) {
	/* Stack login/register forms */
	.woocommerce-account #customer_login {
		grid-template-columns: 1fr;
	}

	.woocommerce-account #customer_login .u-column1 form,
	.woocommerce-account #customer_login .u-column2 form {
		padding: 1.5rem 1.25rem 1.25rem;
	}

	/* Welcome bar */
	.acct-welcome {
		padding: 0.85rem 1.25rem;
		border-radius: 10px 10px 0 0;
	}

	/* Horizontal scroll for nav tabs on mobile */
	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		overflow-x: auto;
		flex-wrap: nowrap;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar {
		display: none;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul li {
		flex: 0 0 auto;
	}

	.woocommerce-account .woocommerce-MyAccount-navigation ul li a {
		padding: 0.85rem 0.9rem;
		font-size: 0.7rem;
	}

	.woocommerce-account .woocommerce-MyAccount-content {
		padding: 1.75rem 1.25rem;
		border-radius: 0 0 10px 10px;
	}

	/* Stack addresses */
	.woocommerce-account .woocommerce-Addresses {
		grid-template-columns: 1fr;
	}

	/* Orders table: card layout on mobile */
	.woocommerce-account .woocommerce-MyAccount-content {
		overflow: visible;
	}

	.woocommerce-account .woocommerce-orders-table,
	.woocommerce-account .woocommerce-orders-table tbody,
	.woocommerce-account .woocommerce-orders-table tr,
	.woocommerce-account .woocommerce-orders-table td {
		display: block;
		width: 100% !important;
	}

	.woocommerce-account .woocommerce-orders-table {
		overflow: visible;
		border: none;
	}

	.woocommerce-account .woocommerce-orders-table thead {
		display: none;
	}

	.woocommerce-account .woocommerce-orders-table tbody tr {
		border: 1px solid #eee;
		border-radius: 8px;
		padding: 0.75rem 1rem;
		margin-bottom: 0.75rem;
		background: #fff;
	}

	.woocommerce-account .woocommerce-orders-table tbody tr:last-child {
		margin-bottom: 0;
	}

	.woocommerce-account .woocommerce-orders-table tbody td {
		padding: 0.35rem 0;
		border-bottom: none;
	}

	.oc-section {
		margin-bottom: 2rem;
	}

	.oc-section-heading {
		font-size: 1.25rem;
	}

	.wc-block-order-confirmation-totals thead th,
	.wc-block-order-confirmation-totals tbody td,
	.wc-block-order-confirmation-totals tfoot th,
	.wc-block-order-confirmation-totals tfoot td {
		padding: 0.65rem 0.75rem;
		font-size: 0.82rem;
	}

	/* Stack address columns */
	.oc-address-columns {
		flex-direction: column !important;
	}

	.oc-address-columns > .wp-block-column {
		flex-basis: 100% !important;
	}

	.oc-address-card {
		margin-bottom: 1rem;
	}

	/* Stack CTA buttons */
	.oc-cta-section .wp-block-buttons {
		flex-direction: column !important;
		width: 100%;
	}

	.oc-btn-primary,
	.oc-btn-secondary {
		width: 100%;
	}

	.oc-btn-primary .wp-block-button__link,
	.oc-btn-secondary .wp-block-button__link {
		width: 100%;
		display: block;
		text-align: center;
	}
}

/* Hide comma separators between category pills */
.single-categories .wp-block-post-terms__separator {
	display: none;
}

/* ============================================
   LOGO MARQUEE - Infinite Scroll
   ============================================ */
.logo-marquee-wrapper {
	overflow: hidden;
	position: relative;
	-webkit-mask-image: linear-gradient(to right, transparent 0%, black 10%, black 90%, transparent 100%);
	mask-image: linear-gradient(to right, transparent 0%, black 10%, black 90%, transparent 100%);
}

.logo-marquee-track {
	display: flex;
	align-items: center;
	gap: 4rem;
	width: max-content;
	animation: marquee-scroll 40s linear infinite;
}

.logo-marquee-track:hover {
	animation-play-state: paused;
}

.logo-marquee-item {
	flex-shrink: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 70px;
}

.logo-marquee-item img {
	max-height: 60px;
	max-width: 180px;
	width: auto;
	height: auto;
	object-fit: contain;
	filter: grayscale(100%);
	opacity: 0.7;
	transition: all 0.3s ease;
}

.logo-marquee-item:hover img {
	filter: grayscale(0);
	opacity: 1;
}

@keyframes marquee-scroll {
	0% {
		transform: translateX(0);
	}
	100% {
		transform: translateX(-50%);
	}
}

@media (max-width: 768px) {
	.logo-marquee-track {
		gap: 2.5rem;
		animation-duration: 30s;
	}

	.logo-marquee-item img {
		max-height: 40px;
		max-width: 120px;
	}
}

/* ============================================
   LFAM PAGE STYLES
   ============================================ */

/* Gradient section: black top 80%, #3a3a3a bottom 20% */
.lfam-gradient-section {
	background: linear-gradient(180deg, #000000 80%, #3a3a3a 80%) !important;
}

/* Equal-height columns: stretch columns, force exact 50%, center content within */
.lfam-equal-height.wp-block-columns {
	align-items: stretch !important;
	gap: 0 !important;
}
.lfam-equal-height > .wp-block-column {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-basis: 50% !important;
	flex-grow: 0 !important;
	flex-shrink: 0 !important;
	width: 50% !important;
	max-width: 50% !important;
	box-sizing: border-box !important;
}

/* Stats feature rows: vertical padding between each stat */
.lfam-stats-row {
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}

/* Section 10: sticky left column */
.lfam-sticky-col {
	position: sticky;
	top: 150px;
	align-self: flex-start;
}

/* Fill-container images: fill column height entirely */
.lfam-fill-image {
	height: 100%;
	margin: 0 !important;
	flex-grow: 1;
}
.lfam-fill-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

/* Industry card rows: match BB infobox spacing */
.lfam-industry-card {
	margin-top: 10px !important;
	margin-bottom: 0 !important;
}
.lfam-industry-card h3 {
	margin: 0;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.4;
}
.lfam-industry-card p {
	margin: 0;
	line-height: 1;
}

/* YouTube video background section */
.lfam-video-section {
	position: relative;
	overflow: hidden;
}
.lfam-video-section .lfam-video-bg {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	overflow: hidden;
	z-index: 0;
}
.lfam-video-section .lfam-video-bg iframe {
	position: absolute;
	top: 50%; left: 50%;
	width: 100vw;
	height: 56.25vw; /* 16:9 aspect ratio */
	min-height: 100%;
	min-width: 177.78vh; /* 16:9 inverse */
	transform: translate(-50%, -50%);
	border: none;
	pointer-events: none;
}
.lfam-video-section .lfam-video-overlay {
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: rgba(0,0,0,0.58);
	z-index: 1;
}
.lfam-video-section .lfam-video-content {
	position: relative;
	z-index: 2;
	max-width: 1100px;
	margin: 0 auto;
}

/* Ninja Form inside dark container */
.lfam-form-container .nf-form-cont .nf-form-content label,
.lfam-form-container .nf-form-cont .nf-form-fields-required,
.lfam-form-container .nf-form-cont .nf-field-label,
.lfam-form-container .nf-form-cont .nf-label-span,
.lfam-form-container .nf-form-cont .html-wrap h3 {
	color: #ffffff;
	font-size: 18px;
}
.lfam-form-container .nf-form-cont input[type="text"],
.lfam-form-container .nf-form-cont input[type="email"],
.lfam-form-container .nf-form-cont textarea,
.lfam-form-container .nf-form-cont select {
	background: rgba(255,255,255,0.1);
	border: 1px solid rgba(255,255,255,0.3);
	color: #ffffff;
}
.lfam-form-container .nf-form-cont .submit-wrap .ninja-forms-field {
	background-color: #fdb827;
	color: #ffffff;
	font-weight: 700;
	text-transform: uppercase;
	border: none;
	border-radius: 30px;
	padding: 15px 30px;
	cursor: pointer;
}

/* Remove gaps between LFAM full-width sections */
.wp-block-post-content > .alignfull + .alignfull,
.wp-block-post-content > .alignfull + .wp-block-group.alignfull,
.wp-block-post-content > .wp-block-group.alignfull + .alignfull,
.wp-block-post-content > .wp-block-group.alignfull + .wp-block-group.alignfull,
.wp-block-post-content > .wp-block-cover.alignfull + .wp-block-group.alignfull,
.wp-block-post-content > .wp-block-group.alignfull + .wp-block-cover.alignfull,
.wp-block-post-content > .wp-block-cover.alignfull + .wp-block-cover.alignfull {
	margin-top: 0 !important;
}

/* ---- LFAM Page Mobile ---- */
@media (max-width: 768px) {

	/* Stack columns on mobile */
	.lfam-gradient-section .wp-block-columns,
	.lfam-equal-height.wp-block-columns,
	.wp-block-group[style*="background-color:#000000"] > .wp-block-columns {
		flex-wrap: wrap;
	}

	.lfam-equal-height > .wp-block-column {
		flex-basis: 100% !important;
		width: 100% !important;
		max-width: 100% !important;
	}
	/* Image column always stacks on top */
	.lfam-equal-height > .wp-block-column:has(.lfam-fill-image) {
		order: -1;
	}

	/* Hero cover min-height reduce on mobile */
	.wp-block-cover[style*="min-height:800px"] {
		min-height: 500px !important;
	}

	/* Fill images: widescreen aspect ratio on mobile */
	.lfam-fill-image {
		height: auto;
	}
	.lfam-fill-image img {
		aspect-ratio: 16 / 9;
		height: auto;
	}

	/* Video section padding reduce */
	.lfam-video-section {
		padding: 60px 20px 80px !important;
	}

	/* Bondtech section: add side padding and reorder columns */
	.lfam-bondtech-section {
		padding-left: 20px !important;
		padding-right: 20px !important;
		padding-bottom: 50px !important;
	}
	.lfam-bondtech-section > .wp-block-columns {
		flex-wrap: wrap;
	}
	.lfam-bondtech-section > .wp-block-columns > .wp-block-column {
		flex-basis: 100% !important;
	}
	.lfam-bondtech-section > .wp-block-columns > .wp-block-column:last-child {
		order: -1;
	}

	/* Who Can Use: remove gap between stacked columns */
	.lfam-who-can-use {
		row-gap: 0 !important;
	}
	.lfam-who-can-use > .wp-block-column {
		flex-basis: 100% !important;
	}

	/* Remove sticky on mobile for contact section */
	.lfam-sticky-col {
		position: static !important;
	}
}
