/*
 * pages.css: page-level looks the block markup can't express on its own.
 * Loaded on the site and in the editor (functions.php, enqueue_block_assets).
 */

/* About: the sample cards read as sheets of paper, a second sheet peeking out behind each one. */
.leimer-sample-card {
	position: relative;
	background-color: color-mix(in srgb, var(--wp--preset--color--paper) 35%, #fff) !important;
	box-shadow:
		0 1px 2px rgba(31, 31, 28, 0.06),
		0 10px 28px -8px rgba(31, 31, 28, 0.14);
	border-top: 3px solid var(--wp--preset--color--accent) !important;
}

.leimer-sample-card::before {
	content: "";
	position: absolute;
	inset: 6px -6px -6px 6px;
	z-index: -1;
	background-color: #fff;
	border: 1px solid var(--wp--preset--color--line);
	border-radius: 2px;
}

.leimer-sample-cards {
	isolation: isolate;
}

/* Paper sheets (Ticket #274): a header strip with the logo mark, ruled lines and green checkmarks
   (Ticket #332: the sheets sit straight). The sheets sit on the tint, so the paper stands out. */
.leimer-sample-cards__grid {
	align-items: stretch;
}

.leimer-sheet-head {
	display: flex;
	align-items: center;
	gap: 0.6em;
	margin: 0 0 var(--wp--preset--spacing--30);
	padding-bottom: var(--wp--preset--spacing--20);
	border-bottom: 2px solid var(--wp--preset--color--accent);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.leimer-sheet-mark {
	display: inline-grid;
	place-items: center;
	width: 2em;
	height: 2em;
	background-color: var(--wp--preset--color--accent);
	color: var(--wp--preset--color--paper);
	font-family: var(--wp--preset--font-family--serif);
	font-size: 0.85em;
	letter-spacing: 0;
}

/* Ruled lines, and a tick box in front of each line. */
.leimer-sheet-line {
	border-bottom-color: color-mix(in srgb, var(--wp--preset--color--accent) 28%, var(--wp--preset--color--line)) !important;
}
/* The checkmark in front of each line (Ticket #332): a green tick that draws in left to right, one line
   after another, when the sheets scroll into view. The site's reveal script adds `is-visible` to the
   block, and `leimer-reveal-ready` to the page only when it can run (and motion is allowed), so with no
   script or with reduced motion the ticks are simply there. The sheets themselves never fade. */
.leimer-sheet-check {
	display: inline-block;
	width: 1em;
	height: 1em;
	margin-right: 0.6em;
	vertical-align: -0.12em;
	background-color: var(--wp--preset--color--accent);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5.5 5.5L20 6.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5.5 5.5L20 6.5'/%3E%3C/svg%3E") center / contain no-repeat;
	clip-path: inset(0 0 0 0);
	transition: clip-path 0.45s ease-out;
	transition-delay: calc(var(--leimer-check-i, 0) * 0.12s);
}
.leimer-checks.leimer-reveal,
.leimer-reveal-ready .leimer-checks.leimer-reveal:not(.is-visible) {
	opacity: 1;
	transform: none;
}
.leimer-reveal-ready .leimer-checks:not(.is-visible) .leimer-sheet-check {
	clip-path: inset(0 100% 0 0);
}
@media (prefers-reduced-motion: reduce) {
	.leimer-sheet-check,
	.leimer-reveal-ready .leimer-checks:not(.is-visible) .leimer-sheet-check {
		clip-path: none;
		transition: none;
	}
}

/* The card's title reads like a document heading: a rule under it. */
.leimer-sample-card h3 {
	padding-bottom: var(--wp--preset--spacing--20);
	border-bottom: 1px solid var(--wp--preset--color--ink);
}

@media (max-width: 640px) {
	.leimer-sample-card::before {
		inset: 4px -4px -4px 4px;
	}
}

/* Home hero: the promise reads one phrase per line (John, 2026-10-15). On a phone the type shrinks
   so "Finished Beautifully" still fits on one line instead of breaking in two. */
.leimer-hero-promise {
	text-wrap: nowrap;
}

@media (max-width: 480px) {
	.leimer-hero-promise.has-4-xl-font-size {
		font-size: min(var(--wp--preset--font-size--4-xl), 8.5vw) !important;
	}
}

/* About (Ticket #170): boxes instead of a wall of text. Cards fill their grid row evenly. */
.leimer-about-card {
	height: 100%;
}

.leimer-about-card {
	border-top: 3px solid var(--wp--preset--color--accent);
}

/* About job steps (Ticket #275). Without scripts: all seven as a plain grid of cards. With scripts on a
   wide screen (.is-tabs): dots on a line, one panel, Back and Next. On a phone: a swipe row that snaps. */
.leimer-stepper__list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(15rem, 1fr));
	gap: var(--wp--preset--spacing--40);
	margin: 0;
	padding: 0;
	list-style: none;
}

.leimer-stepper__step {
	margin: 0;
}

.leimer-stepper__number {
	display: block;
	color: var(--wp--preset--color--accent);
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--2-xl);
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.leimer-stepper__title {
	margin: var(--wp--preset--spacing--20) 0;
	font-size: var(--wp--preset--font-size--lg);
}

