/* Bracelet Documentation — final cascade for client revision 1.3.0. */
.hz-header {
	border-bottom: 1px solid rgba(255, 255, 255, .48);
	background: rgba(255, 255, 255, .64);
	    box-shadow: 0px 1px 8px rgba(8, 17, 27, .90);
	-webkit-backdrop-filter: blur(26px) saturate(165%);
	backdrop-filter: blur(26px) saturate(165%);
}

.hz-header.is-scrolled {
	background: rgba(255, 255, 255, .78);
	    box-shadow: 0px 1px 8px rgba(8, 17, 27, .90);
}

.hz-header-actions .hz-language,
.hz-header-actions .hz-currency,
.hz-header-actions .hz-language > span,
.hz-header-actions .hz-language .trp-language-switcher,
.hz-header-actions .hz-language .trp-language-switcher > div,
.hz-header-actions .hz-language .trp-language-switcher > div > a,
.hz-header-actions .hz-currency select {
	border: 0 !important;
	background-color: transparent !important;
	box-shadow: none !important;
}

.hz-hero h1 {
	max-width: 500px;
	font-size: clamp(2.8rem, 4.35vw, 4.75rem);
	line-height: 1.01;
}

.hz-promise,
.hz-process {
	background: #fff !important;
}

.hz-process::before,
.hz-process::after { display: none !important; }

.hz-process__cta {
	width: max-content;
	margin: 24px auto 0;
}

