:root {
	--primary: #2563EB;
	--primary-dark: #1D4ED8;
	--primary-light: #3B82F6;
	--primary-soft: #EFF6FF;
	--secondary: #7C3AED;
	--secondary-dark: #6D28D9;
	--secondary-light: #8B5CF6;
	--secondary-soft: #F5F3FF;
	--accent: #06B6D4;
	--accent-dark: #0891B2;
	--accent-light: #22D3EE;
	--accent-soft: #ECFEFF;
	--success: #16A34A;
	--success-dark: #15803D;
	--success-light: #22C55E;
	--success-soft: #F0FDF4;
	--warning: #F59E0B;
	--warning-dark: #D97706;
	--warning-light: #FBBF24;
	--warning-soft: #FFFBEB;
	--danger: #DC2626;
	--danger-dark: #B91C1C;
	--danger-light: #EF4444;
	--danger-soft: #FEF2F2;
	--info: #0EA5E9;
	--info-dark: #0284C7;
	--info-light: #38BDF8;
	--info-soft: #F0F9FF;
	--white: #FFFFFF;
	--gray-50: #F8FAFC;
	--gray-100: #F1F5F9;
	--gray-200: #E2E8F0;
	--gray-300: #CBD5E1;
	--gray-400: #94A3B8;
	--gray-500: #64748B;
	--gray-600: #475569;
	--gray-700: #334155;
	--gray-800: #1E293B;
	--gray-900: #0F172A;
	--black: #020617;
	--body-bg: #F8FAFC;
	--card-bg: #FFFFFF;
	--section-bg: #F1F5F9;
	--text-primary: #0F172A;
	--text-secondary: #475569;
	--text-muted: #64748B;
	--text-light: #94A3B8;
	--border: #E2E8F0;
	--border-light: #F1F5F9;
	--border-dark: #CBD5E1;
	--shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.05);
	--shadow-md: 0 4px 12px rgba(15, 23, 42, 0.08);
	--shadow-lg: 0 10px 30px rgba(15, 23, 42, 0.10);
	--shadow-xl: 0 20px 40px rgba(15, 23, 42, 0.12);
	--radius-sm: 6px;
	--radius-md: 10px;
	--radius-lg: 14px;
	--radius-xl: 20px;
	--radius-full: 9999px;
	--transition-fast: 0.15s ease;
	--transition: 0.25s ease;
	--transition-slow: 0.4s ease;
	--admin-bg: var(--body-bg);
	--admin-surface: var(--card-bg);
	--admin-surface-soft: var(--gray-50);
	--admin-border: var(--border);
	--admin-text: var(--text-primary);
	--admin-muted: var(--text-muted);
	--admin-primary: var(--primary);
	--admin-primary-dark: var(--primary-dark);
	--admin-success: var(--success);
	--admin-warning: var(--warning-dark);
	--admin-danger: var(--danger);
	--admin-sidebar: var(--gray-900);
	--admin-sidebar-soft: var(--gray-800);
}

html[data-theme="light"] {
	color-scheme: light;
}

html[data-theme="dark"] {
	color-scheme: dark;
	--body-bg: #0B1120;
	--card-bg: #111827;
	--section-bg: #182235;
	--text-primary: #F1F5F9;
	--text-secondary: #CBD5E1;
	--text-muted: #94A3B8;
	--text-light: #64748B;
	--border: #334155;
	--border-light: #263449;
	--border-dark: #475569;
	--primary-soft: rgba(37, 99, 235, 0.18);
	--secondary-soft: rgba(124, 58, 237, 0.18);
	--accent-soft: rgba(6, 182, 212, 0.16);
	--success-soft: rgba(22, 163, 74, 0.16);
	--warning-soft: rgba(245, 158, 11, 0.16);
	--danger-soft: rgba(220, 38, 38, 0.16);
	--info-soft: rgba(14, 165, 233, 0.16);
	--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.22);
	--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.26);
	--shadow-lg: 0 10px 30px rgba(0, 0, 0, 0.32);
	--shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.4);
	--admin-bg: var(--body-bg);
	--admin-surface: var(--card-bg);
	--admin-surface-soft: var(--section-bg);
	--admin-border: var(--border);
	--admin-text: var(--text-primary);
	--admin-muted: var(--text-muted);
	--admin-primary: var(--primary-light);
	--admin-primary-dark: var(--primary-light);
	--admin-success: var(--success-light);
	--admin-warning: var(--warning-light);
	--admin-danger: var(--danger-light);
	--admin-sidebar: #070D19;
	--admin-sidebar-soft: #172033;
}

html:not([data-theme="dark"]) {
	--admin-sidebar: var(--card-bg);
	--admin-sidebar-soft: var(--primary-soft);
	--admin-sidebar-border: var(--border);
	--admin-sidebar-text: var(--text-secondary);
	--admin-sidebar-text-strong: var(--text-primary);
	--admin-sidebar-muted: var(--text-muted);
	--admin-sidebar-icon-bg: var(--primary-soft);
	--admin-sidebar-icon: var(--primary-dark);
	--admin-sidebar-shadow: 18px 0 42px rgba(15, 23, 42, 0.08);
}

html,
body {
	background-color: var(--body-bg);
	color: var(--text-primary);
}

button,
input,
select,
textarea {
	font: inherit;
}

/* Admin palette and components */
.admin-main {
	background: var(--body-bg);
	color: var(--text-primary);
}

.admin-navbar,
.panel,
.metric-card,
.dashboard-card,
.auth-card,
.error-card,
.modal-content,
.dropdown-menu,
.accordion-item {
	border-color: var(--border);
	background-color: var(--card-bg);
	color: var(--text-primary);
}

.sidebar-nav .nav-link:hover:not(.active),
.sidebar-nav .nav-link:focus:not(.active) {
	background: var(--admin-sidebar-soft);
	color: var(--admin-sidebar-text-strong);
}

.sidebar-nav .nav-link.active,
.sidebar-nav .nav-link.active:hover,
.sidebar-nav .nav-link.active:focus {
	background: var(--primary);
	color: var(--white);
}

.btn-primary,
.btn-primary:hover,
.btn-primary:focus {
	border-color: var(--primary-dark);
	background: var(--primary);
	color: var(--white);
}

.btn-primary:hover,
.btn-primary:focus {
	background: var(--primary-dark);
}

.form-control:focus,
.form-select:focus {
	border-color: var(--primary);
	box-shadow: 0 0 0 3px var(--primary-soft);
}

.page-icon,
.section-title i {
	background: var(--primary-soft);
	color: var(--primary-dark);
}

.text-bg-primary {
	background: var(--primary) !important;
	color: var(--white) !important;
}

.text-bg-success {
	background: var(--success-soft) !important;
	color: var(--success-dark) !important;
}

.text-bg-warning {
	background: var(--warning-soft) !important;
	color: var(--warning-dark) !important;
}

.text-bg-danger {
	background: var(--danger-soft) !important;
	color: var(--danger-dark) !important;
}

.text-bg-info {
	background: var(--info-soft) !important;
	color: var(--info-dark) !important;
}

html[data-theme="dark"] .admin-navbar.bg-white {
	background-color: var(--card-bg) !important;
}

html[data-theme="dark"] .btn-outline-secondary:hover,
html[data-theme="dark"] .btn-outline-secondary:focus {
	border-color: var(--primary-light);
	background: var(--primary-soft);
	color: var(--primary-light);
}

