:root {
	--color-deep-green: #0d3d3d;
	--color-sea-pine: #276a5c;
	--color-honey: #eda93a;
	--color-terracotta: #c15f3c;
	--color-porcelain: #fbf9f3;
	--color-sage: #f0f3ec;
	--color-warm-stone: #6e6656;
	--color-alert: #8e3b3b;
	--color-border: color-mix(in srgb, var(--color-deep-green) 10%, var(--color-porcelain));
	--color-field-border: color-mix(in srgb, var(--color-sea-pine) 55%, var(--color-porcelain));
	--color-forest-dark: color-mix(in srgb, var(--color-deep-green) 25%, var(--color-sea-pine));
	--color-success-tint: color-mix(in srgb, var(--color-sea-pine) 15%, var(--color-porcelain));
	--color-alert-tint: color-mix(in srgb, var(--color-alert) 10%, var(--color-porcelain));
	--color-ink: var(--color-deep-green);
	--color-forest: var(--color-sea-pine);
	--color-cream: var(--color-porcelain);
	--color-white: var(--color-porcelain);
	--color-charcoal: var(--color-warm-stone);
	--color-muted: var(--color-warm-stone);
	--color-error: var(--color-alert);
	--color-success: var(--color-sea-pine);
	--color-focus: var(--color-sea-pine);
	--font-sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--ease-out: cubic-bezier(0.22, 0.61, 0.36, 1);
	--duration-fast: 150ms;
	--duration-ui: 200ms;
	--shadow-card: none;
	--shadow-card-hover: 0 1px 2px rgba(46, 62, 51, 0.04), 0 6px 16px rgba(46, 62, 51, 0.06);
	--radius-small: 0.5625rem;
	--radius-chip: 0.375rem;
	--radius-medium: 0.75rem;
	--radius-panel: 1rem;
	--container: 72.5rem;
	--content: 47.5rem;
	--gutter: clamp(1.5rem, 6vw, 4rem);
	--section-space: 6rem;
}

@supports not (color: color-mix(in srgb, red 10%, white)) {
	:root {
		--color-border: var(--color-sage);
		--color-field-border: var(--color-sea-pine);
		--color-forest-dark: var(--color-deep-green);
		--color-success-tint: var(--color-sage);
		--color-alert-tint: var(--color-sage);
		--shadow-card-hover: none;
	}
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 7rem;
}

#main-content,
.site-main [id] {
	scroll-margin-top: 7rem;
}

body {
	margin: 0;
	background: var(--color-cream);
	color: var(--color-charcoal);
	font-family: var(--font-sans);
	font-size: 1.125rem;
	line-height: 1.65;
	text-rendering: optimizeLegibility;
}

body,
.site-main,
.page-content,
.content-flow,
.wp-site-blocks {
	min-width: 0;
}

.site-main {
	overflow-wrap: break-word;
}

img,
svg,
video {
	display: block;
	max-width: 100%;
	height: auto;
}

button,
input,
select,
textarea {
	font: inherit;
}

button,
a {
	-webkit-tap-highlight-color: transparent;
}

a {
	color: var(--color-forest);
	text-underline-offset: 0.2em;
	text-decoration-thickness: 0.08em;
	text-decoration-line: none;
	transition: color var(--duration-ui) var(--ease-out);
}

a:hover {
	color: var(--color-forest-dark);
	text-decoration-line: underline;
}

:focus-visible {
	outline: 2px solid var(--color-focus);
	outline-offset: 2px;
	box-shadow: 0 0 0 4px var(--color-porcelain);
}

h1,
h2,
h3,
h4 {
	margin-block: 0 0.75em;
	color: var(--color-ink);
	font-weight: 700;
	font-family: "Montserrat", Arial, sans-serif;
	letter-spacing: normal;
	line-height: 1.1;
	text-wrap: balance;
}

h1 {
	font-size: clamp(2.125rem, 5vw, 3.5rem);
	font-weight: 800;
	letter-spacing: -0.01em;
	line-height: 1;
	max-width: 12ch;
}

h2 {
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	font-weight: 800;
	line-height: 1.05;
}

h3 {
	font-size: clamp(1.375rem, 2vw, 1.625rem);
}

p,
ul,
ol,
blockquote {
	margin-block: 0 1.25rem;
	text-wrap: pretty;
}

