body.home { overflow-x: hidden; }

/* The Razzi template contains a few desktop-only flex/table children.  Keep
 * those children from widening the viewport on phones while preserving the
 * normal desktop canvas. */
html,
body {
	max-width: 100%;
	overflow-x: hidden;
}

.site,
.site-content,
.site-content > .container,
.content-area,
#site-header,
#site-footer {
	max-width: 100%;
	min-width: 0;
}

body.home .site-content {
    max-width: 100%;
}

/* Razzi wraps the front page in a 1170px `.container` by default.  Use the
 * site's 1200px storefront canvas instead, keeping every section on one grid. */
.home .site-content > .container ,body.home #content, body.home .site-content{
	width: 100%;
	max-width: 100%;
	margin-right: auto;
	margin-left: auto;
	padding-right: 0;
	padding-left: 0;
	box-sizing: border-box;
}

.age-scs-home {
	--age-home-ink: #171717;
	--age-home-muted: #686868;
	--age-home-line: #e7e7e7;
	--age-home-accent: #222629;
	/* Keep the complete storefront inside the same 1200px canvas as the
	 * configured header and footer. */
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
	color: var(--age-home-ink);
}

.age-scs-home *,
.age-scs-home *::before,
.age-scs-home *::after { box-sizing: border-box; }

/* BRAND route identities.  The content and product loop stay shared, while
 * each route gets its own palette, shape language, and footer treatment. */
.age-scs-home--route-a {
	--age-home-accent: #b56545;
	--age-home-line: #e7ddd5;
	--age-home-soft: #f5eee8;
}

.age-scs-home--route-a .age-scs-home__hero { background: #eee3d8; }
.age-scs-home--route-a .age-scs-home__hero-copy { border-radius: 2px; }
.age-scs-home--route-a .age-scs-home__editorial { background: #29352f; }

.age-scs-home--route-b {
	--age-home-accent: #367294;
	--age-home-line: #d9e4eb;
	--age-home-soft: #edf4f8;
}

.age-scs-home--route-b .age-scs-home__hero {
	min-height: 570px;
	border-radius: 0 0 68px 68px;
	background: #dfeaf0;
}

.age-scs-home--route-b .age-scs-home__hero::after {
	background: linear-gradient(90deg, rgba(16, 40, 55, .08) 0%, rgba(16, 40, 55, .05) 45%, rgba(16, 40, 55, .35) 100%);
}

.age-scs-home--route-b .age-scs-home__hero-copy {
	border: 0;
	border-left: 6px solid #367294;
	border-radius: 0;
	background: rgba(247, 251, 253, .96);
	box-shadow: 0 24px 70px rgba(30, 65, 86, .18);
}

.age-scs-home--route-b h1 { letter-spacing: -.025em; }

.age-scs-home--route-b .age-scs-home__signal {
	border-radius: 16px;
	background: #f8fbfd;
	box-shadow: 0 12px 34px rgba(38, 78, 99, .08);
}

.age-scs-home--route-b .age-scs-home__editorial {
	border-radius: 24px;
	background: #193b52;
}

.age-scs-home--route-c {
	--age-home-accent: #718054;
	--age-home-line: #dfe5d6;
	--age-home-soft: #f0f3e9;
}

.age-scs-home--route-c .age-scs-home__hero {
	min-height: 600px;
	border-radius: 28px;
	background: #e8eee2;
}

.age-scs-home--route-c .age-scs-home__hero-copy {
	border-color: rgba(112, 128, 84, .24);
	border-radius: 28px;
	background: rgba(250, 248, 239, .94);
	box-shadow: 0 22px 58px rgba(71, 83, 54, .14);
}

.age-scs-home--route-c .age-scs-home__signal {
	border-color: #dfe5d6;
	border-radius: 18px;
	background: var(--age-home-soft);
	box-shadow: none;
}

.age-scs-home--route-c .age-scs-home__editorial {
	border-radius: 28px;
	background: #80503c;
}

.age-scs-home__hero {
	position: relative;
	display: flex;
	align-items: center;
	/* The banner is the one full-bleed section.  The content modules below
	 * remain on the shared 1200px storefront grid. */
	width: 100vw;
	max-width: none;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	min-height: clamp(540px, 56vw, 760px);
	/* Use the same 1200px grid edge as the Razzi header.  The inner modules
	 * add a small mobile gutter in the responsive rules below. */
	padding: clamp(28px, 5vw, 72px) max(20px, calc((100vw - 1200px) / 2));
	overflow: hidden;
}

.age-scs-home__hero::after {
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgba(17, 24, 21, .52) 0%, rgba(17, 24, 21, .18) 46%, rgba(17, 24, 21, .04) 100%);
	content: "";
	pointer-events: none;
}

.age-scs-home__hero-copy {
	position: relative;
	z-index: 3;
	max-width: 590px;
	padding: clamp(28px, 4.2vw, 62px);
	border: 1px solid rgba(255, 255, 255, .42);
	background: rgba(255, 252, 246, .91);
	box-shadow: 0 24px 80px rgba(28, 34, 30, .2);
	backdrop-filter: blur(9px);
}

.age-scs-home__eyebrow {
	margin: 0 0 20px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .18em;
	line-height: 1.5;
}

.age-scs-home h1 {
	max-width: 650px;
	margin: 0;
	font-size: clamp(42px, 5.2vw, 78px);
	font-weight: 500;
	letter-spacing: -.045em;
	line-height: 1.03;
}

.age-scs-home__intro {
	max-width: 500px;
	margin: 30px 0 0;
	color: var(--age-home-muted);
	font-size: 17px;
	line-height: 1.7;
}

.age-scs-home__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 24px;
	margin-top: 36px;
}

.age-scs-home__button {
	margin: 0;
	padding: 15px 25px;
	border-radius: 999px;
	background: var(--age-home-accent);
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	line-height: 1.2;
}

