/*
Theme Name: My Greener Home
Template: twentytwentyfive
Version: 0.4.8
Description: Child theme for mygreenerhomes.com, branded like @my_greener_home: "Monochrome home, botanical chaos". Black-and-white wall stripes, the account's own photos, Merriweather headings (the Reel covers), Raleway text and the typewriter of the Plantaholic poster. Every colour and size is a token in theme.json; this file holds layout only.
Text Domain: mygreenerhomes
*/

/* Shorthands for the tokens (theme.json) */
:root {
	--mgh-ink: var(--wp--preset--color--contrast);
	--mgh-paper: var(--wp--preset--color--base);
	--mgh-leaf: var(--wp--preset--color--leaf);
	--mgh-moss: var(--wp--preset--color--moss);
	--mgh-new-leaf: var(--wp--preset--color--new-leaf);
	--mgh-stone: var(--wp--preset--color--stone);
	--mgh-muted: var(--wp--preset--color--muted);
	--mgh-rule: var(--wp--preset--color--rule);
	--mgh-mist: var(--wp--preset--color--mist);
	--mgh-type: var(--wp--preset--font-family--typewriter);
	--mgh-serif: var(--wp--preset--font-family--heading);
	--mgh-ease: var(--wp--custom--transition);
	--mgh-stripe: var(--wp--custom--stripe);
}

html { -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
body { font-variant-numeric: lining-nums; }
h1, h2, h3, .wp-block-post-title { text-wrap: balance; }
p, li { text-wrap: pretty; }
img { max-width: 100%; height: auto; }

/* Focus and motion (WCAG 2.2: visible focus, reduced motion) */
:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
	outline: var(--wp--custom--focus--width) solid var(--mgh-leaf);
	outline-offset: 2px;
}
a, .wp-block-button__link, .wp-element-button {
	transition: color var(--mgh-ease), background-color var(--mgh-ease), border-color var(--mgh-ease);
}
a { text-underline-offset: 0.18em; text-decoration-thickness: 1px; }
@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after { transition: none !important; animation: none !important; }
}

/* Latin plant names: <i> is the HTML element for taxonomic names */
.wp-block-post-content i, .mgh-tag i, .wp-block-heading i, .mgh-latin { font-family: var(--mgh-serif); font-style: italic; }

/* The wall: bold black-and-white stripes, as in the home */
.mgh-stripes {
	background: repeating-linear-gradient(to bottom, var(--mgh-ink) 0 var(--mgh-stripe), var(--mgh-paper) var(--mgh-stripe) calc(2 * var(--mgh-stripe)));
}
.mgh-stripes--band { height: calc(5 * var(--mgh-stripe)); margin-block: 0 !important; }

/* Buttons: leaf green (theme.json); outline = ink, white on dark bands */
.wp-block-button.is-style-outline > .wp-block-button__link {
	background: transparent;
	color: var(--mgh-ink);
	border: 1.5px solid var(--mgh-ink);
	padding: calc(0.75rem - 1.5px) calc(1.25rem - 1.5px);
}
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--mgh-ink); color: var(--mgh-paper); }
.wp-block-button__link:active { transform: scale(0.98); }

