/*
Theme Name: afaik Ipsum
Description: Child-Theme für die lokale Weiterentwicklung von afaik.de auf Basis von Ipsum.
Author: Kai Spriestersbach
Template: ipsum
Version: 0.4.6
Requires at least: 7.1
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: afaik-ipsum
Tags: blog, full-site-editing, block-patterns, style-variations
*/

/* Keep the theme UI font above the legacy production body-only snippet. */
body.wp-child-theme-afaik-ipsum {
	font-family: var(--wp--preset--font-family--inter);
}

/* Same reading defaults in rendered post content and the post editor canvas.
 * UI blocks below opt back into Inter; headings use theme.json. */
.wp-block-post-content,
.editor-styles-wrapper .is-root-container {
	font-family: var(--wp--preset--font-family--newsreader);
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.6;
	font-optical-sizing: auto;
}

.wp-block-post-content p,
.editor-styles-wrapper .is-root-container p {
	line-height: inherit;
}

.wp-block-post-content > :where(p, ul, ol) + :where(p, ul, ol),
.editor-styles-wrapper .is-root-container > :where(p, ul, ol) + :where(p, ul, ol) {
	margin-block-start: 1.4em;
}

:where(.wp-block-post-content, .editor-styles-wrapper) :where(h2, h3, h4) {
	margin-block-start: 1.8em;
	margin-block-end: 0.6em;
}

:where(.wp-block-query, .wp-block-latest-posts, .wp-block-navigation,
.wp-block-search, .wp-block-table, .wp-block-post-comments-form, .frm_forms,
.wp-block-accordion, .afaik-header, .afaik-footer) {
	font-family: var(--wp--preset--font-family--inter);
	font-size: 1rem;
	line-height: 1.5;
}

/* Ipsum declares dotted links with !important in both stylesheets. */
a, u, ins, span[style*="text-decoration"] {
	text-decoration-style: solid !important;
	text-underline-offset: 0.15em;
}

:where(a, button, input, textarea, select):focus-visible {
	outline: 3px solid var(--wp--preset--color--focus);
	outline-offset: 4px;
}

.wp-block-post-content :where(h1, h2, h3, a),
.wp-block-post-title {
	overflow-wrap: anywhere;
}

.wp-block-image figcaption,
.wp-block-table figcaption {
	font-family: var(--wp--preset--font-family--inter);
	font-size: 0.875rem;
	line-height: 1.5;
	color: var(--wp--preset--color--muted);
}

/* Preserve readable tables without widening the entire mobile page. */
.wp-block-table { overflow-x: auto; }
.wp-block-table table { min-width: 36rem; }
.wp-block-table table { width: 100%; border-collapse: collapse; font-size: 0.9375rem; line-height: 1.55; }
.wp-block-table :is(th, td) {
 padding: 1rem 1.1rem;
 border: 0;
 border-bottom: 1px solid var(--wp--preset--color--theme-4);
 vertical-align: top;
 overflow-wrap: break-word;
}
.wp-block-table thead { border-bottom: 2px solid var(--wp--preset--color--control-border); }
.wp-block-table thead th { background: var(--wp--preset--color--paper); font-weight: 650; text-align: start; }
.wp-block-table tbody th { text-align: start; }
.wp-block-table tbody tr:nth-child(even) { background: var(--wp--preset--color--theme-5); }
.wp-block-table tfoot { border-top: 2px solid var(--wp--preset--color--control-border); }
.wp-block-table figcaption { text-align: start; }
@media (max-width: 600px) {
 .wp-block-table :is(th, td) { padding: 0.8rem; }
}

/* Applies to existing content without changing saved blocks or image files.
 * An inward outline preserves dimensions and cannot cause page overflow. */