body :where(p, li, dd, dt) strong {
	color: var(--color-deep-green);
	font-weight: 500;
}

.container,
.container-wide {
	width: min(100% - (2 * var(--gutter)), var(--content));
	margin-inline: auto;
}

.container-wide {
	width: min(100% - (2 * var(--gutter)), var(--container));
}

.screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap;
	border: 0;
}

.screen-reader-text:focus {
	top: 1rem;
	left: 1rem;
	z-index: 100000;
	width: auto;
	height: auto;
	padding: 0.8rem 1rem;
	clip: auto;
	background: var(--color-porcelain);
	color: var(--color-ink);
	font-weight: 700;
}

.site-header {
	position: sticky;
	top: 0;
	z-index: 100;
	border-bottom: 1px solid var(--color-border);
	background: var(--color-porcelain);
}

.site-header__inner {
	display: grid;
	grid-template-columns: minmax(13rem, 1fr) auto minmax(13rem, 1fr);
	align-items: center;
	gap: clamp(1rem, 2.5vw, 2.25rem);
	min-height: calc(5.875rem - 1px);
}

.site-branding {
	min-width: 0;
}

.site-brand-link {
	display: inline-flex;
	align-items: center;
	gap: 0.625rem;
	color: var(--color-forest);
	font-family: "Montserrat", Arial, sans-serif;
	font-size: 1.25rem;
	font-weight: 700;
	letter-spacing: 0.3px;
	line-height: 1.1;
	text-decoration: none;
	white-space: nowrap;
}

.site-brand-link:hover {
	color: var(--color-forest-dark);
	text-decoration: none;
}

.site-brand-link img {
	width: auto;
	height: 1.75rem;
	object-fit: contain;
}

.site-navigation .menu,
.footer-legal-menu {
	display: flex;
	align-items: center;
	gap: clamp(0.85rem, 2vw, 2rem);
	padding: 0;
	margin: 0;
	list-style: none;
}

.site-navigation {
	justify-self: center;
}

.site-navigation a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	color: var(--color-charcoal);
	font-family: "Montserrat", Arial, sans-serif;
	font-weight: 600;
	text-decoration: none;
}

.site-navigation a:hover,
.site-navigation .current-menu-item > a,
.site-navigation .current_page_item > a {
	color: var(--color-forest);
	text-decoration: underline;
}

.nav-toggle {
	display: none;
	align-items: center;
	gap: 0.65rem;
	min-width: 44px;
	min-height: 44px;
	padding: 0.5rem;
	border: 1px solid var(--color-forest);
	border-radius: var(--radius-small);
	background: transparent;
	color: var(--color-ink);
	cursor: pointer;
}

.nav-toggle__icon,
.nav-toggle__icon::before,
.nav-toggle__icon::after {
	display: block;
	width: 1.35rem;
	height: 2px;
	background: currentcolor;
	content: "";
	transition: top var(--duration-fast) var(--ease-out), transform var(--duration-fast) var(--ease-out);
}

.nav-toggle__icon {
	position: relative;
	transition: background-color var(--duration-fast) var(--ease-out);
}

.nav-toggle__icon::before {
	position: absolute;
	top: -0.4rem;
}

.nav-toggle__icon::after {
	position: absolute;
	top: 0.4rem;
}

.nav-toggle[aria-expanded="true"] .nav-toggle__icon {
	background: transparent;
}

.nav-toggle[aria-expanded="true"] .nav-toggle__icon::before {
	top: 0;
	transform: rotate(45deg);
}

.nav-toggle[aria-expanded="true"] .nav-toggle__icon::after {
	top: 0;
	transform: rotate(-45deg);
}

.button,
.wp-block-button__link,
button[type="submit"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-height: 3rem;
	padding: 0.75rem 1.35rem;
	border: 2px solid var(--color-forest);
	border-radius: var(--radius-small);
	background: var(--color-forest);
	color: var(--color-porcelain);
	font-family: "Montserrat", Arial, sans-serif;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: background-color var(--duration-ui) var(--ease-out), border-color var(--duration-ui) var(--ease-out), color var(--duration-ui) var(--ease-out);
	cursor: pointer;
}