/* Header: a striped mark and the account-style wordmark */
.mgh-header { border-bottom: 1px solid var(--mgh-rule); background: var(--mgh-paper); }
.mgh-header__bar { padding-block: 0.75rem; gap: 1.5rem; }
.mgh-brand { gap: 0.6rem; align-items: center; }
.mgh-mark {
	display: block;
	width: 1.5rem;
	height: 1.5rem;
	flex: none;
	border: 2px solid var(--mgh-ink);
	background: repeating-linear-gradient(to bottom, var(--mgh-ink) 0 3px, var(--mgh-paper) 3px 6px);
}
.mgh-brand .wp-block-site-title { margin: 0; line-height: 1; text-transform: lowercase; letter-spacing: -0.02em; }
.mgh-brand .wp-block-site-title a { color: var(--mgh-ink); text-decoration: none; }
.mgh-nav .wp-block-navigation-item__content { color: var(--mgh-ink); text-decoration: none; padding-block: 0.75rem; font-weight: 600; }
.mgh-nav .wp-block-navigation-item__content:hover { color: var(--mgh-leaf); text-decoration: underline; }
.mgh-nav .mgh-nav__shop .wp-block-navigation-item__content {
	background: var(--mgh-leaf);
	color: var(--wp--preset--color--on-leaf);
	border-radius: var(--wp--custom--radius--chip);
	padding: 0.55rem 1.1rem;
}
.mgh-nav .mgh-nav__shop .wp-block-navigation-item__content:hover { background: var(--mgh-ink); color: var(--mgh-paper); text-decoration: none; }
.mgh-nav .wp-block-navigation__responsive-container-open,
.mgh-nav .wp-block-navigation__responsive-container-close { min-width: 44px; min-height: 44px; justify-content: center; align-items: center; }
.mgh-search .wp-block-search__input { border: 1px solid var(--mgh-muted); border-radius: var(--wp--custom--radius--button); min-height: 44px; font-size: var(--wp--preset--font-size--small); }
.mgh-search .wp-block-search__inside-wrapper { border: 0; padding: 0; }
.mgh-search .wp-block-search__button { background: transparent; color: var(--mgh-ink); padding: 0 0.5rem; margin: 0; min-width: 44px; min-height: 44px; }
.mgh-search .wp-block-search__button:hover { color: var(--mgh-leaf); }

/* Core switches to the inline menu at 600 px; the items fit on one line only from 1024 px, so keep the menu button until then */
@media (min-width: 600px) and (max-width: 1023px) {
	.mgh-nav .wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.mgh-nav .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}
/* Phone menu (core overlay: focus trap and Escape are built in): left-aligned, large, in the heading face */
.mgh-nav .wp-block-navigation__responsive-container.is-menu-open { padding: 1.25rem 1.5rem; }
.mgh-nav .is-menu-open .wp-block-navigation__responsive-container-content { padding-top: 3.5rem; align-items: flex-start; }
.mgh-nav .is-menu-open .wp-block-navigation__container,
.mgh-nav .is-menu-open .wp-block-navigation-item { align-items: flex-start !important; gap: 0; } /* core's right-justify wins otherwise */
.mgh-nav .is-menu-open .wp-block-navigation-item__content { font-family: var(--mgh-serif); font-weight: 400; font-size: var(--wp--preset--font-size--x-large); padding-block: 0.4rem; }
.mgh-nav .is-menu-open .mgh-search { width: 100%; margin-top: 1.5rem; }
.mgh-nav .is-menu-open .mgh-nav__shop { margin-top: 0.75rem; }
.mgh-nav .is-menu-open .mgh-nav__shop .wp-block-navigation-item__content { padding: 0.45rem 1.25rem; font-family: var(--wp--preset--font-family--body); font-weight: 600; font-size: var(--wp--preset--font-size--large); }

/* The typewriter voice: "hello, I'm Nina", kickers, labels */
.mgh-hello { font-family: var(--mgh-type); font-size: var(--wp--preset--font-size--medium); margin: 0 0 1rem; }

/* Home: hero. The photo hangs in front of a striped wall, as in the home */
.mgh-home { padding-bottom: 0; }
.mgh-hero {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr);
	gap: clamp(2rem, 6vw, 5rem);
	align-items: center;
	padding-block: clamp(2rem, 5vw, 4.5rem) clamp(3rem, 7vw, 6rem);
}
.mgh-hero > * { margin: 0 !important; }
.mgh-hero__title { font-size: var(--wp--preset--font-size--huge); line-height: 1.06; letter-spacing: -0.02em; max-width: 14ch; margin: 0 0 1.25rem; }
.mgh-hero__lede { color: var(--mgh-muted); font-size: var(--wp--preset--font-size--large); line-height: 1.55; max-width: 36ch; margin: 0 0 1.75rem; }
.mgh-hero__actions { gap: 0.75rem; margin: 0 0 2.25rem; }
.mgh-hero__photo { position: relative; isolation: isolate; margin: 0; padding: 0 0 2.25rem 2.25rem; }
.mgh-hero__photo::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 3rem auto 0 0;
	width: 70%;
	background: repeating-linear-gradient(to bottom, var(--mgh-ink) 0 var(--mgh-stripe), var(--mgh-paper) var(--mgh-stripe) calc(2 * var(--mgh-stripe)));
	border: 2px solid var(--mgh-ink);
}
.mgh-hero__photo img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
@media (max-width: 781px) {
	.mgh-hero { grid-template-columns: minmax(0, 1fr); padding-top: 1.25rem; }
	.mgh-hero__photo { order: -1; padding: 0 0 1rem 1rem; }
	.mgh-hero__photo img { aspect-ratio: 4 / 4.2; }
	.mgh-hero__photo::before { inset: 1.5rem auto 0 0; }
}

