/**
 * Kimera Chems — storefront pass (theme-audit items 3 and 4).
 *
 * Empty title-plate collapse, footer link wrap, and the desktop “My Account”
 * clip. Reads --kc-* tokens from kimera-ui.css. Do not change tokens here.
 * Do not add backdrop-filter to the header (HANDOFF-2026-08-17 section 0).
 *
 * @package kimera-chems
 */

/* Empty title plates
   ==========================================================================
   Live page titles are `guten-eqFkmf` (Apply, FAQs, About, How to Pay,
   Wholesale, Cart, My Account, policy pages). Catalog is `guten-2hrek2`.
   Category archives share 2hrek2 but already have a Peptides-style plate
   (H1 + `.woocommerce-term-description`) — leave those alone.

   kimera-ui.css already washes both heroes (`::before` radial + linear) and
   drops `bg-hero-home.webp`. Do not reset `background-image` here.

   The 804px `height` in the block JSON never emits (kimera-ui.css ~6806 and
   ~6883). The wasted fold is padding: 150 + 60 on the outer column wrapper
   and 7% + 8% on the inner card. Header + search overlap the hero by 100px
   desktop / 67px tablet / 63px mobile (`kc-header__search` negative margin).
   104px top on the wrapper is the clearance `kc-trim-hero` already uses.

   Specificity matches the live Gutenverse rules
   (`.guten-IRYYQa > .guten-column-wrapper` and `.guten-element.guten-HhnM94`
   are (0,2,0)). `body` + the child combinator is (0,3,0). */

body .guten-eqFkmf,
body .guten-eqFkmf .guten-section {
	height: auto;
	min-height: 0;
}

body .guten-IRYYQa > .guten-column-wrapper {
	padding-bottom: 28px;
	padding-top: 104px;
}

body .guten-element.guten-HhnM94 {
	padding-bottom: 1.25rem;
	padding-top: 1.25rem;
}

body .guten-eqFkmf h1 {
	margin: 0;
}

/* Catalog only. `woocommerce-shop` is the shop page; `tax-product_cat` is
   Peptides etc. Product singles also use 2hrek2 (spec strip) and stay out. */
body.woocommerce-shop .guten-2hrek2,
body.woocommerce-shop .guten-yhBEdm {
	height: auto;
	min-height: 0;
}

body.woocommerce-shop .guten-onNPaM > .guten-column-wrapper {
	padding-bottom: 28px;
	padding-top: 104px;
}

body.woocommerce-shop .guten-element.guten-yhBEdm {
	padding-bottom: 1.25rem;
	padding-top: 1.25rem;
}

body.woocommerce-shop .guten-2hrek2 h1 {
	margin: 0;
}

@media (max-width: 1024px) {
	body .guten-IRYYQa > .guten-column-wrapper,
	body.woocommerce-shop .guten-onNPaM > .guten-column-wrapper {
		padding-bottom: 24px;
		padding-top: 88px;
	}
}

@media (max-width: 767px) {
	body .guten-IRYYQa > .guten-column-wrapper,
	body.woocommerce-shop .guten-onNPaM > .guten-column-wrapper {
		padding-bottom: 20px;
		padding-top: 80px;
	}
}

/* Footer icon-list wrap
   ==========================================================================
   Theme file now has Research Library / COA / Apply. Eleven Michroma
   labels at 18px / 40px gaps will not fit one row. Policy chips stay.
   Live footer is often a DB override — this wrap still applies if those
   items are injected or the part is swapped. */

.footer .guten-icon-list,
body .guten-8K19v7,
body .guten-8K19v7 .guten-icon-list {
	flex-wrap: wrap;
	justify-content: center;
	row-gap: 0.75rem;
}

/* Header — “My Account” clip at ~1280–1440
   ==========================================================================
   Header is DB-only; do not rebuild it. `.kc-header__actions` is `is-nowrap`,
   `#kc-header-nav` adds 20px left padding, and Gutenverse pins 15px / 20px
   gutters on each pill. The last label clips to “My Acco…”.

   Keep z-index 30 / 20. No backdrop-filter. nowrap stays on the links so the
   Michroma swap does not wrap mid-load (kimera-ui.css ~1261). The row wraps
   instead, and padding/font shrink so one row still fits when it can. */

@media (min-width: 1025px) and (max-width: 1440px) {
	.kc-header .kc-header__actions,
	.kc-header .kc-header__actions.is-nowrap {
		flex-wrap: wrap;
		row-gap: 0.25rem;
	}

	.kc-header #kc-header-nav {
		padding-left: 0;
	}

	.kc-header #kc-header-nav .gutenverse-menu-wrapper .gutenverse-menu {
		flex-wrap: wrap;
		justify-content: flex-end;
		row-gap: 0.15rem;
	}

	.kc-header #kc-header-nav .gutenverse-menu-wrapper .gutenverse-menu > li {
		flex-shrink: 0;
	}

	.kc-header #kc-header-nav .gutenverse-menu-wrapper .gutenverse-menu > li > a,
	.kc-header #kc-header-nav .gutenverse-menu-wrapper .gutenverse-menu > ul > li > a {
		font-size: 13px;
		overflow: visible;
		padding: 0.4em 0.55em !important;
		text-overflow: clip;
	}
}

/* Catalog filter chips
   ==========================================================================
   Same pill language as .research-archive-nav. The shop template is a Woo
   DB row, so this paints the nav injected by inc/kimera-storefront.php. */

.kc-catalog-filters {
	display: flex;
	flex-wrap: wrap;
	gap: var(--kc-space-3);
	margin: 0 0 var(--kc-space-5);
}

.kc-catalog-filters a {
	background: rgba(255, 255, 255, 0.03);
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius-pill);
	color: var(--kc-text);
	display: inline-flex;
	font-size: 0.9rem;
	font-weight: 600;
	gap: 0.45em;
	line-height: 1.2;
	padding: 0.62em 1.15em;
	text-decoration: none;
	transition:
		background-color var(--kc-duration) var(--kc-ease),
		border-color var(--kc-duration) var(--kc-ease),
		color var(--kc-duration) var(--kc-ease),
		transform var(--kc-duration-fast) var(--kc-ease);
}