.button:hover,
.wp-block-button__link:hover,
button[type="submit"]:hover {
	border-color: var(--color-forest-dark);
	background: var(--color-forest-dark);
	color: var(--color-porcelain);
}

.button--outline {
	border-width: 1px;
	background: transparent;
	color: var(--color-forest);
}

.is-style-outline .wp-block-button__link {
	border-width: 1px;
	border-color: var(--color-forest);
	background: transparent;
	color: var(--color-forest);
}

.button--outline:hover,
.is-style-outline .wp-block-button__link:hover {
	border-color: var(--color-forest);
	background: var(--color-sage);
	color: var(--color-deep-green);
}

.button--header {
	justify-self: end;
	min-height: 44px;
	padding: 0.65rem 1rem;
	white-space: nowrap;
}

.button-group {
	display: flex;
	flex-wrap: wrap;
	gap: 0.9rem;
	margin-top: 2rem;
}

.hero {
	border-bottom: 1px solid var(--color-border);
}

.hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	align-items: stretch;
	min-height: 42rem;
}

.hero:not(.hero--with-media) .hero__inner {
	min-height: 30rem;
}

.hero--with-media .hero__inner,
.hero__inner:has(.asset-slot) {
	grid-template-columns: minmax(0, 1.08fr) minmax(22rem, 0.92fr);
}

.hero__content {
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding-block: clamp(4.5rem, 8vw, 8rem);
	padding-right: clamp(2rem, 6vw, 6rem);
}

.hero__intro {
	max-width: 42rem;
	margin-top: 1rem;
	color: var(--color-muted);
	font-size: clamp(1.1rem, 1.7vw, 1.35rem);
}

.hero .button {
	min-height: 3.5rem;
	padding-inline: clamp(1.25rem, 2.5vw, 2rem);
}

.home .hero .eyebrow {
	display: none;
}

.eyebrow {
	margin-bottom: 1.25rem;
	color: var(--color-forest);
	font-family: "Montserrat", Arial, sans-serif;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

.hero__media {
	min-height: 100%;
	margin: 0;
}

.hero__media img {
	width: 100%;
	height: 100%;
	min-height: 42rem;
	object-fit: cover;
	object-position: center 20%;
}

.asset-slot,
.content-input {
	display: grid;
	place-items: center;
	min-height: 12rem;
	padding: 1.5rem;
	border: 2px dashed var(--color-sea-pine);
	border-radius: var(--radius-small);
	background: var(--color-sage);
	color: var(--color-ink);
	font-weight: 600;
	text-align: center;
}

.page-content {
	background: var(--color-cream);
}

.page-content > .container,
.section {
	padding-block: var(--section-space);
}

.home .page-content > .container {
	padding-block: 0;
}

.content-flow > * + * {
	margin-block-start: 1.4rem;
}

.content-flow > h2 {
	margin-block-start: 4rem;
}

.content-flow > h3 {
	margin-block-start: 2.5rem;
}

.content-flow > .alignwide,
.content-flow > .wp-block-group.alignwide {
	width: min(calc(100vw - (2 * var(--gutter))), var(--container));
	max-width: none;
	margin-inline: calc((min(calc(100vw - (2 * var(--gutter))), var(--container)) - min(calc(100vw - (2 * var(--gutter))), var(--content))) / -2);
}

.content-flow > .appearance-grid,
.content-flow > .video-grid,
.content-flow > .wp-block-columns.card-grid,
.content-flow > .wp-block-media-text,
.content-flow > .newsletter-section,
.content-flow > .authority-band,
.content-flow > .start-here,
.content-flow > .latest-section,
.content-flow > .about-summary,
.content-flow > .book-band,
.content-flow > .nonprofit-strip {
	width: min(calc(100vw - (2 * var(--gutter))), var(--container));
	max-width: none;
	margin-inline: calc((min(calc(100vw - (2 * var(--gutter))), var(--container)) - min(calc(100vw - (2 * var(--gutter))), var(--content))) / -2);
}

.section--sage,
.has-sage-background-color {
	background: var(--color-sage);
}

.authority-band {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
	gap: 0;
	padding: 0;
	background: var(--color-ink);
	color: var(--color-cream);
}

.authority-band > * {
	display: grid;
	place-items: center;
	min-height: 7.5rem;
	padding: 1.5rem 2rem;
	border-right: 1px solid color-mix(in srgb, var(--color-porcelain) 16%, transparent);
	text-align: center;
}

.authority-band > *:last-child {
	border-right: 0;
}

.authority-band h2,
.authority-band h3,
.authority-band p {
	margin: 0;
	color: var(--color-porcelain);
}

.authority-band .metric-value {
	font-family: "Montserrat", Arial, sans-serif;
	font-size: clamp(2rem, 4vw, 3.4rem);
	font-weight: 800;
	letter-spacing: -0.01em;
	line-height: 1;
}

.authority-band .metric-value + p {
	margin-top: 0.75rem;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

.start-here,
.latest-section {
	padding-block: var(--section-space);
}

.section-heading {
	max-width: 48rem;
	margin-bottom: clamp(2rem, 4vw, 3.25rem);
}

.section-heading > :last-child {
	margin-bottom: 0;
}

.start-here__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	padding: 0;
	margin: 0;
	border-top: 1px solid var(--color-border);
	list-style: none;
}

.start-here__grid > li {
	display: grid;
	grid-template-columns: 3rem minmax(0, 1fr);
	gap: 1.25rem;
	min-width: 0;
	padding: clamp(1.75rem, 4vw, 3rem);
	border-bottom: 1px solid var(--color-border);
}

.start-here__grid > li:nth-child(even) {
	border-left: 1px solid var(--color-border);
}

.start-here__grid h3 {
	margin-bottom: 0.65rem;
}

.start-here__grid p {
	margin-bottom: 0.8rem;
}

.start-here__grid a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	font-weight: 500;
}