:where(.wp-block-post-content, .editor-styles-wrapper) .wp-block-image:not(.is-style-afaik-no-frame) img:not(.avatar) {
 outline: 1px solid var(--wp--preset--color--theme-4);
 outline-offset: -1px;
}
:where(.wp-block-post-content, .editor-styles-wrapper) :is(.afaik-testimonial-author, .wp-block-avatar) img,
:where(.wp-block-post-content, .editor-styles-wrapper) .wp-block-image.is-style-afaik-no-frame img {
 outline: none;
}

/* Decorative palette lines are too faint for form controls. */
.wp-block-search .wp-block-search__input,
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper,
.wp-block-post-comments-form :where(input:not([type="submit"]), textarea) {
	border-color: var(--wp--preset--color--muted);
}

.wp-block-search .wp-block-search__input::placeholder {
	color: var(--wp--preset--color--muted);
	opacity: 1;
}

/* Block-specific parent button rules otherwise override element defaults. */
.wp-block-button .wp-block-button__link,
.wp-block-search .wp-block-search__button {
	border-radius: 4px;
	border: 1px solid transparent;
	background: var(--wp--preset--color--theme-3);
	color: var(--wp--preset--color--theme-1);
	font-family: var(--wp--preset--font-family--inter);
	font-size: 0.9375rem;
	font-weight: 500;
}
.wp-block-button .wp-block-button__link:is(:hover, :focus, :active),
.wp-block-search .wp-block-search__button:is(:hover, :focus, :active) {
	border: 1px solid transparent;
	background: var(--wp--preset--color--accent-strong);
	color: var(--wp--preset--color--theme-1);
}

/* A compact, editable header keeps search out of the reading area. */
.afaik-header {
	box-sizing: border-box;
	max-width: var(--wp--style--global--wide-size);
	margin-inline: auto;
	padding-block: 1.5rem 2.5rem;
	padding-inline: clamp(20px, 5vw, 24px);
	border-bottom: 1px solid var(--wp--preset--color--theme-4);
	margin-bottom: 2.5rem;
}
.afaik-header__row { gap: 1.5rem; }
.afaik-header__actions { gap: 1.25rem; }
.afaik-header .wp-block-search { width: 15rem; max-width: 100%; }
.afaik-header .wp-block-search__inside-wrapper { gap: 0.5rem; }
.afaik-header .wp-block-search__input { min-width: 0; width: 100%; }
.afaik-header .wp-block-site-title a { text-decoration: none; }

.afaik-footer {
	box-sizing: border-box;
	max-width: var(--wp--style--global--wide-size);
	margin: 4rem auto 0;
	padding-block: 2rem;
	padding-inline: clamp(20px, 5vw, 24px);
	border-top: 1px solid var(--wp--preset--color--theme-4);
	color: var(--wp--preset--color--muted);
	font-size: 0.875rem;
}

/* The parent adds a wrapper for its former floating search part. */
.wp-block-template-part.sticky-bottom { display: none; }

@media (max-width: 600px) {
	.afaik-header { padding-block: 1.25rem; margin-bottom: 2rem; }
	.afaik-header__row { flex-wrap: wrap !important; }
	.afaik-header__actions { width: 100%; justify-content: space-between; }
	.afaik-header .wp-block-search { flex: 1; max-width: 18rem; }
	h1.wp-block-post-title { line-height: 1.1875; }
	.wp-block-post-content,
	.editor-styles-wrapper .is-root-container { line-height: 1.61111; }
}

/* Bestehende ausgerichtete Inhaltsbilder dürfen mobil keine Textspalte
 * von wenigen Zeichen erzwingen. Desktop-Ausrichtungen bleiben erhalten. */
@media (max-width: 600px) {
	.wp-block-post-content .wp-block-image.alignleft,
	.wp-block-post-content .wp-block-image.alignright {
		float: none;
		margin-inline: auto;
	}
}

/* Cropped teaser files are primary; cover also handles undersized originals. */
.wp-block-latest-posts__featured-image img {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	object-position: center;
}

