/*
Theme Name: LylyMama Editorial
Theme URI: https://lylymama.com
Description: GeneratePress child theme for a high-trust parenting editorial site built around content clusters, AdSense and affiliate revenue.
Author: LylyMama
Template: generatepress
Version: 0.2.0
Text Domain: lylymama
*/

/* ─── Google Fonts ─── */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,700;0,800;1,700&family=Inter:wght@400;500;600;700&display=swap');

/* ─── Tokens ─── */
:root {
	--lm-ink:          #1a2130;
	--lm-ink-soft:     #5c6573;
	--lm-ink-faint:    #9ba3ae;
	--lm-paper:        #fdfaf5;
	--lm-shell:        #f6f1e8;
	--lm-border:       #e8e0d4;
	--lm-accent:       #b85c38;
	--lm-accent-dark:  #953f22;
	--lm-accent-pale:  #fdf0ea;

	--lm-serif: "Playfair Display", "Iowan Old Style", Georgia, serif;
	--lm-ui:    "Inter", "Segoe UI", sans-serif;

	--lm-radius:    20px;
	--lm-radius-sm: 10px;
	--lm-radius-xs: 6px;

	--lm-shadow-card: 0 2px 8px rgba(26,33,48,.06), 0 8px 24px rgba(26,33,48,.05);
	--lm-shadow-lift: 0 4px 16px rgba(26,33,48,.09), 0 16px 48px rgba(26,33,48,.07);

	--lm-focus-ring:   #2d6a4f;
	--lm-focus-shadow: rgba(45,106,79,.25);

	--lm-max-w: 1240px;
	--lm-gutter: clamp(1rem, 4vw, 2rem);
}

/* ─── Focus ─── */
body.lylymama-editorial a:focus-visible,
body.lylymama-editorial button:focus-visible,
body.lylymama-editorial .button:focus-visible,
body.lylymama-editorial input:focus-visible,
body.lylymama-editorial select:focus-visible,
body.lylymama-editorial summary:focus-visible,
body.lylymama-editorial .menu-toggle:focus-visible,
body.lylymama-editorial .main-navigation a:focus-visible,
body.lylymama-editorial .lylymama-cluster-pill:focus-visible,
body.lylymama-editorial .lylymama-cat-hub__pill:focus-visible,
body.lylymama-editorial .lylymama-toc a:focus-visible {
	border-radius: var(--lm-radius-xs);
	outline: 2px solid var(--lm-focus-ring);
	outline-offset: 3px;
	box-shadow: 0 0 0 5px var(--lm-focus-shadow);
	text-decoration: none;
}

/* ─── Base ─── */
body.lylymama-editorial {
	background: var(--lm-paper);
	color: var(--lm-ink);
	font-family: var(--lm-ui);
	font-size: 1rem;
	line-height: 1.7;
}

body.lylymama-editorial h1,
body.lylymama-editorial h2,
body.lylymama-editorial h3,
body.lylymama-editorial h4,
body.lylymama-editorial .entry-title,
body.lylymama-editorial .page-title,
body.lylymama-editorial .main-title {
	color: var(--lm-ink);
	font-family: var(--lm-serif);
	font-weight: 800;
	letter-spacing: -0.025em;
	line-height: 1.05;
}