.start-here__number {
	color: var(--color-honey);
	font-family: "Montserrat", Arial, sans-serif;
	font-size: 0.82rem;
	font-weight: 800;
	letter-spacing: 0.14em;
}

.appearance-grid {
	display: grid;
	grid-template-columns: repeat(6, minmax(0, 1fr));
	align-items: center;
	gap: clamp(1rem, 2.5vw, 2.5rem);
	padding: 1.5rem 0;
	margin: 0;
	list-style: none;
}

.appearance-grid li {
	display: grid;
	place-items: center;
	min-width: 0;
}

.appearance-grid img {
	width: 100%;
	max-width: 10rem;
	max-height: 5rem;
	object-fit: contain;
}

.card-grid,
.wp-block-columns.card-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.5rem;
}

.self-cards,
.wp-block-columns.self-cards {
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.card,
.wp-block-column.card {
	overflow: hidden;
	border: 1px solid var(--color-border);
	border-radius: var(--radius-medium);
	background: transparent;
	box-shadow: var(--shadow-card);
	transition: box-shadow var(--duration-fast) var(--ease-out);
}

.card:hover,
.wp-block-column.card:hover {
	box-shadow: var(--shadow-card-hover);
}

.card__media img {
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
}

.card__body,
.wp-block-column.card {
	padding: 1.5rem;
}

.card__title {
	font-size: 1.4rem;
}

.card__title a {
	color: inherit;
	text-decoration: none;
}

.text-link {
	font-weight: 500;
}

.video-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 1.4rem;
	padding: 0 0 1rem;
	margin: 0;
	list-style: none;
}

.video-card {
	min-width: 0;
}

.video-card__link {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	min-height: 100%;
	color: var(--color-ink);
	text-decoration: none;
}

.video-card__link > img {
	grid-row: 1;
	grid-column: 1;
	display: block;
	width: 100%;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	border-radius: var(--radius-small);
	background: var(--color-sage);
}

.video-card__link[data-duration]::after {
	content: attr(data-duration);
	grid-row: 1;
	grid-column: 1;
	align-self: end;
	justify-self: end;
	margin: 0.55rem;
	padding: 0.15rem 0.4rem;
	border-radius: var(--radius-chip);
	background: var(--color-deep-green);
	color: var(--color-porcelain);
	font-family: "Montserrat", Arial, sans-serif;
	font-size: 0.75rem;
	font-weight: 600;
}

.video-card__date {
	display: block;
	margin-top: 0.7rem;
	color: var(--color-muted);
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.4;
}