.kc-catalog-filters a:hover,
.kc-catalog-filters a:focus-visible,
.kc-catalog-filters a[aria-current="page"] {
	background: var(--kc-wash-brand);
	border-color: var(--kc-line-brand);
	color: var(--kc-white);
	text-decoration: none;
}

.kc-catalog-filters a:hover,
.kc-catalog-filters a:focus-visible {
	transform: translateY(-1px);
}

.kc-catalog-filters span {
	font-family: var(--kc-mono);
	font-variant-numeric: tabular-nums;
	opacity: 0.6;
}

@media (prefers-reduced-motion: reduce) {
	.kc-catalog-filters a:hover,
	.kc-catalog-filters a:focus-visible {
		transform: none;
	}
}

/* FAQ accordion */

.kc-faq {
	max-width: 46rem;
}

.kc-faq .kc-faq-intro,
.kc-faq > p:first-of-type {
	color: var(--kc-text);
	font-size: 1.14rem;
	line-height: 1.7;
	margin: 0 0 var(--kc-space-5);
	max-width: 68ch;
}

.kc-faq h2 {
	margin-top: var(--kc-space-7);
}

.kc-faq details.wp-block-details,
.kc-faq details.kc-faq-item,
.kc-faq-item {
	background: linear-gradient(180deg, var(--kc-ink-700), var(--kc-ink-800));
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius-lg);
	margin: 0 0 var(--kc-space-3);
	overflow: hidden;
	transition:
		border-color var(--kc-duration) var(--kc-ease),
		box-shadow var(--kc-duration) var(--kc-ease);
}

.kc-faq details.wp-block-details[open],
.kc-faq details.kc-faq-item[open],
.kc-faq-item[open] {
	border-color: var(--kc-line-brand);
	box-shadow: var(--kc-glow-brand);
}

.kc-faq details > summary {
	color: var(--kc-white);
	cursor: pointer;
	font-family: var(--wp--preset--font-family--michroma, inherit);
	font-size: 0.98rem;
	font-weight: 500;
	letter-spacing: -0.015em;
	line-height: 1.4;
	list-style: none;
	padding: var(--kc-space-4) calc(var(--kc-space-5) + 1.5rem) var(--kc-space-4) var(--kc-space-5);
	position: relative;
}

.kc-faq details > summary::-webkit-details-marker {
	display: none;
}

.kc-faq details > summary::after {
	color: var(--kc-purple);
	content: "+";
	font-family: var(--kc-mono);
	font-size: 1.15rem;
	line-height: 1;
	position: absolute;
	right: var(--kc-space-5);
	top: 50%;
	transform: translateY(-50%);
}

.kc-faq details[open] > summary::after {
	content: "\2212";
}

.kc-faq details > summary:hover {
	color: var(--kc-purple-soft);
}

.kc-faq details > :not(summary) {
	border-top: 1px solid var(--kc-line);
	padding: var(--kc-space-4) var(--kc-space-5) var(--kc-space-5);
}

.kc-faq details p {
	color: var(--kc-text-muted);
	margin: 0;
	max-width: 68ch;
}

.kc-faq details a {
	color: var(--kc-purple);
}

.kc-faq details a:hover {
	color: var(--kc-purple-soft);
}

/* How to Pay plates */

.kc-pay,
.kc-prose.kc-pay {
	max-width: 46rem;
}

.kc-pay-method {
	background: linear-gradient(180deg, var(--kc-ink-700), var(--kc-ink-800));
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius-lg);
	margin: 0 0 var(--kc-space-5);
	padding: var(--kc-space-5);
}

.kc-pay-method:last-child {
	margin-bottom: 0;
}

.kc-pay-method h2 {
	margin-top: 0 !important;
}

.kc-pay-method p,
.kc-pay-method li {
	max-width: 68ch;
}

.kc-pay-method ul {
	margin-bottom: 1em;
}

.kc-pay-notes {
	border-color: var(--kc-line-brand);
}

/* Apply page
   ==========================================================================
   Live /apply/ (page 96327) already has the right copy order. The leftover
   bug is rank: Sign In was a 75% hero and Apply sat after the legal wall.
   Guest home already makes Apply the XL CTA and Login xs — same ranking here.

   Hooks are on the page row: .kc-signin, .kc-check, .kc-steps, .kc-apply-cta.
   Purple tokens, not the mock's leftover red links. Extra body.page +
   page-id specificity so this wins if kimera-storefront.css also paints
   .kc-prose lists (that file loads later). */

body.page.page-id-96327 .kc-signin,
body.page.kc-apply-page .kc-signin {
	background:
		radial-gradient(120% 90% at 12% 0%, var(--kc-wash-brand), transparent 64%),
		linear-gradient(160deg, var(--kc-ink-700), var(--kc-ink-900) 70%);
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius);
	color: var(--kc-text-muted);
	margin: 0 0 var(--kc-space-6);
	padding: var(--kc-space-5);
}

body.page.page-id-96327 .kc-signin h3,
body.page.kc-apply-page .kc-signin h3 {
	color: var(--kc-white);
	font-size: 1.05rem;
	margin: 0 0 var(--kc-space-3);
}

body.page.page-id-96327 .kc-signin p,
body.page.kc-apply-page .kc-signin p {
	color: var(--kc-text-muted);
	line-height: 1.65;
	margin: 0 auto var(--kc-space-4);
	max-width: 52ch;
}

body.page.page-id-96327 .kc-signin p.has-small-font-size,
body.page.kc-apply-page .kc-signin p.has-small-font-size {
	color: var(--kc-text-dim);
	font-size: 0.88rem;
	margin-bottom: 0;
	margin-top: var(--kc-space-4);
}

body.page.page-id-96327 .kc-signin a:not(.wp-element-button):not(.wp-block-button__link),
body.page.kc-apply-page .kc-signin a:not(.wp-element-button):not(.wp-block-button__link) {
	color: var(--kc-purple);
}

body.page.page-id-96327 .kc-signin .wp-block-buttons,
body.page.kc-apply-page .kc-signin .wp-block-buttons {
	justify-content: center;
	margin: 0;
}

body.page.page-id-96327 .kc-signin .wp-block-button,
body.page.page-id-96327 .kc-signin .wp-block-button.kc-signin-btn,
body.page.page-id-96327 .kc-signin .wp-block-button.has-custom-width,
body.page.kc-apply-page .kc-signin .wp-block-button {
	max-width: 14rem;
	width: auto;
}