.leimer-stepper__text {
	margin: 0;
	font-size: var(--wp--preset--font-size--sm);
}

.leimer-stepper__nav[hidden],
.leimer-stepper__controls[hidden] {
	display: none;
}

@media (max-width: 700px) {
	.leimer-stepper__list {
		display: flex;
		gap: var(--wp--preset--spacing--30);
		margin-inline: calc(var(--wp--preset--spacing--40) * -1);
		padding: var(--wp--preset--spacing--20) var(--wp--preset--spacing--40) var(--wp--preset--spacing--30);
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		scroll-padding-inline: var(--wp--preset--spacing--40);
		-webkit-overflow-scrolling: touch;
	}
	.leimer-stepper__step {
		flex: 0 0 78%;
		scroll-snap-align: start;
	}
}

.leimer-stepper.is-tabs .leimer-stepper__list {
	display: block;
}

.leimer-stepper.is-tabs .leimer-stepper__step {
	max-width: 46rem;
	padding: var(--wp--preset--spacing--50);
}

/* .leimer-card sets its own display, which would beat the browser's [hidden]. */
.leimer-stepper.is-tabs .leimer-stepper__step[hidden] {
	display: none;
}

.leimer-stepper.is-tabs .leimer-stepper__title {
	font-size: var(--wp--preset--font-size--xl);
}

.leimer-stepper.is-tabs .leimer-stepper__text {
	font-size: var(--wp--preset--font-size--md);
}

.leimer-stepper.is-tabs .leimer-stepper__number {
	display: none;
}

.leimer-stepper__nav {
	position: relative;
	display: flex;
	justify-content: space-between;
	margin: 0 0 var(--wp--preset--spacing--40);
	padding: 0;
}

.leimer-stepper__nav::before {
	content: "";
	position: absolute;
	top: 1.25rem;
	left: 1.25rem;
	right: 1.25rem;
	height: 2px;
	background-color: var(--wp--preset--color--line);
}

.leimer-stepper__dot {
	position: relative;
	display: flex;
	flex: 1 1 0;
	flex-direction: column;
	align-items: center;
	gap: var(--wp--preset--spacing--20);
	padding: 0;
	border: 0;
	background: none;
	color: var(--wp--preset--color--ink-soft);
	font: inherit;
	font-size: var(--wp--preset--font-size--sm);
	cursor: pointer;
}

.leimer-stepper__dot-number {
	display: grid;
	place-items: center;
	width: 2.5rem;
	height: 2.5rem;
	border: 2px solid var(--wp--preset--color--line);
	border-radius: 50%;
	background-color: var(--wp--preset--color--paper);
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--lg);
	font-variant-numeric: tabular-nums;
	transition: background-color 0.2s, border-color 0.2s, color 0.2s;
}

.leimer-stepper__dot-label {
	max-width: 7rem;
	text-align: center;
	line-height: 1.25;
}

.leimer-stepper__dot:hover .leimer-stepper__dot-number {
	border-color: var(--wp--preset--color--accent);
}

.leimer-stepper__dot[aria-selected="true"] {
	color: var(--wp--preset--color--ink);
	font-weight: 600;
}

.leimer-stepper__dot[aria-selected="true"] .leimer-stepper__dot-number {
	border-color: var(--wp--preset--color--accent);
	background-color: var(--wp--preset--color--accent);
	color: #fff;
}

.leimer-stepper__dot:focus-visible,
.leimer-stepper__button:focus-visible {
	outline: 3px solid var(--wp--preset--color--accent);
	outline-offset: 3px;
	border-radius: 4px;
}

.leimer-stepper__controls {
	display: flex;
	gap: var(--wp--preset--spacing--30);
	margin-top: var(--wp--preset--spacing--40);
}

.leimer-stepper__button {
	padding: 0.6rem 1.4rem;
	border: 2px solid var(--wp--preset--color--accent);
	border-radius: 2px;
	background: none;
	color: var(--wp--preset--color--accent-deep);
	font: inherit;
	font-weight: 600;
	cursor: pointer;
}

.leimer-stepper__button:hover:not(:disabled) {
	background-color: var(--wp--preset--color--accent);
	color: #fff;
}

.leimer-stepper__button:disabled {
	opacity: 0.4;
	cursor: default;
}

@media (max-width: 900px) {
	.leimer-stepper__dot-label {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	.leimer-stepper__dot-number {
		transition: none;
	}
}

/* The licence band (Ticket #332): two columns on desktop, stacking on phones (the grid's minimum width). */
.leimer-about-licensed {
	margin-inline: 0;
	align-items: start;
}
.leimer-about-licensed__col > :first-child {
	margin-top: 0;
}

/* About (Ticket #274): John's photo, and our own licence emblem on the deep green band. */
.leimer-about-photo {
	margin: 0;
}
.leimer-about-photo img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 8px;
	box-shadow: 0 1px 2px rgba(31, 31, 28, 0.06), 0 8px 24px -10px rgba(31, 31, 28, 0.3);
}