.video-card__title {
	grid-row: 2;
	grid-column: 1;
	margin-top: 0.85rem;
	font-size: clamp(1.375rem, 1.7vw, 1.625rem);
	line-height: 1.15;
}

.metric-value strong {
	color: inherit;
	font-weight: inherit;
}

.speaking-feature {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(20rem, 0.92fr);
	gap: 0;
	margin-block: var(--section-space);
	background: var(--color-sage);
}

.speaking-feature .wp-block-media-text__content {
	align-self: center;
	padding: clamp(2.5rem, 6vw, 5.5rem);
}

.speaking-feature .wp-block-media-text__media {
	height: 100%;
	margin: 0;
}

.speaking-feature .wp-block-media-text__media img {
	width: 100%;
	height: 100%;
	min-height: 34rem;
	max-height: 44rem;
	object-fit: cover;
	object-position: center 18%;
}

.speaking-expertise {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 0.4rem 1.5rem;
	padding-left: 1.25rem;
}

.about-summary {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(2rem, 6vw, 6rem);
	padding-block: var(--section-space);
	border-block: 1px solid var(--color-border);
}

.about-summary > .wp-block-column {
	min-width: 0;
}

.about-summary h3 {
	font-size: clamp(1.375rem, 2vw, 1.625rem);
}

.connected-specialties {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
	padding: 0;
	list-style: none;
}

.connected-specialties li {
	padding-top: 1rem;
	border-top: 1px solid var(--color-border);
	color: var(--color-ink);
	font-family: "Montserrat", Arial, sans-serif;
	font-weight: 700;
}

.book-band,
.book-progress {
	display: grid;
	grid-template-columns: minmax(12rem, 0.7fr) minmax(18rem, 1.5fr) auto;
	align-items: center;
	gap: clamp(1.5rem, 4vw, 4rem);
	padding: clamp(2.5rem, 5vw, 4.5rem);
	border: 1px solid var(--color-border);
	border-radius: var(--radius-panel);
	background: var(--color-sage);
	color: var(--color-warm-stone);
}

.book-band h2,
.book-band p,
.book-progress h2,
.book-progress p {
	margin: 0;
	color: var(--color-ink);
}

.book-band .wp-block-buttons,
.book-progress .wp-block-buttons {
	justify-content: flex-end;
}

.book-band .wp-block-button__link,
.book-progress .wp-block-button__link {
	border-color: var(--color-forest);
	background: var(--color-forest);
	color: var(--color-porcelain);
}

.book-band .wp-block-button__link:hover,
.book-progress .wp-block-button__link:hover {
	border-color: var(--color-forest-dark);
	background: var(--color-forest-dark);
	color: var(--color-porcelain);
}

.callout {
	padding: clamp(2rem, 5vw, 4rem);
	border-radius: var(--radius-medium);
	background: var(--color-sage);
}

.newsletter-section {
	padding: clamp(2.5rem, 6vw, 5.5rem);
	border-radius: var(--radius-panel);
	background: var(--color-sage);
	color: var(--color-warm-stone);
}

.newsletter-section h2,
.newsletter-section h3,
.newsletter-section p,
.newsletter-section li,
.newsletter-section .shmd-field label,
.newsletter-section .shmd-fieldset legend,
.newsletter-section .shmd-form small,
.newsletter-section .form-help,
.newsletter-section .shmd-consent {
	color: var(--color-warm-stone);
}

.newsletter-section h2,
.newsletter-section h3,
.newsletter-section .shmd-field label,
.newsletter-section .shmd-fieldset legend {
	color: var(--color-ink);
}

.newsletter-section .shmd-consent a {
	color: var(--color-forest);
}

.newsletter-section__grid {
	display: grid;
	grid-template-columns: minmax(0, 1.35fr) minmax(15rem, 0.65fr);
	gap: clamp(2rem, 6vw, 6rem);
	align-items: center;
}

.newsletter-benefits {
	padding-left: clamp(1.5rem, 4vw, 3.5rem);
	border-left: 1px solid var(--color-border);
}

.newsletter-section .shmd-form {
	max-width: none;
}

.newsletter-section .shmd-field input {
	border-color: var(--color-border);
	background: var(--color-porcelain);
}

.newsletter-section button[type="submit"] {
	border-color: var(--color-forest);
	background: var(--color-forest);
	color: var(--color-porcelain);
}