html[data-theme="dark"] .text-bg-success {
	color: #86EFAC !important;
}

html[data-theme="dark"] .text-bg-warning {
	color: #FCD34D !important;
}

html[data-theme="dark"] .text-bg-danger {
	color: #FCA5A5 !important;
}

html[data-theme="dark"] .text-bg-info {
	color: #7DD3FC !important;
}

/* Store palette */
.header-top,
.header-middle,
.header-bottom,
.header-sticky,
.hm-searchbox,
.footer,
.footer-static-top-3,
.single-product-wrap,
.single-banner,
.product-details-view-content,
.product-details-manufacturer,
.product-description,
.product-reviews {
	background-color: var(--card-bg);
	color: var(--text-primary);
}

.header-top,
.header-middle,
.header-bottom,
.footer,
.footer-static-top-3,
.single-product-wrap {
	border-color: var(--border);
}

.header-top a,
.header-bottom a,
.footer a,
.footer-block > ul > li > a,
.store-footer-social > ul > li > a {
	color: var(--text-secondary);
}

.header-top a:hover,
.header-bottom a:hover,
.footer a:hover,
.footer-block > ul > li > a:hover,
.store-footer-social > ul > li > a:hover,
.li-product-menu li a:hover,
.li-product-menu > li a.active {
	color: var(--primary);
}

.header-bottom .hb-menu nav > ul > li:hover > a,
.header-bottom .hb-menu nav > ul > li:hover > a::after {
	color: var(--primary);
}

.header-bottom,
.header-bottom .hb-menu,
.hm-searchbox .nice-select.select-search-category,
.hm-searchbox input {
	background-color: var(--card-bg);
	color: var(--text-primary);
}

.hm-searchbox,
.hm-searchbox input,
.hm-searchbox .nice-select.select-search-category,
.form-control,
.store-review-form input[type="text"],
.store-review-form textarea {
	border-color: var(--border-dark);
}

.hm-searchbox input,
.form-control,
.store-review-form input[type="text"],
.store-review-form textarea {
	background-color: var(--card-bg);
	color: var(--text-primary);
}

.hm-searchbox input::placeholder,
.store-review-form input::placeholder,
.store-review-form textarea::placeholder {
	color: var(--text-muted);
}

.hm-searchbox:focus-within,
.form-control:focus,
.store-review-form input:focus,
.store-review-form textarea:focus {
	border-color: var(--primary);
	box-shadow: 0 0 0 3px var(--primary-soft);
}

.hm-searchbox:focus-within {
	box-shadow: 0 0 0 3px var(--primary-soft), var(--shadow-sm);
}

.li-btn-2,
.default-btn a,
.add-actions-link li.add-cart a,
.store-add-to-cart {
	background: var(--primary);
	color: var(--white);
}

.li-btn-2:hover,
.default-btn a:hover,
.add-actions-link li.add-cart a:hover,
.store-add-to-cart:hover:not(:disabled) {
	background: var(--primary-dark);
	color: var(--white);
}

.new-price,
.new-price-2,
.product-details-view-content .product-info h2,
.li-section-title > .view-all {
	color: var(--primary);
}

.li-section-title > h2 > span::before,
.li-product-menu > li > a span::before,
.li-product-menu > li > a.active span::before,
.li-product-menu li span:hover::before {
	background: var(--primary);
}

.single-product-wrap {
	border: 1px solid var(--border);
	box-shadow: var(--shadow-sm);
}

.single-product-wrap:hover {
	box-shadow: var(--shadow-lg);
}

.product_desc,
.product_desc_info,
.product-review,
.li-section-title > h2,
.footer-block > h3,
.store-footer-social > h3 {
	color: var(--text-primary);
}

.store-footer-wrap,
.store-footer-social,
.store-footer-bottom,
.footer-logo-wrap {
	border-color: var(--border);
}

.store-product-stock {
	color: var(--success-dark);
}

.store-stock-quantity,
.product-details-ref,
.product-desc,
.store-review-summary > span:last-child,
.store-review-item time {
	color: var(--text-muted);
}

.store-quantity-control,
.store-quantity-control button,
.store-quantity-control input {
	border-color: var(--border);
	background: var(--card-bg);
	color: var(--text-primary);
}

.li-product-menu li a,
.product-details-manufacturer p,
.product-description,
.product-reviews,
.store-review-item {
	color: var(--text-secondary);
}

.store-review-form-wrap,
.store-review-item {
	border-color: var(--border);
}

.store-theme-toggle {
	display: inline-grid;
	width: 36px;
	height: 36px;
	place-items: center;
	border: 1px solid var(--border);
	border-radius: var(--radius-full);
	background: var(--card-bg);
	color: var(--text-secondary);
	cursor: pointer;
	transition: color var(--transition-fast), background-color var(--transition-fast), border-color var(--transition-fast);
}

.store-theme-toggle:hover,
.store-theme-toggle:focus-visible {
	border-color: var(--primary);
	color: var(--primary);
}

html[data-theme="dark"] body,
html[data-theme="dark"] .body-wrapper {
	background: var(--body-bg);
	color: var(--text-primary);
}

html[data-theme="dark"] .header-top,
html[data-theme="dark"] .header-middle,
html[data-theme="dark"] .header-bottom,
html[data-theme="dark"] .header-sticky,
html[data-theme="dark"] .footer,
html[data-theme="dark"] .footer-static-top-3,
html[data-theme="dark"] .single-product-wrap,
html[data-theme="dark"] .single-banner,
html[data-theme="dark"] .modal-content,
html[data-theme="dark"] .nice-select,
html[data-theme="dark"] .nice-select .list,
html[data-theme="dark"] .hm-searchbox .nice-select.select-search-category,
html[data-theme="dark"] .hm-searchbox input {
	border-color: var(--border);
	background-color: var(--card-bg);
	color: var(--text-primary);
}

.header-bottom.header-sticky.sticky {
	background: var(--card-bg);
	border-bottom: 1px solid var(--border);
}

.header-bottom.header-sticky.sticky .hb-menu nav > ul > li > a,
.header-bottom.header-sticky.sticky .hb-menu nav > ul > li > a::after {
	color: var(--text-primary);
}

.header-bottom.header-sticky.sticky .hb-menu nav > ul > li:hover > a,
.header-bottom.header-sticky.sticky .hb-menu nav > ul > li:hover > a::after {
	color: var(--primary);
}

html[data-theme="dark"] .header-bottom.header-sticky.sticky {
	background: var(--card-bg);
}

.home-promo-banner {
	overflow: hidden;
}

.home-promo-banner > a {
	border-radius: var(--radius-md);
}

.home-promo-banner > a:focus-visible {
	outline: 3px solid var(--primary);
	outline-offset: 3px;
}

.home-promo-banner img {
	display: block;
	width: 100%;
	transition: transform var(--transition-slow);
}

.home-promo-banner:hover img {
	transform: scale(1.025);
}