.hz-promise__heading .hz-kicker,
.hz-promise__grid article > span,
.hz-promise__grid .hz-icon,
.hz-promise__grid h3 { color: #08111b; }

.hz-promise__grid article > span { border-color: rgba(8, 17, 27, .3); }

.hz-elements {
	background: #fff !important;
	color: #08111b !important;
}

.hz-elements .hz-kicker,
.hz-elements .hz-section-heading,
.hz-elements .hz-section-heading h2,
.hz-elements .hz-section-heading__support { color: #08111b !important; }

.hz-elements .hz-section-heading h2 { font-size: clamp(2.3rem, 3.6vw, 3.85rem); }

.hz-element-grid {
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 16px;
}

.hz-element-card,
.hz-element-card:nth-child(4),
.hz-element-card:nth-child(5),
.hz-element-card:last-child {
	position: relative;
	display: flex;
	min-height: 430px;
	flex-direction: column;
	align-items: flex-start;
	justify-content: space-between;
	padding: 24px;
	overflow: hidden;
	border: 1px solid #e3e0d9;
	background: #f7f6f2;
	color: #08111b;
	isolation: isolate;
}

.hz-element-card__image {
	z-index: 0;
	top: 30px;
	width: 96%;
	opacity: 1;
}

.hz-element-card::after {
	z-index: 1;
	background: linear-gradient(180deg, rgba(247, 246, 242, 0) 28%, rgba(247, 246, 242, .72) 58%, #f7f6f2 87%);
}

.hz-element-card__icon,
.hz-element-card__content,
.hz-element-card__cta {
	position: relative;
	z-index: 2;
}

.hz-element-card__icon {
	border: 1px solid rgba(8, 17, 27, .16);
	background: rgba(255, 255, 255, .82);
	color: #08111b;
}

.hz-element-card__content {
	display: flex;
	flex-direction: column;
	margin-top: auto;
}

.hz-element-card__content strong,
.hz-element-card__content small { color: #08111b; }

.hz-element-card__cta {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 18px;
	border-bottom: 1px solid currentColor;
	color: #08111b;
	font-size: .67rem;
	font-weight: 800;
	letter-spacing: .09em;
	text-transform: uppercase;
}

.hz-element-card__cta .hz-icon { width: 15px; height: 15px; }

.hz-themes__heading {
	display: flex;
	max-width: 820px;
	flex-direction: column;
	align-items: center;
	gap: 22px;
	margin-inline: auto;
	text-align: center;
}

.hz-themes__heading h2 { font-size: clamp(2.3rem, 3.7vw, 4rem); }

.hz-stones,
.hz-stones .hz-material-card,
.hz-stones .hz-material-card:nth-child(3n + 2),
.hz-stones .hz-material-card:nth-child(3n + 3) { background: #fff !important; }

.hz-stones::before,
.hz-stones .hz-material-card::before,
.hz-stones .hz-material-card::after { display: none !important; }

.hz-stones .hz-section-heading { display: block; }
.hz-stones .hz-section-heading h2 { font-size: clamp(2.2rem, 3.4vw, 3.65rem); }

.hz-stones .hz-section-heading__support {
	max-width: 520px;
	margin: 14px 0 0;
	color: var(--hz-muted);
}

.hz-stones .hz-material-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.hz-stones .hz-material-card {
	min-height: 360px;
	border: 1px solid var(--hz-line);
}

.hz-stones .hz-material-card > img {
	position: relative;
	z-index: 1;
	width: 100%;
	height: auto;
	padding: 18px;
	background: #fff;
	object-fit: contain;
}

.hz-stones .hz-material-card > div {
	position: relative;
	z-index: 2;
	color: #08111b;
}

.hz-newsletter h2 { font-size: clamp(2.15rem, 3.5vw, 3.7rem); }

.hz-newsletter-gate {
	display: flex;
	align-items: flex-start;
	flex-direction: column;
	gap: 18px;
	padding: clamp(24px, 3vw, 38px);
	border: 1px solid rgba(8, 17, 27, .16);
	background: rgba(255, 255, 255, .54);
}

.hz-newsletter-gate p { max-width: 430px; margin: 0; }

.hz-shop-catalog-head {
	padding: clamp(136px, 14vw, 188px) 0 clamp(42px, 6vw, 72px);
	background: #fff;
	text-align: center;
}

.hz-shop-catalog-head .hz-shell {
	display: flex;
	align-items: center;
	flex-direction: column;
}

.hz-shop-catalog-head h1 {
	margin: 5px 0 14px;
	font-size: clamp(2.8rem, 5vw, 5.3rem);
	font-weight: 400;
	line-height: 1;
	text-transform: uppercase;
}

.hz-shop-catalog-head > .hz-shell > p:not(.hz-kicker) {
	max-width: 560px;
	margin: 0;
	color: var(--hz-muted);
	font-size: .86rem;
	line-height: 1.7;
}

.hz-product-filters {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-top: 34px;
}

.hz-product-filters a {
	display: inline-flex;
	align-items: center;
	min-height: 38px;
	padding: 8px 18px;
	border: 1px solid #d9d6cf;
	border-radius: 999px;
	background: #fff;
	color: #08111b;
	font-size: .67rem;
	font-weight: 750;
	letter-spacing: .05em;
}

.hz-product-filters a:hover,
.hz-product-filters a:focus-visible,
.hz-product-filters a.is-active {
	border-color: #08111b;
	background: #08111b;
	color: #fff;
}

.hz-commerce-archive > .hz-shell { padding-bottom: clamp(76px, 9vw, 130px); }

.hz-commerce-archive h1.page-title { display: none; }

.hz-commerce-archive .woocommerce-result-count,
.hz-commerce-archive .woocommerce-ordering {
	margin-bottom: 28px;
	font-size: .72rem;
}

.hz-commerce-archive ul.products,
.woocommerce-account ul.products {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(28px, 4vw, 58px) clamp(14px, 2vw, 28px) !important;
}

.woocommerce ul.products li.product.hz-product-card {
	position: relative;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	float: none !important;
}

.hz-product-card__media {
	position: relative;
	display: block;
	aspect-ratio: 1;
	overflow: hidden;
	background: #f3f2ee;
}

.hz-product-card__media > a:first-child { display: block; height: 100%; }

.woocommerce ul.products li.product.hz-product-card .hz-product-card__media img {
	width: 100%;
	height: 100%;
	margin: 0;
	transform: scale(.94);
	object-fit: contain;
	transition: transform 520ms cubic-bezier(.22, 1, .36, 1);
}

.hz-product-card:hover .hz-product-card__media img,
.hz-product-card:focus-within .hz-product-card__media img { transform: scale(1.01); }

.hz-favorite-toggle {
	position: absolute;
	z-index: 4;
	top: 12px;
	right: 12px;
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	padding: 0;
	border: 1px solid rgba(8, 17, 27, .12);
	border-radius: 50%;
	background: rgba(255, 255, 255, .88);
	color: #08111b;
	cursor: pointer;
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}

.hz-favorite-toggle .hz-icon { width: 17px; height: 17px; }
.hz-favorite-toggle.is-active .hz-icon { fill: #08111b; }
.hz-favorite-toggle.is-loading { opacity: .55; }

.hz-product-card__cart,
.woocommerce ul.products li.product .hz-product-card__cart.button {
	position: absolute;
	z-index: 3;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 48px;
	padding: 12px;
	border: 0;
	border-radius: 0;
	background: #08111b;
	box-shadow: none;
	color: #fff;
	font-size: .68rem;
	font-weight: 800;
	letter-spacing: .08em;
	text-transform: uppercase;
	transform: translateY(102%);
	transition: transform 300ms cubic-bezier(.22, 1, .36, 1);
}

.hz-product-card:hover .hz-product-card__cart,
.hz-product-card:focus-within .hz-product-card__cart,
.woocommerce ul.products li.product.hz-product-card:hover .hz-product-card__cart,
.woocommerce ul.products li.product.hz-product-card:focus-within .hz-product-card__cart { transform: translateY(0); }

.hz-product-card__details { padding-top: 16px; text-align: left; }

.hz-product-card__category,
.hz-product-card__category a {
	color: #8a8172;
	font-size: .61rem;
	font-weight: 700;
	letter-spacing: .08em;
	text-transform: uppercase;
}

.woocommerce ul.products li.product.hz-product-card .woocommerce-loop-product__title {
	padding: 0;
	margin: 7px 0 5px;
	font-size: clamp(1rem, 1.35vw, 1.22rem);
	font-weight: 500;
	line-height: 1.3;
}

.woocommerce ul.products li.product.hz-product-card .price {
	margin: 0;
	color: #5d5649;
	font-size: .78rem;
}

.hz-favorites-empty {
	padding: clamp(30px, 5vw, 60px);
	border: 1px solid var(--hz-line);
	background: #f7f6f2;
	text-align: center;
}

.hz-favorites-empty h2 { margin-bottom: 10px; font-size: clamp(2rem, 3vw, 3rem); }
.hz-favorites-empty .hz-button { margin-top: 16px; }

@media (max-width: 1100px) {
	.hz-element-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.hz-commerce-archive ul.products,
	.woocommerce-account ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 760px) {
	.hz-hero h1 { font-size: clamp(2.5rem, 12vw, 3.6rem); }
	.hz-promise__grid,
	.hz-element-grid,
	.hz-stones .hz-material-grid { grid-template-columns: 1fr; }
	.hz-element-card,
	.hz-element-card:nth-child(4),
	.hz-element-card:nth-child(5),
	.hz-element-card:last-child { min-height: 390px; }
	.hz-commerce-archive ul.products,
	.woocommerce-account ul.products { grid-template-columns: 1fr; }
	.hz-product-card__cart,
	.woocommerce ul.products li.product .hz-product-card__cart.button { transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
	.hz-product-card__cart { transition-duration: .01ms !important; }
}

/* v1.3.3: keep WooCommerce clearfix pseudo-elements out of the account grid. */
.woocommerce-account .woocommerce:not(:has(#customer_login))::before,
.woocommerce-account .woocommerce:not(:has(#customer_login))::after {
	display: none !important;
	content: none !important;
}

.woocommerce-account .woocommerce-MyAccount-navigation,
.woocommerce-account .woocommerce-MyAccount-content {
	float: none !important;
	width: auto !important;
	min-width: 0;
}

.woocommerce-account .woocommerce-MyAccount-navigation { align-self: start; }
.woocommerce-account .woocommerce-MyAccount-content ul.products { width: 100%; }

/* =====================================================
   CLIENT BRIEF v1.4 — Tasks 1–9
   ===================================================== */

/* Task 1: Strengthen the frosted-glass header effect */
.hz-header {
	border-bottom: 1px solid rgba(255, 255, 255, .55);
	background: rgba(255, 255, 255, .70);
	-webkit-backdrop-filter: blur(32px) saturate(200%) brightness(1.05);
	backdrop-filter: blur(32px) saturate(200%) brightness(1.05);
}

.hz-header.is-scrolled {
	background: rgba(255, 255, 255, .88);
	-webkit-backdrop-filter: blur(36px) saturate(220%) brightness(1.04);
	backdrop-filter: blur(36px) saturate(220%) brightness(1.04);
}

/* Task 2: Reduce hero h1 font size — less cluttered */
.hz-hero h1 {
    font-size: 45px !important;
    max-width: 440px;
}

/* Task 3: White background for process section gradient areas */
.hz-process { background: #fff !important; }
.hz-process::before,
.hz-process::after { display: none !important; }

/* Task 4 & 5: Elements section — center heading, reduce h2 size */
.hz-elements .hz-section-heading--center {
    text-align: center;
    margin-bottom: 46px;
    margin-left: 0;
    width: 100%;
    max-width: 100%;
    margin-right: 0 !important;
}

p.hz-section-heading__support {
	margin-left: 0 !important;
}

.hz-section-heading.hz-section-heading--center.hz-themes__heading.is-visible {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.hz-themes__heading > div {
	text-align: left !important;
	width: 100% !important;
}

.hz-elements .hz-section-heading--center .hz-kicker { margin-bottom: 10px; }

.hz-elements .hz-section-heading--center h2 {
	font-size: clamp(2rem, 3.1vw, 3.2rem);
}

.hz-elements .hz-section-heading--center .hz-section-heading__support {
	max-width: 540px;
	margin: 14px auto 0;
	color: var(--hz-muted, #6b6355);
}

/* Task 4: Element cards — enlarge, white/light bg, all text black */
.hz-element-card,
.hz-element-card:nth-child(4),
.hz-element-card:nth-child(5),
.hz-element-card:last-child {
	min-height: 480px;
	background: #f7f6f2 !important;
	color: #08111b !important;
}

.hz-element-card::after {
	background: linear-gradient(180deg, rgba(247, 246, 242, 0) 30%, rgba(247, 246, 242, .75) 60%, #f7f6f2 90%) !important;
}

.hz-element-card__icon {
	background: rgba(255, 255, 255, .85) !important;
	color: #08111b !important;
	border-color: rgba(8, 17, 27, .15) !important;
}

.hz-element-card__content strong,
.hz-element-card__content small { color: #08111b !important; }

/* Task 5: Themes section — reduce heading size */
.hz-themes__heading h2 { font-size: clamp(2rem, 3.2vw, 3.4rem); }

/* Task 6: Stones / "Ten beads" section — white bg, centered heading, reduced h2 */
.hz-stones .hz-section-heading--center {
	text-align: center;
	max-width: 640px;
	margin-inline: auto;
	margin-bottom: 46px;
}

.hz-stones .hz-section-heading--center h2 {
	font-size: clamp(2rem, 3.1vw, 3.2rem);
	margin-bottom: 10px;
}

.hz-stones .hz-section-heading--center .hz-kicker {
	display: block;
	margin-top: 6px;
	margin-bottom: 8px;
}

.hz-stones .hz-section-heading--center .hz-section-heading__support {
	margin: 10px auto 0;
}

.hz-stones .hz-material-card > img {
	background: #fff !important;
}

.hz-stones .hz-material-grid {
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

/* Task 7: Newsletter — smaller h2 */
.hz-newsletter h2 { font-size: clamp(1.9rem, 3.1vw, 3.2rem); }

.hz-newsletter-gate {
	background: rgba(255, 255, 255, .72) !important;
	border-color: rgba(8, 17, 27, .2) !important;
}

/* Task 8: Categories / Shop — product cards get larger images */
.hz-product-card__media {
	aspect-ratio: 1 / 1.05;
}

/* Responsive adjustments */
@media (max-width: 1100px) {
	.hz-stones .hz-material-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (max-width: 860px) {
	.hz-element-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.hz-stones .hz-material-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 600px) {
	.hz-element-grid,
	.hz-stones .hz-material-grid { grid-template-columns: 1fr; }
}

/* =====================================================
   CLIENT BRIEF v1.5 — corrections from image review
   ===================================================== */

/* Task 7: Newsletter — force white background */
.hz-newsletter {
    background: lightblue;
}

.hz-newsletter__inner { background: transparent !important; }

.hz-newsletter__inner::before,
.hz-newsletter__inner::after { display: none !important; }

.hz-newsletter .hz-kicker,
.hz-newsletter h2,
.hz-newsletter__copy > p { color: #08111b !important; }

.hz-newsletter-form label,
.hz-newsletter-form input { color: #08111b; }

.hz-newsletter-form input {
	background: #f7f6f2 !important;
	border-color: rgba(8, 17, 27, .18) !important;
}

/* Task 5: Themes section heading layout */
.hz-themes__heading,
.hz-section-heading--center.hz-themes__heading {
	display: flex !important;
	flex-direction: row !important;
	align-items: center !important;
	text-align: center !important;
	max-width: 760px !important;
	margin-inline: auto !important;
	gap: 18px !important;
}

section.hz-section.hz-themes a.hz-button.hz-button--dark {
	float: right;
	position: relative;
	width: 177px;
	top: 75px;
}

section#materials .hz-section-heading.hz-section-heading--center.is-visible {
    margin-left: 0 !important;
    margin-right: 0;
    width: 100%;
    max-width: 100%;
}

section#materials .hz-section-heading.hz-section-heading--center.is-visible h2,
section#materials .hz-section-heading.hz-section-heading--center.is-visible p {
	text-align: center !important;
}

.hz-themes__heading > div { text-align: center !important; }

.hz-themes__heading .hz-kicker { text-align: left; }

.hz-themes__heading h2 {
    font-size: clamp(1.9rem, 3vw, 3rem) !important;
    text-align: left;
}

.hz-section-heading.hz-section-heading--center.hz-themes__heading.is-visible {
	margin-left: 0 !important;
	margin-right: 0 !important;
	width: 100% !important;
	max-width: 100% !important;
}

/* Task 4: Elements section heading */
.hz-elements .hz-section-heading--center > div { display: contents; }

/* Task 3: Force white backgrounds */
.hz-promise,
.hz-process {
	background: #fff !important;
	border-color: rgba(8, 17, 27, .08) !important;
}

.hz-process::before,
.hz-process::after,
.hz-promise::before,
.hz-promise::after { display: none !important; }

/* Task 4: Elements kicker black */
.hz-elements .hz-kicker { color: #08111b !important; }

/* Task 8: Hide default WooCommerce Shop h1 */
.hz-commerce-archive h1.page-title,
.hz-commerce-archive .woocommerce-products-header h1 { display: none !important; }

.hz-shop-catalog-head h1 {
	font-size: clamp(2.2rem, 4vw, 4.4rem) !important;
}
.hz-builder-workspace {
    margin: 0;
    max-width: 100%;
    width: 100%;
}
/* ===== Task 9: Category page overhaul ===== */

.hz-shop-hero--no-image {
	background: var(--hz-mist, #f5f5f2);
	padding: 60px 0;
	text-align: center;
}
.hz-shop-hero--no-image .hz-shop-hero__content {
	max-width: 640px;
	margin: 0 auto;
}

.hz-shop-toolbar {
	display: flex;
	align-items: center;
	margin: 24px auto;
	position: relative;
}
.hz-filter-toggle {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	padding: 10px 18px;
	border: 1px solid #999;
	border-radius: 4px;
	background: transparent;
	font-size: 0.85rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	cursor: pointer;
}
.hz-filter-panel {
	position: absolute;
	top: 100%;
	margin-top: 12px;
	padding: 16px;
	background: #fff;
	border: 1px solid #eee;
	box-shadow: 0 8px 24px rgba(0,0,0,0.08);
	z-index: 20;
	min-width: 260px;
}

.hz-product-card {
	display: flex;
	flex-direction: column;
	position: relative;
	border: 1px solid #ddd !important;
	padding: 16px;
	margin: 0 !important;
}
.hz-product-card__media {
	position: relative;
	background: #f2f0eb;
	overflow: hidden;
}
.hz-product-card__media img {
	width: 100%;
	height: auto;
	max-height: 260px;
	object-fit: cover;
	display: block;
}
.hz-product-card__details {
	text-align: center;
	padding-top: 14px;
}
.hz-product-card__category {
	font-size: 0.7rem;
	letter-spacing: 0.05em;
	text-transform: uppercase;
	color: #a8a8a3;
	margin-bottom: 4px;
}
.hz-product-card__details .woocommerce-loop-product__title {
	color: #6b6b68 !important;
	font-weight: 500;
	margin: 0 0 4px;
}
.hz-product-card__details .price {
	display: block;
	color: #8a8a86 !important;
	font-size: 0.9rem;
}

ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	gap: 24px !important;
}

.hz-product-card__cart.add_to_cart_button,
.hz-product-card__cart {
	display: block;
	width: 100%;
	margin-top: 10px;
	background: transparent !important;
	background-color: transparent !important;
	color: #6b6b68 !important;
	border: 1px solid #b5b5b0 !important;
	border-radius: 0 !important;
	padding: 12px 0 !important;
	text-align: center;
	text-transform: uppercase;
	font-size: 0.8rem;
	letter-spacing: 0.06em;
	text-decoration: none !important;
	box-shadow: none !important;
	transition: background 200ms ease;
}
.hz-product-card__cart.add_to_cart_button:hover,
.hz-product-card__cart:hover {
	background: #f0efe9 !important;
	color: #4a4a47 !important;
}

.hz-favorite-toggle {
	position: absolute;
	top: 12px;
	right: 12px;
	z-index: 2;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: rgba(255,255,255,0.85);
	border: none;
	border-radius: 50%;
	cursor: pointer;
	color: #b5b5b0;
}
.hz-favorite-toggle.is-active {
	color: #d24b4b;
}
.hz-favorite-toggle .hz-icon {
	width: 16px;
	height: 16px;
}

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


.hz-trust-bar {
    display: none !important;
}