.newsletter-section button[type="submit"]:hover {
	border-color: var(--color-forest-dark);
	background: var(--color-forest-dark);
	color: var(--color-porcelain);
}

.prose {
	max-width: var(--content);
}

.prose li,
.content-flow li {
	margin-block: 0.45rem;
}

blockquote {
	padding-left: 1.5rem;
	border-left: 4px solid var(--color-forest);
	color: var(--color-ink);
	font-size: 1.2rem;
}

.shmd-form {
	display: grid;
	gap: 1rem;
	max-width: 46rem;
}

.shmd-form--inline {
	grid-template-columns: minmax(12rem, 1fr) auto;
	align-items: start;
}

.shmd-form--inline > .shmd-field {
	grid-column: 1;
	grid-row: 1;
}

.shmd-form--inline > .shmd-consent {
	grid-column: 1 / -1;
	grid-row: 2;
}

.shmd-form--inline > button[type="submit"] {
	grid-column: 2;
	grid-row: 1;
	align-self: end;
	margin: 0;
}

.shmd-form__row {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 1rem;
}

.shmd-field {
	display: grid;
	gap: 0.4rem;
}

.shmd-field label,
.shmd-fieldset legend {
	color: var(--color-ink);
	font-family: "Montserrat", Arial, sans-serif;
	font-weight: 600;
}

.shmd-fieldset {
	padding: 0;
	border: 0;
}

.shmd-choice-list {
	display: flex;
	flex-wrap: wrap;
	gap: 0.8rem 1.5rem;
}

.shmd-choice-list label,
.shmd-consent {
	display: inline-flex;
	align-items: flex-start;
	gap: 0.55rem;
	min-height: 44px;
}

.shmd-choice-list input,
.shmd-consent input {
	flex: 0 0 auto;
	width: 1.1rem;
	height: 1.1rem;
	margin-top: 0.2rem;
}

.shmd-field input,
.shmd-field select,
.shmd-field textarea {
	width: 100%;
	min-height: 3rem;
	padding: 0.7rem 0.8rem;
	border: 1px solid var(--color-field-border);
	border-radius: var(--radius-small);
	background: var(--color-porcelain);
	color: var(--color-charcoal);
}

.shmd-field textarea {
	min-height: 10rem;
	resize: vertical;
}

.shmd-form small,
.form-help {
	color: var(--color-muted);
}

.nonprofit-strip {
	display: grid;
	grid-template-columns: minmax(6rem, 9rem) minmax(0, 1fr) !important;
	align-items: center;
	gap: clamp(1.5rem, 4vw, 3.5rem);
	padding: clamp(2rem, 4vw, 3.5rem);
	margin-block: var(--section-space) 0;
	border-top: 1px solid var(--color-border);
	background: var(--color-sage);
}

.nonprofit-strip .wp-block-media-text__media {
	margin: 0;
}

.nonprofit-strip .wp-block-media-text__media img {
	width: min(100%, 7.5rem);
	aspect-ratio: 1;
	object-fit: contain;
}

.nonprofit-strip .wp-block-media-text__content {
	display: grid;
	grid-template-columns: minmax(12rem, 0.55fr) minmax(18rem, 1fr) auto;
	align-items: center;
	gap: clamp(1rem, 3vw, 3rem);
	padding: 0;
}

.nonprofit-strip h2,
.nonprofit-strip p {
	margin: 0;
}

.nonprofit-strip a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
	font-weight: 500;
}

.form-status {
	padding: 1rem;
	border-left: 4px solid var(--color-success);
	background: var(--color-success-tint);
}

.form-status--error {
	border-left-color: var(--color-error);
	background: var(--color-alert-tint);
}

.form-status--warning {
	border-left-color: var(--color-honey);
	background: var(--color-sage);
}

.shmd-honeypot {
	position: absolute;
	left: -9999px;
	width: 1px;
	height: 1px;
	overflow: hidden;
}

.brand-field {
	padding-block: clamp(2.75rem, 5vw, 4rem);
	background: var(--color-deep-green);
	color: var(--color-porcelain);
}

.brand-field__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2rem;
}

.brand-field__label {
	margin: 0 0 0.65rem;
	color: var(--color-porcelain);
	font-family: "Montserrat", Arial, sans-serif;
	font-size: 0.75rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	line-height: 1.15;
	text-transform: uppercase;
}