body.page.page-id-96327 .kc-signin .wp-block-button__link,
body.page.page-id-96327 .kc-signin-btn .wp-block-button__link,
body.page.kc-apply-page .kc-signin .wp-block-button__link {
	background: transparent;
	border: 1px solid var(--kc-line-strong);
	border-radius: var(--kc-radius-pill);
	color: var(--kc-text);
	font-family: var(--wp--preset--font-family--michroma, Michroma, sans-serif);
	font-size: 0.72rem;
	padding: 0.7em 1.35em;
	width: auto;
}

body.page.page-id-96327 .kc-signin .wp-block-button__link:hover,
body.page.page-id-96327 .kc-signin .wp-block-button__link:focus-visible,
body.page.kc-apply-page .kc-signin .wp-block-button__link:hover,
body.page.kc-apply-page .kc-signin .wp-block-button__link:focus-visible {
	border-color: var(--kc-line-brand);
	box-shadow: var(--kc-glow-brand);
	color: var(--kc-white);
}

body.page.page-id-96327 .kc-prose ul.kc-check,
body.page.kc-apply-page .kc-prose ul.kc-check {
	background:
		radial-gradient(120% 90% at 12% 0%, var(--kc-wash-brand), transparent 64%),
		linear-gradient(160deg, var(--kc-ink-700), var(--kc-ink-900) 70%);
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius);
	list-style: none;
	margin: 0 0 var(--kc-space-5);
	padding: var(--kc-space-4) var(--kc-space-5);
}

body.page.page-id-96327 .kc-prose ul.kc-check li,
body.page.kc-apply-page .kc-prose ul.kc-check li {
	color: var(--kc-text-muted);
	line-height: 1.6;
	margin: 0;
	padding: 0.55em 0 0.55em 1.9em;
	position: relative;
}

body.page.page-id-96327 .kc-prose ul.kc-check li + li,
body.page.kc-apply-page .kc-prose ul.kc-check li + li {
	margin-top: 0;
}

body.page.page-id-96327 .kc-prose ul.kc-check li::before,
body.page.kc-apply-page .kc-prose ul.kc-check li::before {
	color: var(--kc-purple);
	content: "\2713";
	font-family: var(--kc-mono);
	left: 0;
	position: absolute;
}

body.page.page-id-96327 .kc-prose ul.kc-check li::marker,
body.page.kc-apply-page .kc-prose ul.kc-check li::marker {
	content: "";
}

body.page.page-id-96327 .kc-prose ul.kc-check a,
body.page.kc-apply-page .kc-prose ul.kc-check a {
	color: var(--kc-purple);
}

body.page.page-id-96327 .kc-prose ol.kc-steps,
body.page.kc-apply-page .kc-prose ol.kc-steps {
	background:
		radial-gradient(110% 80% at 12% 0%, var(--kc-wash-brand), transparent 62%),
		linear-gradient(160deg, var(--kc-ink-700), var(--kc-ink-900) 70%);
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius);
	counter-reset: kc-apply-step;
	display: grid;
	gap: var(--kc-space-5);
	grid-template-columns: repeat(3, minmax(0, 1fr));
	list-style: none;
	margin: 0 0 var(--kc-space-5);
	padding: var(--kc-space-5);
}

body.page.page-id-96327 .kc-prose ol.kc-steps li,
body.page.kc-apply-page .kc-prose ol.kc-steps li {
	color: var(--kc-text-dim);
	counter-increment: kc-apply-step;
	font-size: 0.92rem;
	line-height: 1.6;
	margin: 0;
	padding: 0;
}

body.page.page-id-96327 .kc-prose ol.kc-steps li::before,
body.page.kc-apply-page .kc-prose ol.kc-steps li::before {
	color: var(--kc-purple);
	content: counter(kc-apply-step, decimal-leading-zero);
	display: block;
	font-family: var(--kc-mono);
	font-size: 0.78rem;
	letter-spacing: 0.14em;
	margin-bottom: var(--kc-space-3);
}

body.page.page-id-96327 .kc-prose ol.kc-steps li::marker,
body.page.kc-apply-page .kc-prose ol.kc-steps li::marker {
	content: "";
}

body.page.page-id-96327 .kc-prose ol.kc-steps strong,
body.page.kc-apply-page .kc-prose ol.kc-steps strong {
	color: var(--kc-white);
	display: block;
	font-size: 1rem;
	font-weight: 600;
	margin-bottom: var(--kc-space-2);
}

body.page.page-id-96327 .kc-prose ol.kc-steps + p,
body.page.kc-apply-page .kc-prose ol.kc-steps + p {
	color: var(--kc-text-muted);
	line-height: 1.7;
	margin: 0 0 var(--kc-space-6);
	max-width: 66ch;
}

@media (max-width: 720px) {
	body.page.page-id-96327 .kc-prose ol.kc-steps,
	body.page.kc-apply-page .kc-prose ol.kc-steps {
		grid-template-columns: 1fr;
	}
}

body.page.page-id-96327 .kc-apply-disclaimer,
body.page.kc-apply-page .kc-apply-disclaimer {
	color: var(--kc-text-dim);
	font-size: clamp(1rem, 1.6vw, 1.25rem);
	margin-top: 2em;
}

body.page.page-id-96327 .kc-apply-disclaimer ~ p,
body.page.page-id-96327 .kc-apply-disclaimer ~ ul,
body.page.kc-apply-page .kc-apply-disclaimer ~ p,
body.page.kc-apply-page .kc-apply-disclaimer ~ ul {
	color: var(--kc-text-dim);
	font-size: 0.92rem;
	line-height: 1.7;
	max-width: 68ch;
}

body.page.page-id-96327 .kc-prose ul.kc-apply-disclaimer-list,
body.page.kc-apply-page .kc-prose ul.kc-apply-disclaimer-list {
	background: none;
	border: 0;
	list-style: disc;
	margin: 0 0 1.25em;
	padding: 0 0 0 1.35em;
}

body.page.page-id-96327 .kc-prose ul.kc-apply-disclaimer-list li,
body.page.kc-apply-page .kc-prose ul.kc-apply-disclaimer-list li {
	color: var(--kc-text-dim);
	padding: 0;
}