.age-scs-home__button:hover,
.age-scs-home__button:focus { background: #000; color: #fff; }

.age-scs-home__text-link {
	color: var(--age-home-ink);
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
}

.age-scs-home__text-link span { display: inline-block; margin-left: 7px; transition: transform .2s ease; }
.age-scs-home__text-link:hover span, .age-scs-home__text-link:focus span { transform: translateX(4px); }

.age-scs-home__hero-media {
	position: absolute;
	inset: 0;
	z-index: 0;
	min-height: 0;
	overflow: hidden;
	background: #f1f3f2;
}

.age-scs-home__hero-media img,
.age-scs-home__hero-fallback {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 0;
	object-fit: cover;
}

.age-scs-home__hero-media picture {
	display: block;
	width: 100%;
	height: 100%;
}

.age-scs-home__hero-fallback {
	display: none;
	background: linear-gradient(125deg, #e5eae8 0%, #f5f4ef 47%, #d7dfdf 100%);
}

.age-scs-home__hero-media.is-fallback .age-scs-home__hero-fallback { display: block; }

.age-scs-home__signals {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 18px;
	margin: -54px 0 clamp(40px, 5vw, 64px);
	position: relative;
	z-index: 5;
}

.age-scs-home__signal {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	min-height: 128px;
	padding: 25px 24px;
	border: 1px solid rgba(20, 32, 26, .1);
	border-radius: 4px;
	background: #fff;
	box-shadow: 0 16px 42px rgba(30, 40, 35, .1);
}

.age-scs-home__signal + .age-scs-home__signal { border-left: 1px solid rgba(20, 32, 26, .1); }
.age-scs-home__signal-icon { display: inline-grid; flex: 0 0 38px; width: 38px; height: 38px; place-items: center; border-radius: 50%; background: #e9f0eb; color: #5d7566; font-size: 11px; font-weight: 700; letter-spacing: .08em; }
.age-scs-home__signal strong { display: block; margin: 2px 0 9px; font-size: 15px; font-weight: 600; }
.age-scs-home__signal p { max-width: 220px; margin: 0; color: var(--age-home-muted); font-size: 13px; line-height: 1.55; }

.age-scs-home__products { padding: 0 0 clamp(44px, 5vw, 72px); }
.age-scs-home__products-tabs-heading { display: flex; align-items: flex-end; justify-content: space-between; gap: 28px; margin-bottom: 28px; }
.age-scs-home__products-tabs-heading h2 { margin: 0; color: var(--age-home-ink); font-size: clamp(27px, 3vw, 42px); letter-spacing: -.04em; line-height: 1.05; }
.age-scs-home__category-tabs { display: flex; align-items: center; justify-content: flex-end; gap: 24px; max-width: 62%; overflow-x: auto; white-space: nowrap; scrollbar-width: none; }
.age-scs-home__category-tabs::-webkit-scrollbar { display: none; }
.age-scs-home__category-tabs button { flex: 0 0 auto; margin: 0; padding: 5px 0; border: 0; border-bottom: 1px solid transparent; background: transparent; color: #a1a1aa; font-size: 14px; font-weight: 600; line-height: 1.4; cursor: pointer; }
.age-scs-home__category-tabs button:hover, .age-scs-home__category-tabs button.is-active { border-bottom-color: currentColor; color: var(--age-home-ink); }
.age-scs-home__category-tab-panel[hidden] { display: none !important; }
.age-scs-home__category-tab-link { display: inline-flex; margin-top: -10px; color: var(--age-home-ink); }

.age-scs-home__categories { padding: 0 0 clamp(44px, 5vw, 72px); }
.age-scs-home__category-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}
.age-scs-home__category-card {
	display: flex;
	min-width: 0;
	flex-direction: column;
	color: var(--age-home-ink);
	text-decoration: none;
}
.age-scs-home__category-image {
	display: block;
	width: 100%;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	margin-bottom: 16px;
	background: #f2f3f1;
}
.age-scs-home__category-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.age-scs-home__category-card strong { display: block; font-size: 16px; font-weight: 600; line-height: 1.35; }
.age-scs-home__category-link { margin-top: 8px; color: var(--age-home-muted); font-size: 12px; }
.age-scs-home__category-link span { display: inline-block; margin-left: 5px; transition: transform .2s ease; }
.age-scs-home__category-card:hover .age-scs-home__category-link span,
.age-scs-home__category-card:focus .age-scs-home__category-link span { transform: translateX(4px); }

/* Category index: keep this module calm and image-led.  The homepage only
 * presents root categories, so a stack of card/heading rules is unnecessary
 * visual noise. Use one small accent beside the title instead of repeated
 * horizontal borders above every card. */
.age-scs-home__categories .age-scs-home__section-heading {
	margin-bottom: 28px;
	padding-bottom: 0;
	border-bottom: 0;
}
.age-scs-home__categories .age-scs-home__section-heading h2 {
	position: relative;
	padding-left: 14px;
}
.age-scs-home__categories .age-scs-home__section-heading h2::before {
	position: absolute;
	top: .16em;
	bottom: .16em;
	left: 0;
	width: 4px;
	border-radius: 2px;
	background: var(--age-home-accent);
	content: "";
}
/* Route A: an editorial catalogue.  Images remain calm and the category
 * name sits below the image, like a printed collection index. */
.age-scs-home--route-a .age-scs-home__category-grid { gap: 30px 24px; }
.age-scs-home--route-a .age-scs-home__category-card { padding-top: 0; border-top: 0; transition: transform .2s ease; }
.age-scs-home--route-a .age-scs-home__category-card:hover,
.age-scs-home--route-a .age-scs-home__category-card:focus { transform: translateY(-3px); }
.age-scs-home--route-a .age-scs-home__category-image { aspect-ratio: 4 / 5; margin-bottom: 18px; }
.age-scs-home--route-a .age-scs-home__category-card strong { font-size: 18px; }

/* Route B: a visual storefront.  The category title lives directly on the
 * product image so the module reads as a row of campaign tiles. */
.age-scs-home--route-b .age-scs-home__category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 24px; }
.age-scs-home--route-b .age-scs-home__category-card { position: relative; min-height: 0; overflow: hidden; border-radius: 18px; background: #193b52; }
.age-scs-home--route-b .age-scs-home__category-card::after { position: absolute; inset: 0; background: linear-gradient(180deg, rgba(10, 25, 35, .02) 28%, rgba(10, 25, 35, .82) 100%); content: ""; pointer-events: none; }
.age-scs-home--route-b .age-scs-home__category-image { aspect-ratio: 16 / 9; margin: 0; background: #dfeaf0; }
.age-scs-home--route-b .age-scs-home__category-card strong,
.age-scs-home--route-b .age-scs-home__category-link { position: absolute; z-index: 1; left: 28px; color: #fff; }
.age-scs-home--route-b .age-scs-home__category-card strong { right: 28px; bottom: 42px; font-size: clamp(20px, 2vw, 28px); }
.age-scs-home--route-b .age-scs-home__category-link { bottom: 20px; color: rgba(255, 255, 255, .82); }

/* Route C: a restrained product gallery.  Individual cards have a compact
 * framed treatment and show more categories at a glance. */
.age-scs-home--route-c .age-scs-home__category-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.age-scs-home--route-c .age-scs-home__category-card { padding: 12px; border: 1px solid #dfe5d6; background: #f7f8f2; transition: transform .2s ease, box-shadow .2s ease; }
.age-scs-home--route-c .age-scs-home__category-card:hover,
.age-scs-home--route-c .age-scs-home__category-card:focus { box-shadow: 0 14px 30px rgba(71, 83, 54, .12); transform: translateY(-3px); }
.age-scs-home--route-c .age-scs-home__category-image { aspect-ratio: 3 / 4; margin-bottom: 14px; background: #e8eee2; }
.age-scs-home--route-c .age-scs-home__category-card strong { font-size: 15px; }

@media (max-width: 900px) {
	.age-scs-home--route-a .age-scs-home__category-grid,
	.age-scs-home--route-c .age-scs-home__category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.age-scs-home--route-b .age-scs-home__category-grid { grid-template-columns: 1fr; gap: 16px; }
	.age-scs-home--route-b .age-scs-home__category-image { aspect-ratio: 16 / 10; }
}

@media (max-width: 640px) {
	.age-scs-home--route-b .age-scs-home__category-card strong,
	.age-scs-home--route-b .age-scs-home__category-link { left: 20px; }
	.age-scs-home--route-b .age-scs-home__category-card strong { right: 20px; bottom: 38px; font-size: 21px; }
	.age-scs-home--route-b .age-scs-home__category-link { bottom: 17px; }
	.age-scs-home--route-c .age-scs-home__category-card { padding: 8px; }
}

/* Match the archive product tiles on the homepage too. A portrait source image
 * must fit the square card instead of determining the row height. */
.age-scs-home__product-loop ul.products li.product .product-thumbnail {
	position: relative;
	aspect-ratio: 1 / 1;
	overflow: hidden;
}
.age-scs-home__product-loop ul.products li.product .product-thumbnail .woocommerce-loop-product__link {
	display: flex;
	width: 100%;
	height: 100%;
	align-items: center;
	justify-content: center;
	overflow: hidden;
}
.age-scs-home__product-loop ul.products li.product .product-thumbnail img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: 100%;
	max-height: 100%;
	object-fit: contain;
}

.age-scs-home__journey {
	padding: 0 0 clamp(44px, 5vw, 72px);
}

.age-scs-home__journey-heading {
	max-width: 640px;
	margin-bottom: 34px;
}

.age-scs-home__journey-heading .age-scs-home__eyebrow { color: #5d7566; }

.age-scs-home__journey-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	border-top: 1px solid var(--age-home-line);
	border-bottom: 1px solid var(--age-home-line);
}

.age-scs-home__journey-step {
	min-height: 190px;
	padding: 28px 30px 30px 0;
}

.age-scs-home__journey-step + .age-scs-home__journey-step {
	border-left: 1px solid var(--age-home-line);
	padding-left: 30px;
}

.age-scs-home__journey-number {
	display: block;
	margin-bottom: 28px;
	color: #8c9a91;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .15em;
}

.age-scs-home__journey-step h3 { margin: 0 0 11px; font-size: 20px; font-weight: 500; }
.age-scs-home__journey-step p { max-width: 300px; margin: 0; color: var(--age-home-muted); font-size: 14px; line-height: 1.65; }

.age-scs-home__section-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 34px;
	border-bottom: 1px solid var(--age-home-line);
	padding-bottom: 18px;
}

.age-scs-home h2 { margin: 0; font-size: clamp(28px, 3vw, 42px); font-weight: 500; letter-spacing: -.03em; }

.age-scs-home__product-loop ul.products { margin: 0; }
.age-scs-home__product-loop ul.products li.product { margin-bottom: 40px; }

.age-scs-home__empty { color: var(--age-home-muted); }

.age-scs-home__editorial {
	position: relative;
	overflow: hidden;
	margin-bottom: clamp(44px, 5vw, 72px);
	background: #202526;
	color: #fff;
}

.age-scs-home__editorial::after {
	position: absolute;
	top: -40%;
	right: -8%;
	width: 56%;
	height: 180%;
	border-radius: 50%;
	background: radial-gradient(circle, rgba(157, 174, 163, .45) 0, rgba(157, 174, 163, 0) 68%);
	content: "";
	pointer-events: none;
}

.age-scs-home__editorial-inner {
	position: relative;
	z-index: 1;
	max-width: 670px;
	padding: clamp(36px, 5vw, 60px);
}

.age-scs-home__editorial .age-scs-home__eyebrow { color: #b6c8bc; }
.age-scs-home__editorial h2 { max-width: 600px; color: #fff; font-size: clamp(32px, 4vw, 58px); }
.age-scs-home__editorial p:not(.age-scs-home__eyebrow) { max-width: 540px; margin: 22px 0 30px; color: #d0d8d3; font-size: 16px; line-height: 1.75; }
.age-scs-home__editorial-link { color: #fff; font-size: 14px; font-weight: 600; text-decoration: none; }
.age-scs-home__editorial-link span { display: inline-block; margin-left: 8px; transition: transform .2s ease; }
.age-scs-home__editorial-link:hover span, .age-scs-home__editorial-link:focus span { transform: translateX(4px); }

.age-scs-home__benefits {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	border-top: 1px solid var(--age-home-line);
	border-bottom: 1px solid var(--age-home-line);
}

.age-scs-home__benefit {
	display: flex;
	gap: 18px;
	min-height: 142px;
	padding: 30px 30px 30px 0;
}

.age-scs-home__benefit + .age-scs-home__benefit { border-left: 1px solid var(--age-home-line); padding-left: 30px; }
.age-scs-home__benefit-number { color: #999; font-size: 11px; letter-spacing: .12em; }
.age-scs-home__benefit h3 { margin: 0 0 10px; font-size: 17px; font-weight: 600; }
.age-scs-home__benefit p { max-width: 280px; margin: 0; color: var(--age-home-muted); font-size: 14px; line-height: 1.6; }

/* A / Brand Root: a compact fact sheet makes product identity, variations and
 * specification visible before visitors reach the product shelf. */
.age-scs-home__facts { padding: 0 0 clamp(44px, 5vw, 72px); }
.age-scs-home__facts .age-scs-home__section-heading > span,
.age-scs-home__categories--situations .age-scs-home__section-heading > span,
.age-scs-home__compare .age-scs-home__section-heading > span { color: var(--age-home-muted); font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.age-scs-home__facts-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); border-top: 1px solid var(--age-home-line); border-bottom: 1px solid var(--age-home-line); }
.age-scs-home__fact-card { min-width: 0; padding: 28px 28px 32px 0; }
.age-scs-home__fact-card + .age-scs-home__fact-card { padding-left: 28px; border-left: 1px solid var(--age-home-line); }
.age-scs-home__fact-type, .age-scs-home__fact-sku { margin: 0; color: var(--age-home-muted); font-size: 11px; line-height: 1.5; letter-spacing: .08em; text-transform: uppercase; }
.age-scs-home__fact-card h3 { margin: 14px 0 10px; font-size: 21px; font-weight: 500; line-height: 1.25; }
.age-scs-home__fact-card h3 a, .age-scs-home__compare-card h3 a { color: inherit; text-decoration: none; }
.age-scs-home__fact-card ul { min-height: 76px; margin: 20px 0; padding: 0; color: var(--age-home-muted); font-size: 13px; line-height: 1.6; list-style: none; }
.age-scs-home__fact-card li { margin: 0 0 6px; }
.age-scs-home__fact-card li::before { margin-right: 8px; color: var(--age-home-accent); content: "•"; }

/* B / Use Case Root: selection is intentionally organised as a practical
 * decision path, not a specification catalogue. */
.age-scs-home__usecase-guide { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.6fr); gap: clamp(36px, 7vw, 100px); align-items: start; padding: clamp(40px, 5vw, 64px); margin: 0 0 clamp(44px, 5vw, 72px); background: var(--age-home-soft); }
.age-scs-home__usecase-guide h2 { max-width: 360px; margin-top: 10px; }
.age-scs-home__usecase-rules { display: grid; gap: 0; border-top: 1px solid rgba(21, 45, 61, .16); }
.age-scs-home__usecase-rules article { display: grid; grid-template-columns: 42px 1fr; column-gap: 16px; padding: 23px 0; border-bottom: 1px solid rgba(21, 45, 61, .16); }
.age-scs-home__usecase-rules span { grid-row: span 2; color: var(--age-home-accent); font-size: 12px; font-weight: 700; letter-spacing: .1em; }
.age-scs-home__usecase-rules h3 { margin: 0 0 6px; font-size: 18px; font-weight: 600; }
.age-scs-home__usecase-rules p { margin: 0; color: var(--age-home-muted); font-size: 14px; line-height: 1.6; }
.age-scs-home--route-b .age-scs-home__journey { padding-bottom: clamp(44px, 5vw, 72px); }

/* C / Compare Root: present a single, repeatable scorecard before product
 * recommendations.  Products remain links rather than unsupported verdicts. */
.age-scs-home__compare { padding: 0 0 42px; }
.age-scs-home__compare-intro { max-width: 650px; margin: -12px 0 32px; color: var(--age-home-muted); font-size: 16px; line-height: 1.65; }
.age-scs-home__compare-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.age-scs-home__compare-card { min-width: 0; border: 1px solid #dfe5d6; background: #fafbf7; }
.age-scs-home__compare-card > img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; background: #edf0e7; }
.age-scs-home__compare-card > div { padding: 22px; }
.age-scs-home__compare-card > div > p { margin: 0 0 9px; color: #718054; font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.age-scs-home__compare-card h3 { display: -webkit-box; min-height: 52px; margin: 0 0 20px; overflow: hidden; font-size: 20px; font-weight: 500; line-height: 1.3; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.age-scs-home__compare-card dl { margin: 0; }
.age-scs-home__compare-card dl > div { display: grid; grid-template-columns: 82px 1fr; gap: 10px; padding: 10px 0; border-top: 1px solid #e0e5db; }
.age-scs-home__compare-card dt { color: var(--age-home-muted); font-size: 11px; font-weight: 600; text-transform: uppercase; }
.age-scs-home__compare-card dd { min-width: 0; margin: 0; font-size: 12px; line-height: 1.45; }
.age-scs-home__compare-price { display: grid; justify-items: start; gap: 3px; white-space: normal; }
.age-scs-home__compare-price-was { color: var(--age-home-muted); text-decoration: line-through; }
.age-scs-home__compare-price strong { color: #152d3d; font-size: 14px; font-weight: 600; }
.age-scs-home__compare-rules { display: grid; grid-template-columns: repeat(3, 1fr); margin: 0 0 clamp(44px, 5vw, 72px); border: 1px solid #dfe5d6; background: #f0f3e9; }
.age-scs-home__compare-rules article { min-height: 178px; padding: 28px; }
.age-scs-home__compare-rules article + article { border-left: 1px solid #dfe5d6; }
.age-scs-home__compare-rules span { color: #718054; font-size: 11px; font-weight: 700; letter-spacing: .1em; }
.age-scs-home__compare-rules h3 { margin: 17px 0 8px; font-size: 18px; font-weight: 600; }
.age-scs-home__compare-rules p { margin: 0; color: var(--age-home-muted); font-size: 13px; line-height: 1.6; }

/* Route-specific supporting bands: their copy, visual hierarchy and call to
 * action differ even though they share the same imported catalogue. */
.age-scs-home__editorial--brand::after { background: radial-gradient(circle, rgba(213, 172, 138, .36) 0, rgba(213, 172, 138, 0) 68%); }
.age-scs-home__editorial--usecase::after { background: radial-gradient(circle, rgba(98, 159, 191, .42) 0, rgba(98, 159, 191, 0) 68%); }
.age-scs-home__editorial--compare::after { background: radial-gradient(circle, rgba(169, 136, 104, .40) 0, rgba(169, 136, 104, 0) 68%); }

@media (max-width: 900px) {
	.age-scs-home { padding-right: 22px; padding-left: 22px; }
	.age-scs-home__hero { padding-right: 22px; padding-left: 22px; }
	.site-header .container,
	.site-footer .container,
	#site-footer .footer-widgets-inner {
		width: 100%;
		max-width: 100%;
		box-sizing: border-box;
	}
	.age-scs-home *,
	.site-header *,
	#site-footer * {
		min-width: 0;
	}
}

@media (max-width: 640px) {
	.age-scs-home { padding-right: 16px; padding-left: 16px; padding-bottom: 48px; }
	.age-scs-home__hero { align-items: flex-end; min-height: 620px; padding: 22px 16px 16px; }
	.age-scs-home__hero-copy { width: 100%; max-width: none; padding: 26px 22px 28px; }
	.age-scs-home__hero-media { width: 100%; max-width: 100%; }
	.age-scs-home__hero-copy,
	.age-scs-home__intro,
	.age-scs-home h1,
	.age-scs-home h2,
	.age-scs-home h3,
	.age-scs-home p,
	#site-footer .widget,
	#site-footer a { overflow-wrap: anywhere; }
	.age-scs-home h1 { font-size: clamp(38px, 12vw, 56px); }
	.age-scs-home__intro { margin-top: 22px; font-size: 15px; }
	.age-scs-home__actions { align-items: flex-start; flex-direction: column; gap: 18px; margin-top: 28px; }
	.age-scs-home__signals { grid-template-columns: 1fr; gap: 12px; margin-top: -34px; }
	.age-scs-home__signal { min-height: 0; padding: 21px 18px; text-align: left; }
	.age-scs-home__signal + .age-scs-home__signal { border-left: 1px solid rgba(20, 32, 26, .1); }
	.age-scs-home__section-heading { align-items: flex-start; flex-direction: column; margin-bottom: 24px; }
	.age-scs-home__category-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px 12px; }
	.age-scs-home__categories { padding-bottom: 48px; }
	.age-scs-home__category-image { margin-bottom: 11px; }
	.age-scs-home__category-card strong { font-size: 14px; }
	.age-scs-home__category-link { margin-top: 5px; font-size: 11px; }
	.age-scs-home__products ul.products.columns-4 {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 12px;
		row-gap: 32px;
		width: 100%;
		margin: 0;
	}
	.age-scs-home__products-tabs-heading { align-items: flex-start; flex-direction: column; gap: 16px; margin-bottom: 20px; }
	.age-scs-home__products-tabs-heading h2 { font-size: clamp(24px, 7vw, 31px); }
	.age-scs-home__category-tabs { justify-content: flex-start; width: calc(100% + 36px); max-width: none; margin-right: -18px; padding-right: 18px; gap: 20px; }
	.age-scs-home__category-tabs button { font-size: 13px; }
	.age-scs-home__category-tab-link { margin-top: 0; }
	.age-scs-home__products ul.products.columns-4 li.product,
	.age-scs-home__products ul.products.columns-4 li.product:nth-child(2n) {
		float: none;
		width: auto;
		max-width: 100%;
		margin: 0;
	}
	.age-scs-home__products ul.products li.product img,
	.age-scs-home__products ul.products li.product .product-thumbnail,
	.age-scs-home__products ul.products li.product .product-loop-title { max-width: 100%; }
	.age-scs-home__facts-grid,
	.age-scs-home__compare-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.age-scs-home__usecase-guide { grid-template-columns: 1fr; gap: 30px; }
	.age-scs-home__compare-rules { grid-template-columns: 1fr; }
	.age-scs-home__compare-rules article + article { border-top: 1px solid #dfe5d6; border-left: 0; }
	.age-scs-home__journey-grid { display: block; }
	.age-scs-home__journey-step, .age-scs-home__journey-step + .age-scs-home__journey-step { min-height: 0; border-left: 0; padding: 24px 0; }
	.age-scs-home__journey-step + .age-scs-home__journey-step { border-top: 1px solid var(--age-home-line); }
	.age-scs-home__journey-number { margin-bottom: 14px; }
	.age-scs-home__benefits { display: block; }
	.age-scs-home__benefit, .age-scs-home__benefit + .age-scs-home__benefit { min-height: 0; border-left: 0; padding: 24px 0; }
	.age-scs-home__benefit + .age-scs-home__benefit { border-top: 1px solid var(--age-home-line); }
	.age-scs-home__editorial-inner { padding: 34px 24px 38px; }
	.age-scs-home__editorial p:not(.age-scs-home__eyebrow) { font-size: 15px; }
	.age-scs-home__facts .age-scs-home__section-heading > span,
	.age-scs-home__categories--situations .age-scs-home__section-heading > span,
	.age-scs-home__compare .age-scs-home__section-heading > span { font-size: 10px; }
}

[dir="rtl"] .age-scs-home__signal { text-align: right; }
[dir="rtl"] .age-scs-home__categories .age-scs-home__section-heading h2 { padding-right: 14px; padding-left: 0; }
[dir="rtl"] .age-scs-home__categories .age-scs-home__section-heading h2::before { right: 0; left: auto; }
[dir="rtl"] .age-scs-home__signal + .age-scs-home__signal { border-right: 1px solid rgba(20, 32, 26, .1); border-left: 0; }
[dir="rtl"] .age-scs-home__text-link span, [dir="rtl"] .age-scs-home__editorial-link span { margin-right: 8px; margin-left: 0; }
[dir="rtl"] .age-scs-home__text-link:hover span, [dir="rtl"] .age-scs-home__text-link:focus span, [dir="rtl"] .age-scs-home__editorial-link:hover span, [dir="rtl"] .age-scs-home__editorial-link:focus span { transform: translateX(-4px); }

[dir="rtl"] .age-scs-home__journey-step + .age-scs-home__journey-step { border-right: 1px solid var(--age-home-line); border-left: 0; padding-right: 30px; padding-left: 0; }

@media (max-width: 640px) {
	[dir="rtl"] .age-scs-home__journey-step + .age-scs-home__journey-step { border-right: 0; padding-right: 0; }
}

/* Keep the route palette visible below the homepage and on policy/shop pages. */
body.age-scs-brand-route-a #site-footer,
body.age-scs-brand-route-a #site-footer .footer-main,
body.age-scs-brand-route-a #site-footer .footer-widgets,
body.age-scs-brand-route-a #site-footer .footer-extra,
body.age-scs-brand-route-a #site-footer .footer-links { background-color: #000000 !important; }
body.age-scs-brand-route-a #site-footer,
body.age-scs-brand-route-a #site-footer a,
body.age-scs-brand-route-a #site-footer p,
body.age-scs-brand-route-a #site-footer .widget-title,
body.age-scs-brand-route-a #site-footer .copyright { color: #f4efe9 !important; }

body.age-scs-brand-route-b #site-footer,
body.age-scs-brand-route-b #site-footer .footer-main,
body.age-scs-brand-route-b #site-footer .footer-widgets,
body.age-scs-brand-route-b #site-footer .footer-extra,
body.age-scs-brand-route-b #site-footer .footer-links { background-color: #172d40 !important; }
body.age-scs-brand-route-b #site-footer,
body.age-scs-brand-route-b #site-footer a,
body.age-scs-brand-route-b #site-footer p,
body.age-scs-brand-route-b #site-footer .widget-title,
body.age-scs-brand-route-b #site-footer .copyright { color: #eaf3f7 !important; }

body.age-scs-brand-route-c #site-footer,
body.age-scs-brand-route-c #site-footer .footer-main,
body.age-scs-brand-route-c #site-footer .footer-widgets,
body.age-scs-brand-route-c #site-footer .footer-extra,
body.age-scs-brand-route-c #site-footer .footer-links { background-color: #35261f !important; }
body.age-scs-brand-route-c #site-footer,
body.age-scs-brand-route-c #site-footer a,
body.age-scs-brand-route-c #site-footer p,
body.age-scs-brand-route-c #site-footer .widget-title,
body.age-scs-brand-route-c #site-footer .copyright { color: #f6eee8 !important; }
body.age-scs-brand-route-c #site-footer .footer-payments { display: none !important; }

@media (max-width: 640px) {
	[dir="rtl"] .age-scs-home__signal + .age-scs-home__signal { border-right: 1px solid rgba(20, 32, 26, .1); }
}

/* Desktop alignment is explicit so an older Razzi container/padding rule
 * cannot push the hero card away from the header's content line. */
@media (min-width: 901px) and (max-width: 1199px) {
	.age-scs-home { padding-right: 20px; padding-left: 20px; }
	.age-scs-home__hero { padding-right: 20px !important; padding-left: 20px !important; }
	.age-scs-home__hero > .age-scs-home__hero-copy { margin-left: 0 !important; }
}

@media (min-width: 1200px) {
	.age-scs-home__hero {
		padding-right: 0 !important;
		padding-left: 0 !important;
	}
	.age-scs-home__hero > .age-scs-home__hero-copy {
		margin-left: max(20px, calc((100vw - 1200px) / 2));
	}
}

/* Mobile browsers include the scrollbar in `100vw`, which can make a
 * full-bleed hero a few pixels wider than the visible page. Build the bleed
 * from the theme container instead, so it reaches both viewport edges
 * without creating horizontal overflow. */
@media (max-width: 900px) {
	body.home #page,
	body.home #content,
	body.home .site-content,
	body.home .site-content > .container,
	body.home .age-scs-home {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		overflow-x: hidden;
	}

	body.home .site-header,
	body.home .site-header .razzi-header-container,
	body.home .site-header .header-main,
	body.home .site-header .header-main .header-items {
		width: 100%;
		max-width: 100%;
		min-width: 0;
	}

	body.home .site-content {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}

	.age-scs-home__hero {
		width: calc(100% + 44px);
		max-width: calc(100% + 44px);
		margin-right: -22px;
		margin-left: -22px;
	}
}

@media (max-width: 640px) {
	.age-scs-home__hero {
		width: calc(100% + 32px);
		max-width: calc(100% + 32px);
		margin-right: -16px;
		margin-left: -16px;
		min-height: 520px;
		padding: 16px 16px 12px;
	}

	.age-scs-home__hero-copy {
		width: 100%;
		min-width: 0;
		padding: 20px 18px 22px;
	}
	/* Desktop banners are generally composed with the product to the right.
	 * On a narrow viewport `cover` would otherwise crop that focal area out. */
	.age-scs-home__hero-media img { object-position: 72% center; }
	.age-scs-home--route-b .age-scs-home__hero-media img { object-position: 66% center; }
	.age-scs-home--route-c .age-scs-home__hero-media img { object-position: 70% center; }

	.age-scs-home--route-c .age-scs-home__hero { margin-top: 0; }
	.age-scs-home h1 { font-size: clamp(32px, 9.5vw, 44px); line-height: 1.02; }
	.age-scs-home__eyebrow { margin-bottom: 14px; font-size: 10px; }
	.age-scs-home__intro { margin-top: 16px; font-size: 14px; line-height: 1.55; }
	.age-scs-home__actions { gap: 14px; margin-top: 20px; }
	.age-scs-home__signals { margin-top: -24px; }
	.age-scs-home__facts-grid,
	.age-scs-home__compare-grid { grid-template-columns: 1fr; }
	.age-scs-home__fact-card,
	.age-scs-home__fact-card + .age-scs-home__fact-card { padding: 22px 0; border-left: 0; }
	.age-scs-home__fact-card + .age-scs-home__fact-card { border-top: 1px solid var(--age-home-line); }
	.age-scs-home__fact-card ul { min-height: 0; }
	.age-scs-home__usecase-guide { padding: 32px 22px; }
	.age-scs-home__usecase-rules article { grid-template-columns: 34px 1fr; }
	.age-scs-home__compare { padding-bottom: 30px; }
	.age-scs-home__compare-card > div { padding: 18px; }
	.age-scs-home__compare-rules article { min-height: 0; padding: 22px 18px; }

}

/* Route C keeps the banner square-edged; the rounded card treatment is
 * reserved for the content panel inside the image. */
.age-scs-home--route-c .age-scs-home__hero { border-radius: 0 !important; }

/* Footer contract: centred copyright, route-aware payment artwork (A/B),
 * and a compact layout that remains usable on phones. */
.footer-main .footer-container { display: flex; align-items: center; }
.footer-main .footer-left,
.footer-main .footer-center,
.footer-main .footer-right { flex: 1 1 0; min-width: 0; }
.footer-main .footer-center { justify-content: center; text-align: center; }
.footer-main .footer-center > * { margin-left: 12px; margin-right: 12px; }
.footer-main .age-scs-brand-copyright { white-space: nowrap; text-align: center; }
.footer-main .age-scs-brand-copyright .age-scs-brand-disclaimer { display: block; font-size: 11px; line-height: 1.4; font-weight: normal; white-space: normal; }
.age-scs-payment-badges .payments { display: inline-flex; align-items: center; gap: 7px; margin: 0; padding: 0; list-style: none; }
.age-scs-payment-badges .payments li { margin: 0; padding: 0; line-height: 0; }
.age-scs-payment-badges img { display: block; width: 52px; height: 32px; object-fit: contain; }

/* Keep header controls and product-loop action buttons above decorative
 * homepage layers.  Native Razzi links and AJAX handlers remain intact. */
#site-header,
#site-header .header-main,
#site-header .header-items,
#site-header .header-search,
#site-header .header-account,
#site-header .header-cart { position: relative; z-index: 100 !important; pointer-events: auto !important; }
#site-header .header-search a,
#site-header .header-account a,
#site-header .header-cart > a,
#site-header .search-icon,
.mobile-search a,
.mobile-header-icons a { position: relative; z-index: 100 !important; display: inline-flex; align-items: center; justify-content: center; min-width: 30px; min-height: 30px; pointer-events: auto !important; cursor: pointer; }
.header-mobile { position: relative; z-index: 1000 !important; pointer-events: auto !important; }
ul.products li.product .product-thumbnail .product-loop__buttons,
ul.products li.product .product-thumbnail .product-loop__buttons > *,
ul.products li.product .product-thumbnail .product-loop__buttons a,
ul.products li.product .product-thumbnail .product-loop__buttons button { z-index: 30; pointer-events: auto; cursor: pointer; }
ul.products li.product .product-thumbnail { position: relative; }
ul.products li.product .product-thumbnail .product-loop__buttons {
	position: absolute !important;
	top: auto !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	padding: 20px 0 !important;
	margin: 0 !important;
	pointer-events: none !important;
	z-index: 90 !important;
}
ul.products li.product .product-thumbnail .product-loop__buttons > *,
ul.products li.product .product-thumbnail .product-loop__buttons a,
ul.products li.product .product-thumbnail .product-loop__buttons button { position: relative; }
ul.products li.product .product-thumbnail .product-loop__buttons > *,
ul.products li.product .product-thumbnail .product-loop__buttons a,
ul.products li.product .product-thumbnail .product-loop__buttons button {
	pointer-events: auto !important;
	z-index: 91 !important;
}

/* Keep Razzi overlays and off-canvas panels above the homepage artwork. */
#search-modal,
#cart-panel,
#cart-modal,
.offscreen-panel,
.offcanvas,
.razzi-modal,
.modal-backdrop { z-index: 10000 !important; }
#search-modal.open,
#cart-panel.open,
#cart-modal.open,
.offscreen-panel.open,
.offcanvas.open,
.razzi-modal.open { pointer-events: auto !important; }

/* A failed/cached Razzi bundle can leave the full-screen preloader visible on
 * inner WooCommerce pages. It must never sit above the page and swallow all
 * clicks; the storefront does not require a blocking preloader. */
#preloader {
	display: none !important;
	visibility: hidden !important;
	opacity: 0 !important;
	pointer-events: none !important;
}

@media (max-width: 767px) {
	.footer-main .footer-container { display: block; text-align: center; }
	.footer-main .footer-items { justify-content: center; text-align: center; }
	.footer-main .footer-center > *, .footer-main .footer-left > *, .footer-main .footer-right > * { margin-left: 0; margin-right: 0; }
	.footer-main .age-scs-brand-copyright { white-space: normal; }
	.age-scs-payment-badges { margin-top: 8px; }
}

/* The block cart prints the product short description as metadata. Keep the
 * cart focused on product name, options, quantity and price. */
.wc-block-cart .wc-block-components-product-metadata__description,
.woocommerce-cart .wc-block-components-product-metadata__description {
	display: none !important;
}

/* Homepage product cards intentionally omit the action row. */
ul.products .product-loop__buttons,
.woocommerce ul.products .product-loop__buttons{
	display: none !important;
	visibility: hidden !important;
	pointer-events: none !important;
	height: 0 !important;
	min-height: 0 !important;
	max-height: 0 !important;
	overflow: hidden !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Homepage shelf heading remains a compact row on phones: the localized
 * section title is always visible and the arrow is a clearly labelled link. */
.age-scs-home__products .age-scs-home__section-heading { min-height: 46px; }
.age-scs-home__products .age-scs-home__section-heading h2 { max-width: 70%; color: var(--age-home-ink) !important; }
.age-scs-home__products .age-scs-home__section-heading .age-scs-home__text-link { display: inline-flex; align-items: center; flex: 0 0 auto; color: var(--age-home-ink) !important; white-space: nowrap; }
.age-scs-home__product-loop ul.products li.product .woocommerce-loop-product__title,
.age-scs-home__product-loop ul.products li.product .product-loop__title,
.age-scs-home__product-loop ul.products li.product .product-loop-title { display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 2 !important; line-clamp: 2 !important; font-size: 14px !important; line-height: 1.4 !important; height: 2.8em !important; max-height: 2.8em !important; overflow: hidden !important; }
.age-scs-home__product-loop ul.products li.product .meta-cat { font-size: 14px !important; }
.age-scs-home__product-loop ul.products li.product .price { font-size: 14px !important; }
.age-scs-home__product-loop ul.products li.product .price del { font-size: 12px !important; }
@media (max-width: 767px) {
	.age-scs-home__product-loop ul.products li.product .woocommerce-loop-product__title,
	.age-scs-home__product-loop ul.products li.product .product-loop__title,
	.age-scs-home__product-loop ul.products li.product .product-loop-title { font-size: 16px !important; }
	.age-scs-home__product-loop ul.products li.product .price { font-size: 16px !important; }
	.age-scs-home__product-loop ul.products li.product .price del { font-size: 14px !important; }
}
@media (max-width: 640px) {
	.age-scs-home__products .age-scs-home__section-heading { align-items: center; flex-direction: row; gap: 12px; margin-bottom: 22px; }
	.age-scs-home__products .age-scs-home__section-heading h2 { max-width: 62%; font-size: clamp(24px, 7vw, 31px); line-height: 1.15; }
	.age-scs-home__products .age-scs-home__section-heading .age-scs-home__text-link { font-size: 11px; }
	.age-scs-home__facts { padding-bottom: 48px; }
}

/* B 首页：用网格接管 WooCommerce 的浮动商品列，避免每个主题版本
 * 产生不同的左右空隙；“查看全部”作为明确的居中 CTA。 */
.age-scs-home__products--category-tabs .age-scs-home__product-loop ul.products.columns-4 {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 32px;
	width: 100%;
	margin: 0 !important;
	padding: 0 !important;
}
.age-scs-home__products--category-tabs .age-scs-home__product-loop ul.products.columns-4 li.product,
.age-scs-home__products--category-tabs .age-scs-home__product-loop ul.products.columns-4 li.product:nth-child(2n) {
	float: none;
	width: auto;
	max-width: 100%;
	margin: 0;
	padding: 0 !important;
}
.age-scs-home__products--category-tabs .age-scs-home__category-tab-link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	width: fit-content;
	min-width: 202px;
	min-height: 48px;
	margin: 30px auto 0;
	padding: 12px 22px;
	border: 1px solid var(--age-home-ink);
	color: var(--age-home-ink);
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .035em;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.age-scs-home__products--category-tabs .age-scs-home__category-tab-link:hover,
.age-scs-home__products--category-tabs .age-scs-home__category-tab-link:focus-visible {
	background: var(--age-home-ink);
	color: #fff;
	transform: translateY(-2px);
}
@media (max-width: 767px) {
	.age-scs-home__products--category-tabs .age-scs-home__product-loop ul.products.columns-4 {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: 12px;
		row-gap: 32px;
	}
	.age-scs-home__products--category-tabs .age-scs-home__category-tab-link {
		width: min(100%, 280px);
		margin-top: 26px;
	}
}

/* A 首页：品牌杂志式首屏。文字、生活方式主图和一张真实商品图各自
 * 占一列；所有图片仍来自已导入站点数据，而不是固定的演示图片。 */
@media (min-width: 901px) {
	.age-scs-home--route-a .age-scs-home__hero--editorial {
		display: grid;
		grid-template-columns: minmax(360px, 1.08fr) minmax(320px, 1.05fr) minmax(170px, .57fr);
		align-items: center;
		gap: clamp(32px, 5vw, 88px);
		width: 100%;
		min-height: 640px;
		margin: 0;
		padding: clamp(42px, 6vw, 92px) 0;
		overflow: visible;
		background: #fff;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial::after { display: none; }
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-copy {
		grid-column: 1;
		width: 100%;
		max-width: 400px;
		margin-left: 0 !important;
		padding: 0;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		backdrop-filter: none;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial h1 {
		max-width: 350px;
		font-family: Georgia, "Times New Roman", serif;
		font-size: clamp(42px, 4.1vw, 64px);
		font-weight: 400;
		letter-spacing: -.055em;
		line-height: .98;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__intro {
		max-width: 340px;
		margin-top: 24px;
		color: #3f3f3f;
		font-size: 15px;
		line-height: 1.7;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__actions { margin-top: 30px; }
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__button {
		padding: 15px 21px;
		border-radius: 0;
		background: #191919;
		font-size: 12px;
		letter-spacing: .02em;
		text-transform: uppercase;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-media {
		position: relative;
		inset: auto;
		grid-column: 2;
		width: 100%;
		height: auto;
		aspect-ratio: 4 / 5;
		overflow: hidden;
		background: #eee8df;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-media img { object-position: 72% center; }
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-media.is-product-image img { object-position: center; }
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-secondary {
		display: block;
		grid-column: 3;
		justify-self: end;
		width: 100%;
		max-width: 250px;
		margin-top: clamp(70px, 12vw, 170px);
		aspect-ratio: 3 / 4;
		overflow: hidden;
		background: #eee8df;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-secondary img {
		display: block;
		width: 100%;
		height: 100%;
		object-fit: cover;
		transition: transform .45s ease;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-secondary:hover img,
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-secondary:focus-visible img { transform: scale(1.035); }
	.age-scs-home--route-a .age-scs-home__signals--editorial {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		gap: 0;
		margin: 32px 0 clamp(52px, 6vw, 84px);
		border-top: 1px solid #dedbd5;
		border-bottom: 1px solid #dedbd5;
	}
	.age-scs-home--route-a .age-scs-home__signals--editorial .age-scs-home__signal {
		min-height: 112px;
		padding: 27px 22px;
		border: 0;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
	}
	.age-scs-home--route-a .age-scs-home__signals--editorial .age-scs-home__signal + .age-scs-home__signal { border-left: 1px solid #dedbd5; }
	.age-scs-home--route-a .age-scs-home__signals--editorial .age-scs-home__signal-icon {
		border: 1px solid #292929;
		border-radius: 0;
		background: transparent;
		color: #292929;
	}
	.age-scs-home--route-a .age-scs-home__hero--editorial:not(.has-side-image) {
		grid-template-columns: minmax(360px, .85fr) minmax(400px, 1.15fr);
		max-width: 1080px;
		margin-right: auto;
		margin-left: auto;
	}
}
@media (max-width: 900px) {
	.age-scs-home--route-a .age-scs-home__hero--editorial .age-scs-home__hero-secondary { display: none; }
	.age-scs-home--route-a .age-scs-home__signals--editorial { margin-top: 0; }
}

/* A 首页首屏使用站点 banner.webp；视觉拼图不再占用首屏，而是作为
 * 商品后的 Lookbook 内容，给品牌页留出更清晰的购买路径。 */
.age-scs-home--route-a .age-scs-home__hero--brand-banner {
	min-height: clamp(500px, 47vw, 650px);
	background: #ddd4ca;
}
.age-scs-home--route-a .age-scs-home__hero--brand-banner::after {
	background: linear-gradient(90deg, rgba(255, 253, 248, .7) 0%, rgba(255, 253, 248, .25) 48%, rgba(44, 34, 25, .06) 100%);
}
.age-scs-home--route-a .age-scs-home__hero--brand-banner .age-scs-home__hero-copy {
	max-width: 500px;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	backdrop-filter: none;
}
.age-scs-home--route-a .age-scs-home__hero--brand-banner h1 {
	max-width: 520px;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(47px, 5.4vw, 82px);
	font-weight: 400;
	letter-spacing: -.055em;
	line-height: .98;
}
.age-scs-home--route-a .age-scs-home__hero--brand-banner .age-scs-home__intro {
	max-width: 420px;
	margin-top: 24px;
	color: #35312e;
	font-size: 16px;
}
.age-scs-home--route-a .age-scs-home__hero--brand-banner .age-scs-home__button {
	padding: 15px 22px;
	border-radius: 0;
	background: #191919;
	font-size: 12px;
	letter-spacing: .02em;
	text-transform: uppercase;
}
.age-scs-home--route-a .age-scs-home__hero--brand-banner .age-scs-home__hero-media img { object-position: center; }

.age-scs-home--route-a .age-scs-home__editorial-collage {
	display: grid;
	grid-template-columns: minmax(230px, .82fr) minmax(330px, 1.08fr) minmax(170px, .58fr);
	align-items: center;
	gap: clamp(28px, 5vw, 82px);
	padding: clamp(52px, 7vw, 100px) 0 clamp(60px, 8vw, 116px);
}
.age-scs-home--route-a .age-scs-home__editorial-collage-copy { max-width: 360px; }
.age-scs-home--route-a .age-scs-home__editorial-collage-copy h2 {
	margin: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(36px, 4.1vw, 62px);
	font-weight: 400;
	letter-spacing: -.045em;
	line-height: 1;
}
.age-scs-home--route-a .age-scs-home__editorial-collage-copy > p:not(.age-scs-home__eyebrow) {
	margin: 24px 0 30px;
	color: var(--age-home-muted);
	font-size: 15px;
	line-height: 1.7;
}
.age-scs-home--route-a .age-scs-home__editorial-collage-primary,
.age-scs-home--route-a .age-scs-home__editorial-collage-secondary {
	display: block;
	overflow: hidden;
	background: #eee8df;
}
.age-scs-home--route-a .age-scs-home__editorial-collage-primary { aspect-ratio: 4 / 5; }
.age-scs-home--route-a .age-scs-home__editorial-collage-secondary {
	justify-self: end;
	width: 100%;
	max-width: 250px;
	margin-top: clamp(54px, 10vw, 140px);
	aspect-ratio: 3 / 4;
}
.age-scs-home--route-a .age-scs-home__editorial-collage img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform .45s ease;
}
.age-scs-home--route-a .age-scs-home__editorial-collage a:hover img,
.age-scs-home--route-a .age-scs-home__editorial-collage a:focus-visible img { transform: scale(1.035); }
.age-scs-home--route-a .age-scs-home__editorial-collage:not(.has-side-image) {
	grid-template-columns: minmax(300px, .8fr) minmax(360px, 1.05fr);
	max-width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
@media (max-width: 900px) {
	.age-scs-home--route-a .age-scs-home__hero--brand-banner { min-height: 570px; }
	.age-scs-home--route-a .age-scs-home__hero--brand-banner .age-scs-home__hero-copy { padding: 26px 22px 28px; background: rgba(255, 253, 248, .88); }
	.age-scs-home--route-a .age-scs-home__hero--brand-banner h1 { font-size: clamp(40px, 10vw, 64px); }
	.age-scs-home--route-a .age-scs-home__editorial-collage { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; padding-top: 50px; }
	.age-scs-home--route-a .age-scs-home__editorial-collage-copy { grid-column: 1 / -1; max-width: 560px; margin-bottom: 12px; }
	.age-scs-home--route-a .age-scs-home__editorial-collage-secondary { max-width: none; margin-top: 34px; }
}
@media (max-width: 767px) {
	.age-scs-home--route-a .age-scs-home__hero--brand-banner .age-scs-home__intro { display: none; }
	/* Keep the benefits visually separate from the banner, then make them a
	 * swipeable shelf rather than a long vertical stack on narrow screens. */
	.age-scs-home--route-a .age-scs-home__signals--editorial {
		display: flex;
		gap: 12px;
		margin: 24px -16px 48px;
		padding: 0 16px 4px;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		border: 0;
		scroll-padding-left: 16px;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}
	.age-scs-home--route-a .age-scs-home__signals--editorial .age-scs-home__signal {
		flex: 0 0 min(82vw, 310px);
		min-height: 126px;
		padding: 22px 18px;
		border: 1px solid #dedbd5;
		border-radius: 2px;
		background: #fff;
		box-shadow: 0 8px 22px rgba(50, 43, 35, .07);
		scroll-snap-align: start;
	}
	.age-scs-home--route-a .age-scs-home__signals--editorial .age-scs-home__signal + .age-scs-home__signal { border-left: 1px solid #dedbd5; }
	.age-scs-home--route-a .age-scs-home__signals--editorial::-webkit-scrollbar { display: none; }
}

/* Shared A/B/C vertical rhythm.  Homepage sections should connect like the
 * reference storefront: enough breathing room for a new block, without
 * accumulating two large blank bands between every module. */
@media (min-width: 768px) {
	.age-scs-home__categories,
	.age-scs-home__products,
	.age-scs-home__journey,
	.age-scs-home__facts,
	.age-scs-home--route-b .age-scs-home__journey { padding-bottom: clamp(32px, 3vw, 48px); }
	.age-scs-home__section-heading { margin-bottom: 26px; padding-bottom: 14px; }
	.age-scs-home__product-loop ul.products li.product { margin-bottom: 28px; }
	.age-scs-home__usecase-guide { margin-bottom: clamp(32px, 3vw, 48px); padding: clamp(32px, 3.5vw, 48px); }
	.age-scs-home__compare-rules,
	.age-scs-home__editorial { margin-bottom: clamp(32px, 3vw, 48px); }
	.age-scs-home--route-a .age-scs-home__signals--editorial { margin-bottom: clamp(38px, 3.5vw, 54px); }
	.age-scs-home--route-a .age-scs-home__editorial-collage { padding: clamp(36px, 4vw, 56px) 0 clamp(44px, 4.5vw, 64px); }
}
@media (max-width: 767px) {
	.age-scs-home__categories,
	.age-scs-home__products,
	.age-scs-home__journey,
	.age-scs-home__facts,
	.age-scs-home--route-b .age-scs-home__journey { padding-bottom: 34px; }
	.age-scs-home__section-heading { margin-bottom: 22px; padding-bottom: 12px; }
	.age-scs-home__product-loop ul.products li.product { margin-bottom: 28px; }
	.age-scs-home__usecase-guide,
	.age-scs-home__compare-rules,
	.age-scs-home__editorial { margin-bottom: 34px; }
	.age-scs-home--route-a .age-scs-home__signals--editorial { margin-bottom: 36px; }
	.age-scs-home--route-a .age-scs-home__editorial-collage { padding-top: 32px; padding-bottom: 46px; }
}

/* A: a concise collection rail bridges the product shelf and Lookbook. It
 * uses only live WooCommerce category data, so every imported site keeps its
 * own destinations rather than receiving fixed editorial links. */
.age-scs-home--route-a .age-scs-home__collection-rail { padding: 0 0 clamp(34px, 3.5vw, 52px); }
.age-scs-home--route-a .age-scs-home__collection-rail-heading {
	display: flex;
	align-items: baseline;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 18px;
}
.age-scs-home--route-a .age-scs-home__collection-rail-heading h2 {
	margin: 0;
	font-family: Georgia, "Times New Roman", serif;
	font-size: clamp(26px, 2.5vw, 37px);
	font-weight: 400;
	letter-spacing: -.04em;
}
.age-scs-home--route-a .age-scs-home__collection-rail-links {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	margin: 0;
	padding: 0;
	list-style: none;
	border-top: 1px solid #dedbd5;
	border-bottom: 1px solid #dedbd5;
}
.age-scs-home--route-a .age-scs-home__collection-rail-links > li { min-width: 0; }
.age-scs-home--route-a .age-scs-home__collection-rail-links > li + li { border-left: 1px solid #dedbd5; }
.age-scs-home--route-a .age-scs-home__collection-rail-links a {
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 14px;
	min-height: 88px;
	padding: 16px 20px;
	color: var(--age-home-ink);
	text-decoration: none;
	transition: background-color .2s ease, color .2s ease;
}
.age-scs-home--route-a .age-scs-home__collection-rail-links span { color: #958b80; font-size: 10px; font-weight: 700; letter-spacing: .12em; }
.age-scs-home--route-a .age-scs-home__collection-rail-links strong { min-width: 0; font-size: 15px; font-weight: 600; line-height: 1.3; }
.age-scs-home--route-a .age-scs-home__collection-rail-links em { font-size: 18px; font-style: normal; transition: transform .2s ease; }
.age-scs-home--route-a .age-scs-home__collection-rail-links a:hover,
.age-scs-home--route-a .age-scs-home__collection-rail-links a:focus-visible { background: #f4eee7; }
.age-scs-home--route-a .age-scs-home__collection-rail-links a:hover em,
.age-scs-home--route-a .age-scs-home__collection-rail-links a:focus-visible em { transform: translateX(4px); }
@media (max-width: 767px) {
	.age-scs-home--route-a .age-scs-home__collection-rail { padding-bottom: 28px; }
	.age-scs-home--route-a .age-scs-home__collection-rail-heading { align-items: center; margin-bottom: 14px; }
	.age-scs-home--route-a .age-scs-home__collection-rail-heading h2 { font-size: 25px; }
	.age-scs-home--route-a .age-scs-home__collection-rail-heading .age-scs-home__text-link { font-size: 11px; white-space: nowrap; }
	.age-scs-home--route-a .age-scs-home__collection-rail-links {
		display: flex;
		gap: 12px;
		margin: 0 -16px;
		padding: 0 16px 4px;
		overflow-x: auto;
		border: 0;
		scroll-padding-left: 16px;
		scroll-snap-type: x mandatory;
		-webkit-overflow-scrolling: touch;
	}
	.age-scs-home--route-a .age-scs-home__collection-rail-links > li {
		flex: 0 0 min(78vw, 290px);
		min-width: 0;
		border: 1px solid #dedbd5;
		scroll-snap-align: start;
	}
	.age-scs-home--route-a .age-scs-home__collection-rail-links a { min-height: 78px; padding: 15px 16px; }
	.age-scs-home--route-a .age-scs-home__collection-rail-links::-webkit-scrollbar { display: none; }
}

/* Keep the product shelf on the same four-column canvas for all three routes.
 * WooCommerce/Razzi adds percentage widths, floats and side padding to
 * `.products` and `li.product`; those rules make the first and last cards
 * appear with different outer gutters. The homepage owns this grid, so reset
 * those values here and use the same columns/gaps in A, B and C. */
.age-scs-home__product-loop ul.products {
	display: grid !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	column-gap: clamp(18px, 2.5vw, 30px);
	row-gap: 28px;
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}
.age-scs-home__product-loop ul.products li.product,
.age-scs-home__product-loop ul.products li.product:nth-child(2n),
.age-scs-home__product-loop ul.products li.product:nth-child(4n) {
	display: block;
	float: none !important;
	width: auto !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}
.age-scs-home__product-loop ul.products li.product .product-thumbnail,
.age-scs-home__product-loop ul.products li.product .product-thumbnail img {
	width: 100%;
}
@media (max-width: 900px) and (min-width: 768px) {
	.age-scs-home__product-loop ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}
@media (max-width: 767px) {
	.age-scs-home__product-loop ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
		column-gap: 12px;
		row-gap: 28px;
	}
}