.brand-field__statement {
	max-width: 28ch;
	margin: 0;
	color: var(--color-porcelain);
	font-family: "Montserrat", Arial, sans-serif;
	font-size: clamp(1.75rem, 3vw, 2.5rem);
	font-weight: 700;
	line-height: 1.05;
}

.site-footer {
	padding-top: clamp(3rem, 6vw, 5rem);
	border-top: 1px solid var(--color-border);
	background: var(--color-porcelain);
	color: var(--color-warm-stone);
}

.site-footer a {
	color: var(--color-forest);
}

.site-footer__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: clamp(2rem, 6vw, 6rem);
}

.footer-heading {
	color: var(--color-ink);
	font-family: "Montserrat", Arial, sans-serif;
	font-size: 0.82rem;
	font-weight: 600;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}

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

.footer-link-list li + li {
	margin-top: 0;
}

.footer-link-list a,
.footer-legal-menu a {
	display: inline-flex;
	align-items: center;
	min-height: 44px;
}

.site-footer__bottom {
	display: grid;
	grid-template-columns: 1fr;
	justify-items: center;
	gap: 1rem;
	padding-block: 3rem;
	margin-top: 3rem;
	border-top: 2px solid var(--color-sea-pine);
	text-align: center;
}

.site-disclaimer,
.copyright {
	max-width: 65rem;
	margin: 0;
	color: var(--color-warm-stone);
	font-size: 1rem;
}

.site-footer .content-input {
	min-height: 0;
	background: transparent;
	color: var(--color-warm-stone);
}

.footer-legal {
	grid-column: 1;
	grid-row: auto;
}

.footer-legal-menu {
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.75rem 1.25rem;
	padding: 0;
	list-style: none;
}

.pagination,
.nav-links {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0.6rem;
	padding-block: 2rem;
}

.page-numbers {
	display: grid;
	place-items: center;
	min-width: 44px;
	min-height: 44px;
}