.home-deals-panel {
	display: grid;
	grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
	align-items: center;
	gap: 36px;
	padding: 38px;
	overflow: hidden;
	border: 1px solid rgba(147, 197, 253, .18);
	border-radius: var(--radius-xl);
	background:
		radial-gradient(ellipse at 2% 100%, rgba(6, 182, 212, .16), transparent 36%),
		linear-gradient(120deg, #0B1E3B 0%, #142F59 60%, #1E4678 100%);
	box-shadow: var(--shadow-lg);
	color: #fff;
	text-align: left;
}

.home-deals-intro {
	max-width: 360px;
}

.home-deals-eyebrow,
.home-deals-status {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .1em;
	text-transform: uppercase;
}

.home-deals-eyebrow {
	margin-bottom: 16px;
	color: #8BE4FF;
}

.home-deals-intro h2 {
	margin: 0 0 12px;
	color: #fff;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.2;
}

.home-deals-intro > p {
	max-width: 330px;
	margin: 0;
	color: #CBD9EC;
	font-size: 14px;
	line-height: 1.7;
}

.home-deals-offer-card {
	padding: 26px 28px;
	border: 1px solid rgba(255, 255, 255, .76);
	border-radius: var(--radius-lg);
	background: #fff;
	box-shadow: 0 14px 35px rgba(2, 8, 23, .18);
	color: #0F172A;
}

.home-deals-status {
	gap: 7px;
	color: #15803D;
	font-size: 10px;
	letter-spacing: .06em;
}

.home-deals-status > span {
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #22C55E;
	box-shadow: 0 0 0 3px #DCFCE7;
}

.home-deals-offer-heading h3 {
	margin: 9px 0 4px;
	color: #0F172A;
	font-size: 31px;
	font-weight: 700;
	line-height: 1.15;
}

.home-deals-offer-heading p {
	margin: 0;
	color: #64748B;
	font-size: 13px;
}

.home-deals-coupon {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	margin-top: 20px;
	padding: 13px 15px;
	border: 1px dashed #93C5FD;
	border-radius: var(--radius-md);
	background: #EFF6FF;
}

.home-deals-label {
	color: #475569;
	font-size: 11px;
	font-weight: 600;
}

.home-deals-code {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #1D4ED8;
}

.home-deals-code > i {
	font-size: 13px;
}

.home-deals-code code {
	color: #1E40AF;
	font-family: Consolas, "Courier New", monospace;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: .08em;
	overflow-wrap: anywhere;
}

.home-deals-terms {
	display: flex;
	flex-wrap: wrap;
	gap: 10px 24px;
	margin: 16px 0 0;
}

.home-deals-terms > div {
	display: grid;
	gap: 3px;
}

.home-deals-terms dt {
	color: #64748B;
	font-size: 10px;
	font-weight: 500;
}

.home-deals-terms dd {
	margin: 0;
	color: #1E293B;
	font-size: 12px;
	font-weight: 700;
}

.home-deals-link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 18px;
	color: #1D4ED8;
	font-size: 12px;
	font-weight: 700;
	text-decoration: none;
}

.home-deals-link:hover,
.home-deals-link:focus-visible {
	color: #1E40AF;
	text-decoration: underline;
}

.home-deals-link:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}

.home-deals-empty {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 24px 28px;
	border: 1px solid rgba(191, 219, 254, .26);
	border-radius: var(--radius-lg);
	background: rgba(255, 255, 255, .07);
}

.home-deals-empty-icon {
	display: grid;
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	place-items: center;
	border: 1px solid rgba(139, 228, 255, .32);
	border-radius: var(--radius-md);
	background: rgba(139, 228, 255, .1);
	color: #8BE4FF;
	font-size: 20px;
}

.home-deals-empty h3 {
	margin: 0 0 6px;
	color: #fff;
	font-size: 18px;
	font-weight: 700;
}

.home-deals-empty p {
	margin: 0;
	color: #CBD9EC;
	font-size: 13px;
	line-height: 1.6;
}

.home-deals-empty .home-deals-link {
	color: #8BE4FF;
}

.home-deals-empty .home-deals-link:hover,
.home-deals-empty .home-deals-link:focus-visible {
	color: #fff;
}

.home-info-section {
	--home-info-surface: var(--card-bg);
	--home-info-border: var(--border);
	--home-info-text: var(--text-primary);
	--home-info-muted: var(--text-secondary);
}

.home-info-heading {
	max-width: 650px;
	margin: 0 auto 30px;
	text-align: center;
}

.home-info-eyebrow {
	margin: 0 0 8px;
	color: var(--primary);
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .12em;
	text-transform: uppercase;
}

.home-info-heading h2 {
	margin: 0 0 9px;
	color: var(--home-info-text);
	font-size: 28px;
	font-weight: 700;
	line-height: 1.25;
}

.home-info-heading > p:last-child {
	margin: 0;
	color: var(--home-info-muted);
	font-size: 14px;
	line-height: 1.65;
}

.home-why-grid,
.home-steps-grid,
.home-reviews-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.home-why-card,
.home-review-card {
	min-width: 0;
	padding: 25px;
	border: 1px solid var(--home-info-border);
	border-radius: var(--radius-lg);
	background: var(--home-info-surface);
	box-shadow: var(--shadow-sm);
}

.home-why-card {
	transition: border-color var(--transition), box-shadow var(--transition), transform var(--transition);
}

.home-why-card:hover {
	transform: translateY(-3px);
	border-color: rgba(37, 99, 235, .35);
	box-shadow: var(--shadow-md);
}

.home-info-icon {
	display: inline-grid;
	width: 48px;
	height: 48px;
	place-items: center;
	border: 1px solid var(--primary-soft);
	border-radius: var(--radius-md);
	background: var(--primary-soft);
	color: var(--primary);
	font-size: 19px;
}

.home-why-card h3,
.home-step-card h3 {
	margin: 17px 0 7px;
	color: var(--home-info-text);
	font-size: 16px;
	font-weight: 700;
}

.home-why-card p,
.home-step-card p {
	margin: 0;
	color: var(--home-info-muted);
	font-size: 13px;
	line-height: 1.65;
}

.home-steps-section {
	background: var(--section-bg);
}

.home-steps-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0;
	padding: 0;
	list-style: none;
}

.home-step-card {
	position: relative;
	min-width: 0;
	padding: 24px 20px;
	border: 1px solid var(--home-info-border);
	border-radius: var(--radius-lg);
	background: var(--home-info-surface);
	box-shadow: var(--shadow-sm);
}

.home-step-number {
	position: absolute;
	top: 17px;
	right: 18px;
	color: var(--text-light);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .08em;
}

.home-step-card .home-info-icon {
	margin-top: 16px;
}

.home-step-card h3 {
	margin-top: 16px;
}

.home-delivery-panel {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	align-items: center;
	gap: 26px;
	padding: 30px;
	border: 1px solid var(--home-info-border);
	border-radius: var(--radius-xl);
	background:
		radial-gradient(ellipse at 100% 0, var(--primary-soft), transparent 40%),
		var(--home-info-surface);
	box-shadow: var(--shadow-md);
}

.home-delivery-icon {
	display: grid;
	width: 66px;
	height: 66px;
	place-items: center;
	border: 1px solid var(--primary-soft);
	border-radius: 18px;
	background: var(--primary-soft);
	color: var(--primary);
	font-size: 27px;
}

.home-delivery-copy .home-info-eyebrow {
	margin-bottom: 5px;
}

.home-delivery-copy h2 {
	margin: 0 0 6px;
	color: var(--home-info-text);
	font-size: 23px;
	font-weight: 700;
}

.home-delivery-copy h3 {
	margin: 0 0 7px;
	color: var(--primary);
	font-size: 14px;
	font-weight: 700;
}

