/* === tokens.css === */
/**
 * HQ Saga design tokens — single source of truth.
 * Do not hardcode these values elsewhere; reference var(--hq-*).
 */
:root {
	/* Color */
	--hq-warm-white: #fbf8f3;
	--hq-beige: #f2eadd;
	--hq-sand: #e7d8c3;
	--hq-terracotta: #b66d51;
	--hq-sage: #7c8a6b;
	--hq-ink: #332a22;
	--hq-body: #6b5f50;
	--hq-hairline: #e4d9c8;

	/* Semantic aliases (footer + dark surfaces) — reference existing palette,
	   no new hex values. */
	--hq-espresso: var(--hq-ink);
	--hq-cream: var(--hq-warm-white);
	--hq-cream-strong: color-mix(in srgb, var(--hq-warm-white) 88%, transparent);
	--hq-cream-muted: color-mix(in srgb, var(--hq-warm-white) 72%, transparent);
	--hq-cream-faint: color-mix(in srgb, var(--hq-warm-white) 12%, transparent);
	--hq-terracotta-dark: color-mix(in srgb, var(--hq-terracotta) 92%, #000);
	/* Very light pastel orange — brand colour ~15 shades lighter (for soft banners). */
	--hq-terracotta-tint: color-mix(in srgb, var(--hq-terracotta) 14%, #fff);
	--hq-terracotta-tint-border: color-mix(in srgb, var(--hq-terracotta) 28%, #fff);
	--hq-sage-dark: color-mix(in srgb, var(--hq-sage) 88%, #000);
	/* Soft pastel green — sage family (buttons, success surfaces). */
	--hq-sage-tint: color-mix(in srgb, var(--hq-sage) 38%, #fff);
	--hq-sage-tint-border: color-mix(in srgb, var(--hq-sage) 52%, #fff);
	--hq-btn-primary-bg: var(--hq-terracotta);
	--hq-btn-primary-bg-hover: var(--hq-terracotta-dark);
	--hq-btn-primary-shadow: rgba(182, 109, 81, 0.22);

	/* Typography scale — single consistent ramp */
	--fs-eyebrow: 0.75rem;
	--fs-meta: 0.8125rem;
	--fs-price: 0.875rem;
	--fs-card: 0.9375rem;
	--fs-body: 1rem;
	--fs-lead: 1.0625rem;
	--fs-h4: 1.125rem;
	--fs-h3: clamp(1.4rem, 2.5vw, 1.75rem);
	--fs-h2: clamp(2rem, 3.5vw, 2.75rem);
	--fs-h1: clamp(2.5rem, 4.5vw, 3.5rem);
	--fs-hero: clamp(2.75rem, 5vw, 4.25rem);

	/* Line-heights */
	--lh-tight: 1.15;
	--lh-snug: 1.35;
	--lh-body: 1.65;

	/* Font weights — keep usage consistent */
	--fw-regular: 400;
	--fw-medium: 500;
	--fw-semibold: 600;
	--fw-bold: 700;

	/* Unified site fonts — Nunito Sans for headings, Baloo 2 for UI/body, Caveat for accents */
	--hq-font-display: "Nunito Sans", "Quicksand", sans-serif;
	--hq-font-display-alt: "Nunito Sans", "Quicksand", sans-serif;
	--hq-font-ui: "Baloo 2", "Quicksand", sans-serif;
	--hq-font-accent: "Caveat", cursive;

	/* Photographic image pop — subtle brightness + saturation lift */
	--hq-img-pop: brightness(1.013) saturate(1.08);

	/* Spacing (4px base) */
	--space-1: 4px;
	--space-2: 8px;
	--space-3: 12px;
	--space-4: 16px;
	--space-5: 24px;
	--space-6: 32px;
	--space-7: 48px;
	--space-8: 64px;
	--space-9: 96px;

	/* Radius / elevation / motion */
	--radius-card: 14px;
	--radius-btn: 999px;
	--radius-chip: 6px;
	--shadow-card: 0 1px 2px rgba(51, 42, 34, 0.04), 0 8px 24px rgba(51, 42, 34, 0.06);
	--ease: cubic-bezier(0.2, 0.6, 0.2, 1);
	--duration: 250ms;
}

@media (prefers-reduced-motion: reduce) {
	:root {
		--duration: 0ms;
	}
}

.hq-saga-theme,
.hq-saga-theme body {
	background: var(--hq-warm-white);
	color: var(--hq-body);
	font-family: var(--hq-font-ui);
	font-size: var(--fs-body);
	font-weight: var(--fw-regular);
	line-height: var(--lh-body);
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

/* Bzotech typography.css styles every checkbox via ::before — strip on WC block inputs */
.hq-saga-theme input.wc-block-components-checkbox__input[type="checkbox"]::before,
.hq-saga-theme input.wc-block-components-checkbox__input[type="checkbox"]::after,
.hq-saga-theme input.wc-block-components-checkbox__input[type="checkbox"]:checked::before,
.hq-saga-theme input.wc-block-components-checkbox__input[type="checkbox"]:checked::after {
	content: none !important;
	display: none !important;
	width: 0 !important;
	height: 0 !important;
	border: 0 !important;
	background: transparent !important;
	font-size: 0 !important;
}

.hq-saga-theme input.wc-block-components-checkbox__input[type="checkbox"],
.hq-saga-theme input.wc-block-components-checkbox__input[type="checkbox"]:checked {
	appearance: none !important;
	-webkit-appearance: none !important;
	width: 20px !important;
	height: 20px !important;
	min-width: 20px !important;
	max-width: 20px !important;
	line-height: normal !important;
	vertical-align: middle !important;
	position: relative !important;
	box-sizing: border-box !important;
	overflow: hidden !important;
}

/* Remap legacy Bzotech theme option colors to HQ tokens */
.hq-saga-theme {
	--bzo-main-color: var(--hq-terracotta);
	--bzo-main-color-mix: #965033;
	--bzo-main-color-mix2: var(--hq-sage);
	--bzo-title_typo-color: var(--hq-ink);
	--bzo-body_typo-color: var(--hq-body);
	--bzo-border-color: var(--hq-hairline);
	--bzo-body-background: var(--hq-warm-white);
}

/* Breadcrumb / page-title banner — match header orange */
.hq-saga-theme .content-append-before .bg-color2-lighten,
.hq-saga-theme .content-append-before [data-id="e21b60e"],
.hq-saga-theme .content-append-before .elementor-7748 > .e-con {
	background: color-mix(in srgb, var(--hq-terracotta) 30%, #fff) !important;
}

/* Pink content blocks site-wide — match the same soft pastel-orange */
.hq-saga-theme .bg-color-lighten,
.hq-saga-theme .bg-color2-lighten {
	background: color-mix(in srgb, var(--hq-terracotta) 30%, #fff) !important;
}

/* Override parent-theme (:root) and Elementor kit typography vars.
   body.hq-saga-theme (0,1,1) wins over :root / .elementor-kit-* (0,1,0). */
body.hq-saga-theme,
html body.hq-saga-theme {
	/* Parent theme (bzotech) typography → Nunito Sans / Baloo 2 */
	--bzo-body_typo-font-family: "Baloo 2", "Quicksand", sans-serif;
	--bzo-title_typo-font-family: "Nunito Sans", "Quicksand", sans-serif;
	--bzo-menu_typo-font-family: "Nunito Sans", "Quicksand", sans-serif;

	/* Elementor global kit typography → Nunito Sans / Baloo 2 */
	--e-global-typography-primary-font-family: "Nunito Sans", "Quicksand", sans-serif;
	--e-global-typography-secondary-font-family: "Nunito Sans", "Quicksand", sans-serif;
	--e-global-typography-text-font-family: "Baloo 2", "Quicksand", sans-serif;
	--e-global-typography-accent-font-family: "Caveat", cursive;
}

/* ──────────────────────────────────────────────
   Site-wide font normalization
   Nunito Sans (headings) + Baloo 2 (body/UI) + Caveat (accents).
   Icon fonts are explicitly preserved below.
   ────────────────────────────────────────────── */
.hq-saga-theme,
.hq-saga-theme body,
.hq-saga-theme p,
.hq-saga-theme a,
.hq-saga-theme li,
.hq-saga-theme span,
.hq-saga-theme div,
.hq-saga-theme label,
.hq-saga-theme input,
.hq-saga-theme select,
.hq-saga-theme textarea,
.hq-saga-theme button,
.hq-saga-theme blockquote,
.hq-saga-theme table,
.hq-saga-theme .elementor-widget-text-editor,
.hq-saga-theme .elementor-widget-heading,
.hq-saga-theme .elementor-button,
.hq-saga-theme .elementor-widget-container,
.hq-saga-theme .menu-item a,
.hq-saga-theme .hfe-menu-item,
.hq-saga-theme .woocommerce,
.hq-saga-theme .woocommerce-page {
	font-family: var(--hq-font-ui);
}

.hq-saga-theme h1,
.hq-saga-theme h2,
.hq-saga-theme h3,
.hq-saga-theme h4,
.hq-saga-theme h5,
.hq-saga-theme h6,
.hq-saga-theme .hq-display,
.hq-saga-theme .font-title,
.hq-saga-theme .elementor-heading-title,
.hq-saga-theme .product_title,
.hq-saga-theme .woocommerce-loop-product__title,
.hq-saga-theme .entry-title,
.hq-saga-theme .widget-title {
	font-family: var(--hq-font-display);
	font-weight: 400;
	color: var(--hq-ink);
	letter-spacing: 0.01em;
	line-height: var(--lh-snug);
}

/* Consistent heading sizes (no !important — Elementor per-widget settings still win) */
.hq-saga-theme h1 { font-size: var(--fs-h1); line-height: 1.2; }
.hq-saga-theme h2 { font-size: var(--fs-h2); line-height: 1.2; }
.hq-saga-theme h3 { font-size: var(--fs-h3); line-height: var(--lh-snug); }
.hq-saga-theme h4 { font-size: var(--fs-h4); line-height: var(--lh-snug); }

.hq-saga-theme p {
	line-height: var(--lh-body);
}

/* ──────────────────────────────────────────────
   Photographic image pop — subtle brightness + saturation.
   Scoped to content photos only (never logos/icons/UI).
   ────────────────────────────────────────────── */
.hq-saga-theme .hq-card__image,
.hq-saga-theme .hq-brand-story__image,
.hq-saga-theme .wc-block-cart-item__image img,
.hq-saga-cart .hq-cart-thumb,
.hq-saga-product .woocommerce-product-gallery__image img,
.hq-saga-theme .hq-instagram-tile img {
	filter: var(--hq-img-pop);
}

/* Preserve icon fonts — re-assert correct families (never Albert Sans) */
.hq-saga-theme .fa,
.hq-saga-theme .fas,
.hq-saga-theme .far,
.hq-saga-theme .fal,
.hq-saga-theme [class^="fa-"],
.hq-saga-theme [class*=" fa-"] { font-family: "Font Awesome 5 Free", FontAwesome !important; }

.hq-saga-theme .fab { font-family: "Font Awesome 5 Brands" !important; }

.hq-saga-theme .la,
.hq-saga-theme .las,
.hq-saga-theme .lar,
.hq-saga-theme .lab,
.hq-saga-theme [class^="la-"],
.hq-saga-theme [class*=" la-"] { font-family: "Line Awesome Free", "Line Awesome Brands" !important; }

.hq-saga-theme [class^="bzoicon"],
.hq-saga-theme [class*=" bzoicon"] { font-family: "bzoicon" !important; }

.hq-saga-theme [class^="eicon"],
.hq-saga-theme [class*=" eicon"] { font-family: "eicons" !important; }

.hq-saga-theme [class^="elementskit"],
.hq-saga-theme [class*=" elementskit"] { font-family: "elementskit" !important; }

.hq-saga-theme a:focus-visible,
.hq-saga-theme button:focus-visible {
	outline: 2px solid var(--hq-terracotta);
	outline-offset: 3px;
}

/* ── Kill parent-theme add-to-cart popup ── */
.hq-saga-theme .bzo-ajaxcart-report {
	display: none !important;
}

/* ── Hide price filter widget site-wide ── */
.hq-saga-theme .widget_price_filter,
.hq-saga-theme .woocommerce.widget_price_filter,
.hq-saga-theme .attr-price-filter {
	display: none !important;
}

/* ── Side toast notification ── */
.hq-toast {
	position: fixed;
	top: var(--space-5);
	right: var(--space-5);
	z-index: 10000;
	display: flex;
	align-items: center;
	gap: var(--space-3);
	max-width: 360px;
	padding: var(--space-4) var(--space-5);
	background: var(--hq-warm-white);
	border: 1px solid var(--hq-terracotta);
	color: var(--hq-ink);
	border-radius: var(--radius-card);
	box-shadow: 0 10px 30px rgba(182, 109, 81, 0.12);
	font-family: var(--hq-font-ui);
	font-size: var(--fs-meta);
	font-weight: var(--fw-medium);
	line-height: 1.4;
	transform: translateX(calc(100% + var(--space-5)));
	opacity: 0;
	transition: transform 400ms var(--ease), opacity 300ms var(--ease);
	pointer-events: none;
}

.hq-toast.is-visible {
	transform: translateX(0);
	opacity: 1;
	pointer-events: auto;
}

.hq-cart-pulse {
	animation: hq-cart-pulse 700ms var(--ease);
}

@keyframes hq-cart-pulse {
	0% { transform: scale(1); }
	35% { transform: scale(1.35); background: var(--hq-terracotta); color: #fff; }
	100% { transform: scale(1); }
}

.hq-toast__icon {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	background: var(--hq-sage);
	color: #fff;
	font-size: 0.85rem;
}

.hq-toast__body {
	flex: 1;
	min-width: 0;
}

.hq-toast__title {
	display: block;
	font-weight: var(--fw-semibold);
	color: var(--hq-terracotta);
	margin-bottom: 2px;
}

.hq-toast__link {
	display: inline-block;
	margin-top: var(--space-2);
	color: var(--hq-ink);
	font-weight: var(--fw-bold);
	text-decoration: underline;
	text-underline-offset: 2px;
}

.hq-toast__link:hover {
	color: var(--hq-terracotta);
}

.hq-toast__close {
	flex-shrink: 0;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	border: 0;
	background: transparent;
	color: var(--hq-body);
	font-size: 1.1rem;
	cursor: pointer;
	transition: color 200ms;
}

.hq-toast__close:hover {
	color: var(--hq-ink);
}

@media (max-width: 575px) {
	.hq-toast {
		right: var(--space-3);
		left: var(--space-3);
		max-width: none;
	}
}

/* Currency: $29.99 on every storefront surface */
.hq-saga-theme .woocommerce-Price-amount bdi,
.hq-saga-theme .woocommerce-Price-amount {
	display: inline-flex !important;
	flex-direction: row !important;
	align-items: baseline;
	unicode-bidi: isolate;
}

.hq-saga-theme .woocommerce-Price-currencySymbol {
	order: -1 !important;
	margin-inline-end: 0.04em;
	margin-inline-start: 0;
}


/* === hq-header.css === */
/**
 * HQ Saga header — ebury-inspired: white bar, logo + links left, CTA right.
 */

/* Kill mini-cart open/slide flash while the header boots + cart hydrates. */
html:not(.hq-cart-ready) .elbzotech-mini-cart-global,
html:not(.hq-cart-ready) .elbzotech-mini-cart-global .mini-cart-content,
html:not(.hq-cart-ready) .elbzotech-mini-cart-global .mini-cart-side-overlay {
	transition: none !important;
	animation: none !important;
}

html:not(.hq-cart-ready) .elbzotech-mini-cart-dropdown-global .mini-cart-content,
html:not(.hq-cart-ready) .elbzotech-mini-cart-global:not(.open-side) .mini-cart-content {
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	margin-top: 20px !important;
}

html:not(.hq-cart-ready) .elbzotech-mini-cart-side-global .mini-cart-content {
	transform: translateX(450px) !important;
}

html:not(.hq-cart-ready) .elbzotech-mini-cart-side-left-global .mini-cart-content {
	transform: translateX(-450px) !important;
}

html:not(.hq-cart-ready) .elbzotech-mini-cart-side-global .mini-cart-side-overlay {
	opacity: 0 !important;
	visibility: hidden !important;
}

/* Never leave the drawer open across navigations / fragment swaps. */
.hq-saga-theme .elbzotech-mini-cart-global:not(.open-side) .mini-cart-content {
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
}

.hq-announcement {
	background: var(--hq-ink);
	color: #fff;
	font-size: var(--fs-meta);
}

.hq-announcement__inner {
	padding: var(--space-2) var(--space-4);
}

.hq-announcement__message {
	margin: 0;
	text-align: center;
}

.hq-saga-theme :is(#header, #masthead).header-page,
.hq-saga-theme :is(#header, #masthead).header-default,
.hq-saga-theme #masthead {
	position: sticky;
	top: 0;
	z-index: 999;
	background: var(--hq-warm-white);
	border-bottom: 1px solid var(--hq-hairline);
	transition: box-shadow var(--duration) var(--ease);
}

.hq-saga-theme :is(#header, #masthead) .elementor-21141,
.hq-saga-theme #masthead .elementor-21141 {
	background: var(--hq-warm-white);
}

/* White navbar — natural orange logo + dark links/icons */
.hq-saga-theme :is(#header, #masthead) .hq-header-logo,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bbc5454 img {
	filter: none;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-menu-item,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .menu-item a.hfe-menu-item,
.hq-saga-theme :is(#header, #masthead) .hq-split-menu a.hfe-menu-item {
	color: var(--hq-ink) !important;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .menu-item a.hfe-menu-item:hover,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .menu-item a.hfe-menu-item:focus-visible,
.hq-saga-theme :is(#header, #masthead) .hq-split-menu a.hfe-menu-item:hover,
.hq-saga-theme :is(#header, #masthead) .hq-split-menu a.hfe-menu-item:focus-visible {
	color: var(--hq-terracotta) !important;
}

/* Active page — terracotta with underline indicator */
.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .menu-item.current-menu-item > a.hfe-menu-item,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .menu-item.current_page_item > a.hfe-menu-item,
.hq-saga-theme :is(#header, #masthead) .hq-split-menu .menu-item.current-menu-item > a.hfe-menu-item,
.hq-saga-theme :is(#header, #masthead) .hq-split-menu .menu-item.current_page_item > a.hfe-menu-item {
	color: var(--hq-terracotta) !important;
	font-weight: var(--fw-semibold) !important;
	box-shadow: inset 0 -2px 0 var(--hq-terracotta);
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-link,
.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-icon i,
.hq-saga-theme :is(#header, #masthead) .search-icon-popup,
.hq-saga-theme :is(#header, #masthead) .search-icon-popup i,
.hq-saga-theme :is(#header, #masthead) .hq-header-search-toggle,
.hq-saga-theme :is(#header, #masthead) .hq-header-search-toggle i,
.hq-saga-theme :is(#header, #masthead) .elbzotech-list-link-global .item-link,
.hq-saga-theme :is(#header, #masthead) .elbzotech-list-link-global .item-link i,
.hq-saga-theme :is(#header, #masthead) .elbzotech-account-global .button-account-manager,
.hq-saga-theme :is(#header, #masthead) .elbzotech-account-global .button-account-manager i,
.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle {
	color: var(--hq-ink) !important;
}

/* Cart count badge — terracotta pill overlaid on the bag icon */
.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-icon {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-number {
	position: absolute !important;
	top: -6px !important;
	right: -10px !important;
	z-index: 2;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	background: var(--hq-terracotta) !important;
	color: #fff !important;
	min-width: 1.15rem;
	height: 1.15rem;
	padding: 0 0.25rem;
	line-height: 1;
	font-size: 0.7rem;
	font-weight: 700;
	border-radius: 999px;
	box-sizing: border-box;
}

/* Hamburger icon dark on mobile (SVG path fill) */
.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle,
.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu-icon,
.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle svg {
	background: transparent !important;
	color: var(--hq-ink) !important;
	fill: var(--hq-ink) !important;
}

.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle svg path {
	fill: var(--hq-ink) !important;
}

/* Hide Elementor orange scrolling marquee — announcement HTML widget */
.hq-saga-theme #masthead [data-id="ff945db"],
.hq-saga-theme :is(#header, #masthead) [data-id="ff945db"],
.hq-saga-theme .elementor-21141 [data-id="ff945db"],
.hq-saga-theme :is(#header, #masthead) [data-id="e3e7d53"],
.hq-saga-theme .elementor-21141 [data-id="e3e7d53"],
.hq-saga-theme :is(#header, #masthead) .hq-header-main-row ~ [data-id="601190f"],
.hq-saga-theme :is(#header, #masthead) .hq-header-main-row ~ [data-id="eec29e1"],
.hq-saga-theme #masthead .announcement-bar,
.hq-saga-theme :is(#header, #masthead) .announcement-bar,
.hq-saga-theme .elementor-21141 .announcement-bar {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead).hq-header-scrolled {
	box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
}

.hq-saga-theme :is(#header, #masthead) .menu-global-style- .bzotech-navbar-nav > li > a {
	font-family: var(--hq-font-ui);
	font-weight: 500;
	font-size: 0.92rem;
	padding: var(--space-3) var(--space-4);
	color: var(--hq-ink);
}

.hq-saga-theme :is(#header, #masthead) .logo-default img {
	max-height: none;
	width: auto;
}

/* One search control — hide duplicate sticky/mobile bar search */
.hq-saga-theme .elementor-element-d098781,
.hq-saga-theme [data-id="d098781"] {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead) .bzotech-container-width,
.hq-saga-theme :is(#header, #masthead) .bzotech-container {
	padding-top: 0;
	padding-bottom: 0;
}

/* Single HQ announcement — hide Elementor marquee inside header */
.hq-saga-theme :is(#header, #masthead) .announcement-bar,
.hq-saga-theme #masthead .announcement-bar {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead) .elementor-widget-image .elementor-widget-container,
.hq-saga-theme :is(#header, #masthead) .elbzotech-logo-global .logo-default,
.hq-saga-theme :is(#header, #masthead) .logo-default {
	background: transparent !important;
	box-shadow: none !important;
	border: 0 !important;
	padding: 0 !important;
}

.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist a .yith-wcwl-icon,
.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist a svg {
	margin: 0;
}

.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist a .yith-wcwl-add-button__label,
.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist a .yith-wcwl-add-button__text,
.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist .feedback,
.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist a:not([aria-label]) span:not(.yith-wcwl-icon),
.hq-saga-theme :is(#header, #masthead) .yith-add-to-wishlist-button-block .yith-wcwl-add-button__label,
.hq-saga-theme :is(#header, #masthead) .yith-add-to-wishlist-button-block .yith-wcwl-add-button__text,
.hq-saga-theme :is(#header, #masthead) .yith-add-to-wishlist-button-block .yith-wcwl-add-to-wishlist-button__label,
.hq-saga-theme :is(#header, #masthead) .yith-add-to-wishlist-button-block a span:not(.yith-wcwl-icon):not(.yith-wcwl-add-to-wishlist-button-icon):not(svg),
.hq-saga-theme :is(#header, #masthead) .yith-add-to-wishlist-button-block button span:not(.yith-wcwl-icon):not(.yith-wcwl-add-to-wishlist-button-icon):not(svg) {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
	clip: rect(1px, 1px, 1px, 1px) !important;
	white-space: nowrap !important;
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-link {
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	gap: var(--space-2) !important;
	overflow: visible !important;
	position: relative;
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-number {
	/* Keep absolute overlay — do not flatten to relative inside the 44px button. */
	position: absolute !important;
	top: -6px !important;
	right: -10px !important;
	margin: 0;
	min-width: 1.25rem;
	text-align: center;
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-link .set-cart-price {
	display: none;
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-footer .mini-cart-total-price,
.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-total .mini-cart-total-price {
	display: inline-block;
}

.hq-saga-theme .mini_cart_item .product-info {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.2rem;
	min-width: 0;
}

.hq-saga-theme .mini_cart_item .product-info .product-title {
	margin: 0;
	line-height: 1.35;
}

.hq-saga-theme .mini_cart_item .mini-cart-qty {
	margin-top: 0.1rem;
	line-height: 1.4;
}

.hq-saga-theme .hq-mini-cart__meta {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 0.15rem;
}

.hq-saga-theme .hq-mini-cart__size {
	display: block;
	margin: 0;
	font-family: var(--hq-font-ui);
	font-size: 0.8125rem;
	line-height: 1.35;
	color: var(--hq-body);
}

.hq-saga-theme .hq-mini-cart__size strong {
	font-weight: var(--fw-semibold);
	color: var(--hq-ink);
}

.hq-saga-theme .hq-mini-cart__qty {
	display: inline;
}

/* Hide duplicate Elementor marquee (HQ announcement bar is canonical) */
.hq-saga-theme :is(#header, #masthead) [data-id="ff945db"],
.hq-saga-theme #masthead [data-id="ff945db"],
.hq-saga-theme .elementor-21141 [data-id="ff945db"],
.hq-saga-theme :is(#header, #masthead) .announcement-bar,
.hq-saga-theme #masthead .announcement-bar {
	display: none !important;
}

/*
 * Pre-JS / no-JS: flatten Elementor's 2 stacked sections into one row so the
 * first paint already matches the compact navbar (avoids flash on every click).
 */
@media (min-width: 992px) {
	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) {
		--hq-header-inline-gap: clamp(0.75rem, 2vw, 1.75rem);
		display: flex;
		flex-wrap: nowrap;
		align-items: center;
		justify-content: flex-start;
		gap: var(--hq-header-inline-gap);
		width: 100%;
		max-width: 1280px;
		margin: 0 auto;
		padding: 0 clamp(1rem, 3vw, 2rem);
		min-height: 112px;
		box-sizing: border-box;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) > .elementor-section,
	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) > .elementor-section > .elementor-container {
		display: contents;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) > .elementor-section[data-id="ff945db"],
	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) > .elementor-section[data-id="e3e7d53"] {
		display: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) .elementor-element-675c136,
	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) .elementor-element-35d7e4c,
	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) .elementor-element-867f0e5 {
		width: auto !important;
		max-width: none !important;
		margin: 0 !important;
		padding: 0 !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) .elementor-element-675c136 {
		flex: 0 0 auto;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) .elementor-element-35d7e4c {
		flex: 1 1 auto;
		min-width: max-content;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-21141:not(:has(.hq-header-main-row)) .elementor-element-867f0e5 {
		flex: 0 0 auto;
		margin-left: auto !important;
	}
}

/* ── Standard row: logo | nav links | auth/icons ── */
.hq-saga-theme :is(#header, #masthead) .hq-header-main-row {
	--hq-header-inline-gap: clamp(0.75rem, 2vw, 1.75rem);
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: var(--hq-header-inline-gap);
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 clamp(1rem, 3vw, 2rem);
	min-height: 112px;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-nav-cluster,
.hq-saga-theme :is(#header, #masthead) .hq-header-right-zone,
.hq-saga-theme :is(#header, #masthead) .hq-split-nav {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-675c136,
.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-35d7e4c,
.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-867f0e5 {
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-675c136 {
	flex: 0 0 auto;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-35d7e4c {
	flex: 1 1 auto;
	/* Keep Home / Shop / Contact / About Us on one row — don't let the column
	   shrink under the menu and force the last item onto a second line. */
	min-width: max-content;
	max-width: none !important;
	overflow: visible !important;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-867f0e5 {
	flex: 0 0 auto;
	margin-left: auto !important;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-675c136 .elementor-widget-wrap,
.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-35d7e4c .elementor-widget-wrap,
.hq-saga-theme :is(#header, #masthead) .hq-header-main-row .elementor-element-867f0e5 .elementor-widget-wrap {
	width: auto !important;
	max-width: none !important;
	padding: 0 !important;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-bbc5454 {
	text-align: left !important;
}

/* Override Elementor inline logo width (14% / 50%) — crisp header mark */
.hq-saga-theme .elementor-21141 .elementor-element-bbc5454 img,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bbc5454 img,
.hq-saga-theme :is(#header, #masthead) .hq-header-logo {
	width: auto !important;
	max-width: min(260px, 22vw) !important;
	max-height: 84px !important;
	height: auto !important;
	object-fit: contain;
	image-rendering: auto;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee.hfe-nav-menu__align-right .hfe-nav-menu {
	justify-content: flex-start;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee nav.hfe-nav-menu__layout-horizontal,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu .hfe-nav-menu__layout-horizontal ul,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee ul.hfe-nav-menu {
	display: flex !important;
	flex-wrap: nowrap !important;
	align-items: center;
	justify-content: flex-start;
	width: max-content !important;
	max-width: none !important;
	gap: 0;
	white-space: nowrap !important;
	overflow: visible !important;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-menu-item,
.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .menu-item a.hfe-menu-item {
	display: inline-flex;
	align-items: center;
	flex: 0 0 auto;
	white-space: nowrap !important;
	font-family: var(--hq-font-ui);
	font-size: clamp(0.875rem, 0.95vw, 1.0625rem);
	font-weight: 500;
	line-height: 1.2;
	color: var(--hq-ink) !important;
	/* Beat Elementor inline 15px side padding that pushes About Us down */
	padding: 0.5rem clamp(0.4rem, 0.9vw, 0.85rem) !important;
	text-decoration: none;
	text-transform: none;
	letter-spacing: 0.01em;
	transition: color var(--duration) var(--ease);
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu .menu-item {
	margin: 0;
	flex: 0 0 auto;
	white-space: nowrap;
}

/* Hide redundant nav items — cart icon covers cart link */
.hq-saga-theme :is(#header, #masthead) .menu-item-21153,
.hq-saga-theme :is(#header, #masthead) .menu-item-22005,
.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu a.hfe-menu-item[href*="/cart"] {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-text {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-f2d1f09 {
	width: auto !important;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-f2d1f09 > .elementor-container,
.hq-saga-theme :is(#header, #masthead) .elementor-element-9d98d37 {
	display: flex !important;
	flex-wrap: nowrap;
	align-items: center;
	justify-content: flex-end;
	gap: 0.5rem;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-actions {
	display: inline-flex;
	align-items: center;
	gap: 1.25rem;
	flex: 0 0 auto;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-login {
	font-family: var(--hq-font-ui);
	font-size: var(--fs-card);
	font-weight: var(--fw-medium);
	color: var(--hq-ink);
	text-decoration: none;
	white-space: nowrap;
	transition: color var(--duration) var(--ease);
}

.hq-saga-theme :is(#header, #masthead) .hq-header-login:hover,
.hq-saga-theme :is(#header, #masthead) .hq-header-login:focus-visible {
	color: var(--hq-terracotta);
}

.hq-saga-theme :is(#header, #masthead) .hq-header-greeting {
	font-weight: var(--fw-medium);
}

.hq-saga-theme :is(#header, #masthead) .hq-header-greeting__text {
	white-space: nowrap;
}

/* CTA inherits the unified button system (see hq-buttons.css);
   only header-specific sizing tweaks live here. */
.hq-saga-theme :is(#header, #masthead) .hq-header-cta {
	min-height: 42px;
	padding: 0 var(--space-5);
	white-space: nowrap;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-e31b44f {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-e31b44f,
.hq-saga-theme :is(#header, #masthead) .elementor-element-dc764d4,
.hq-saga-theme :is(#header, #masthead) .elementor-element-1ad8cfc {
	width: auto !important;
	flex: 0 0 auto !important;
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-link,
.hq-saga-theme :is(#header, #masthead) .elbzotech-list-link-global .item-link,
.hq-saga-theme :is(#header, #masthead) .search-icon-popup,
.hq-saga-theme :is(#header, #masthead) .hq-header-search-toggle {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 46px;
	height: 46px;
	padding: 0;
	border: 0;
	background: transparent;
	color: #1a1a1a;
	cursor: pointer;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-search {
	position: relative;
	display: inline-flex;
	align-items: center;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-search-panel {
	position: absolute;
	top: calc(100% + 0.5rem);
	right: 0;
	z-index: 1001;
	width: min(320px, 88vw);
	padding: var(--space-3);
	border: 1px solid var(--hq-hairline);
	border-radius: var(--radius-chip);
	background: #fff;
	box-shadow: var(--shadow-card);
}

.hq-saga-theme :is(#header, #masthead) .hq-header-search-panel[hidden] {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-search-form {
	display: flex;
	gap: var(--space-2);
}

.hq-saga-theme :is(#header, #masthead) .hq-header-search-form input[type="search"] {
	flex: 1 1 auto;
	min-width: 0;
	min-height: 40px;
	padding: 0 var(--space-3);
	border: 1px solid var(--hq-hairline);
	border-radius: var(--radius-btn);
	font-family: var(--hq-font-ui);
	font-size: var(--fs-meta);
}

.hq-saga-theme :is(#header, #masthead) .hq-header-search-form button[type="submit"] {
	flex: 0 0 auto;
	min-height: 40px;
	padding: 0 var(--space-4);
	border: 0;
	border-radius: var(--radius-btn);
	background: var(--hq-ink) !important;
	color: #fff !important;
	font-family: var(--hq-font-ui);
	font-size: var(--fs-meta);
	font-weight: var(--fw-semibold);
	cursor: pointer;
}

.hq-saga-theme :is(#header, #masthead) .elbzotech-list-link-global .item-link i,
.hq-saga-theme :is(#header, #masthead) .search-icon-popup i,
.hq-saga-theme :is(#header, #masthead) .hq-header-search-toggle i {
	font-size: 1.4rem;
}

/* Cart icon — slightly larger than the rest */
.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-icon i,
.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-link i {
	font-size: 1.75rem !important;
}

/* One search control — hide Elementor duplicates; HQ search stays visible */
.hq-saga-theme :is(#header, #masthead) .search-icon-popup,
.hq-saga-theme :is(#header, #masthead) .elbzotech-search-wrap-global {
	display: none !important;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-search {
	display: inline-flex;
	align-items: center;
}

.hq-saga-theme :is(#header, #masthead) .yith-add-to-wishlist-button-block a,
.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist a {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
}

.hq-saga-theme :is(#header, #masthead) .yith-add-to-wishlist-button-block {
	width: auto !important;
	margin: 0 !important;
}

.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist-button {
	flex-direction: row !important;
	gap: 0 !important;
	font-size: 0 !important;
}

@media (min-width: 992px) {
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle {
		display: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee nav.hfe-nav-menu__layout-horizontal {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		position: static !important;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-35d7e4c {
		display: block !important;
		overflow: visible !important;
	}

	/* Keep Home / Shop / Contact / About Us on one row on tablet+ */
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee nav.hfe-nav-menu__layout-horizontal,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee ul.hfe-nav-menu {
		flex-wrap: nowrap !important;
		white-space: nowrap !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .menu-item a.hfe-menu-item {
		white-space: nowrap !important;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-867f0e5,
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > [data-id="867f0e5"] {
		margin-left: auto !important;
	}

	/* Hide duplicate account widget only */
	.hq-saga-theme :is(#header, #masthead) .elementor-element-d477a9a {
		display: none !important;
	}

	/* Mobile-drawer auth must never leak into the desktop horizontal nav
	   (HFE keeps the same UL; after hamburger open + resize it stays in the DOM). */
	.hq-saga-theme :is(#header, #masthead) .menu-item.hq-mobile-nav-auth-wrap,
	.hq-saga-theme :is(#header, #masthead) .hq-mobile-nav-auth-wrap {
		display: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-actions {
		display: inline-flex;
		align-items: center;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-login,
	.hq-saga-theme :is(#header, #masthead) .hq-header-cta {
		display: inline-flex;
		align-items: center;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-9d98d37 {
		align-items: center;
		gap: 0.65rem;
	}

	.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-link,
	.hq-saga-theme :is(#header, #masthead) .hq-header-search-toggle {
		align-self: center;
	}
}

@media (max-width: 991px) {
	.hq-announcement__message {
		font-size: 0.75rem;
	}

	.hq-saga-theme :is(#header, #masthead) .logo-default img,
	.hq-saga-theme :is(#header, #masthead) .elbzotech-logo-global img {
		max-height: 52px;
	}

	/* Mobile header: hamburger + logo + cart only — auth lives in the menu drawer */
	.hq-saga-theme :is(#header, #masthead) .hq-header-actions {
		display: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .menu-item-21152,
	.hq-saga-theme :is(#header, #masthead) .menu-item-22005 {
		display: list-item !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global {
		display: inline-flex;
		align-items: center;
	}

	.hq-saga-theme :is(#header, #masthead) .elbzotech-account-global,
	.hq-saga-theme :is(#header, #masthead) .elbzotech-search-wrap-global {
		display: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .bzotech-navbar-nav > li > a,
	.hq-saga-theme :is(#header, #masthead) .elementor-nav-menu a {
		min-height: 44px;
		display: inline-flex;
		align-items: center;
		padding-top: 0.65rem;
		padding-bottom: 0.65rem;
	}
}

/* Cream bar — matches homepage design (not terracotta tint) */
.hq-saga-theme :is(#header, #masthead).header-page,
.hq-saga-theme :is(#header, #masthead).header-default,
.hq-saga-theme #masthead,
.hq-saga-theme :is(#header, #masthead) .elementor-21141 {
	background: var(--hq-warm-white) !important;
	border-bottom-color: var(--hq-hairline) !important;
}

.hq-saga-theme :is(#header, #masthead) .hq-header-main-row {
	min-height: 86px;
}

.hq-saga-theme :is(#header, #masthead) .elementor-element-bbc5454 img,
.hq-saga-theme :is(#header, #masthead) .hq-header-logo {
	max-height: 72px !important;
	max-width: min(240px, 22vw) !important;
}

/* Tablet / small laptop — tighter nav so About Us stays inline */
@media (min-width: 992px) and (max-width: 1199px) {
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row {
		--hq-header-inline-gap: 0.65rem;
		padding: 0 1rem;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bbc5454 img,
	.hq-saga-theme :is(#header, #masthead) .hq-header-logo {
		max-height: 64px !important;
		max-width: min(220px, 24vw) !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .menu-item a.hfe-menu-item {
		font-size: 0.9375rem !important;
		padding: 0.45rem 0.55rem !important;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-login,
	.hq-saga-theme :is(#header, #masthead) .hq-header-cta {
		padding-left: 0.75rem !important;
		padding-right: 0.75rem !important;
		font-size: 0.875rem !important;
	}
}

/* ---------------------------------------------------------------------------
 * Icon masks — replace Line Awesome / Font Awesome (saves ~90KB CSS + font files)
 * --------------------------------------------------------------------------- */
.hq-saga-theme .mini-cart-icon i,
.hq-saga-theme .elbzotech-mini-cart-global .mini-cart-icon i,
.hq-saga-theme .search-icon-popup i,
.hq-saga-theme .hq-header-search-toggle i,
.hq-saga-theme .elbzotech-account-global .button-account-manager i,
.hq-saga-theme .elbzotech-close-popup,
.hq-saga-theme .elbzotech-close-mini-cart,
.hq-saga-theme .las,
.hq-saga-theme .la,
.hq-saga-theme .fas.fa-times {
	font-family: inherit !important;
	font-style: normal !important;
	font-weight: 400 !important;
	speak: never;
}

.hq-saga-theme .mini-cart-icon i::before,
.hq-saga-theme .elbzotech-mini-cart-global .mini-cart-icon i::before,
.hq-saga-theme i.las.la-shopping-cart::before,
.hq-saga-theme i.las.la-shopping-bag::before,
.hq-saga-theme i.la.la-shopping-cart::before {
	content: "" !important;
	display: inline-block;
	width: 1.15em;
	height: 1.15em;
	vertical-align: -0.15em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 7h15l-1.4 8.2a2 2 0 0 1-2 1.8H9.2a2 2 0 0 1-2-1.7L5.2 4.5H3'/%3E%3Ccircle cx='9.5' cy='20' r='1.2'/%3E%3Ccircle cx='17.5' cy='20' r='1.2'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 7h15l-1.4 8.2a2 2 0 0 1-2 1.8H9.2a2 2 0 0 1-2-1.7L5.2 4.5H3'/%3E%3Ccircle cx='9.5' cy='20' r='1.2'/%3E%3Ccircle cx='17.5' cy='20' r='1.2'/%3E%3C/svg%3E") center / contain no-repeat;
}

.hq-saga-theme i.las.la-user::before,
.hq-saga-theme i.la.la-user::before,
.hq-saga-theme .elbzotech-account-global .button-account-manager i::before {
	content: "" !important;
	display: inline-block;
	width: 1.1em;
	height: 1.1em;
	vertical-align: -0.12em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20c1.5-3.5 4-5 7-5s5.5 1.5 7 5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.5'/%3E%3Cpath d='M5 20c1.5-3.5 4-5 7-5s5.5 1.5 7 5'/%3E%3C/svg%3E") center / contain no-repeat;
}

.hq-saga-theme .search-icon-popup i::before,
.hq-saga-theme .hq-header-search-toggle i::before {
	content: "" !important;
	display: inline-block;
	width: 1.1em;
	height: 1.1em;
	vertical-align: -0.12em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='M16.5 16.5L21 21'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='6.5'/%3E%3Cpath d='M16.5 16.5L21 21'/%3E%3C/svg%3E") center / contain no-repeat;
}

.hq-saga-theme i.la.la-close::before,
.hq-saga-theme i.las.la-close::before,
.hq-saga-theme .elbzotech-close-popup::before,
.hq-saga-theme .fas.fa-times::before,
.hq-saga-theme .elbzotech-close-mini-cart::before {
	content: "" !important;
	display: inline-block;
	width: 1em;
	height: 1em;
	vertical-align: -0.1em;
	background-color: currentColor;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M6 6l12 12M18 6L6 18'/%3E%3C/svg%3E") center / contain no-repeat;
}


/* === hq-header-mobile.css === */
/**
 * Mobile header for cart/checkout — hamburger | logo | cart.
 * Full hq-mobile.css is not loaded on these pages.
 */
@media (max-width: 991px) {
	.hq-saga-theme #page {
		overflow-x: clip;
		padding-top: var(--hq-mobile-header-height, 64px);
	}

	.hq-saga-theme :is(#header, #masthead) {
		position: fixed !important;
		top: 0;
		left: 0;
		right: 0;
		width: 100%;
		z-index: 1002;
		background: var(--hq-warm-white) !important;
	}

	/* Pre-JS Elementor stack: logo overlays the nav/icons row without covering taps */
	.hq-saga-theme :is(#header, #masthead) .elementor-element-e3e7d53 .elementor-element-601190f,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-e3e7d53 .elementor-element-eec29e1 {
		width: 100%;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-e3e7d53 .elementor-element-eec29e1 {
		margin: 0 !important;
		position: relative;
		z-index: 3;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-e3e7d53 .elementor-element-601190f {
		margin-top: 0 !important;
		margin-bottom: -56px !important;
		position: relative;
		z-index: 2;
		pointer-events: none;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-e3e7d53 .elementor-element-601190f a,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-e3e7d53 .elementor-element-601190f img {
		pointer-events: auto;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-e3e7d53 .elementor-element-eec29e1 > .elementor-container {
		display: flex !important;
		align-items: center;
		justify-content: space-between !important;
		gap: 8px;
		min-height: 56px;
		padding: 8px 12px !important;
		flex-wrap: nowrap !important;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row {
		position: relative;
		display: grid !important;
		grid-template-columns: 44px minmax(0, 1fr) 44px;
		grid-template-rows: 56px;
		grid-auto-flow: column;
		align-items: center;
		column-gap: 10px;
		padding: 8px 12px;
		min-height: 56px;
		width: 100%;
		max-width: none;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-column {
		min-width: 0 !important;
	}

	/* Hamburger — first column, 44px, left aligned */
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-35d7e4c,
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > [data-id="35d7e4c"] {
		grid-column: 1;
		grid-row: 1 !important;
		width: 44px !important;
		max-width: 44px !important;
		min-width: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		z-index: 5;
		position: relative;
		overflow: visible !important;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-35d7e4c > .elementor-widget-wrap,
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-35d7e4c .elementor-element-bea76ee,
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-35d7e4c .elementor-widget-container {
		width: 44px !important;
		max-width: 44px !important;
		min-width: 44px !important;
		margin: 0 !important;
		display: flex !important;
		justify-content: flex-start !important;
		align-items: center;
	}

	/* Logo — middle column only, never over the hamburger */
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-675c136,
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > [data-id="675c136"] {
		grid-column: 2;
		grid-row: 1 !important;
		left: auto !important;
		right: auto !important;
		top: auto !important;
		transform: none !important;
		width: auto !important;
		max-width: 100% !important;
		margin: 0 !important;
		display: flex !important;
		justify-content: center !important;
		align-items: center !important;
		pointer-events: none;
		z-index: 1;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-675c136 .elementor-widget-wrap,
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-675c136 .elementor-widget-container {
		display: flex !important;
		justify-content: center !important;
		width: 100% !important;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-675c136 a,
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-675c136 img {
		pointer-events: auto;
	}

	/* Cart — last column */
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > .elementor-element-867f0e5,
	.hq-saga-theme :is(#header, #masthead) .hq-header-main-row > [data-id="867f0e5"] {
		grid-column: 3;
		grid-row: 1 !important;
		width: 44px !important;
		max-width: 44px !important;
		min-width: 44px !important;
		margin: 0 !important;
		z-index: 5;
		position: relative;
	}

	.hq-saga-theme :is(#header, #masthead) .hq-header-nav-cluster,
	.hq-saga-theme :is(#header, #masthead) .hq-header-actions,
	.hq-saga-theme :is(#header, #masthead) .hq-header-login,
	.hq-saga-theme :is(#header, #masthead) .hq-header-cta,
	.hq-saga-theme :is(#header, #masthead) .elbzotech-account-global,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-c033552,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-d477a9a,
	.hq-saga-theme :is(#header, #masthead) .elbzotech-search-wrap-global,
	.hq-saga-theme :is(#header, #masthead) .hq-header-search,
	.hq-saga-theme :is(#header, #masthead) .hq-header-search-toggle,
	.hq-saga-theme :is(#header, #masthead) .search-icon-popup,
	.hq-saga-theme :is(#header, #masthead) .yith-wcwl-add-to-wishlist,
	.hq-saga-theme :is(#header, #masthead) [class*="yith-wcwl"] {
		display: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-9d98d37 {
		display: flex !important;
		align-items: center !important;
		justify-content: flex-end !important;
		gap: 0;
		width: auto !important;
		flex-wrap: nowrap !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-a37662f,
	.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global {
		display: block !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-21141 .elbzotech-mini-cart-global .mini-cart-link {
		display: inline-flex !important;
		align-items: center !important;
		justify-content: center !important;
		width: 44px !important;
		height: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		flex: 0 0 44px !important;
		position: relative;
	}

	.hq-saga-theme :is(#header, #masthead) .mini-cart-total-price,
	.hq-saga-theme :is(#header, #masthead) .mini-cart-text,
	.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-link .woocommerce-Price-amount {
		display: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elbzotech-mini-cart-global .mini-cart-number {
		position: absolute !important;
		top: 4px !important;
		right: 4px !important;
		min-width: 1.05rem;
		height: 1.05rem;
		padding: 0 0.25rem;
		font-size: 0.65rem;
		font-weight: 700;
		line-height: 1;
		border-radius: 999px;
		background: #fff !important;
		color: var(--hq-terracotta) !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-21141 .elementor-widget-image img,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bbc5454 img,
	.hq-saga-theme :is(#header, #masthead) .logo-default img,
	.hq-saga-theme :is(#header, #masthead) .elbzotech-logo-global img,
	.hq-saga-theme :is(#header, #masthead) .hq-header-logo {
		max-height: 44px !important;
		max-width: min(120px, 42vw) !important;
		width: auto !important;
		min-width: 0 !important;
		margin-inline: auto;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle {
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		visibility: visible !important;
		opacity: 1 !important;
		width: 44px !important;
		min-width: 44px !important;
		height: 44px !important;
		min-height: 44px !important;
		margin: 0 !important;
		padding: 0 !important;
		cursor: pointer;
		background: transparent !important;
		border: 0 !important;
		box-shadow: none !important;
		color: var(--hq-ink) !important;
	}

	/* CSS hamburger so the icon still shows if icon fonts are skipped */
	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu-icon {
		display: block !important;
		position: relative;
		width: 20px;
		height: 14px;
		border-top: 2px solid var(--hq-ink);
		border-bottom: 2px solid var(--hq-ink);
		box-sizing: border-box;
	}

	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu-icon::before {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		top: 50%;
		height: 2px;
		margin-top: -1px;
		background: var(--hq-ink);
	}

	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu-icon i,
	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu-icon svg {
		position: absolute !important;
		width: 0 !important;
		height: 0 !important;
		overflow: hidden !important;
		opacity: 0 !important;
	}

	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle.hfe-active-menu .hfe-nav-menu-icon {
		border-color: transparent;
	}

	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle.hfe-active-menu .hfe-nav-menu-icon::before,
	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle.hfe-active-menu .hfe-nav-menu-icon::after {
		content: "";
		position: absolute;
		left: 0;
		right: 0;
		top: 50%;
		height: 2px;
		margin-top: -1px;
		background: var(--hq-ink);
	}

	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle.hfe-active-menu .hfe-nav-menu-icon::before {
		transform: rotate(45deg);
	}

	.hq-saga-theme :is(#header, #masthead) .hfe-nav-menu__toggle.hfe-active-menu .hfe-nav-menu-icon::after {
		transform: rotate(-45deg);
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .elementor-widget-container,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu {
		overflow: visible !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle:not(.hfe-active-menu) + nav.hfe-dropdown,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle:not(.hfe-active-menu) + .hfe-dropdown,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle:not(.hfe-active-menu) + nav.hfe-nav-menu__layout-horizontal,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle:not(.hfe-active-menu) + nav.hfe-nav-menu__layout-vertical {
		display: none !important;
		visibility: hidden !important;
		pointer-events: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle.hfe-active-menu + nav.hfe-dropdown,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle.hfe-active-menu + .hfe-dropdown,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle.hfe-active-menu + nav.hfe-nav-menu__layout-horizontal,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-nav-menu__toggle.hfe-active-menu + nav.hfe-nav-menu__layout-vertical,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee nav.hfe-dropdown.menu-is-active,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee nav.hfe-nav-menu__layout-horizontal.menu-is-active {
		position: fixed !important;
		top: var(--hq-mobile-nav-top, 64px) !important;
		left: 0 !important;
		right: 0 !important;
		width: 100vw !important;
		max-width: 100vw !important;
		z-index: 1001 !important;
		display: flex !important;
		flex-direction: column !important;
		visibility: visible !important;
		opacity: 1 !important;
		max-height: calc(100dvh - var(--hq-mobile-nav-top, 64px)) !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		pointer-events: auto !important;
		background: var(--hq-warm-white) !important;
		border: 0 !important;
		border-bottom: 1px solid var(--hq-hairline) !important;
		border-radius: 0 !important;
		box-shadow: 0 10px 28px rgba(26, 26, 26, 0.08) !important;
		padding: 0 !important;
		margin: 0 !important;
		transform: none !important;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-dropdown .hfe-nav-menu,
	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-dropdown ul.hfe-nav-menu {
		display: flex !important;
		flex-direction: column !important;
		width: 100% !important;
		margin: 0;
		padding: 0;
		list-style: none;
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-dropdown .menu-item {
		display: block !important;
		width: 100% !important;
		margin: 0 !important;
		border-bottom: 1px solid color-mix(in srgb, var(--hq-hairline) 75%, transparent);
	}

	.hq-saga-theme :is(#header, #masthead) .elementor-element-bea76ee .hfe-dropdown .menu-item a.hfe-menu-item {
		display: flex !important;
		align-items: center;
		width: 100% !important;
		min-height: 52px;
		padding: 0.85rem 1.25rem !important;
		font-size: 1rem;
		font-weight: 500;
		color: var(--hq-ink) !important;
		text-decoration: none;
	}

	body.hq-mobile-nav-open::before {
		content: "";
		position: fixed;
		inset: 0;
		z-index: 998;
		background: rgba(26, 26, 26, 0.28);
	}

	body.hq-mobile-nav-open,
	html.hq-mobile-nav-open {
		overflow: hidden !important;
	}
}


/* === hq-footer.css === */
/**
 * HQ Saga — Global footer (newsletter, columns, bottom bar).
 */

.hq-saga-footer-shell {
	margin-top: 0;
}

/* ── Instagram section (above footer) — disabled site-wide ── */
.hq-instagram,
.hq-saga-theme .hq-instagram,
.after-append-footer .hq-instagram-section,
.hq-saga-home .hq-instagram-section,
.hq-saga-home [data-id="6e394ce"],
.hq-saga-home .elementor-element-6e394ce {
	display: none !important;
}

/* Legacy styles kept for reference if section is re-enabled later. */
.hq-instagram--legacy {
	padding: var(--space-8) 0;
	background: var(--hq-warm-white);
	border-top: 1px solid var(--hq-hairline);
}

.hq-instagram__head {
	text-align: center;
	margin-bottom: var(--space-6);
}

.hq-instagram__eyebrow {
	margin: 0 0 var(--space-2);
	font-family: var(--hq-font-ui);
	font-size: 0.8rem;
	font-weight: var(--fw-semibold);
	letter-spacing: 0.12em;
	text-transform: uppercase;
	color: var(--hq-terracotta);
}

.hq-instagram__title {
	margin: 0 0 var(--space-2);
	font-family: var(--hq-font-display);
	font-size: clamp(1.5rem, 2.5vw, 2rem);
	font-weight: 400;
	color: var(--hq-ink);
}

.hq-instagram__handle {
	display: inline-block;
	font-family: var(--hq-font-ui);
	font-size: 1rem;
	font-weight: var(--fw-medium);
	color: var(--hq-body);
	text-decoration: none;
	transition: color var(--duration) var(--ease);
}

.hq-instagram__handle:hover {
	color: var(--hq-terracotta);
}

.hq-instagram__grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	gap: var(--space-3);
}

.hq-instagram__item {
	position: relative;
	display: block;
	overflow: hidden;
	border-radius: var(--radius-card);
	background: var(--hq-beige);
	aspect-ratio: 1 / 1;
}

.hq-instagram__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform var(--duration) var(--ease);
}

.hq-instagram__item:hover .hq-instagram__img {
	transform: scale(1.05);
}

.hq-instagram__overlay {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	background: rgba(45, 36, 32, 0);
	opacity: 0;
	transition: background var(--duration) var(--ease), opacity var(--duration) var(--ease);
}

.hq-instagram__item:hover .hq-instagram__overlay,
.hq-instagram__item:focus-visible .hq-instagram__overlay {
	background: rgba(45, 36, 32, 0.4);
	opacity: 1;
}

@media (max-width: 991px) {
	.hq-instagram__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 575px) {
	.hq-instagram {
		padding: var(--space-6) 0;
	}

	.hq-instagram__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: var(--space-2);
	}
}

/* Light cream footer — matches the header/body layout (espresso text, terracotta accents). */
.hq-site-footer {
	background: var(--hq-warm-white);
	color: var(--hq-body);
	font-family: var(--hq-font-ui);
	border-top: 1px solid var(--hq-hairline);
}

/* ── Trust bar (Free Shipping / Easy Returns / Secure Checkout) ── */
.hq-site-footer__trust {
	background: var(--hq-beige);
	border-bottom: 1px solid var(--hq-hairline);
	padding: var(--space-6) 0;
}

.hq-site-footer__trust-list {
	display: grid;
	grid-template-columns: 1fr;
	gap: var(--space-5);
	margin: 0;
	padding: 0;
	list-style: none;
	max-width: 20rem;
}

.hq-site-footer__trust-item {
	margin: 0;
}

.hq-site-footer__trust-link {
	display: flex;
	align-items: center;
	gap: var(--space-4);
	color: inherit;
	text-decoration: none;
	transition: opacity var(--duration) var(--ease);
}

.hq-site-footer__trust-link:hover,
.hq-site-footer__trust-link:focus-visible {
	color: inherit;
	opacity: 0.92;
}

.hq-site-footer a.hq-site-footer__trust-link:hover,
.hq-site-footer a.hq-site-footer__trust-link:focus-visible {
	color: inherit;
}

.hq-site-footer__trust-link:focus-visible {
	outline: 2px solid var(--hq-terracotta);
	outline-offset: 4px;
	border-radius: var(--radius-chip);
}

.hq-site-footer__trust-icon {
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 2.25rem;
	color: var(--hq-terracotta);
}

.hq-site-footer__trust-icon svg {
	display: block;
	width: 1.75rem;
	height: 1.75rem;
}

.hq-site-footer__trust-copy {
	display: flex;
	flex-direction: column;
	gap: 2px;
	line-height: 1.3;
	min-width: 0;
}

.hq-site-footer__trust-title {
	font-family: var(--hq-font-ui);
	font-weight: var(--fw-semibold);
	font-size: 1rem;
	color: var(--hq-ink);
	letter-spacing: -0.01em;
}

.hq-site-footer__trust-text {
	font-family: var(--hq-font-ui);
	font-size: 0.875rem;
	font-weight: var(--fw-regular);
	color: color-mix(in srgb, var(--hq-body) 82%, var(--hq-ink));
}

@media (min-width: 768px) {
	.hq-site-footer__trust-list {
		max-width: none;
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: var(--space-6) var(--space-7);
		align-items: start;
	}

	.hq-site-footer__trust-link {
		gap: var(--space-4);
	}
}

@media (min-width: 1200px) {
	.hq-site-footer__trust {
		padding: var(--space-6) 0 var(--space-7);
	}

	.hq-site-footer__trust-list {
		gap: var(--space-7);
	}
}

.hq-site-footer a {
	color: var(--hq-body);
	text-decoration: none;
	transition: color var(--duration) var(--ease);
}

.hq-site-footer a:hover {
	color: var(--hq-terracotta);
}

.hq-site-footer a:focus-visible,
.hq-site-footer button:focus-visible,
.hq-site-footer input:focus-visible {
	outline: 2px solid var(--hq-terracotta);
	outline-offset: 3px;
}

.hq-site-footer .screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
	word-wrap: normal !important;
}

/* Newsletter zone (right side of the main row) */
.hq-site-footer .hq-site-footer__newsletter-title {
	margin: 0 0 var(--space-2);
	font-family: var(--hq-font-display);
	font-size: clamp(1.35rem, 2vw, 1.65rem);
	font-weight: 400;
	color: var(--hq-ink);
	line-height: 1.2;
}

.hq-site-footer__newsletter-text {
	margin: 0 0 var(--space-4);
	max-width: 24rem;
	color: var(--hq-body);
	font-size: 0.95rem;
	line-height: 1.6;
}

/* Email pill + circular arrow submit */
.hq-site-footer__form,
.hq-site-footer__form-wrap form {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 22rem;
}

.hq-site-footer__form input[type="email"],
.hq-site-footer__form-wrap input[type="email"] {
	min-height: 52px;
	width: 100%;
	padding: 0 56px 0 var(--space-4);
	border: 1px solid var(--hq-hairline);
	border-radius: var(--radius-btn);
	background: var(--hq-warm-white);
	color: var(--hq-ink);
	font-family: var(--hq-font-ui);
	font-size: 0.95rem;
	transition: border-color var(--duration) var(--ease), box-shadow var(--duration) var(--ease);
}

.hq-site-footer__form input[type="email"]::placeholder,
.hq-site-footer__form-wrap input[type="email"]::placeholder {
	color: var(--hq-body);
}

.hq-site-footer__form input[type="email"]:focus,
.hq-site-footer__form input[type="email"]:focus-visible,
.hq-site-footer__form-wrap input[type="email"]:focus,
.hq-site-footer__form-wrap input[type="email"]:focus-visible {
	outline: none;
	border-color: var(--hq-terracotta);
	box-shadow: 0 0 0 3px color-mix(in srgb, var(--hq-terracotta) 32%, transparent);
}

.hq-site-footer__form-submit,
.hq-site-footer__form-wrap input[type="submit"],
.hq-site-footer__form-wrap button[type="submit"] {
	position: absolute;
	right: 5px;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: var(--hq-btn-primary-bg);
	color: #fff;
	cursor: pointer;
	transition: background var(--duration) var(--ease), transform var(--duration) var(--ease);
}

.hq-site-footer__form-submit:hover,
.hq-site-footer__form-submit:focus-visible,
.hq-site-footer__form-wrap button[type="submit"]:hover {
	background: var(--hq-btn-primary-bg-hover);
	transform: translateY(-50%) scale(1.05);
}

.hq-site-footer .mc4wp-alert,
.hq-site-footer .mc4wp-notice,
.hq-site-footer .mc4wp-error,
.hq-site-footer p[style*="indianred"],
.hq-site-footer strong[style*="indianred"] {
	display: none !important;
}

.hq-site-footer__main {
	padding: var(--space-7) 0 var(--space-6);
	border-bottom: 1px solid var(--hq-hairline);
}

/* Two zones: brand + link columns (center) + newsletter (right) */
.hq-site-footer__grid {
	display: grid;
	grid-template-columns: minmax(200px, 260px) minmax(0, 1fr) minmax(240px, 300px);
	align-items: start;
	gap: var(--space-7) var(--space-6);
}

.hq-site-footer__brand {
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
}

.hq-site-footer__columns {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: var(--space-5) var(--space-4);
}

.hq-site-footer__contact {
	display: flex;
	flex-direction: column;
	gap: var(--space-1);
	padding: var(--space-3) var(--space-4);
	border: 1px solid color-mix(in srgb, var(--hq-terracotta) 28%, var(--hq-hairline));
	border-radius: var(--radius-chip);
	background: color-mix(in srgb, var(--hq-terracotta) 8%, var(--hq-warm-white));
}

.hq-site-footer__contact-label {
	font-size: 0.75rem;
	font-weight: var(--fw-semibold);
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--hq-body);
}

.hq-site-footer__contact-email {
	font-size: 1rem;
	font-weight: var(--fw-semibold);
	color: var(--hq-terracotta) !important;
	text-decoration: none;
	word-break: break-word;
}

.hq-site-footer__contact-email:hover,
.hq-site-footer__contact-email:focus-visible {
	color: #a25c40 !important;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.hq-site-footer__link-soon {
	display: inline-flex;
	align-items: center;
	font-size: 0.95rem;
	line-height: 1.3;
	color: color-mix(in srgb, var(--hq-body) 72%, var(--hq-hairline));
	cursor: default;
}

.hq-site-footer__links-zone {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: var(--space-6) var(--space-8);
	flex: 1 1 520px;
}

.hq-site-footer__links-zone .hq-site-footer__logo {
	flex: 0 0 auto;
	margin-right: var(--space-2);
}

.hq-site-footer__newsletter-zone {
	flex: 0 1 320px;
}

.hq-site-footer__col--brand {
	display: flex;
	flex-direction: column;
	gap: var(--space-4);
}

.hq-site-footer__logo {
	display: inline-flex;
	max-width: 240px;
}

.hq-site-footer__logo-img {
	display: block;
	width: auto;
	max-height: 92px;
	height: auto;
	filter: none;
	opacity: 1;
}

.hq-site-footer__logo-text {
	font-family: var(--hq-font-display);
	font-size: 2rem;
	color: var(--hq-ink);
}

.hq-site-footer__promise {
	margin: 0;
	max-width: 18rem;
	color: var(--hq-body);
	font-size: 0.95rem;
	line-height: 1.55;
}

.hq-site-footer__social {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-3);
	margin-top: var(--space-4);
}

/* Brand-colored social circles with white icons. */
.hq-site-footer__social-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	width: 38px;
	height: 38px;
	border: 0;
	border-radius: 50%;
	color: #fff;
	background: var(--hq-ink);
	transition: color var(--duration) var(--ease), background var(--duration) var(--ease), transform var(--duration) var(--ease), filter var(--duration) var(--ease);
}

.hq-site-footer__social-link--instagram {
	background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%);
}

.hq-site-footer__social-link--facebook {
	background: #1877f2;
}

.hq-site-footer__social-link--pinterest {
	background: #e60023;
}

.hq-site-footer__social-link svg {
	width: 20px;
	height: 20px;
	display: block;
	color: #fff;
	fill: #fff;
}

.hq-site-footer__social-link svg path {
	fill: #fff;
}

.hq-site-footer__social-link:hover,
.hq-site-footer__social-link:focus-visible {
	color: #fff;
	transform: translateY(-2px);
	filter: brightness(1.08);
}

.hq-site-footer__social-link--instagram:hover,
.hq-site-footer__social-link--instagram:focus-visible {
	background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285aeb 90%);
}

.hq-site-footer__social-link--facebook:hover,
.hq-site-footer__social-link--facebook:focus-visible {
	background: #1877f2;
}

.hq-site-footer__social-link--pinterest:hover,
.hq-site-footer__social-link--pinterest:focus-visible {
	background: #e60023;
}

/* Placeholder social links (no URL yet) stay clickable-looking but non-interactive. */
.hq-site-footer__social-link--input {
	opacity: 1;
	pointer-events: none;
	cursor: default;
}

.hq-site-footer__phone,
.hq-site-footer__address {
	margin: 0;
	font-size: 0.92rem;
	color: var(--hq-body);
}

.hq-site-footer__input-note {
	margin: 0;
	padding: var(--space-2) var(--space-3);
	border: 1px dashed var(--hq-hairline);
	border-radius: var(--radius-chip);
	font-size: 0.78rem;
	line-height: 1.45;
	color: var(--hq-body);
}

.hq-input-flag {
	display: inline-block;
	margin-right: var(--space-1);
	padding: 0 var(--space-2);
	border-radius: 999px;
	background: rgba(172, 90, 60, 0.25);
	color: #f2c4b4;
	font-size: 0.68rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
}

.hq-site-footer__col-toggle {
	display: block;
	width: 100%;
	margin: 0 0 var(--space-3);
	padding: 0;
	border: 0;
	background: transparent;
	text-align: left;
	cursor: default;
}

.hq-site-footer__col-title {
	font-family: var(--hq-font-display);
	font-size: 1.0625rem;
	font-weight: 400;
	color: var(--hq-ink);
	letter-spacing: 0.02em;
}

.hq-site-footer__col-icon {
	display: none;
}

/* Link list — AFTER: consistent ~16px rhythm (was loose 44px rows on desktop). */
.hq-site-footer__link-list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	gap: var(--space-4);
}

.hq-site-footer__link-list a {
	position: relative;
	display: inline-flex;
	align-items: center;
	font-size: 0.95rem;
	line-height: 1.3;
	color: var(--hq-body);
	transition: color var(--duration) var(--ease);
}

/* Fade-in terracotta underline — no layout shift (absolute, scaleX). */
.hq-site-footer__link-list a::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -2px;
	height: 1px;
	background: var(--hq-terracotta);
	transform: scaleX(0);
	transform-origin: left center;
	transition: transform var(--duration) var(--ease);
}

.hq-site-footer__link-list a:hover,
.hq-site-footer__link-list a:focus-visible {
	color: var(--hq-terracotta);
}

.hq-site-footer__link-list a:hover::after,
.hq-site-footer__link-list a:focus-visible::after {
	transform: scaleX(1);
}

.hq-site-footer__link-item--input a {
	opacity: 0.85;
}

@media (max-width: 767px) {
	.hq-site-footer__trust {
		padding: var(--space-5) 0;
	}

	.hq-site-footer__trust-list {
		max-width: none;
		width: 100%;
		gap: var(--space-4);
	}

	.hq-site-footer__trust-link {
		gap: var(--space-3);
	}

	.hq-site-footer__trust-title {
		font-size: 0.9375rem;
	}

	.hq-site-footer__trust-text {
		font-size: 0.8125rem;
	}

	.hq-site-footer__form,
	.hq-site-footer__form-wrap form {
		max-width: none;
	}

	.hq-site-footer__form input[type="email"],
	.hq-site-footer__form-wrap input[type="email"] {
		min-height: 48px;
		padding-right: 54px;
		font-size: 1rem;
	}

	.hq-site-footer__form-submit,
	.hq-site-footer__form-wrap input[type="submit"],
	.hq-site-footer__form-wrap button[type="submit"] {
		right: 4px;
		width: 40px;
		height: 40px;
	}

	.hq-site-footer__cookie-settings {
		min-height: 44px;
		font-size: 0.8125rem;
	}

	.hq-site-footer__copyright {
		font-size: 0.8125rem;
		text-align: center;
	}

	/* Restore comfortable tap targets on mobile only. */
	.hq-site-footer__link-list a {
		min-height: 40px;
	}
}

/* Bottom bar */
.hq-site-footer__bottom {
	padding: var(--space-5) 0 var(--space-6);
}

.hq-site-footer__bottom-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	gap: var(--space-4);
}

.hq-site-footer__bottom-meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: var(--space-3) var(--space-5);
	margin-left: auto;
}

.hq-site-footer__cookie-settings {
	display: inline-flex;
	align-items: center;
	min-height: 36px;
	padding: 0;
	border: 0;
	background: transparent;
	color: var(--hq-body);
	font-family: var(--hq-font-ui);
	font-size: 0.875rem;
	font-weight: var(--fw-medium);
	text-decoration: underline;
	text-underline-offset: 2px;
	cursor: pointer;
	transition: color var(--duration) var(--ease);
}

.hq-site-footer__cookie-settings:hover,
.hq-site-footer__cookie-settings:focus-visible {
	color: var(--hq-terracotta);
}

.hq-site-footer__payments {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--space-2);
}

/* Payment marks — high-contrast dark marks on cream chips. */
.hq-site-footer__pay-mark {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 32px;
	min-width: 52px;
	padding: 0 var(--space-2);
	border: 1px solid color-mix(in srgb, var(--hq-ink) 18%, var(--hq-hairline));
	border-radius: var(--radius-chip);
	background: #fff;
	color: var(--hq-ink);
}

.hq-site-footer__pay-icon {
	width: auto;
	height: 18px;
	color: var(--hq-ink);
	fill: var(--hq-ink);
}

.hq-site-footer__pay-icon text {
	fill: var(--hq-ink);
}

.hq-site-footer__copyright {
	margin: 0;
	font-size: 0.875rem;
	color: var(--hq-body);
	text-align: right;
}

@media (max-width: 1199px) {
	.hq-site-footer__grid {
		grid-template-columns: minmax(0, 1fr) minmax(240px, 300px);
	}

	.hq-site-footer__brand {
		grid-column: 1 / -1;
	}

	.hq-site-footer__columns {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 991px) {
	.hq-site-footer__grid {
		grid-template-columns: 1fr;
	}

	.hq-site-footer__newsletter-zone {
		max-width: none;
	}
}

@media (max-width: 767px) {
	.hq-site-footer__main {
		padding: var(--space-5) 0;
	}

	.hq-site-footer__grid {
		gap: var(--space-5);
	}

	.hq-site-footer__columns {
		grid-template-columns: 1fr;
		gap: 0;
	}

	.hq-site-footer__brand {
		margin-bottom: var(--space-2);
	}

	.hq-site-footer__col--links {
		width: 100%;
		border-bottom: 1px solid var(--hq-hairline);
	}

	.hq-site-footer__col-toggle {
		display: flex;
		align-items: center;
		justify-content: space-between;
		min-height: 52px;
		padding: var(--space-3) 0;
		margin: 0;
		cursor: pointer;
	}

	.hq-site-footer__col-icon {
		display: block;
		width: 12px;
		height: 12px;
		border-right: 2px solid var(--hq-body);
		border-bottom: 2px solid var(--hq-body);
		transform: rotate(45deg);
		transition: transform var(--duration) var(--ease);
	}

	.hq-site-footer__col--links.is-open .hq-site-footer__col-icon {
		transform: rotate(-135deg) translateY(-2px);
	}

	.hq-site-footer__links {
		display: none;
		padding-bottom: var(--space-4);
	}

	.hq-site-footer__col--links.is-open .hq-site-footer__links {
		display: block;
	}

	/* Mobile: payment marks wrap/center above the copyright line. */
	.hq-site-footer__bottom-inner {
		flex-direction: column;
		align-items: center;
		text-align: center;
	}

	.hq-site-footer__bottom-meta {
		flex-direction: column;
		align-items: center;
		margin-left: 0;
	}

	.hq-site-footer__payments {
		justify-content: center;
	}

	.hq-site-footer__copyright {
		text-align: center;
	}
}

@media (min-width: 768px) {
	.hq-site-footer__col--links .hq-site-footer__links {
		display: block !important;
	}
}

/* ── Site-wide footer — light cream to match the header ── */
.hq-saga-theme #footer.hq-saga-footer-shell,
.hq-saga-theme .hq-site-footer {
	background: var(--hq-warm-white);
}

.hq-saga-theme .hq-site-footer {
	border-top-color: var(--hq-hairline);
}

.hq-saga-theme .hq-site-footer__trust {
	background: var(--hq-beige);
	border-bottom-color: var(--hq-hairline);
}

.hq-saga-theme .hq-site-footer__main {
	border-bottom-color: var(--hq-hairline);
}

.hq-saga-theme .hq-site-footer__trust-icon {
	color: var(--hq-terracotta);
}

.hq-saga-theme .hq-site-footer__trust-title,
.hq-saga-theme .hq-site-footer__col-title,
.hq-saga-theme .hq-site-footer .hq-site-footer__newsletter-title {
	color: var(--hq-ink);
}

.hq-saga-theme .hq-site-footer__trust-text,
.hq-saga-theme .hq-site-footer__newsletter-text,
.hq-saga-theme .hq-site-footer__copyright {
	color: var(--hq-body);
}

.hq-saga-theme .hq-site-footer__link-list a {
	color: var(--hq-body);
}

.hq-saga-theme .hq-site-footer__link-list a:hover,
.hq-saga-theme .hq-site-footer__link-list a:focus-visible {
	color: var(--hq-terracotta);
}

.hq-saga-theme .hq-site-footer__link-list a::after {
	background: var(--hq-terracotta);
}

.hq-saga-theme .hq-site-footer__logo-img {
	filter: none;
}

.hq-saga-theme .hq-site-footer__form-submit {
	background: var(--hq-btn-primary-bg);
}

.hq-saga-theme .hq-site-footer__form-submit:hover,
.hq-saga-theme .hq-site-footer__form-submit:focus-visible {
	background: var(--hq-btn-primary-bg-hover);
}


/* === hq-bag.css === */
/**
 * HQ Saga bag — cart + checkout.
 * Warm linen studio, ticket-stub receipt, no Woo table chrome.
 */

.hq-saga-cart .content-append-before,
.hq-saga-checkout .content-append-before,
.hq-saga-cart .sidebar,
.hq-saga-checkout .sidebar,
.hq-saga-cart .widget-area,
.hq-saga-checkout .widget-area,
.hq-saga-cart .hq-instagram,
.hq-saga-checkout .hq-instagram,
.hq-bag .variation-SKU,
.hq-bag .variation-sku,
.hq-bag dt.variation-SKU,
.hq-bag .hq-bag__item-data:empty,
.hq-saga-cart .woocommerce-message:empty,
.hq-saga-checkout .woocommerce-message:empty {
	display: none !important;
}

.hq-saga-cart #main-content.content-page,
.hq-saga-checkout #main-content.content-page {
	background:
		radial-gradient(1200px 420px at 12% -8%, color-mix(in srgb, var(--hq-sand) 55%, transparent), transparent 70%),
		radial-gradient(900px 380px at 100% 0%, color-mix(in srgb, var(--hq-terracotta) 10%, transparent), transparent 62%),
		var(--hq-warm-white);
	min-height: 62vh;
	padding: var(--space-6) 0 var(--space-8);
}

.hq-saga-cart .content-wrap,
.hq-saga-checkout .content-wrap,
.hq-saga-cart .main-wrap-shop,
.hq-saga-checkout .main-wrap-shop,
.hq-saga-cart .entry-content,
.hq-saga-checkout .entry-content {
	width: 100% !important;
	max-width: 100% !important;
	float: none !important;
}

.hq-bag {
	width: min(1120px, calc(100% - 2 * var(--space-4)));
	margin: 0 auto;
	position: relative;
}

.hq-bag::before {
	content: "";
	position: absolute;
	inset: -24px -12px auto;
	height: 180px;
	background-image: repeating-linear-gradient(
		-18deg,
		transparent,
		transparent 11px,
		color-mix(in srgb, var(--hq-sand) 35%, transparent) 11px,
		color-mix(in srgb, var(--hq-sand) 35%, transparent) 12px
	);
	mask-image: linear-gradient(180deg, rgba(0, 0, 0, 0.35), transparent 88%);
	pointer-events: none;
	z-index: 0;
}

.hq-bag__intro,
.hq-bag__layout,
.hq-bag--empty {
	position: relative;
	z-index: 1;
}

.hq-bag__kicker,
.hq-bag__ticket-kicker {
	margin: 0 0 var(--space-2);
	font-family: var(--hq-font-accent);
	font-size: 1.35rem;
	color: var(--hq-terracotta);
	letter-spacing: 0.02em;
}

.hq-bag__title,
.hq-bag__ticket-title,
.hq-saga-checkout .woocommerce-billing-fields > h3,
.hq-saga-checkout .woocommerce-additional-fields > h3,
.hq-saga-checkout #ship-to-different-address {
	margin: 0 0 var(--space-3);
	font-family: var(--hq-font-display);
	font-weight: var(--fw-semibold);
	color: var(--hq-ink);
	letter-spacing: -0.03em;
	line-height: var(--lh-tight);
}

.hq-bag__title {
	font-size: var(--fs-h2);
}

.hq-bag__lede,
.hq-bag__ship-note {
	margin: 0;
	max-width: 36ch;
	color: var(--hq-body);
	font-size: var(--fs-lead);
}

.hq-bag__ship-note {
	margin-top: var(--space-3);
	font-size: var(--fs-body);
}

.hq-bag__ship-note.is-free {
	color: var(--hq-sage-dark);
}

.hq-bag__steps {
	display: flex;
	gap: var(--space-4);
	margin: 0 0 var(--space-4);
	padding: 0;
	list-style: none;
	font-size: var(--fs-meta);
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: var(--hq-body);
}

.hq-bag__steps li {
	display: flex;
	align-items: center;
	gap: var(--space-2);
}

.hq-bag__steps li::before {
	content: "";
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: var(--hq-sand);
}

.hq-bag__steps [aria-current="step"] {
	color: var(--hq-ink);
	font-weight: var(--fw-semibold);
}

.hq-bag__steps [aria-current="step"]::before {
	background: var(--hq-terracotta);
}

.hq-bag__steps a {
	color: inherit;
	text-decoration: underline;
	text-underline-offset: 3px;
}

.hq-bag__layout {
	display: grid;
	gap: var(--space-5);
	margin-top: var(--space-6);
	align-items: start;
}

@media (min-width: 900px) {
	.hq-bag__layout {
		grid-template-columns: minmax(0, 1.35fr) minmax(280px, 0.8fr);
		gap: var(--space-7);
	}
}

.hq-bag__panel,
.hq-bag__ticket {
	background: #fff;
	border: 1px solid var(--hq-hairline);
	border-radius: 22px;
	box-shadow: var(--shadow-card);
}

.hq-bag__panel {
	padding: var(--space-5);
	overflow: hidden;
}

.hq-bag__ticket {
	padding: var(--space-5) var(--space-5) var(--space-6);
	background:
		radial-gradient(circle at 0 28px, transparent 10px, #fff 11px) left / 22px 36px repeat-y,
		linear-gradient(180deg, color-mix(in srgb, var(--hq-beige) 70%, #fff), #fff 42%);
	background-origin: border-box;
	position: sticky;
	top: 92px;
}

.hq-bag__lines {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 0;
	width: 100%;
	border: 0;
}

.hq-bag__line {
	display: grid;
	grid-template-columns: 72px minmax(0, 1fr);
	grid-template-areas:
		"thumb meta"
		"thumb qty"
		"remove total";
	gap: 12px 16px;
	padding: 18px 0;
	border-bottom: 1px solid var(--hq-hairline);
	align-items: center;
}

@media (min-width: 760px) {
	.hq-bag__line {
		grid-template-columns: 88px minmax(0, 1fr) 132px 88px 36px;
		grid-template-areas: "thumb meta qty total remove";
	}
}

.hq-bag__line:first-child {
	padding-top: 0;
}

.hq-bag__thumb {
	grid-area: thumb;
}

.hq-bag__meta {
	grid-area: meta;
	min-width: 0;
}

.hq-bag__qty {
	grid-area: qty;
	align-self: end;
}

.hq-bag__line-total {
	grid-area: total;
	align-self: end;
	margin: 0;
	font-family: var(--hq-font-display);
	font-weight: var(--fw-semibold);
	color: var(--hq-ink);
	white-space: nowrap;
}

.product-remove {
	grid-area: remove;
	justify-self: end;
}

.hq-bag__thumb img,
.hq-bag__review-img,
.hq-saga-cart .hq-cart-thumb {
	width: 92px;
	height: 116px;
	object-fit: cover;
	border-radius: 12px;
	display: block;
	filter: var(--hq-img-pop);
	background: var(--hq-beige);
}

.hq-bag__meta .product-name,
.hq-bag__meta .product-name a {
	margin: 0;
	font-family: var(--hq-font-display);
	font-size: var(--fs-h4);
	font-weight: var(--fw-semibold);
	color: var(--hq-ink);
	text-decoration: none;
	line-height: var(--lh-snug);
}

.hq-bag__size {
	display: inline-flex;
	margin: var(--space-2) 0 0;
	padding: 2px 10px;
	border-radius: 999px;
	border: 1px solid var(--hq-terracotta-tint-border);
	background: var(--hq-terracotta-tint);
	color: var(--hq-ink);
	font-size: var(--fs-meta);
	font-weight: var(--fw-medium);
	letter-spacing: 0.04em;
}

.hq-bag__unit {
	margin: var(--space-2) 0 0;
	color: var(--hq-body);
	font-size: var(--fs-price);
}

.hq-bag__remove {
	display: grid;
	place-items: center;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	border: 1px solid var(--hq-hairline);
	color: var(--hq-body) !important;
	text-decoration: none !important;
	font-size: 1.25rem;
	line-height: 1;
	background: #fff;
}

.hq-bag__remove:hover {
	border-color: var(--hq-terracotta);
	color: var(--hq-terracotta) !important;
}

.hq-bag .quantity,
.hq-bag .hq-qty,
.hq-bag .detail-qty,
.hq-bag .info-qty-inner {
	display: inline-flex !important;
	align-items: center !important;
	width: 132px !important;
	max-width: 132px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 1px solid var(--hq-hairline) !important;
	border-radius: 999px !important;
	overflow: hidden;
	background: var(--hq-warm-white) !important;
	float: none !important;
}

.hq-bag .hq-qty__btn,
.hq-bag .qty-up,
.hq-bag .qty-down {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	width: 40px !important;
	height: 38px !important;
	padding: 0 !important;
	margin: 0 !important;
	border: 0 !important;
	background: transparent !important;
	color: var(--hq-ink) !important;
	font-size: 1.1rem;
	line-height: 1;
	cursor: pointer;
	flex: none !important;
}

.hq-bag .quantity input.qty,
.hq-bag input.qty {
	width: 48px !important;
	min-width: 0 !important;
	max-width: 48px !important;
	height: 38px !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
	text-align: center !important;
	font-weight: var(--fw-semibold);
	color: var(--hq-ink);
	box-shadow: none !important;
	flex: none !important;
	appearance: textfield;
}

.hq-bag input.qty::-webkit-outer-spin-button,
.hq-bag input.qty::-webkit-inner-spin-button {
	appearance: none;
	margin: 0;
}

.hq-saga-cart .woocommerce-shipping-calculator,
.hq-saga-cart .shipping-calculator-button,
.hq-saga-cart .hq-site-footer__trust {
	display: none !important;
}

.hq-bag__actions {
	display: flex;
	flex-wrap: wrap;
	gap: var(--space-4);
	align-items: end;
	justify-content: space-between;
	margin-top: var(--space-5);
	padding-top: var(--space-4);
}

.hq-bag__coupon {
	flex: 1 1 240px;
}

.hq-bag__coupon label {
	display: block;
	margin-bottom: var(--space-2);
	font-size: var(--fs-meta);
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: var(--hq-body);
}

.hq-bag__coupon-row {
	display: flex;
	gap: var(--space-2);
}

.hq-bag__coupon-row .input-text {
	flex: 1;
	min-height: 48px;
	border-radius: 999px;
	border: 1px solid var(--hq-hairline);
	padding: 0 16px;
	background: var(--hq-warm-white);
}

.hq-bag__coupon-row .button,
.hq-bag__update {
	min-height: 48px;
	border-radius: var(--radius-btn);
	padding: 0 18px;
}

.hq-bag__update {
	background: transparent;
	border: 1px solid var(--hq-hairline);
	color: var(--hq-ink);
}

.hq-bag__totals table,
.hq-bag__review {
	width: 100%;
	border: 0;
	border-collapse: collapse;
}

.hq-bag__totals th,
.hq-bag__totals td,
.hq-bag__review th,
.hq-bag__review td {
	padding: 10px 0;
	border: 0;
	border-bottom: 1px dashed var(--hq-hairline);
	font-size: var(--fs-body);
	color: var(--hq-body);
	background: transparent !important;
}

.hq-bag__totals .order-total th,
.hq-bag__totals .order-total td,
.hq-bag__review .order-total th,
.hq-bag__review .order-total td {
	border-bottom: 0;
	color: var(--hq-ink);
	font-family: var(--hq-font-display);
	font-size: 1.2rem;
	font-weight: var(--fw-semibold);
	padding-top: var(--space-4);
}

.hq-bag__trust {
	margin: var(--space-4) 0;
	padding: 0;
	list-style: none;
	font-size: var(--fs-meta);
	color: var(--hq-body);
}

.hq-bag__trust li {
	display: flex;
	align-items: center;
	gap: var(--space-2);
	margin: 0 0 6px;
}

.hq-bag__trust li::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--hq-sage);
}

.hq-bag__cta,
.hq-saga-cart .wc-proceed-to-checkout .checkout-button,
.hq-saga-checkout #place_order {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 54px;
	margin-top: var(--space-3);
	border: 0;
	border-radius: var(--radius-btn) !important;
	background: var(--hq-btn-primary-bg) !important;
	color: #fff !important;
	font-family: var(--hq-font-ui);
	font-size: 1.05rem;
	font-weight: var(--fw-semibold);
	letter-spacing: 0.04em;
	text-transform: uppercase;
	text-decoration: none !important;
	box-shadow: 0 10px 24px var(--hq-btn-primary-shadow);
}

.hq-bag__cta:hover,
.hq-saga-cart .wc-proceed-to-checkout .checkout-button:hover,
.hq-saga-checkout #place_order:hover {
	background: var(--hq-btn-primary-bg-hover) !important;
}

.hq-bag--empty {
	text-align: center;
	padding: var(--space-8) var(--space-4);
}

.hq-bag__empty-mark {
	width: 88px;
	height: 88px;
	margin: 0 auto var(--space-5);
	border-radius: 50%;
	background:
		radial-gradient(circle at 50% 42%, var(--hq-terracotta-tint), var(--hq-beige) 62%, transparent 63%),
		conic-gradient(from 20deg, var(--hq-sand), var(--hq-terracotta-tint), var(--hq-sand));
	box-shadow: inset 0 0 0 8px #fff;
}

.hq-bag--empty .hq-bag__lede {
	margin: 0 auto var(--space-5);
}

.hq-bag--empty .hq-bag__cta {
	max-width: 280px;
	margin: 0 auto;
}

.hq-bag__review-item {
	display: flex;
	gap: var(--space-3);
	align-items: center;
}

.hq-bag__review-img {
	width: 52px;
	height: 66px;
	flex: none;
}

.woocommerce-checkout #customer_details,
.woocommerce-checkout .col2-set,
.woocommerce-checkout .col-1,
.woocommerce-checkout .col-2 {
	width: 100% !important;
	float: none !important;
	max-width: none !important;
}

.hq-saga-checkout .woocommerce-billing-fields__field-wrapper,
.hq-saga-checkout .woocommerce-shipping-fields__field-wrapper {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: var(--space-4);
}

.hq-saga-checkout .form-row {
	margin: 0;
	padding: 0;
	width: auto !important;
	float: none !important;
}

.hq-saga-checkout .form-row-wide,
.hq-saga-checkout #billing_address_1_field,
.hq-saga-checkout #billing_address_2_field,
.hq-saga-checkout #billing_country_field,
.hq-saga-checkout #billing_email_field,
.hq-saga-checkout #billing_phone_field,
.hq-saga-checkout #billing_company_field,
.hq-saga-checkout #order_comments_field,
.hq-saga-checkout #shipping_address_1_field,
.hq-saga-checkout #shipping_address_2_field,
.hq-saga-checkout #shipping_country_field {
	grid-column: 1 / -1;
}

.hq-saga-checkout .form-row label {
	font-size: var(--fs-meta);
	letter-spacing: 0.04em;
	color: var(--hq-body);
}

.hq-saga-checkout .form-row input.input-text,
.hq-saga-checkout .form-row textarea,
.hq-saga-checkout .select2-container .select2-selection--single {
	min-height: 48px;
	border-radius: 12px !important;
	border: 1px solid var(--hq-hairline) !important;
	background: var(--hq-warm-white) !important;
	box-shadow: none !important;
}

.hq-saga-checkout .woocommerce-form-coupon-toggle .woocommerce-info::before,
.hq-saga-checkout .woocommerce-form-login-toggle .woocommerce-info::before {
	content: none !important;
	display: none !important;
}

.hq-saga-checkout .woocommerce-terms-and-conditions {
	display: none;
}

.hq-saga-checkout .woocommerce-checkout-payment {
	background: transparent !important;
	border: 0 !important;
	padding: var(--space-4) 0 0 !important;
}

.hq-saga-checkout .wc_payment_methods {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hq-saga-checkout .wc_payment_method,
.hq-bag #shipping_method li {
	border: 1px solid var(--hq-hairline);
	border-radius: 14px;
	padding: var(--space-3) var(--space-4);
	margin: 0 0 var(--space-3);
	background: #fff;
	list-style: none;
}

.hq-bag #shipping_method {
	margin: 0;
	padding: 0;
}

.hq-saga-cart .woocommerce-shipping-calculator,
.hq-saga-cart .shipping-calculator-form {
	font-size: var(--fs-meta);
}

.hq-saga-checkout #payment .payment_box {
	background: var(--hq-warm-white) !important;
	border-radius: 10px;
}

.hq-saga-checkout .woocommerce-privacy-policy-text,
.hq-saga-checkout .woocommerce-terms-and-conditions-wrapper {
	font-size: var(--fs-meta);
	color: var(--hq-body);
}

.hq-saga-checkout .woocommerce-NoticeGroup,
.hq-saga-cart .woocommerce-notices-wrapper {
	width: min(1120px, calc(100% - 2 * var(--space-4)));
	margin: 0 auto var(--space-4);
}

@media (max-width: 699px) {
	.hq-bag__line {
		grid-template-columns: 72px minmax(0, 1fr);
		grid-template-areas:
			"thumb meta"
			"thumb qty"
			"remove total";
	}

	.hq-bag__thumb img {
		width: 72px;
		height: 90px;
	}

	.hq-saga-checkout .woocommerce-billing-fields__field-wrapper,
	.hq-saga-checkout .woocommerce-shipping-fields__field-wrapper {
		grid-template-columns: 1fr;
	}

	.hq-bag__ticket {
		position: static;
	}
}