/* Section titles */
.mgh-section-title { font-size: var(--wp--preset--font-size--x-large); margin-top: clamp(3rem, 7vw, 5rem); margin-bottom: 1.5rem; }

/* Category photo cards */
.mgh-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2.5vw, 1.75rem); }
@media (max-width: 781px) { .mgh-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; } }
.mgh-card__photo { margin: 0; overflow: hidden; aspect-ratio: 4 / 5; background: var(--mgh-stone); }
.mgh-card__photo img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease-out; }
.mgh-card:hover img { transform: scale(1.04); }

/* Plantaholic: the black poster from my wall, hung on the stripes */
.mgh-wall { margin-top: clamp(3.5rem, 8vw, 6rem) !important; padding: clamp(2.5rem, 7vw, 5rem) 1.25rem; }
.mgh-dictionary {
	max-width: 34rem;
	margin-inline: auto;
	padding: clamp(2rem, 5vw, 3rem);
	background: var(--mgh-ink);
	color: var(--mgh-paper);
	font-family: var(--mgh-type);
	outline: 1px solid var(--mgh-mist);
	outline-offset: -0.75rem;
	box-shadow: var(--wp--custom--shadow--float);
}
.mgh-dictionary > * { margin: 0; }
.mgh-dictionary__word { font-size: var(--wp--preset--font-size--xx-large); font-weight: 700; line-height: 1.1; }
.mgh-dictionary__say { color: var(--mgh-mist); margin-top: 0.4rem !important; }
.mgh-dictionary__def { font-size: var(--wp--preset--font-size--large); line-height: 1.45; margin-top: 1.25rem !important; }
.mgh-dictionary__link { margin-top: 1.5rem !important; }
.mgh-dictionary__link a { color: var(--mgh-paper); }
.mgh-dictionary__link a:hover { color: var(--mgh-new-leaf); }

/* Guide lists (home, hubs, plant pages, search) */
.mgh-guides .wp-block-post-template { padding: 0; margin: 0; }
.mgh-guides .wp-block-post {
	display: grid;
	grid-template-columns: minmax(0, 9rem) minmax(0, 1fr);
	gap: 1.25rem;
	align-items: center;
	padding-block: 1rem;
	border-top: 1px solid var(--mgh-rule);
	margin: 0;
}
.mgh-guides .wp-block-post:not(:has(.wp-block-post-featured-image)) { grid-template-columns: minmax(0, 1fr); }
.mgh-guides .wp-block-post-featured-image { margin: 0; overflow: hidden; }
.mgh-guides .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.mgh-guides .wp-block-post-title { font-size: var(--wp--preset--font-size--large); margin: 0 0 0.25rem; }
.mgh-guides .wp-block-post-title a { color: var(--mgh-ink); text-decoration: none; }
.mgh-guides .wp-block-post-title a:hover { color: var(--mgh-leaf); text-decoration: underline; }
.mgh-photo-fallback { overflow: hidden; }
.mgh-photo-fallback img { display: block; width: 100%; height: 100%; object-fit: cover; }

/* From my home: the Instagram band, black like the footer */
.mgh-home-band { background: var(--mgh-ink); color: var(--mgh-paper); margin-top: clamp(3.5rem, 8vw, 6rem) !important; padding-block: clamp(3rem, 7vw, 5rem); }
.mgh-home-band__head { display: flex; flex-wrap: wrap; align-items: end; justify-content: space-between; gap: 1rem 2rem; margin-bottom: 2rem; }
.mgh-home-band__head > * { margin: 0; }
.mgh-home-band h2 { color: var(--mgh-paper); font-size: var(--wp--preset--font-size--xx-large); }
.mgh-home-band p { color: var(--mgh-mist); flex: 1 1 18rem; margin: 0; }
.mgh-home-band .wp-block-button.is-style-outline > .wp-block-button__link { color: var(--mgh-paper); border-color: var(--mgh-paper); }
.mgh-home-band .wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--mgh-paper); color: var(--mgh-ink); }
.mgh-mosaic { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
@media (max-width: 600px) { .mgh-mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px; } }
.mgh-mosaic__tile { display: block; aspect-ratio: 1; overflow: hidden; }
.mgh-mosaic__tile img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform 400ms ease-out, opacity 400ms ease-out; }
.mgh-mosaic__tile:hover img { transform: scale(1.04); opacity: 0.9; }

