﻿/* Shop + Blog pages â€” hero, grid, single product gallery, article layout */

:root {
	--hl-page-bg: #2e2e2e;
	--hl-page-surface: #353535;
	--hl-page-surface-2: #3d3d3d;
	--hl-page-border: rgba(255, 255, 255, 0.1);
	--hl-page-text: #f4efe8;
	--hl-page-muted: rgba(244, 239, 232, 0.68);
	--hl-page-accent: var(--maincolor, #e0b56a);
	--hl-page-accent-2: #c9973f;
	--hl-page-radius: 12px;
	--hl-page-shadow: 0 16px 40px rgba(0, 0, 0, 0.32);
}

/* â”€â”€â”€ Page hero banner + breadcrumb (phongxonghoi.vn style) â”€â”€â”€ */
.hl-page-hero {
	--hl-hero-min-h: clamp(240px, 34vh, 360px);
	position: relative;
	display: flex;
	align-items: center;
	min-height: var(--hl-hero-min-h);
	padding: 0;
	overflow: hidden;
	background: linear-gradient(135deg, #2a2420 0%, #3a3a3a 100%);
	border-bottom: 3px solid var(--hl-page-accent);
}

.hl-page-hero__bg {
	position: absolute;
	inset: 0;
	background-image: var(--hl-hero-bg, none);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transform: scale(1.03);
	transition: transform 10s ease;
}

.hl-page-hero--has-image:hover .hl-page-hero__bg {
	transform: scale(1.07);
}

.hl-page-hero__overlay {
	position: absolute;
	inset: 0;
	background:
		linear-gradient(105deg, rgba(20, 16, 14, 0.92) 0%, rgba(28, 24, 20, 0.72) 42%, rgba(20, 16, 14, 0.82) 100%),
		linear-gradient(180deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.45) 100%);
}

.hl-page-hero__glow {
	position: absolute;
	right: -8%;
	top: 50%;
	width: min(520px, 55vw);
	height: min(520px, 55vw);
	transform: translateY(-50%);
	border-radius: 50%;
	background: radial-gradient(circle, rgba(var(--hl-page-accent-rgb, 224, 181, 106), 0.14) 0%, transparent 70%);
	pointer-events: none;
}

.hl-page-hero__fade {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: 48px;
	background: linear-gradient(180deg, transparent 0%, var(--hl-page-bg) 100%);
	pointer-events: none;
	z-index: 1;
}

.hl-page-hero__inner {
	position: relative;
	z-index: 2;
	width: 100%;
	padding: 44px 15px 48px;
}

.hl-page-hero__breadcrumb {
	margin-bottom: 16px;
}

.hl-page-hero__breadcrumb-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 4px 0;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hl-page-hero__breadcrumb-item {
	display: inline-flex;
	align-items: center;
	max-width: 100%;
	color: rgba(244, 239, 232, 0.58);
	font-family: "Open Sans", sans-serif;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.4;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.hl-page-hero__breadcrumb-item:not(:last-child)::after {
	content: "/";
	margin: 0 10px;
	color: rgba(var(--hl-page-accent-rgb, 224, 181, 106), 0.45);
	font-family: "Open Sans", sans-serif;
	font-size: 11px;
	font-weight: 400;
	letter-spacing: 0;
}

.hl-page-hero__breadcrumb-item a {
	color: rgba(244, 239, 232, 0.78);
	text-decoration: none;
	transition: color 0.2s ease;
}

.hl-page-hero__breadcrumb-item a:hover {
	color: var(--hl-page-accent);
}

.hl-page-hero__breadcrumb-item span[aria-current="page"] {
	color: var(--hl-page-accent);
	font-weight: 700;
	max-width: min(420px, 100%);
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.hl-page-hero__content {
	position: relative;
	max-width: 920px;
	padding-left: 18px;
	border-left: 3px solid var(--hl-page-accent);
}

.hl-page-hero__badge {
	display: inline-flex;
	align-items: center;
	min-height: auto;
	margin-bottom: 10px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	color: var(--hl-page-accent);
	font-family: "Roboto Condensed", sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.24em;
	text-transform: uppercase;
	box-shadow: none;
}

.hl-page-hero__badge::before {
	content: "";
	display: inline-block;
	width: 28px;
	height: 1px;
	margin-right: 10px;
	background: var(--hl-page-accent);
	vertical-align: middle;
}

.hl-page-hero__title {
	margin: 0;
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
	font-size: clamp(24px, 3.2vw, 38px);
	font-weight: 700;
	line-height: 1.22;
	letter-spacing: 0.03em;
	text-transform: uppercase;
	text-shadow: 0 4px 18px rgba(0, 0, 0, 0.35);
}

.hl-page-hero__subtitle {
	margin: 14px 0 0;
	max-width: 680px;
	padding-top: 12px;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	color: rgba(244, 239, 232, 0.78);
	font-family: "Open Sans", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.65;
	letter-spacing: 0;
	text-transform: none;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	line-clamp: 2;
	overflow: hidden;
}

/* â”€â”€â”€ Shared page shell â”€â”€â”€ */
.hl-shop-page,
.hl-blog-page {
	padding: 32px 0 56px;
	background: var(--hl-page-bg);
	color: var(--hl-page-text);
}

.hl-shop-page {
	--hl-page-accent: #38bdf8;
	--hl-page-accent-2: #0ea5e9;
	--hl-page-accent-deep: #0284c7;
	--hl-page-accent-rgb: 56, 189, 248;
}

body.blog,
body.archive,
body.category,
body.tag,
body.search,
body.error404,
body.single-post,
body.page,
.hl-blog-page,
.hl-single-post,
.hl-static-page,
.hl-search-page,
.hl-contact-page,
.hl-404-page {
	--hl-page-accent: #87ceeb;
	--hl-page-accent-2: #5eb8e8;
	--hl-page-accent-deep: #4aadde;
	--hl-page-accent-rgb: 135, 206, 235;
}

.hl-shop-page .container,
.hl-blog-page .container {
	max-width: 1200px;
}

.hl-page-content {
	padding-top: 8px;
	padding-bottom: 48px;
}

/* â”€â”€â”€ Static pages (Giá»›i thiá»‡u, liÃªn há»‡, â€¦) â”€â”€â”€ */
.hl-static-page .hl-page-content {
	max-width: 100%;
	margin: 0 auto;
}

.hl-static-page .hl-page-card {
	padding: 34px 38px 38px;
	border-radius: var(--hl-page-radius);
	background: linear-gradient(180deg, var(--hl-page-surface) 0%, #12161d 100%);
	border: 1px solid var(--hl-page-border);
	box-shadow: var(--hl-page-shadow);
}

.hl-static-page .hl-page-prose,
.hl-static-page .entry-content {
	color: var(--hl-page-text);
	font-family: "Open Sans", sans-serif;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.9;
	letter-spacing: 0.01em;
	word-wrap: break-word;
}

.hl-static-page .hl-page-prose > *:first-child,
.hl-static-page .entry-content > *:first-child {
	margin-top: 0;
}

.hl-static-page .hl-page-prose > *:last-child,
.hl-static-page .entry-content > *:last-child {
	margin-bottom: 0;
}

.hl-static-page .hl-page-prose p,
.hl-static-page .entry-content p {
	margin: 0 0 1.15em;
	color: rgba(244, 239, 232, 0.82);
}

.hl-static-page .hl-page-prose > p:first-of-type,
.hl-static-page .entry-content > p:first-of-type {
	font-size: 17px;
	line-height: 1.95;
	color: rgba(244, 239, 232, 0.92);
}

.hl-static-page .hl-page-prose h1,
.hl-static-page .hl-page-prose h2,
.hl-static-page .hl-page-prose h3,
.hl-static-page .hl-page-prose h4,
.hl-static-page .hl-page-prose h5,
.hl-static-page .hl-page-prose h6,
.hl-static-page .entry-content h1,
.hl-static-page .entry-content h2,
.hl-static-page .entry-content h3,
.hl-static-page .entry-content h4,
.hl-static-page .entry-content h5,
.hl-static-page .entry-content h6 {
	margin: 1.75em 0 0.75em;
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.02em;
}

.hl-static-page .hl-page-prose h2,
.hl-static-page .entry-content h2 {
	font-size: clamp(22px, 2.4vw, 28px);
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(var(--hl-page-accent-rgb), 0.22);
}

.hl-static-page .hl-page-prose h2::after,
.hl-static-page .entry-content h2::after {
	content: "";
	display: block;
	width: 56px;
	height: 3px;
	margin-top: 10px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--hl-page-accent), var(--hl-page-accent-2));
}

.hl-static-page .hl-page-prose h3,
.hl-static-page .entry-content h3 {
	font-size: clamp(19px, 2vw, 23px);
	color: var(--hl-page-accent);
}

.hl-static-page .hl-page-prose a,
.hl-static-page .entry-content a {
	color: var(--hl-page-accent);
	text-decoration: underline;
	text-decoration-color: rgba(var(--hl-page-accent-rgb), 0.45);
	text-underline-offset: 3px;
	transition: color 0.2s ease, text-decoration-color 0.2s ease;
}

.hl-static-page .hl-page-prose a:hover,
.hl-static-page .entry-content a:hover {
	color: #fff;
	text-decoration-color: rgba(var(--hl-page-accent-rgb), 0.85);
}

.hl-static-page .hl-page-prose ul,
.hl-static-page .hl-page-prose ol,
.hl-static-page .entry-content ul,
.hl-static-page .entry-content ol {
	margin: 0 0 1.25em;
	padding-left: 1.35em;
	color: rgba(244, 239, 232, 0.82);
}

.hl-static-page .hl-page-prose li,
.hl-static-page .entry-content li {
	margin-bottom: 0.55em;
}

.hl-static-page .hl-page-prose ul li::marker,
.hl-static-page .entry-content ul li::marker {
	color: var(--hl-page-accent);
}

.hl-static-page .hl-page-prose blockquote,
.hl-static-page .entry-content blockquote {
	margin: 1.5em 0;
	padding: 18px 22px;
	border-left: 4px solid var(--hl-page-accent);
	border-radius: 0 12px 12px 0;
	background: rgba(var(--hl-page-accent-rgb), 0.08);
	color: rgba(244, 239, 232, 0.88);
	font-style: italic;
}

.hl-static-page .hl-page-prose img,
.hl-static-page .entry-content img {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 1.5em auto;
	border-radius: 12px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.28);
}

.hl-static-page .hl-page-prose table,
.hl-static-page .entry-content table {
	width: 100%;
	margin: 1.5em 0;
	border-collapse: collapse;
	font-size: 15px;
}

.hl-static-page .hl-page-prose th,
.hl-static-page .hl-page-prose td,
.hl-static-page .entry-content th,
.hl-static-page .entry-content td {
	padding: 12px 14px;
	border: 1px solid var(--hl-page-border);
}

.hl-static-page .hl-page-prose th,
.hl-static-page .entry-content th {
	background: rgba(var(--hl-page-accent-rgb), 0.12);
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
}

.hl-static-page .page-links {
	margin-top: 28px;
	padding-top: 18px;
	border-top: 1px solid var(--hl-page-border);
	color: var(--hl-page-muted);
	font-size: 14px;
}

.hl-shop-page__layout,
.hl-blog-page__layout {
	display: grid;
	gap: 32px;
	align-items: start;
}

.hl-shop-page__layout {
	grid-template-columns: 280px minmax(0, 1fr);
}

.hl-blog-page__layout {
	grid-template-columns: minmax(0, 1fr) 280px;
	gap: 24px;
}

.hl-blog-page__sidebar {
	min-width: 0;
}

.hl-blog-page__sidebar .sidebar-inner,
.hl-blog-page__sidebar .woodmart-sidebar-scroll,
.hl-blog-page__sidebar .widget-area,
.hl-blog-page__sidebar .woodmart-sidebar-content {
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

.hl-blog-page__sidebar .hl-sidebar-card {
	padding: 18px 16px;
}

.hl-blog-page__sidebar .title-head,
.hl-blog-page__sidebar .widget-title {
	display: flex;
	align-items: center;
	gap: 8px;
	margin: 0 0 12px;
	color: var(--hl-page-accent) !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.hl-blog-page__sidebar .title-head::before,
.hl-blog-page__sidebar .widget-title::before {
	content: "";
	flex: 0 0 4px;
	width: 4px;
	height: 14px;
	border-radius: 999px;
	background: linear-gradient(180deg, var(--hl-page-accent), var(--hl-page-accent-2));
}

.hl-blog-page__sidebar .title-head:not(:first-child),
.hl-blog-page__sidebar .widget + .widget .widget-title {
	margin-top: 18px;
	padding-top: 16px;
	border-top: 1px solid var(--hl-page-border);
}

.hl-blog-page__sidebar .search-form {
	position: relative;
	display: flex;
	align-items: stretch;
	gap: 8px;
	margin: 0 0 4px;
}

.hl-blog-page__sidebar .search-form label {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.hl-blog-page__sidebar .search-form label::before,
.hl-blog-page__sidebar .search-form label::after {
	display: none !important;
	content: none !important;
}

.hl-blog-page__sidebar .search-field {
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	min-height: 42px;
	margin: 0;
	padding: 0 14px;
	border: 1px solid rgba(255, 255, 255, 0.12);
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.04);
	color: #fff;
	font-size: 14px;
	line-height: 1.4;
	box-shadow: none;
}

.hl-blog-page__sidebar .search-field::placeholder {
	color: rgba(255, 255, 255, 0.42);
}

.hl-blog-page__sidebar .search-field:focus {
	outline: none;
	border-color: rgba(var(--hl-page-accent-rgb), 0.55);
	box-shadow: 0 0 0 3px rgba(var(--hl-page-accent-rgb), 0.12);
}

.hl-blog-page__sidebar .search-submit {
	position: static !important;
	top: auto !important;
	right: auto !important;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	flex: 0 0 42px;
	width: 42px !important;
	min-width: 42px !important;
	height: 42px !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: visible !important;
	border: 0 !important;
	border-radius: 10px !important;
	background: linear-gradient(135deg, var(--hl-page-accent) 0%, var(--hl-page-accent-2) 100%) !important;
	color: #1a1a1a !important;
	font-size: 0 !important;
	line-height: 1;
	cursor: pointer;
	transition: filter 0.2s ease, transform 0.2s ease;
}

.hl-blog-page__sidebar .search-submit svg,
.hl-blog-page__sidebar .search-submit .screen-reader-text {
	display: none !important;
}

.hl-blog-page__sidebar .search-submit::before {
	content: "\f002";
	font-family: "Font Awesome 6 Free";
	font-weight: 900;
	font-size: 15px;
	line-height: 1;
	color: #1a1a1a;
}

.hl-blog-page__sidebar .search-submit:hover {
	filter: brightness(1.06);
	transform: translateY(-1px);
}

.hl-blog-page__sidebar .widget-area > ul,
.hl-blog-page__sidebar .widget ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.hl-blog-page__sidebar .widget-area > ul li,
.hl-blog-page__sidebar .widget ul li {
	position: relative;
	margin: 0 0 4px;
	padding: 0;
	list-style: none;
}

.hl-blog-page__sidebar .widget-area > ul li::before,
.hl-blog-page__sidebar .widget ul li::before {
	display: none !important;
	content: none !important;
}

.hl-blog-page__sidebar .widget-area > ul li a,
.hl-blog-page__sidebar .widget ul li a {
	display: block;
	padding: 9px 12px;
	border-radius: 8px;
	color: rgba(244, 239, 232, 0.78) !important;
	font-size: 14px;
	line-height: 1.45;
	text-decoration: none;
	transition: color 0.2s ease, background 0.2s ease, padding-left 0.2s ease;
}

.hl-blog-page__sidebar .widget-area > ul li a:hover,
.hl-blog-page__sidebar .widget ul li a:hover {
	padding-left: 16px;
	background: rgba(var(--hl-page-accent-rgb), 0.1);
	color: #fff !important;
}

.hl-blog-page__sidebar .widget-area > ul li.current-cat > a,
.hl-blog-page__sidebar .widget ul li.current-cat > a {
	background: rgba(var(--hl-page-accent-rgb), 0.16);
	color: #fff !important;
	font-weight: 700;
}

.hl-shop-page__sidebar {
	min-width: 0;
}

.hl-shop-page .sidebar-shop {
	float: none !important;
	position: static !important;
	top: auto !important;
	left: auto !important;
	right: auto !important;
	width: auto !important;
	height: auto !important;
	padding-top: 0;
	padding-left: 0;
	overflow: visible !important;
	z-index: auto !important;
}

.hl-shop-page__main,
.hl-blog-page__main {
	min-width: 0;
}

/* â”€â”€â”€ Sidebar cards â”€â”€â”€ */
.hl-sidebar-card {
	padding: 22px 20px;
	border-radius: var(--hl-page-radius);
	background: linear-gradient(180deg, var(--hl-page-surface) 0%, #12161d 100%);
	border: 1px solid var(--hl-page-border);
	box-shadow: var(--hl-page-shadow);
}

.hl-sidebar-card--sticky {
	position: sticky;
	top: 96px;
}

.hl-sidebar-card__title {
	margin: 0 0 16px;
	padding-bottom: 12px;
	border-bottom: 1px solid var(--hl-page-border);
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.hl-sidebar-card .widget,
.hl-sidebar-card .aside-content {
	margin-bottom: 18px;
}

.hl-sidebar-card .widget:last-child,
.hl-sidebar-card .aside-content:last-child {
	margin-bottom: 0;
}

.hl-sidebar-card .title-head,
.hl-sidebar-card .widget-title {
	margin: 0 0 12px;
	color: var(--hl-page-accent);
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.hl-sidebar-card a,
.hl-sidebar-card li,
.hl-sidebar-card .product_list_widget li a {
	color: var(--hl-page-muted) !important;
	font-size: 14px;
	line-height: 1.6;
}

.hl-sidebar-card a:hover {
	color: var(--hl-page-accent) !important;
}

/* â”€â”€â”€ Shop toolbar â”€â”€â”€ */
.hl-shop-toolbar {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: flex-end;
	gap: 12px;
	margin-bottom: 24px;
	padding: 14px 18px;
	border-radius: 12px;
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--hl-page-border);
}

.hl-shop-toolbar .hl-shop-filter-toggle {
	margin-right: auto;
}

.hl-shop-toolbar .woocommerce-result-count,
.hl-shop-toolbar .woocommerce-ordering {
	margin: 0;
	color: var(--hl-page-muted);
	font-size: 14px;
}

.hl-shop-toolbar .woocommerce-ordering select {
	min-height: 40px;
	padding: 0 12px;
	border-radius: 8px;
	border: 1px solid var(--hl-page-border);
	background: var(--hl-page-surface-2);
	color: var(--hl-page-text);
}

/* â”€â”€â”€ Product grid (shop archive + single related) â”€â”€â”€ */
.hl-shop-page .hl-home-products {
	padding-bottom: 8px;
}

.hl-shop-page .hl-home-products__grid,
.hl-shop-page .hl-shop-grid,
.hl-single-product-page .hl-related-products ul.products {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 28px 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

/* Override legacy WooCommerce float layout on shop archive */
.hl-shop-page ul.products {
	display: grid !important;
	float: none !important;
	clear: both !important;
	width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.hl-shop-page ul.products::before,
.hl-shop-page ul.products::after {
	display: none !important;
	content: none !important;
}

.hl-shop-page ul.products li.product,
.hl-shop-page ul.products > li {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	clear: none !important;
	font-size: inherit !important;
	text-align: inherit !important;
}

.hl-shop-page ul.products li.product h2,
.hl-shop-page ul.products li.product h3 {
	margin: 0;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	text-transform: none;
}

.hl-shop-page ul.products li.product img {
	margin: 0;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card,
.hl-single-product-page .hl-related-products .hl-product-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__inner {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border-radius: 14px;
	background: linear-gradient(180deg, #171717 0%, #101010 100%);
	border: 1px solid rgba(255, 255, 255, 0.09);
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.28);
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__inner:hover {
	transform: translateY(-6px);
	border-color: rgba(56, 189, 248, 0.42);
	box-shadow: 0 20px 44px rgba(0, 0, 0, 0.42);
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__media {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1 / 1;
	background: #1f1f1f;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__media-link {
	display: block;
	position: absolute;
	inset: 0;
	z-index: 1;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__img {
	position: absolute;
	inset: 0;
	display: block;
	width: 100%;
	height: 100%;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__img img,
.hl-shop-page:not(.hl-single-product-page) .hl-product-card__photo {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
	transition: transform 0.55s ease, opacity 0.45s ease;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__img--hover {
	opacity: 0;
	z-index: 2;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__inner:hover .hl-product-card__photo--main {
	transform: scale(1.06);
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__inner:hover .hl-product-card__img--hover {
	opacity: 1;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__badge {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 4;
	padding: 5px 10px;
	border-radius: 999px;
	background: rgba(242, 56, 90, 0.95);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__body {
	display: flex;
	flex-direction: column;
	flex: 1 1 auto;
	gap: 10px;
	padding: 18px 16px 16px;
	text-align: center;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__title {
	margin: 0;
	color: #f5f5f5;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 15px;
	font-weight: 500;
	line-height: 1.45;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	min-height: 2.9em;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__title a {
	color: inherit;
	text-decoration: none;
	transition: color 0.25s ease;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__title a:hover {
	color: #38bdf8;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__price {
	margin: 0;
	color: #38bdf8;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__price del {
	opacity: 0.55;
	font-size: 14px;
	margin-right: 6px;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__footer {
	margin-top: auto;
	padding-top: 8px;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__footer .added_to_cart {
	display: none !important;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100% !important;
	min-height: 46px;
	margin: 0 !important;
	padding: 0 18px !important;
	border: 1px solid rgba(125, 211, 252, 0.25) !important;
	border-radius: 10px !important;
	background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 55%, #0369a1 100%) !important;
	color: #fff !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 10px !important;
	font-weight: 700 !important;
	line-height: 1.2 !important;
	letter-spacing: 1.2px;
	text-align: center !important;
	text-transform: uppercase;
	text-decoration: none !important;
	box-shadow: 0 10px 24px rgba(14, 165, 233, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.18);
	transition: transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease !important;
	cursor: pointer;
	position: relative !important;
	overflow: hidden;
	transform: none !important;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart:before {
	display: none !important;
	content: none !important;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart:hover {
	filter: brightness(1.06);
	color: #fff !important;
	box-shadow: 0 14px 28px rgba(56, 189, 248, 0.42), inset 0 1px 0 rgba(255, 255, 255, 0.22);
	transform: translateY(-1px) !important;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart-inner {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 20px;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart-icon {
	flex: 0 0 auto;
	opacity: 0.95;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart-spinner {
	display: none;
	width: 18px;
	height: 18px;
	border: 2px solid rgba(255, 255, 255, 0.28);
	border-top-color: #fff;
	border-radius: 50%;
	animation: hl-cart-spin 0.7s linear infinite;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart.loading {
	pointer-events: none;
	filter: saturate(0.92);
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart.loading .hl-product-card__cart-icon {
	opacity: 0;
	width: 0;
	margin: 0;
}

.hl-shop-page:not(.hl-single-product-page) .hl-product-card__cart.loading .hl-product-card__cart-spinner {
	display: inline-block;
}

/* â”€â”€â”€ Single product â€” accent #87ceeb (sky blue) â”€â”€â”€ */
body.single-product {
	--hl-page-accent: #87ceeb;
	--hl-page-accent-2: #5eb8e8;
	--hl-page-accent-deep: #4aadde;
	--hl-page-accent-rgb: 135, 206, 235;
}

.hl-single-product-page {
	padding-top: 32px;
}

.hl-single-product__top {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap: 32px;
	margin-bottom: 36px;
}

.hl-single-product__summary-card {
	padding: 28px 26px;
	border-radius: var(--hl-page-radius);
	background: linear-gradient(180deg, var(--hl-page-surface) 0%, #12161d 100%);
	border: 1px solid var(--hl-page-border);
	box-shadow: var(--hl-page-shadow);
}

.hl-single-product .product_title {
	margin: 0 0 12px;
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
	font-size: clamp(24px, 3vw, 34px);
	font-weight: 700;
	line-height: 1.2;
	letter-spacing: 0.3px;
	text-transform: none;
}

.hl-single-product .woocommerce-product-rating {
	margin-bottom: 14px;
}

.hl-single-product .price,
.hl-single-product .woocommerce-Price-amount {
	color: var(--hl-page-accent) !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 28px !important;
	font-weight: 700;
	letter-spacing: 0.5px;
}

.hl-single-product .price del {
	opacity: 0.55;
	font-size: 18px !important;
	margin-right: 8px;
}

.hl-single-product .woocommerce-product-details__short-description {
	margin: 18px 0 22px;
	color: var(--hl-page-muted);
	font-size: 15px;
	line-height: 1.75;
}

.hl-single-product .woocommerce-product-details__short-description p {
	margin: 0 0 10px;
}

.hl-single-product form.cart {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 12px;
	margin: 0 0 20px;
}

.hl-single-product form.cart .quantity .qty {
	min-width: 72px;
	min-height: 46px;
	padding: 0 10px;
	border-radius: 10px;
	border: 1px solid var(--hl-page-border);
	background: var(--hl-page-surface-2);
	color: var(--hl-page-text);
	font-size: 16px;
}

.hl-single-product .single_add_to_cart_button,
.hl-single-product button.button.alt {
	min-height: 46px;
	padding: 0 28px !important;
	border: none !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, var(--hl-page-accent-2) 0%, var(--hl-page-accent-deep) 100%) !important;
	color: #0f2d3d !important;
	font-family: "Roboto Condensed", sans-serif !important;
	font-size: 14px !important;
	font-weight: 700 !important;
	letter-spacing: 0.8px !important;
	text-transform: uppercase !important;
	box-shadow: 0 12px 28px rgba(var(--hl-page-accent-rgb), 0.32);
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hl-single-product .single_add_to_cart_button:hover {
	transform: translateY(-2px);
	box-shadow: 0 16px 32px rgba(var(--hl-page-accent-rgb), 0.4);
}

.hl-single-product .product_meta {
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--hl-page-border);
	color: var(--hl-page-muted);
	font-size: 14px;
}

.hl-single-product .product_meta a {
	color: var(--hl-page-accent);
}

/* Product share */
.hl-product-share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin-top: 18px;
	padding-top: 18px;
	border-top: 1px solid var(--hl-page-border);
}

.hl-product-share__label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--hl-page-muted);
	font-size: 14px;
	font-weight: 600;
}

.hl-product-share__label i {
	color: var(--hl-page-accent);
}

.hl-product-share__list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hl-product-share__list a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid var(--hl-page-border);
	color: #fff;
	font-size: 16px;
	text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.hl-product-share__list a:hover {
	background: var(--hl-page-accent);
	border-color: var(--hl-page-accent);
	color: #0f172a;
	transform: translateY(-2px);
}

.hl-single-product__bottom {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 300px;
	gap: 28px;
	align-items: start;
}

.hl-single-product__bottom-main {
	min-width: 0;
}

.hl-single-product-page .hl-product-sidebar {
	position: sticky;
	top: 96px;
}

/* â”€â”€â”€ Product sidebar (single + shop archive) â”€â”€â”€ */
.hl-single-product-page .hl-product-sidebar .hl-sidebar-card.blog-bar,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card.blog-bar {
	padding: 0 0 18px;
	overflow: hidden;
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.05) 0%, rgba(0, 0, 0, 0.24) 100%);
	border: 1px solid rgba(135, 206, 235, 0.18);
	box-shadow: 0 16px 40px rgba(0, 0, 0, 0.32), inset 0 1px 0 rgba(255, 255, 255, 0.06);
}

.hl-single-product-page .hl-product-sidebar .hl-sidebar-card__title,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card__title {
	margin: 0;
	padding: 20px 22px 16px;
	border-bottom: 1px solid rgba(135, 206, 235, 0.14);
	background: linear-gradient(135deg, rgba(135, 206, 235, 0.14) 0%, rgba(94, 184, 232, 0.05) 100%);
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 1.2px;
	text-transform: uppercase;
}

.hl-single-product-page .hl-product-sidebar .hl-sidebar-card__title::after,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card__title::after {
	content: "";
	display: block;
	width: 52px;
	height: 3px;
	margin-top: 10px;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--hl-page-accent), var(--hl-page-accent-2));
}

.hl-single-product-page .hl-product-sidebar .hl-sidebar-card .title,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card .title,
.hl-shop-page .hl-product-sidebar .hl-shop-filter .title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	padding: 18px 22px 12px;
	color: var(--hl-page-accent) !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.hl-single-product-page .hl-product-sidebar .hl-sidebar-card .title::before,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card .title::before,
.hl-shop-page .hl-product-sidebar .hl-shop-filter .title::before {
	content: "";
	flex: 0 0 4px;
	width: 4px;
	height: 16px;
	border-radius: 999px;
	background: linear-gradient(180deg, var(--hl-page-accent), var(--hl-page-accent-2));
}

.hl-single-product-page .hl-product-sidebar .hl-sidebar-card .title ~ .title,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card .title ~ .title,
.hl-shop-page .hl-product-sidebar .hl-shop-filter + .hl-shop-filter .title {
	margin-top: 4px;
	padding-top: 22px;
	border-top: 1px solid rgba(135, 206, 235, 0.12);
}

.hl-single-product-page .hl-product-sidebar .product-categories,
.hl-shop-page .hl-product-sidebar .product-categories {
	margin: 0;
	padding: 0 14px 6px;
	list-style: none !important;
}

.hl-single-product-page .hl-product-sidebar .product-categories .cat-item,
.hl-shop-page .hl-product-sidebar .product-categories .cat-item {
	margin: 0 0 4px;
	padding: 0;
	list-style: none !important;
}

.hl-single-product-page .hl-product-sidebar .product-categories a,
.hl-shop-page .hl-product-sidebar .product-categories a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-radius: 10px;
	border: 1px solid transparent;
	color: var(--hl-page-muted) !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.45;
	text-decoration: none !important;
	transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.hl-single-product-page .hl-product-sidebar .product-categories a:hover,
.hl-shop-page .hl-product-sidebar .product-categories a:hover {
	color: #fff !important;
	background: rgba(135, 206, 235, 0.1);
	border-color: rgba(135, 206, 235, 0.22);
	transform: translateX(3px);
}

.hl-single-product-page .hl-product-sidebar .product-categories .current-cat > a,
.hl-shop-page .hl-product-sidebar .product-categories .current-cat > a {
	color: #fff !important;
	background: linear-gradient(135deg, rgba(135, 206, 235, 0.24) 0%, rgba(94, 184, 232, 0.12) 100%);
	border-color: rgba(135, 206, 235, 0.38);
	font-weight: 700;
	box-shadow: 0 4px 14px rgba(135, 206, 235, 0.14);
}

.hl-single-product-page .hl-product-sidebar .product-categories .cat-parent,
.hl-shop-page .hl-product-sidebar .product-categories .cat-parent {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 36px;
	align-items: start;
	gap: 0 4px;
}

.hl-single-product-page .hl-product-sidebar .product-categories .cat-parent > a,
.hl-shop-page .hl-product-sidebar .product-categories .cat-parent > a {
	grid-column: 1;
	margin: 0;
}

.hl-single-product-page .hl-product-sidebar .product-categories .children,
.hl-shop-page .hl-product-sidebar .product-categories .children {
	grid-column: 1 / -1;
	display: none;
	margin: 4px 0 8px;
	padding: 6px 0 6px 14px;
	list-style: none !important;
	border-left: 2px solid rgba(135, 206, 235, 0.28);
	overflow: hidden;
}

.hl-shop-page .hl-product-sidebar .product-categories .cat-parent.is-open > .children {
	display: block;
	animation: hl-cat-children-in 0.28s ease;
}

@keyframes hl-cat-children-in {
	from {
		opacity: 0;
		transform: translateY(-4px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

.hl-single-product-page .hl-product-sidebar .product-categories .children .cat-item,
.hl-shop-page .hl-product-sidebar .product-categories .children .cat-item {
	margin: 0 0 2px;
}

.hl-single-product-page .hl-product-sidebar .product-categories .children a,
.hl-shop-page .hl-product-sidebar .product-categories .children a {
	padding: 8px 10px;
	font-size: 13px;
}

.hl-single-product-page .hl-product-sidebar .product-categories .hl-cat-toggle,
.hl-shop-page .hl-product-sidebar .product-categories .hl-cat-toggle {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	grid-column: 2;
	grid-row: 1;
	width: 34px;
	height: 34px;
	margin: 2px 0 0;
	padding: 0;
	border: 1px solid rgba(135, 206, 235, 0.25);
	border-radius: 8px;
	background: rgba(135, 206, 235, 0.08);
	color: var(--hl-page-accent);
	cursor: pointer;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.hl-single-product-page .hl-product-sidebar .product-categories .hl-cat-toggle::before,
.hl-shop-page .hl-product-sidebar .product-categories .hl-cat-toggle::before {
	content: "";
	width: 7px;
	height: 7px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
	transition: transform 0.25s ease;
}

.hl-single-product-page .hl-product-sidebar .product-categories .cat-parent.is-open > .hl-cat-toggle::before,
.hl-shop-page .hl-product-sidebar .product-categories .cat-parent.is-open > .hl-cat-toggle::before {
	transform: rotate(-135deg);
}

.hl-single-product-page .hl-product-sidebar .product-categories .hl-cat-toggle:hover,
.hl-single-product-page .hl-product-sidebar .product-categories .hl-cat-toggle:focus-visible,
.hl-shop-page .hl-product-sidebar .product-categories .hl-cat-toggle:hover,
.hl-shop-page .hl-product-sidebar .product-categories .hl-cat-toggle:focus-visible {
	background: rgba(135, 206, 235, 0.18);
	border-color: rgba(135, 206, 235, 0.42);
	color: #fff;
	outline: none;
}

.hl-single-product-page .hl-product-sidebar .hl-sidebar-card > img,
.hl-single-product-page .hl-product-sidebar .hl-sidebar-card img.image,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card > img,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card img.image {
	display: block;
	width: calc(100% - 28px);
	height: auto;
	margin: 0 14px;
	border-radius: 12px;
	border: 1px solid rgba(135, 206, 235, 0.22);
	box-shadow: 0 10px 28px rgba(0, 0, 0, 0.28);
	transition: transform 0.35s ease, box-shadow 0.35s ease, border-color 0.35s ease;
}

.hl-single-product-page .hl-product-sidebar .hl-sidebar-card > img:hover,
.hl-single-product-page .hl-product-sidebar .hl-sidebar-card img.image:hover,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card > img:hover,
.hl-shop-page .hl-product-sidebar .hl-sidebar-card img.image:hover {
	transform: translateY(-2px);
	border-color: rgba(135, 206, 235, 0.45);
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.34), 0 0 24px rgba(135, 206, 235, 0.1);
}

/* â”€â”€â”€ Shop sidebar filters â”€â”€â”€ */
.hl-shop-page .hl-product-sidebar .hl-shop-filter__body {
	padding: 0 14px 10px;
}

.hl-shop-page .hl-product-sidebar .hl-shop-sidebar__widgets {
	padding-bottom: 4px;
}

.hl-shop-page .hl-product-sidebar .hl-shop-sidebar__widgets .hl-shop-filter--widget:first-child .title,
.hl-shop-page .hl-product-sidebar .hl-shop-sidebar__widgets .title-head:first-child {
	border-top: 0;
	padding-top: 18px;
}

.hl-shop-page .hl-product-sidebar .hl-shop-sidebar__filters {
	margin-top: 4px;
	padding-top: 6px;
	border-top: 1px solid rgba(135, 206, 235, 0.14);
}

.hl-shop-page .hl-product-sidebar .hl-shop-sidebar__filters .hl-shop-filter:first-child .title {
	border-top: 0;
	padding-top: 18px;
}

.hl-shop-page .hl-product-sidebar .aside-content,
.hl-shop-page .hl-product-sidebar .aside-cate,
.hl-shop-page .hl-product-sidebar .title-head {
	margin: 0;
	padding: 0;
	border: 0;
	background: transparent;
}

.hl-shop-page .hl-product-sidebar .product-categories li:before,
.hl-shop-page .hl-product-sidebar .widget li:before {
	display: none !important;
	content: none !important;
}

.hl-shop-search__field {
	display: flex;
	align-items: stretch;
	gap: 8px;
}

.hl-shop-page .hl-product-sidebar .hl-shop-search .search-field {
	flex: 1 1 auto;
	min-height: 44px;
	padding: 0 14px;
	border-radius: 10px;
	border: 1px solid rgba(135, 206, 235, 0.22);
	background: rgba(255, 255, 255, 0.04);
	color: #fff;
	font-size: 14px;
}

.hl-shop-page .hl-product-sidebar .hl-shop-search .search-field:focus {
	outline: none;
	border-color: rgba(56, 189, 248, 0.55);
	box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.12);
}

.hl-shop-search__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	min-width: 44px;
	height: 44px;
	border: 0;
	border-radius: 10px;
	background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
	color: #fff !important;
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
	transition: filter 0.2s ease, transform 0.2s ease;
}

.hl-shop-search__submit i {
	display: inline-block;
	pointer-events: none;
}

.hl-shop-search__submit:hover {
	filter: brightness(1.06);
	transform: translateY(-1px);
}

.hl-shop-price-filter {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.hl-price-range__values {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 12px;
}

.hl-price-range__value {
	display: inline-flex;
	align-items: center;
	min-height: 34px;
	padding: 0 12px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.05);
	border: 1px solid rgba(56, 189, 248, 0.22);
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 700;
}

.hl-price-range__value .woocommerce-Price-amount,
.hl-price-range__value .amount {
	color: #fff !important;
	font-size: inherit !important;
	font-weight: inherit !important;
}

.hl-price-range__slider {
	position: relative;
	height: 28px;
}

.hl-price-range__track {
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	height: 6px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.08);
	transform: translateY(-50%);
	overflow: hidden;
}

.hl-price-range__progress {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	border-radius: inherit;
	background: linear-gradient(90deg, #0ea5e9 0%, #38bdf8 100%);
	box-shadow: 0 0 16px rgba(56, 189, 248, 0.35);
}

.hl-price-range__input {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 28px;
	margin: 0;
	padding: 0;
	background: none;
	pointer-events: none;
	transform: translateY(-50%);
	-webkit-appearance: none;
	appearance: none;
}

.hl-price-range__input::-webkit-slider-thumb {
	-webkit-appearance: none;
	appearance: none;
	width: 20px;
	height: 20px;
	border: 3px solid #38bdf8;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 4px 14px rgba(14, 165, 233, 0.35);
	cursor: pointer;
	pointer-events: auto;
	transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.hl-price-range__input::-moz-range-thumb {
	width: 20px;
	height: 20px;
	border: 3px solid #38bdf8;
	border-radius: 50%;
	background: #fff;
	box-shadow: 0 4px 14px rgba(14, 165, 233, 0.35);
	cursor: pointer;
	pointer-events: auto;
}

.hl-price-range__input::-webkit-slider-runnable-track,
.hl-price-range__input::-moz-range-track {
	background: transparent;
	border: 0;
}

.hl-price-range__input:focus::-webkit-slider-thumb,
.hl-price-range__input:hover::-webkit-slider-thumb {
	transform: scale(1.08);
	box-shadow: 0 6px 18px rgba(56, 189, 248, 0.45);
}

.hl-price-range__input--max {
	z-index: 2;
}

.hl-shop-price-filter__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	width: 100%;
	min-height: 42px;
	border: 0;
	border-radius: 10px;
	background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
	color: #fff !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	cursor: pointer;
	box-shadow: 0 10px 24px rgba(14, 165, 233, 0.28);
	transition: filter 0.2s ease, transform 0.2s ease;
}

.hl-shop-price-filter__submit:hover {
	filter: brightness(1.06);
	transform: translateY(-1px);
}

.hl-shop-active-filters {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	padding: 0 14px 10px;
}

.hl-shop-active-filters__chip {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 8px 12px;
	border-radius: 999px;
	border: 1px solid rgba(56, 189, 248, 0.28);
	background: rgba(14, 165, 233, 0.12);
	color: #fff !important;
	font-size: 12px;
	font-weight: 600;
	text-decoration: none !important;
}

.hl-shop-active-filters__remove {
	font-size: 16px;
	line-height: 1;
	opacity: 0.8;
}

.hl-shop-active-filters__clear {
	display: inline-flex;
	align-items: center;
	padding: 8px 12px;
	border-radius: 999px;
	border: 1px dashed rgba(255, 255, 255, 0.22);
	color: var(--hl-page-muted) !important;
	font-size: 12px;
	font-weight: 600;
	text-decoration: none !important;
}

.hl-shop-page .hl-product-sidebar .widget_price_filter .price_slider_wrapper,
.hl-shop-page .hl-product-sidebar .woocommerce-widget-layered-nav-list,
.hl-shop-page .hl-product-sidebar .widget_rating_filter ul {
	margin: 0;
	padding: 0 14px 10px;
	list-style: none;
}

.hl-shop-page .hl-product-sidebar .widget_price_filter .price_slider {
	margin: 14px 8px 18px;
}

.hl-shop-page .hl-product-sidebar .widget_price_filter .ui-slider-range {
	background: linear-gradient(90deg, #0ea5e9, #38bdf8);
}

.hl-shop-page .hl-product-sidebar .widget_price_filter .ui-slider-handle {
	border-color: #38bdf8;
	background: #fff;
	box-shadow: 0 4px 12px rgba(14, 165, 233, 0.28);
}

.hl-shop-page .hl-product-sidebar .widget_price_filter .price_label,
.hl-shop-page .hl-product-sidebar .widget_price_filter .button {
	color: var(--hl-page-muted);
	font-size: 13px;
}

.hl-shop-page .hl-product-sidebar .widget_price_filter .button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 38px;
	margin-top: 8px;
	padding: 0 16px;
	border: 0 !important;
	border-radius: 999px !important;
	background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%) !important;
	color: #fff !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 12px;
	font-weight: 700;
	text-transform: uppercase;
}

.hl-shop-page .hl-product-sidebar .widget_rating_filter li a,
.hl-shop-page .hl-product-sidebar .woocommerce-widget-layered-nav-list li a {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 10px 12px;
	border-radius: 10px;
	color: var(--hl-page-muted) !important;
	text-decoration: none !important;
	transition: all 0.2s ease;
}

.hl-shop-page .hl-product-sidebar .widget_rating_filter li a:hover,
.hl-shop-page .hl-product-sidebar .woocommerce-widget-layered-nav-list li a:hover,
.hl-shop-page .hl-product-sidebar .woocommerce-widget-layered-nav-list li.chosen a {
	color: #fff !important;
	background: rgba(14, 165, 233, 0.12);
}

.hl-shop-filter-toggle {
	display: none;
	align-items: center;
	gap: 8px;
	min-height: 42px;
	padding: 0 16px;
	border: 1px solid rgba(56, 189, 248, 0.35);
	border-radius: 10px;
	background: rgba(14, 165, 233, 0.1);
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 700;
	cursor: pointer;
	transition: all 0.2s ease;
}

.hl-shop-filter-toggle:hover {
	background: rgba(14, 165, 233, 0.18);
}

.hl-shop-sidebar__close {
	display: none;
}

.hl-shop-sidebar-overlay {
	display: none;
}

.hl-shop-page .hl-product-sidebar .product-categories .count {
	margin-left: auto;
	padding: 2px 8px;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.06);
	color: rgba(255, 255, 255, 0.55);
	font-size: 11px;
	font-weight: 700;
}

.hl-shop-page .hl-product-sidebar .product-categories .current-cat > a .count {
	background: rgba(255, 255, 255, 0.14);
	color: #fff;
}

.hl-single-product__related {
	margin-top: 44px;
	padding-top: 36px;
	border-top: 1px solid var(--hl-page-border);
}

/* Product tabs */
.hl-product-tabs {
	padding: 24px;
	border-radius: var(--hl-page-radius);
	background: linear-gradient(180deg, var(--hl-page-surface) 0%, #12161d 100%);
	border: 1px solid var(--hl-page-border);
}

.hl-product-tabs__nav {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 20px !important;
	padding: 0 !important;
	list-style: none !important;
	border-bottom: 1px solid var(--hl-page-border);
}

.hl-product-tabs__nav li {
	margin: 0 !important;
	padding: 0 !important;
	background: none !important;
	border: none !important;
}

.hl-product-tabs__nav li a {
	display: inline-flex;
	align-items: center;
	min-height: 42px;
	padding: 0 18px;
	border: 1px solid transparent !important;
	border-radius: 999px !important;
	color: var(--hl-page-muted) !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	text-decoration: none;
	background: rgba(255, 255, 255, 0.03) !important;
	transition: color 0.2s ease, background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.hl-product-tabs__nav li.active a,
.hl-product-tabs__nav li a:hover {
	color: #fff !important;
	background: rgba(var(--hl-page-accent-rgb), 0.18) !important;
	border-color: rgba(var(--hl-page-accent-rgb), 0.35) !important;
}

.hl-single-product-page .hl-product-tabs .woocommerce-tabs ul.tabs li.active a {
	background: linear-gradient(135deg, var(--hl-page-accent) 0%, var(--hl-page-accent-2) 100%) !important;
	border-color: transparent !important;
	color: #0f2d3d !important;
	box-shadow: 0 8px 22px rgba(var(--hl-page-accent-rgb), 0.28);
}

.hl-product-tabs__panels {
	padding: 22px 20px;
	border-radius: 0 0 var(--hl-page-radius) var(--hl-page-radius);
	background: rgba(0, 0, 0, 0.22);
	border: 1px solid var(--hl-page-border);
	border-top: none;
}

.hl-product-tabs .woocommerce-Tabs-panel {
	color: var(--hl-page-muted);
	font-size: 15px;
	line-height: 1.8;
	background: transparent !important;
}

.hl-product-tabs .woocommerce-Tabs-panel h2 {
	display: none;
}

.hl-product-tabs .woocommerce-Tabs-panel p,
.hl-product-tabs .woocommerce-Tabs-panel li {
	color: inherit;
}

/* Related products */
.hl-related-products {
	margin: 0;
	padding: 0;
}

.hl-related-products__head {
	margin-bottom: 28px;
	text-align: center;
}

.hl-related-products__title {
	margin: 0 0 8px;
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
	font-size: clamp(22px, 3vw, 30px);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 1.2px;
}

.hl-related-products__title::after {
	content: "";
	display: block;
	width: 72px;
	height: 3px;
	margin: 12px auto 0;
	border-radius: 999px;
	background: linear-gradient(90deg, var(--hl-page-accent), var(--hl-page-accent-2));
}

.hl-related-products__subtitle {
	margin: 0;
	color: var(--hl-page-muted);
	font-size: 14px;
}

.hl-single-product .related.products,
.hl-single-product .upsells.products {
	margin: 0;
	padding: 0;
	border: none;
}

.hl-single-product .related.products > h2,
.hl-single-product .upsells.products > h2 {
	display: none;
}

.hl-single-product-page .hl-related-products ul.products {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

/* Reviews â€” dark theme overrides */
.hl-single-product-page .xd-reviews-wrap {
	margin: 0;
	font-family: "Roboto Condensed", sans-serif;
}

.hl-single-product-page .xd-review-summary,
.hl-single-product-page .xd-review-item,
.hl-single-product-page .xd-review-form-wrap,
.hl-single-product-page .xd-no-reviews {
	background: linear-gradient(180deg, rgba(255, 255, 255, 0.04) 0%, rgba(0, 0, 0, 0.18) 100%) !important;
	border: 1px solid var(--hl-page-border) !important;
	box-shadow: none !important;
}

.hl-single-product-page .xd-big-score,
.hl-single-product-page .xd-reviewer-name,
.hl-single-product-page .xd-form-title {
	color: #fff !important;
}

.hl-single-product-page .xd-total-count,
.hl-single-product-page .xd-review-text,
.hl-single-product-page .xd-bar-label,
.hl-single-product-page .xd-bar-num,
.hl-single-product-page .xd-review-date,
.hl-single-product-page .xd-rating-hint,
.hl-single-product-page .xd-no-reviews {
	color: var(--hl-page-muted) !important;
}

.hl-single-product-page .xd-big-score {
	color: var(--hl-page-accent) !important;
}

.hl-single-product-page .xd-bar-track {
	background: rgba(255, 255, 255, 0.08) !important;
}

.hl-single-product-page .xd-filter-tab {
	background: rgba(255, 255, 255, 0.04) !important;
	border-color: var(--hl-page-border) !important;
	color: var(--hl-page-muted) !important;
}

.hl-single-product-page .xd-filter-tab:hover,
.hl-single-product-page .xd-filter-tab.active {
	background: linear-gradient(135deg, var(--hl-page-accent) 0%, var(--hl-page-accent-2) 100%) !important;
	border-color: transparent !important;
	color: #0f2d3d !important;
}

.hl-single-product-page .xd-form-group label {
	color: var(--hl-page-text) !important;
}

.hl-single-product-page .xd-form-group input,
.hl-single-product-page .xd-form-group textarea {
	background: rgba(0, 0, 0, 0.25) !important;
	border-color: var(--hl-page-border) !important;
	color: var(--hl-page-text) !important;
}

.hl-single-product-page .xd-form-group input:focus,
.hl-single-product-page .xd-form-group textarea:focus {
	border-color: var(--hl-page-accent) !important;
	background: rgba(0, 0, 0, 0.35) !important;
}

.hl-single-product-page .xd-form-submit {
	background: linear-gradient(135deg, var(--hl-page-accent) 0%, var(--hl-page-accent-2) 100%) !important;
	color: #0f2d3d !important;
	box-shadow: 0 10px 24px rgba(var(--hl-page-accent-rgb), 0.28) !important;
}

/* Reviews â€” override inline orange styles */
body.single-product .xd-big-score,
body.single-product .xd-bar-label:hover,
body.single-product .xd-must-login a {
	color: #87ceeb !important;
}

body.single-product .xd-bar-fill {
	background: linear-gradient(90deg, #b8e4f9, #87ceeb) !important;
}

body.single-product .xd-filter-tab:hover,
body.single-product .xd-filter-tab.active,
body.single-product .xd-pagination a:hover,
body.single-product .xd-pagination span.current {
	background: #87ceeb !important;
	border-color: #87ceeb !important;
	color: #0f2d3d !important;
}

body.single-product .xd-avatar {
	background: linear-gradient(135deg, #87ceeb, #5eb8e8) !important;
}

body.single-product .xd-form-title::before {
	background: linear-gradient(180deg, #87ceeb, #5eb8e8) !important;
}

body.single-product .xd-star-picker input:checked ~ label svg,
body.single-product .xd-star-picker label:hover ~ label svg,
body.single-product .xd-star-picker label:hover svg,
body.single-product .star-full {
	fill: #87ceeb !important;
}

body.single-product .xd-form-group input:focus,
body.single-product .xd-form-group textarea:focus {
	border-color: #87ceeb !important;
	box-shadow: 0 0 0 3px rgba(135, 206, 235, 0.15) !important;
}

body.single-product .xd-form-submit {
	background: linear-gradient(135deg, #87ceeb, #5eb8e8) !important;
	color: #0f2d3d !important;
	box-shadow: 0 4px 14px rgba(135, 206, 235, 0.35) !important;
}

body.single-product .xd-bar-label svg,
body.single-product .xd-rating-hint span,
body.single-product .xd-form-group label span {
	color: #87ceeb !important;
	fill: #87ceeb !important;
}

body.single-product .hl-product-share__list a:hover {
	background: #87ceeb !important;
	border-color: #87ceeb !important;
	color: #0f2d3d !important;
}

/* Override inline header.php orange on single product (summary only â€” not related cards) */
body.single-product .hl-single-product__summary-card .price,
body.single-product .hl-single-product__summary-card .amount,
body.single-product .hl-single-product__summary-card .woocommerce-Price-amount,
body.single-product .hl-single-product .product_meta a {
	color: #87ceeb !important;
}

body.single-product .related.products h2,
body.single-product .upsells.products h2,
body.single-product .hl-related-products__title {
	color: #fff !important;
}

.hl-single-product-page .panel,
.hl-single-product-page .woocommerce-tabs ul.tabs li.active a {
	background-color: transparent !important;
}

/* â”€â”€â”€ Product gallery (xd-gallery) â”€â”€â”€ */
.xd-gallery-wrap {
	display: grid;
	grid-template-columns: 88px minmax(0, 1fr);
	gap: 16px;
	position: relative;
	padding: 18px;
	border-radius: var(--hl-page-radius);
	background: linear-gradient(180deg, var(--hl-page-surface) 0%, #12161d 100%);
	border: 1px solid var(--hl-page-border);
	box-shadow: var(--hl-page-shadow);
}

.xd-gallery-badge {
	position: absolute;
	top: 28px;
	left: 28px;
	z-index: 5;
	padding: 6px 12px;
	border-radius: 999px;
	background: rgba(242, 56, 90, 0.95);
	color: #fff;
	font-size: 12px;
	font-weight: 700;
}

.xd-thumb-col {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
}

.xd-thumb-viewport {
	width: 72px;
	height: 360px;
	overflow: hidden;
}

.xd-thumb-track {
	display: flex;
	flex-direction: column;
	gap: 10px;
	transition: transform 0.3s ease;
}

.xd-thumb-item {
	width: 72px;
	height: 72px;
	border-radius: 10px;
	overflow: hidden;
	border: 2px solid transparent;
	cursor: pointer;
	opacity: 0.65;
	transition: opacity 0.2s ease, border-color 0.2s ease;
}

.xd-thumb-item.active,
.xd-thumb-item:hover {
	opacity: 1;
	border-color: var(--hl-page-accent);
}

.xd-thumb-item img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.xd-thumb-nav,
.xd-nav,
.xd-zoom-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	border: 1px solid var(--hl-page-border);
	background: rgba(15, 20, 28, 0.88);
	color: var(--hl-page-accent);
	cursor: pointer;
	transition: background 0.2s ease, color 0.2s ease;
}

.xd-thumb-nav {
	width: 32px;
	height: 32px;
	border-radius: 8px;
}

.xd-main-col {
	min-width: 0;
}

.xd-main-img-wrap {
	position: relative;
	border-radius: 12px;
	overflow: hidden;
	background: #0a0d12;
	aspect-ratio: 1 / 1;
}

.xd-slide {
	position: absolute;
	inset: 0;
	opacity: 0;
	pointer-events: none;
	transition: opacity 0.3s ease;
}

.xd-slide.active {
	opacity: 1;
	pointer-events: auto;
}

.xd-main-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: contain;
	transition: transform 0.25s ease;
	cursor: zoom-in;
}

.xd-nav {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 42px;
	height: 42px;
	border-radius: 50%;
	z-index: 3;
}

.xd-nav-prev { left: 12px; }
.xd-nav-next { right: 12px; }

.xd-zoom-btn {
	position: absolute;
	right: 12px;
	bottom: 12px;
	width: 40px;
	height: 40px;
	border-radius: 10px;
	z-index: 3;
}

.xd-dots {
	position: absolute;
	left: 50%;
	bottom: 12px;
	transform: translateX(-50%);
	display: flex;
	gap: 6px;
	z-index: 3;
}

.xd-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.35);
	cursor: pointer;
}

.xd-dot.active {
	background: var(--hl-page-accent);
}

.xd-lightbox {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 100050;
}

.xd-lightbox.active {
	display: block;
}

.xd-lightbox-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.92);
}

.xd-lightbox-inner {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: calc(var(--hl-header-height, 64px) + 20px) 24px 100px;
}

.xd-lb-img-wrap {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 auto;
	width: 100%;
	min-height: 0;
}

.xd-lb-img {
	max-width: min(92vw, 1100px);
	max-height: calc(100vh - var(--hl-header-height, 64px) - 180px);
	object-fit: contain;
}

.xd-lb-close,
.xd-lb-nav {
	position: absolute;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	border: 1px solid rgba(255, 255, 255, 0.24);
	background: rgba(0, 0, 0, 0.55);
	color: #fff;
	cursor: pointer;
	z-index: 5;
	transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.xd-lb-close:hover,
.xd-lb-nav:hover {
	background: rgba(224, 181, 106, 0.22);
	border-color: rgba(224, 181, 106, 0.55);
}

.xd-lb-close {
	top: 10px;
	right: 20px;
}

.xd-lb-prev {
	left: 20px;
	top: 50%;
	transform: translateY(-50%);
}

.xd-lb-next {
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
}

.xd-lb-counter {
	position: absolute;
	top: 10px;
	left: 50%;
	transform: translateX(-50%);
	padding: 6px 14px;
	border-radius: 999px;
	background: rgba(0, 0, 0, 0.45);
	border: 1px solid rgba(255, 255, 255, 0.12);
	color: rgba(255, 255, 255, 0.88);
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.08em;
	z-index: 5;
}

.xd-lb-thumbs {
	position: absolute;
	left: 50%;
	bottom: 24px;
	transform: translateX(-50%);
	display: flex;
	gap: 10px;
	max-width: min(92vw, 720px);
	padding: 10px 12px;
	border-radius: 14px;
	background: rgba(0, 0, 0, 0.45);
	border: 1px solid rgba(255, 255, 255, 0.1);
	overflow-x: auto;
	z-index: 5;
}

.xd-lb-thumb {
	flex: 0 0 56px;
	width: 56px;
	height: 56px;
	border-radius: 8px;
	overflow: hidden;
	border: 2px solid transparent;
	cursor: pointer;
	opacity: 0.65;
	transition: opacity 0.2s ease, border-color 0.2s ease;
}

.xd-lb-thumb.active,
.xd-lb-thumb:hover {
	opacity: 1;
	border-color: var(--hl-page-accent);
}

.xd-lb-thumb img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.admin-bar .xd-lightbox-inner {
	padding-top: calc(var(--hl-header-height, 64px) + 52px);
}

.admin-bar .xd-lb-close,
.admin-bar .xd-lb-counter {
	top: calc(var(--hl-header-height, 64px) + 46px);
}

@media screen and (max-width: 782px) {
	.admin-bar .xd-lightbox-inner {
		padding-top: calc(var(--hl-header-height, 64px) + 66px);
	}

	.admin-bar .xd-lb-close,
	.admin-bar .xd-lb-counter {
		top: calc(var(--hl-header-height, 64px) + 60px);
	}
}

/* â”€â”€â”€ Blog grid â”€â”€â”€ */
.hl-blog-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
	margin-bottom: 8px;
}

.hl-blog-card {
	display: flex;
	flex-direction: column;
	height: 100%;
	overflow: hidden;
	border-radius: var(--hl-page-radius);
	background: linear-gradient(180deg, var(--hl-page-surface) 0%, #12161d 100%);
	border: 1px solid var(--hl-page-border);
	box-shadow: var(--hl-page-shadow);
	transition: transform 0.3s ease, border-color 0.3s ease, box-shadow 0.3s ease;
}

.hl-blog-card:hover {
	transform: translateY(-4px);
	border-color: rgba(var(--hl-page-accent-rgb), 0.28);
	box-shadow: 0 22px 48px rgba(0, 0, 0, 0.34);
}

.hl-blog-card__media {
	position: relative;
	overflow: hidden;
	aspect-ratio: 16 / 10;
	background: #1a2030;
}

.hl-blog-card__thumb {
	display: block;
	height: 100%;
}

.hl-blog-card__img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.hl-blog-card:hover .hl-blog-card__img {
	transform: scale(1.05);
}

.hl-blog-card__placeholder {
	display: block;
	width: 100%;
	height: 100%;
	background: linear-gradient(135deg, #3d3d3d, #2e2e2e);
}

.hl-blog-card__cat {
	position: absolute;
	left: 14px;
	bottom: 14px;
	padding: 5px 12px;
	border-radius: 999px;
	background: rgba(var(--hl-page-accent-rgb), 0.92);
	color: #1a1a1a;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.6px;
	text-transform: uppercase;
}

.hl-blog-card__body {
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 8px;
	padding: 16px 18px 18px;
}

.hl-blog-card__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	color: var(--hl-page-muted);
	font-size: 13px;
}

.hl-blog-card__title {
	margin: 0;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.35;
}

.hl-blog-card__title a {
	color: #fff;
	text-decoration: none;
	transition: color 0.2s ease;
}

.hl-blog-card__title a:hover {
	color: var(--hl-page-accent);
}

.hl-blog-card__excerpt {
	margin: 0;
	color: var(--hl-page-muted);
	font-size: 14px;
	line-height: 1.65;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.hl-blog-card__excerpt .link-more {
	display: none !important;
}

.hl-blog-card__readmore {
	margin-top: 8px;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: var(--hl-page-accent);
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.6px;
	text-transform: uppercase;
	text-decoration: none;
}

.hl-blog-card__readmore:hover {
	color: #fff;
}

/* â”€â”€â”€ Single article â”€â”€â”€ */
.hl-article__card {
	padding: 28px 28px 32px;
	border-radius: var(--hl-page-radius);
	background: linear-gradient(180deg, var(--hl-page-surface) 0%, #12161d 100%);
	border: 1px solid var(--hl-page-border);
	box-shadow: var(--hl-page-shadow);
}

.hl-article__meta {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 10px;
	margin-bottom: 22px;
	color: var(--hl-page-muted);
	font-size: 14px;
}

.hl-article__meta i {
	margin-right: 6px;
	color: var(--hl-page-accent);
}

.hl-article__featured {
	margin-bottom: 24px;
	border-radius: 12px;
	overflow: hidden;
}

.hl-article__featured-img {
	display: block;
	width: 100%;
	height: auto;
}

.hl-article__content {
	color: var(--hl-page-text);
	font-size: 16px;
	line-height: 1.85;
}

.hl-article__content h2,
.hl-article__content h3,
.hl-article__content h4 {
	margin: 1.6em 0 0.8em;
	color: #fff;
	font-family: "Roboto Condensed", sans-serif;
}

.hl-article__content p,
.hl-article__content li {
	color: var(--hl-page-muted);
}

.hl-article__content a {
	color: var(--hl-page-accent);
}

.hl-article__content img {
	max-width: 100%;
	height: auto;
	border-radius: 10px;
}

.hl-article__share {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin-top: 28px;
	padding-top: 22px;
	border-top: 1px solid var(--hl-page-border);
}

.hl-article__share-label {
	color: var(--hl-page-muted);
	font-size: 14px;
	font-weight: 600;
}

.hl-article__share-list {
	display: flex;
	gap: 10px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hl-article__share-list a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.06);
	border: 1px solid var(--hl-page-border);
	color: #fff;
	text-decoration: none;
	transition: background 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.hl-article__share-list a:hover {
	background: var(--hl-page-accent);
	color: #0f172a;
	transform: translateY(-2px);
}

.hl-single-post .hl-article__entry-footer,
.hl-single-post .entry-footer.hl-article__entry-footer {
	margin-top: 28px;
	padding-top: 22px;
	border-top: 1px solid var(--hl-page-border);
	text-align: left !important;
}

.hl-single-post .hl-article__taxonomies {
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.hl-single-post .hl-article__taxonomy {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 10px 14px;
}

.hl-single-post .hl-article__taxonomy-label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	flex: 0 0 118px;
	min-width: 118px;
	margin: 4px 0 0;
	color: rgba(244, 239, 232, 0.72);
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.6px;
	text-transform: uppercase;
}

.hl-single-post .hl-article__taxonomy-label i {
	color: var(--hl-page-accent);
	font-size: 14px;
}

.hl-single-post .hl-article__taxonomy-list {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px;
	flex: 1 1 0;
	min-width: 0;
}

.hl-single-post .hl-article__chip,
.hl-single-post .hl-article__taxonomy-list a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	padding: 6px 14px;
	border-radius: 999px;
	border: 1px solid rgba(var(--hl-page-accent-rgb), 0.32);
	background: rgba(var(--hl-page-accent-rgb), 0.1);
	color: var(--hl-page-accent) !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none !important;
	transition: background 0.2s ease, border-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

.hl-single-post .hl-article__chip:hover,
.hl-single-post .hl-article__taxonomy-list a:hover {
	background: rgba(var(--hl-page-accent-rgb), 0.22);
	border-color: rgba(var(--hl-page-accent-rgb), 0.55);
	color: #fff !important;
	transform: translateY(-1px);
}

.hl-single-post .hl-article__entry-footer .icon,
.hl-single-post .hl-article__entry-footer svg {
	display: none !important;
}

.hl-article__comments {
	margin-top: 28px;
	padding-top: 22px;
	border-top: 1px solid var(--hl-page-border);
}

/* â”€â”€â”€ Pagination â”€â”€â”€ */
.hl-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 40px;
	height: 40px;
	margin: 4px;
	padding: 0 12px;
	border-radius: 10px;
	border: 1px solid var(--hl-page-border);
	background: rgba(255, 255, 255, 0.03);
	color: var(--hl-page-muted);
	text-decoration: none;
	transition: all 0.2s ease;
}

.hl-pagination .page-numbers.current,
.hl-pagination .page-numbers:hover {
	border-color: rgba(var(--hl-page-accent-rgb), 0.35);
	color: #fff;
}

.hl-pagination {
	margin-top: 32px;
	text-align: center;
}

/* Shop archive pagination */
.hl-shop-page .hl-shop-pagination-wrap {
	clear: both;
	width: 100%;
	margin-top: 36px;
	padding-top: 8px;
}

.hl-shop-page .hl-shop-pagination,
.hl-shop-page .woocommerce-pagination {
	clear: both !important;
	float: none !important;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	text-align: center !important;
}

.hl-shop-page .hl-shop-pagination ul.page-numbers,
.hl-shop-page .woocommerce-pagination ul.page-numbers {
	display: flex !important;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.hl-shop-page .hl-shop-pagination ul.page-numbers::before,
.hl-shop-page .hl-shop-pagination ul.page-numbers::after,
.hl-shop-page .woocommerce-pagination ul.page-numbers::before,
.hl-shop-page .woocommerce-pagination ul.page-numbers::after {
	display: none !important;
	content: none !important;
}

.hl-shop-page .hl-shop-pagination ul.page-numbers li,
.hl-shop-page .woocommerce-pagination ul.page-numbers li {
	display: inline-flex !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.hl-shop-page .hl-shop-pagination .page-numbers,
.hl-shop-page .woocommerce-pagination .page-numbers {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-width: 42px;
	height: 42px;
	margin: 0 !important;
	padding: 0 12px !important;
	border-radius: 10px !important;
	border: 1px solid var(--hl-page-border) !important;
	background: rgba(255, 255, 255, 0.03) !important;
	color: var(--hl-page-muted) !important;
	font-family: "Roboto Condensed", sans-serif;
	font-size: 14px !important;
	font-weight: 600;
	line-height: 1 !important;
	letter-spacing: 0 !important;
	text-transform: none !important;
	text-decoration: none !important;
	transition: all 0.2s ease;
}

.hl-shop-page .hl-shop-pagination .page-numbers.current,
.hl-shop-page .woocommerce-pagination .page-numbers.current,
.hl-shop-page .hl-shop-pagination a.page-numbers:hover,
.hl-shop-page .woocommerce-pagination a.page-numbers:hover {
	background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%) !important;
	border-color: transparent !important;
	color: #fff !important;
	box-shadow: 0 8px 20px rgba(14, 165, 233, 0.28);
}

.hl-shop-page .hl-shop-pagination .page-numbers.dots,
.hl-shop-page .woocommerce-pagination .page-numbers.dots {
	min-width: auto;
	padding: 0 4px !important;
	border-color: transparent !important;
	background: transparent !important;
	box-shadow: none !important;
}

/* â”€â”€â”€ Override legacy dark inline styles on shop/blog pages â”€â”€â”€ */
.hl-shop-page a,
.hl-blog-page a,
.hl-single-product-page a {
	font-size: inherit;
}

.hl-shop-page .module-title,
.hl-blog-page .module-title,
.hl-single-product .module-title {
	color: #fff;
}

.hl-single-product-page .hl-single-product .product_title {
	display: none;
}

@media (min-width: 992px) and (max-width: 1199px) {
	.hl-single-product-page .hl-related-products ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* â”€â”€â”€ Responsive â”€â”€â”€ */
@media (max-width: 991px) {
	.hl-shop-page__layout,
	.hl-blog-page__layout,
	.hl-single-product__top,
	.hl-single-product__bottom {
		grid-template-columns: 1fr;
	}

	.hl-shop-page .hl-home-products__grid,
	.hl-shop-page .hl-shop-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.hl-single-product-page .hl-related-products ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.xd-gallery-wrap {
		grid-template-columns: 1fr;
		padding: 12px;
		overflow: hidden;
		gap: 12px;
	}

	.xd-main-col {
		order: 1;
		width: 100%;
		min-width: 0;
	}

	.xd-main-img-wrap {
		aspect-ratio: 1 / 1;
	}

	.xd-thumb-col {
		order: 2;
		flex-direction: row;
		align-items: center;
		width: 100%;
		max-width: 100%;
		min-width: 0;
		gap: 0;
		margin-top: 4px;
	}

	.xd-thumb-nav {
		display: none;
	}

	.xd-thumb-viewport {
		width: 100%;
		max-width: 100%;
		height: auto;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		scrollbar-width: none;
	}

	.xd-thumb-viewport::-webkit-scrollbar {
		display: none;
	}

	.xd-thumb-track {
		flex-direction: row;
		flex-wrap: nowrap;
		gap: 8px;
		width: max-content;
		max-width: none;
		transform: none !important;
		padding: 2px 0 4px;
	}

	.xd-thumb-item {
		flex: 0 0 56px;
		width: 56px;
		height: 56px;
	}

	.xd-gallery-badge {
		top: 20px;
		left: 20px;
	}

	.xd-nav {
		width: 36px;
		height: 36px;
	}

	.xd-zoom-btn {
		width: 36px;
		height: 36px;
		right: 10px;
		bottom: 10px;
	}

	.xd-dots {
		bottom: 10px;
	}

	.hl-single-product-page .hl-product-sidebar {
		position: static;
	}

	.hl-single-product-page .hl-product-sidebar .hl-sidebar-card.blog-bar {
		margin-top: 8px;
	}

	.hl-shop-filter-toggle {
		display: inline-flex;
	}

	.hl-shop-sidebar-overlay {
		display: block;
		position: fixed;
		inset: 0;
		background: rgba(0, 0, 0, 0.55);
		opacity: 0;
		visibility: hidden;
		transition: opacity 0.25s ease, visibility 0.25s ease;
		z-index: 99990;
	}

	body.hl-shop-filter-open .hl-shop-sidebar-overlay {
		opacity: 1;
		visibility: visible;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop {
		position: fixed !important;
		top: 0 !important;
		left: 0 !important;
		width: min(360px, 92vw) !important;
		height: 100vh !important;
		height: 100dvh !important;
		padding: 0 !important;
		overflow-x: hidden !important;
		overflow-y: auto !important;
		transform: translateX(-105%);
		transition: transform 0.28s ease, box-shadow 0.28s ease;
		z-index: 99999 !important;
		background: linear-gradient(180deg, #242424 0%, #161616 55%, #121212 100%) !important;
		box-shadow: none;
		-webkit-overflow-scrolling: touch;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop.is-open {
		transform: translateX(0);
		box-shadow: 12px 0 40px rgba(0, 0, 0, 0.45);
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-shop-sidebar__card,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-sidebar-card,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-sidebar-card.blog-bar {
		min-height: calc(100vh - 48px);
		min-height: calc(100dvh - 48px);
		margin: 0 !important;
		padding-bottom: 28px !important;
		border: 0 !important;
		border-radius: 0 !important;
		background: transparent !important;
		box-shadow: none !important;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop .aside-content,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .aside-cate,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-shop-sidebar__widgets,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-shop-sidebar__filters,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-shop-filter,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .widget {
		background: transparent !important;
		color: var(--hl-page-text) !important;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop .title-head,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .widget-title {
		color: #38bdf8 !important;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop a,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop li,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .product-categories a {
		color: rgba(244, 239, 232, 0.78) !important;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop .product-categories .current-cat > a {
		color: #fff !important;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-sidebar-card__title {
		position: sticky;
		top: 48px;
		z-index: 1;
		margin: 0 !important;
		padding: 18px 18px 14px !important;
		background: linear-gradient(180deg, rgba(36, 36, 36, 0.98) 0%, rgba(36, 36, 36, 0.92) 100%) !important;
		backdrop-filter: blur(8px);
	}

	.hl-shop-sidebar__close {
		display: flex;
		align-items: center;
		justify-content: space-between;
		position: sticky;
		top: 0;
		z-index: 3;
		width: 100%;
		min-height: 48px;
		margin: 0;
		padding: 0 16px;
		border: 0;
		border-bottom: 1px solid rgba(56, 189, 248, 0.18);
		background: rgba(18, 18, 18, 0.98) !important;
		color: #fff;
		font-family: "Roboto Condensed", sans-serif;
		font-size: 14px;
		font-weight: 700;
		letter-spacing: 0.8px;
		text-transform: uppercase;
		line-height: 1;
		cursor: pointer;
	}

	.hl-shop-sidebar__close::before {
		content: "ÄÃ³ng bá»™ lá»c";
	}

	.hl-shop-sidebar__close::after {
		content: "\00d7";
		font-size: 28px;
		line-height: 1;
		opacity: 0.85;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-shop-sidebar__filters {
		border-top: 1px solid rgba(56, 189, 248, 0.14);
		margin-top: 8px;
		padding-top: 4px;
	}

	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-shop-filter__body,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .hl-shop-active-filters,
	.hl-shop-page .hl-shop-sidebar.sidebar-shop .product-categories {
		padding-left: 12px;
		padding-right: 12px;
	}

	body.hl-shop-filter-open {
		overflow: hidden;
	}
}

@media (max-width: 575px) {
	.hl-page-hero {
		min-height: 210px;
	}

	.hl-page-hero__inner {
		padding: 28px 15px 32px;
	}

	.hl-page-hero__content {
		padding-left: 14px;
	}

	.hl-page-hero__breadcrumb-item {
		font-size: 10px;
		letter-spacing: 0.1em;
	}

	.hl-page-hero__breadcrumb-item span[aria-current="page"] {
		max-width: 180px;
	}

	.hl-page-hero__title {
		font-size: 22px;
		line-height: 1.25;
	}

	.hl-page-hero__subtitle {
		font-size: 14px;
		margin-top: 10px;
		padding-top: 10px;
	}

	.hl-shop-page .hl-home-products__grid,
	.hl-shop-page .hl-shop-grid,
	.hl-blog-grid,
	.hl-single-product-page .hl-related-products ul.products {
		grid-template-columns: 1fr;
	}

	.hl-single-product__summary-card,
	.hl-article__card,
	.hl-product-tabs {
		padding: 18px 16px;
	}

	.hl-single-post .hl-article__taxonomy {
		flex-direction: column;
		gap: 8px;
	}

	.hl-single-post .hl-article__taxonomy-label {
		flex: 0 0 auto;
		min-width: 0;
		margin: 0;
	}

	.hl-static-page .hl-page-card {
		padding: 22px 18px 24px;
	}

	.hl-static-page .hl-page-prose,
	.hl-static-page .entry-content {
		font-size: 15px;
		line-height: 1.85;
	}
}

/* â”€â”€â”€ Single product: override legacy WooCommerce float/width CSS â”€â”€â”€ */
.hl-single-product-page .hl-single-product.details-product,
.hl-single-product-page .hl-single-product {
	overflow: visible !important;
}

.hl-single-product-page .hl-single-product__gallery,
.hl-single-product-page .hl-single-product__summary,
.hl-single-product-page .hl-single-product__gallery.product-images,
.hl-single-product-page .hl-single-product__summary .summary {
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	clear: none !important;
}

.hl-single-product-page .hl-product-share {
	position: static !important;
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	width: 100% !important;
}

.hl-single-product-page .hl-product-share__list {
	display: flex !important;
	flex-direction: row !important;
	flex-wrap: wrap !important;
	align-items: center !important;
}

.hl-single-product-page .hl-product-share__list li {
	float: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.hl-single-product-page .hl-product-share__list a i {
	font-family: "Font Awesome 6 Brands", "Font Awesome 6 Free" !important;
	font-style: normal !important;
	font-weight: 400 !important;
	display: inline-block !important;
	line-height: 1 !important;
}

.hl-single-product-page .hl-related-products,
.hl-single-product-page .hl-single-product__related .related.products {
	overflow: visible !important;
	padding: 0 !important;
	margin: 0 !important;
	width: 100% !important;
}

.hl-single-product-page .hl-related-products ul.products,
.hl-single-product-page .hl-single-product__related ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 24px !important;
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	list-style: none !important;
}

.hl-single-product-page .hl-related-products ul.products::before,
.hl-single-product-page .hl-related-products ul.products::after,
.hl-single-product-page .hl-single-product__related ul.products::before,
.hl-single-product-page .hl-single-product__related ul.products::after {
	display: none !important;
	content: none !important;
}

.hl-single-product-page .hl-related-products ul.products > li,
.hl-single-product-page .hl-related-products ul.products li.product,
.hl-single-product-page .hl-related-products .hl-product-card {
	float: none !important;
	width: 100% !important;
	max-width: 100% !important;
	min-width: 0 !important;
	margin: 0 !important;
	padding: 0 !important;
	clear: none !important;
	font-size: inherit !important;
	text-align: inherit !important;
	list-style: none !important;
}

.hl-single-product-page .hl-related-products ul.products li.product img,
.hl-single-product-page .hl-related-products .hl-product-card__photo {
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	object-fit: cover !important;
}

.hl-single-product-page .hl-related-products ul.products li.product h2,
.hl-single-product-page .hl-related-products ul.products li.product h3,
.hl-single-product-page .hl-related-products .hl-product-card__title {
	margin: 0 !important;
	padding: 0 !important;
	letter-spacing: normal !important;
	text-transform: none !important;
	white-space: normal !important;
	word-break: normal !important;
	overflow-wrap: anywhere !important;
}

.hl-single-product-page .hl-related-products .hl-product-card__title a {
	display: block !important;
	white-space: normal !important;
}

.hl-single-product-page .hl-related-products .hl-product-card__cart {
	white-space: nowrap !important;
	width: 100% !important;
}

@media (max-width: 991px) {
	.hl-single-product-page .hl-related-products ul.products,
	.hl-single-product-page .hl-single-product__related ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.hl-product-sidebar {
		position: static;
	}
}

@media (max-width: 575px) {
	.hl-single-product-page .hl-related-products ul.products,
	.hl-single-product-page .hl-single-product__related ul.products {
		grid-template-columns: 1fr !important;
	}
}

/* ==========================================================================
   Search page â€” products + posts
   ========================================================================== */

.hl-search-page {
	padding-top: 0;
	padding-bottom: 56px;
}

.hl-search-page__intro {
	margin-top: 15px;
	margin-bottom: 36px;
	padding: 28px 32px;
	border-radius: 20px;
	background: #50585b;
	border: 1px solid rgba(var(--hl-page-accent-rgb), 0.22);
	box-shadow: 0 12px 40px rgba(15, 23, 42, 0.06);
}

.hl-search-page__form {
	display: flex;
	align-items: stretch;
	gap: 12px;
	max-width: 720px;
	margin: 0 auto;
}

.hl-search-page__input {
	flex: 1 1 auto;
	min-width: 0;
	height: 52px;
	padding: 0 18px;
	border: 1px solid rgba(15, 23, 42, 0.12);
	border-radius: 14px;
	font-size: 16px;
	color: #0f172a;
	background: #fff;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.hl-search-page__input:focus {
	outline: none;
	border-color: var(--hl-page-accent);
	box-shadow: 0 0 0 3px rgba(var(--hl-page-accent-rgb), 0.22);
}

.hl-search-page__submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	flex: 0 0 auto;
	height: 52px;
	padding: 8px 20px;
	padding-right: 13px;
	border: 0;
	border-radius: 20px;
	font-size: 20px;
	font-weight: 600;
	color: #fff;
	background: #87ceeb;
	cursor: pointer;
	transition: transform 0.2s ease, box-shadow 0.2s ease, background 0.2s ease;
}

.hl-search-page__submit:hover {
	transform: translateY(-1px);
	box-shadow: 0 10px 24px rgba(var(--hl-page-accent-rgb), 0.35);
}

.hl-search-page__summary {
	margin: 18px 0 0;
	text-align: center;
	font-size: 14px;
	color: #64748b;
}

.hl-search-section {
	margin-bottom: 48px;
}

.hl-search-section:last-child {
	margin-bottom: 0;
}

.hl-search-section__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	margin-bottom: 24px;
	padding-bottom: 16px;
	border-bottom: 2px solid rgba(var(--hl-page-accent-rgb), 0.18);
}

.hl-search-section__title-wrap {
	display: flex;
	align-items: center;
	gap: 12px;
	min-width: 0;
}

.hl-search-section__title {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-size: clamp(22px, 2.4vw, 28px);
	font-weight: 700;
	color: #0f172a;
	line-height: 1.2;
}

.hl-search-section__title i {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 42px;
	height: 42px;
	border-radius: 12px;
	font-size: 18px;
	color: var(--hl-page-accent-deep);
	background: rgba(var(--hl-page-accent-rgb), 0.16);
}

.hl-search-section__count {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 34px;
	height: 34px;
	padding: 0 10px;
	border-radius: 999px;
	font-size: 13px;
	font-weight: 700;
	color: var(--hl-page-accent-deep);
	background: rgba(var(--hl-page-accent-rgb), 0.14);
}

.hl-search-section__more {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	flex-shrink: 0;
	font-size: 14px;
	font-weight: 600;
	color: var(--hl-page-accent-deep);
	text-decoration: none;
	transition: color 0.2s ease, gap 0.2s ease;
}

.hl-search-section__more:hover {
	color: #0f172a;
	gap: 10px;
}

.hl-search-page__products-wrap.hl-shop-page {
	padding: 0;
	background: transparent;
}

.hl-search-section--products .hl-home-products {
	margin: 0;
}

.hl-search-section--posts .hl-blog-grid {
	margin-top: 0;
}

.hl-search-page__empty {
	max-width: 560px;
	margin: 12px auto 0;
	padding: 48px 32px;
	text-align: center;
	border-radius: 20px;
	background: #fff;
	border: 1px dashed rgba(var(--hl-page-accent-rgb), 0.35);
}

.hl-search-page__empty-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 72px;
	height: 72px;
	margin-bottom: 18px;
	border-radius: 50%;
	font-size: 28px;
	color: var(--hl-page-accent-deep);
	background: rgba(var(--hl-page-accent-rgb), 0.14);
}

.hl-search-page__empty-title {
	margin: 0 0 10px;
	font-size: 24px;
	font-weight: 700;
	color: #0f172a;
}

.hl-search-page__empty-text {
	margin: 0;
	font-size: 15px;
	line-height: 1.7;
	color: #64748b;
}

@media (max-width: 767px) {
	.hl-search-page__intro {
		padding: 22px 18px;
	}

	.hl-search-page__form {
		flex-direction: column;
	}

	.hl-search-page__submit {
		width: 100%;
	}

	.hl-search-section__head {
		flex-direction: column;
		align-items: flex-start;
	}

	.hl-search-section__more {
		align-self: flex-start;
	}
}

/* Search AJAX pagination */
.hl-search-section__body {
	position: relative;
}

.hl-search-section__loader {
	position: absolute;
	inset: 0;
	z-index: 4;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.72);
	backdrop-filter: blur(4px);
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transition: opacity 0.2s ease, visibility 0.2s ease;
}

.hl-search-section.is-loading .hl-search-section__loader {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}

.hl-search-section.is-loading .hl-search-section__results {
	opacity: 0.45;
	filter: blur(1px);
	transition: opacity 0.2s ease, filter 0.2s ease;
}

.hl-search-section__spinner {
	width: 42px;
	height: 42px;
	border: 3px solid rgba(var(--hl-page-accent-rgb), 0.2);
	border-top-color: var(--hl-page-accent-deep);
	border-radius: 50%;
	animation: hl-search-spin 0.75s linear infinite;
}

@keyframes hl-search-spin {
	to {
		transform: rotate(360deg);
	}
}

.hl-search-ajax-pagination {
	margin-top: 28px;
	padding: 18px 20px;
	border-radius: 16px;
	box-shadow: 0 10px 30px rgba(15, 23, 42, 0.05);
	text-align: center;
}

.hl-search-ajax-pagination ul.page-numbers {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.hl-search-ajax-pagination ul.page-numbers li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.hl-search-ajax-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	min-width: 42px;
	height: 42px;
	margin: 0;
	padding: 0 14px;
	border-radius: 12px;
	background: transparent;
	color: #475569;
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	transition: all 0.2s ease;
	box-shadow: 0 2px 8px rgba(15, 23, 42, 0.04);
	border: none;
}

.hl-search-ajax-pagination .page-numbers li{
	border: 1px solid #87ceeb;
	border-radius: 15px;
}

.hl-search-ajax-pagination a.page-numbers:hover {
	border-color: rgba(var(--hl-page-accent-rgb), 0.45);
	background: rgba(var(--hl-page-accent-rgb), 0.12);
	color: var(--hl-page-accent-deep);
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(var(--hl-page-accent-rgb), 0.2);
}

.hl-search-ajax-pagination .page-numbers.current {
	border-color: transparent;
	background: linear-gradient(135deg, var(--hl-page-accent) 0%, var(--hl-page-accent-deep) 100%);
	color: #fff;
	box-shadow: 0 10px 24px rgba(var(--hl-page-accent-rgb), 0.35);
}

.hl-search-ajax-pagination .page-numbers.disabled {
	opacity: 0.45;
	cursor: not-allowed;
	box-shadow: none;
}

.hl-search-ajax-pagination .page-numbers.dots {
	min-width: 34px;
	padding: 0 6px;
	border-color: transparent;
	background: transparent;
	box-shadow: none;
	color: #94a3b8;
}

.hl-search-ajax-pagination .page-numbers.prev,
.hl-search-ajax-pagination .page-numbers.next {
	min-width: auto;
	padding: 0 16px;
}

.hl-search-pagination__meta {
	margin: 14px 0 0;
	font-size: 13px;
	font-weight: 600;
	color: #64748b;
	letter-spacing: 0.02em;
}

@media (max-width: 575px) {
	.hl-search-ajax-pagination {
		padding: 14px 12px;
	}

	.hl-search-ajax-pagination .page-numbers.prev,
	.hl-search-ajax-pagination .page-numbers.next {
		padding: 0 12px;
		font-size: 13px;
	}

	.hl-search-ajax-pagination .page-numbers {
		min-width: 38px;
		height: 38px;
		padding: 0 10px;
	}
}

/* Legacy contact styles removed — see contact-page.css */

/* ==========================================================================
   404 page
   ========================================================================== */

.hl-404-page {
	padding-top: 0;
	padding-bottom: 72px;
}

.hl-404-scene {
	position: relative;
	max-width: 880px;
	margin: -24px auto 0;
	padding: 48px 40px 40px;
	text-align: center;
	border-radius: var(--hl-page-radius);
	background:
		radial-gradient(ellipse 80% 50% at 50% 0%, rgba(var(--hl-page-accent-rgb), 0.12) 0%, transparent 70%),
		linear-gradient(180deg, #12161d 0%, #0d1017 100%);
	border: 1px solid var(--hl-page-border);
	box-shadow: var(--hl-page-shadow);
	overflow: hidden;
	margin-top: 65px;
}

.hl-404-scene__bg {
	position: absolute;
	inset: 0;
	pointer-events: none;
	overflow: hidden;
}

.hl-404-scene__ring {
	position: absolute;
	border-radius: 50%;
	border: 1px solid rgba(var(--hl-page-accent-rgb), 0.12);
}

.hl-404-scene__ring--1 {
	width: 420px;
	height: 420px;
	top: -180px;
	left: 50%;
	transform: translateX(-50%);
	animation: hl404-spin 28s linear infinite;
}

.hl-404-scene__ring--2 {
	width: 300px;
	height: 300px;
	top: -120px;
	left: 50%;
	transform: translateX(-50%);
	border-style: dashed;
	opacity: 0.5;
	animation: hl404-spin 20s linear infinite reverse;
}

.hl-404-scene__ring--3 {
	width: 560px;
	height: 560px;
	bottom: -320px;
	right: -160px;
	opacity: 0.35;
}

.hl-404-scene__dot {
	position: absolute;
	border-radius: 50%;
	background: rgba(var(--hl-page-accent-rgb), 0.35);
}

.hl-404-scene__dot--1 {
	width: 8px;
	height: 8px;
	top: 18%;
	left: 14%;
	animation: hl404-float 4s ease-in-out infinite;
}

.hl-404-scene__dot--2 {
	width: 6px;
	height: 6px;
	top: 28%;
	right: 18%;
	animation: hl404-float 5s ease-in-out infinite 0.8s;
}

.hl-404-scene__dot--3 {
	width: 10px;
	height: 10px;
	bottom: 22%;
	left: 20%;
	animation: hl404-float 6s ease-in-out infinite 1.2s;
}

@keyframes hl404-spin {
	to { transform: translateX(-50%) rotate(360deg); }
}

@keyframes hl404-float {
	0%, 100% { transform: translateY(0); opacity: 0.5; }
	50% { transform: translateY(-10px); opacity: 1; }
}

.hl-404-scene__number {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(8px, 2vw, 20px);
	margin-bottom: 24px;
}

.hl-404-scene__digit {
	font-family: "Roboto Condensed", sans-serif;
	font-size: clamp(88px, 18vw, 148px);
	font-weight: 700;
	line-height: 1;
	letter-spacing: -0.05em;
	color: transparent;
	background: linear-gradient(180deg, #fff 15%, rgba(var(--hl-page-accent-rgb), 0.9) 100%);
	-webkit-background-clip: text;
	background-clip: text;
	text-shadow: 0 0 60px rgba(var(--hl-page-accent-rgb), 0.25);
}

.hl-404-scene__orb {
	width: clamp(72px, 14vw, 108px);
	height: clamp(72px, 14vw, 108px);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: clamp(28px, 5vw, 42px);
	color: var(--hl-page-accent);
	background:
		radial-gradient(circle at 35% 30%, rgba(255, 255, 255, 0.18), transparent 55%),
		linear-gradient(145deg, rgba(var(--hl-page-accent-rgb), 0.22) 0%, rgba(15, 23, 42, 0.9) 100%);
	border: 2px solid rgba(var(--hl-page-accent-rgb), 0.45);
	box-shadow:
		0 0 40px rgba(var(--hl-page-accent-rgb), 0.25),
		inset 0 0 24px rgba(var(--hl-page-accent-rgb), 0.08);
	animation: hl404-pulse 3s ease-in-out infinite;
}

@keyframes hl404-pulse {
	0%, 100% { transform: scale(1); box-shadow: 0 0 40px rgba(var(--hl-page-accent-rgb), 0.25), inset 0 0 24px rgba(var(--hl-page-accent-rgb), 0.08); }
	50% { transform: scale(1.04); box-shadow: 0 0 56px rgba(var(--hl-page-accent-rgb), 0.38), inset 0 0 32px rgba(var(--hl-page-accent-rgb), 0.12); }
}

.hl-404-scene__content {
	position: relative;
	z-index: 1;
	max-width: 520px;
	margin: 0 auto 32px;
}

.hl-404-scene__title {
	margin: 0 0 12px;
	font-family: "Roboto Condensed", sans-serif;
	font-size: clamp(24px, 3vw, 34px);
	font-weight: 700;
	color: #fff;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	line-height: 1.2;
}

.hl-404-scene__text {
	margin: 0;
	font-size: 15px;
	line-height: 1.75;
	color: var(--hl-page-muted);
}

.hl-404-links {
	position: relative;
	z-index: 1;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 14px;
	text-align: left;
}

.hl-404-link-card {
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 18px 18px 18px 16px;
	border-radius: 14px;
	border: 1px solid var(--hl-page-border);
	background: rgba(255, 255, 255, 0.03);
	color: var(--hl-page-text);
	text-decoration: none;
	transition: transform 0.25s ease, border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.hl-404-link-card:hover {
	transform: translateY(-3px);
	border-color: rgba(var(--hl-page-accent-rgb), 0.45);
	background: rgba(var(--hl-page-accent-rgb), 0.08);
	box-shadow: 0 14px 32px rgba(0, 0, 0, 0.22);
	text-decoration: none;
	color: #fff;
}

.hl-404-link-card--primary {
	border-color: rgba(var(--hl-page-accent-rgb), 0.35);
	background: linear-gradient(135deg, rgba(var(--hl-page-accent-rgb), 0.16) 0%, rgba(255, 255, 255, 0.04) 100%);
}

.hl-404-link-card--primary:hover {
	background: linear-gradient(135deg, rgba(var(--hl-page-accent-rgb), 0.24) 0%, rgba(255, 255, 255, 0.06) 100%);
}

.hl-404-link-card__icon {
	width: 46px;
	height: 46px;
	border-radius: 12px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	font-size: 18px;
	color: var(--hl-page-accent);
	background: rgba(var(--hl-page-accent-rgb), 0.12);
	transition: background 0.25s ease, color 0.25s ease;
}

.hl-404-link-card:hover .hl-404-link-card__icon {
	background: linear-gradient(135deg, var(--hl-page-accent) 0%, var(--hl-page-accent-2) 100%);
	color: #0f2d3d;
}

.hl-404-link-card__body {
	flex: 1;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 3px;
}

.hl-404-link-card__title {
	font-family: "Roboto Condensed", sans-serif;
	font-size: 14px;
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	color: #fff;
}

.hl-404-link-card__desc {
	font-size: 12px;
	line-height: 1.45;
	color: var(--hl-page-muted);
}

.hl-404-link-card:hover .hl-404-link-card__desc {
	color: rgba(255, 255, 255, 0.72);
}

.hl-404-link-card__arrow {
	flex-shrink: 0;
	font-size: 13px;
	color: rgba(var(--hl-page-accent-rgb), 0.55);
	transition: transform 0.25s ease, color 0.25s ease;
}

.hl-404-link-card:hover .hl-404-link-card__arrow {
	transform: translateX(4px);
	color: var(--hl-page-accent);
}

@media (max-width: 767px) {
	.hl-404-scene {
		margin-top: 0;
		padding: 36px 20px 28px;
	}

	.hl-404-links {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 479px) {
	.hl-404-scene__number {
		gap: 6px;
	}

	.hl-404-link-card {
		padding: 16px 14px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.hl-404-scene__ring,
	.hl-404-scene__dot,
	.hl-404-scene__orb {
		animation: none;
	}
}
