/* AFAIK Design Kit 1.0: adaptation to the existing child theme, no demo behavior.
 * Token source and unmodified assets are recorded in assets/designkit/provenance.json. */
body.wp-child-theme-afaik-ipsum,
.editor-styles-wrapper {
 --wp--preset--color--theme-1: var(--afaik-white);
 --wp--preset--color--theme-2: var(--afaik-text);
 --wp--preset--color--theme-3: var(--afaik-blue);
 --wp--preset--color--theme-4: var(--afaik-line);
 --wp--preset--color--theme-5: var(--afaik-mist);
 --wp--preset--color--theme-6: var(--afaik-ink);
 --wp--preset--color--muted: var(--afaik-muted);
 --wp--preset--color--paper: var(--afaik-blue-wash);
 --wp--preset--color--accent-strong: var(--afaik-blue-hover);
 --wp--preset--color--focus: var(--afaik-blue);
 --wp--preset--color--control-border: var(--afaik-control);
 --wp--style--global--content-size: var(--afaik-reading);
 --wp--style--global--wide-size: var(--afaik-container);
 --afaik-paper-texture: none;
 background: var(--afaik-white);
 color: var(--afaik-text);
 font: 400 1rem/1.65 var(--afaik-font-body);
 -webkit-font-smoothing: antialiased;
}
html { scroll-padding-top: 2rem; }
::selection { background: #d6e4ff; color: var(--afaik-ink); }
.wp-site-blocks .wp-block-post-content,
.editor-styles-wrapper .is-root-container {
 font-family: var(--afaik-font-body);
 font-size: clamp(1rem, .95rem + .2vw, 1.125rem);
 line-height: 1.65;
}
.wp-site-blocks :is(h1,h2,h3),
.editor-styles-wrapper :is(h1,h2,h3) {
 font-family: var(--afaik-font-display);
 font-weight: 400;
 color: var(--afaik-ink);
 text-wrap: balance;
 overflow-wrap: break-word;
 hyphens: auto;
}
.wp-site-blocks h1, .editor-styles-wrapper h1 {
 font-size: var(--afaik-text-h1); line-height: 1.04; letter-spacing: -.035em; hyphens: none;
}
.wp-site-blocks h2, .editor-styles-wrapper h2 {
 font-size: var(--afaik-text-h2); line-height: 1.1; letter-spacing: -.025em;
}
.wp-site-blocks h3, .editor-styles-wrapper h3 {
 font-size: var(--afaik-text-h3); line-height: 1.18; letter-spacing: -.015em;
}
.wp-site-blocks h4, .editor-styles-wrapper h4 { font: 600 1.125rem/1.4 var(--afaik-font-body); color: var(--afaik-ink); }
.wp-site-blocks main :is(p,li) { line-height: 1.65; }
.wp-site-blocks a { text-underline-offset: .2em; text-decoration-thickness: 1px; }
.wp-site-blocks a:hover { text-decoration-thickness: 2px; }
.wp-site-blocks :is(a,button,input,textarea,select,summary):focus-visible {
 outline: 3px solid var(--afaik-blue); outline-offset: 4px;
}
.wp-site-blocks .wp-block-post-content > :is(h2,h3) { margin-block: 3rem 1.5rem; }
.wp-site-blocks .wp-block-post-content > h3 { margin-block-start: 2rem; }
.wp-site-blocks .wp-block-post-title { margin-block-end: 2rem; }
body:has(.afaik-landing) .wp-site-blocks main h1.wp-block-post-title { font-size: var(--afaik-text-h1); line-height: 1.04; }
.wp-site-blocks .wp-block-post-excerpt { font-family: var(--afaik-font-body); }
.wp-site-blocks :is(figcaption,.afaik-curated-teaser-date,.afaik-article-meta) { color: var(--afaik-muted); font-family: var(--afaik-font-body); }
/* Branding and navigation: keep native WordPress menu, search and keyboard behavior. */
.wp-site-blocks .afaik-header {
 background: var(--afaik-white); border-bottom: 1px solid var(--afaik-line);
 padding: 1.5rem 0; margin-block: 0 4rem; max-width: none;
}
.afaik-header > .afaik-header__row { width: min(calc(100% - 2 * var(--afaik-page-margin)), var(--afaik-container)); margin-inline: auto; min-height: 56px; gap: 2rem; }
.wp-site-blocks .afaik-brand img { width: 126px; height: auto; }
.afaik-header .afaik-brand__byline { display: none; }
.afaik-header .wp-block-navigation__container { gap: 28px; }
.afaik-header .wp-block-navigation-item__content { color: var(--afaik-ink); font-size: .875rem; }
.afaik-header :is(.current-menu-item,.current-menu-ancestor) > .wp-block-navigation-item__content,
.afaik-header .wp-block-navigation-item__content:hover { color: var(--afaik-blue); text-decoration: underline; text-underline-offset: .4em; }
.afaik-header .wp-block-navigation__submenu-container { border: 1px solid var(--afaik-line); box-shadow: var(--afaik-shadow); border-radius: var(--afaik-radius); background: var(--afaik-white); }
.afaik-header .wp-block-navigation__submenu-container .wp-block-navigation-item__content { white-space: normal; line-height: 1.5; }
/* 48px controls with visible secondary and disabled states. */
.wp-site-blocks :is(.wp-block-button__link,.wp-block-search__button),
.editor-styles-wrapper .wp-block-button__link {
 min-height: 48px; box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center;
 padding: .72rem 1.25rem; border-radius: var(--afaik-radius);
 font: 500 .875rem/1.4 var(--afaik-font-body); box-shadow: none;
 transition: background var(--afaik-duration-fast), border-color var(--afaik-duration-fast);
}
.wp-site-blocks .wp-block-button.is-style-outline .wp-block-button__link { color: var(--afaik-ink); background: transparent; border: 1px solid var(--afaik-control); }
.wp-site-blocks .wp-block-button.is-style-outline .wp-block-button__link:hover { background: var(--afaik-mist); border-color: var(--afaik-ink); }
.wp-site-blocks :is(.wp-block-button__link,.wp-block-search__button):active { background: var(--afaik-blue-active); color: white; }
/* Homepage: existing portrait and four mandates, using the kit's spacious grid. */
body.home .afaik-header { margin-bottom: 0; }
body.wp-child-theme-afaik-ipsum .afaik-home-hero { background: var(--afaik-white); padding: 88px var(--afaik-page-margin) 80px; }
.wp-site-blocks .afaik-hero-grid { max-width: var(--afaik-container); grid-template-columns: minmax(0,7fr) minmax(0,4fr); gap: clamp(40px,7vw,106px); align-items: center; }
.wp-site-blocks .afaik-home-hero h1 { font-size: var(--afaik-text-h1); line-height: 1.04; max-width: 16ch; margin-block: 28px; }
.wp-site-blocks .afaik-home-hero h1 span { color: var(--afaik-ink); }
.wp-site-blocks .afaik-home-hero p:not(.is-style-afaik-kicker):not(.afaik-availability-note) { font: 400 var(--afaik-text-lead)/1.55 var(--afaik-font-body); color: var(--afaik-muted); max-width: 44ch; }
.wp-site-blocks :is(.is-style-afaik-kicker,.afaik-lp-eyebrow,.afaik-profile-eyebrow) { color: var(--afaik-muted); font: 600 .875rem/1.5 var(--afaik-font-body); letter-spacing: .09em; }
.wp-site-blocks .is-style-afaik-kicker::before { background: var(--afaik-blue); }
.wp-site-blocks .is-style-afaik-portrait { border-bottom: 0; padding-bottom: 0; }
.wp-site-blocks .afaik-home-hero figcaption { font-size: .875rem; line-height: 1.5; margin-top: 1rem; }
.wp-site-blocks .afaik-home-section {
 width: 100%;
 max-width: var(--afaik-container); margin-inline: auto; padding-block: var(--afaik-section-space);
 border-bottom: 1px solid var(--afaik-line);
}
.wp-site-blocks .afaik-home-section p { font: 400 1rem/1.65 var(--afaik-font-body); }
.wp-site-blocks .afaik-home-section > p { max-width: var(--afaik-reading); }
.wp-site-blocks .afaik-home-section > h2 { max-width: 24ch; margin-block: 0 1.5rem; }
.wp-site-blocks .afaik-home-section > p + h2 { margin-top: 3rem; }
.wp-site-blocks .afaik-offer-grid { gap: var(--afaik-grid-gap); margin-top: 3rem; }
.wp-site-blocks .afaik-offer-grid > .afaik-home-offer {
 border: 0; border-top: 1px solid var(--afaik-ink); padding: 2rem 0;
 background: transparent; border-radius: 0; box-shadow: none;
}
.wp-site-blocks .afaik-home-offer h3 { font: 400 var(--afaik-text-h3)/1.18 var(--afaik-font-display); margin-bottom: 1.5rem; max-width: 20ch; }
.wp-site-blocks .afaik-home-offer p { color: var(--afaik-muted); max-width: 42ch; margin-bottom: 1rem; }
.wp-site-blocks .afaik-home-offer p:last-child { margin-top: auto; margin-bottom: 0; }
/* A focused ink section is inferred from the existing, preserved method anchor. */
.wp-site-blocks .afaik-home-section:has(> #arbeitsbeispiel) {
 background: var(--afaik-ink); color: var(--afaik-white);
 box-shadow: 0 0 0 100vmax var(--afaik-ink); clip-path: inset(0 -100vmax);
 border: 0; padding-block: var(--afaik-section-space);
}
.wp-site-blocks .afaik-home-section:has(> #arbeitsbeispiel) h2 { color: var(--afaik-white); }
.wp-site-blocks .afaik-home-section:has(> #arbeitsbeispiel) p { color: #b7c4d8; }
.wp-site-blocks .afaik-home-section:has(> #arbeitsbeispiel) a { color: var(--afaik-blue-on-ink); }
.wp-site-blocks .afaik-home-section:has(> #arbeitsbeispiel) :focus-visible { outline-color: var(--afaik-blue-on-ink); }
.wp-site-blocks .afaik-home-section:has(> #forschungsbeleg) > figure { max-width: var(--afaik-reading); margin-inline: 0; }
.wp-site-blocks .wp-block-post-content p.afaik-availability-note,
.wp-site-blocks .afaik-home-hero .afaik-availability-note {
 font: 400 .875rem/1.65 var(--afaik-font-body); background: var(--afaik-mist);
 border: 0; border-left: 3px solid var(--afaik-blue); border-radius: 0 var(--afaik-radius) var(--afaik-radius) 0;
 padding: 1.5rem; box-shadow: none; color: var(--afaik-text);
}
/* Existing service pages retain native content and clear line-based modules. */
.wp-site-blocks .afaik-landing { --lp-line: var(--afaik-line); --lp-paper: var(--afaik-mist); }
.wp-site-blocks .afaik-landing > h2 { font-size: clamp(2rem,1.6rem + 1vw,2.5rem); margin-block: 3rem 1.5rem; }
.wp-site-blocks .afaik-landing h3 { font: 400 clamp(1.5rem,1.3rem + .5vw,1.75rem)/1.18 var(--afaik-font-display); }
.wp-site-blocks .afaik-lp-card { border: 0; border-top: 1px solid var(--afaik-line); padding: 1.5rem 0; border-radius: 0; background: transparent; }
.wp-site-blocks .afaik-lp-grid { gap: var(--afaik-grid-gap); }
.wp-site-blocks .afaik-lp-contact { border: 0; border-top: 1px solid var(--afaik-line); border-radius: 0; background: var(--afaik-mist); }
.wp-site-blocks .afaik-lp-grid :is(p,li) { font-size: 1rem; }
.wp-site-blocks .wp-block-details:not(.afaik-header-search) { border: 0; border-top: 1px solid var(--afaik-line); padding: 0; }
.wp-site-blocks .wp-block-details:not(.afaik-header-search):last-child { border-bottom: 1px solid var(--afaik-line); }
.wp-site-blocks .wp-block-details:not(.afaik-header-search) > summary { font: 500 1rem/1.5 var(--afaik-font-body); color: var(--afaik-ink); min-height: 56px; padding-block: 1.25rem; }
.wp-site-blocks .wp-block-details:not(.afaik-header-search) p { color: var(--afaik-muted); font-size: 1rem; }
.wp-site-blocks .afaik-profile-hero { gap: 3rem; }
.wp-site-blocks .afaik-profile-hero__copy h2 { font-family: var(--afaik-font-display); font-weight: 400; }
/* Article, evidence and source components stay readable within 42rem. */
.blog .wp-site-blocks .wp-block-column h2 { font-size: var(--afaik-text-h3); line-height: 1.18; hyphens: none; }
.single .wp-site-blocks h1 { font-size: clamp(2.75rem,1.8rem + 2.6vw,4.5rem); }
.single .wp-site-blocks .wp-block-post-content h2 { font-size: clamp(2rem,1.7rem + .7vw,2.5rem); }
.single .wp-site-blocks .wp-block-post-content h3 { font-size: clamp(1.5rem,1.3rem + .5vw,1.75rem); }
.wp-site-blocks .afaik-curated-teaser-title { font-family: var(--afaik-font-display); font-weight: 400; }
.wp-site-blocks .afaik-curated-teaser-excerpt { font-family: var(--afaik-font-body); }
.wp-site-blocks .afaik-curated-teaser-card { padding-block: 1.75rem; border-color: var(--afaik-line); }
.wp-site-blocks .afaik-article-archive article h3 { font: 400 clamp(1.5rem,1.3rem + .5vw,1.875rem)/1.18 var(--afaik-font-display); }
.wp-site-blocks .afaik-article-archive article .wp-block-post-excerpt { font: 400 1rem/1.65 var(--afaik-font-body); }
.wp-site-blocks :is(.afaik-toc,.afaik-author-box,.afaik-next-step) { border-color: var(--afaik-line); border-radius: var(--afaik-radius); }
.wp-site-blocks .afaik-author-box h2 { font: 400 1.75rem/1.18 var(--afaik-font-display); }
.wp-site-blocks .afaik-author-box .afaik-author-box__bio { font-family: var(--afaik-font-body); font-size: 1rem; }
.wp-site-blocks .wp-block-quote { border-left: 3px solid var(--afaik-blue); padding: .5rem 0 .5rem 2rem; color: var(--afaik-ink); }
.wp-site-blocks .wp-block-quote p { font: 400 clamp(1.5rem,2.3vw,2rem)/1.3 var(--afaik-font-display); }
.wp-site-blocks .wp-block-quote cite { font: 400 .875rem/1.6 var(--afaik-font-body); color: var(--afaik-muted); }
.wp-site-blocks .wp-block-table :is(td,th) { padding: 1rem .75rem; border-bottom: 1px solid var(--afaik-line); }
.wp-site-blocks .wp-block-table thead th { background: var(--afaik-mist); color: var(--afaik-ink); font-weight: 500; }
/* Formidable keeps validation, submission and CAPTCHA; only presentation changes. */
.wp-site-blocks .frm_forms.with_frm_style {
 --font: var(--afaik-font-body); --font-size: 14px; --label-font-size: 14px;
 --weight: 500; --label-color: var(--afaik-ink); --field-font-size: 16px;
 --field-height: 48px; --line-height: 24px; --field-pad: .7rem .85rem;
 --description-font-size: 14px; --description-color: var(--afaik-muted);
 --error-text: var(--afaik-error); --error-bg: var(--afaik-error-bg); --error-border: var(--afaik-error);
 --border-color: var(--afaik-control); --border-color-active: var(--afaik-blue);
 --border-radius: var(--afaik-radius); --text-color-error: var(--afaik-error);
 --border-color-error: var(--afaik-error); --border-width-error: 2px; --border-style-error: solid; --success-bg-color: var(--afaik-success-bg);
 --success-border-color: var(--afaik-success); --success-text-color: var(--afaik-success);
}
.wp-site-blocks .frm_forms :where(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),select,textarea) {
 font: 400 1rem/1.5 var(--afaik-font-body); min-height: 48px; padding: .7rem .85rem;
 border: 1px solid var(--afaik-control); border-radius: var(--afaik-radius); color: var(--afaik-ink); background: var(--afaik-white);
}
.wp-site-blocks .frm_forms textarea { min-height: 144px; }
/* Formidable resets outline-style with !important; preserve keyboard focus. */
.wp-site-blocks .frm_forms :is(input,select,textarea,button):focus-visible { outline: 3px solid var(--afaik-blue) !important; outline-offset: 4px; }
.wp-site-blocks .frm_forms :is(.frm_primary_label,legend) { color: var(--afaik-ink); font-weight: 500; font-size: .875rem; }
.wp-site-blocks .frm_forms :is(.frm_description,.frm_error) { font-size: .875rem; line-height: 1.5; }
.wp-site-blocks .frm_forms .frm_error { color: var(--afaik-error); }
.wp-site-blocks .frm_forms [aria-invalid=true] { border: 2px solid var(--afaik-error); }
.wp-site-blocks .frm_forms .frm_submit .frm_button_submit { min-height: 48px; font: 500 .875rem/1.4 var(--afaik-font-body); padding: .72rem 1.25rem; border-radius: var(--afaik-radius); }
.wp-site-blocks .frm_forms .frm_submit .frm_button_submit:disabled { opacity: .6; cursor: not-allowed; }
/* Footer shares the quiet mist surface and original disclosure links. */
.wp-site-blocks .afaik-footer { margin-top: var(--afaik-section-space); padding-block: 3rem 1.5rem; background: var(--afaik-mist); border-top: 1px solid var(--afaik-line); gap: 2rem; max-width: none; padding-inline: max(var(--afaik-page-margin), calc((100% - var(--afaik-container)) / 2)); }
.wp-site-blocks .afaik-footer .afaik-brand img { width: 112px; }
.wp-site-blocks .afaik-footer :is(p,.wp-block-navigation) { font: 400 .875rem/1.65 var(--afaik-font-body); color: var(--afaik-muted); }
.wp-site-blocks .afaik-footer a { color: var(--afaik-ink); }
.wp-site-blocks .afaik-footer .afaik-partner-note { border-top: 1px solid var(--afaik-line); padding-top: 1.5rem; font-size: .75rem; }
@media (max-width: 1023px) {
 .afaik-header .wp-block-navigation__container { gap: 18px; }
 .afaik-header > .afaik-header__row { gap: 1.5rem; }
 body.wp-child-theme-afaik-ipsum .afaik-home-hero { padding-block: 4rem; }
 .wp-site-blocks .afaik-hero-grid { gap: 2rem; grid-template-columns: minmax(0,5fr) minmax(0,3fr); }
}
@media (max-width: 799px) {
 .wp-site-blocks .afaik-header { padding-block: 1.25rem; margin-bottom: 3rem; }
 body.home .afaik-header { margin-bottom: 0; }
 .afaik-header > .afaik-header__row { display: flex; min-height: 48px; flex-wrap: nowrap !important; }
 .afaik-header .afaik-header__actions { display: flex; flex: 1; gap: 1rem; }
 .afaik-header .wp-block-navigation { order: 1; }
 .afaik-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: none; }
 .afaik-header .wp-block-navigation__responsive-container-open { display: flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; }
 .afaik-header .wp-block-navigation__responsive-container.is-menu-open { padding: 1.5rem; background: var(--afaik-white); }
 .afaik-header .is-menu-open .wp-block-navigation__submenu-container { box-shadow: none; border: 0; }
 .wp-site-blocks .afaik-hero-grid { grid-template-columns: minmax(0,1fr); gap: 2rem; }
 .wp-site-blocks .afaik-home-hero h1 { max-width: 16ch; }
 .wp-site-blocks .afaik-home-hero figure { width: 100%; max-width: 440px; margin-inline: 0; }
 .wp-site-blocks .afaik-home-section { padding-block: 4rem; }
 .wp-site-blocks .afaik-lp-grid { grid-template-columns: minmax(0,1fr); }
}
@media (min-width:800px) {
 .afaik-header .wp-block-navigation__responsive-container-open:not(.always-shown) { display: none; }
 .afaik-header .wp-block-navigation__responsive-container:not(.is-menu-open) { display: block; }
}
@media (max-width:639px) {
 .wp-site-blocks .afaik-brand img { width: 112px; }
 body.wp-child-theme-afaik-ipsum .afaik-home-hero { padding-block: 3rem; }
 .wp-site-blocks .afaik-home-hero h1 { font-size: 2.875rem; max-width: 13ch; }
 .wp-site-blocks .afaik-home-hero p:not(.is-style-afaik-kicker):not(.afaik-availability-note) { font-size: 1.125rem; }
 .wp-site-blocks .afaik-offer-grid { grid-template-columns: minmax(0,1fr); }
 .wp-site-blocks .afaik-home-offer h3 { font-size: 1.875rem; }
 .wp-site-blocks .afaik-footer .afaik-brand__byline { white-space: normal; }
}
@media (prefers-reduced-motion:reduce) {
 html { scroll-behavior: auto; }
 .wp-site-blocks *, .wp-site-blocks *::before, .wp-site-blocks *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
@media print, (forced-colors:active) {
 .wp-site-blocks .afaik-home-section:has(> #arbeitsbeispiel) { box-shadow: none; clip-path: none; background: Canvas; color: CanvasText; }
 .wp-site-blocks .afaik-home-section:has(> #arbeitsbeispiel) :is(h2,p,a) { color: CanvasText; }
}