body.page.page-id-96327 .kc-prose ul.kc-apply-disclaimer-list li::before,
body.page.kc-apply-page .kc-prose ul.kc-apply-disclaimer-list li::before {
	content: none;
}

body.page.page-id-96327 .kc-prose ul.kc-apply-disclaimer-list li::marker,
body.page.kc-apply-page .kc-prose ul.kc-apply-disclaimer-list li::marker {
	color: var(--kc-line-strong);
	content: initial;
}

body.page.page-id-96327 .kc-apply-cta,
body.page.kc-apply-page .kc-apply-cta {
	background:
		radial-gradient(110% 80% at 12% 0%, rgba(137, 88, 254, 0.22), transparent 62%),
		linear-gradient(160deg, var(--kc-ink-700), var(--kc-ink-900) 70%);
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius);
	margin: var(--kc-space-6) 0 0;
	padding: clamp(30px, 5vw, 60px);
	text-align: center;
}

body.page.page-id-96327 .kc-apply-cta h2,
body.page.kc-apply-page .kc-apply-cta h2 {
	color: var(--kc-white);
	margin: 0 0 var(--kc-space-5);
}

body.page.page-id-96327 .kc-apply-cta .wp-block-buttons,
body.page.kc-apply-page .kc-apply-cta .wp-block-buttons {
	justify-content: center;
	margin: 0 0 var(--kc-space-5);
}

body.page.page-id-96327 .kc-apply-cta .wp-block-button,
body.page.page-id-96327 .kc-apply-cta .wp-block-button.has-custom-width,
body.page.kc-apply-page .kc-apply-cta .wp-block-button {
	width: auto;
}

body.page.page-id-96327 .kc-apply-cta .wp-block-button__link,
body.page.page-id-96327 .kc-apply-cta__btn .wp-block-button__link,
body.page.kc-apply-page .kc-apply-cta .wp-block-button__link {
	background: var(--kc-purple);
	border: 0;
	border-radius: var(--kc-radius-pill);
	color: var(--kc-white);
	display: inline-block;
	font-family: var(--wp--preset--font-family--michroma, Michroma, sans-serif);
	font-size: 0.92rem;
	padding: 1.15em 2.4em;
	width: auto;
}

body.page.page-id-96327 .kc-apply-cta .wp-block-button__link:hover,
body.page.page-id-96327 .kc-apply-cta .wp-block-button__link:focus-visible,
body.page.kc-apply-page .kc-apply-cta .wp-block-button__link:hover,
body.page.kc-apply-page .kc-apply-cta .wp-block-button__link:focus-visible {
	box-shadow: var(--kc-glow-brand);
	color: var(--kc-white);
}

body.page.page-id-96327 .kc-apply-cta p,
body.page.kc-apply-page .kc-apply-cta p {
	color: var(--kc-text-dim);
	font-size: 0.88rem;
	margin: 0 0 var(--kc-space-3);
}

body.page.page-id-96327 .kc-apply-cta p:last-child,
body.page.kc-apply-page .kc-apply-cta p:last-child {
	margin-bottom: 0;
}

body.page.page-id-96327 .kc-apply-cta a:not(.wp-element-button):not(.wp-block-button__link),
body.page.kc-apply-page .kc-apply-cta a:not(.wp-element-button):not(.wp-block-button__link) {
	color: var(--kc-purple);
}

/* Homepage plates
   ==========================================================================
   Guest home and signed-in home are two pages. Gutenverse login_status already
   hides tiles, carousels, and prices from guests. These rules restyle what
   each audience already gets. Do not un-hide the catalog stack.

   Live IDs (page 37273, confirmed on the guest HTML 2026-09-02) sit next to
   the theme class hooks so a DB override without the new classes still paints.
   Generated ids change if the block is recreated; the classes are the keepers.

   Apply stays XL. Login stays xs. The mock inverts that; live does not. */

body.home .kc-home-plate,
body.home .kc-hero.guten-section > .guten-container,
body.home .kc-hero-logout.guten-section > .guten-container,
body.home .kc-hero-login.guten-section > .guten-container,
body.home .guten-XDQsjJ > .guten-container,
body.home .kc-home-why > .guten-container,
body.home .guten-MQYRvN,
body.home .kc-home-commitment__plate {
	background:
		radial-gradient(110% 80% at 12% 0%, rgba(137, 88, 254, 0.16), transparent 62%),
		linear-gradient(160deg, var(--kc-ink-700), var(--kc-ink-900) 70%);
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius-lg);
	overflow: hidden;
	position: relative;
}

body.home .kc-hero.guten-section > .guten-container,
body.home .kc-hero-logout.guten-section > .guten-container,
body.home .kc-hero-login.guten-section > .guten-container,
body.home .guten-XDQsjJ > .guten-container,
body.home .kc-home-why > .guten-container {
	padding: clamp(1.75rem, 3.5vw, 3.25rem) clamp(1.35rem, 3vw, 2.75rem);
}

