	/* ── RESET (already correctly scoped in source) ── */
	.hmv-cat *,
	.hmv-cat *::before,
	.hmv-cat *::after {
		box-sizing: border-box;
		margin: 0;
		padding: 0;
	}

	/* ── DESIGN TOKENS ── */
	.hmv-cat {
		--c-dark: #091916;
		--c-green: #1A3735;
		--c-green-card: #111f1d;
		--c-green-mid: #415957;
		--c-gold: #926D1F;
		--c-gold-b: #b49b65;
		--c-gold-pale: #dacdb3;
		--c-gold-cream: #f6f3ec;
		--c-cream: #fdf8f2;
		--c-white: #FBFBFB;
		--c-divider: rgba(26, 55, 53, .08);
		--c-divider-gold: rgba(180, 155, 101, .15);
		/* legacy aliases kept for backward-compat with inline styles */
		--green: #1A3735;
		--green-deep: #091916;
		--green-bg: #091916;
		--green-mid: #415957;
		--green-card: #111f1d;
		--gold: #926D1F;
		--gold-b: #b49b65;
		--gold-pale: #dacdb3;
		--gold-cream: #f6f3ec;
		--cream: #fdf8f2;
		--white: #FBFBFB;
		--nav-h: 72px;
		--amber: #926D1F;
		--amber-light: #b49b65;
		--ff-serif: 'Cormorant Garamond', Georgia, serif;
		--ff-sans: 'Jost', system-ui, sans-serif;
		--fw-light: 300;
		--fw-reg: 400;
		--fw-med: 500;
		--fw-semi: 600;
		font-family: var(--ff-sans);
		background: var(--c-dark);
		color: var(--c-white);
		overflow-x: hidden;
		scroll-behavior: smooth;
		text-rendering: optimizeLegibility;
		-webkit-font-smoothing: antialiased;
	}

	/* ── LAYOUT ── */
	.hmv-cat .wrap {
		max-width: 1450px;
		margin: 0 auto;
		padding: 0 24px;
	}

	@media (min-width: 640px) {
		.hmv-cat .wrap {
			padding: 0 40px;
		}
	}

	@media (min-width: 1024px) {
		.hmv-cat .wrap {
			padding: 0 60px;
		}
	}

	/* ── FADE-IN ── */
	.hmv-cat .fi {
		opacity: 0;
		transform: translateY(22px);
		transition: opacity .6s ease, transform .6s ease;
	}

	.hmv-cat .fi.on {
		opacity: 1;
		transform: none;
	}

	@media (prefers-reduced-motion: reduce) {
		.hmv-cat .fi {
			opacity: 1;
			transform: none;
			transition: none;
		}
	}

	/* ── CAT-HERO (grid-based layout, matches gut-health / beauty-skin / etc.) ── */
	.hmv-cat .cat-hero { display: grid; grid-template-columns: 1fr; background: var(--c-dark); position: relative; overflow: hidden; min-height: 380px; }
	@media (min-width: 900px) { .hmv-cat .cat-hero { grid-template-columns: 1fr 38%; } }
	.hmv-cat .cat-hero::before { content: ''; position: absolute; top: -40%; right: -8%; width: 600px; height: 600px; border-radius: 50%; background: radial-gradient(circle, rgba(180,155,101,.06) 0%, transparent 70%); pointer-events: none; z-index: 1; }
	.hmv-cat .cat-hero > .wrap { padding: 36px 24px 64px; max-width: none; margin: 0; grid-column: 1; grid-row: 1; position: relative; z-index: 3; align-self: center; }
	@media (min-width: 640px) { .hmv-cat .cat-hero > .wrap { padding: 48px 40px 64px; } }
	@media (min-width: 1100px) { .hmv-cat .cat-hero > .wrap { padding: 56px 60px 72px; } }
	.hmv-cat .cat-hero h1 { font-family: var(--ff-serif); font-size: clamp(36px, 6vw, 72px); font-weight: var(--fw-light); line-height: 1.08; color: var(--c-cream); margin-bottom: 20px; overflow-wrap: break-word; max-width: 100%; }
	.hmv-cat .cat-hero h1 em { font-style: italic; color: var(--c-gold-b); display: inline; overflow-wrap: break-word; }
	.hmv-cat .cat-hero-desc { font-size: clamp(15px,1.4vw,17px); font-weight: var(--fw-light); line-height: 1.9; color: rgba(251,251,251,.75); max-width: 560px; margin-bottom: 32px; }
	.hmv-cat .cat-hero-img { display: none; grid-column: 1; grid-row: 1; position: relative; overflow: hidden; z-index: 2; }
	@media (min-width: 900px) { .hmv-cat .cat-hero-img { display: block; grid-column: 2; } }
	.hmv-cat .cat-hero-img img { width: 100%; height: 100%; object-fit: cover; display: block; }
	.hmv-cat .cat-hero-img::before { content: ''; position: absolute; inset: 0; background: linear-gradient(to right, var(--c-dark) 0%, transparent 45%); z-index: 1; pointer-events: none; }
	.hmv-cat .hero-eyebrow { font-family: var(--ff-sans); font-size: 10px; letter-spacing: .35em; text-transform: uppercase; color: var(--c-gold-b); display: inline-flex; align-items: center; gap: 12px; margin-bottom: 18px; }
	.hmv-cat .hero-eyebrow::before { content: ''; height: 1px; width: 22px; background: var(--c-gold-b); opacity: .5; }
	.hmv-cat .trust-pills { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 8px; }
	.hmv-cat .trust-pill { display: inline-flex; align-items: center; gap: 7px; font-family: var(--ff-sans); font-size: 10px; letter-spacing: .2em; text-transform: uppercase; color: var(--c-gold-b); border: 1px solid rgba(180,155,101,.18); padding: 6px 14px; min-height: 36px; }
	.hmv-cat .trust-pill svg { width: 10px; height: 10px; fill: none; stroke: var(--c-gold-b); stroke-width: 2.5; flex-shrink: 0; }

	/* ── BUTTONS ── */
	.hmv-cat .btn-p,
	.hmv-cat .btn-g {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		gap: 8px;
		font-family: var(--ff-sans);
		font-size: 11px;
		font-weight: var(--fw-semi);
		letter-spacing: .22em;
		text-transform: uppercase;
		padding: 15px 32px;
		cursor: pointer;
		text-decoration: none;
		transition: background .25s, border-color .25s, color .25s, transform .2s;
		white-space: nowrap;
		border: none;
		min-height: 48px;
	}

	.hmv-cat .btn-p {
		color: var(--c-dark);
		background: var(--c-gold-b);
	}

	.hmv-cat .btn-p:hover {
		background: var(--c-gold);
		color: var(--c-gold-cream);
		transform: translateY(-2px);
	}

	.hmv-cat .btn-p:focus-visible {
		outline: 2px solid var(--c-gold);
		outline-offset: 3px;
	}

	.hmv-cat .btn-g {
		color: var(--c-gold-pale);
		background: transparent;
		border: 1px solid rgba(180, 155, 101, .3);
	}

	.hmv-cat .btn-g:hover {
		border-color: var(--c-gold-b);
		color: var(--c-gold-b);
	}

	.hmv-cat .btn-g:focus-visible {
		outline: 2px solid var(--c-gold-b);
		outline-offset: 3px;
	}

	/* ── MARQUEE — unique keyframe name ── */
	.hmv-cat .marquee-ribbon {
		background: var(--c-gold-b);
		overflow: hidden;
		padding: 11px 0;
	}

	.hmv-cat .marquee-track {
		display: flex;
		align-items: center;
		white-space: nowrap;
		animation: hmvhorm-marquee 36s linear infinite;
	}

	@media (prefers-reduced-motion: reduce) {
		.hmv-cat .marquee-track {
			animation: none;
		}
	}

	@keyframes hmvhorm-marquee {
		to {
			transform: translateX(-50%);
		}
	}

	.hmv-cat .m-item {
		display: inline-flex;
		align-items: center;
		gap: 8px;
		font-family: var(--ff-sans);
		font-size: 9px;
		letter-spacing: .25em;
		text-transform: uppercase;
		color: rgba(9, 25, 22, .85);
		font-weight: var(--fw-semi);
		padding: 0 28px;
	}

	.hmv-cat .m-dot {
		display: inline-block;
		width: 3px;
		height: 3px;
		border-radius: 50%;
		background: rgba(9, 25, 22, .35);
	}

	/* ── SECTION SHARED ── */
	.hmv-cat .section-eyebrow {
		font-family: var(--ff-sans);
		font-size: 9px;
		letter-spacing: .3em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		margin-bottom: 10px;
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.hmv-cat .section-eyebrow::before {
		content: '';
		width: 16px;
		height: 2px;
		background: var(--c-gold-b);
		flex-shrink: 0;
	}

	.hmv-cat .section-title {
		font-family: var(--ff-serif);
		font-size: clamp(28px, 3.8vw, 48px);
		font-weight: var(--fw-light);
		line-height: 1.08;
		margin-bottom: 12px;
	}

	.hmv-cat .section-title em {
		font-style: italic;
		color: var(--c-gold);
	}

	/* ── INFO STRIP — fixed: missing .hmv-cat prefix on media query ── */
	.hmv-cat .info-strip {
		background: rgba(26, 55, 53, .3);
		border: 1px solid rgba(180, 155, 101, .1);
		padding: 24px 20px;
		margin-bottom: 56px;
		display: grid;
		gap: 24px;
	}

	@media (min-width: 640px) {
		.hmv-cat .info-strip {
			padding: 32px 36px;
		}
	}

	@media (min-width: 700px) {
		.hmv-cat .info-strip {
			grid-template-columns: 1fr 1fr 1fr;
		}
	}

	.hmv-cat .info-item h4 {
		font-family: var(--ff-serif);
		font-size: 18px;
		font-weight: var(--fw-reg);
		color: var(--c-gold-b);
		margin-bottom: 6px;
	}

	.hmv-cat .info-item p {
		font-family: var(--ff-sans);
		font-size: 12px;
		font-weight: var(--fw-light);
		line-height: 1.7;
		color: rgba(251, 251, 251, .45);
	}

	/* ── STAT BAR ── */
	.hmv-cat .stat-bar {
		background: var(--c-white);
		padding: 40px 0;
		border-bottom: 1px solid var(--c-divider);
	}

	.hmv-cat .stat-bar-inner {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}

	@media (min-width: 640px) {
		.hmv-cat .stat-bar-inner {
			grid-template-columns: repeat(4, 1fr);
		}
	}

	@media (max-width: 380px) {
		.hmv-cat .stat-bar-inner {
			grid-template-columns: 1fr !important;
		}
	}

	.hmv-cat .stat-tile {
		background: var(--c-white);
		border: 1px solid var(--c-divider);
		border-top: 3px solid var(--c-gold-b);
		border-radius: 0 0 8px 8px;
		padding: 22px 16px;
		text-align: center;
	}

	.hmv-cat .stat-lbl {
		font-family: var(--ff-sans);
		font-size: 9px;
		font-weight: var(--fw-med);
		letter-spacing: .12em;
		text-transform: uppercase;
		color: var(--c-green-mid);
		line-height: 1.6;
	}

	/* ── STAT BAR (canonical pattern, matches gut-health / beauty-skin / etc.) ── */
	.hmv-cat .stat-bar { background: var(--c-white); padding: clamp(32px, 4vw, 48px) 0; border-bottom: 1px solid var(--c-divider); }
	.hmv-cat .stat-bar-inner { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
	@media (min-width: 900px) { .hmv-cat .stat-bar-inner { grid-template-columns: repeat(4, 1fr); } }
	@media (max-width: 380px) { .hmv-cat .stat-bar-inner { grid-template-columns: 1fr !important; } }
	.hmv-cat .stat-tile { background: var(--c-white); border: 1px solid var(--c-divider); border-top: 3px solid var(--c-gold-b); border-radius: 0 0 8px 8px; padding: clamp(16px, 3vw, 22px) 16px; text-align: center; }
	.hmv-cat .stat-num { font-family: var(--ff-serif); font-size: clamp(28px, 4vw, 38px); font-weight: var(--fw-light); color: var(--c-green); line-height: 1; margin-bottom: 8px; }
	.hmv-cat .stat-lbl { font-family: var(--ff-sans); font-size: 10px; font-weight: var(--fw-med); letter-spacing: .12em; text-transform: uppercase; color: var(--c-green-mid); line-height: 1.6; }

	/* ── SPLIT PANELS ── */
	.hmv-cat .hormonal-split {
		display: grid;
		grid-template-columns: 1fr;
		background: var(--c-dark);
		overflow: hidden;
	}

	@media (min-width: 860px) {
		.hmv-cat .hormonal-split {
			grid-template-columns: 1fr 1fr;
			min-height: 560px;
		}
	}

	.hmv-cat .hs-panel {
		padding: 56px 36px;
		display: flex;
		flex-direction: column;
		justify-content: center;
		position: relative;
	}

	@media (min-width: 640px) {
		.hmv-cat .hs-panel {
			padding: 64px 52px;
		}
	}

	@media (min-width: 1100px) {
		.hmv-cat .hs-panel {
			padding: 76px 72px;
		}
	}

	.hmv-cat .hs-panel-women {
		background: linear-gradient(145deg, #0d1a1a 0%, #1a1a2a 100%);
		border-right: 1px solid rgba(180, 155, 101, .1);
	}

	.hmv-cat .hs-panel-men {
		background: linear-gradient(145deg, #0d1a0e 0%, #1a2a1a 100%);
	}

	.hmv-cat .hs-eyebrow {
		font-family: var(--ff-sans);
		font-size: 9px;
		letter-spacing: .36em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		opacity: .7;
		margin-bottom: 16px;
		display: flex;
		align-items: center;
		gap: 10px;
	}

	.hmv-cat .hs-eyebrow::before {
		content: '';
		width: 20px;
		height: 1px;
		background: var(--c-gold-b);
		opacity: .4;
	}

	.hmv-cat .hs-title {
		font-family: var(--ff-serif);
		font-size: clamp(32px, 3.8vw, 52px);
		font-weight: var(--fw-light);
		line-height: 1.1;
		color: var(--c-gold-cream);
		margin-bottom: 16px;
	}

	.hmv-cat .hs-title em {
		font-style: italic;
		color: var(--c-gold-b);
	}

	.hmv-cat .hs-body {
		font-family: var(--ff-sans);
		font-size: clamp(13px, 1.1vw, 14.5px);
		font-weight: var(--fw-light);
		line-height: 1.9;
		color: rgba(218, 205, 179, .65);
		margin-bottom: 28px;
		max-width: 440px;
	}

	.hmv-cat .hs-products {
		display: flex;
		flex-direction: column;
		gap: 10px;
		margin-bottom: 28px;
	}

	.hmv-cat .hs-product {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		padding: 14px 18px;
		background: rgba(180, 155, 101, .05);
		border: 1px solid rgba(180, 155, 101, .12);
		text-decoration: none;
		transition: background .2s, border-color .2s;
	}

	.hmv-cat .hs-product:hover {
		background: rgba(180, 155, 101, .1);
		border-color: rgba(180, 155, 101, .25);
	}

	.hmv-cat .hs-product:focus-visible {
		outline: 2px solid var(--c-gold-b);
		outline-offset: 3px;
	}

	.hmv-cat .hs-product-name {
		font-family: var(--ff-sans);
		font-size: 13px;
		font-weight: var(--fw-reg);
		color: var(--c-gold-pale);
		display: block;
		margin-bottom: 3px;
	}

	.hmv-cat .hs-product-sub {
		font-family: var(--ff-sans);
		font-size: 10px;
		font-weight: var(--fw-light);
		color: var(--c-gold-b);
		opacity: .5;
		letter-spacing: .06em;
	}

	.hmv-cat .hs-product-badge {
		font-family: var(--ff-sans);
		font-size: 10px;
		font-weight: var(--fw-semi);
		letter-spacing: .2em;
		text-transform: uppercase;
		padding: 4px 10px;
		white-space: nowrap;
		flex-shrink: 0;
	}

	.hmv-cat .badge-member {
		background: rgba(180, 155, 101, .08);
		color: var(--c-gold-b);
		border: 1px solid rgba(180, 155, 101, .2);
	}

	.hmv-cat .badge-rx {
		background: rgba(26, 55, 53, .4);
		color: rgba(180, 155, 101, .6);
		border: 1px solid rgba(180, 155, 101, .12);
	}

	.hmv-cat .badge-nad {
		background: rgba(83, 74, 183, .15);
		color: #AFA9EC;
		border: 1px solid rgba(83, 74, 183, .25);
	}

	.hmv-cat .avail-note {
		margin-top: 16px;
		background: rgba(180, 155, 101, .06);
		border: 1px solid rgba(180, 155, 101, .15);
		border-left: 3px solid var(--c-gold-b);
		padding: 14px 20px;
	}

	.hmv-cat .avail-note-label {
		font-family: var(--ff-sans);
		font-size: 9px;
		font-weight: var(--fw-semi);
		letter-spacing: .2em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		margin-bottom: 5px;
	}

	.hmv-cat .avail-note-text {
		font-family: var(--ff-sans);
		font-size: 12px;
		font-weight: var(--fw-light);
		line-height: 1.75;
		color: rgba(218, 205, 179, .65);
	}

	/* ── NAD BRIDGE ── */
	.hmv-cat .nad-bridge {
		background: linear-gradient(135deg, #071412 0%, #0d0d0b 100%);
		border-top: 1px solid rgba(180, 155, 101, .08);
		border-bottom: 1px solid rgba(180, 155, 101, .08);
		padding: 56px 0;
	}

	.hmv-cat .nad-bridge-inner {
		display: grid;
		grid-template-columns: 1fr;
		gap: 40px;
		align-items: center;
	}

	@media (min-width: 860px) {
		.hmv-cat .nad-bridge-inner {
			grid-template-columns: 1fr 1fr;
			gap: 60px;
		}
	}

	/* ── WHO CARDS ── */
	.hmv-cat .who-card {
		padding: 18px 20px;
		background: rgba(180, 155, 101, .04);
		border: 1px solid rgba(180, 155, 101, .09);
	}

	.hmv-cat .who-card-title {
		font-family: var(--ff-sans);
		font-size: 13px;
		font-weight: var(--fw-reg);
		color: var(--c-gold-pale);
		margin-bottom: 4px;
	}

	.hmv-cat .who-card-desc {
		font-family: var(--ff-sans);
		font-size: 11px;
		font-weight: var(--fw-light);
		color: rgba(218, 205, 179, .5);
		line-height: 1.7;
	}

	/* ── ADDITIONAL PRODUCTS GRID — extracted from body <style> ── */
	.hmv-cat .horm-addl-grid {
		display: grid;
		grid-template-columns: 1fr;
		gap: 20px;
	}

	@media (min-width: 560px) {
		.hmv-cat .horm-addl-grid {
			grid-template-columns: repeat(2, 1fr);
		}
	}

	@media (min-width: 1000px) {
		.hmv-cat .horm-addl-grid {
			grid-template-columns: repeat(4, 1fr);
		}
	}

	/* ── PRODUCT CARDS ── */
	.hmv-cat .products-section {
		padding: clamp(48px, 6vw, 80px) 0;
		background: var(--c-dark);
	}

	.hmv-cat .prod-card {
		background: var(--c-green-card);
		border: 1px solid rgba(180, 155, 101, .07);
		display: flex;
		flex-direction: column;
		text-decoration: none;
		color: inherit;
		transition: border-color .25s, transform .25s;
	}

	.hmv-cat .prod-card:hover {
		border-color: rgba(180, 155, 101, .25);
		transform: translateY(-4px);
	}

	.hmv-cat .prod-card:focus-visible {
		outline: 2px solid var(--c-gold-b);
		outline-offset: 3px;
	}

	.hmv-cat .pc-img {
		aspect-ratio: 4/3;
		overflow: hidden;
		position: relative;
		background: var(--c-green);
	}

	.hmv-cat .pc-img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform .4s;
		display: block;
	}

	.hmv-cat .prod-card:hover .pc-img img {
		transform: scale(1.04);
	}

	.hmv-cat .pc-badge {
		position: absolute;
		top: 12px;
		left: 12px;
		font-family: var(--ff-sans);
		font-size: 10px;
		letter-spacing: .22em;
		text-transform: uppercase;
		padding: 5px 10px;
		font-weight: var(--fw-semi);
	}

	.hmv-cat .pc-badge.featured {
		background: var(--c-gold-b);
		color: var(--c-dark);
	}

	.hmv-cat .pc-badge.trending {
		background: rgba(146, 109, 31, .85);
		color: #f6f3ec;
		border: 1px solid rgba(180, 155, 101, .3);
	}

	.hmv-cat .pc-badge.new {
		background: rgba(180, 155, 101, .15);
		color: var(--c-gold-b);
		border: 1px solid rgba(180, 155, 101, .25);
	}

	.hmv-cat .pc-body {
		flex: 1;
		padding: 20px 20px 14px;
	}

	.hmv-cat .pc-cat {
		font-family: var(--ff-sans);
		font-size: 10px;
		letter-spacing: .22em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		opacity: .7;
		margin-bottom: 8px;
	}

	.hmv-cat .pc-name {
		font-family: var(--ff-serif);
		font-size: 18px;
		font-weight: var(--fw-reg);
		color: var(--c-gold-cream);
		line-height: 1.25;
		margin-bottom: 8px;
	}

	.hmv-cat .pc-desc {
		font-family: var(--ff-sans);
		font-size: 13px;
		font-weight: var(--fw-light);
		line-height: 1.75;
		color: rgba(218, 205, 179, .6);
		flex: 1;
	}

	.hmv-cat .pc-foot {
		display: flex;
		justify-content: space-between;
		align-items: center;
		gap: 8px;
		padding: 12px 16px;
		border-top: 1px solid rgba(180, 155, 101, .07);
		margin-top: auto;
		flex-wrap: nowrap;
		overflow: hidden;
	}

	.hmv-cat .pc-member-tag {
		font-family: var(--ff-sans);
		font-size: 10px;
		font-weight: var(--fw-med);
		letter-spacing: .12em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		opacity: .6;
		display: inline-flex;
		align-items: center;
		gap: 5px;
		border: 1px solid rgba(180, 155, 101, .18);
		padding: 4px 8px;
		background: rgba(180, 155, 101, .04);
		white-space: nowrap;
		flex-shrink: 1;
		min-width: 0;
		min-height: 36px;
	}

	.hmv-cat .pc-action {
		font-family: var(--ff-sans);
		font-size: 9px;
		letter-spacing: .18em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		opacity: .65;
		display: inline-flex;
		align-items: center;
		gap: 4px;
		transition: gap .2s;
		white-space: nowrap;
		flex-shrink: 0;
	}

	.hmv-cat .prod-card:hover .pc-action {
		gap: 8px;
	}

	.hmv-cat .pc-img-note {
		font-family: var(--ff-sans);
		font-size: 9px;
		font-style: italic;
		font-weight: 300;
		color: rgba(180, 155, 101, .65);
		padding: 0 16px 10px;
		line-height: 1.4;
	}

	.hmv-cat .price-locked {
		display: inline-flex;
		align-items: center;
		gap: 6px;
		font-family: var(--ff-sans);
		font-size: 10px;
		font-weight: var(--fw-reg);
		letter-spacing: .14em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		opacity: .65;
		border: 1px solid rgba(180, 155, 101, .18);
		padding: 5px 11px;
		background: rgba(180, 155, 101, .04);
		text-decoration: none;
		white-space: nowrap;
		min-height: 36px;
	}

	.hmv-cat .price-locked svg {
		width: 10px;
		height: 10px;
		flex-shrink: 0;
		fill: none;
		stroke: var(--c-gold-b);
		stroke-width: 2.2;
		stroke-linecap: round;
		stroke-linejoin: round;
	}

	/* ── FAQ ── (matches sleep-mood / gut-health / other category pages) */
	.hmv-cat .faq-section {
		background: #f5f9f7;
		padding: clamp(48px, 6vw, 72px) 0;
	}

	.hmv-cat .faq-item {
		border-bottom: 1px solid rgba(26, 55, 53, .1);
	}

	.hmv-cat .faq-item:first-of-type {
		border-top: 1px solid rgba(26, 55, 53, .1);
	}

	.hmv-cat .faq-item summary {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 14px;
		padding: 18px 0;
		cursor: pointer;
		list-style: none;
		font-family: var(--ff-sans);
		font-size: clamp(14px, 1.2vw, 15px);
		font-weight: var(--fw-reg);
		color: var(--c-green);
		line-height: 1.4;
		-webkit-tap-highlight-color: transparent;
		min-height: 48px;
	}

	.hmv-cat .faq-item summary::-webkit-details-marker {
		display: none;
	}

	.hmv-cat .faq-item summary:hover {
		color: var(--c-green-mid);
	}

	.hmv-cat .faq-icon {
		width: 24px;
		min-width: 24px;
		height: 24px;
		border: 1px solid rgba(26, 55, 53, .2);
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		flex-shrink: 0;
		transition: background .25s;
		background: var(--c-white);
	}

	.hmv-cat .faq-icon svg {
		width: 9px;
		height: 9px;
		stroke: var(--c-green);
		stroke-width: 2.5;
		stroke-linecap: round;
		stroke-linejoin: round;
		transition: transform .25s;
	}

	.hmv-cat details[open].faq-item .faq-icon {
		background: var(--c-green);
		border-color: var(--c-green);
	}

	.hmv-cat details[open].faq-item .faq-icon svg {
		stroke: var(--c-white);
		transform: rotate(45deg);
	}

	.hmv-cat .faq-body {
		font-family: var(--ff-sans);
		font-size: 14px;
		font-weight: var(--fw-light);
		line-height: 1.9;
		color: var(--c-green-mid);
		padding: 0 0 20px;
		max-width: 640px;
		overflow-wrap: break-word;
		word-break: break-word;
	}

	/* ── CTA SECTION ── */
	.hmv-cat .horm-cta {
		background: var(--c-dark);
		padding: 80px 0;
		text-align: center;
		border-top: 1px solid rgba(180, 155, 101, .08);
	}

	/* ── MOBILE TOUCH TARGETS ── */
	.hmv-cat .btn-p,
	.hmv-cat .btn-g {
		min-height: 48px;
	}

	@media (max-width: 479px) {
		.hmv-cat .join-btns {
			flex-direction: column;
		}

		.hmv-cat .join-btns .btn-p,
		.hmv-cat .join-btns .btn-g {
			width: 100%;
			justify-content: center;
		}
	}

	@media (max-width: 360px) {
		.hmv-cat .wrap {
			padding: 0 16px;
		}
	}

	/* ── MISC ── */
	.hmv-cat .section-divider-label {
		font-family: var(--ff-sans);
		font-size: 10px;
		letter-spacing: .28em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		opacity: .5;
		padding-bottom: 8px;
		border-bottom: 1px solid rgba(180, 155, 101, .1);
	}

	.hmv-cat .nad-evidence-box {
		background: rgba(26, 55, 53, .25);
		border: 1px solid rgba(180, 155, 101, .12);
		padding: 32px 28px;
	}

	.hmv-cat .nad-evidence-label {
		font-family: var(--ff-sans);
		font-size: 9px;
		letter-spacing: .22em;
		text-transform: uppercase;
		color: var(--c-gold-b);
		opacity: .75;
		margin-bottom: 20px;
	}