@media (max-width: 1023px) {
	.site-header__inner {
		grid-template-areas:
			"brand toggle"
			"nav nav"
			"cta cta";
		grid-template-columns: minmax(0, 1fr) 44px;
		grid-template-rows: 44px auto 44px;
		gap: 0 0.75rem;
		min-height: calc(5.875rem - 1px);
	}

	html {
		scroll-padding-top: 10rem;
	}

	#main-content,
	.site-main [id] {
		scroll-margin-top: 10rem;
	}

	.site-branding {
		grid-area: brand;
	}

	.site-branding a {
		display: inline-flex;
	}

	.has-js .nav-toggle {
		display: inline-flex;
		grid-area: toggle;
		justify-self: end;
	}

	.site-navigation {
		grid-area: nav;
		justify-self: stretch;
		border-top: 1px solid transparent;
	}

	.has-js .site-navigation {
		display: none;
	}

	.has-js .site-navigation.is-open {
		display: block;
		border-top-color: var(--color-border);
	}

	.site-navigation .menu {
		align-items: stretch;
		flex-direction: column;
		gap: 0;
		padding-block: 0 1rem;
	}

	.site-navigation a {
		display: flex;
		align-items: center;
		min-height: 44px;
		padding: 0.45rem 0;
	}

	.button--header {
		display: inline-flex;
		grid-area: cta;
		justify-self: stretch;
	}

	.appearance-grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}

	.card-grid,
	.wp-block-columns.card-grid {
		grid-template-columns: 1fr 1fr;
	}

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

	.site-footer__grid {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

@media (max-width: 820px) {
	.hero--with-media .hero__inner,
	.hero__inner:has(.asset-slot) {
		grid-template-columns: 1fr;
	}

	.hero__inner {
		min-height: 0;
	}

	.hero__content {
		padding-right: 0;
	}

	.hero__media img {
		min-height: 0;
		aspect-ratio: 4 / 3;
		object-position: center 18%;
	}

	.speaking-feature {
		grid-template-columns: 1fr;
	}

	.speaking-feature .wp-block-media-text__media img {
		min-height: 0;
		aspect-ratio: 4 / 3;
		object-position: center 18%;
	}

	.about-summary,
	.book-band,
	.book-progress,
	.newsletter-section__grid {
		grid-template-columns: 1fr;
	}

	.book-band .wp-block-buttons,
	.book-progress .wp-block-buttons {
		justify-content: flex-start;
	}

	.newsletter-benefits {
		padding-top: 2rem;
		padding-left: 0;
		border-top: 1px solid var(--color-border);
		border-left: 0;
	}

	.nonprofit-strip .wp-block-media-text__content {
		grid-template-columns: 1fr;
		gap: 0.75rem;
	}

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

@media (max-width: 600px) {
	:root {
		--section-space: 3.5rem;
	}

	.site-header__inner {
		grid-template-areas:
			"brand toggle"
			"nav nav"
			"cta cta";
		grid-template-columns: minmax(0, 1fr) 44px;
		grid-template-rows: 44px auto 44px;
		gap: 0 0.5rem;
		min-height: calc(5.875rem - 1px);
	}

	.nav-toggle__label {
		display: none;
	}

	.site-brand-link {
		font-size: 1.25rem;
	}

	.button--header {
		padding: 0.55rem 0.75rem;
		font-size: 1rem;
	}

	.authority-band,
	.start-here__grid,
	.card-grid,
	.wp-block-columns.card-grid,
	.site-footer__grid,
	.shmd-form__row,
	.shmd-form--inline,
	.site-footer__bottom {
		grid-template-columns: 1fr;
	}

	.authority-band > * {
		border-right: 0;
		border-bottom: 1px solid color-mix(in srgb, var(--color-porcelain) 16%, transparent);
	}

	.authority-band > *:last-child {
		border-bottom: 0;
	}

	.start-here__grid > li {
		padding-inline: 0;
	}

	.start-here__grid > li:nth-child(even) {
		border-left: 0;
	}

	.video-grid,
	.connected-specialties,
	.speaking-expertise {
		grid-template-columns: 1fr;
	}

	.button-group,
	.button-group .button {
		width: 100%;
	}

	.brand-field__inner {
		align-items: flex-start;
		flex-direction: column;
	}

	.shmd-form--inline > button[type="submit"] {
		grid-column: 1;
		grid-row: 3;
		width: 100%;
		margin-top: 0;
	}

	.shmd-form--inline > .shmd-consent {
		grid-column: 1;
		grid-row: 2;
	}

	.nonprofit-strip {
		grid-template-columns: 4.5rem minmax(0, 1fr) !important;
		gap: 1rem;
	}

	.footer-legal {
		grid-column: 1;
		grid-row: auto;
	}

	.footer-legal-menu {
		justify-content: center;
	}
}

@media (max-width: 420px) {
	:root {
		--gutter: 1rem;
	}

	.site-header__inner {
		gap: 0 0.4rem;
	}

	.custom-logo,
	.site-logo-fallback img {
		width: min(100%, 9.25rem);
		max-height: 3.25rem;
	}

	.button--header {
		min-height: 44px;
		padding: 0.5rem 0.6rem;
		font-size: 1rem;
	}

	.hero__content {
		padding-block: 3.25rem;
	}

	.hero__intro {
		font-size: 1.05rem;
	}

	.start-here__grid > li {
		grid-template-columns: 2.25rem minmax(0, 1fr);
		gap: 0.75rem;
	}

	.newsletter-section,
	.book-band,
	.book-progress {
		padding: 2rem 1.25rem;
	}

	.nonprofit-strip {
		grid-template-columns: 1fr !important;
	}

	.nonprofit-strip .wp-block-media-text__media img {
		width: 4.5rem;
	}

	.footer-link-list a {
		width: 100%;
	}
}

@media (max-width: 340px) {
	.site-brand-link {
		gap: 0.5rem;
		font-size: 1.125rem;
	}

	.site-brand-link img {
		height: 1.5rem;
	}
}

@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		scroll-behavior: auto !important;
		transition-duration: 0ms !important;
		animation-duration: 0ms !important;
		animation-iteration-count: 1 !important;
	}
}

@media print {
	.site-header,
	.site-footer,
	.button,
	.shmd-form {
		display: none !important;
	}

	body {
		background: var(--color-porcelain);
		color: var(--color-deep-green);
	}

	a {
		color: inherit;
	}
}