/* Listing pages (hubs, plant pages, Shop): title beside a photo */
.mgh-listing { padding-block: 2.5rem 3rem; }
.mgh-listing__head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 0.9fr); gap: clamp(1.5rem, 5vw, 4rem); align-items: center; margin-bottom: 2.5rem; }
.mgh-listing__head > * { margin: 0 !important; }
.mgh-listing .wp-block-query-title, .mgh-shop h1 { font-size: var(--wp--preset--font-size--xx-large); margin: 0 0 0.75rem; }
.mgh-listing .wp-block-term-description { color: var(--mgh-muted); font-size: var(--wp--preset--font-size--large); }
.mgh-listing .wp-block-term-description p { margin: 0; }
.mgh-term-photo { position: relative; isolation: isolate; margin: 0; padding: 0 0 1rem 1rem; }
.mgh-term-photo::before {
	content: "";
	position: absolute;
	z-index: -1;
	inset: 1.5rem auto 0 0;
	width: 60%;
	background: repeating-linear-gradient(to bottom, var(--mgh-ink) 0 var(--mgh-stripe), var(--mgh-paper) var(--mgh-stripe) calc(2 * var(--mgh-stripe)));
	border: 2px solid var(--mgh-ink);
}
.mgh-term-photo img { display: block; width: 100%; aspect-ratio: 3 / 2; object-fit: cover; }
@media (max-width: 781px) {
	.mgh-listing__head { grid-template-columns: minmax(0, 1fr); }
	.mgh-term-photo { order: -1; }
}

/* Articles */
.mgh-article { padding-block: 2.5rem 3rem; }
.mgh-article .wp-block-post-title { margin-top: 0.5rem; }
.mgh-kicker { font-family: var(--mgh-type); font-size: var(--wp--preset--font-size--small); }
.mgh-kicker a { color: var(--mgh-ink); text-decoration: none; }
.mgh-kicker a:hover { color: var(--mgh-leaf); text-decoration: underline; }
.mgh-disclosure {
	font-size: var(--wp--preset--font-size--small);
	color: var(--mgh-muted);
	border-left: 3px solid var(--mgh-ink);
	border-radius: 0;
	padding-left: 0.75rem;
}
.mgh-meta { gap: 0.3rem; font-size: var(--wp--preset--font-size--small); color: var(--mgh-muted); }
.mgh-meta > * { margin: 0; }
.mgh-meta a { color: var(--mgh-muted); }
.mgh-article .wp-block-post-featured-image img { aspect-ratio: 16 / 9; object-fit: cover; width: 100%; }
.wp-block-post-content h2 { margin-top: 2.5rem; }
.wp-block-post-content figcaption { color: var(--mgh-muted); }

/* The plant tag: a white nursery label with a pointed stake and a punched hole; the ink edge follows the shape */
.mgh-tag {
	--point: var(--wp--custom--tag--point);
	--shape: polygon(0 0, 100% 0, 100% calc(100% - var(--point)), 50% 100%, 0 calc(100% - var(--point)));
	position: relative;
	isolation: isolate;
	max-width: 23rem;
	background: var(--mgh-ink);
	clip-path: var(--shape);
	border-radius: var(--wp--custom--radius--tag) var(--wp--custom--radius--tag) 0 0;
	padding: 2.4rem 1.6rem calc(var(--point) + 1.4rem);
	margin-block: 2rem;
	margin-left: 0 !important; /* left-aligned with the text, not centred by the constrained layout */
}
.mgh-tag::before {
	content: "";
	position: absolute;
	inset: 2px;
	z-index: -1;
	background: var(--mgh-paper);
	clip-path: var(--shape);
	border-radius: calc(var(--wp--custom--radius--tag) - 2px) calc(var(--wp--custom--radius--tag) - 2px) 0 0;
}
.mgh-tag::after {
	content: "";
	position: absolute;
	top: 0.9rem;
	left: 50%;
	width: 0.75rem;
	height: 0.75rem;
	translate: -50% 0;
	border-radius: 50%;
	background: var(--mgh-paper);
	box-shadow: 0 0 0 2px var(--mgh-ink);
}
.mgh-tag > * { margin-block: 0 0.6rem; }
.mgh-tag__for { font-family: var(--mgh-type); font-size: var(--wp--preset--font-size--small); }
.mgh-tag__for i { font-size: var(--wp--preset--font-size--medium); }
.mgh-tag__name { font-size: var(--wp--preset--font-size--x-large); margin-bottom: 0.4rem; }
.mgh-tag .wp-block-buttons { margin-top: 1rem; }
.mgh-tag .wp-block-button, .mgh-tag .wp-block-button__link { width: 100%; text-align: center; }

