/*
Theme Name: How Gardens Work
Theme URI: https://howgardenswork.com/
Author: How Gardens Work
Description: Botanical Editorial Design System for the private How Gardens Work publication.
Version: 4.0.1-template01.1
Text Domain: garden-media-staging
*/

@font-face {
	font-family: "Fraunces";
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	src: url("assets/fonts/fraunces-latin-variable.woff2") format("woff2");
}

@font-face {
	font-family: "Source Sans 3";
	font-style: normal;
	font-weight: 200 900;
	font-display: swap;
	src: url("assets/fonts/source-sans-3-latin-variable.woff2") format("woff2");
}

@font-face {
	font-family: "Source Serif 4";
	font-style: normal;
	font-weight: 200 900;
	font-display: swap;
	src: url("assets/fonts/source-serif-4-latin-variable.woff2") format("woff2");
}

@font-face {
	font-family: "Source Serif 4";
	font-style: italic;
	font-weight: 200 900;
	font-display: swap;
	src: url("assets/fonts/source-serif-4-latin-variable-italic.woff2") format("woff2");
}

:root {
	--gm-forest: #0c342b;
	--gm-forest-2: #19483c;
	--gm-forest-3: #2b5e50;
	--gm-ink: #172b25;
	--gm-cream: #f5f0e6;
	--gm-paper: #fffdf8;
	--gm-soft: #e8e1d3;
	--gm-rule: #c7c3b7;
	--gm-muted: #5d6964;
	--gm-ochre: #dfa92c;
	--gm-ochre-soft: #f2d88b;
	--gm-clay: #a64d2b;
	--gm-teal: #4f7f78;
	--gm-white: #fff;
	--gm-sage: #8eb47d;
	--gm-mint: #dcebd3;
	--gm-coral: #d96e49;
	--gm-sky: #cde3e3;
	--gm-sun: #f2c44f;
	--gm-shell: 1440px;
	--gm-wide: 1240px;
	--gm-reading: 760px;
	--gm-gutter: clamp(20px, 4vw, 64px);
	--gm-serif: "Source Serif 4", Georgia, serif;
	--gm-display: "Fraunces", "Source Serif 4", Georgia, serif;
	--gm-sans: "Source Sans 3", Arial, sans-serif;
	--gm-shadow: 0 22px 60px rgba(12, 52, 43, .12);
}

*, *::before, *::after { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
	background: var(--gm-paper);
	color: var(--gm-ink);
	font-family: var(--gm-sans);
	font-size: 18px;
	line-height: 1.65;
	margin: 0;
}

main { display: block; min-width: 0; }

img, picture, svg, video { display: block; height: auto; max-width: 100%; }

figure, blockquote, dl, dd { margin: 0; }

a { color: inherit; text-decoration-thickness: .08em; text-underline-offset: .2em; }

a:hover { text-decoration-color: var(--gm-clay); }

button, input, select, textarea { font: inherit; }

:where(a, button, input, summary, select, textarea):focus-visible {
	box-shadow: 0 0 0 6px var(--gm-white);
	outline: 3px solid #061f18;
	outline-offset: 2px;
}

::selection { background: var(--gm-ochre-soft); color: var(--gm-ink); }

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
}

.screen-reader-text:focus {
	background: var(--gm-paper);
	clip: auto !important;
	clip-path: none;
	color: var(--gm-forest);
	height: auto;
	left: 18px;
	padding: 12px 18px;
	top: 18px;
	width: auto;
	z-index: 10000;
}

.gm-site-header {
	background: rgba(255, 253, 248, .98);
	border-bottom: 1px solid var(--gm-rule);
	position: relative;
	z-index: 30;
}

.gm-header-shell {
	align-items: center;
	display: grid;
	gap: 28px;
	grid-template-columns: minmax(245px, 1.15fr) auto minmax(280px, .9fr) auto;
	margin: 0 auto;
	max-width: var(--gm-shell);
	min-height: 88px;
	padding: 10px var(--gm-gutter);
	position: relative;
}

.gm-brand { color: var(--gm-forest); display: inline-flex; flex-direction: column; justify-content: center; min-height: 44px; text-decoration: none; width: max-content; }

.gm-brand-lockup {
	align-items: baseline;
	color: var(--gm-forest);
	display: inline-flex;
	font-family: var(--gm-serif);
	font-size: clamp(1.45rem, 2vw, 1.9rem);
	font-weight: 650;
	letter-spacing: -.045em;
	line-height: .95;
	min-height: 44px;
	position: relative;
	text-decoration: none;
}

.gm-brand-lockup i {
	font-size: .69em;
	font-weight: 780;
	letter-spacing: -.06em;
	margin-right: .16em;
	position: relative;
}

.gm-brand-lockup i::after {
	background: var(--gm-ochre);
	border-radius: 80% 10% 80% 10%;
	content: "";
	height: 6px;
	left: 5%;
	position: absolute;
	top: 100%;
	transform: rotate(-9deg);
	width: 80%;
}

.gm-brand small { color: var(--gm-muted); font-size: .67rem; font-weight: 620; letter-spacing: .035em; margin-top: 8px; }

.gm-nav { align-items: stretch; align-self: stretch; display: flex; }

.gm-nav a {
	align-items: center;
	border-bottom: 3px solid transparent;
	display: flex;
	font-size: .78rem;
	font-weight: 780;
	letter-spacing: .03em;
	padding: 0 14px;
	text-decoration: none;
}

.gm-nav a:hover, .gm-nav a:focus-visible { border-bottom-color: var(--gm-ochre); color: var(--gm-forest); }

.gm-header-utility { align-items: center; display: flex; gap: 14px; justify-content: flex-end; min-width: 0; }

.gm-header-utility > a { align-items: center; display: inline-flex; font-size: .73rem; font-weight: 760; min-height: 44px; text-decoration: none; white-space: nowrap; }

.gm-search { align-items: stretch; display: flex; min-width: 0; }

.gm-search input {
	background: transparent;
	border: 0;
	border-bottom: 1px solid var(--gm-ink);
	font-size: .72rem;
	min-height: 44px;
	min-width: 0;
	padding: 9px 4px;
	width: min(210px, 18vw);
}

.gm-search button {
	background: transparent;
	border: 0;
	color: var(--gm-forest);
	cursor: pointer;
	font-size: .68rem;
	font-weight: 820;
	min-height: 44px;
	padding: 8px 5px 8px 11px;
	text-transform: uppercase;
}

.gm-start-link {
	align-items: center;
	background: var(--gm-ochre);
	color: var(--gm-ink);
	display: flex;
	font-size: .75rem;
	font-weight: 820;
	gap: 16px;
	justify-content: space-between;
	min-height: 48px;
	padding: 12px 16px;
	text-decoration: none;
	white-space: nowrap;
}

.gm-start-link:hover { background: var(--gm-ochre-soft); }

.gm-mobile-nav { display: none; }

.gm-kicker, .gm-story-label, .gm-media-placement > span {
	color: var(--gm-clay);
	font-size: .68rem;
	font-weight: 820;
	letter-spacing: .14em;
	text-transform: uppercase;
}

.gm-primary-action {
	align-items: center;
	background: var(--gm-ochre);
	color: var(--gm-ink);
	display: inline-flex;
	font-size: .82rem;
	font-weight: 820;
	gap: 22px;
	justify-content: space-between;
	min-height: 50px;
	padding: 13px 18px;
	text-decoration: none;
}

.gm-primary-action:hover { background: var(--gm-ochre-soft); }

.gm-text-link { align-items: center; color: var(--gm-forest); display: inline-flex; font-size: .82rem; font-weight: 780; min-height: 44px; }
.gm-text-link--light { color: var(--gm-white); }

.gm-section-heading {
	align-items: end;
	display: grid;
	gap: 30px;
	grid-template-columns: minmax(0, 1.2fr) minmax(260px, .8fr);
	margin-bottom: clamp(28px, 4vw, 58px);
}

.gm-section-heading h2 {
	font-family: var(--gm-serif);
	font-size: clamp(2.3rem, 4.5vw, 4.9rem);
	font-weight: 560;
	letter-spacing: -.052em;
	line-height: .98;
	margin: 10px 0 0;
}

.gm-section-heading p { color: var(--gm-muted); margin: 0; max-width: 520px; }

/* Homepage */
.gm-home-hero {
	background: var(--gm-forest);
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(390px, .8fr);
	margin: 0 auto;
	max-width: var(--gm-shell);
	min-height: 650px;
}

.gm-home-hero__image { min-height: 650px; overflow: hidden; position: relative; }
.gm-home-hero__image picture { inset: 0; position: absolute; }
.gm-home-hero__image picture, .gm-home-hero__image img { height: 100%; width: 100%; }
.gm-home-hero__image img { object-fit: cover; object-position: center; }

.gm-home-hero__copy {
	align-self: stretch;
	color: var(--gm-white);
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
	padding: clamp(42px, 6vw, 92px);
}

.gm-home-hero__copy .gm-kicker { color: var(--gm-ochre-soft); }

.gm-home-hero h1 {
	font-family: var(--gm-serif);
	font-size: clamp(3rem, 5.1vw, 5.6rem);
	font-weight: 520;
	letter-spacing: -.058em;
	line-height: .94;
	margin: 18px 0 25px;
}

.gm-home-hero__copy > p { color: #dce7e2; font-size: 1.05rem; margin: 0; max-width: 600px; }
.gm-home-hero__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 22px; margin-top: 34px; }

.gm-home-season {
	align-items: center;
	border-top: 1px solid rgba(255, 255, 255, .23);
	display: grid;
	gap: 12px;
	grid-template-columns: auto 1fr auto;
	margin-top: auto;
	padding-top: 24px;
	text-decoration: none;
}

.gm-home-season span { color: var(--gm-ochre-soft); font-size: .65rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-home-season strong { font-family: var(--gm-serif); font-size: 1.03rem; font-weight: 560; line-height: 1.25; }

.gm-home-routes, .gm-home-seasonal, .gm-home-shelf, .gm-founder-panel, .gm-newsletter {
	margin: 0 auto;
	max-width: var(--gm-shell);
	padding: clamp(70px, 9vw, 130px) var(--gm-gutter);
}

.gm-home-routes__grid { display: grid; gap: 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); }