.home-delivery-copy > p:not(.home-info-eyebrow) {
	margin: 0;
	color: var(--home-info-muted);
	font-size: 13px;
	line-height: 1.6;
}

.home-delivery-copy .home-delivery-note {
	margin-top: 4px !important;
}

.home-delivery-link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	padding: 12px 16px;
	border: 1px solid var(--primary);
	border-radius: var(--radius-md);
	background: var(--primary);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	white-space: nowrap;
	transition: background-color var(--transition-fast), border-color var(--transition-fast), transform var(--transition-fast);
}

.home-delivery-link:hover,
.home-delivery-link:focus-visible {
	transform: translateY(-1px);
	border-color: var(--primary-dark);
	background: var(--primary-dark);
	color: #fff;
}

.home-delivery-link:focus-visible {
	outline: 3px solid var(--primary-soft);
	outline-offset: 3px;
}

.home-reviews-section {
	background: var(--section-bg);
}

.home-review-card {
	position: relative;
	padding: 27px 25px 22px;
}

.home-review-quote {
	color: var(--primary);
	font-size: 18px;
	opacity: .8;
}

.home-review-card blockquote {
	min-height: 50px;
	margin: 12px 0 18px;
	color: var(--home-info-text);
	font-size: 16px;
	font-weight: 600;
	line-height: 1.55;
}

.home-review-source {
	margin: 0;
	padding-top: 13px;
	border-top: 1px solid var(--home-info-border);
	color: var(--home-info-muted);
	font-size: 11px;
	font-weight: 600;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.home-carousel .single-slide {
	overflow: hidden;
	border-radius: var(--radius-lg);
}

.home-carousel .slider-content {
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	width: 56%;
	padding: 42px 18px 42px 44px;
}

.home-carousel .slider-content > h5 {
	max-width: 100%;
	margin-bottom: 12px;
	color: #8BE4FF;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.home-carousel .slider-content > h5 > span {
	color: inherit;
}

.home-carousel .slider-content > h2 {
	max-width: 300px;
	margin-bottom: 14px;
	color: #fff;
	font-size: 32px;
	font-weight: 700;
	line-height: 1.12;
}

.home-carousel .slider-content > h3 {
	max-width: 290px;
	margin-bottom: 28px;
	color: #DAE7F8;
	font-size: 15px;
	line-height: 1.5;
}

.home-carousel .slider-content > h3 > span {
	color: #fff;
	font-size: inherit;
	font-weight: 700;
}

.home-carousel .slide-btn a {
	display: inline-block;
	padding: 11px 17px;
	border-radius: var(--radius-full);
	background: #fff;
	color: #11305B;
	font-size: 12px;
	font-weight: 700;
	line-height: 1.2;
	text-transform: uppercase;
	transition: color var(--transition-fast), background-color var(--transition-fast), transform var(--transition-fast);
}

.home-carousel .slide-btn a:hover,
.home-carousel .slide-btn a:focus-visible {
	background: #8BE4FF;
	color: #0B1E3B;
	transform: translateY(-1px);
}

.featured-banner {
	overflow: hidden;
	border-radius: var(--radius-lg);
	box-shadow: var(--shadow-md);
}

.featured-banner img {
	display: block;
	width: 100%;
	transition: transform var(--transition-slow);
}

.featured-banner:hover img {
	transform: scale(1.02);
}

html[data-theme="dark"] .header-top a,
html[data-theme="dark"] .header-bottom a,
html[data-theme="dark"] .footer a,
html[data-theme="dark"] .footer-block > ul > li > a,
html[data-theme="dark"] .hm-searchbox .current,
html[data-theme="dark"] .nice-select .option {
	color: var(--text-secondary);
}

@media (max-width: 767px) {
	.home-info-heading {
		margin-bottom: 22px;
	}

	.home-info-heading h2 {
		font-size: 25px;
	}

	.home-why-grid,
	.home-reviews-grid {
		grid-template-columns: 1fr;
		gap: 13px;
	}

	.home-why-card,
	.home-review-card {
		padding: 21px;
	}

	.home-steps-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 13px;
	}

	.home-delivery-panel {
		grid-template-columns: auto minmax(0, 1fr);
		gap: 18px;
		padding: 23px;
	}

	.home-delivery-link {
		grid-column: 2;
		justify-self: start;
	}

	.home-deals-panel {
		grid-template-columns: 1fr;
		gap: 24px;
		padding: 28px;
	}

	.home-deals-intro {
		max-width: 100%;
	}

	.home-deals-intro h2 {
		max-width: 440px;
		font-size: 26px;
	}

	.home-carousel .slider-content {
		box-sizing: border-box;
		width: 62%;
		padding: 30px 12px 30px 28px;
	}

	.home-carousel .slider-content > h2 {
		font-size: 25px;
	}

	.home-carousel .slider-content > h3 {
		max-width: 230px;
		margin-bottom: 20px;
		font-size: 13px;
	}
}

@media (max-width: 479px) {
	.home-info-heading h2 {
		font-size: 23px;
	}

	.home-steps-grid {
		grid-template-columns: 1fr;
	}

	.home-step-card {
		padding: 20px;
	}

	.home-step-card .home-info-icon {
		margin-top: 7px;
	}

	.home-delivery-panel {
		grid-template-columns: 1fr;
		gap: 15px;
		padding: 20px;
		border-radius: var(--radius-lg);
	}

	.home-delivery-icon {
		width: 54px;
		height: 54px;
		border-radius: var(--radius-md);
		font-size: 22px;
	}

	.home-delivery-copy h2 {
		font-size: 21px;
	}

	.home-delivery-link {
		grid-column: 1;
		justify-self: stretch;
	}

	.home-deals-panel {
		gap: 20px;
		padding: 22px 18px;
		border-radius: var(--radius-lg);
	}

	.home-deals-intro h2 {
		font-size: 23px;
	}

	.home-deals-offer-card {
		padding: 20px 17px;
	}

	.home-deals-offer-heading h3 {
		font-size: 27px;
	}

	.home-deals-coupon {
		align-items: flex-start;
		flex-direction: column;
		gap: 6px;
	}

	.home-deals-terms {
		gap: 10px 18px;
	}

	.home-deals-empty {
		align-items: flex-start;
		gap: 14px;
		padding: 19px 16px;
	}

	.home-deals-empty-icon {
		flex-basis: 42px;
		width: 42px;
		height: 42px;
		font-size: 17px;
	}

	.home-carousel .slider-content {
		width: 64%;
		padding-right: 8px;
		padding-left: 22px;
	}

	.home-carousel .slider-content > h5 {
		font-size: 10px;
	}

	.home-carousel .slider-content > h2 {
		font-size: 21px;
	}

	.home-carousel .slider-content > h3 {
		font-size: 11px;
	}

	.home-carousel .slide-btn a {
		padding: 9px 12px;
		font-size: 10px;
	}
}

html[data-theme="dark"] .header-top a:hover,
html[data-theme="dark"] .header-bottom a:hover,
html[data-theme="dark"] .footer a:hover,
html[data-theme="dark"] .footer-block > ul > li > a:hover,
html[data-theme="dark"] .nice-select .option:hover,
html[data-theme="dark"] .nice-select .option.focus,
html[data-theme="dark"] .nice-select .option.selected.focus {
	color: var(--primary-light);
}