/* What I liked / what could be better */
.mgh-proscons { gap: 2rem; }
.mgh-proscons h3 { margin-top: 0; }
.mgh-proscons ul { list-style: none; padding: 0; }
.mgh-proscons li { position: relative; padding-left: 1.5rem; margin-bottom: 0.4rem; }
.mgh-proscons li::before { position: absolute; left: 0; font-weight: 700; }
.mgh-pros li::before { content: "+"; color: var(--mgh-leaf); }
.mgh-cons li::before { content: "–"; color: var(--mgh-muted); }

/* Tables: stripes on wide screens; under 640 px each row stacks into labelled lines (labels from functions.php), never scrolls sideways */
.wp-block-table table { border-collapse: collapse; width: 100%; font-size: var(--wp--preset--font-size--small); }
.wp-block-table th, .wp-block-table td { border: 0; border-bottom: 1px solid var(--mgh-rule); padding: 0.65rem 0.75rem; text-align: left; vertical-align: top; }
.wp-block-table thead th { border-bottom: 2px solid var(--mgh-ink); font-weight: 700; }
.wp-block-table tbody tr:nth-child(even) { background: var(--mgh-stone); }
@media (max-width: 640px) {
	.wp-block-table { overflow: visible; }
	.wp-block-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
	.wp-block-table tr { display: block; border-top: 2px solid var(--mgh-ink); padding-block: 0.4rem; }
	.wp-block-table tbody tr:nth-child(even) { background: none; }
	.wp-block-table td { display: grid; grid-template-columns: minmax(0, 8.5rem) minmax(0, 1fr); gap: 0.75rem; border: 0; padding: 0.35rem 0; }
	.wp-block-table td[data-label]::before { content: attr(data-label); font-weight: 700; }
	.wp-block-table td:not([data-label]) { grid-template-columns: minmax(0, 1fr); }
}