body.home .kc-hero.guten-section > .guten-container::before,
body.home .kc-hero-logout.guten-section > .guten-container::before,
body.home .kc-hero-login.guten-section > .guten-container::before,
body.home .guten-XDQsjJ > .guten-container::before,
body.home .kc-home-why > .guten-container::before,
body.home .guten-MQYRvN::before,
body.home .kc-home-commitment__plate::before {
	background: linear-gradient(
		90deg,
		var(--kc-purple) 0 clamp(44px, 9vw, 112px),
		transparent clamp(44px, 9vw, 112px) calc(100% - clamp(44px, 9vw, 112px)),
		var(--kc-purple) calc(100% - clamp(44px, 9vw, 112px)) 100%
	);
	content: "";
	height: 2px;
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

/* Guest hero: identity plate. Copy and CTAs stay. Login solid / Apply ghost XL. */

body.home .kc-hero-logout {
	background-color: var(--kc-black);
}

body.home .kc-hero-logout .kc-hero__eyebrow {
	color: var(--kc-purple);
	font-size: 0.7rem;
	font-weight: 700;
	letter-spacing: 0.24em;
}

body.home .kc-hero-logout .guten-nqvswg .guten-button {
	min-height: 3.15rem;
}

/* Hero lockup — chimera up top, slogan as a product-page sentence
   ==========================================================================
   1.86.2 put the ram at 8% in the corner and set the H1 in Montserrat 600.
   The mark is the brand; the slogan has to read like a product H1, not a
   brochure deck. Same copy. No synthesised italic. No purple .kc-em.

   Container becomes one column: mark, then copy. Size is a header lockup
   (~76–104px), not the old 280px side column. kc-hero-mark-in is killed so
   it cannot fade a watermark back in. Login and logout share this. Guest
   catalog stays gated. Apply stays XL. */

body.home .kc-hero.guten-section > .guten-container {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	justify-items: start;
	row-gap: 1.1rem;
}

body.home .kc-hero.guten-section > .guten-container > .guten-column {
	grid-column: 1;
	grid-row: 2;
	width: 100%;
}

body.home .kc-hero.guten-section > .guten-container::after {
	align-self: start;
	animation: none;
	filter: drop-shadow(0 0 18px rgba(137, 88, 254, 0.42));
	grid-column: 1;
	grid-row: 1;
	inset: auto;
	justify-self: start;
	opacity: 1;
	position: static;
	width: clamp(4.75rem, 8.5vw, 6.5rem);
}

body.home .kc-hero .kc-hero__eyebrow {
	color: var(--kc-purple);
	display: block;
	font-family: var(--wp--preset--font-family--michroma, Michroma, sans-serif);
	font-size: 0.68rem;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0.18em;
	margin-bottom: 0.85rem;
	width: 100%;
}

/* Nested Gutenverse columns sit the eyebrow beside the H1. Keep the lockup
   as mark → label → sentence, not a side label. */
body.home .kc-hero .mobile-heading .guten-container,
body.home .kc-hero .mobile-heading .guten-column-wrapper {
	align-items: flex-start;
	display: flex;
	flex-direction: column;
	width: 100%;
}

body.home .kc-hero .kc-hero__slogan,
body.home .kc-hero .kc-hero__slogan .kc-em {
	color: var(--kc-white);
	font-family: var(--wp--preset--font-family--michroma, Michroma, sans-serif) !important;
	font-style: normal !important;
	font-weight: 400;
}

body.home .kc-hero .kc-hero__slogan {
	font-size: clamp(1.18rem, 2.1vw, 1.68rem);
	letter-spacing: -0.015em;
	line-height: 1.26;
	max-width: 18ch;
}

body.home .kc-hero .kc-hero__sub {
	color: var(--kc-text);
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif);
	font-size: 1.05rem;
	max-width: 46ch;
}

body.home .kc-hero .guten-button-wrapper .guten-button,
body.home .kc-hero .wp-block-button .wp-block-button__link {
	border-radius: var(--kc-radius-pill, 999px);
}

@media (max-width: 900px) {
	body.home .kc-hero.guten-section > .guten-container {
		justify-items: start;
		text-align: left;
	}

	body.home .kc-hero.guten-section > .guten-container::after {
		width: clamp(4.1rem, 20vw, 5.5rem);
	}

	body.home .kc-hero .kc-hero__slogan {
		max-width: 20ch;
	}

	body.home .kc-hero .kc-hero__sub {
		max-width: 36ch;
	}
}

/* Why Kimera — sentences used as H2s read as plate copy, not display type.
   kimera-ui.css / the heading snippet set Michroma !important on H2s.
   Without !important here the 30px display face stays. */

body.home .guten-XDQsjJ h2.wp-block-heading,
body.home .kc-home-why h2.wp-block-heading,
body.home .kc-home-why__copy {
	color: var(--kc-text-muted);
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif) !important;
	font-size: 1.05rem !important;
	font-style: normal !important;
	font-weight: 400 !important;
	letter-spacing: 0;
	line-height: 1.7;
	margin: 0 0 1.15rem;
	max-width: 64ch;
}

body.home .guten-XDQsjJ h2.wp-block-heading:first-of-type,
body.home .kc-home-why h2.wp-block-heading:first-of-type,
body.home .kc-home-why__copy:first-of-type {
	color: var(--kc-text);
	font-size: 1.14rem !important;
}

/* Short section titles (Need to Know, From the library, Why, cats, FAQ).
   Display face is fine; the leftover was size + tracking + a 32px chevron.
   Exclude the library lead (guten-bhXhAi) — that is a sentence, not a title. */

body.home .guten-t74E2X .heading-title,
body.home .guten-PmRrSM .heading-title,
body.home .guten-kSHZLs .heading-title,
body.home .guten-fAwpKG .heading-title,
body.home .guten-bXzaK8 .heading-title,
body.home .guten-k1jHnO .heading-title,
body.home .guten-DsCv4n .heading-title,
body.home .kc-home-cats .guten-advanced-heading .heading-title,
body.home .kc-home-recent .guten-advanced-heading .heading-title,
body.home .kc-home-featured .guten-advanced-heading .heading-title,
body.home .kc-home-why .guten-advanced-heading .heading-title,
body.home .kc-home-faq .guten-advanced-heading .heading-title,
body.home .kc-home-library .guten-advanced-heading:not(.guten-bhXhAi) .heading-title,
body.home .guten-14Xq3C .guten-advanced-heading .heading-title,
body.home .guten-PrexWo .guten-advanced-heading .heading-title,
body.home .guten-363gDT .guten-advanced-heading .heading-title,
body.home .guten-XDQsjJ .guten-advanced-heading .heading-title,
body.home .guten-rfvZi8 .guten-advanced-heading:not(.guten-bhXhAi) .heading-title,
body.home .guten-QsPJUR .guten-advanced-heading .heading-title {
	color: var(--kc-white) !important;
	font-family: var(--wp--preset--font-family--michroma, Michroma, sans-serif) !important;
	font-size: clamp(1.02rem, 1.55vw, 1.22rem) !important;
	font-style: normal !important;
	font-weight: 400 !important;
	letter-spacing: 0.02em;
	line-height: 1.25;
}