/* Editorial feed: text leads, the cropped thumbnail supports the story. */
ul.wp-block-latest-posts.afaik-teaser-list {
	display: block;
	padding: 0;
	margin-block: 2.5rem;
	list-style: none;
}
ul.afaik-teaser-list > li {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 160px;
	grid-template-rows: auto auto 1fr;
	column-gap: 2rem;
	row-gap: 0.65rem;
	width: 100%;
	margin: 0;
	padding: 2rem 0;
	border-bottom: 1px solid var(--wp--preset--color--theme-4);
}
.afaik-teaser-list > li > .wp-block-latest-posts__featured-image {
	grid-column: 2;
	grid-row: 2 / 4;
	align-self: start;
	margin: 0;
	float: none;
}
.afaik-teaser-list .wp-block-latest-posts__featured-image a { display: block; }
.afaik-teaser-list > li > .wp-block-latest-posts__post-title {
	grid-column: 1;
	grid-row: 2;
	font-family: var(--wp--preset--font-family--inter);
	font-size: 1.5rem;
	font-weight: 750;
	line-height: 1.25;
	letter-spacing: -0.025em;
	color: var(--wp--preset--color--theme-6);
	text-decoration: none;
	overflow-wrap: break-word;
}
.afaik-teaser-list .wp-block-latest-posts__post-title:hover { text-decoration: underline; }
.afaik-teaser-list > li > .wp-block-latest-posts__post-date {
	grid-column: 1 / -1;
	grid-row: 1;
	font-size: 0.8125rem;
	line-height: 1.5;
	color: var(--wp--preset--color--muted);
}
.afaik-teaser-list > li > .wp-block-latest-posts__post-excerpt {
	grid-column: 1;
	grid-row: 3;
	margin: 0;
	font-family: var(--wp--preset--font-family--inter);
	font-size: 1rem;
	line-height: 1.5;
	color: var(--wp--preset--color--muted);
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}
.afaik-teaser-list .wp-block-latest-posts__read-more { display: none; }
.afaik-teaser-list > li:not(:has(.wp-block-latest-posts__featured-image)) {
	grid-template-columns: minmax(0, 1fr);
}
@media (max-width: 600px) {
	ul.afaik-teaser-list > li {
		grid-template-columns: minmax(0, 1fr) 96px;
		column-gap: 1rem;
		padding-block: 1.5rem;
	}
	.afaik-teaser-list > li > .wp-block-latest-posts__post-title {
		font-size: 1.125rem;
		line-height: 1.3;
	}
	.afaik-teaser-list > li > .wp-block-latest-posts__post-excerpt {
		font-size: 0.875rem;
	}
}