.leimer-emblem-wrap {
	margin-block: 0 var(--wp--preset--spacing--40);
}
.leimer-emblem {
	display: inline-flex;
	flex-direction: column;
	align-items: center;
	gap: 0.15em;
	max-width: 100%;
	padding: 1.1em 1.8em;
	background-color: var(--wp--preset--color--paper);
	color: var(--wp--preset--color--accent-deep) !important;
	text-align: center;
	text-decoration: none !important;
	border: 2px solid var(--wp--preset--color--accent);
	outline: 1px solid var(--wp--preset--color--accent);
	outline-offset: -7px;
	border-radius: 4px;
	box-shadow: 0 10px 28px -10px rgba(0, 0, 0, 0.5);
}
.leimer-emblem:hover,
.leimer-emblem:focus-visible {
	box-shadow: 0 0 0 3px #fff, 0 10px 28px -10px rgba(0, 0, 0, 0.5);
}
.leimer-emblem span {
	color: inherit;
}
.leimer-emblem__top {
	font-size: var(--wp--preset--font-size--xs);
	font-weight: 700;
	letter-spacing: 0.14em;
	text-transform: uppercase;
}
.leimer-emblem__name {
	font-family: var(--wp--preset--font-family--serif);
	font-size: var(--wp--preset--font-size--2-xl);
	line-height: 1.15;
}
.leimer-emblem__class {
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 600;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}
.leimer-emblem__number {
	font-size: var(--wp--preset--font-size--xl);
	font-weight: 700;
	font-variant-numeric: tabular-nums;
}

/* Home reviews: a long review shows its first part, the rest opens under "Read more". */
.leimer-read-more {
	margin-top: var(--wp--preset--spacing--20);
}

.leimer-read-more > summary {
	cursor: pointer;
	color: var(--wp--preset--color--accent);
	font-size: var(--wp--preset--font-size--sm);
	font-style: normal;
	font-weight: 600;
}

.leimer-read-more[open] > summary {
	margin-bottom: var(--wp--preset--spacing--20);
}

/* Built-by credit (the built-by-credit mu-plugin, Ticket #6): small and quiet, under the license line. */
.atn-built-by {
	margin-block-start: var(--wp--preset--spacing--20);
	font-size: var(--wp--preset--font-size--sm);
	color: var(--wp--preset--color--ink-soft);
}
.atn-built-by a {
	color: inherit;
}

/* Partners page (Ticket #96): the Partners block's cards, three across, stacked on phones. */
.leimer-partners {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr));
	gap: var(--wp--preset--spacing--40);
	margin-left: 0;
	padding-left: 0;
	list-style: none;
}
.leimer-partner {
	padding: var(--wp--preset--spacing--40);
	background-color: #fff;
	border: 1px solid var(--wp--preset--color--line);
	border-top: 3px solid var(--wp--preset--color--accent);
	border-radius: 2px;
}
.leimer-partner__trade {
	margin: 0 0 var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--accent);
	font-size: var(--wp--preset--font-size--sm);
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}
.leimer-partner__name {
	margin: 0;
	font-size: var(--wp--preset--font-size--xl);
}
.leimer-partner__person {
	margin: var(--wp--preset--spacing--20) 0 0;
	color: var(--wp--preset--color--ink-soft);
	font-size: var(--wp--preset--font-size--sm);
}
.leimer-partner__about {
	margin: var(--wp--preset--spacing--30) 0 0;
	font-size: var(--wp--preset--font-size--md);
}

/* Emergency preparedness page: things John has not confirmed yet stand out until he does. */
.leimer-confirm {
	background-color: #fff3b0;
	color: var(--wp--preset--color--ink);
	padding: 0 0.25em;
	font-size: 0.85em;
	font-weight: 600;
}

/* John's photo and the kit price line on the preparedness page (Ticket #277). */
.leimer-prep-photo {
	margin-block: var(--wp--preset--spacing--50);
}

.leimer-prep-photo img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 8px;
}

.leimer-prep-photo figcaption {
	margin-top: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--ink-soft);
}

.leimer-prep-price {
	margin-block: var(--wp--preset--spacing--40);
	font-family: var(--wp--preset--font-family--serif);
	font-weight: 600;
	color: var(--wp--preset--color--accent-deep);
}

/* A grey box where a photo will go. */
.leimer-photo-placeholder {
	min-height: 14rem;
	margin-block: var(--wp--preset--spacing--50);
	padding: var(--wp--preset--spacing--40);
	background-color: var(--wp--preset--color--line);
	color: var(--wp--preset--color--ink-soft);
	border: 1px dashed var(--wp--preset--color--ink-soft);
}