body.lylymama-editorial a {
	color: var(--lm-accent-dark);
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

/* ─── Site container ─── */
body.lylymama-editorial .site.grid-container {
	max-width: var(--lm-max-w);
}

/* Remove sidebar on all page types */
body.lylymama-editorial .site-main,
body.lylymama-editorial .content-area {
	width: 100% !important;
	max-width: 100% !important;
}

body.lylymama-editorial .widget-area,
body.lylymama-editorial .lylymama-sidebar-card {
	display: none !important;
}

/* ─── Header ─── */
body.lylymama-editorial .site-header {
	background: var(--lm-paper);
	border-bottom: 1px solid var(--lm-border);
}

body.lylymama-editorial .inside-header {
	align-items: center;
	gap: 1.2rem;
	padding-block: 1rem;
}

body.lylymama-editorial .site-branding .main-title a {
	color: var(--lm-ink);
	font-family: var(--lm-serif);
	font-size: clamp(1.5rem, 2.2vw, 1.9rem);
	font-weight: 800;
	letter-spacing: -0.03em;
}

body.lylymama-editorial .site-branding .site-description {
	color: var(--lm-ink-soft);
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.07em;
	text-transform: uppercase;
}

body.lylymama-editorial .main-navigation {
	background: transparent;
	border: none;
	box-shadow: none;
	border-radius: 0;
	padding-inline: 0;
}

body.lylymama-editorial .main-navigation .main-nav > ul > li > a,
body.lylymama-editorial .menu-toggle {
	color: var(--lm-ink);
	font-size: 0.9rem;
	font-weight: 600;
}

body.lylymama-editorial .main-navigation .main-nav > ul > li > a:hover {
	color: var(--lm-accent);
}

/* ─── Breadcrumbs ─── */
.lylymama-breadcrumbs-wrap {
	margin-block: 0.8rem 1rem;
}

.lylymama-breadcrumbs {
	padding: 0;
}

.lylymama-breadcrumbs__list {
	align-items: center;
	color: var(--lm-ink-faint);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.82rem;
	font-weight: 600;
	gap: 0 0.5rem;
	list-style: none;
	margin: 0;
	padding: 0;
}

.lylymama-breadcrumbs__item {
	align-items: center;
	display: inline-flex;
	gap: 0.5rem;
}

.lylymama-breadcrumbs__item:not(:last-child)::after {
	color: var(--lm-border);
	content: "/";
}

.lylymama-breadcrumbs__item a {
	color: var(--lm-ink-soft);
	text-decoration: none;
}

.lylymama-breadcrumbs__item a:hover {
	color: var(--lm-accent);
}

.lylymama-breadcrumbs__item span[aria-current="page"] {
	color: var(--lm-ink);
}

/* ─── Article inside (no more bubble cards on article pages) ─── */
body.lylymama-editorial .separate-containers .inside-article,
body.lylymama-editorial .one-container .inside-article,
body.lylymama-editorial .archive .inside-article {
	background: transparent;
	border: none;
	box-shadow: none;
	border-radius: 0;
}

body.lylymama-editorial .inside-article {
	padding: 0;
}

/* ─── Home shell ─── */
.lylymama-home-shell {
	display: grid;
	gap: 4rem;
	padding-block: 0 3rem;
}

/* ─── Hero ─── */
.lylymama-home-hero {
	display: grid;
	gap: 2.5rem;
	padding-block: clamp(3rem, 6vw, 5rem) clamp(2.5rem, 5vw, 4rem);
	border-bottom: 1px solid var(--lm-border);
}

.lylymama-home-hero__eyebrow {
	align-items: center;
	display: flex;
	gap: 0.6rem;
}

.lylymama-home-hero__eyebrow-line {
	background: var(--lm-accent);
	border-radius: 2px;
	display: block;
	height: 2px;
	width: 2rem;
}

.lylymama-home-hero__eyebrow-label {
	color: var(--lm-accent);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.lylymama-home-hero h1 {
	font-size: clamp(2.8rem, 6vw, 5.6rem);
	line-height: 1.0;
	margin: 0;
	max-width: 16ch;
}

.lylymama-home-hero h1 em {
	color: var(--lm-accent);
	font-style: italic;
}

.lylymama-home-hero__lead {
	color: var(--lm-ink-soft);
	font-size: clamp(1rem, 1.5vw, 1.15rem);
	line-height: 1.75;
	margin: 0;
	max-width: 58ch;
}

/* ─── Category hub (the signature element) ─── */
.lylymama-cat-hub {
	display: grid;
	gap: 0.85rem;
}

.lylymama-cat-hub__label {
	color: var(--lm-ink-faint);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.lylymama-cat-hub__row {
	display: flex;
	flex-wrap: wrap;
	gap: 0.55rem;
}

.lylymama-cat-hub__pill {
	align-items: center;
	border-radius: 999px;
	border: 1.5px solid transparent;
	display: inline-flex;
	font-size: 0.875rem;
	font-weight: 600;
	gap: 0.4rem;
	padding: 0.5rem 1rem;
	text-decoration: none;
	transition: transform 0.15s ease, box-shadow 0.15s ease;
	white-space: nowrap;
}

.lylymama-cat-hub__pill:hover {
	transform: translateY(-1px);
	box-shadow: 0 4px 12px rgba(26,33,48,.12);
}

/* Pill tones */
.lylymama-cat-hub__pill[data-tone="rose"]    { background: #fdf0ee; border-color: #e8c4bb; color: #8b3e2f; }
.lylymama-cat-hub__pill[data-tone="sky"]     { background: #eef5fb; border-color: #bcd4e9; color: #2e5a7a; }
.lylymama-cat-hub__pill[data-tone="sage"]    { background: #eef4eb; border-color: #bdd4b6; color: #3d5e38; }
.lylymama-cat-hub__pill[data-tone="gold"]    { background: #fdf5e4; border-color: #e5cf9a; color: #7a5a1e; }
.lylymama-cat-hub__pill[data-tone="ink"]     { background: #f0f2f6; border-color: #c0c9d8; color: #2d3a4d; }
.lylymama-cat-hub__pill[data-tone="berry"]   { background: #faeef3; border-color: #ddb8cb; color: #6b3550; }
.lylymama-cat-hub__pill[data-tone="teal"]    { background: #eaf5f2; border-color: #aad4ca; color: #285f53; }
.lylymama-cat-hub__pill[data-tone="sand"]    { background: #faf4ec; border-color: #ddc9ae; color: #6b5237; }
.lylymama-cat-hub__pill[data-tone="clay"]    { background: #faf0eb; border-color: #dfc0ae; color: #6a3e2d; }
.lylymama-cat-hub__pill[data-tone="plum"]    { background: #f6eff8; border-color: #d0b5d8; color: #5a3468; }
.lylymama-cat-hub__pill[data-tone="citrus"]  { background: #fdf8e4; border-color: #e5d090; color: #735018; }

/* cluster pills (articles) — same system */
.lylymama-cluster-pill {
	border-radius: 999px;
	display: inline-flex;
	font-family: var(--lm-ui);
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.06em;
	padding: 0.3rem 0.75rem;
	text-decoration: none;
	text-transform: uppercase;
}

.lylymama-cluster-pill[data-tone="rose"]   { background: #fdf0ee; color: #8b3e2f; }
.lylymama-cluster-pill[data-tone="sky"]    { background: #eef5fb; color: #2e5a7a; }
.lylymama-cluster-pill[data-tone="sage"]   { background: #eef4eb; color: #3d5e38; }
.lylymama-cluster-pill[data-tone="gold"]   { background: #fdf5e4; color: #7a5a1e; }
.lylymama-cluster-pill[data-tone="ink"]    { background: #f0f2f6; color: #2d3a4d; }
.lylymama-cluster-pill[data-tone="berry"]  { background: #faeef3; color: #6b3550; }
.lylymama-cluster-pill[data-tone="teal"]   { background: #eaf5f2; color: #285f53; }
.lylymama-cluster-pill[data-tone="sand"]   { background: #faf4ec; color: #6b5237; }
.lylymama-cluster-pill[data-tone="clay"]   { background: #faf0eb; color: #6a3e2d; }
.lylymama-cluster-pill[data-tone="plum"]   { background: #f6eff8; color: #5a3468; }
.lylymama-cluster-pill[data-tone="citrus"] { background: #fdf8e4; color: #735018; }

/* ─── Section header ─── */
.lylymama-section-header {
	align-items: baseline;
	border-bottom: 2px solid var(--lm-ink);
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	margin-bottom: 2rem;
	padding-bottom: 0.85rem;
}

.lylymama-section-header h2 {
	font-size: clamp(1.6rem, 2.8vw, 2.4rem);
	margin: 0;
}

.lylymama-section-header__link {
	color: var(--lm-accent-dark);
	font-size: 0.875rem;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}

.lylymama-section-header__link:hover {
	text-decoration: underline;
}

.lylymama-section-label {
	border-radius: 999px;
	display: inline-flex;
	font-family: var(--lm-ui);
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	padding: 0.3rem 0.7rem;
	text-transform: uppercase;
	background: rgba(26,33,48,.07);
	color: var(--lm-ink);
	margin-bottom: 0.6rem;
}

/* ─── Cluster spotlight grid (4 cards) ─── */
.lylymama-cluster-grid {
	display: grid;
	gap: 1.25rem;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.lylymama-cluster-card {
	background: var(--lm-paper);
	border: 1px solid var(--lm-border);
	border-radius: var(--lm-radius);
	overflow: hidden;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.lylymama-cluster-card:hover {
	box-shadow: var(--lm-shadow-lift);
	transform: translateY(-2px);
}

.lylymama-cluster-card__inner {
	display: grid;
	gap: 0.75rem;
	padding: 1.35rem;
}

.lylymama-cluster-card h3 {
	font-size: 1.2rem;
	margin: 0;
	line-height: 1.15;
}

.lylymama-cluster-card h3 a {
	color: var(--lm-ink);
	text-decoration: none;
}

.lylymama-cluster-card h3 a:hover {
	color: var(--lm-accent);
}

.lylymama-cluster-card p {
	color: var(--lm-ink-soft);
	font-size: 0.9rem;
	line-height: 1.65;
	margin: 0;
}

.lylymama-cluster-card__footer {
	align-items: center;
	border-top: 1px solid var(--lm-border);
	color: var(--lm-ink-soft);
	display: flex;
	font-size: 0.82rem;
	font-weight: 600;
	justify-content: space-between;
	margin-top: 0.5rem;
	padding-top: 0.85rem;
}

.lylymama-cluster-card__footer span:last-child {
	color: var(--lm-accent-dark);
}

/* Tone tints on cluster cards */
.lylymama-cluster-card[data-tone="rose"]   { border-top: 3px solid #e09080; }
.lylymama-cluster-card[data-tone="sky"]    { border-top: 3px solid #7aaed0; }
.lylymama-cluster-card[data-tone="sage"]   { border-top: 3px solid #80a87a; }
.lylymama-cluster-card[data-tone="gold"]   { border-top: 3px solid #d4a838; }
.lylymama-cluster-card[data-tone="ink"]    { border-top: 3px solid #6a7d9a; }
.lylymama-cluster-card[data-tone="berry"]  { border-top: 3px solid #a06080; }
.lylymama-cluster-card[data-tone="teal"]   { border-top: 3px solid #4a9e8a; }
.lylymama-cluster-card[data-tone="sand"]   { border-top: 3px solid #c09a72; }
.lylymama-cluster-card[data-tone="clay"]   { border-top: 3px solid #b87860; }
.lylymama-cluster-card[data-tone="plum"]   { border-top: 3px solid #9070a8; }
.lylymama-cluster-card[data-tone="citrus"] { border-top: 3px solid #c8a030; }

/* ─── Home section ─── */
.lylymama-home-section {
	display: grid;
	gap: 0;
}

/* ─── Post grid ─── */
.lylymama-post-grid {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(3, minmax(0, 1fr));
}

/* ─── Post card ─── */
.lylymama-card-post {
	background: #fff;
	border: 1px solid var(--lm-border);
	border-radius: var(--lm-radius);
	overflow: hidden;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.lylymama-card-post:hover {
	box-shadow: var(--lm-shadow-lift);
	transform: translateY(-2px);
}

.lylymama-card-post .inside-article {
	background: transparent;
	border: 0;
	box-shadow: none;
	display: flex;
	flex-direction: column;
	gap: 0;
	padding: 0;
}

.lylymama-card-post__media,
.lylymama-card-post__placeholder {
	display: block;
}

.lylymama-card-post__media img {
	aspect-ratio: 3 / 2;
	display: block;
	height: auto;
	object-fit: cover;
	width: 100%;
}

.lylymama-card-post__placeholder {
	align-items: flex-end;
	aspect-ratio: 3 / 2;
	background: var(--lm-shell);
	color: var(--lm-ink-faint);
	display: flex;
	font-family: var(--lm-serif);
	font-size: 1.5rem;
	font-weight: 700;
	font-style: italic;
	padding: 1.25rem;
}

.lylymama-card-post__content {
	display: flex;
	flex-direction: column;
	flex: 1;
	gap: 0.65rem;
	padding: 1.25rem;
}

.lylymama-card-post__topline {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem 0.75rem;
	justify-content: space-between;
}

.lylymama-card-post__meta,
.lylymama-reading-time {
	color: var(--lm-ink-faint);
	font-size: 0.78rem;
	font-weight: 600;
}

.lylymama-card-post .entry-title {
	font-size: 1.15rem;
	line-height: 1.25;
	margin: 0;
}

.lylymama-card-post .entry-title a {
	color: var(--lm-ink);
	text-decoration: none;
}

.lylymama-card-post .entry-title a:hover {
	color: var(--lm-accent);
}

.lylymama-card-post .entry-summary {
	color: var(--lm-ink-soft);
	font-size: 0.9rem;
	line-height: 1.65;
	margin: 0;
}

.lylymama-card-post__cta {
	align-self: flex-start;
	background: var(--lm-accent-pale);
	border: 1px solid #e8c0b0;
	border-radius: 999px;
	color: var(--lm-accent-dark);
	display: inline-flex;
	font-size: 0.82rem;
	font-weight: 700;
	margin-top: auto;
	padding: 0.5rem 1.05rem;
	text-decoration: none;
	transition: background 0.15s;
}

.lylymama-card-post__cta:hover {
	background: #f5d8cc;
}

/* ─── Archive hero ─── */
.lylymama-archive-hero {
	border-bottom: 1px solid var(--lm-border);
	display: grid;
	gap: 1.2rem;
	margin-bottom: 2.5rem;
	padding-block: clamp(2.5rem, 5vw, 4rem) clamp(2rem, 4vw, 3rem);
}

.lylymama-archive-hero__content {
	display: grid;
	gap: 1rem;
}

.lylymama-archive-hero h1 {
	font-size: clamp(2.2rem, 5vw, 4.2rem);
	margin: 0;
}

.lylymama-archive-hero p {
	color: var(--lm-ink-soft);
	font-size: 1.05rem;
	line-height: 1.75;
	margin: 0;
	max-width: 60ch;
}

.lylymama-companion-links {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
	margin-top: 0.5rem;
}

.lylymama-companion-links a {
	background: var(--lm-shell);
	border: 1px solid var(--lm-border);
	border-radius: 999px;
	color: var(--lm-ink);
	font-size: 0.85rem;
	font-weight: 600;
	padding: 0.45rem 0.9rem;
	text-decoration: none;
	transition: background 0.15s;
}

.lylymama-companion-links a:hover {
	background: var(--lm-border);
}

/* ─── Article (single) ─── */
.lylymama-article {
	max-width: 72ch;
}

.lylymama-article-header {
	border-bottom: 1px solid var(--lm-border);
	display: grid;
	gap: 0.85rem;
	margin-bottom: 1.75rem;
	padding-block: clamp(2rem, 4vw, 3.5rem) 1.5rem;
}

.lylymama-article .entry-title {
	font-size: clamp(2rem, 4vw, 3.6rem);
	line-height: 1.05;
	margin: 0;
}

.lylymama-entry-kicker {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
}

.lylymama-entry-meta {
	align-items: center;
	color: var(--lm-ink-soft);
	display: flex;
	flex-wrap: wrap;
	font-size: 0.85rem;
	gap: 0.5rem 1rem;
}

.lylymama-entry-meta span + span::before {
	color: var(--lm-border);
	content: "·";
	margin-right: 0.5rem;
}

/* ─── TOC ─── */
.lylymama-toc {
	background: var(--lm-shell);
	border: 1px solid var(--lm-border);
	border-left: 3px solid var(--lm-accent);
	border-radius: var(--lm-radius-sm);
	margin-block: 1.75rem;
	padding: 1.35rem 1.5rem;
}

.lylymama-toc__title {
	color: var(--lm-ink);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	margin-bottom: 0.9rem;
	text-transform: uppercase;
}

.lylymama-toc__list {
	margin: 0;
	padding-left: 1.1rem;
}

.lylymama-toc__list li + li {
	margin-top: 0.4rem;
}

.lylymama-toc__list .toc-level-3 {
	font-size: 0.92rem;
	margin-left: 0.9rem;
}

.lylymama-toc__list a {
	color: var(--lm-ink-soft);
	text-decoration: none;
}

.lylymama-toc__list a:hover {
	color: var(--lm-accent);
}

/* ─── Notice cards ─── */
.lylymama-notice-grid {
	display: grid;
	gap: 1rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	margin-block: 1.5rem;
}

.lylymama-notice-card {
	background: var(--lm-shell);
	border: 1px solid var(--lm-border);
	border-radius: var(--lm-radius-sm);
	padding: 1.1rem 1.25rem;
}

.lylymama-notice-card strong {
	display: block;
	font-size: 0.82rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	margin-bottom: 0.4rem;
	text-transform: uppercase;
}

.lylymama-notice-card p {
	color: var(--lm-ink-soft);
	font-size: 0.88rem;
	line-height: 1.6;
	margin: 0;
}

/* ─── Related reads ─── */
.lylymama-related-shell {
	background: var(--lm-shell);
	border: 1px solid var(--lm-border);
	border-radius: var(--lm-radius);
	margin-block: 2rem;
	padding: 1.75rem;
}

.lylymama-related-shell__header {
	margin-bottom: 1.5rem;
}

.lylymama-related-shell__header h2 {
	font-size: 1.5rem;
	margin: 0 0 0.4rem;
}

.lylymama-related-shell__header p {
	color: var(--lm-ink-soft);
	font-size: 0.9rem;
	margin: 0;
}

.lylymama-related-shell__grid {
	display: grid;
	gap: 1.5rem;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.lylymama-related-shell__col h3 {
	font-size: 1rem;
	font-weight: 700;
	margin: 0 0 0.75rem;
}

.lylymama-link-list {
	list-style: none;
	margin: 0;
	padding: 0;
}

.lylymama-link-list li {
	border-top: 1px solid var(--lm-border);
	padding-block: 0.6rem;
}

.lylymama-link-list li:first-child {
	border-top: none;
}

.lylymama-link-list a {
	color: var(--lm-ink);
	font-size: 0.92rem;
	font-weight: 500;
	text-decoration: none;
}

.lylymama-link-list a:hover {
	color: var(--lm-accent);
}

/* ─── Widget slots (ad zones) ─── */
.lylymama-slot {
	background: var(--lm-shell);
	border: 1px dashed var(--lm-border);
	border-radius: var(--lm-radius-sm);
	margin-block: 1.5rem;
	padding: 1.25rem;
}

/* ─── Footer ─── */
body.lylymama-editorial .site-info {
	background: var(--lm-paper);
	border-top: 1px solid var(--lm-border);
	color: var(--lm-ink-soft);
	font-size: 0.85rem;
}

body.lylymama-editorial #footer-widgets {
	background: var(--lm-shell);
	border-top: 1px solid var(--lm-border);
}

body.lylymama-editorial .widget-title {
	font-family: var(--lm-serif);
	font-size: 1.1rem;
	margin-bottom: 0.7rem;
}

/* ─── Responsive ─── */
@media (max-width: 1024px) {
	.lylymama-cluster-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.lylymama-post-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 768px) {
	.lylymama-home-hero h1 {
		max-width: none;
	}

	.lylymama-notice-grid,
	.lylymama-related-shell__grid {
		grid-template-columns: 1fr;
	}

	.lylymama-section-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 0.4rem;
	}
}

@media (max-width: 600px) {
	.lylymama-cluster-grid,
	.lylymama-post-grid {
		grid-template-columns: 1fr;
	}

	.lylymama-home-shell {
		gap: 2.5rem;
	}

	.lylymama-related-shell {
		padding: 1.25rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	.lylymama-cluster-card,
	.lylymama-card-post,
	.lylymama-cat-hub__pill {
		transition: none;
	}
}