/* Core components replacing the former editor plugins. */
.afaik-accordion .wp-block-accordion-item {
	border-bottom: 1px solid var(--wp--preset--color--theme-4);
}
.afaik-accordion .wp-block-accordion-heading {
	margin-block: 0;
	font-size: 1.125rem;
	line-height: 1.5;
}
.afaik-accordion .wp-block-accordion-heading__toggle {
	padding: 1rem 0;
	color: var(--wp--preset--color--theme-2);
	font: inherit;
	font-weight: 600;
}
.afaik-accordion .wp-block-accordion-panel {
	padding-block: 0.5rem 1.5rem;
}
.afaik-testimonials { display: grid; gap: 1.5rem; }
.afaik-testimonial {
	box-sizing: border-box;
	width: 100%;
	padding: clamp(1.25rem, 4vw, 2rem);
	border: 1px solid var(--wp--preset--color--theme-4);
	background: var(--wp--preset--color--theme-5);
}
.afaik-testimonial .afaik-testimonial-quote { margin: 0; padding: 0; border: 0; }
.afaik-testimonial .afaik-testimonial-quote::before { display: none; }
.afaik-testimonial-rating,
.afaik-testimonial-name,
.afaik-testimonial-role {
	font-family: var(--wp--preset--font-family--inter);
	font-size: 0.875rem;
	line-height: 1.5;
}
.afaik-testimonial-name { font-weight: 700; }
.afaik-testimonial-role { color: var(--wp--preset--color--muted); }
.afaik-testimonial-avatar img { border-radius: 50%; object-fit: cover; }
.afaik-testimonial-author { margin-top: 1.5rem; }
.afaik-offer-columns { gap: 1.5rem; align-items: stretch; }
.afaik-offer-card { box-sizing: border-box; min-width: 0; }
.afaik-offer-card, .afaik-offer-card p, .afaik-benefits {
	font-family: var(--wp--preset--font-family--inter);
	font-size: 1rem;
	line-height: 1.6;
}
.afaik-benefits { padding-inline-start: 1.3em; }
.afaik-review { padding: clamp(1.25rem, 4vw, 2rem); background: var(--wp--preset--color--theme-5); }
.afaik-review-score { font-family: var(--wp--preset--font-family--inter); font-size: 2rem; font-weight: 700; }
.afaik-review-image img { max-width: 240px; height: auto; }
.afaik-review-criteria table { min-width: 0; width: 100%; }
.afaik-review-criteria :is(td, th):last-child { white-space: nowrap; }
.afaik-stage .wp-block-heading { margin-block: 0; }
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-columns-678cc482{padding-top:64px;padding-right:24px;padding-bottom:64px;padding-left:24px}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-columns-678cc482{padding-top:40px;padding-bottom:40px}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-fb3c7a39{font-size:40px;text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-fb3c7a39{font-size:32px;text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-columns-e0e1ab2e{padding-top:40px;padding-bottom:40px}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-columns-e0e1ab2e{margin-top:0px;margin-bottom:0px;padding-left:0px;padding-right:0px}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-column-2489d76c{margin-top:8px;margin-bottom:8px;margin-left:8px;margin-right:8px;padding-top:20px;padding-bottom:20px;padding-left:20px;padding-right:20px}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-column-2489d76c{margin-top:24px;margin-bottom:24px;margin-left:24px;margin-right:24px;padding-top:24px;padding-bottom:24px;padding-left:24px;padding-right:24px}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-e30ccf77{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-e30ccf77{text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-fe18de7e{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-fe18de7e{text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-01f7ed6b{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-01f7ed6b{text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-column-991b18b5{margin-top:8px;margin-bottom:8px;margin-left:8px;margin-right:8px;padding-top:20px;padding-bottom:20px;padding-left:20px;padding-right:20px}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-column-991b18b5{margin-top:24px;margin-bottom:24px;margin-left:24px;margin-right:24px;padding-top:24px;padding-bottom:24px;padding-left:24px;padding-right:24px}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-6b0710bb{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-6b0710bb{text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-36b869e4{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-36b869e4{text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-0076e239{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-0076e239{text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-column-09158d16{margin-top:8px;margin-bottom:8px;margin-left:8px;margin-right:8px;padding-top:20px;padding-bottom:20px;padding-left:20px;padding-right:20px}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-column-09158d16{margin-top:24px;margin-bottom:24px;margin-left:24px;margin-right:24px;padding-top:24px;padding-bottom:24px;padding-left:24px;padding-right:24px}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-b3766bd8{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-b3766bd8{text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-39d2e261{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-39d2e261{text-align:center}}
@media(max-width:960px){#wp-block-themeisle-blocks-advanced-heading-e601353c{text-align:center}}
@media(max-width:600px){#wp-block-themeisle-blocks-advanced-heading-e601353c{text-align:center}}

/* Keep the existing local wordmark visible inside the flex header/footer. */
.afaik-header .wp-block-site-logo,
.afaik-footer .wp-block-site-logo { flex: 0 0 100px; width: 100px; }

.afaik-header .custom-logo-link,
.afaik-footer .custom-logo-link { width: 100%; }
.afaik-header .custom-logo,
.afaik-footer .custom-logo { display: block; width: 100%; height: auto; }

/* Simple tables keep their header associations while stacking each record. */
@media (max-width: 600px) {
 .wp-block-table table.afaik-stacked-table { display: block; min-width: 0; width: 100%; }
 .afaik-stacked-table thead {
  position: absolute; width: 1px; height: 1px; padding: 0;
  margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap;
 }
 .afaik-stacked-table tbody { display: block; }
 .afaik-stacked-table tbody tr {
  display: block; margin-block: 0 1rem; border: 1px solid var(--wp--preset--color--theme-4);
  background: transparent;
 }
 .wp-block-table .afaik-stacked-table tbody :is(td, th) {
  display: block; width: auto !important; padding: 0.75rem 1rem;
  white-space: normal; overflow-wrap: anywhere;
 }
 .afaik-stacked-table tbody :is(td, th)::before {
  content: attr(data-column-label); display: block;
  font-size: 0.75rem; font-weight: 600; color: var(--wp--preset--color--muted); margin-bottom: 0.25rem;
 }
 .wp-block-table .afaik-stacked-table tbody :is(td, th):first-child { background: var(--wp--preset--color--paper); }
 .wp-block-table .afaik-stacked-table tbody :is(td, th):last-child { border-bottom: 0; }
}

/* The longer German byline must wrap between label and name, not overlap. */
.wp-block-group:has(> .wp-block-post-author-name) {
	flex-wrap: wrap;
	column-gap: 0.25em;
}
.wp-block-group:has(> .wp-block-post-author-name) > p {
	white-space: nowrap;
}

/* Reusable logo strip; legacy galleries already carry both marker classes. */
.wp-block-gallery:is(.is-style-afaik-logo-strip, .noshadow.greyscale) {
 --wp--style--unstable-gallery-gap: 12px;
 gap: 12px !important;
}
.wp-block-gallery:is(.is-style-afaik-logo-strip, .noshadow.greyscale) > .wp-block-image {
 margin: 0 !important;
 flex-grow: 0;
 align-self: center;
}
:where(.wp-block-post-content, .editor-styles-wrapper) .wp-block-gallery:is(.is-style-afaik-logo-strip, .noshadow.greyscale) .wp-block-image img {
 outline: none;
 border: 0;
 box-shadow: none;
 border-radius: 0;
 height: auto !important;
 object-fit: contain !important;
}
@media (max-width: 600px) {
 .wp-block-gallery:is(.is-style-afaik-logo-strip, .noshadow.greyscale) > .wp-block-image {
  width: calc((100% - 24px) / 3) !important;
  flex: 0 0 calc((100% - 24px) / 3);
 }
}

/* Approved direction A: afaik. / a. and the saturated blue palette. */
.afaik-brand { display: inline-flex; align-items: center; gap: 16px; text-decoration: none; color: var(--wp--preset--color--theme-6); }
.afaik-brand img { display: block; width: 124px; height: auto; flex: 0 0 auto; }
.afaik-brand__byline { border-left: 1px solid var(--wp--preset--color--theme-4); padding-left: 16px; font: 400 12px/1.5 var(--wp--preset--font-family--inter); white-space: nowrap; }
.afaik-header { padding-block: 24px; margin-bottom: 48px; }
.home .afaik-header { margin-bottom: 0; }
.afaik-header__row { flex-wrap: nowrap !important; gap: 24px; }
.afaik-header__identity { flex-shrink: 0; }
.afaik-header__actions { flex: 1; justify-content: flex-end; gap: 20px; flex-wrap: nowrap; }
.afaik-header__actions > .wp-block-navigation { order: -1; }
.afaik-header .wp-block-navigation { font-size: 14px; }
.afaik-header .wp-block-navigation__container { gap: 20px; }
.afaik-header .wp-block-search { width: 144px; flex-shrink: 0; }
.afaik-header .wp-block-search__input { font-size: 14px; padding: 8px; }
.afaik-header .wp-block-search__button { padding: 8px; min-width: 40px; min-height: 44px; }
.afaik-header .wp-block-navigation-item__content { min-height: 44px; display: inline-flex; align-items: center; }
.wp-block-navigation .current-menu-item > .wp-block-navigation-item__content { color: var(--wp--preset--color--theme-3); text-decoration: underline; }
.afaik-footer { gap: 24px; }
.wp-block-button__link { min-height: 48px; box-sizing: border-box; }
.wp-block-button.is-style-outline > .wp-block-button__link { background: transparent; color: var(--wp--preset--color--theme-2); border-color: var(--wp--preset--color--control-border); }
.wp-block-button.is-style-outline > .wp-block-button__link:hover { background: var(--wp--preset--color--paper); }
.is-style-afaik-kicker { color: var(--wp--preset--color--theme-3); font: 650 13px/1.5 var(--wp--preset--font-family--inter); letter-spacing: .09em; text-transform: uppercase; }
.is-style-afaik-kicker::before { content: ''; display: inline-block; width: 7px; height: 7px; margin-right: 9px; background: currentColor; vertical-align: 1px; }
.is-style-afaik-step { border-top: 1px solid var(--wp--preset--color--theme-4); padding-top: 20px; }
.is-style-afaik-step::before { content: ''; display: block; width: 28px; height: 3px; margin-top: -22px; margin-bottom: 19px; background: var(--wp--preset--color--theme-3); }
:where(.wp-block-post-content, .editor-styles-wrapper) .wp-block-image.is-style-afaik-portrait img { outline: none; border-radius: 0; }
.is-style-afaik-portrait { padding-bottom: 12px; border-bottom: 3px solid var(--wp--preset--color--theme-3); }
.afaik-home-hero { background: var(--wp--preset--color--paper); padding: 64px 24px; }
.afaik-hero-grid { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(0, 1fr); gap: 64px; align-items: center; max-width: 1120px; margin-inline: auto; }
.afaik-hero-grid > * { min-width: 0; margin-block: 0; }
.afaik-home-hero h1 { font: 400 clamp(2.5rem,5vw,4.5rem)/1.06 var(--wp--preset--font-family--newsreader); letter-spacing: -.035em; margin-block: 20px 28px; overflow-wrap: normal; }
.afaik-home-hero h1 span { color: var(--wp--preset--color--theme-3); }
.afaik-home-hero p:not(.is-style-afaik-kicker) { font: 400 20px/1.6 var(--wp--preset--font-family--inter); }
.afaik-home-hero .wp-block-buttons { margin-top: 28px; gap: 16px; }
.afaik-home-hero .wp-block-image img { display: block; width: 100%; aspect-ratio: 4/5; object-fit: cover; }
.afaik-home-hero figcaption { text-align: left; font-size: 13px; margin-top: 12px; }
.afaik-home-section { padding-block: 64px; border-bottom: 1px solid var(--wp--preset--color--theme-4); }
.afaik-home-section, .afaik-home-section p { font: 400 16px/1.6 var(--wp--preset--font-family--inter); }
.afaik-home-section h2 { margin-top: 0; font-size: clamp(26px,3vw,36px); }
.afaik-home-section h3 { font-size: 21px; margin-block: 12px; }
.afaik-offer-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px 48px; }
.afaik-offer-grid > * { margin: 0; border-top: 1px solid var(--wp--preset--color--theme-4); padding-top: 24px; }
.afaik-offer-grid .is-style-afaik-kicker { font-size: 12px; }
.afaik-step-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; margin-top: 32px; }
.afaik-step-grid > * { margin-block: 0; }
.afaik-home-section a { color: var(--wp--preset--color--theme-3); }
.afaik-home-section a:hover { color: var(--wp--preset--color--accent-strong); }
.frm_forms :is(input:not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea) { border-color: var(--wp--preset--color--control-border); border-radius: 4px; }
.frm_forms .frm_button_submit { background: var(--wp--preset--color--theme-3); border-color: var(--wp--preset--color--theme-3); color: #fff; border-radius: 4px; min-height: 48px; }
.frm_forms .frm_button_submit:hover { background: var(--wp--preset--color--accent-strong); }
@media (max-width: 1100px) { .afaik-header .afaik-brand__byline { display: none; } }
@media (max-width: 781px) {
 .afaik-header .afaik-header__row { display: grid; grid-template-columns: 1fr auto; gap: 16px; }
 .afaik-header .afaik-header__actions { display: contents; }
 .afaik-header .wp-block-search { grid-column: 1/-1; grid-row: 2; width: 100%; max-width: none; }
 .afaik-header .wp-block-navigation { grid-column: 2; grid-row: 1; }
 .afaik-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
 .afaik-header .wp-block-navigation__responsive-container-open { display: flex; min-width: 44px; min-height: 44px; align-items: center; justify-content: center; }
 .afaik-header .wp-block-navigation__responsive-container.is-menu-open { padding: 24px; }
 .afaik-brand img { width: 112px; }
 .afaik-hero-grid { grid-template-columns: minmax(0,1fr); gap: 32px; }
 .afaik-home-hero { padding: 40px 20px; }
 .afaik-home-hero h1 { font-size: clamp(40px,8vw,56px); }
 .afaik-home-hero p:not(.is-style-afaik-kicker) { font-size: 18px; }
 .afaik-home-hero figure { max-width: 440px; }
 .afaik-home-section { padding-block: 40px; }
 .afaik-offer-grid, .afaik-step-grid { grid-template-columns: minmax(0,1fr); gap: 28px; }
 .afaik-footer .afaik-brand__byline { white-space: normal; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
/* Formidable exposes theme variables; override them at the form boundary. */
.frm_forms.with_frm_style {
 --form-width: min(680px, 100%);
 --submit-bg-color: var(--wp--preset--color--theme-3);
 --submit-border-color: var(--wp--preset--color--theme-3);
 --submit-text-color: #fff;
 --submit-hover-bg-color: var(--wp--preset--color--accent-strong);
 --submit-hover-border-color: var(--wp--preset--color--accent-strong);
 --submit-hover-color: #fff;
 --submit-active-bg-color: var(--wp--preset--color--accent-strong);
 --submit-active-border-color: var(--wp--preset--color--accent-strong);
 --submit-active-color: #fff;
 --border-color: var(--wp--preset--color--control-border);
 --border-color-active: var(--wp--preset--color--focus);
 --border-radius: 4px;
 --progress-active-bg-color: var(--wp--preset--color--theme-3);
 --success-bg-color: var(--wp--preset--color--paper);
 --success-border-color: var(--wp--preset--color--theme-3);
 --success-text-color: var(--wp--preset--color--theme-2);
}
/* Legacy generated Formidable CSS hard-codes !important button colors. */
.frm_forms.with_frm_style .frm_submit .frm_button_submit {
 background: var(--wp--preset--color--theme-3) !important;
 border-color: var(--wp--preset--color--theme-3) !important;
 color: #fff !important;
 box-shadow: none;
}
.frm_forms.with_frm_style .frm_submit .frm_button_submit:is(:hover, :focus, :active) {
 background: var(--wp--preset--color--accent-strong) !important;
 border-color: var(--wp--preset--color--accent-strong) !important;
 color: #fff !important;
}
.frm_forms.with_frm_style .frm_submit .frm_button_submit:focus-visible {
 outline: 3px solid var(--wp--preset--color--focus);
 outline-offset: 4px;
}
/* Keep shortcode forms aligned with the page's reading column. */
.wp-block-post-content .frm_forms { max-width: 680px; margin-inline: auto; }