/* An empty page photo spot (Ticket #395), shown only to someone signed in. */
.leimer-photo-placeholder--spot {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.leimer-prep-hazard {
	padding-left: var(--wp--preset--spacing--30);
	border-left: 3px solid var(--wp--preset--color--accent);
}

.leimer-prep-card {
	height: 100%;
	padding: var(--wp--preset--spacing--40);
}

.leimer-prep-stat {
	padding: var(--wp--preset--spacing--40);
	border-top: 3px solid var(--wp--preset--color--accent);
	background-color: var(--leimer-card, var(--wp--preset--color--tint));
}
.leimer-prep-stat p:first-child {
	margin-bottom: 0;
	line-height: 1;
	font-variant-numeric: tabular-nums;
}

.leimer-prep-steps li,
.leimer-prep-creds li {
	margin-bottom: var(--wp--preset--spacing--30);
}

.leimer-prep-faq {
	padding-block: var(--wp--preset--spacing--30);
	border-bottom: 1px solid var(--wp--preset--color--line);
}
.leimer-prep-faq > summary {
	cursor: pointer;
	font-weight: 600;
}

/* Page with lead image (templates/page-lead-image.html): the featured image as a header with the
   page title on it. West Marin is the demo (2026-10-15 call). */
.leimer-lead {
	margin-bottom: var(--wp--preset--spacing--50);
}
.leimer-lead .wp-block-post-title,
.leimer-lead .wp-block-query-title {
	margin: 0;
	text-shadow: 0 1px 12px rgba(0, 0, 0, 0.45);
}
/* The photo's credit (its Media Library caption), in the header's bottom-right corner. */
.leimer-lead__credit {
	position: absolute;
	right: var(--wp--preset--spacing--30);
	bottom: var(--wp--preset--spacing--20);
	margin: 0;
	max-width: 70%;
	font-size: var(--wp--preset--font-size--xs, 0.75rem);
	text-align: right;
	color: var(--wp--preset--color--paper);
	padding: 0.15rem 0.5rem;
	border-radius: 3px;
	background: rgba(0, 0, 0, 0.45);
}
.leimer-lead__credit a {
	color: inherit;
	text-decoration: underline;
}
/* !important: the cover block writes its min-height inline. */
@media (max-width: 640px) {
	.leimer-lead {
		min-height: 16rem !important;
	}
	/* The title fills the foot of the photo on a phone, so the credit moves to the top corner. */
	.leimer-lead__credit {
		top: var(--wp--preset--spacing--20);
		bottom: auto;
		max-width: 90%;
	}
}

/* Service page header (Ticket #270): the same cover as above, or the plain title (lined up with the
   780px compact header under it) when the Work type has no usable photo. */
.leimer-work-type-header--plain {
	max-width: 780px;
}

/* The places a town page covers, one line under its lead image. */
.leimer-town-places {
	color: var(--wp--preset--color--ink-soft);
	font-weight: 600;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

/* "and all across Marin County" (Ticket #362): the last line of the Where we work list, no link and
   no bullet, so the list never reads as the only towns we work in. */
.leimer-town-list__more {
	list-style: none;
	font-style: italic;
	color: var(--wp--preset--color--ink-soft);
}

/* Wildfire and drainage pages (Ticket #362): the licensed photo and our drainage diagram, each with its credit or note under it. */
.leimer-figure img {
	width: 100%;
	height: auto;
	border-radius: 4px;
}
.leimer-figure figcaption {
	margin-top: var(--wp--preset--spacing--20);
	color: var(--wp--preset--color--ink-soft);
	font-size: var(--wp--preset--font-size--sm);
}
.leimer-figure figcaption a {
	color: inherit;
}
.leimer-diagram-key {
	margin-bottom: var(--wp--preset--spacing--60);
}
/* Phones: the diagram keeps a readable size and scrolls sideways; its numbered key follows below. */
@media (max-width: 640px) {
	.leimer-figure--diagram {
		overflow-x: auto;
	}
	.leimer-figure--diagram img {
		width: 44rem;
		max-width: none;
	}
	/* The caption stays put while the drawing scrolls. */
	.leimer-figure--diagram figcaption {
		position: sticky;
		left: 0;
	}
}

/* Wildfire and drainage pages: the rule cards and the Services link cards. */
.leimer-rule {
	height: 100%;
	padding: var(--wp--preset--spacing--40);
	border-top: 3px solid var(--wp--preset--color--accent);
	background-color: var(--leimer-card, var(--wp--preset--color--tint));
}
.leimer-rule > :last-child {
	margin-bottom: 0;
}
.leimer-sources {
	color: var(--wp--preset--color--ink-soft);
}
.leimer-sources li {
	margin-bottom: var(--wp--preset--spacing--20);
}

/* Services hub (Ticket #221): one card per Work type, its lead image above the text. The grid
   (18rem minimum) falls to one column on phones. The image is a wide 3:2 crop. */
.leimer-service-cards {
	gap: var(--wp--preset--spacing--50);
}
.leimer-card.leimer-service-card {
	overflow: hidden;
	padding: 0 0 var(--wp--preset--spacing--40);
}
.leimer-service-card > :not(.leimer-work-type-links) {
	padding-inline: var(--wp--preset--spacing--40);
}
.leimer-service-card > .leimer-work-type-links {
	margin-bottom: var(--wp--preset--spacing--30);
}
.leimer-service-card > .wp-block-heading {
	margin-top: 0;
}
.leimer-service-card .leimer-work-type-tile {
	aspect-ratio: 4 / 3;
}
.leimer-land .leimer-work-type-tile {
	aspect-ratio: 3 / 2;
}
.leimer-service-card > p {
	margin-block: 0 var(--wp--preset--spacing--20);
}
/* The closing "Not listed? Ask us" card runs the full width under the 12 service cards, which fill
   every row at two and three across (Tickets #360, #361). */
.leimer-card.leimer-service-ask {
	grid-column: 1 / -1;
	background-color: var(--wp--preset--color--tint);
	display: flex;
	flex-direction: column;
	justify-content: center;
}
/* Columns are set outright: 1 on a phone, 2 on a tablet, 3 on a desktop. */
.leimer-service-cards.is-layout-grid {
	grid-template-columns: 1fr !important;
}
@media (min-width: 641px) {
	.leimer-service-cards.is-layout-grid {
		grid-template-columns: repeat(2, 1fr) !important;
	}
}
@media (min-width: 1000px) {
	.leimer-service-cards.is-layout-grid {
		grid-template-columns: repeat(3, 1fr) !important;
	}
}
/* The land cards are white cards on the medium-cream row (Ticket #302). */
.leimer-land .leimer-card {
	height: 100%;
	border-top: 3px solid var(--wp--preset--color--accent);
}
.leimer-land .leimer-work-type-links--single {
	margin-bottom: var(--wp--preset--spacing--30);
}
/* The land cards sit on the tint already: their placeholder takes the page colour instead. */
.leimer-land .leimer-work-type-tile--no-photo {
	background: var(--wp--preset--color--paper);
}

/* Flush frame (Ticket #318). A page that opens on a full-width header (hub, detail, story or the
   Service page's photo header) sits straight under the logo bar: no strip of page background. A page
   that opens on plain text (Privacy, 404, the plain Service title) keeps its normal space. Inline
   margins on the templates' main area, hence !important. */
.wp-site-blocks > main:has(.leimer-hub-header),
.wp-site-blocks > main:has(.leimer-detail-header),
.wp-site-blocks > main:has(.leimer-story-header),
.wp-site-blocks > main:has(.leimer-lead) {
	margin-block-start: 0 !important;
}
.wp-site-blocks > main:has(.leimer-work-type-header--plain) {
	margin-block-start: var(--wp--preset--spacing--60) !important;
}

/* A band in the template sits under the page's main area: flush when the last row there runs edge to
   edge (it brings its own padding), otherwise a normal space above it. */
.wp-site-blocks > main + .leimer-estimate-band {
	margin-block-start: var(--wp--preset--spacing--60) !important;
}
.wp-site-blocks > main:has(> .alignfull:last-child) + .leimer-estimate-band {
	margin-block-start: 0 !important;
}

/* No strip of page background between two full-width rows, on any page (Ticket #315): the template's
   block gap only belongs between ordinary blocks. A last full-width row also sits straight on the footer. */
.wp-site-blocks main .alignfull + .alignfull {
	margin-block-start: 0 !important;
}
.wp-site-blocks:has(> main > .alignfull:last-child) > footer,
.wp-site-blocks:has(> main .wp-block-post-content > .alignfull:last-child) > footer {
	margin-block-start: 0 !important;
}

/* The class sets the colours too, so a stored copy of the old deep-green band follows the theme. */
.leimer-estimate-band {
	background-color: var(--wp--preset--color--tint-dark) !important;
	color: var(--wp--preset--color--ink) !important;
}
.leimer-estimate-band :is(h1, h2, h3, p) {
	color: var(--wp--preset--color--ink) !important;
}
.leimer-estimate-band .wp-block-button__link {
	background-color: var(--wp--preset--color--accent) !important;
	color: var(--wp--preset--color--paper) !important;
}

/* The Estimate band is dark cream and sits straight on the deep-green footer: the colour change is the
   edge. A band ending the page content or sitting in the template has no gap to the footer; a page
   with no band keeps its normal space. One rule for every template. */
.wp-site-blocks > .leimer-estimate-band + footer,
.wp-site-blocks:has(> main .wp-block-post-content > .leimer-estimate-band:last-child) > footer {
	margin-block-start: 0 !important;
}

/* Footer (Tickets #268, #298): a deep green band. The logo, company line and button sit in a
   medium-cream box on the left; three link columns with ruled headings on the right; a thin bottom bar. Paper-coloured text on
   the deep green is well past 4.5:1; links get an underline on hover and a visible focus ring. */
.leimer-footer {
	color: var(--wp--preset--color--paper);
}
.leimer-footer p {
	margin-block: 0;
}
.leimer-footer a {
	color: inherit;
	text-decoration: none;
}
.leimer-footer a:hover {
	text-decoration: underline;
	text-underline-offset: 0.2em;
}
.leimer-footer a:focus-visible {
	outline: 2px solid var(--wp--preset--color--paper);
	outline-offset: 3px;
	border-radius: 2px;
	text-decoration: underline;
}

/* The logo and contact block sits in a medium-cream box (Ticket #298), so the wordmark (drawn in
   currentColor) is the dark green. Inside the box links are dark: underline on hover, a dark focus ring. */
.leimer-footer__intro {
	padding: var(--wp--preset--spacing--40);
	border-radius: 6px;
	align-self: start;
}
.leimer-footer__intro a:focus-visible {
	outline: 2px solid var(--wp--preset--color--accent-deep);
	outline-offset: 3px;
}
.leimer-footer__intro .leimer-footer__cta .wp-block-button__link {
	background-color: var(--wp--preset--color--accent-deep);
	color: var(--wp--preset--color--paper);
}
.leimer-footer__intro .leimer-footer__cta .wp-block-button__link:hover,
.leimer-footer__intro .leimer-footer__cta .wp-block-button__link:focus-visible {
	background-color: var(--wp--preset--color--accent);
	color: #fff;
	text-decoration: none;
}

.leimer-footer__brand {
	color: var(--wp--preset--color--accent-deep);
}
.leimer-footer__brand .leimer-brand {
	height: 3.25rem !important; /* the wordmark pattern sets its height inline */
}

.leimer-footer .leimer-footer__main {
	/* intro narrower than the three link columns, so the columns stay side by side on a laptop */
	grid-template-columns: minmax(0, 1fr);
}
@media (min-width: 782px) {
	.leimer-footer .leimer-footer__main {
		grid-template-columns: minmax(0, 1fr) minmax(0, 2fr);
	}
	/* WordPress writes its own grid rule for each layout group, later in the page: the extra class wins it. From tablet up, three across, always. */
	.leimer-footer .leimer-footer__columns {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: var(--wp--preset--spacing--40);
	}
}

.leimer-footer__cta {
	margin-top: var(--wp--preset--spacing--20);
}

.leimer-footer__heading {
	font-weight: 600;
	letter-spacing: 0.08em;
	font-variant-caps: all-small-caps;
	margin-bottom: var(--wp--preset--spacing--30);
	padding-bottom: var(--wp--preset--spacing--20);
	border-bottom: 1px solid color-mix(in srgb, #fff 25%, transparent);
}

.leimer-footer__list {
	list-style: none;
	margin: 0;
	padding: 0;
}
.leimer-footer__list li {
	margin-block: 0.6em;
}

.leimer-footer__note {
	margin-top: var(--wp--preset--spacing--30) !important;
	opacity: 0.8;
}

/* The thin bottom bar. */
.leimer-footer__bar {
	border-top: 1px solid color-mix(in srgb, #fff 25%, transparent);
}
.leimer-footer__bar p {
	opacity: 0.85;
}

/* Built-by credit (the built-by-credit mu-plugin, Ticket #6): small and quiet, in the bottom bar. */
.leimer-footer .atn-built-by {
	margin-block-start: 0;
	color: inherit;
	opacity: 0.85;
}

/* Compact page header (Ticket #266): the intro, then one slim strip of trust facts under it. The
   strip wraps on phones; items are separated by a thin rule on wider screens. */
.leimer-page-header {
	margin-block-end: var(--wp--preset--spacing--50);
}

.leimer-page-header > :first-child {
	margin-block-start: 0;
}

.leimer-trust-strip {
	align-items: center;
	column-gap: var(--wp--preset--spacing--40);
	padding-block: var(--wp--preset--spacing--20);
	border-top: 1px solid var(--wp--preset--color--tint);
	border-bottom: 1px solid var(--wp--preset--color--tint);
}

.leimer-trust-item {
	margin-block: 0;
	font-weight: 600;
}

.leimer-trust-item:last-child {
	margin-inline-start: auto;
}

/* Hub page header (Ticket #299): the logo bar stays paper with a thin line under it, then a medium-cream
   band with eyebrow, title, intro (two thirds) and a white card (one third) with a green top edge. The
   cream and the card colour come from the Section: medium cream style (Ticket #296). */
body:has(.leimer-hub-header) header.wp-block-template-part {
	border-bottom: 1px solid var(--wp--preset--color--line);
}

.leimer-hub-header + :not(.alignfull) {
	margin-block-start: var(--wp--preset--spacing--60) !important;
}

/* A full-width row straight under any hub header band joins it: no strip of page background (Ticket #315). */
.leimer-hub-header + .alignfull {
	margin-block-start: 0 !important;
}

.leimer-hub-header + .is-style-section-tint {
	border-top: 1px solid var(--wp--preset--color--line);
}

.leimer-hub-header__cols {
	align-items: flex-start;
	margin-bottom: 0;
}

.leimer-hub-header__main > :first-child,
.leimer-hub-header__main > :last-child {
	margin-block: 0;
}

.leimer-hub-eyebrow {
	margin-block: 0 var(--wp--preset--spacing--10) !important;
	color: var(--wp--preset--color--accent);
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.leimer-hub-header__main :is(h1, .wp-block-post-title) {
	margin-block: 0 var(--wp--preset--spacing--30);
	font-size: var(--wp--preset--font-size--3-xl, 2rem);
}

.leimer-hub-header__main > :is(p, ul, ol) {
	max-width: 780px;
	margin-block: 0 var(--wp--preset--spacing--30);
}

.leimer-hub-header__main > :last-child {
	margin-bottom: 0;
}

.leimer-hub-card {
	padding: var(--wp--preset--spacing--40);
	border-top: 3px solid var(--wp--preset--color--accent);
	border-radius: 6px;
	background-color: var(--leimer-card, #fff);
	box-shadow: 0 1px 3px color-mix(in srgb, #000 12%, transparent);
}

.leimer-hub-card__item {
	position: relative;
	margin-block: 0 var(--wp--preset--spacing--30);
	padding-inline-start: 2.25rem;
}

.leimer-hub-card__item:last-child {
	margin-bottom: 0;
}

.leimer-hub-card__item::before {
	content: "";
	position: absolute;
	inset-inline-start: 0;
	top: 0.15rem;
	width: 1.5rem;
	height: 1.5rem;
	background-color: var(--wp--preset--color--accent);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

.leimer-hub-card__item.is-icon-badge::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12.5l3 3 5-6'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M8 12.5l3 3 5-6'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-shield::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6z'/%3E%3Cpath d='M8.5 12l2.5 2.5 4.5-5'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-doc::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h8l4 4v14H7z'/%3E%3Cpath d='M15 3v4h4M10 12h6M10 16h6'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 3h8l4 4v14H7z'/%3E%3Cpath d='M15 3v4h4M10 12h6M10 16h6'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-phone::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h4l2 5-2.5 1.5a11 11 0 0 0 5 5L16 12l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 4 5a2 2 0 0 1 2-2z'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 3h4l2 5-2.5 1.5a11 11 0 0 0 5 5L16 12l5 2v4a2 2 0 0 1-2 2A16 16 0 0 1 4 5a2 2 0 0 1 2-2z'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-mail::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='M3 7l9 6 9-6'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-clock::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='12' r='9'/%3E%3Cpath d='M12 7v5l3 2'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-price::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12V4h8l10 10-8 8z'/%3E%3Ccircle cx='7.5' cy='8.5' r='1.2'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 12V4h8l10 10-8 8z'/%3E%3Ccircle cx='7.5' cy='8.5' r='1.2'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-hand::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 20c0-3.5 3-6 6-6s6 2.5 6 6'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M17 14c2.5 0 4 2 4 5'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='9' cy='8' r='3'/%3E%3Cpath d='M3 20c0-3.5 3-6 6-6s6 2.5 6 6'/%3E%3Ccircle cx='17' cy='9' r='2.5'/%3E%3Cpath d='M17 14c2.5 0 4 2 4 5'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-alert::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l10 18H2z'/%3E%3Cpath d='M12 10v5M12 18v.5'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3l10 18H2z'/%3E%3Cpath d='M12 10v5M12 18v.5'/%3E%3C/svg%3E");
}

.leimer-hub-card__item.is-icon-calendar::before {
	-webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
	mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M3 10h18M8 3v4M16 3v4'/%3E%3C/svg%3E");
}

.leimer-hub-card__name,
.leimer-hub-card__detail {
	margin-block: 0 !important;
}

.leimer-hub-card__detail {
	margin-block-start: 0.15rem !important;
}

/* The email is the longest bold name: a size that fits the one-third column without breaking mid-word. */
.leimer-hub-card--contact .leimer-hub-card__name {
	font-size: var(--wp--preset--font-size--sm, 0.9rem);
	overflow-wrap: normal;
}

.leimer-hub-card__name {
	font-weight: 600;
}

/* The licence name links to the same lookup as "check it": it reads as plain bold text. */
.leimer-hub-card__name a {
	color: inherit;
	text-decoration: none;
}

.leimer-hub-card__detail {
	color: var(--wp--preset--color--ink-soft);
}

/* Detail page header (Ticket #300): the photo header, then a short medium-cream band holding the intro
   (two thirds) and a small trust card (one third). The photo header sits flush on the band. */
body:has(.leimer-detail-header) .leimer-lead {
	margin-bottom: 0;
}

body:has(.leimer-detail-header) .leimer-work-type-header--plain {
	margin-bottom: var(--wp--preset--spacing--40);
}

.leimer-detail-header {
	margin-block-start: 0 !important;
}

.leimer-detail-header .leimer-hub-header__main > :first-child {
	margin-block-start: 0;
}

.leimer-detail-header .leimer-hub-header__main > p:last-of-type {
	margin-bottom: 0;
}

.leimer-hub-card--small {
	padding: var(--wp--preset--spacing--30);
}

.leimer-hub-card--small .leimer-hub-card__item {
	margin-block-end: var(--wp--preset--spacing--20);
	padding-inline-start: 2rem;
}

.leimer-hub-card--small .leimer-hub-card__item::before {
	width: 1.25rem;
	height: 1.25rem;
}

.leimer-hub-card--small .leimer-hub-card__item:last-child {
	margin-bottom: 0;
}

/* The Reviews card is the Reviews block's summary; with no Reviews yet there is no empty card. */
.leimer-hub-card--reviews:not(:has(.leimer-reviews)) {
	display: none;
}

/* Phones: the card is a slim row of icons with the bold names (the detail lines go), under the intro. */
@media (max-width: 781px) {
	.leimer-detail-header {
		padding-top: var(--wp--preset--spacing--30) !important;
		padding-bottom: var(--wp--preset--spacing--30) !important;
	}

	.leimer-hub-header {
		padding-top: var(--wp--preset--spacing--40) !important;
		padding-bottom: var(--wp--preset--spacing--40) !important;
	}

	.leimer-hub-card:not(.leimer-hub-card--reviews) {
		display: flex;
		flex-wrap: wrap;
		gap: var(--wp--preset--spacing--20) var(--wp--preset--spacing--40);
		padding: var(--wp--preset--spacing--30);
	}

	.leimer-hub-card:not(.leimer-hub-card--reviews) .leimer-hub-card__item {
		margin: 0;
		padding-inline-start: 1.75rem;
	}

	.leimer-hub-card__item::before {
		top: 0.05rem;
		width: 1.25rem;
		height: 1.25rem;
	}

	.leimer-hub-card:not(.leimer-hub-card--reviews) .leimer-hub-card__detail {
		display: none;
	}

	.leimer-hub-card--reviews {
		padding: var(--wp--preset--spacing--30);
	}

	.leimer-hub-card--reviews .leimer-reviews__summary {
		flex-direction: row;
		flex-wrap: wrap;
		align-items: center;
		font-size: var(--wp--preset--font-size--sm, 0.9rem);
	}

	.leimer-hub-card__name {
		font-size: var(--wp--preset--font-size--sm, 0.9rem);
	}

	.leimer-hub-card__name a {
		text-decoration: underline;
	}
}

/* On the wide pages, a full-width tint band keeps its text in the same left-aligned 780px column as
   the rest of the page, lined up with the 1200px content edge (Ticket #183). */
.leimer-band-left.is-layout-constrained > :not(.alignfull):not(.alignwide) {
	max-width: var(--wp--style--global--content-size);
	margin-left: max(0px, calc((100% - var(--wp--style--global--wide-size)) / 2)) !important;
}

/* A paragraph in a full-width section still reads at the 780px text width (Ticket #183). */
.leimer-measure {
	max-width: var(--wp--style--global--content-size);
}

/* Service page: the typical-jobs line under the service text (Ticket #219). */
.leimer-service-typical {
	font-size: var(--wp--preset--font-size--sm, 0.875rem);
	opacity: 0.85;
}

/* Story header (Tickets #301, #319): the hub band with John's intro and his square photo, set on the
   band's bottom edge in the one-third slot. The overhang is read by the band and by the section after
   it (a variable set only on the band is invisible to its sibling, which lost its top padding). */
.leimer-story-header,
.leimer-story-header + .leimer-about-section {
	--leimer-story-overhang: 3rem;
}

.leimer-story-header {
	position: relative;
	z-index: 1;
	overflow: visible;
}

.leimer-story-header .leimer-hub-header__cols {
	align-items: flex-end;
}

.leimer-story-header__side {
	align-self: flex-end;
	margin-bottom: calc(-1 * var(--wp--preset--spacing--60) - var(--leimer-story-overhang)) !important;
}

/* The photo is square and shown whole: never cropped to another shape. */
.leimer-story-header__side .leimer-about-photo img {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: contain;
	border: 4px solid var(--wp--preset--color--paper);
}

/* The section under the band leaves room for the part of the photo that hangs below the edge. */
.leimer-story-header + .leimer-about-section {
	padding-top: calc(var(--wp--preset--spacing--60) + var(--leimer-story-overhang)) !important;
}

/* Phones: the photo stacks under the text, still hanging off the band's bottom edge. */
@media (max-width: 781px) {
	.leimer-story-header,
	.leimer-story-header + .leimer-about-section {
		--leimer-story-overhang: 4rem;
	}

	.leimer-story-header__side {
		align-self: stretch;
		max-width: 18rem;
		margin-bottom: calc(-1 * var(--leimer-story-overhang)) !important;
	}

	.leimer-story-header + .leimer-about-section {
		padding-top: calc(var(--wp--preset--spacing--40) + var(--leimer-story-overhang)) !important;
	}
}

/* Seismic retrofitting (Ticket #361): John's checks in three grouped cards (Ticket #381), each with a
   green top edge so they read apart from the work cards below and a tick for every item; then the
   "Did you know" facts, each with a small source line. */
.leimer-seismic-risk {
	gap: var(--wp--preset--spacing--40);
	margin-top: var(--wp--preset--spacing--40);
}
.leimer-seismic-risk__card {
	height: 100%;
	border-top: 3px solid var(--wp--preset--color--accent);
}
.leimer-seismic-risk__card h3 {
	margin-top: 0;
}
.leimer-seismic-checks {
	margin-bottom: 0;
	padding-left: 0;
	list-style: none;
}
.leimer-seismic-checks li {
	position: relative;
	padding-left: 1.6em;
}
.leimer-seismic-checks li::before {
	content: "";
	position: absolute;
	top: 0.3em;
	left: 0;
	width: 1em;
	height: 1em;
	background-color: var(--wp--preset--color--accent);
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5.5 5.5L20 6.5'/%3E%3C/svg%3E") center / contain no-repeat;
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12.5l5.5 5.5L20 6.5'/%3E%3C/svg%3E") center / contain no-repeat;
}
.leimer-seismic-checks li + li {
	margin-top: var(--wp--preset--spacing--20);
}
.leimer-did-you-know__list {
	max-width: 52rem;
	padding-left: 1.2em;
}
.leimer-did-you-know__list li + li {
	margin-top: var(--wp--preset--spacing--30);
}
.leimer-did-you-know__source {
	display: block;
	font-size: var(--wp--preset--font-size--sm);
	opacity: 0.85;
}