.gm-route-card { color: var(--gm-white); display: grid; min-height: 470px; position: relative; text-decoration: none; }
.gm-route-card figure { grid-area: 1 / 1; overflow: hidden; }
.gm-route-card figure picture, .gm-route-card figure img { height: 100%; width: 100%; }
.gm-route-card img { object-fit: cover; transition: transform .5s ease; }
.gm-route-card > div { align-self: end; background: linear-gradient(transparent, rgba(7, 28, 23, .88)); grid-area: 1 / 1; padding: 100px 30px 28px; z-index: 1; }
.gm-route-card span { color: var(--gm-ochre-soft); font-size: .69rem; font-weight: 850; letter-spacing: .12em; text-transform: uppercase; }
.gm-route-card h3 { font-family: var(--gm-serif); font-size: clamp(2rem, 3vw, 3.4rem); font-weight: 560; letter-spacing: -.045em; line-height: 1; margin: 12px 0; }
.gm-route-card p { color: #e2ebe7; margin: 0 0 18px; max-width: 480px; }
.gm-route-card b { font-size: .78rem; }
.gm-route-card:hover img { transform: scale(1.025); }
.gm-route-card--grow, .gm-route-card--buy { min-height: 540px; }

.gm-home-seasonal { background: var(--gm-paper); }
.gm-home-seasonal__grid { display: grid; gap: 20px; grid-template-columns: minmax(0, 1.5fr) repeat(2, minmax(240px, .75fr)); }
.gm-seasonal-feature, .gm-seasonal-card { border-top: 1px solid var(--gm-rule); color: var(--gm-ink); display: block; text-decoration: none; }
.gm-seasonal-feature figure, .gm-seasonal-card figure { aspect-ratio: 4 / 3; margin-bottom: 22px; overflow: hidden; }
.gm-seasonal-feature img, .gm-seasonal-card img { height: 100%; object-fit: cover; width: 100%; }
.gm-seasonal-feature > div { padding-right: 30px; }
.gm-seasonal-feature span, .gm-seasonal-card span { color: var(--gm-clay); display: block; font-size: .65rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-seasonal-feature h3 { font-family: var(--gm-serif); font-size: clamp(2rem, 3.4vw, 3.7rem); font-weight: 560; letter-spacing: -.045em; line-height: 1.02; margin: 12px 0 16px; }
.gm-seasonal-feature p { color: var(--gm-muted); }
.gm-seasonal-card h3 { font-family: var(--gm-serif); font-size: clamp(1.45rem, 2.2vw, 2.15rem); font-weight: 560; letter-spacing: -.035em; line-height: 1.08; margin: 12px 0; }

.gm-home-shelf { background: var(--gm-forest); color: var(--gm-white); }
.gm-home-shelf .gm-section-heading p { color: #bed0c9; }
.gm-home-shelf__grid { display: grid; gap: 14px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gm-home-shelf__grid a { color: inherit; text-decoration: none; }
.gm-home-shelf__grid figure { aspect-ratio: 4 / 5; margin-bottom: 17px; overflow: hidden; }
.gm-home-shelf__grid img { height: 100%; object-fit: cover; width: 100%; }
.gm-home-shelf__grid span { color: var(--gm-ochre-soft); display: block; font-size: .63rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.gm-home-shelf__grid strong { display: block; font-family: var(--gm-serif); font-size: 1.25rem; font-weight: 560; line-height: 1.2; margin-top: 7px; }

.gm-home-begin {
	align-items: start;
	background: var(--gm-ochre-soft);
	display: grid;
	gap: clamp(32px, 6vw, 90px);
	grid-template-columns: minmax(270px, .65fr) minmax(0, 1.35fr);
	margin: 0 auto;
	max-width: var(--gm-shell);
	padding: clamp(70px, 9vw, 125px) var(--gm-gutter);
}

.gm-home-begin__intro { position: sticky; top: 30px; }
.gm-home-begin h2 { font-family: var(--gm-serif); font-size: clamp(2.4rem, 4vw, 4.5rem); font-weight: 560; letter-spacing: -.05em; line-height: .98; margin: 14px 0 20px; }
.gm-home-begin__intro p { margin-bottom: 28px; }
.gm-home-begin .gm-visual-system { margin: 0; }

.gm-home-two-stories { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0 auto; max-width: var(--gm-shell); }
.gm-home-two-stories > a { color: var(--gm-white); display: grid; min-height: 630px; text-decoration: none; }
.gm-home-two-stories figure, .gm-home-two-stories > a > div { grid-area: 1 / 1; }
.gm-home-two-stories figure { overflow: hidden; }
.gm-home-two-stories figure picture, .gm-home-two-stories figure img { height: 100%; width: 100%; }
.gm-home-two-stories img { object-fit: cover; }
.gm-home-two-stories > a > div { align-self: end; background: linear-gradient(transparent, rgba(6, 29, 23, .9)); padding: 130px clamp(26px, 4vw, 58px) 45px; z-index: 1; }
.gm-home-two-stories span { color: var(--gm-ochre-soft); font-size: .67rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-home-two-stories h2 { font-family: var(--gm-serif); font-size: clamp(2.2rem, 3.7vw, 4rem); font-weight: 540; letter-spacing: -.05em; line-height: .98; margin: 12px 0 16px; }
.gm-home-two-stories p { color: #e3ece8; max-width: 600px; }

.gm-founder-panel { align-items: center; display: grid; gap: clamp(35px, 7vw, 100px); grid-template-columns: minmax(220px, .55fr) minmax(0, 1.45fr); }
.gm-founder-panel__mark { align-items: center; aspect-ratio: 1; background: var(--gm-forest); color: var(--gm-ochre); display: flex; justify-content: center; max-width: 370px; position: relative; width: 100%; }
.gm-founder-panel__mark::before { border: 1px solid rgba(255, 255, 255, .35); border-radius: 70% 10% 70% 10%; content: ""; height: 44%; position: absolute; transform: rotate(-18deg); width: 25%; }
.gm-founder-panel__mark span { font-family: var(--gm-serif); font-size: 1.1rem; font-weight: 760; letter-spacing: .16em; position: relative; }
.gm-founder-panel h2 { font-family: var(--gm-serif); font-size: clamp(2.4rem, 4vw, 4.8rem); font-weight: 560; letter-spacing: -.05em; line-height: 1; margin: 13px 0 20px; }
.gm-founder-panel p { color: var(--gm-muted); max-width: 760px; }
.gm-founder-panel div > strong, .gm-founder-panel div > span { display: block; }
.gm-founder-panel div > strong { font-family: var(--gm-serif); font-size: 1.25rem; margin-top: 24px; }
.gm-founder-panel div > span:not(.gm-kicker) { color: var(--gm-muted); font-size: .8rem; }
.gm-founder-panel .gm-founder-identity { color: var(--gm-muted); font-family: var(--gm-serif); font-size: 1.02rem; margin: 24px 0 0; }
.gm-founder-panel .gm-text-link { display: inline-block; margin-top: 22px; }

.gm-newsletter { align-items: center; background: var(--gm-forest); color: var(--gm-white); display: grid; gap: clamp(35px, 6vw, 90px); grid-template-columns: minmax(0, 1fr) minmax(320px, .8fr); }
.gm-newsletter h2 { font-family: var(--gm-serif); font-size: clamp(2.25rem, 4vw, 4.5rem); font-weight: 540; letter-spacing: -.05em; line-height: 1; margin: 13px 0 15px; }
.gm-newsletter__copy > p { color: #bed0c9; margin: 0; max-width: 660px; }
.gm-newsletter__form { min-width: 0; }
.gmf-subscribe { min-height: 248px; }
.gm-newsletter__form form { display: flex; flex-wrap: wrap; gap: 10px; min-width: 0; }
.gm-newsletter__form input { background: var(--gm-paper); border: 2px solid transparent; color: var(--gm-ink); flex: 1 1 210px; min-height: 52px; min-width: 0; padding: 12px 14px; }
.gm-newsletter__form button { background: var(--gm-ochre); border: 0; color: var(--gm-ink); cursor: pointer; font-weight: 820; min-height: 52px; padding: 12px 20px; }
.gm-newsletter__form > p { color: #9fb8af; font-size: .7rem; margin: 10px 0 0; }
.gm-newsletter__form :where(a[href*="kit.com"], [data-element="powered-by"]) { font-size: .65rem !important; opacity: .55; }

/* Shared editorial photography */
.gm-media-block, .gm-evidence-figure { min-width: 0; }
.gm-media-block img, .gm-evidence-figure img { width: 100%; }
.gm-media-placement { grid-column: 1 / -1 !important; margin: clamp(36px, 6vw, 72px) auto; max-width: 1080px; width: 100%; }
.gm-media-placement > span { display: block; margin-bottom: 10px; }
.gm-media-placement figure { background: var(--gm-paper); }
.gm-media-placement figure img { max-height: 720px; object-fit: cover; }
.gm-media-placement figcaption, .gm-article-opening__media figcaption {
	border-bottom: 1px solid var(--gm-rule);
	color: var(--gm-muted);
	font-size: .75rem;
	line-height: 1.5;
	padding: 12px 0;
}

/* Article opening and reading */
.gm-article { margin: 0 auto; max-width: var(--gm-shell); padding: 26px var(--gm-gutter) 0; }
.gm-breadcrumbs { color: var(--gm-muted); display: flex; flex-wrap: wrap; font-size: .72rem; gap: 9px; margin: 8px auto 24px; max-width: var(--gm-wide); }
.gm-breadcrumbs a { align-items: center; display: inline-flex; font-weight: 700; justify-content: center; min-height: 44px; min-width: 44px; }

.gm-article-opening { align-items: center; display: grid; gap: clamp(36px, 6vw, 86px); grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); margin: 0 auto; max-width: var(--gm-wide); padding: clamp(20px, 4vw, 55px) 0 clamp(45px, 6vw, 80px); }
.gm-article-opening__copy { min-width: 0; }
.gm-story-label { display: flex; flex-wrap: wrap; gap: 12px 20px; }
.gm-article-opening h1 { font-family: var(--gm-serif); font-size: clamp(2.7rem, 5.2vw, 5.3rem); font-weight: 540; letter-spacing: -.057em; line-height: .95; margin: 16px 0 26px; }
.gm-direct-answer { border-left: 5px solid var(--gm-ochre); padding: 2px 0 4px 20px; }
.gm-direct-answer > span { color: var(--gm-clay); font-size: .65rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-direct-answer p { font-family: var(--gm-serif); font-size: clamp(1.18rem, 1.9vw, 1.55rem); line-height: 1.35; margin: 7px 0 12px; }
.gm-direct-answer a { align-items: center; display: inline-flex; font-size: .76rem; font-weight: 780; min-height: 44px; }
.gm-byline { border-top: 1px solid var(--gm-rule); margin-top: 28px; padding-top: 18px; }
.gm-byline span, .gm-byline small { color: var(--gm-muted); display: block; font-size: .72rem; }
.gm-byline strong { display: block; font-family: var(--gm-serif); font-size: 1.04rem; margin: 2px 0; }

.gm-article-opening__media { min-width: 0; }
.gm-article-opening__media > picture img, .gm-article-opening__media > img { aspect-ratio: 4 / 3; height: auto; object-fit: cover; width: 100%; }
.gm-article-opening__media[data-hgw-lead-source="aphid-macro"] > picture img,
.gm-article-opening__media[data-hgw-lead-source="aphid-macro"] > img { object-position: right center; }
.gm-hero-pair { display: grid; gap: 8px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gm-hero-pair > div { background: var(--gm-forest); color: var(--gm-white); position: relative; }
.gm-hero-pair > div > span { background: var(--gm-forest); font-size: .67rem; font-weight: 820; left: 10px; letter-spacing: .08em; padding: 6px 9px; position: absolute; text-transform: uppercase; top: 10px; z-index: 1; }
.gm-hero-pair picture, .gm-hero-pair img { height: 100%; width: 100%; }
.gm-hero-pair img { aspect-ratio: 3 / 4; object-fit: cover; }

.gm-guide-glance { background: var(--gm-paper); border-bottom: 1px solid var(--gm-rule); border-top: 1px solid var(--gm-rule); display: grid; grid-template-columns: .65fr 1.35fr 1.35fr .8fr; margin: 0 auto; max-width: var(--gm-wide); }
.gm-guide-glance > div { border-right: 1px solid var(--gm-rule); min-width: 0; padding: 20px; }
.gm-guide-glance > div:last-child { border-right: 0; }
.gm-guide-glance dt { color: var(--gm-clay); font-size: .63rem; font-weight: 820; letter-spacing: .1em; margin-bottom: 5px; text-transform: uppercase; }
.gm-guide-glance dd { font-size: .77rem; line-height: 1.45; }

.gm-guide-navigation { margin: 34px auto 0; max-width: var(--gm-wide); }
.gm-article-jumps { align-items: start; border-bottom: 1px solid var(--gm-rule); display: grid; gap: 24px; grid-template-columns: 130px 1fr; padding-bottom: 28px; }
.gm-rail-label { color: var(--gm-clay); font-size: .67rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-article-jumps ol { columns: 3; gap: 38px; margin: 0; padding: 0; }
.gm-article-jumps li { break-inside: avoid; list-style: none; margin: 0 0 8px; }
.gm-article-jumps a { align-items: center; display: flex; font-size: .76rem; font-weight: 670; line-height: 1.3; min-height: 44px; text-decoration: none; }
.gm-article-jumps a:hover { color: var(--gm-clay); text-decoration: underline; }

.gm-article-frame { margin: 0 auto; max-width: var(--gm-wide); min-width: 0; }
.gm-article-body { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, var(--gm-reading)) minmax(0, 1fr); min-width: 0; padding: clamp(45px, 7vw, 95px) 0; }
.gm-article-body > * { grid-column: 2; min-width: 0; }
.gm-guide-preamble, .gm-reading-section { display: grid; grid-column: 1 / -1; grid-template-columns: minmax(0, 1fr) minmax(0, var(--gm-reading)) minmax(0, 1fr); min-width: 0; }
.gm-guide-preamble > *, .gm-reading-section > * { grid-column: 2; min-width: 0; }
.gm-reading-section { border-top: 1px solid var(--gm-rule); padding: clamp(45px, 7vw, 82px) 0; }
.gm-reading-section:first-of-type { border-top: 0; padding-top: 0; }
.gm-article-body p, .gm-article-body li { color: #253b34; }
.gm-article-body p { margin: 0 0 1.25em; }
.gm-article-body ul, .gm-article-body ol { margin: .2em 0 1.6em; padding-left: 1.25em; }
.gm-article-body li { margin: .46em 0; padding-left: .25em; }
.gm-article-body h2 { font-family: var(--gm-serif); font-size: clamp(2.15rem, 3.8vw, 3.75rem); font-weight: 560; letter-spacing: -.047em; line-height: 1.03; margin: 0 0 25px; }
.gm-article-body h3 { font-family: var(--gm-serif); font-size: clamp(1.35rem, 2.1vw, 1.9rem); font-weight: 650; letter-spacing: -.025em; line-height: 1.17; margin: 2.1em 0 .7em; }
.gm-article-body h4 { font-size: .82rem; letter-spacing: .04em; margin-top: 2em; text-transform: uppercase; }
.gm-subchapter-label { font-family: var(--gm-serif); font-size: clamp(1.35rem, 2.1vw, 1.9rem); letter-spacing: -.025em; line-height: 1.17; margin: 0 0 1.1em; }
.gm-subchapter-detail { color: var(--gm-muted); }
.gm-check-label { color: var(--gm-forest); font-size: .82rem; letter-spacing: .01em; margin: 1.2em 0 .38em; }
.gm-article-body blockquote { background: var(--gm-paper); border-left: 5px solid var(--gm-ochre); margin: 28px 0; padding: 24px; }
.gm-article-body a { color: #225b4c; font-weight: 650; }

.gm-table-wrap { grid-column: 1 / -1 !important; margin: 34px auto 42px; max-width: 1020px; overflow-x: auto; width: 100%; }
.gm-reading-section > .gmf-planner, .gm-guide-preamble > .gmf-planner { grid-column: 1 / -1; }
.gm-table-wrap:focus-visible, .gm-material-matrix__rows:focus-visible { box-shadow: 0 0 0 6px var(--gm-white); outline: 3px solid #061f18; outline-offset: 2px; }
.gm-table-wrap table { background: var(--gm-paper); border-collapse: collapse; font-size: .82rem; min-width: 680px; width: 100%; }
.gm-table-wrap th, .gm-table-wrap td { border-bottom: 1px solid var(--gm-rule); padding: 14px 16px; text-align: left; vertical-align: top; }
.gm-table-wrap th { background: var(--gm-forest); color: var(--gm-white); font-size: .69rem; letter-spacing: .05em; }
.gm-table-wrap tr:nth-child(even) td { background: #f3efe6; }

.gm-affiliate-note { background: var(--gm-ochre-soft); border-left: 5px solid var(--gm-clay); grid-column: 2; margin-bottom: 42px; padding: 20px; }
.gm-affiliate-note strong { font-size: .73rem; text-transform: uppercase; }
.gm-affiliate-note p { font-size: .82rem; margin: 5px 0 !important; }
.gm-affiliate-note a { align-items: center; display: inline-flex; min-height: 44px; }

.gm-sources { border-bottom: 1px solid var(--gm-rule); border-top: 1px solid var(--gm-rule); grid-column: 2; margin-top: 30px; }
.gm-sources summary { align-items: center; cursor: pointer; display: flex; font-family: var(--gm-serif); font-size: 1.2rem; font-weight: 650; justify-content: space-between; min-height: 62px; }
.gm-sources summary b { font-family: var(--gm-sans); font-size: 1.4rem; }
.gm-sources[open] summary b { transform: rotate(45deg); }
.gm-sources > div { padding-bottom: 22px; }
.gm-sources p, .gm-sources li { font-size: .78rem; }

.gm-newsletter--inline { grid-column: 1 / -1; margin: 70px 0 0; max-width: none; padding: clamp(35px, 5vw, 60px); }
.gm-newsletter--inline .gm-newsletter__copy > strong { display: block; font-family: var(--gm-serif); font-size: clamp(1.8rem, 3.4vw, 3rem); font-weight: 560; line-height: 1.05; margin: 9px 0 12px; }
.gm-article-body .gm-newsletter--inline :where(p, li, label, small) { color: #bed0c9; }
.gm-article-body .gm-newsletter--inline a { color: var(--gm-white); }

.gm-related-reading { grid-column: 1 / -1; margin-top: 70px; }
.gm-related-reading > .gm-kicker { display: block; margin-bottom: 18px; }
.gm-related-reading__grid { display: grid; gap: 18px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gm-related-reading__grid > a { color: var(--gm-ink); text-decoration: none; }
.gm-related-reading figure { aspect-ratio: 4 / 3; margin-bottom: 13px; overflow: hidden; }
.gm-related-reading figure picture, .gm-related-reading figure img { height: 100%; width: 100%; }
.gm-related-reading img { object-fit: cover; }
.gm-related-reading a > span { color: var(--gm-clay); display: block; font-size: .62rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.gm-related-reading strong { display: block; font-family: var(--gm-serif); font-size: 1.22rem; line-height: 1.16; margin: 6px 0; }
.gm-related-reading small { color: var(--gm-muted); display: block; font-size: .72rem; line-height: 1.4; }

.gm-next-step-panel { align-items: center; background: var(--gm-ochre); display: grid; gap: 35px; grid-template-columns: 1fr auto; margin: 0; padding: clamp(34px, 5vw, 62px) var(--gm-gutter); }
.gm-next-step-panel div > span { display: block; font-size: .65rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-next-step-panel div > strong { display: block; font-family: var(--gm-serif); font-size: clamp(1.65rem, 2.8vw, 2.65rem); font-weight: 600; line-height: 1.08; max-width: 900px; }
.gm-next-step-panel > a { align-items: center; display: inline-flex; font-size: .82rem; font-weight: 820; min-height: 44px; }

/* Subject-specific visual systems */
.gm-visual-system { background: var(--gm-paper); border: 1px solid var(--gm-rule); grid-column: 1 / -1 !important; margin: clamp(35px, 6vw, 72px) auto; max-width: 1080px; padding: clamp(24px, 4vw, 44px); width: 100%; }
.gm-visual-system > header { border-bottom: 1px solid var(--gm-rule); margin-bottom: 28px; padding-bottom: 18px; }
.gm-visual-system > header > span { color: var(--gm-clay); font-size: .65rem; font-weight: 820; letter-spacing: .11em; text-transform: uppercase; }
.gm-visual-system h3 { font-family: var(--gm-serif); font-size: clamp(1.75rem, 3vw, 2.7rem); font-weight: 590; letter-spacing: -.04em; line-height: 1.05; margin: 8px 0 0; }
.gm-visual-note { color: var(--gm-muted) !important; font-size: .75rem; margin: 20px 0 0 !important; }

.gm-first-garden-stages ol { counter-reset: none; display: grid; gap: 10px; grid-template-columns: repeat(7, minmax(0, 1fr)); margin: 0; padding: 0; }
.gm-first-garden-stages__photos, .gm-season-band__crops { display: grid; gap: 12px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-bottom: 24px; }
.gm-first-garden-stages__crops { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 12px 0 28px; }
.gm-season-band__crops { grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 20px 0 0; }
.gm-first-garden-stages li { background: #f2ede3; list-style: none; margin: 0; min-width: 0; padding: 18px 14px; }
.gm-first-garden-stages li b { align-items: center; background: var(--gm-forest); border-radius: 50%; color: var(--gm-white); display: flex; font-size: .67rem; height: 28px; justify-content: center; margin-bottom: 25px; width: 28px; }
.gm-first-garden-stages li strong { display: block; font-family: var(--gm-serif); font-size: 1.08rem; line-height: 1.1; }
.gm-first-garden-stages li span { color: var(--gm-muted); display: block; font-size: .69rem; line-height: 1.35; margin-top: 8px; }
.gm-first-session-summary { align-items: center; background: var(--gm-forest); color: var(--gm-white); display: grid; gap: 18px 28px; grid-template-columns: auto 1fr auto; margin-top: 20px; padding: 20px; }
.gm-first-session-summary h4 { font-family: var(--gm-serif); font-size: 1.22rem; margin: 0; }
.gm-first-session-summary ul { display: flex; flex-wrap: wrap; font-size: .69rem; gap: 6px 20px; margin: 0; padding-left: 18px; }
.gm-article-body .gm-first-session-summary li { color: var(--gm-white); }
.gm-first-session-summary button { background: var(--gm-ochre); border: 0; color: var(--gm-ink); cursor: pointer; font-size: .7rem; font-weight: 820; min-height: 44px; padding: 10px 14px; }
.gm-print-copy { display: none; }

.gm-season-band__track { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gm-season-band__track > div { border: 1px solid var(--gm-rule); min-height: 150px; padding: 22px; }
.gm-season-band__track > div:nth-child(1) { background: #d9e7e5; }
.gm-season-band__track > div:nth-child(2) { background: var(--gm-ochre-soft); }
.gm-season-band__track > div:nth-child(3) { background: #e4ebdb; }
.gm-season-band__track > div:nth-child(4) { background: #f0c8a8; }
.gm-season-band__track b, .gm-season-band__track span { display: block; }
.gm-season-band__track b { font-family: var(--gm-serif); font-size: 1.2rem; }
.gm-season-band__track span { font-size: .74rem; margin-top: 24px; }
.gm-season-band > p { color: var(--gm-muted) !important; font-size: .76rem; margin: 16px 0 0 !important; }

.gm-climate-chooser__grid { display: grid; gap: 16px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gm-climate-chooser__grid > div { background: #fbf8f0; border-top: 6px solid var(--gm-teal); min-height: 295px; padding: 25px 22px 22px; }
.gm-climate-chooser__grid > div:nth-child(2) { border-top-color: var(--gm-ochre); }
.gm-climate-chooser__grid > div:nth-child(3) { border-top-color: #a95135; }
.gm-climate-chooser__grid b { color: var(--gm-muted); display: block; font-size: .66rem; letter-spacing: .1em; text-transform: uppercase; }
.gm-climate-chooser__grid strong { color: var(--gm-ink); display: block; font-family: var(--gm-serif); font-size: clamp(1.3rem, 2vw, 1.65rem); line-height: 1.02; margin: 18px 0 14px; }
.gm-climate-chooser__grid p { border-bottom: 1px solid var(--gm-border); font-size: .81rem; line-height: 1.55; margin: 0 0 18px !important; padding-bottom: 18px; }
.gm-climate-chooser__grid span { color: var(--gm-muted); display: block; font-size: .74rem; line-height: 1.5; }
.gm-climate-chooser__grid em { color: var(--gm-ink); font-style: normal; font-weight: 800; }

.gm-sun-day { background: #e9e2d3; overflow: hidden; }
.gm-sun-day > header { max-width: 640px; }
.gm-sun-note {
	background-color: #fffdf7;
	background-image: repeating-linear-gradient(to bottom, transparent 0, transparent 41px, rgba(49, 82, 71, .1) 42px);
	border: 1px solid #cfc4b0;
	box-shadow: 0 13px 28px rgba(35, 47, 40, .11);
	margin: 30px 6px 8px;
	padding: clamp(24px, 4vw, 42px) clamp(22px, 5vw, 54px) 34px;
	position: relative;
	transform: rotate(-.18deg);
}
.gm-sun-note::before {
	background: rgba(174, 86, 53, .55);
	bottom: 0;
	content: "";
	left: 22px;
	position: absolute;
	top: 0;
	width: 1px;
}
.gm-sun-note::after {
	background: #d9cda4;
	box-shadow: 0 1px 2px rgba(35, 47, 40, .18);
	content: "";
	height: 25px;
	left: 50%;
	opacity: .78;
	position: absolute;
	top: -13px;
	transform: translateX(-50%) rotate(1.5deg);
	width: 112px;
}
.gm-sun-note__mast { border-bottom: 2px solid var(--gm-forest); display: grid; gap: 18px; grid-template-columns: 1fr 1fr; padding: 0 0 18px; }
.gm-sun-note__mast p, .gm-sun-note__decision p, .gm-sun-note__entries p { margin: 0 !important; }
.gm-sun-note__mast span, .gm-sun-note__decision span { color: var(--gm-clay); display: block; font-size: .62rem; font-weight: 820; letter-spacing: .1em; margin-bottom: 3px; text-transform: uppercase; }
.gm-sun-note__mast strong { font-family: var(--gm-serif); font-size: 1.08rem; font-weight: 620; }
.gm-sun-note__entries { list-style: none; margin: 12px 0 20px !important; padding: 0 !important; }
.gm-sun-note__entries li { align-items: baseline; border-bottom: 1px dashed rgba(49, 82, 71, .3); display: grid; gap: 18px; grid-template-columns: minmax(82px, .27fr) 1fr; margin: 0 !important; padding: 13px 0 12px; }
.gm-sun-note__entries time { color: var(--gm-forest); font-family: var(--gm-serif); font-size: 1.02rem; font-weight: 700; white-space: nowrap; }
.gm-sun-note__entries strong { display: block; font-size: .78rem; letter-spacing: .02em; }
.gm-sun-note__entries span { color: var(--gm-muted); display: block; font-size: .74rem; line-height: 1.45; margin-top: 2px; }
.gm-sun-note__decision { background: var(--gm-forest); color: var(--gm-white); display: grid; gap: 1px; grid-template-columns: 1fr 1fr; }
.gm-sun-note__decision p { min-width: 0; padding: 17px 18px; }
.gm-sun-note__decision p + p { border-left: 1px solid rgba(255, 255, 255, .25); }
.gm-sun-note__decision span { color: #ead7a3; }
.gm-sun-note__decision strong { color: var(--gm-white); display: block; font-size: .76rem; line-height: 1.45; }
.gm-sun-day > .gm-visual-note { color: var(--gm-muted) !important; font-size: .75rem; margin: 18px 6px 0 !important; }

.gm-photo-library__grid, .gm-photo-atlas__grid { display: grid; gap: 12px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gm-photo-library__grid--six, .gm-photo-library__grid--crops { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gm-photo-atlas__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gm-photo-atlas__grid--six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gm-photo-atlas__grid--eight { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.gm-visual-tile { background: #f0ebe1; min-width: 0; }
.gm-visual-tile picture, .gm-visual-tile > img { aspect-ratio: 1; overflow: hidden; }
.gm-visual-tile img { aspect-ratio: 1; height: 100%; object-fit: cover; width: 100%; }
.gm-visual-tile figcaption { border: 0; padding: 14px; }
.gm-visual-tile figcaption span { color: var(--gm-clay); display: block; font-size: .59rem; font-weight: 820; letter-spacing: .09em; text-transform: uppercase; }
.gm-visual-tile figcaption strong { display: block; font-size: .73rem; line-height: 1.3; margin-top: 6px; }
.gm-visual-tile figcaption small { color: var(--gm-muted); display: block; font-size: .58rem; line-height: 1.35; margin-top: 8px; }
.gm-visual-tile figcaption .gm-license-credit a { color: inherit; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.gm-growth-stage-tile__image { position: relative; }
.gm-growth-stage-tile__image picture { display: block; }
.gm-growth-stage-tile__image img { object-position: 42% 50%; }
.gm-growth-stage-tile__new, .gm-growth-stage-tile__old { background: rgba(12, 52, 43, .92); color: var(--gm-white); font-size: .57rem; font-weight: 820; line-height: 1; padding: 7px 9px; position: absolute; }
.gm-growth-stage-tile__new { left: 42%; top: 10%; }
.gm-growth-stage-tile__old { right: 8%; top: 61%; }
.gm-growth-stage-tile__new::after, .gm-growth-stage-tile__old::after { border-left: 1px solid var(--gm-white); content: ""; height: 28px; left: 50%; position: absolute; top: 100%; transform: rotate(18deg); transform-origin: top; }
.gm-growth-stage-tile__old::after { height: 22px; top: auto; bottom: 100%; transform: rotate(-24deg); transform-origin: bottom; }
.gm-aphid-strip__photos { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gm-aphid-checks { display: grid; gap: 1px; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 20px 0 0; padding: 0; }
.gm-aphid-checks li { background: #edf2ee; list-style: none; margin: 0; min-width: 0; padding: 13px; }
.gm-aphid-checks b, .gm-aphid-checks span { display: block; }
.gm-aphid-checks b { font-size: .69rem; }
.gm-aphid-checks span { color: var(--gm-muted); font-size: .64rem; line-height: 1.35; margin-top: 4px; }

.gm-depth-cutaway__grid { display: grid; gap: 16px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gm-depth-cutaway__grid > article { min-width: 0; }
.gm-depth-cutaway__grid > article > strong { display: block; font-family: var(--gm-serif); font-size: 1.15rem; min-height: 56px; }
.gm-depth-section { background: #e9e2d6; border: 1px solid #b9aa98; display: grid; grid-template-rows: 52px auto 78px; margin: 14px 0; min-height: 340px; overflow: hidden; position: relative; }
.gm-depth-section__reach { align-items: center; border-bottom: 1px dashed #6e817a; color: var(--gm-forest); display: flex; font-size: .62rem; font-weight: 760; justify-content: center; padding: 9px 14px; text-align: center; }
.gm-depth-section__bed { background: #765139; border-left: 16px solid #476154; border-right: 16px solid #476154; color: var(--gm-white); display: flex; flex-direction: column; justify-content: center; min-height: 165px; padding: 24px 16px; position: relative; }
.gm-depth-section__bed::after { border: 2px solid rgba(255,255,255,.82); border-radius: 50% 50% 45% 45%; content: ""; height: 72px; left: 50%; position: absolute; top: 56%; transform: translate(-50%, -50%); width: 58%; }
.gm-depth-section__bed i { background: #173f34; font-size: .55rem; font-style: normal; left: -14px; padding: 4px 5px; position: absolute; top: 9px; writing-mode: vertical-rl; }
.gm-depth-section__bed b, .gm-depth-section__bed span { position: relative; text-align: center; z-index: 1; }
.gm-depth-section__bed b { font-size: .71rem; }
.gm-depth-section__bed span { font-size: .61rem; margin-top: 8px; }
.gm-depth-section__ground { background: repeating-linear-gradient(145deg, #92704f 0 12px, #866746 12px 24px); color: var(--gm-white); display: flex; flex-direction: column; justify-content: center; padding: 12px 16px; text-align: center; }
.gm-depth-section__ground b { font-size: .66rem; }
.gm-depth-section__ground span { font-size: .58rem; margin-top: 4px; }
.gm-depth-section--hard { grid-template-rows: 52px auto 58px; }
.gm-depth-section--hard .gm-depth-section__bed { min-height: 190px; }
.gm-depth-section--hard .gm-depth-section__ground { background: repeating-linear-gradient(135deg, #69706f 0 10px, #59605f 10px 20px); }
.gm-depth-section--access { grid-template-rows: 52px auto 62px; }
.gm-depth-section--access .gm-depth-section__bed { border-left-width: 22px; border-right-width: 22px; min-height: 210px; }
.gm-depth-cutaway__grid p { color: var(--gm-muted) !important; font-size: .72rem; line-height: 1.4; margin: 0 !important; }

.gm-material-matrix__photos { display: grid; gap: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.gm-material-matrix__photos figure { background: var(--gm-forest); color: var(--gm-white); }
.gm-material-matrix__photos img { aspect-ratio: 4 / 3; height: 100%; object-fit: cover; width: 100%; }
.gm-material-matrix__photos figcaption { display: flex; justify-content: space-between; padding: 12px 14px; }
.gm-material-matrix__photos figcaption span { color: #bfd0ca; font-size: .68rem; }
.gm-material-matrix__rows { border-top: 1px solid var(--gm-rule); overflow-x: auto; }
.gm-material-matrix__rows > div { display: grid; font-size: .74rem; gap: 16px; grid-template-columns: .6fr 1fr 1fr; padding: 13px 0; }
.gm-material-matrix__rows > div + div { border-top: 1px solid var(--gm-rule); }
.gm-material-matrix__head { background: var(--gm-forest); color: var(--gm-white); margin: 0 -14px; padding: 13px 14px !important; }

/* Lanes */
.gm-lane-page { margin: 0 auto; max-width: var(--gm-shell); padding: 0 var(--gm-gutter) 90px; }
.gm-lane-header { align-items: end; border-bottom: 1px solid var(--gm-rule); display: grid; gap: 45px; grid-template-columns: 1fr auto; margin: 0 auto; max-width: var(--gm-wide); padding: clamp(55px, 8vw, 110px) 0 36px; }
.gm-lane-header h1 { font-family: var(--gm-serif); font-size: clamp(3rem, 6vw, 6.5rem); font-weight: 540; letter-spacing: -.06em; line-height: .92; margin: 12px 0 16px; }
.gm-lane-header p { color: var(--gm-muted); margin: 0; max-width: 690px; }
.gm-lane-header nav { display: flex; flex-wrap: wrap; gap: 8px; }
.gm-lane-header nav a { align-items: center; border: 1px solid var(--gm-rule); display: inline-flex; font-size: .72rem; font-weight: 750; min-height: 44px; padding: 9px 13px; text-decoration: none; }
.gm-lane-header nav a[aria-current="page"] { background: var(--gm-forest); color: var(--gm-white); }

.gm-lane-feature { align-items: stretch; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(330px, .65fr); margin: 55px auto 95px; max-width: var(--gm-wide); }
.gm-lane-feature figure { min-height: 500px; overflow: hidden; }
.gm-lane-feature figure > a { display: block; min-height: inherit; }
.gm-lane-feature figure a, .gm-lane-feature picture, .gm-lane-feature img { height: 100%; width: 100%; }
.gm-lane-feature img { object-fit: cover; }
.gm-lane-feature > div { background: var(--gm-forest); color: var(--gm-white); display: flex; flex-direction: column; justify-content: center; padding: clamp(35px, 5vw, 70px); }
.gm-lane-feature > div > span { color: var(--gm-ochre-soft); font-size: .66rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-lane-feature h2 { font-family: var(--gm-serif); font-size: clamp(2.3rem, 4vw, 4.2rem); font-weight: 540; letter-spacing: -.052em; line-height: .98; margin: 14px 0 19px; }
.gm-lane-feature h2 a { text-decoration: none; }
.gm-lane-feature p { color: #c7d6d1; }
.gm-lane-feature .gm-primary-action { align-self: start; margin-top: 18px; }

.gm-curated-groups, .gm-symptom-chooser, .gm-lane-workbench { margin: 0 auto; max-width: var(--gm-wide); }
.gm-curated-group { border-top: 1px solid var(--gm-rule); display: grid; gap: 35px; grid-template-columns: 220px 1fr; padding: 52px 0; }
.gm-curated-group header span { color: var(--gm-clay); font-size: .65rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.gm-curated-group h2 { font-family: var(--gm-serif); font-size: 1.7rem; font-weight: 600; line-height: 1.1; margin: 8px 0; }
.gm-guide-card-grid { display: grid; gap: 22px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.gm-guide-card { color: var(--gm-ink); text-decoration: none; }
.gm-guide-card figure { aspect-ratio: 4 / 3; margin-bottom: 15px; overflow: hidden; }
.gm-guide-card figure picture, .gm-guide-card figure img { height: 100%; width: 100%; }
.gm-guide-card img { object-fit: cover; }
.gm-guide-card span { color: var(--gm-clay); font-size: .61rem; font-weight: 780; letter-spacing: .08em; text-transform: uppercase; }
.gm-guide-card h3 { font-family: var(--gm-serif); font-size: 1.35rem; font-weight: 600; line-height: 1.12; margin: 8px 0; }
.gm-guide-card p { color: var(--gm-muted); font-size: .76rem; line-height: 1.45; }
.gm-guide-card b { font-size: .72rem; }

.gm-symptom-chooser > header { max-width: 760px; }
.gm-symptom-chooser h2, .gm-lane-workbench h2 { font-family: var(--gm-serif); font-size: clamp(2.4rem, 4.5vw, 4.8rem); font-weight: 550; letter-spacing: -.052em; line-height: .98; margin: 12px 0 18px; }
.gm-symptom-chooser__grid { display: grid; gap: 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 38px; }
.gm-symptom-chooser__grid > a { background: var(--gm-paper); color: var(--gm-ink); text-decoration: none; }
.gm-symptom-chooser__grid figure { aspect-ratio: 3 / 2; overflow: hidden; }
.gm-symptom-chooser__grid figure picture, .gm-symptom-chooser__grid img { height: 100%; width: 100%; }
.gm-symptom-chooser__grid img { object-fit: cover; }
.gm-symptom-chooser__grid > a > div { padding: 25px; }
.gm-symptom-chooser__grid span { color: var(--gm-clay); font-size: .64rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.gm-symptom-chooser__grid h3 { font-family: var(--gm-serif); font-size: 1.8rem; line-height: 1.08; margin: 9px 0; }
.gm-symptom-chooser__grid p { color: var(--gm-muted); font-size: .82rem; }

.gm-lane-workbench { align-items: start; display: grid; gap: clamp(35px, 6vw, 80px); grid-template-columns: minmax(300px, .65fr) minmax(0, 1.35fr); }
.gm-lane-workbench > * { min-width: 0; }
.gm-lane-workbench__copy { position: sticky; top: 28px; }
.gm-lane-workbench__copy ol { padding-left: 1.2em; }
.gm-lane-workbench__copy li { margin: .5em 0; }
.gm-lane-workbench .gm-visual-system { margin: 0; }

.gm-lane-email { align-items: center; background: var(--gm-ochre-soft); display: grid; gap: 30px; grid-template-columns: 1fr auto; margin: 90px auto 0; max-width: var(--gm-wide); padding: 35px; }
.gm-lane-email span { font-size: .65rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-lane-email h2 { font-family: var(--gm-serif); font-size: clamp(1.8rem, 3vw, 3rem); line-height: 1; margin: 8px 0; }
.gm-lane-email p { margin: 0; }
.gm-lane-email > a { align-items: center; display: inline-flex; font-weight: 820; min-height: 44px; }

/* About and policy pages */
.gm-core-page { margin: 0 auto; max-width: var(--gm-shell); }
.gm-about-hero { background: var(--gm-forest); color: var(--gm-white); padding: clamp(70px, 10vw, 145px) var(--gm-gutter); }
.gm-about-hero .gm-kicker { color: var(--gm-ochre-soft); }
.gm-about-hero h1 { font-family: var(--gm-serif); font-size: clamp(3.1rem, 7vw, 7.2rem); font-weight: 520; letter-spacing: -.065em; line-height: .9; margin: 15px 0 25px; max-width: 1100px; }
.gm-about-hero p { color: #d8e5e0; font-size: 1.1rem; max-width: 720px; }
.gm-about-hero .gm-primary-action { margin-top: 20px; }

.gm-about-problem, .gm-about-lanes, .gm-about-method { margin: 0 auto; max-width: var(--gm-wide); padding: clamp(65px, 9vw, 120px) var(--gm-gutter); }
.gm-about-problem { display: grid; gap: 50px; grid-template-columns: 1fr 1fr; }
.gm-about-problem h2, .gm-about-lanes h2, .gm-about-method h2 { font-family: var(--gm-serif); font-size: clamp(2.3rem, 4vw, 4.3rem); font-weight: 560; letter-spacing: -.05em; line-height: 1; margin: 12px 0; }
.gm-about-problem p { color: var(--gm-muted); font-family: var(--gm-serif); font-size: 1.18rem; }

.gm-about-lanes { border-top: 1px solid var(--gm-rule); }
.gm-about-lanes > div { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin-top: 35px; }
.gm-about-lanes a { border: 1px solid var(--gm-rule); display: flex; flex-direction: column; min-height: 230px; padding: 24px; text-decoration: none; }
.gm-about-lanes a + a { border-left: 0; }
.gm-about-lanes b { color: var(--gm-clay); font-size: .68rem; }
.gm-about-lanes strong { font-family: var(--gm-serif); font-size: 2rem; margin-top: auto; }
.gm-about-lanes span { color: var(--gm-muted); font-size: .74rem; }

.gm-about-method { align-items: start; background: var(--gm-paper); display: grid; gap: 60px; grid-template-columns: .8fr 1.2fr; max-width: none; padding-left: max(var(--gm-gutter), calc((100% - var(--gm-wide)) / 2)); padding-right: max(var(--gm-gutter), calc((100% - var(--gm-wide)) / 2)); }
.gm-about-method ol { display: grid; gap: 10px; margin: 0; padding: 0; }
.gm-about-method li { align-items: start; border-top: 1px solid var(--gm-rule); display: grid; gap: 15px; grid-template-columns: 34px 1fr; list-style: none; padding: 17px 0; }
.gm-about-method li b { align-items: center; background: var(--gm-forest); border-radius: 50%; color: var(--gm-white); display: flex; font-size: .65rem; grid-row: span 2; height: 30px; justify-content: center; width: 30px; }
.gm-about-method li strong { font-family: var(--gm-serif); font-size: 1.18rem; }
.gm-about-method li span { color: var(--gm-muted); font-size: .78rem; }
.gm-founder-panel--about { max-width: var(--gm-wide); }
.gm-founder-panel--about a { align-items: center; display: inline-flex; min-height: 44px; }

.gm-policy-header { border-bottom: 1px solid var(--gm-rule); margin: 0 auto; max-width: var(--gm-wide); padding: clamp(55px, 8vw, 105px) var(--gm-gutter) 38px; }
.gm-policy-header > span { color: var(--gm-clay); font-size: .66rem; font-weight: 820; letter-spacing: .12em; text-transform: uppercase; }
.gm-policy-header h1 { font-family: var(--gm-serif); font-size: clamp(3rem, 5vw, 5.6rem); font-weight: 550; letter-spacing: -.055em; line-height: .95; margin: 10px 0 18px; }
.gm-policy-header p { color: var(--gm-muted); margin: 0; max-width: 720px; }
.gm-policy-layout { align-items: start; display: grid; gap: clamp(35px, 6vw, 90px); grid-template-columns: 230px minmax(0, 760px); margin: 0 auto; max-width: var(--gm-wide); padding: clamp(45px, 7vw, 90px) var(--gm-gutter) 110px; }
.gm-policy-nav { display: grid; position: sticky; top: 25px; }
.gm-policy-nav span { color: var(--gm-muted); font-size: .64rem; font-weight: 820; letter-spacing: .1em; margin-bottom: 10px; text-transform: uppercase; }
.gm-policy-nav a { align-items: center; border-top: 1px solid var(--gm-rule); display: flex; font-size: .76rem; min-height: 44px; padding: 11px 0; text-decoration: none; }
.gm-policy-nav a[aria-current="page"] { color: var(--gm-clay); font-weight: 820; }
.gm-policy-body section + section { border-top: 1px solid var(--gm-rule); margin-top: 38px; padding-top: 38px; }
.gm-policy-body h2 { font-family: var(--gm-serif); font-size: clamp(1.8rem, 2.7vw, 2.6rem); font-weight: 600; letter-spacing: -.035em; line-height: 1.08; margin: 0 0 15px; }
.gm-policy-body p { color: #33463f; }
.gm-contact-card { background: var(--gm-paper); border-top: 6px solid var(--gm-ochre); padding: 32px; }
.gm-contact-card > span { color: var(--gm-clay); display: block; font-size: .65rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.gm-contact-card > a { align-items: center; display: inline-flex; font-family: var(--gm-serif); font-size: clamp(1.5rem, 3vw, 2.5rem); margin: 9px 0 22px; min-height: 44px; overflow-wrap: anywhere; }
.gm-generic-page__body { margin: 0 auto; max-width: 760px; padding: clamp(45px, 7vw, 90px) var(--gm-gutter) 110px; }

/* Search */
.gm-search-page { margin: 0 auto; max-width: var(--gm-shell); padding: 0 var(--gm-gutter) 110px; }
.gm-search-page__header { margin: 0 auto; max-width: var(--gm-wide); padding: clamp(55px, 8vw, 105px) 0 35px; }
.gm-search-page__header h1 { font-family: var(--gm-serif); font-size: clamp(2.8rem, 5vw, 5.4rem); font-weight: 550; letter-spacing: -.055em; line-height: .95; margin: 10px 0 16px; overflow-wrap: anywhere; }
.gm-search-page__header p { color: var(--gm-muted); }
.gm-search-page-form { background: var(--gm-forest); color: var(--gm-white); margin: 0 auto 65px; max-width: var(--gm-wide); padding: clamp(25px, 4vw, 45px); }
.gm-search-page-form label { display: block; font-family: var(--gm-serif); font-size: 1.4rem; margin-bottom: 14px; }
.gm-search-page-form > div { display: flex; }
.gm-search-page-form input { border: 0; flex: 1; min-height: 52px; min-width: 0; padding: 12px 14px; }
.gm-search-page-form button { background: var(--gm-ochre); border: 0; font-weight: 820; padding: 12px 20px; }
.gm-search-results, .gm-search-empty { margin: 0 auto; max-width: var(--gm-wide); }
.gm-search-results > h2 { font-family: var(--gm-serif); font-size: 2rem; margin-bottom: 25px; }
.gm-search-results__grid { display: grid; gap: 0; }
.gm-search-result { border-top: 1px solid var(--gm-rule); display: grid; gap: 28px; grid-template-columns: 260px minmax(0, 1fr); padding: 28px 0; }
.gm-search-result__image { aspect-ratio: 4 / 3; overflow: hidden; }
.gm-search-result__image picture, .gm-search-result__image img { height: 100%; width: 100%; }
.gm-search-result__image img { object-fit: cover; }
.gm-search-result div > span { color: var(--gm-clay); font-size: .63rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.gm-search-result h3 { font-family: var(--gm-serif); font-size: 1.65rem; line-height: 1.08; margin: 7px 0; }
.gm-search-result h3 a { text-decoration: none; }
.gm-search-result p { color: var(--gm-muted); font-size: .82rem; margin: 8px 0; }
.gm-search-result div > a { align-items: center; display: inline-flex; font-size: .75rem; font-weight: 780; min-height: 44px; }
.gm-search-empty { background: var(--gm-paper); border-top: 6px solid var(--gm-ochre); padding: clamp(30px, 5vw, 60px); }
.gm-search-empty > span { color: var(--gm-clay); font-size: .66rem; font-weight: 820; letter-spacing: .1em; text-transform: uppercase; }
.gm-search-empty h2 { font-family: var(--gm-serif); font-size: clamp(2rem, 3.5vw, 3.4rem); line-height: 1; margin: 12px 0; }
.gm-search-empty > div { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 25px; }
.gm-search-empty > div a { align-items: center; border: 1px solid var(--gm-rule); display: inline-flex; font-size: .74rem; font-weight: 750; min-height: 44px; padding: 9px 13px; text-decoration: none; }

/* Footer */
.gm-site-footer { background: #08271f; color: var(--gm-white); }
.gm-footer-main { display: grid; gap: clamp(30px, 5vw, 70px); grid-template-columns: 1.35fr .55fr .75fr 1fr; margin: 0 auto; max-width: var(--gm-shell); padding: clamp(55px, 8vw, 100px) var(--gm-gutter); }
.gm-footer-brand p { color: #aec2ba; font-size: .77rem; margin: 14px 0 25px; }
.gm-footer-brand .gm-founder-identity { color: #c7d5d0; font-size: .72rem; margin-bottom: 0; max-width: 340px; }
.gm-footer-brand > strong { color: #c7d5d0; display: block; font-size: .72rem; font-weight: 620; max-width: 310px; }
.gm-footer-main nav { display: flex; flex-direction: column; }
.gm-footer-main nav > span, .gm-footer-notes > span { color: var(--gm-ochre-soft); font-size: .62rem; font-weight: 820; letter-spacing: .1em; margin-bottom: 10px; text-transform: uppercase; }
.gm-footer-main nav a { align-items: center; color: #d6e1dd; display: flex; font-size: .75rem; min-height: 44px; text-decoration: none; }
.gm-footer-notes { border-top: 1px solid #49645b; display: flex; flex-direction: column; padding-top: 17px; text-decoration: none; }
.gm-footer-notes strong { font-family: var(--gm-serif); font-size: 1.45rem; font-weight: 560; line-height: 1.15; }
.gm-footer-notes b { color: var(--gm-ochre); margin-top: 20px; }
.gm-footer-base { border-top: 1px solid #49645b; color: #8ca69d; display: flex; font-size: .65rem; justify-content: space-between; margin: 0 auto; max-width: var(--gm-shell); padding: 16px var(--gm-gutter) 20px; }
.gm-site-footer .gm-brand-lockup { align-items: center; color: var(--gm-white); min-height: 44px; }
.gmf-subscribe .formkit-powered-by-convertkit { align-items: center !important; display: inline-flex !important; min-height: 44px !important; padding-block: 4px !important; }

.nav-links { display: flex; gap: 9px; justify-content: center; margin-top: 45px; }
.nav-links a, .nav-links span { border: 1px solid var(--gm-rule); min-height: 44px; min-width: 44px; padding: 8px 12px; text-align: center; text-decoration: none; }
.nav-links .current { background: var(--gm-forest); color: var(--gm-white); }

@media (max-width: 1180px) {
	.gm-header-shell { gap: 18px; grid-template-columns: minmax(215px, 1fr) auto auto; }
	.gm-header-utility { display: none; }
	.gm-home-hero { grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr); }
	.gm-home-seasonal__grid { grid-template-columns: 1.2fr repeat(2, .8fr); }
	.gm-first-garden-stages ol { grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.gm-guide-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 980px) {
	.gm-home-hero { grid-template-columns: 1fr 1fr; }
	.gm-home-hero h1 { font-size: clamp(2.8rem, 6vw, 4.4rem); }
	.gm-home-seasonal__grid { grid-template-columns: 1fr 1fr; }
	.gm-seasonal-feature { grid-column: 1 / -1; }
	.gm-home-shelf__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); row-gap: 35px; }
	.gm-article-opening { grid-template-columns: minmax(0, .85fr) minmax(360px, 1.15fr); }
	.gm-guide-glance { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-guide-glance > div:nth-child(2) { border-right: 0; }
	.gm-guide-glance > div:nth-child(-n+2) { border-bottom: 1px solid var(--gm-rule); }
	.gm-article-jumps ol { columns: 2; }
	.gm-curated-group { grid-template-columns: 170px 1fr; }
	.gm-lane-workbench { grid-template-columns: .75fr 1.25fr; }
}

@media (max-width: 820px) {
	body { font-size: 17px; }
	.gm-header-shell { grid-template-columns: 1fr auto; min-height: 76px; }
	.gm-nav, .gm-start-link, .gm-header-utility { display: none; }
	.gm-mobile-nav { display: block; }
	.gm-mobile-nav summary { align-items: center; background: var(--gm-forest); color: var(--gm-white); cursor: pointer; display: flex; font-size: .75rem; font-weight: 820; gap: 15px; list-style: none; min-height: 48px; padding: 10px 14px; }
	.gm-mobile-nav summary::-webkit-details-marker { display: none; }
	.gm-mobile-nav[open] summary b { transform: rotate(45deg); }
	.gm-mobile-nav__panel { background: var(--gm-paper); border: 1px solid var(--gm-rule); box-shadow: var(--gm-shadow); display: grid; gap: 0; inset-inline: var(--gm-gutter); padding: 18px; position: absolute; top: calc(100% - 4px); z-index: 50; }
	.gm-mobile-nav__panel > a, .gm-mobile-nav__panel nav a { border-bottom: 1px solid var(--gm-rule); display: flex; justify-content: space-between; min-height: 48px; padding: 12px 0; text-decoration: none; }
	.gm-mobile-nav__panel nav { display: grid; }
	.gm-mobile-nav__panel nav a span, .gm-mobile-begin span { color: var(--gm-muted); font-size: .7rem; }
	.gm-search--mobile { margin-top: 14px; }
	.gm-search--mobile input { width: 100%; }

	.gm-home-hero { display: flex; flex-direction: column; }
	.gm-home-hero__image { min-height: min(62vh, 560px); order: 1; }
	.gm-home-hero__copy { min-height: 520px; order: 2; padding: 46px var(--gm-gutter); }
	.gm-home-season { margin-top: 42px; }
	.gm-section-heading { align-items: start; grid-template-columns: 1fr; }
	.gm-home-routes__grid { grid-template-columns: 1fr; }
	.gm-route-card, .gm-route-card--grow, .gm-route-card--buy { min-height: 470px; }
	.gm-home-begin { grid-template-columns: 1fr; }
	.gm-home-begin__intro, .gm-lane-workbench__copy, .gm-policy-nav { position: static; }
	.gm-home-two-stories { grid-template-columns: 1fr; }
	.gm-home-two-stories > a { min-height: 560px; }
	.gm-founder-panel { grid-template-columns: .55fr 1.45fr; }
	.gm-newsletter { grid-template-columns: 1fr; }

	.gm-article-opening { grid-template-columns: 1fr; }
	.gm-article-opening__copy { max-width: 680px; }
	.gm-article-opening__media { max-width: 760px; }
	.gm-article-jumps { grid-template-columns: 1fr; }
	.gm-article-jumps ol { columns: 2; }
	.gm-article-body { grid-template-columns: minmax(0, 1fr); }
	.gm-article-body > *, .gm-guide-preamble > *, .gm-reading-section > * { grid-column: 1; }
	.gm-guide-preamble, .gm-reading-section { grid-template-columns: minmax(0, 1fr); }
	.gm-media-placement, .gm-table-wrap, .gm-visual-system { grid-column: 1 !important; }
	.gm-newsletter--inline, .gm-related-reading { grid-column: 1; }
	.gm-next-step-panel { grid-template-columns: 1fr; }
	.gm-photo-library__grid, .gm-photo-library__grid--six, .gm-photo-library__grid--crops { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-photo-atlas__grid--eight { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-first-garden-stages__crops, .gm-aphid-strip__photos { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-first-garden-stages ol { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-season-band__crops { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-climate-chooser__grid { grid-template-columns: 1fr; }
	.gm-first-session-summary { grid-template-columns: 1fr; }
	.gm-aphid-checks { grid-template-columns: repeat(2, minmax(0, 1fr)); }

	.gm-lane-header { align-items: start; grid-template-columns: 1fr; }
	.gm-lane-feature { grid-template-columns: 1fr; }
	.gm-lane-feature figure { min-height: 430px; }
	.gm-curated-group { grid-template-columns: 1fr; }
	.gm-lane-workbench { grid-template-columns: 1fr; }
	.gm-lane-email { grid-template-columns: 1fr; }

	.gm-about-problem, .gm-about-method { grid-template-columns: 1fr; }
	.gm-about-lanes > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-about-lanes a:nth-child(3) { border-left: 1px solid var(--gm-rule); }
	.gm-about-lanes a:nth-child(n+3) { border-top: 0; }
	.gm-policy-layout { grid-template-columns: 1fr; }
	.gm-policy-nav { display: flex; flex-wrap: wrap; gap: 8px; }
	.gm-policy-nav span { flex-basis: 100%; }
	.gm-policy-nav a { border: 1px solid var(--gm-rule); padding: 8px 11px; }

	.gm-footer-main { grid-template-columns: 1.25fr repeat(2, .75fr); }
	.gm-footer-notes { grid-column: 1 / -1; }
}

@media (max-width: 600px) {
	:root { --gm-gutter: 20px; }
	body { font-size: 16.5px; }
	.gm-brand small { display: none; }
	.gm-brand-lockup { font-size: 1.38rem; }
	.gm-home-hero__image { min-height: 47vh; }
	.gm-home-hero__copy { min-height: 0; }
	.gm-home-hero h1 { font-size: clamp(2.65rem, 13vw, 4rem); }
	.gm-home-hero__actions { align-items: stretch; flex-direction: column; }
	.gm-home-season { grid-template-columns: 1fr auto; }
	.gm-home-season span { grid-column: 1 / -1; }
	.gm-section-heading h2 { font-size: clamp(2.25rem, 11vw, 3.7rem); }
	.gm-route-card, .gm-route-card--grow, .gm-route-card--buy { min-height: 420px; }
	.gm-route-card h3 { font-size: 2.35rem; }
	.gm-home-seasonal__grid { grid-template-columns: 1fr; }
	.gm-seasonal-feature { grid-column: auto; }
	.gm-home-shelf__grid { grid-template-columns: 1fr 1fr; }
	.gm-home-shelf__grid strong { font-size: 1.05rem; }
	.gm-home-two-stories > a { min-height: 500px; }
	.gm-founder-panel { grid-template-columns: 1fr; }
	.gm-founder-panel__mark { max-width: 240px; }
	.gm-newsletter__form form { display: grid; }

	.gm-article { padding-top: 12px; }
	.gm-article-opening h1 { font-size: clamp(2.55rem, 13vw, 4rem); }
	.gm-guide-glance { grid-template-columns: 1fr; }
	.gm-guide-glance > div { border-bottom: 1px solid var(--gm-rule); border-right: 0; }
	.gm-guide-glance > div:last-child { border-bottom: 0; }
	.gm-article-jumps ol { columns: 1; }
	.gm-article-body { padding-top: 48px; }
	.gm-reading-section { padding: 50px 0; }
	.gm-article-body h2 { font-size: clamp(2rem, 10vw, 3rem); }
	.gm-table-wrap table { min-width: 620px; }
	.gm-newsletter--inline { padding: 30px 22px; }
	.gm-related-reading__grid { grid-template-columns: 1fr; }
	.gm-next-step-panel { padding-inline: 20px; }
	.gm-first-garden-stages ol, .gm-photo-library__grid, .gm-photo-library__grid--six, .gm-photo-library__grid--crops, .gm-photo-atlas__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-first-garden-stages__photos, .gm-climate-chooser__grid, .gm-depth-cutaway__grid, .gm-material-matrix__photos { grid-template-columns: 1fr; }
	.gm-season-band__crops { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-first-garden-stages li { min-height: 150px; }
	.gm-season-band__track { grid-template-columns: 1fr; }
	.gm-sun-note { margin-inline: 0; padding-inline: 24px 18px; transform: none; }
	.gm-sun-note::before { left: 14px; }
	.gm-sun-note__mast, .gm-sun-note__decision { grid-template-columns: 1fr; }
	.gm-sun-note__decision p + p { border-left: 0; border-top: 1px solid rgba(255, 255, 255, .25); }
	.gm-sun-note__entries li { gap: 6px; grid-template-columns: 1fr; }
	.gm-material-matrix__rows { overflow-x: auto; }
	.gm-material-matrix__rows > div { gap: 12px; grid-template-columns: minmax(105px, .6fr) minmax(170px, 1fr) minmax(170px, 1fr); min-width: 510px; }

	.gm-lane-header h1 { font-size: clamp(2.8rem, 14vw, 4.4rem); }
	.gm-lane-feature figure { min-height: 330px; }
	.gm-guide-card-grid, .gm-symptom-chooser__grid { grid-template-columns: 1fr; }
	.gm-about-hero h1 { font-size: clamp(3rem, 14vw, 5rem); }
	.gm-about-lanes > div { grid-template-columns: 1fr; }
	.gm-about-lanes a + a { border-left: 1px solid var(--gm-rule); border-top: 0; }
	.gm-about-method { padding-left: var(--gm-gutter); padding-right: var(--gm-gutter); }
	.gm-policy-header h1 { font-size: clamp(2.8rem, 13vw, 4.5rem); }
	.gm-search-result { grid-template-columns: 110px minmax(0, 1fr); }
	.gm-search-result h3 { font-size: 1.3rem; }
	.gm-search-result p { display: none; }
	.gm-search-page-form > div { display: grid; }
	.gm-footer-main { grid-template-columns: 1fr 1fr; }
	.gm-footer-brand, .gm-footer-notes { grid-column: 1 / -1; }
	.gm-footer-base { align-items: start; flex-direction: column; gap: 4px; }
}

@media (max-width: 360px) {
	.gm-brand-lockup { font-size: 1.2rem; }
	.gm-mobile-nav summary { gap: 8px; padding-inline: 11px; }
	.gm-home-shelf__grid { grid-template-columns: 1fr; }
	.gm-search-result { grid-template-columns: 88px minmax(0, 1fr); gap: 16px; }
	.gm-footer-main { grid-template-columns: 1fr; }
	.gm-footer-main > * { grid-column: 1; }
	.gm-first-garden-stages ol, .gm-first-garden-stages__crops, .gm-photo-library__grid, .gm-photo-library__grid--six, .gm-photo-library__grid--crops, .gm-photo-atlas__grid, .gm-season-band__crops, .gm-aphid-checks { grid-template-columns: 1fr; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; scroll-behavior: auto !important; transition-duration: .01ms !important; }
}

@page { size: A4; margin: 14mm; }

@media print {
	.gm-site-header, .gm-site-footer, .gm-guide-navigation, .gm-newsletter, .gm-related-reading, .gm-next-step-panel { display: none !important; }
	body { background: #fff; color: #000; font-size: 11pt; }
	.gm-article { max-width: none; padding: 0; }
	.gm-article-body, .gm-guide-preamble, .gm-reading-section { display: block; }
	.gm-first-session-summary button { display: none; }
	body.gm-print-summary > :not(.gm-print-copy) { display: none !important; }
	body.gm-print-summary { margin: 0; }
	body.gm-print-summary > .gm-print-copy {
		background: #fbf7ee !important;
		border: 2px solid #0b3b31;
		box-sizing: border-box;
		color: #102f29 !important;
		display: grid !important;
		grid-template-rows: auto auto auto 1fr;
		margin: 0;
		min-height: 269mm;
		padding: 15mm;
		width: 100%;
	}
	body.gm-print-summary > .gm-print-copy::before {
		color: #a84929;
		content: "HOW GARDENS WORK  |  BEGIN HERE";
		font-family: var(--gm-sans);
		font-size: 9pt;
		font-weight: 800;
		letter-spacing: .12em;
	}
	body.gm-print-summary > .gm-print-copy h4 { font-size: 30pt; margin: 8mm 0 0; }
	body.gm-print-summary > .gm-print-copy h4::after {
		color: #53665f;
		content: "Use this sheet to turn the first garden session into five manageable actions.";
		display: block;
		font-family: var(--gm-sans);
		font-size: 11pt;
		font-weight: 400;
		line-height: 1.5;
		margin-top: 4mm;
		max-width: 135mm;
	}
	body.gm-print-summary > .gm-print-copy ul {
		display: grid !important;
		font-family: var(--gm-sans);
		font-size: 13pt;
		gap: 0;
		list-style: none;
		margin: 12mm 0 0;
		padding: 0;
	}
	body.gm-print-summary > .gm-print-copy li {
		border-top: 1px solid #c7c7bd;
		color: #102f29 !important;
		padding: 5mm 0 5mm 12mm;
		position: relative;
	}
	body.gm-print-summary > .gm-print-copy li::before {
		border: 1.5px solid #0b3b31;
		content: "";
		height: 6mm;
		left: 0;
		position: absolute;
		top: 4.5mm;
		width: 6mm;
	}
	body.gm-print-summary > .gm-print-copy::after {
		align-self: end;
		color: #102f29;
		content: "Site or ZIP: _________________________________________________\A\A Date: ____________________    First crops: _________________________________\A\A Notes\A__________________________________________________________________\A\A__________________________________________________________________\A\A__________________________________________________________________";
		font-family: var(--gm-sans);
		font-size: 11pt;
		line-height: 1.45;
		padding-top: 10mm;
		white-space: pre-wrap;
	}
}

/* Commercial Editorial Experience V3. These screen rules intentionally sit
 * after the retained print system so the launch fixture remains printable. */
@media screen {
	body { background: #fffefa; }
	main { min-width: 0; }
	:where(h1, h2, h3, .gm-brand-lockup, .gm-newsletter__copy > strong) { font-family: var(--gm-display); }
	:where(a, button, summary) { -webkit-tap-highlight-color: rgba(223, 169, 44, .22); }

	.gm-site-header {
		background: rgba(255, 254, 250, .97);
		border-bottom: 1px solid #d8d3c7;
		position: sticky;
		top: 0;
		z-index: 100;
	}
	.admin-bar .gm-site-header { top: 32px; }
	.gm-header-shell {
		gap: clamp(18px, 2.8vw, 42px);
		grid-template-columns: auto minmax(250px, 1fr) auto auto;
		min-height: 84px;
		padding-bottom: 0;
		padding-top: 0;
	}
	.gm-brand-lockup {
		align-items: baseline;
		display: inline-flex;
		font-family: var(--gm-display);
		font-size: 1.32rem;
		gap: .23em;
		letter-spacing: -.045em;
		line-height: 1;
		white-space: nowrap;
	}
	.gm-brand-lockup i {
		color: var(--gm-clay);
		font-family: var(--gm-display);
		font-size: 1.02em;
		font-variation-settings: "SOFT" 80, "WONK" 1;
		font-weight: 720;
	}
	.gm-brand-lockup i::after { display: none; }
	.gm-brand-lockup span { font-weight: 690; }
	.gm-nav { gap: clamp(6px, 1.2vw, 20px); justify-content: center; }
	.gm-nav a {
		border-bottom-width: 3px;
		font-size: .78rem;
		font-weight: 760;
		letter-spacing: .015em;
		padding: 0 5px;
	}
	.gm-header-utility { align-items: center; display: flex; gap: 17px; }
	.gm-search { border: 1px solid #bdb8ac; border-radius: 999px; overflow: hidden; }
	.gm-search input {
		background: transparent;
		border: 0;
		font-size: .75rem;
		min-height: 44px;
		padding: 8px 4px 8px 15px;
		width: 138px;
	}
	.gm-search button {
		background: transparent;
		color: var(--gm-forest);
		font-size: .7rem;
		min-height: 44px;
		padding: 8px 13px 8px 8px;
	}
	.gm-header-notes {
		font-size: .72rem;
		font-weight: 760;
		min-height: 44px;
	}
	.gm-start-link {
		background: var(--gm-forest);
		border: 0;
		color: #fff;
		font-size: .73rem;
		font-weight: 820;
		min-height: 46px;
		padding: 10px 17px;
	}
	.gm-start-link:hover { background: var(--gm-clay); color: #fff; }

	.gm-primary-action, .gm-secondary-action {
		align-items: center;
		display: inline-flex;
		font-size: .76rem;
		font-weight: 820;
		justify-content: center;
		min-height: 48px;
		padding: 11px 18px;
		text-decoration: none;
	}
	.gm-primary-action { background: var(--gm-ochre); color: #172b25; }
	.gm-primary-action:hover { background: #efbe42; }
	.gm-secondary-action { border: 1px solid currentColor; color: inherit; }
	.gm-text-link { font-size: .78rem; font-weight: 820; }
	.gm-kicker, .gm-section-heading > span, .gm-story-label span,
	.gm-entry-card > div > span, .gm-now-feature > div > span,
	.gm-now-stack span, .gm-start-card span, .gm-home-fix span,
	.gm-project-card span, .gm-lane-hero__copy > span,
	.gm-lane-feature > div > span, .gm-curated-group > header span,
	.gm-symptom-chooser > header span, .gm-lane-story span,
	.gm-about-hero > span, .gm-about-intro > div > span,
	.gm-about-lanes > header > span, .gm-founder-profile > div > span,
	.gm-policy-header > span, .gm-search-page__header > span {
		font-size: .67rem;
		font-weight: 850;
		letter-spacing: .12em;
		text-transform: uppercase;
	}
	.gm-section-heading { margin: 0 auto 34px; max-width: var(--gm-wide); }
	.gm-section-heading h2 {
		font-family: var(--gm-display);
		font-size: clamp(2.35rem, 4.5vw, 4.9rem);
		font-variation-settings: "SOFT" 80, "WONK" 1;
		font-weight: 620;
		letter-spacing: -.055em;
		line-height: .94;
		margin: 10px 0 15px;
		max-width: 900px;
	}
	.gm-section-heading p { color: var(--gm-muted); margin: 0; max-width: 690px; }
	.gm-section-heading--compact { align-items: end; display: grid; gap: 18px 30px; grid-template-columns: 160px 1fr; }
	.gm-section-heading--compact h2 { margin: 0; }
	.gm-section-heading--light > span { color: var(--gm-ochre-soft); }
	.gm-section-heading--light :where(h2, p) { color: #fff; }

	.gm-v3-hero {
		color: #fff;
		display: grid;
		isolation: isolate;
		margin: 0 auto;
		max-width: var(--gm-shell);
		min-height: clamp(650px, 72vw, 850px);
		overflow: hidden;
		position: relative;
	}
	.gm-v3-hero > * { grid-area: 1 / 1; }
	.gm-v3-hero__media, .gm-v3-hero__media picture, .gm-v3-hero__media img { height: 100%; width: 100%; }
	.gm-v3-hero__media img { object-fit: cover; object-position: center; }
	.gm-v3-hero__shade {
		background: linear-gradient(90deg, rgba(7, 31, 24, .84) 0%, rgba(7, 31, 24, .48) 48%, rgba(7, 31, 24, .05) 78%), linear-gradient(0deg, rgba(5, 23, 18, .72), transparent 48%);
		z-index: 1;
	}
	.gm-v3-hero__copy {
		align-self: end;
		max-width: 770px;
		padding: clamp(55px, 8vw, 115px) var(--gm-gutter);
		z-index: 2;
	}
	.gm-v3-hero__copy .gm-kicker { color: var(--gm-ochre-soft); }
	.gm-v3-hero h1 {
		font-size: clamp(4rem, 8.3vw, 8.2rem);
		font-variation-settings: "SOFT" 90, "WONK" 1;
		font-weight: 610;
		letter-spacing: -.068em;
		line-height: .84;
		margin: 18px 0 28px;
	}
	.gm-v3-hero__copy > p { color: #edf5f1; font-size: clamp(1.08rem, 1.7vw, 1.32rem); line-height: 1.48; margin: 0; max-width: 650px; }
	.gm-v3-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 34px; }
	.gm-v3-hero .gm-secondary-action { background: rgba(9, 36, 28, .42); }

	.gm-home-entries, .gm-home-now, .gm-home-start, .gm-home-projects {
		margin: 0 auto;
		max-width: var(--gm-shell);
		padding: clamp(72px, 8vw, 120px) var(--gm-gutter);
	}
	.gm-home-entries__grid { display: grid; gap: 18px; grid-template-columns: repeat(4, minmax(0, 1fr)); }
	.gm-entry-card { background: #fff; box-shadow: 0 10px 38px rgba(18, 47, 39, .08); color: var(--gm-ink); min-width: 0; text-decoration: none; }
	.gm-entry-card figure { aspect-ratio: 4 / 3; overflow: hidden; }
	.gm-entry-card figure :where(picture, img) { height: 100%; width: 100%; }
	.gm-entry-card img { object-fit: cover; transition: transform .5s ease; }
	.gm-entry-card > div { border-top: 6px solid var(--gm-sage); padding: 23px; }
	.gm-entry-card--solve > div { border-color: var(--gm-coral); }
	.gm-entry-card--improve > div { border-color: var(--gm-teal); }
	.gm-entry-card--buy > div { border-color: var(--gm-ochre); }
	.gm-entry-card h3 { font-size: clamp(1.55rem, 2.2vw, 2.15rem); line-height: 1.02; margin: 8px 0 10px; }
	.gm-entry-card p { color: var(--gm-muted); font-size: .82rem; line-height: 1.5; margin: 0 0 19px; }
	.gm-entry-card b { font-size: .72rem; }
	.gm-entry-card:hover img { transform: scale(1.025); }

	.gm-home-now { background: var(--gm-cream); }
	.gm-home-now__grid { display: grid; gap: 20px; grid-template-columns: minmax(0, 1.55fr) minmax(320px, .7fr); }
	.gm-now-feature, .gm-now-stack > a { color: #fff; display: grid; min-width: 0; overflow: hidden; text-decoration: none; }
	.gm-now-feature { min-height: 620px; }
	.gm-now-feature > *, .gm-now-stack > a > * { grid-area: 1 / 1; }
	.gm-now-feature figure :where(picture, img), .gm-now-stack figure :where(picture, img) { height: 100%; width: 100%; }
	.gm-now-feature img, .gm-now-stack img { object-fit: cover; }
	.gm-now-feature > div, .gm-now-stack > a > div { align-self: end; background: linear-gradient(transparent, rgba(7, 31, 24, .92)); padding: 100px clamp(24px, 4vw, 52px) 34px; position: relative; }
	.gm-now-feature h3 { font-size: clamp(2.4rem, 4.3vw, 4.4rem); line-height: .94; margin: 10px 0 14px; max-width: 720px; }
	.gm-now-feature p { color: #e5efeb; margin: 0 0 18px; max-width: 620px; }
	.gm-now-feature b, .gm-now-stack b { font-size: .74rem; }
	.gm-now-stack { display: grid; gap: 20px; grid-template-rows: 1fr 1fr; }
	.gm-now-stack > a { min-height: 300px; }
	.gm-now-stack > a > div { padding: 70px 24px 24px; }
	.gm-now-stack h3 { font-size: clamp(1.55rem, 2.4vw, 2.15rem); line-height: 1; margin: 7px 0 10px; }

	.gm-home-start__mosaic { display: grid; gap: 18px; grid-template-columns: repeat(12, minmax(0, 1fr)); }
	.gm-start-card { background: #fff; color: var(--gm-ink); display: grid; grid-column: span 5; min-height: 310px; min-width: 0; overflow: hidden; text-decoration: none; }
	.gm-start-card > * { grid-area: 1 / 1; }
	.gm-start-card figure :where(picture, img) { height: 100%; width: 100%; }
	.gm-start-card img { object-fit: cover; }
	.gm-start-card > div { align-self: end; background: linear-gradient(transparent, rgba(5, 28, 21, .9)); color: #fff; padding: 80px 24px 24px; position: relative; }
	.gm-start-card h3 { font-size: clamp(1.6rem, 2.6vw, 2.55rem); line-height: .98; margin: 8px 0 12px; }
	.gm-start-card p { color: #e8f0ed; font-size: .82rem; margin: 0 0 15px; }
	.gm-start-card b { font-size: .72rem; }
	.gm-start-card--lead { grid-column: span 7; grid-row: span 2; min-height: 638px; }
	.gm-start-card--lead > div { padding: 140px clamp(26px, 4vw, 48px) 40px; }
	.gm-start-card--lead h3 { font-size: clamp(2.6rem, 4.7vw, 4.8rem); max-width: 650px; }
	.gm-start-card--wide { grid-column: span 5; }

	.gm-home-fix {
		background: var(--gm-forest);
		color: #fff;
		margin: 0 auto;
		max-width: var(--gm-shell);
		padding: clamp(75px, 9vw, 130px) var(--gm-gutter);
	}
	.gm-home-fix__grid { display: grid; gap: 18px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-home-fix__grid > a { background: #fff; color: var(--gm-ink); display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(250px, .85fr); min-width: 0; text-decoration: none; }
	.gm-home-fix figure { min-height: 390px; overflow: hidden; }
	.gm-home-fix figure :where(picture, img) { height: 100%; width: 100%; }
	.gm-home-fix img { object-fit: cover; }
	.gm-home-fix__grid > a > div { align-self: center; padding: clamp(24px, 3vw, 42px); }
	.gm-home-fix h3 { font-size: clamp(1.9rem, 3vw, 3.1rem); line-height: .96; margin: 9px 0 14px; }
	.gm-home-fix p { color: var(--gm-muted); font-size: .82rem; margin: 0 0 18px; }
	.gm-home-fix b { font-size: .73rem; }

	.gm-home-projects__grid { display: grid; gap: 22px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-project-card { background: #fff; border: 1px solid var(--gm-rule); color: var(--gm-ink); display: grid; min-width: 0; text-decoration: none; }
	.gm-project-card figure { aspect-ratio: 16 / 9; overflow: hidden; }
	.gm-project-card figure > :where(picture, img), .gm-project-card figure > .gm-hero-pair { height: 100%; width: 100%; }
	.gm-project-card img { height: 100%; object-fit: cover; width: 100%; }
	.gm-project-card > div { padding: clamp(25px, 3.5vw, 44px); }
	.gm-project-card h3 { font-size: clamp(2.1rem, 3.7vw, 3.65rem); line-height: .96; margin: 10px 0 15px; }
	.gm-project-card p { color: var(--gm-muted); margin: 0 0 18px; }
	.gm-project-card b { font-size: .74rem; }

	.gm-founder-panel--v3 {
		background: var(--gm-cream);
		grid-template-columns: minmax(320px, .9fr) minmax(0, 1.1fr);
		margin: 0 auto;
		max-width: var(--gm-shell);
		padding: clamp(70px, 9vw, 130px) max(var(--gm-gutter), calc((100% - var(--gm-wide)) / 2));
	}
	.gm-founder-panel--v3 figure { min-width: 0; }
	.gm-founder-panel--v3 figure img { aspect-ratio: 4 / 3; object-fit: cover; width: 100%; }
	.gm-founder-panel--v3 figcaption { color: var(--gm-muted); font-size: .68rem; margin-top: 9px; }
	.gm-founder-panel--v3 h2 { font-size: clamp(2.65rem, 5vw, 5.25rem); font-weight: 620; }

	.gm-newsletter--v3 {
		margin: 0 auto;
		max-width: var(--gm-shell);
		padding: clamp(65px, 8vw, 110px) max(var(--gm-gutter), calc((100% - var(--gm-wide)) / 2));
	}
	.gm-newsletter--v3 .gm-newsletter__copy ul { color: #d7e4df; font-size: .82rem; margin: 24px 0 0; padding-left: 1.2em; }
	.gm-newsletter--v3 .gm-newsletter__copy li { margin: 7px 0; }
	.gmf-subscribe :where(.formkit-form, [data-format]) { max-width: none !important; }
	.gmf-subscribe .formkit-fields { display: flex !important; flex-wrap: wrap !important; gap: 10px !important; }
	.gmf-subscribe .formkit-field { flex: 1 1 210px !important; margin: 0 !important; }
	.gmf-subscribe .formkit-input {
		background: #fffdf8 !important;
		border: 2px solid transparent !important;
		border-radius: 0 !important;
		color: var(--gm-ink) !important;
		min-height: 54px !important;
		padding: 12px 14px !important;
	}
	.gmf-subscribe .formkit-submit {
		background: var(--gm-ochre) !important;
		border: 0 !important;
		border-radius: 0 !important;
		color: var(--gm-ink) !important;
		font-weight: 850 !important;
		min-height: 54px !important;
		padding: 12px 22px !important;
	}
	.gmf-subscribe .formkit-submit:hover { background: #efbe42 !important; }
	.gmf-subscribe :where(.formkit-powered-by-convertkit-container, [data-element="powered-by"]) { display: block !important; opacity: .7 !important; }

	.gm-site-footer { background: #08271f; }
	.gm-footer-topline {
		border-bottom: 1px solid #36564c;
		color: var(--gm-ochre-soft);
		display: flex;
		font-family: var(--gm-display);
		font-size: clamp(1.15rem, 2.1vw, 1.8rem);
		font-weight: 590;
		gap: clamp(25px, 7vw, 100px);
		justify-content: center;
		padding: 20px var(--gm-gutter);
	}
	.gm-footer-main { grid-template-columns: 1.25fr .55fr .75fr 1fr; }
	.gm-footer-brand .gm-brand-lockup { text-decoration: none; }
	.gm-footer-brand > span { color: #93ada4; display: block; font-size: .69rem; margin-top: 3px; }
	.gm-footer-notes { border: 1px solid #49645b; padding: 22px; }
	.gm-footer-notes b { font-size: 1.2rem; }

	.gm-article { background: #fffefa; max-width: var(--gm-shell); padding-top: 24px; }
	.gm-breadcrumbs { font-size: .69rem; margin: 0 auto; max-width: var(--gm-wide); }
	.gm-article-opening {
		align-items: stretch;
		background: var(--gm-cream);
		gap: 0;
		grid-template-columns: minmax(0, 1.12fr) minmax(420px, .88fr);
		margin-top: 24px;
		max-width: var(--gm-wide);
		padding: 0;
	}
	.gm-article-opening__media { align-self: stretch; display: flex; flex-direction: column; }
	.gm-article-opening__media > :where(picture, img, .gm-hero-pair) { flex: 1; }
	.gm-article-opening__media > picture img,
	.gm-article-opening__media > img { aspect-ratio: auto; height: 100%; min-height: 600px; object-fit: cover; }
	.gm-article-opening__media figcaption { background: #fffefa; padding: 10px 13px; }
	.gm-article-opening__copy { align-self: center; padding: clamp(38px, 5vw, 72px); }
	.gm-story-label { display: flex; flex-wrap: wrap; gap: 7px 18px; }
	.gm-story-label span:first-child { color: var(--gm-clay); }
	.gm-article-opening h1 {
		font-family: var(--gm-display);
		font-size: clamp(3rem, 5.4vw, 5.7rem);
		font-variation-settings: "SOFT" 85, "WONK" 1;
		font-weight: 620;
		letter-spacing: -.062em;
		line-height: .88;
		margin: 18px 0 28px;
	}
	.gm-direct-answer { border-color: var(--gm-ochre); }
	.gm-direct-answer > strong { color: var(--gm-clay); display: block; font-size: .66rem; letter-spacing: .11em; text-transform: uppercase; }
	.gm-direct-answer p { font-family: var(--gm-serif); font-size: clamp(1.12rem, 1.65vw, 1.38rem); line-height: 1.38; }
	.gm-byline { display: grid; gap: 1px 9px; grid-template-columns: auto 1fr; }
	.gm-byline > span { grid-row: 1; }
	.gm-byline > strong { grid-column: 2; grid-row: 1; }
	.gm-byline > small { grid-column: 1 / -1; }
	.gm-byline > b { color: var(--gm-muted); font-size: .68rem; font-weight: 620; grid-column: 1 / -1; margin-top: 7px; }
	.gm-article--solve .gm-article-opening { background: #eef2eb; grid-template-columns: minmax(0, 1.25fr) minmax(410px, .75fr); }
	.gm-article--solve .gm-direct-answer { border-color: var(--gm-coral); }
	.gm-article--improve .gm-article-opening { background: #eef4f1; }
	.gm-article--improve .gm-direct-answer { border-color: var(--gm-teal); }
	.gm-article--buy .gm-article-opening { background: #f5efe3; }
	.gm-article--buy .gm-direct-answer { border-color: var(--gm-ochre); }
	.gm-hero-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); height: 100%; }
	.gm-hero-pair > div { display: grid; min-width: 0; position: relative; }
	.gm-hero-pair > div > * { grid-area: 1 / 1; }
	.gm-hero-pair > div > span { align-self: start; background: rgba(7, 31, 24, .88); color: #fff; font-size: .64rem; font-weight: 850; letter-spacing: .1em; margin: 12px; padding: 7px 9px; text-transform: uppercase; z-index: 1; }
	.gm-hero-pair :where(picture, img) { height: 100%; width: 100%; }
	.gm-hero-pair img { object-fit: cover; }

	.gm-family-highlights {
		background: var(--gm-forest);
		color: #fff;
		display: grid;
		gap: 38px;
		grid-template-columns: minmax(240px, .75fr) minmax(0, 1.25fr);
		margin: 22px auto 0;
		max-width: var(--gm-wide);
		padding: 28px clamp(25px, 4vw, 48px);
	}
	.gm-family-highlights header > span { color: var(--gm-ochre-soft); display: block; font-size: .64rem; font-weight: 850; letter-spacing: .11em; text-transform: uppercase; }
	.gm-family-highlights header > strong { display: block; font-family: var(--gm-display); font-size: 1.35rem; line-height: 1.12; margin-top: 8px; }
	.gm-family-highlights > div { display: grid; gap: 1px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.gm-family-highlights p { border-left: 1px solid #547169; margin: 0; padding: 3px 20px; }
	.gm-family-highlights p span { color: #a8c0b7; display: block; font-size: .62rem; }
	.gm-family-highlights p strong { display: block; font-size: .72rem; line-height: 1.35; margin-top: 4px; }
	.gm-article--solve .gm-family-highlights { background: #682f27; }
	.gm-article--solve .gm-family-highlights p { border-color: #a9756c; }
	.gm-article--improve .gm-family-highlights { background: #285850; }
	.gm-article--buy .gm-family-highlights { background: #6e4a21; }

	.gm-guide-navigation { margin: 18px auto 0; max-width: var(--gm-wide); }
	.gm-article-jumps { border: 1px solid var(--gm-rule); display: block; padding: 0; }
	.gm-article-jumps summary { align-items: center; cursor: pointer; display: flex; font-size: .76rem; font-weight: 800; justify-content: space-between; min-height: 48px; padding: 10px 15px; }
	.gm-article-jumps summary small { color: var(--gm-muted); font-size: .67rem; font-weight: 600; }
	.gm-article-jumps nav { border-top: 1px solid var(--gm-rule); padding: 16px; }
	.gm-article-jumps ol { columns: 3; gap: 30px; }
	.gm-article-jumps a { min-height: 38px; }

	.gm-article-body { font-size: 1rem; }
	.gm-reading-section { grid-column: 1 / -1; }
	.gm-reading-section > * { margin-left: auto; margin-right: auto; max-width: var(--gm-reading); }
	.gm-reading-section > :where(.gm-visual-system, .gm-media-placement, .gm-table-wrap) { max-width: 1080px; }
	.gm-article-body h2 { font-family: var(--gm-display); font-weight: 630; }
	.gm-article-body h3 { font-family: var(--gm-display); font-weight: 630; }
	.gm-article-body p, .gm-article-body li { font-size: 1rem; }
	.gm-article-body .gm-check-label, .gm-article-body .gm-subchapter-label { font-size: 1rem; }
	.gm-table-wrap { overflow: visible; }
	.gm-table-wrap table { font-size: .82rem; min-width: 0; table-layout: auto; }
	.gm-table-wrap th, .gm-table-wrap td { overflow-wrap: anywhere; }
	.gm-media-placement { margin-bottom: clamp(38px, 6vw, 72px); margin-top: clamp(38px, 6vw, 72px); }
	.gm-media-placement figure { background: #fff; }
	.gm-media-placement figure img { max-height: none; object-fit: contain; }
	.gm-media-placement > span { color: var(--gm-clay); font-size: .64rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
	.gm-visual-system { background: var(--gm-cream); border: 0; box-shadow: none; padding: clamp(24px, 4vw, 48px); }
	.gm-visual-system > header h3 { font-family: var(--gm-display); font-size: clamp(2rem, 3.3vw, 3.3rem); font-weight: 620; letter-spacing: -.045em; line-height: 1; }
	.gm-visual-note { font-size: .76rem !important; }
	.gm-photo-library__grid--crops { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.gm-container-size-guide { display: grid; gap: 10px; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 25px 0 38px; }
	.gm-container-size-guide > div { align-items: center; background: #fff; display: flex; flex-direction: column; min-width: 0; padding: 24px 18px; text-align: center; }
	.gm-container-size-guide strong { font-family: var(--gm-display); font-size: 1.28rem; margin: 14px 0 5px; }
	.gm-container-size-guide span { font-size: .76rem; font-weight: 740; line-height: 1.35; }
	.gm-container-size-guide b { color: var(--gm-muted); font-size: .68rem; font-weight: 520; line-height: 1.38; margin-top: 9px; }
	.gm-pot { background: #a45632; border: 3px solid #7e351e; border-radius: 2px 2px 14px 14px; display: block; height: 46px; position: relative; width: 62px; }
	.gm-pot::before { background: #c16840; border: 3px solid #7e351e; content: ""; height: 10px; left: -8px; position: absolute; top: -8px; width: calc(100% + 16px); }
	.gm-pot--small { height: 34px; width: 48px; }
	.gm-pot--medium { height: 46px; width: 62px; }
	.gm-pot--large { height: 58px; width: 76px; }
	.gm-pot--wide { height: 48px; width: 96px; }
	.gm-depth-illustration { background: #fff; display: block; margin: 26px 0 20px; }
	.gm-depth-illustration img { width: 100%; }
	.gm-depth-takeaways { display: grid; gap: 10px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.gm-depth-takeaways > div { background: #fff; border-top: 5px solid var(--gm-teal); padding: 18px; }
	.gm-depth-takeaways strong { display: block; font-family: var(--gm-display); font-size: 1.24rem; }
	.gm-depth-takeaways span { color: var(--gm-muted); display: block; font-size: .74rem; line-height: 1.42; margin-top: 5px; }
.gm-material-context-note { color: var(--gm-muted); font-size: .74rem; line-height: 1.45; margin: 12px 0 0 !important; }
.gm-material-verdicts { display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); margin-top: 18px; }
	.gm-material-verdicts article { background: #fff; border-top: 6px solid var(--gm-forest-3); }
	.gm-material-verdicts article + article { border-color: var(--gm-ochre); }
	.gm-material-verdicts figure { aspect-ratio: 16 / 10; overflow: hidden; }
	.gm-material-verdicts figure :where(picture, img) { height: 100%; width: 100%; }
	.gm-material-verdicts img { object-fit: cover; }
	.gm-material-verdicts article > div { padding: 24px; }
	.gm-material-verdicts article span { color: var(--gm-clay); font-size: .66rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
	.gm-material-verdicts h4 { font-family: var(--gm-display); font-size: 1.55rem; line-height: 1.05; margin: 8px 0 12px; text-transform: none; }
	.gm-material-verdicts p { font-size: .78rem; margin-bottom: 15px; }
	.gm-material-verdicts b { font-size: .67rem; letter-spacing: .08em; text-transform: uppercase; }
	.gm-buy-checklist { display: grid; gap: 1px; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 16px; }
	.gm-buy-checklist > div { background: var(--gm-forest); color: #fff; display: grid; gap: 2px 11px; grid-template-columns: 30px 1fr; padding: 20px; }
	.gm-buy-checklist b { align-items: center; background: var(--gm-ochre); border-radius: 50%; color: var(--gm-ink); display: flex; font-size: .67rem; grid-row: span 2; height: 28px; justify-content: center; width: 28px; }
	.gm-buy-checklist strong { font-size: .78rem; }
	.gm-buy-checklist span { color: #c6d7d1; font-size: .68rem; line-height: 1.35; }
	.gm-related-reading { grid-column: 1 / -1; margin-top: 65px; }
	.gm-next-step-panel { background: var(--gm-cream); margin: 0 auto; max-width: var(--gm-wide); }

	.gm-lane-page { padding-top: 0; }
	.gm-lane-hero { color: #fff; display: grid; min-height: 590px; position: relative; }
	.gm-lane-hero > * { grid-area: 1 / 1; }
	.gm-lane-hero figure, .gm-lane-hero figure :where(picture, img) { height: 100%; width: 100%; }
	.gm-lane-hero img { object-fit: cover; }
	.gm-lane-hero__shade { background: linear-gradient(90deg, rgba(7, 31, 24, .87), rgba(7, 31, 24, .18) 75%); z-index: 1; }
	.gm-lane-hero__copy { align-self: end; max-width: 850px; padding: clamp(55px, 8vw, 105px); z-index: 2; }
	.gm-lane-hero__copy > span { color: var(--gm-ochre-soft); }
	.gm-lane-hero h1 { font-family: var(--gm-display); font-size: clamp(3.7rem, 7vw, 7.3rem); font-weight: 610; letter-spacing: -.064em; line-height: .86; margin: 14px 0 24px; }
	.gm-lane-hero p { color: #e7f0ec; font-size: 1.05rem; max-width: 680px; }
	.gm-lane-hero strong { display: block; font-family: var(--gm-display); font-size: 1.22rem; margin-top: 23px; }
	.gm-lane-switcher { background: #fff; border: 1px solid var(--gm-rule); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: -25px auto 0; max-width: 1000px; position: relative; z-index: 3; }
	.gm-lane-switcher a { align-items: center; display: flex; font-size: .74rem; font-weight: 780; justify-content: center; min-height: 52px; padding: 10px; text-align: center; text-decoration: none; }
	.gm-lane-switcher a + a { border-left: 1px solid var(--gm-rule); }
	.gm-lane-switcher a[aria-current="page"] { background: var(--gm-forest); color: #fff; }
	.gm-curated-groups, .gm-symptom-chooser, .gm-lane-story { margin: 0 auto; max-width: var(--gm-wide); }
	.gm-curated-group { padding: 60px 0; }
	.gm-curated-group + .gm-curated-group { border-top: 1px solid var(--gm-rule); }
	.gm-curated-group > header { margin-bottom: 25px; }
	.gm-curated-group h2, .gm-symptom-chooser > header h2, .gm-lane-story h2 { font-family: var(--gm-display); font-size: clamp(2.2rem, 4vw, 4.2rem); font-weight: 620; letter-spacing: -.05em; line-height: .97; margin: 8px 0; }
	.gm-guide-card { background: #fff; box-shadow: 0 10px 34px rgba(17, 44, 36, .08); }
	.gm-guide-card > div { padding: 0 20px 22px; }
	.gm-symptom-chooser { padding: 75px 0; }
	.gm-symptom-chooser > header { margin-bottom: 30px; max-width: 800px; }
	.gm-symptom-chooser__grid { display: grid; gap: 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-symptom-chooser__grid > a { background: #fff; color: var(--gm-ink); text-decoration: none; }
	.gm-symptom-chooser__grid figure { aspect-ratio: 16 / 10; overflow: hidden; }
	.gm-symptom-chooser__grid figure :where(picture, img) { height: 100%; width: 100%; }
	.gm-symptom-chooser__grid img { object-fit: cover; }
	.gm-symptom-chooser__grid > a > div { padding: 25px; }
	.gm-symptom-chooser__grid h3 { font-size: 1.75rem; line-height: 1.03; margin: 7px 0 10px; }
	.gm-symptom-chooser__grid p { color: var(--gm-muted); font-size: .8rem; }
	.gm-symptom-chooser__grid b { font-size: .72rem; }
	.gm-lane-story { align-items: center; display: grid; gap: clamp(35px, 6vw, 80px); grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); padding: 80px 0; }
	.gm-lane-story figure img { width: 100%; }
	.gm-lane-story li { margin: 8px 0; }
	.gm-lane-story--buy { display: block; }
	.gm-lane-story--buy > header { max-width: 860px; }
	.gm-lane-story--buy > div { margin-top: 30px; }

	.gm-about-hero h1, .gm-policy-header h1, .gm-search-page__header h1 { font-family: var(--gm-display); font-weight: 620; }
	.gm-about-hero { padding-left: max(var(--gm-gutter), calc((100% - var(--gm-wide)) / 2)); padding-right: max(var(--gm-gutter), calc((100% - var(--gm-wide)) / 2)); }
	.gm-about-hero > span { color: var(--gm-ochre-soft); }
	.gm-about-intro {
		align-items: center;
		display: grid;
		gap: clamp(40px, 7vw, 90px);
		grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
		margin: 0 auto;
		max-width: var(--gm-wide);
		padding: clamp(70px, 9vw, 120px) var(--gm-gutter);
	}
	.gm-about-intro h2, .gm-about-lanes h2, .gm-founder-profile h2 { font-family: var(--gm-display); font-size: clamp(2.4rem, 4.5vw, 4.7rem); font-weight: 620; letter-spacing: -.052em; line-height: .96; margin: 10px 0 20px; }
	.gm-about-intro p { color: var(--gm-muted); }
	.gm-about-photo-pair { align-items: end; display: grid; gap: 14px; grid-template-columns: 1.2fr .8fr; }
	.gm-about-photo-pair figure:last-child { margin-bottom: -45px; }
	.gm-about-photo-pair img { aspect-ratio: 4 / 5; object-fit: cover; width: 100%; }
	.gm-about-photo-pair figure:last-child img { aspect-ratio: 4 / 3; }
	.gm-about-photo-pair figcaption { color: var(--gm-muted); font-size: .67rem; margin-top: 7px; }
	.gm-about-lanes { padding-left: var(--gm-gutter); padding-right: var(--gm-gutter); }
	.gm-founder-profile {
		background: var(--gm-cream);
		display: grid;
		gap: clamp(35px, 7vw, 90px);
		grid-template-columns: .7fr 1.3fr;
		margin: 0 auto;
		max-width: var(--gm-wide);
		padding: clamp(55px, 8vw, 90px);
	}
	.gm-founder-profile > div:first-child > strong { color: var(--gm-clay); display: block; font-size: .8rem; }
	.gm-founder-profile p { color: var(--gm-muted); }
	.gm-founder-profile a { align-items: center; display: inline-flex; font-size: .78rem; font-weight: 800; min-height: 44px; }
	.gm-policy-header { padding-left: 0; padding-right: 0; }
	.gm-contact-card { background: var(--gm-cream); border-top: 6px solid var(--gm-ochre); padding: clamp(28px, 5vw, 55px); }
	.gm-contact-card > span { display: block; font-size: .67rem; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
	.gm-contact-card > a { display: block; font-family: var(--gm-display); font-size: clamp(1.45rem, 3vw, 2.4rem); margin: 10px 0 24px; overflow-wrap: anywhere; }
	.gm-generic-page__body { margin: 0 auto; max-width: var(--gm-reading); padding: 60px var(--gm-gutter) 100px; }

	.gm-search-results__grid { gap: 20px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-search-result { background: #fff; border: 0; display: grid; grid-template-columns: minmax(220px, .9fr) minmax(0, 1.1fr); padding: 0; }
	.gm-search-result > div { padding: 23px; }
	.gm-search-result__image { aspect-ratio: auto; min-height: 260px; }
	.gm-search-result h3 { font-family: var(--gm-display); font-size: 1.72rem; }
	.gm-search-result h3 a { align-items: center; display: flex; min-height: 44px; }
	.gm-mobile-links { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-mobile-links a { align-items: center; display: flex; min-height: 48px; }
	.gm-mobile-links a + a { justify-content: flex-end; }
}

@media screen and (max-width: 1180px) {
	.gm-header-shell { grid-template-columns: auto 1fr auto; }
	.gm-header-utility { display: none; }
	.gm-home-entries__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-home-fix__grid > a { grid-template-columns: 1fr; }
	.gm-home-fix figure { min-height: 300px; }
	.gm-footer-main { grid-template-columns: 1.2fr .6fr .8fr; }
	.gm-footer-notes { grid-column: 1 / -1; }
	.gm-search-results__grid { grid-template-columns: 1fr; }
}

@media screen and (max-width: 980px) {
	.admin-bar .gm-site-header { top: 46px; }
	.gm-header-shell { grid-template-columns: 1fr auto; min-height: 72px; }
	.gm-nav, .gm-start-link { display: none; }
	.gm-mobile-nav { display: block; }
	.gm-mobile-nav > summary { min-height: 48px; }
	.gm-mobile-nav__panel { max-height: calc(100vh - 102px); overflow-y: auto; }
	.gm-v3-hero { min-height: 720px; }
	.gm-home-now__grid { grid-template-columns: 1fr; }
	.gm-now-stack { grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: none; }
	.gm-start-card--lead { min-height: 600px; }
	.gm-home-fix__grid { grid-template-columns: 1fr; }
	.gm-home-fix__grid > a { grid-template-columns: minmax(0, 1.05fr) minmax(280px, .95fr); }
	.gm-founder-panel--v3, .gm-newsletter { grid-template-columns: 1fr; }
	.gm-article-opening, .gm-article--solve .gm-article-opening { grid-template-columns: 1fr; }
	.gm-article-opening__media > picture img, .gm-article-opening__media > img { min-height: 0; }
	.gm-article-opening__media > picture img, .gm-article-opening__media > img { aspect-ratio: 16 / 10; }
	.gm-article-opening__copy { padding: 42px var(--gm-gutter) 50px; }
	.gm-family-highlights { grid-template-columns: 1fr; }
	.gm-family-highlights > div { margin-left: -20px; }
	.gm-container-size-guide { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-photo-atlas__grid--eight { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-lane-feature { grid-template-columns: 1fr; }
	.gm-lane-feature figure { min-height: 430px; }
	.gm-lane-story { grid-template-columns: 1fr; }
	.gm-about-intro { grid-template-columns: 1fr; }
	.gm-about-photo-pair { margin-top: 25px; }
}

@media screen and (max-width: 820px) {
	body { font-size: 17px; }
	.gm-section-heading--compact { display: block; }
	.gm-section-heading--compact > span { display: block; margin-bottom: 10px; }
	.gm-v3-hero { min-height: 670px; }
	.gm-v3-hero__shade { background: linear-gradient(0deg, rgba(6, 28, 21, .93) 0%, rgba(6, 28, 21, .48) 58%, rgba(6, 28, 21, .08) 82%); }
	.gm-v3-hero__copy { max-width: none; }
	.gm-v3-hero h1 { max-width: 650px; }
	.gm-entry-card { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); }
	.gm-entry-card figure { aspect-ratio: auto; }
	.gm-entry-card figure :where(picture, img) { height: 100%; }
	.gm-home-start__mosaic { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-start-card, .gm-start-card--lead, .gm-start-card--wide { grid-column: auto; grid-row: auto; min-height: 390px; }
	.gm-start-card--lead { grid-column: 1 / -1; min-height: 540px; }
	.gm-home-projects__grid { grid-template-columns: 1fr; }
	.gm-newsletter--v3 { padding-left: var(--gm-gutter); padding-right: var(--gm-gutter); }
	.gm-article { padding-left: 0; padding-right: 0; }
	.gm-breadcrumbs, .gm-guide-navigation { margin-left: var(--gm-gutter); margin-right: var(--gm-gutter); }
	.gm-article-opening, .gm-family-highlights, .gm-article-frame, .gm-next-step-panel { max-width: none; }
	.gm-article-body { padding-left: var(--gm-gutter); padding-right: var(--gm-gutter); }
	.gm-article-jumps ol { columns: 2; }
	.gm-table-wrap { overflow-x: auto; }
	.gm-table-wrap table { min-width: 680px; }
	.gm-material-verdicts { grid-template-columns: 1fr; }
	.gm-depth-takeaways, .gm-buy-checklist { grid-template-columns: 1fr; }
	.gm-lane-page { padding-left: 0; padding-right: 0; }
	.gm-lane-switcher, .gm-lane-feature, .gm-curated-groups, .gm-symptom-chooser, .gm-lane-story, .gm-lane-email { margin-left: var(--gm-gutter); margin-right: var(--gm-gutter); }
	.gm-lane-switcher { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-lane-switcher a:nth-child(3) { border-left: 0; }
	.gm-lane-switcher a:nth-child(n+3) { border-top: 1px solid var(--gm-rule); }
	.gm-guide-card-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-symptom-chooser__grid { grid-template-columns: 1fr; }
	.gm-about-lanes > div { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-about-lanes a:nth-child(3) { border-left: 1px solid var(--gm-rule); }
	.gm-about-lanes a:nth-child(n+3) { border-top: 0; }
	.gm-founder-profile { grid-template-columns: 1fr; margin-left: var(--gm-gutter); margin-right: var(--gm-gutter); }
	.gm-policy-layout { grid-template-columns: 1fr; }
	.gm-policy-nav { grid-template-columns: repeat(2, minmax(0, 1fr)); position: static; }
	.gm-policy-nav > span { grid-column: 1 / -1; }
	.gm-policy-nav a { border-bottom: 1px solid var(--gm-rule); }
	.gm-search-result { grid-template-columns: 230px minmax(0, 1fr); }
	.gm-footer-main { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-footer-brand, .gm-footer-notes { grid-column: 1 / -1; }
}

@media screen and (max-width: 600px) {
	:root { --gm-gutter: 18px; }
	.gm-site-header { position: relative; top: auto; }
	.admin-bar .gm-site-header { top: auto; }
	.gm-header-shell { min-height: 66px; }
	.gm-brand-lockup { font-size: 1.15rem; }
	.gm-mobile-nav__panel { max-height: none; }
	.gm-v3-hero { min-height: 650px; }
	.gm-v3-hero h1 { font-size: clamp(3.6rem, 17vw, 5.1rem); line-height: .85; }
	.gm-v3-hero__copy { padding-bottom: 42px; }
	.gm-v3-hero__actions { align-items: stretch; flex-direction: column; }
	.gm-v3-hero__actions a { width: 100%; }
	.gm-section-heading h2 { font-size: clamp(2.35rem, 12vw, 3.7rem); }
	.gm-home-entries, .gm-home-now, .gm-home-start, .gm-home-fix, .gm-home-projects { padding-bottom: 72px; padding-top: 72px; }
	.gm-home-entries__grid { grid-template-columns: 1fr; }
	.gm-entry-card { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); }
	.gm-entry-card > div { padding: 18px; }
	.gm-entry-card p { display: none; }
	.gm-entry-card h3 { font-size: 1.5rem; }
	.gm-now-feature { min-height: 520px; }
	.gm-now-stack { grid-template-columns: 1fr; }
	.gm-now-stack > a { min-height: 280px; }
	.gm-home-start__mosaic { grid-template-columns: 1fr; }
	.gm-start-card, .gm-start-card--lead, .gm-start-card--wide { grid-column: auto; min-height: 370px; }
	.gm-start-card--lead { min-height: 500px; }
	.gm-home-fix__grid > a { grid-template-columns: 1fr; }
	.gm-home-fix figure { min-height: 250px; }
	.gm-home-projects__grid { gap: 16px; }
	.gm-project-card figure { aspect-ratio: 4 / 3; }
	.gm-founder-panel--v3 { padding-left: var(--gm-gutter); padding-right: var(--gm-gutter); }
	.gm-founder-panel--v3 h2 { font-size: 2.8rem; }
	.gm-newsletter h2 { font-size: 2.75rem; }
	.gmf-subscribe .formkit-fields { display: grid !important; grid-template-columns: 1fr !important; }
	.gmf-subscribe .formkit-field { width: 100% !important; }
	.gmf-subscribe .formkit-submit { width: 100% !important; }
	.gm-footer-topline { align-items: center; flex-direction: column; gap: 1px; }
	.gm-footer-main { grid-template-columns: 1fr; }
	.gm-footer-main > * { grid-column: auto; }
	.gm-footer-base { align-items: start; flex-direction: column; gap: 5px; }
	.gm-article-opening__media > picture img, .gm-article-opening__media > img { aspect-ratio: 4 / 3; }
	.gm-article-opening h1 { font-size: clamp(3rem, 14vw, 4.5rem); }
	.gm-direct-answer { padding-left: 16px; }
	.gm-byline { display: block; }
	.gm-byline > * { display: block; }
	.gm-family-highlights { gap: 22px; }
	.gm-family-highlights > div { grid-template-columns: 1fr; margin: 0; }
	.gm-family-highlights p { border-left: 0; border-top: 1px solid #547169; padding: 12px 0; }
	.gm-article--solve .gm-family-highlights p { border-color: #a9756c; }
	.gm-article-jumps ol { columns: 1; }
	.gm-article-body { padding-top: 55px; }
	.gm-reading-section > * { max-width: 100%; }
	.gm-article-body h2 { font-size: clamp(2.2rem, 11vw, 3.2rem); }
	.gm-visual-system { padding-left: 18px; padding-right: 18px; }
	.gm-photo-library__grid, .gm-photo-library__grid--crops, .gm-photo-atlas__grid, .gm-photo-atlas__grid--eight { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.gm-container-size-guide { grid-template-columns: 1fr 1fr; }
	.gm-material-verdicts { grid-template-columns: 1fr; }
	.gm-newsletter--inline { padding: 28px 18px; }
	.gm-related-reading__grid { grid-template-columns: 1fr; }
	.gm-next-step-panel { align-items: start; flex-direction: column; }
	.gm-lane-hero { min-height: 560px; }
	.gm-lane-hero__copy { padding: 45px 24px; }
	.gm-lane-hero h1 { font-size: clamp(3.5rem, 16vw, 5.2rem); }
	.gm-lane-switcher { margin-top: -15px; }
	.gm-lane-feature figure { min-height: 300px; }
	.gm-lane-feature > div { padding: 32px 24px; }
	.gm-guide-card-grid { grid-template-columns: 1fr; }
	.gm-lane-email { grid-template-columns: 1fr; }
	.gm-about-hero h1 { font-size: clamp(3.2rem, 15vw, 5rem); }
	.gm-about-photo-pair { grid-template-columns: 1fr; }
	.gm-about-photo-pair figure:last-child { margin: 0; }
	.gm-about-photo-pair figure:last-child img { aspect-ratio: 4 / 3; }
	.gm-about-lanes > div { grid-template-columns: 1fr; }
	.gm-about-lanes a + a, .gm-about-lanes a:nth-child(3) { border-left: 1px solid var(--gm-rule); border-top: 0; }
	.gm-founder-profile { padding: 32px 24px; }
	.gm-policy-header { padding-left: var(--gm-gutter); padding-right: var(--gm-gutter); }
	.gm-policy-layout { padding-left: var(--gm-gutter); padding-right: var(--gm-gutter); }
	.gm-policy-nav { grid-template-columns: 1fr; }
	.gm-search-page-form > div { display: grid; grid-template-columns: 1fr; }
	.gm-search-page-form button { min-height: 48px; }
	.gm-search-result { grid-template-columns: 1fr; }
	.gm-search-result__image { min-height: 230px; }
}

@media screen and (max-width: 390px) {
	body { font-size: 16px; }
	.gm-brand-lockup { font-size: 1.05rem; }
	.gm-mobile-nav > summary { padding-left: 10px; padding-right: 10px; }
	.gm-entry-card { display: block; }
	.gm-entry-card figure { aspect-ratio: 16 / 9; }
	.gm-entry-card p { display: block; }
	.gm-photo-library__grid, .gm-photo-library__grid--crops, .gm-photo-atlas__grid, .gm-photo-atlas__grid--eight, .gm-container-size-guide { grid-template-columns: 1fr; }
	.gm-hero-pair { grid-template-columns: 1fr; }
	.gm-hero-pair > div { min-height: 210px; }
	.gm-lane-switcher { grid-template-columns: 1fr; }
	.gm-lane-switcher a + a { border-left: 0; border-top: 1px solid var(--gm-rule); }
}