html[data-theme="dark"] .store-review-notice {
	background: var(--section-bg);
}

@media (max-width: 767px) {
	.store-theme-action {
		padding: 8px 12px;
	}
}

/* ángaros: header logo, product grid and cards */
.hm-searchbox { position: relative; }
.store-search-dropdown {
	position: absolute;
	top: calc(100% + 6px);
	left: 0;
	right: 0;
	z-index: 1100;
	max-height: 420px;
	overflow-y: auto;
	background: var(--card-bg, #fff);
	color: var(--text-primary, #0f172a);
	border: 1px solid var(--border, #e2e8f0);
	border-radius: 10px;
	box-shadow: 0 12px 28px rgba(0, 0, 0, .18);
}
.store-search-dropdown[hidden] { display: none; }
.store-search-status { padding: 12px 14px; margin: 0; font-size: 12px; line-height: 1.5; color: var(--text-muted, #64748b); }
.hm-searchbox .store-search-option {
	display: flex;
	align-items: center;
	gap: 12px;
	width: 100%;
	padding: 10px 14px;
	border: 0;
	border-top: 1px solid var(--border, #e2e8f0);
	background: transparent;
	color: inherit;
	text-align: left;
	cursor: pointer;
	line-height: 1.5;
}
.hm-searchbox .store-search-option:hover,
.hm-searchbox .store-search-option[aria-selected="true"] { background: var(--section-bg, #f1f5f9); }
.store-search-option img { flex: 0 0 42px; width: 42px; height: 42px; object-fit: contain; border-radius: 4px; }
.store-search-name { flex: 1; min-width: 0; font-size: 13px; overflow-wrap: anywhere; }
.store-search-option small { flex-shrink: 0; font-size: 12px; }
.header-middle .logo { display: flex; align-items: center; min-height: 64px; }
.header-middle .logo a { display: inline-block; line-height: 0; }
.header-middle .logo img { width: auto; height: 64px; max-width: 100%; object-fit: contain; background: transparent; }
.header-middle .logo .header-logo-dark { display: none; }
html[data-theme="dark"] .header-middle .logo .header-logo-light { display: none; }
html[data-theme="dark"] .header-middle .logo .header-logo-dark { display: inline-block; }

.store-product-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; width: 100%; padding: 0 15px; }
.store-product-grid > [class*="col-"] { width: auto; max-width: none; flex: none; padding: 0; min-width: 0; }
.store-product-grid > .col-lg-12 > p { grid-column: 1 / -1; }
.store-product-grid .single-product-wrap { height: 100%; display: flex; flex-direction: column; margin: 0 !important; padding: 0 !important; border: 1px solid var(--border, #e2e8f0); border-radius: 10px; overflow: hidden; background: var(--card-bg, #fff); transition: box-shadow .25s ease, transform .25s ease; }
.store-product-grid > .col-lg-12 { display: flex; }
.store-product-grid > .col-lg-12 > .single-product-wrap { width: 100%; }
.single-product-wrap::before { display: none; }
.single-product-wrap:hover { margin: 0; padding: 0; box-shadow: 0 10px 28px rgba(15, 23, 42, .16); transform: translateY(-3px); }

.single-product-wrap .product-image { position: relative; width: 100%; aspect-ratio: 1 / 1; height: auto; background: #fff; overflow: hidden; display: block; }
.single-product-wrap .product-image > a { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.single-product-wrap .product-image img { width: 100%; height: 100%; max-width: 100%; max-height: none; object-fit: contain; padding: 12px; transition: transform .3s ease; }
.single-product-wrap:hover .product-image img { transform: scale(1.04); }
.single-product-wrap .product-image .sticker { position: absolute; top: 10px; left: 10px; right: auto; z-index: 2; }

.single-product-wrap .product_desc { display: flex; flex-direction: column; flex: 1 1 auto; padding: 14px 16px 16px; position: static; }
.single-product-wrap .product_desc_info { flex: 1 1 auto; padding: 0; }
.single-product-wrap .product-review { padding: 0; margin-bottom: 4px; }
.single-product-wrap .product_name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; min-height: 2.7em; line-height: 1.35; font-size: 14px; }
.single-product-wrap .price-box { margin-top: 8px; }
.single-product-wrap .add-actions { position: static; opacity: 1; bottom: auto; margin: 14px 0 0; padding: 0; text-align: left; }
.single-product-wrap .add-actions-link { display: flex; align-items: center; gap: 8px; margin: 0; padding: 0; list-style: none; width: 100%; }
.single-product-wrap .add-actions-link li { float: none; margin: 0; width: 38px; height: 38px; line-height: 38px; flex: 0 0 38px; border-radius: 6px; }
.single-product-wrap .add-actions-link li.add-cart { flex: 1 1 auto; width: auto; background: var(--primary, #2563eb); border-color: var(--primary, #2563eb); }
.single-product-wrap .add-actions-link li.add-cart > a { color: #fff; font-size: 12px; font-weight: 600; letter-spacing: .03em; white-space: nowrap; }
.single-product-wrap .add-actions-link li.add-cart:hover { background: var(--primary-dark, #1d4ed8); }

.store-featured-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; padding: 0 15px; }
.store-featured-bundle { display: contents; }
.featured-pro-wrapper { display: grid; grid-template-columns: 110px minmax(0, 1fr); gap: 16px; align-items: center; width: 100%; margin: 0 !important; padding: 14px; border: 1px solid var(--border, #e2e8f0); border-radius: 10px; }
.featured-pro-wrapper .product-img, .featured-pro-wrapper .featured-pro-content { float: none; width: auto; padding: 0; }
.featured-pro-wrapper .product-img { width: 110px; height: 110px; display: flex; align-items: center; justify-content: center; background: #fff; border-radius: 8px; overflow: hidden; }
.featured-pro-wrapper .product-img a { display: flex; width: 100%; height: 100%; align-items: center; justify-content: center; }
.featured-pro-wrapper .product-img img { width: 100%; height: 100%; object-fit: contain; padding: 6px; }
.featured-pro-wrapper:hover .featured-price-box { opacity: 1; }
.featured-pro-wrapper .featured-product-action { position: static; opacity: 1; visibility: visible; margin-top: 10px; }
.featured-pro-wrapper .add-actions-link { display: flex; gap: 8px; margin: 0; padding: 0; }
.featured-pro-wrapper .add-actions-link li { float: none; margin: 0; width: 34px; height: 34px; line-height: 34px; }
.featured-pro-wrapper .add-actions-link li.add-cart { width: auto; flex: 1 1 auto; background: var(--primary, #2563eb); border-color: var(--primary, #2563eb); }
.featured-pro-wrapper .add-actions-link li.add-cart > a { color: #fff; font-size: 12px; font-weight: 600; white-space: nowrap; }
.featured-product-name { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

.li-trending-product-content .tab-pane { height: 0; overflow: hidden; }
.li-trending-product-content .tab-pane.active { height: auto; overflow: visible; }
@media (max-width: 1199px) { .store-product-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 991px) { .store-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } .store-featured-grid { grid-template-columns: 1fr; } .header-middle .logo img { height: 52px; } }
@media (max-width: 479px) { .store-product-grid { gap: 10px; padding: 0 8px; } .single-product-wrap .product_desc { padding: 10px; } .featured-pro-wrapper { grid-template-columns: 90px minmax(0, 1fr); } .featured-pro-wrapper .product-img { width: 90px; height: 90px; } }
.single-product-wrap .product_name, .featured-product-name { color: var(--text-primary, #0f172a) !important; }
.single-product-wrap .product_name:hover, .featured-product-name:hover { color: var(--primary, #2563eb) !important; }
.single-product-wrap .product-review .manufacturer a { color: var(--text-muted, #64748b); }

.single-product-wrap .product_name, .featured-product-name { color: #0f172a !important; }
[data-theme="dark"] .single-product-wrap .product_name, [data-theme="dark"] .featured-product-name { color: #e2e8f0 !important; }
.single-product-wrap .add-actions-link li.add-cart > a { background: transparent; text-decoration: none; }

.store-shop-page { padding-top: 40px; padding-bottom: 60px; }
.store-shop-heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 32px; }
.store-shop-eyebrow { margin-bottom: 8px; color: var(--primary-light); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.store-shop-heading h1 { margin-bottom: 14px; color: var(--text-primary); font-size: clamp(26px, 4vw, 38px); line-height: 1.25; }
.store-shop-heading p:last-child { margin: 0; color: var(--text-secondary); }
.store-shop-reset { display: inline-flex; align-items: center; gap: 12px; color: var(--primary-light); font-weight: 600; }
.store-shop-layout { display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 28px; align-items: start; }
.store-shop-sidebar { padding: 24px; background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius-lg); }
.store-shop-filters h2 { margin: 0 0 24px; color: var(--text-primary); font-size: 20px; }
.store-shop-filters > label { display: block; margin: 20px 0 8px; color: var(--text-primary); font-size: 14px; font-weight: 600; }
.store-shop-filters input:not([type="checkbox"]),
.store-shop-filters select { display: block; width: 100%; min-width: 0; height: 44px; margin: 0; padding: 10px 12px; border: 1px solid var(--border); border-radius: var(--radius-sm); color: var(--text-primary); background: var(--body-bg); font-size: 14px; }
.store-shop-filters :is(input, select, button, a):focus-visible { outline: 2px solid var(--primary-light); outline-offset: 3px; }
.store-shop-filters fieldset { margin: 24px 0 0; padding: 0; border: 0; min-width: 0; }
.store-shop-filters legend { margin-bottom: 12px; font-size: 14px; font-weight: 600; color: var(--text-primary); }
.store-shop-price-range { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.store-shop-price-range label { margin-bottom: 6px; font-size: 12px; color: var(--text-secondary); }
.store-shop-filters .store-shop-availability { display: flex; align-items: center; gap: 10px; font-weight: 400; }
.store-shop-availability input { width: 16px; height: 16px; margin: 0; accent-color: var(--primary); }
.store-shop-filters button { width: 100%; margin-top: 24px; border-radius: var(--radius-sm); }
.store-shop-clear { display: block; margin-top: 16px; text-align: center; color: var(--text-secondary); text-decoration: underline; }
.store-shop-results { min-width: 0; }
.store-shop-toolbar { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 12px; margin-bottom: 24px; padding-bottom: 20px; border-bottom: 1px solid var(--border); }
.store-shop-toolbar h2 { margin: 0; font-size: 22px; color: var(--text-primary); }
.store-shop-toolbar p { margin: 0; color: var(--text-muted); }
.store-shop-results .store-product-grid { padding: 0; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.store-shop-results .store-shop-stock { margin: 12px 0 0; color: var(--text-muted); font-size: 13px; }
.store-shop-results .single-product-wrap .add-actions-link li.store-shop-view-product { width: auto; flex: 1 1 auto; height: auto; border: 0; }
.store-shop-results .single-product-wrap .add-actions-link .store-shop-view-product > a { display: block; padding: 0 10px; background: var(--primary); color: var(--white); border: 1px solid var(--primary); border-radius: var(--radius-sm); font-size: 12px; font-weight: 600; text-align: center; }
.store-shop-results .single-product-wrap .add-actions-link .store-shop-view-product > a:hover { background: var(--primary-dark); }
.store-shop-empty { padding: 48px 24px; background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius-lg); text-align: center; }
.store-shop-empty > i { display: block; margin-bottom: 20px; font-size: 28px; color: var(--text-muted); }
.store-shop-empty h3 { margin-bottom: 16px; font-size: 22px; color: var(--text-primary); }
.store-shop-empty p,
.store-shop-empty li { margin-bottom: 16px; color: var(--text-secondary); }
.store-shop-empty a { color: var(--primary-light); text-decoration: underline; }
.store-shop-pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 10px; margin-top: 32px; }
.store-shop-pagination > a,
.store-shop-pagination > span[aria-current] { display: inline-flex; align-items: center; justify-content: center; min-width: 42px; min-height: 42px; padding: 8px 14px; border: 1px solid var(--border); border-radius: var(--radius-sm); background: var(--card-bg); color: var(--text-primary); }
.store-shop-pagination > span[aria-current],
.store-shop-pagination > a:hover { background: var(--primary); border-color: var(--primary); color: var(--white); }
.store-shop-page-count { width: 100%; text-align: center; margin-top: 8px; color: var(--text-muted); }
.hb-menu a[aria-current="page"] { color: var(--primary-light); }
.store-arrivals-hero { position: relative; display: grid; grid-template-columns: minmax(0, 1fr) 230px; gap: 36px; padding: 36px; border: 1px solid var(--border); border-radius: var(--radius-xl); background: linear-gradient(120deg, var(--primary-soft), var(--card-bg) 65%); }
.store-arrivals-hero h1 { max-width: 650px; margin-bottom: 20px; font-size: clamp(30px, 4vw, 46px); }
.store-arrivals-hero > div > p:last-of-type { max-width: 640px; color: var(--text-secondary); font-size: 15px; line-height: 1.8; }
.store-arrivals-hero-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 16px 24px; margin-top: 24px; }
.store-arrivals-hero-actions .li-btn-2 { display: inline-flex; align-items: center; gap: 12px; padding: 0 20px; border-radius: var(--radius-sm); }
.store-arrivals-hero-actions > a:last-child { color: var(--text-primary); font-size: 14px; font-weight: 600; }
.store-arrivals-hero-actions > a:last-child i { margin-left: 8px; }
.store-arrivals-highlights { display: grid; gap: 16px; margin: 0; padding: 24px; border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--card-bg); }
.store-arrivals-highlights > div + div { padding-top: 16px; border-top: 1px solid var(--border); }
.store-arrivals-highlights dt { margin-bottom: 6px; color: var(--text-muted); font-size: 12px; font-weight: 500; text-transform: uppercase; letter-spacing: .04em; }
.store-arrivals-highlights dd { margin: 0; color: var(--text-primary); font-size: 22px; font-weight: 600; line-height: 1.4; }
.store-arrivals-highlights time { font-size: 18px; }
.store-arrivals-guide { display: flex; align-items: flex-start; gap: 16px; margin: -8px 0 32px; padding: 20px 24px; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--card-bg); }
.store-arrivals-guide > i { flex: 0 0 auto; margin-top: 3px; color: var(--primary-light); font-size: 22px; }
.store-arrivals-guide p { margin: 0; color: var(--text-secondary); font-size: 14px; line-height: 1.8; }
.store-arrivals-guide strong { color: var(--text-primary); }
.store-arrivals-active-filters { display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 24px; }
.store-arrivals-active-filters > a { display: inline-flex; align-items: center; gap: 10px; max-width: 100%; padding: 8px 12px; border: 1px solid var(--border); border-radius: var(--radius-full); background: var(--primary-soft); color: var(--text-primary); font-size: 13px; overflow-wrap: anywhere; }
.store-arrivals-active-filters > a:hover { border-color: var(--primary); }
.store-arrivals-page .store-arrival-date { display: flex; flex-wrap: wrap; align-items: center; gap: 5px; margin: 10px 0 0; color: var(--text-muted); font-size: 12px; line-height: 1.6; }
.store-arrivals-page .store-arrival-date i { margin-right: 3px; }
.store-arrivals-page #shopResultsTitle { scroll-margin-top: 90px; }
.store-bestsellers-page .store-arrivals-hero { background: linear-gradient(120deg, var(--secondary-soft), var(--card-bg) 65%); }
.store-bestsellers-page .store-arrivals-hero .store-shop-eyebrow,
.store-bestsellers-page .store-arrivals-guide > i { color: var(--secondary-light); }
.store-bestsellers-page .store-arrivals-highlights .store-sales-period-label { font-size: 18px; }
.store-bestsellers-page .store-arrivals-highlights { gap: 12px; }
.store-bestseller-sales { display: flex; align-items: center; flex-wrap: wrap; gap: 6px; margin: 12px 0 0; color: var(--text-primary); font-size: 13px; font-weight: 600; line-height: 1.6; }
.store-bestseller-sales > i { color: var(--secondary-light); }
.store-bestseller-sales > span { flex-basis: 100%; color: var(--text-muted); font-size: 12px; font-weight: 400; }
.store-bestsellers-page .product-image .sticker { width: auto; height: auto; min-width: 46px; padding: 6px 10px; border-radius: var(--radius-full); line-height: 1.5; background: var(--secondary); color: var(--white); font-size: 11px; }
.store-bestsellers-empty-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px 24px; margin-top: 24px; }
.store-deals-page .store-arrivals-hero { background: linear-gradient(120deg, var(--accent-soft), var(--card-bg) 65%); }
.store-deals-page .store-arrivals-highlights .store-deals-stat-text,
.store-deals-page .store-arrivals-highlights .store-deals-stat-text time { font-size: 16px; }
.store-deals-page #currentOffersTitle { scroll-margin-top: 90px; }
.store-deals-filter-form { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)) auto auto; gap: 16px; align-items: end; padding: 24px; margin-bottom: 28px; border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--card-bg); }
.store-deals-filter-form label,
.store-deal-code-control label { display: block; margin: 0 0 8px; color: var(--text-primary); font-size: 13px; font-weight: 600; }
.store-deals-filter-form :is(input, select),
.store-deal-code-control input { width: 100%; min-width: 0; height: 44px; margin: 0; padding: 10px 12px; color: var(--text-primary); background: var(--body-bg); border: 1px solid var(--border); border-radius: var(--radius-sm); font-size: 14px; }
.store-deals-filter-form > button { border-radius: var(--radius-sm); white-space: nowrap; }
.store-deals-filter-form > a { align-self: center; padding-top: 24px; color: var(--text-secondary); text-decoration: underline; }
.store-deals-filter-form > p { grid-column: 1 / -1; margin: 0; color: var(--text-muted); font-size: 13px; line-height: 1.7; }
.store-deals-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.store-deal-card { display: flex; flex-direction: column; min-width: 0; padding: 28px; background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius-lg); box-shadow: var(--shadow-sm); }
.store-deal-card-heading > span { display: flex; align-items: center; gap: 8px; color: var(--text-muted); font-size: 13px; }
.store-deal-card-heading h3 { margin: 16px 0 10px; font-size: 34px; line-height: 1.2; color: var(--text-primary); }
.store-deal-card-heading p { margin: 0 0 24px; color: var(--text-secondary); }
.store-deal-terms { display: grid; gap: 12px; margin: 0 0 24px; padding: 20px 0; border-top: 1px dashed var(--border); border-bottom: 1px dashed var(--border); }
.store-deal-terms > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 20px; }
.store-deal-terms dt { color: var(--text-muted); font-weight: 400; font-size: 13px; }
.store-deal-terms dd { margin: 0; color: var(--text-primary); font-size: 13px; text-align: right; overflow-wrap: anywhere; }
.store-deal-estimate { margin-bottom: 24px; padding: 16px; border-radius: var(--radius-sm); background: var(--primary-soft); }
.store-deal-estimate strong { display: block; margin-bottom: 8px; color: var(--text-primary); font-size: 15px; }
.store-deal-estimate p { margin: 0; color: var(--text-secondary); font-size: 13px; line-height: 1.7; }
.store-deal-code-control { margin-top: auto; }
.store-deal-code-control > div { display: flex; gap: 10px; }
.store-deal-code-control input { font-family: monospace; }
.store-deal-copy { flex-shrink: 0; min-height: 44px; padding: 8px 16px; border: 1px solid var(--primary); border-radius: var(--radius-sm); background: var(--primary); color: var(--white); font-size: 13px; font-weight: 600; }
.store-deal-copy:hover { background: var(--primary-dark); }
.store-deal-copy:disabled { opacity: .6; cursor: wait; }
.store-deal-copy[hidden] { display: none; }
.store-deal-copy-status { margin: 10px 0 0; color: var(--text-secondary); font-size: 13px; line-height: 1.7; }
.store-deal-copy-status:empty { display: none; }
.store-deal-card-actions { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-top: 24px; }
.store-deal-card-actions a { color: var(--primary-light); font-size: 14px; font-weight: 600; }
.store-deal-card-actions i { margin-left: 6px; }
.store-deals-empty-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 16px 24px; }
.store-deals-page .store-deals-empty-icon { display: block; margin-bottom: 20px; font-size: 32px; color: var(--accent); }
.store-deals-help { margin-top: 48px; }
.store-deals-help .store-shop-toolbar > a { color: var(--primary-light); }
.store-deals-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; padding: 0; margin: 0 0 32px; list-style: none; }
.store-deals-steps > li { padding: 24px; background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius-lg); }
.store-deals-steps > li > span { display: inline-flex; align-items: center; justify-content: center; width: 38px; height: 38px; margin-bottom: 18px; border-radius: var(--radius-full); background: var(--primary-soft); color: var(--primary-light); font-weight: 600; }
.store-deals-steps h3 { margin-bottom: 12px; color: var(--text-primary); font-size: 18px; }
.store-deals-steps p { margin: 0; color: var(--text-secondary); font-size: 14px; line-height: 1.8; }
.store-deals-faq { border: 1px solid var(--border); border-radius: var(--radius-lg); background: var(--card-bg); }
.store-deals-faq details { padding: 20px 24px; }
.store-deals-faq details + details { border-top: 1px solid var(--border); }
.store-deals-faq summary { cursor: pointer; color: var(--text-primary); font-weight: 600; line-height: 1.6; }
.store-deals-faq details p { margin: 16px 0 0; color: var(--text-secondary); line-height: 1.8; }
.store-deals-page :is(a, button, input, select, summary):focus-visible { outline: 2px solid var(--primary-light); outline-offset: 3px; }
@media (max-width: 991px) {
	.store-deals-filter-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.store-deals-filter-form > a { padding-top: 0; }
	.store-deals-steps { gap: 16px; }
}
@media (max-width: 767px) {
	.store-deals-grid,
	.store-deals-steps { grid-template-columns: minmax(0, 1fr); }
	.store-deal-card { padding: 24px; }
}
@media (max-width: 479px) {
	.store-deals-filter-form { grid-template-columns: minmax(0, 1fr); padding: 20px; }
	.store-deals-filter-form > a { text-align: center; }
	.store-deal-card { padding: 20px; }
	.store-deal-code-control > div { flex-wrap: wrap; }
	.store-deal-code-control button { width: 100%; }
}
@media (max-width: 991px) {
	.store-arrivals-hero { grid-template-columns: minmax(0, 1fr); gap: 28px; padding: 28px; }
	.store-arrivals-highlights { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding: 20px; }
	.store-arrivals-highlights > div + div { padding: 0 0 0 16px; border-top: 0; border-left: 1px solid var(--border); }
}
@media (max-width: 575px) {
	.store-arrivals-hero { padding: 24px 20px; }
	.store-arrivals-highlights { grid-template-columns: minmax(0, 1fr); }
	.store-arrivals-highlights > div + div { padding: 12px 0 0; border-top: 1px solid var(--border); border-left: 0; }
	.store-arrivals-guide { padding: 18px; gap: 12px; }
}
@media (max-width: 1199px) {
	.store-shop-layout { grid-template-columns: 230px minmax(0, 1fr); gap: 20px; }
	.store-shop-results .store-product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
	.store-shop-sidebar { padding: 20px; }
}
@media (max-width: 767px) {
	.store-shop-page { padding-top: 28px; }
	.store-shop-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
	.store-shop-results .store-product-grid { gap: 12px; }
}

.store-product-page .single-product-area { row-gap: 32px; }
.store-product-page .product-details-images .lg-image img { width: 100%; height: clamp(320px, 55vh, 560px); object-fit: contain; border-radius: var(--radius-md); }
.store-product-page .product-details-thumbs { margin-top: 16px; }
.store-product-page .product-details-thumbs .sm-image img { width: 100%; height: 80px; object-fit: contain; padding: 6px; border: 1px solid var(--border); border-radius: var(--radius-sm); }
.store-product-page .product-details-view-content { padding: 28px; border: 1px solid var(--border); border-radius: var(--radius-lg); }
.store-product-page .product-info > .product-details-ref { display: block; margin: 0 0 16px; }
.store-product-page .store-product-title { margin: 0 0 18px; font-size: clamp(24px, 3vw, 36px); line-height: 1.25; color: var(--text-primary); overflow-wrap: anywhere; }
.store-product-page .store-product-rating { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin: 20px 0; }
.store-product-page .product-info > .price-box { margin: 0 0 24px; padding: 0; }
.store-product-page .product-info > .price-box .new-price { font-size: 30px; line-height: 1.3; }
.store-product-page .product-desc { margin: 0 0 24px; padding: 0 0 20px; color: var(--text-secondary); }
.store-product-page .store-product-stock { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 24px 0; }
.store-product-page .store-cart-form { padding-top: 24px; border-top: 1px solid var(--border); }
.store-product-page .store-cart-form > label { display: block; margin-bottom: 12px; font-weight: 600; }
.store-product-page .store-variant-select { margin-bottom: 20px; }
.store-product-page .store-cart-actions { gap: 16px; flex-wrap: wrap; }
.store-product-page .store-cart-message:empty { display: none; }
.store-product-page .store-cart-message:not(:empty) { margin-top: 16px; }
.store-product-page .store-product-details { margin-top: 24px; }
.store-product-page .li-product-menu { display: flex; flex-wrap: wrap; gap: 8px 24px; padding-bottom: 12px; }
.store-product-page .li-product-menu > li { margin: 0; padding: 0; }
.store-product-page .li-product-menu > li::after { display: none; }
.store-product-page .li-product-menu > li > a { display: block; padding: 12px 0; line-height: 1.5; }
.store-product-page .store-product-details > .tab-content { margin-top: 24px; padding: 32px; background: var(--card-bg); border: 1px solid var(--border); border-radius: var(--radius-lg); }
.store-product-page .product-description,
.store-product-page .product-details-manufacturer,
.store-product-page .product-reviews { margin: 0; padding: 0; }
.store-product-page .tab-pane { overflow-wrap: anywhere; scroll-margin-top: 90px; }
.store-product-page .product-details-manufacturer p { display: flex; flex-wrap: wrap; gap: 12px 24px; margin: 0; padding: 16px 0; border-bottom: 1px solid var(--border); }
.store-product-page .product-details-manufacturer p:last-child { border-bottom: 0; }
.store-product-page .product-details-manufacturer p > span { min-width: 100px; font-weight: 600; color: var(--text-primary); }
.store-product-page .store-rich-content { font-size: 15px; line-height: 1.85; overflow-wrap: anywhere; }
.store-product-page .store-rich-content p { margin: 0 0 18px; font-size: inherit; line-height: inherit; }
.store-product-page .store-rich-content h2,
.store-product-page .store-rich-content h3,
.store-product-page .store-rich-content h4,
.store-product-page .store-rich-content h5,
.store-product-page .store-rich-content h6 { margin: 28px 0 14px; line-height: 1.4; color: var(--text-primary); }
.store-product-page .store-rich-content h2 { font-size: 24px; }
.store-product-page .store-rich-content h3 { font-size: 20px; }
.store-product-page .store-rich-content h4,
.store-product-page .store-rich-content h5,
.store-product-page .store-rich-content h6 { font-size: 17px; }
.store-product-page .store-rich-content ul,
.store-product-page .store-rich-content ol { margin: 0 0 20px; padding-left: 26px; }
.store-product-page .store-rich-content ul { list-style: disc; }
.store-product-page .store-rich-content ol { list-style: decimal; }
.store-product-page .store-rich-content li { margin-bottom: 8px; }
.store-product-page .store-rich-content li > ul,
.store-product-page .store-rich-content li > ol { margin-top: 8px; }
.store-product-page .store-rich-content a { color: var(--primary-light); text-decoration: underline; }
.store-product-page .store-rich-content img { display: block; max-width: 100%; height: auto; margin: 20px auto; border-radius: var(--radius-sm); }
.store-product-page .store-rich-content blockquote { margin: 20px 0; padding: 16px 20px; border-left: 3px solid var(--primary); background: var(--primary-soft); }
.store-product-page .store-rich-content table { display: block; max-width: 100%; overflow-x: auto; margin: 20px 0; border-collapse: collapse; }
.store-product-page .store-rich-content th,
.store-product-page .store-rich-content td { padding: 12px 16px; border: 1px solid var(--border); text-align: left; }
.store-product-page .store-rich-content th { background: var(--section-bg); font-weight: 600; }
.store-product-page .store-rich-content > :first-child { margin-top: 0; }
.store-product-page .store-rich-content > :last-child { margin-bottom: 0; }
.store-product-page .store-related-products .li-section-title { margin-bottom: 28px; }
@media (max-width: 991px) {
	.store-product-page .product-details-view-content { padding: 20px; }
	.store-product-page .store-product-details > .tab-content { padding: 24px; }
}
@media (max-width: 767px) {
	.store-product-page .li-product-menu { gap: 4px 20px; }
	.store-product-page .li-product-menu > li > a { font-size: 14px; }
	.store-product-page .store-product-details > .tab-content { padding: 20px; }
}