body.home .kc-home-cats .guten-icon .guten-icon-wrapper i,
body.home .kc-home-recent .guten-icon .guten-icon-wrapper i,
body.home .kc-home-featured .guten-icon .guten-icon-wrapper i,
body.home .kc-home-why .guten-icon .guten-icon-wrapper i,
body.home .kc-home-library .guten-icon .guten-icon-wrapper i,
body.home .kc-home-faq .guten-icon .guten-icon-wrapper i,
body.home .kc-home-commitment .guten-icon .guten-icon-wrapper i,
body.home .guten-14Xq3C .guten-icon .guten-icon-wrapper i,
body.home .guten-PrexWo .guten-icon .guten-icon-wrapper i,
body.home .guten-363gDT .guten-icon .guten-icon-wrapper i,
body.home .guten-XDQsjJ .guten-icon .guten-icon-wrapper i,
body.home .guten-rfvZi8 .guten-icon .guten-icon-wrapper i,
body.home .guten-QsPJUR .guten-icon .guten-icon-wrapper i {
	font-size: 0.85rem !important;
	opacity: 0.88;
}

/* Library cards — research-library hover lift / hairline / --kc-*. */

body.home .guten-3QKm2v .guten-post,
body.home .kc-home-library .guten-post {
	background: linear-gradient(180deg, var(--kc-ink-700), var(--kc-ink-800));
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius-lg);
	display: flex;
	flex-direction: column;
	overflow: hidden;
	padding: var(--kc-space-5);
	transition:
		border-color var(--kc-duration) var(--kc-ease),
		box-shadow var(--kc-duration) var(--kc-ease),
		transform var(--kc-duration) var(--kc-ease-out);
}

body.home .guten-3QKm2v .guten-post:hover,
body.home .guten-3QKm2v .guten-post:focus-within,
body.home .kc-home-library .guten-post:hover,
body.home .kc-home-library .guten-post:focus-within {
	border-color: var(--kc-line-brand);
	box-shadow: var(--kc-glow-brand);
	transform: translateY(-3px);
}

body.home .guten-3QKm2v .guten-post-title,
body.home .guten-3QKm2v .guten-post-title a,
body.home .kc-home-library .guten-post-title,
body.home .kc-home-library .guten-post-title a {
	color: var(--kc-white);
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif) !important;
	font-size: 1.08rem !important;
	font-style: normal !important;
	font-weight: 600 !important;
	letter-spacing: -0.005em;
	line-height: 1.4;
}

/* Library lead. Gutenverse paints .heading-focus as 42px italic Times/Michroma
   purple — that is the leftover the owner screenshotted. Whole sentence is
   one quiet Montserrat lead; the COA phrase can stay purple at body size. */
body.home .guten-bhXhAi.guten-element {
	margin-bottom: 1.75rem !important;
	padding-right: 0 !important;
}

body.home .guten-bhXhAi .heading-title,
body.home .guten-bhXhAi .heading-title .heading-title,
body.home .guten-bhXhAi .heading-title .heading-focus,
body.home .kc-home-library .guten-bhXhAi .heading-title,
body.home .kc-home-library .guten-bhXhAi .heading-focus {
	color: var(--kc-text) !important;
	-webkit-text-fill-color: var(--kc-text) !important;
	display: inline;
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif) !important;
	font-size: 1.05rem !important;
	font-style: normal !important;
	font-weight: 400 !important;
	letter-spacing: 0 !important;
	line-height: 1.65 !important;
	max-width: 52ch;
}

body.home .guten-bhXhAi .heading-focus,
body.home .kc-home-library .guten-bhXhAi .heading-focus {
	color: var(--kc-purple-soft) !important;
	-webkit-text-fill-color: var(--kc-purple-soft) !important;
}

/* Commitment lead — same treatment. Card labels stay short Michroma. */
body.home .guten-7iDUwI,
body.home .guten-7iDUwI.wp-block-gutenverse-heading {
	color: var(--kc-text);
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif) !important;
	font-size: 1.05rem !important;
	font-style: normal !important;
	font-weight: 400 !important;
	letter-spacing: 0;
	line-height: 1.65;
	max-width: 52ch;
}

body.home .guten-te81vb .heading-title,
body.home .guten-kPDXeS .heading-title,
body.home .guten-IekDft .heading-title,
body.home .guten-KyFFuS .heading-title,
body.home .kc-home-commitment .guten-eRLrc2 .heading-title {
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif) !important;
	font-size: 1rem !important;
	font-style: normal !important;
	font-weight: 600;
	letter-spacing: -0.01em;
	line-height: 1.35;
}

body.home .guten-3QKm2v .guten-post-excerpt,
body.home .kc-home-library .guten-post-excerpt {
	color: var(--kc-text-dim);
}

body.home .guten-3QKm2v .guten-readmore,
body.home .kc-home-library .guten-readmore {
	color: var(--kc-purple);
	font-weight: 600;
}

body.home .guten-3QKm2v .guten-post:hover .guten-readmore,
body.home .kc-home-library .guten-post:hover .guten-readmore {
	color: var(--kc-purple-soft);
}

/* Commitment plate + FAQ accordion lift (cards already exist in kimera-ui). */

body.home .guten-MQYRvN,
body.home .kc-home-commitment__plate {
	padding: clamp(1.75rem, 3.5vw, 3rem) clamp(1.25rem, 3vw, 2.5rem);
}

body.home .guten-QsPJUR .accordion-item,
body.home .kc-home-faq .accordion-item {
	transition:
		border-color var(--kc-duration) var(--kc-ease),
		box-shadow var(--kc-duration) var(--kc-ease),
		transform var(--kc-duration) var(--kc-ease-out);
}

body.home .guten-QsPJUR .accordion-item:hover,
body.home .guten-QsPJUR .accordion-item:focus-within,
body.home .kc-home-faq .accordion-item:hover,
body.home .kc-home-faq .accordion-item:focus-within {
	box-shadow: var(--kc-glow-brand);
	transform: translateY(-3px);
}

/* Signed-in only: category tiles. Names live in alt / captionOriginal / href.
   Do not invent labels. Guest never reaches this grid (login_status). */