/* Shop my picks (/shop/): filter chips are radio buttons, so filtering works without JavaScript */
.mgh-shop { padding-block: 2.5rem 3rem; }
.mgh-shop__lede { color: var(--mgh-muted); font-size: var(--wp--preset--font-size--large); max-width: 36ch; }
.mgh-filter { border: 0; padding: 0; margin: 1.5rem 0; display: flex; flex-wrap: wrap; gap: 0.5rem; }
.mgh-filter legend { font-family: var(--mgh-type); font-size: var(--wp--preset--font-size--small); margin-bottom: 0.75rem; padding: 0; }
.mgh-filter input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.mgh-filter label {
	border: 1px solid var(--mgh-ink);
	border-radius: var(--wp--custom--radius--chip);
	padding: 0.5rem 1.05rem;
	min-height: 44px;
	line-height: 1.2;
	margin: 0;
	box-sizing: border-box;
	display: inline-flex;
	align-items: center;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 600;
	cursor: pointer;
	transition: color var(--mgh-ease), background-color var(--mgh-ease), border-color var(--mgh-ease);
}
.mgh-filter label:hover { background: var(--mgh-stone); }
.mgh-filter input:checked + label { background: var(--mgh-ink); border-color: var(--mgh-ink); color: var(--mgh-paper); }
.mgh-filter input:focus-visible + label { outline: var(--wp--custom--focus--width) solid var(--mgh-leaf); outline-offset: 2px; }
.mgh-shop:has(#mgh-f-moss-poles:checked) .mgh-products .wp-block-post:not(.category-moss-poles),
.mgh-shop:has(#mgh-f-plant-stands:checked) .mgh-products .wp-block-post:not(.category-plant-stands),
.mgh-shop:has(#mgh-f-planters-pots:checked) .mgh-products .wp-block-post:not(.category-planters-pots),
.mgh-shop:has(#mgh-f-grow-lights:checked) .mgh-products .wp-block-post:not(.category-grow-lights),
.mgh-shop:has(#mgh-f-watering:checked) .mgh-products .wp-block-post:not(.category-watering),
.mgh-shop:has(#mgh-f-propagation:checked) .mgh-products .wp-block-post:not(.category-propagation) { display: none; }
.mgh-products .wp-block-post-template { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15rem), 1fr)); gap: 2rem 1.5rem; padding: 0; margin: 0; }
@media (max-width: 600px) { .mgh-products .wp-block-post-template { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 1rem; } }
.mgh-products .wp-block-post { display: flex; flex-direction: column; margin: 0; }
.mgh-products .wp-block-post > * { margin-block: 0 0.4rem; }
.mgh-products .wp-block-post-featured-image { background: var(--mgh-stone); margin-bottom: 0.75rem; aspect-ratio: 1; overflow: hidden; }
.mgh-products .wp-block-post-featured-image img { width: 100%; height: 100%; object-fit: cover; }
.mgh-product__name { font-size: var(--wp--preset--font-size--large); }
.mgh-product__note { font-size: var(--wp--preset--font-size--small); color: var(--mgh-muted); }
.mgh-product__note p { margin: 0; }
.mgh-product__buy { margin-top: auto !important; padding-top: 0.5rem; }
.mgh-product__buy .wp-block-button, .mgh-product__buy .wp-block-button__link { width: 100%; text-align: center; }

/* Footer: black, under a band of the wall's stripes */
.mgh-footer { background: var(--mgh-ink); color: var(--mgh-paper); padding-block: 0 2.5rem; margin-top: 0; font-size: var(--wp--preset--font-size--small); }
.mgh-stripes--footer { height: calc(5 * var(--mgh-stripe)); margin-top: 0 !important; margin-bottom: 3rem !important; } /* margin-block only: alignfull needs its side margins */
.mgh-footer a { color: var(--mgh-paper); }
.mgh-footer a:hover { color: var(--mgh-new-leaf); }
.mgh-footer__brand { font-family: var(--mgh-type); font-weight: 700; font-size: var(--wp--preset--font-size--x-large); letter-spacing: -0.02em; margin: 0; }
.mgh-footer__tagline { color: var(--mgh-mist); margin: 0.25rem 0 2rem; }
.mgh-footer__cols { gap: 2rem; padding-block: 0.5rem 1.5rem; }
.mgh-footer__h { font-family: var(--mgh-type); font-size: var(--wp--preset--font-size--small); font-weight: 700; color: var(--mgh-paper); letter-spacing: 0; }
.mgh-footer__list { list-style: none; padding: 0; }
.mgh-footer__list li { padding-block: 0.3rem; }

/* Cookie consent bar (Google Analytics, functions.php) */
.mgh-consent {
	position: fixed;
	z-index: 200;
	left: 1rem;
	right: 1rem;
	bottom: 1rem;
	max-width: 44rem;
	margin-inline: auto;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 0.75rem 1.25rem;
	padding: 1rem 1.25rem;
	background: var(--mgh-paper);
	color: var(--mgh-ink);
	border: 2px solid var(--mgh-ink);
	box-shadow: var(--wp--custom--shadow--float);
	font-size: var(--wp--preset--font-size--small);
	line-height: 1.5;
}
.mgh-consent[hidden] { display: none; }
.mgh-consent p { margin: 0; flex: 1 1 18rem; }
.mgh-consent__buttons { display: flex; gap: 0.5rem; }
.mgh-consent button {
	font: inherit;
	font-weight: 700;
	padding: 0.55rem 1.1rem;
	min-height: 44px;
	border-radius: var(--wp--custom--radius--button);
	border: 1px solid var(--mgh-ink);
	background: transparent;
	color: var(--mgh-ink);
	cursor: pointer;
}
.mgh-consent button[data-consent="yes"] { background: var(--mgh-leaf); border-color: var(--mgh-leaf); color: var(--wp--preset--color--on-leaf); }
