/* Only what theme.json cannot express. */

:where(.wp-site-blocks) > * { margin-block-start: 0; }

.ftra-header { border-bottom: 1px solid var(--wp--preset--color--line); position: sticky; top: 0; z-index: 10; background: var(--wp--preset--color--base); }
.ftra-mark { display: block; flex: none; }
.ftra-header .wp-block-button__link { padding: 0.6em 1.2em; font-size: var(--wp--preset--font-size--small); }

.ftra-eyebrow { font-weight: 700; letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 0.5rem; }

.ftra-hero h1 { color: inherit; max-width: 16ch; }
.ftra-hero .wp-block-columns { align-items: center; gap: var(--wp--preset--spacing--50); }
.ftra-hero .wp-block-column:first-child { flex: 1 1 60%; }
.ftra-hero .wp-block-column:last-child { flex: 0 1 360px; }
.ftra-trustline { opacity: 0.8; }
.ftra-hero .ftra-hero-card { height: auto; color: var(--wp--preset--color--contrast); box-shadow: 0 24px 60px rgba(0, 0, 0, 0.25); }
.ftra-hero-card p { margin: 0.4rem 0; }
.has-primary-background-color h2,
.has-primary-background-color h1 { color: inherit; }

.ftra-card { border: 1px solid var(--wp--preset--color--line); border-radius: var(--wp--custom--radius); height: 100%; box-sizing: border-box; }
.ftra-card h3 { margin-top: 0; }
.ftra-card > :last-child { margin-bottom: 0; }

.ftra-step-num {
	font-family: var(--wp--preset--font-family--heading);
	font-size: 3rem;
	line-height: 1;
	margin: 0;
}

.ftra-photo {
	aspect-ratio: 4 / 5;
	border-radius: var(--wp--custom--radius);
	background: var(--wp--preset--color--surface);
	border: 2px dashed var(--wp--preset--color--line);
	display: grid;
	place-items: center;
	color: var(--wp--preset--color--muted);
	font-size: var(--wp--preset--font-size--small);
}

.ftra-placeholder { border: 2px dashed var(--wp--preset--color--accent); border-radius: var(--wp--custom--radius); }

.wp-block-details summary { cursor: pointer; font-weight: 600; color: var(--wp--preset--color--primary); }
.wp-block-details[open] summary { margin-bottom: 0.5rem; }

.ftra-footer a { color: inherit; }

@media (max-width: 781px) {
	.ftra-header .wp-block-buttons { display: none; }
}

/* Blog list: space between posts */
.wp-block-post-template > li + li { margin-top: var(--wp--preset--spacing--60); }
.wp-block-post-featured-image img { object-fit: cover; }