body.home.logged-in .wp-block-group.is-layout-grid .guten-image,
body.home.logged-in .kc-home-cats .guten-image,
body.home.logged-in .kc-home-tile {
	background: linear-gradient(180deg, var(--kc-ink-700), var(--kc-ink-800));
	border: 1px solid var(--kc-line);
	border-radius: var(--kc-radius-lg);
	overflow: hidden;
	transition:
		border-color var(--kc-duration) var(--kc-ease),
		box-shadow var(--kc-duration) var(--kc-ease),
		transform var(--kc-duration) var(--kc-ease-out);
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image:hover,
body.home.logged-in .wp-block-group.is-layout-grid .guten-image:focus-within,
body.home.logged-in .kc-home-tile:hover,
body.home.logged-in .kc-home-tile:focus-within {
	border-color: var(--kc-line-brand);
	box-shadow: var(--kc-glow-brand);
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image a,
body.home.logged-in .kc-home-tile a {
	display: flex;
	flex-direction: column;
	text-decoration: none;
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image figcaption,
body.home.logged-in .wp-block-group.is-layout-grid .guten-image .guten-caption,
body.home.logged-in .kc-home-tile figcaption,
body.home.logged-in .kc-home-tile .guten-caption {
	background: var(--kc-ink-800);
	border-top: 1px solid var(--kc-line);
	color: var(--kc-white);
	font-family: var(--wp--preset--font-family--michroma, inherit);
	font-size: 0.72rem;
	letter-spacing: 0.08em;
	line-height: 1.35;
	margin: 0;
	padding: 0.7rem 0.85rem 0.8rem;
	text-align: center;
	text-transform: uppercase;
}

/* Caption hook from the link href when Gutenverse emits no figcaption.
   Strings match captionOriginal on the image blocks — not new names. */
body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/peptides/"]::after,
body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/nootropics/"]::after,
body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/research-compounds/"]::after,
body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/aminos/"]::after,
body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/selective-modulators/"]::after,
body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/chemical-supplies/"]::after {
	background: var(--kc-ink-800);
	border-top: 1px solid var(--kc-line);
	color: var(--kc-white);
	font-family: var(--wp--preset--font-family--michroma, inherit);
	font-size: 0.72rem;
	letter-spacing: 0.08em;
	line-height: 1.35;
	padding: 0.7rem 0.85rem 0.8rem;
	text-align: center;
	text-transform: uppercase;
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/peptides/"]::after {
	content: "Peptides";
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/nootropics/"]::after {
	content: "Nootropics";
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/research-compounds/"]::after {
	content: "Research Compounds";
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/aminos/"]::after {
	content: "Aminos";
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/selective-modulators/"]::after {
	content: "Selective Modulators";
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image a[href*="/product-category/chemical-supplies/"]::after {
	content: "Chemical Supplies";
}

body.home.logged-in .wp-block-group.is-layout-grid .guten-image:has(figcaption) a::after,
body.home.logged-in .wp-block-group.is-layout-grid .guten-image:has(.guten-caption) a::after {
	content: none;
	display: none;
}

/* Signed-in carousels: keep both. Separate the twins. Dots are purple.
   WPMozo writes bullet colour as ID-scoped inline CSS (kimera-ui.css ~5157);
   theme attributes already say --kc-purple, live still ships Swiper blue. */

body.home.logged-in .kc-home-recent,
body.home.logged-in .guten-PrexWo {
	padding-bottom: 0.25rem;
}

body.home.logged-in .kc-home-featured,
body.home.logged-in .guten-363gDT {
	border-top: 1px solid var(--kc-line);
	margin-top: clamp(1.25rem, 3vw, 2.5rem);
	padding-top: clamp(1.75rem, 3.5vw, 2.75rem);
}

body.home.logged-in .guten-PrexWo .guten-advanced-heading .heading-title,
body.home.logged-in .kc-home-recent .guten-advanced-heading .heading-title {
	font-size: clamp(1.25rem, 2vw, 1.7rem);
}

body.home.logged-in .guten-363gDT .guten-advanced-heading .heading-title,
body.home.logged-in .kc-home-featured .guten-advanced-heading .heading-title {
	font-size: clamp(1.05rem, 1.6vw, 1.3rem);
	font-weight: 500;
}

body.home.logged-in .guten-PrexWo .guten-text-editor,
body.home.logged-in .guten-363gDT .guten-text-editor,
body.home.logged-in .kc-home-recent .guten-text-editor,
body.home.logged-in .kc-home-featured .guten-text-editor,
body.home.logged-in .guten-PrexWo .guten-text-editor p,
body.home.logged-in .guten-363gDT .guten-text-editor p,
body.home.logged-in .kc-home-recent .guten-text-editor p,
body.home.logged-in .kc-home-featured .guten-text-editor p,
body.home.logged-in .guten-WkqXHD,
body.home.logged-in .guten-SRadmK,
body.home.logged-in .guten-WkqXHD p,
body.home.logged-in .guten-SRadmK p,
body.home.logged-in .guten-fZg1fr,
body.home.logged-in .guten-Dvjms7 {
	color: var(--kc-purple-soft) !important;
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif) !important;
	font-size: 0.78rem !important;
	font-style: normal !important;
	font-weight: 600 !important;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

body.home.logged-in .wpmozo-product-carousel-wrap {
	--swiper-pagination-color: var(--kc-purple);
	--swiper-pagination-bullet-inactive-color: var(--kc-purple-soft);
	--swiper-theme-color: var(--kc-purple);
}

body.home.logged-in .wpmozo-product-carousel-wrap .swiper-pagination-bullet,
body.home.logged-in .wpmozo-product-carousel-wrap .swiper-pagination-bullet-active {
	background: var(--kc-purple) !important;
}

body.home.logged-in .wpmozo-product-carousel-wrap h2,
body.home.logged-in .wpmozo-product-carousel-wrap h2.woocommerce-loop-product__title,
body.home.logged-in .wpmozo-product-carousel-wrap .woocommerce-loop-product__title,
body.home.logged-in .wpmozo-product-carousel-wrap .wpmozo-product-title {
	color: var(--kc-white);
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif) !important;
	font-size: 0.95rem !important;
	font-style: normal;
	font-weight: 600;
	letter-spacing: -0.005em;
	line-height: 1.4;
}

/* Home carousel ATC — same pill as the product page, not WPMozo's leftover. */
body.home .wpmozo-product-carousel-wrap a.button,
body.home .wpmozo-product-carousel-wrap a.add_to_cart_button,
body.home .wpmozo-product-carousel-wrap a.button.wp-element-button,
body.home .wpmozo-product-carousel-wrap .button.add_to_cart_button,
body.home .wpmozo-product-carousel-wrap .ajax_add_to_cart,
body.home.logged-in .wpmozo-product-carousel-wrap a.button.wp-element-button {
	background-color: var(--kc-purple-strong) !important;
	background-image: linear-gradient(135deg, var(--kc-purple-strong), var(--kc-purple-deep)) !important;
	border: 1px solid var(--kc-line-brand) !important;
	border-radius: var(--kc-radius-pill, 999px) !important;
	box-shadow: none !important;
	color: var(--kc-white) !important;
	font-family: var(--wp--preset--font-family--michroma, Michroma, sans-serif) !important;
	font-size: 0.68rem !important;
	font-style: normal !important;
	font-weight: 400 !important;
	letter-spacing: 0.04em;
	line-height: 1.2;
	min-height: 2.4rem;
	padding: 0.7em 1.25em !important;
	text-transform: none;
}

body.home .wpmozo-product-carousel-wrap a.button:hover,
body.home .wpmozo-product-carousel-wrap a.add_to_cart_button:hover,
body.home.logged-in .wpmozo-product-carousel-wrap a.button:hover {
	background: linear-gradient(135deg, var(--kc-purple), var(--kc-purple-strong)) !important;
	box-shadow: var(--kc-glow-brand) !important;
	color: var(--kc-white) !important;
	filter: brightness(1.05);
	transform: translateY(-1px);
}

/* Carousel arrows — hairline pills, not default Swiper chrome.
   Plugin writes colours as ID-scoped inline CSS; !important is required. */
body.home .wpmozo-product-carousel-wrap .swiper-button-next,
body.home .wpmozo-product-carousel-wrap .swiper-button-prev,
body.home .wpmozo-product-carousel-wrap .swiper-navigation,
body.home.logged-in .wpmozo-product-carousel-wrap .swiper-button-next,
body.home.logged-in .wpmozo-product-carousel-wrap .swiper-button-prev {
	background-color: var(--kc-ink-700) !important;
	background-image: linear-gradient(180deg, var(--kc-ink-700), var(--kc-ink-800)) !important;
	border: 1px solid var(--kc-line-strong) !important;
	border-radius: var(--kc-radius-pill, 999px) !important;
	/* WPMozo writes a purple fill as ID-scoped !important. Inset ink
	   covers that fill; the plugin does not set box-shadow. */
	box-shadow: inset 0 0 0 2.5rem var(--kc-ink-700) !important;
	color: var(--kc-white) !important;
	height: 2.35rem !important;
	margin-top: 0 !important;
	opacity: 1 !important;
	top: 42% !important;
	transform: none;
	width: 2.35rem !important;
}

body.home .wpmozo-product-carousel-wrap .swiper-button-next:hover,
body.home .wpmozo-product-carousel-wrap .swiper-button-prev:hover,
body.home .wpmozo-product-carousel-wrap .swiper-navigation:hover {
	border-color: var(--kc-line-brand) !important;
	box-shadow: inset 0 0 0 2.5rem var(--kc-ink-700), var(--kc-glow-brand) !important;
	color: var(--kc-white) !important;
	transform: none;
}

body.home .wpmozo-product-carousel-wrap .swiper-button-next::after,
body.home .wpmozo-product-carousel-wrap .swiper-button-prev::after {
	color: var(--kc-white) !important;
	font-size: 0.72rem !important;
	font-weight: 600;
}

body.home .wpmozo-product-carousel-wrap .swiper-button-disabled,
body.home .wpmozo-product-carousel-wrap .swiper-button-lock {
	opacity: 0.35 !important;
}

/* Why / library / FAQ leftover outline buttons → current pill language.
   Do not touch guest hero Apply/Login ranking. */
body.home .kc-home-why .guten-button-wrapper .guten-button,
body.home .kc-home-library .guten-button-wrapper .guten-button,
body.home .kc-home-faq .guten-button-wrapper .guten-button,
body.home .guten-XDQsjJ .guten-button-wrapper .guten-button,
body.home .guten-rfvZi8 .guten-button-wrapper .guten-button,
body.home .guten-QsPJUR .guten-button-wrapper .guten-button {
	background: transparent !important;
	border: 1px solid var(--kc-line-strong) !important;
	border-radius: var(--kc-radius-pill, 999px) !important;
	color: var(--kc-white) !important;
	font-size: 0.72rem !important;
	min-height: 2.65rem;
	padding: 0.75em 1.4em !important;
}

body.home .kc-home-why .guten-button-wrapper .guten-button:hover,
body.home .kc-home-library .guten-button-wrapper .guten-button:hover,
body.home .kc-home-faq .guten-button-wrapper .guten-button:hover,
body.home .guten-XDQsjJ .guten-button-wrapper .guten-button:hover,
body.home .guten-rfvZi8 .guten-button-wrapper .guten-button:hover,
body.home .guten-QsPJUR .guten-button-wrapper .guten-button:hover {
	border-color: var(--kc-line-brand) !important;
	box-shadow: var(--kc-glow-brand);
	color: var(--kc-white) !important;
}

body.home .kc-home-library .has-michroma-font-family,
body.home .guten-rfvZi8 .has-michroma-font-family {
	font-family: var(--wp--preset--font-family--montserrat, Montserrat, sans-serif) !important;
	font-size: 0.95rem !important;
	font-weight: 600;
}

/*
 * Heading soup note (product titles): WPMozo Product Carousel has no block
 * attribute for the title tag. It emits Woo loop H2s. Changing that in
 * front-page.html would be a guessed key and can break the block. Outline
 * stays H2; the rule above only demotes the type. Leave the Why Kimera
 * sentence H2s as paragraphs in the theme file when that template is used.
 */

@media (prefers-reduced-motion: reduce) {
	body.home .guten-3QKm2v .guten-post:hover,
	body.home .guten-3QKm2v .guten-post:focus-within,
	body.home .kc-home-library .guten-post:hover,
	body.home .guten-QsPJUR .accordion-item:hover,
	body.home .kc-home-faq .accordion-item:hover,
	body.home.logged-in .wp-block-group.is-layout-grid .guten-image:hover,
	body.home.logged-in .kc-home-tile:hover {
		transform: none;
	}
}
