/*
 * Dave Mroz: Filament.
 * Site-wide basics (fonts, link colours), then the home page's blocks (all dmf- classes).
 * Colours come from Kadence's global palette, which the plugin sets on activation:
 *   1 amber  2 amber light  3 text strong  4 body  5 muted  6 faint  7 rule  8 panel  9 ground
 */

@font-face { font-family: "Instrument Serif"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/instrument-serif-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Instrument Serif"; font-style: italic; font-weight: 400; font-display: swap; src: url("../fonts/instrument-serif-latin-400-italic.woff2") format("woff2"); }
@font-face { font-family: "Inter Tight"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/inter-tight-latin-400-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter Tight"; font-style: normal; font-weight: 500; font-display: swap; src: url("../fonts/inter-tight-latin-500-normal.woff2") format("woff2"); }
@font-face { font-family: "Inter Tight"; font-style: normal; font-weight: 600; font-display: swap; src: url("../fonts/inter-tight-latin-600-normal.woff2") format("woff2"); }
/* Rock Salt, the old site's script for "Dave Mroz", for the site title only; cut to basic Latin (37 KB, from 58). */
@font-face { font-family: "Rock Salt"; font-style: normal; font-weight: 400; font-display: swap; src: url("../fonts/rock-salt-ascii-400-normal.woff2") format("woff2"); unicode-range: U+0020-007E; }

:root {
	--dmf-serif: "Instrument Serif", Georgia, "Times New Roman", serif;
	--dmf-sans: "Inter Tight", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
	--dmf-amber: var(--global-palette1, #F2A33A);
	--dmf-amber-light: var(--global-palette2, #FFD08A);
	--dmf-strong: var(--global-palette3, #F7F1E6);
	--dmf-body: var(--global-palette4, #CFC7B9);
	--dmf-muted: var(--global-palette5, #A79F92);
	--dmf-faint: var(--global-palette6, #8A8276);
	--dmf-rule: var(--global-palette7, #2E2A24);
	--dmf-panel: var(--global-palette8, #1A1813);
	--dmf-ground: var(--global-palette9, #0E0D0B);
	--dmf-gutter: clamp(20px, 5vw, 80px);
	--dmf-max: 1280px;
}

/* ---------- Site-wide ---------- */

body { font-family: var(--dmf-sans); }
h1, h2, h3, h4, h5, h6, .site-title { font-family: var(--dmf-serif); font-weight: 400; }
.site-title { color: var(--dmf-strong); }
/* The name in the header in Rock Salt, as on the old site (the home page's own header: .dmf-wordmark); a fixed line height so the swap from the fallback doesn't move the header. */
body .site-branding .site-title { font-family: "Rock Salt", "Segoe Print", "Bradley Hand", cursive; font-size: 22px; font-weight: 400; line-height: 1.6; letter-spacing: 0; }
a { text-underline-offset: 0.18em; }
::selection { background: var(--dmf-amber); color: var(--dmf-ground); }

/* Kadence's header settings use palette slots chosen for the old light design (header on 5, drop-downs on 3 and 8).
   These rules out-rank Kadence's generated CSS (one more element in each selector) rather than change its settings,
   so deactivating the plugin leaves the header exactly as it was. */
body #masthead,
body .site-main-header-wrap .site-header-row-container-inner { background: var(--dmf-ground); }
body .site-main-header-wrap .site-header-row-container-inner { border-bottom: 1px solid var(--dmf-rule); }
/* The same, once the header sticks to the top on scroll. */
body #masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start):not(.site-header-row-container):not(.site-main-header-wrap),
body #masthead .kadence-sticky-header.item-is-fixed:not(.item-at-start) > .site-header-row-container-inner { background: var(--dmf-ground); }
body .main-navigation .primary-menu-container > ul > li.menu-item > a { color: var(--dmf-body); }
body .main-navigation .primary-menu-container > ul > li.menu-item > a:hover { color: var(--dmf-amber-light); }
body .main-navigation .primary-menu-container > ul > li.menu-item.current-menu-item > a { color: var(--dmf-amber); }
body .header-navigation .header-menu-container ul ul.sub-menu { background: var(--dmf-panel); }
body .header-navigation .header-menu-container ul ul li.menu-item > a { color: var(--dmf-body); }
body .header-navigation .header-menu-container ul ul li.menu-item > a:hover,
body .header-navigation .header-menu-container ul ul li.menu-item.current-menu-item > a { color: var(--dmf-strong); background: var(--dmf-rule); }
body .mobile-toggle-open-container .menu-toggle-open { color: var(--dmf-body); }
body #mobile-drawer .drawer-inner { background: var(--dmf-panel); }
body .mobile-navigation ul li > a { color: var(--dmf-body); }
body .mobile-navigation ul li.current-menu-item > a { color: var(--dmf-amber); }

/* The contact page's list (from the child theme) in the new type and colours. */
.contact-list dt { font-family: var(--dmf-sans); color: var(--dmf-amber); }
.contact-list dd { font-family: var(--dmf-serif); color: var(--dmf-strong); }
.contact-list .contact-item { border-bottom-color: var(--dmf-rule); }

/* ---------- Home page ---------- */

.home.content-vertical-padding-show .content-area { margin-top: 0; margin-bottom: 0; }
.home .entry-content > .dmf-section,
.home .entry-content > .dmf-panel { max-width: var(--dmf-max); margin-left: auto; margin-right: auto; box-sizing: border-box; }

[class*="dmf-"] { box-sizing: border-box; }

/* Kadence (a classic theme) wraps each group's blocks in an inner container; let them lay out in the group's grid or
   flex instead. */
[class*="dmf-"] > .wp-block-group__inner-container { display: contents; }

/* Kadence and WordPress space blocks with margins; inside these components spacing is the layout's job. */
body .entry-content [class*="dmf-"] > *,
body .entry-content [class*="dmf-"] > .wp-block-group__inner-container > * { margin-top: 0; margin-bottom: 0; }

/* Hero: the lightbulb, darkened, under the bar and the headline. */
.dmf-hero {
	position: relative;
	isolation: isolate;
	min-height: min(760px, 100svh);
	display: flex;
	flex-direction: column;
	background: #1A1916;
	overflow: hidden;
	margin-top: 0;
}
.dmf-hero::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: var(--dmf-hero-image, none) 70% 40% / cover no-repeat;
	filter: brightness(0.42) contrast(1.2) saturate(1.1);
}
.dmf-bar {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	gap: 12px 32px;
	padding: 28px var(--dmf-gutter);
}
.dmf-hero a.dmf-wordmark { font-family: "Rock Salt", "Segoe Print", "Bradley Hand", cursive; font-size: 22px; line-height: 1.6; color: var(--dmf-body); text-decoration: none; }
.dmf-nav { display: flex; flex-wrap: wrap; gap: 4px 28px; font-size: 15px; letter-spacing: 0.02em; }
.dmf-nav a { display: inline-block; padding: 12px 0; color: var(--dmf-body); text-decoration: none; }
.dmf-nav a:hover, .dmf-nav a:focus-visible { color: var(--dmf-amber-light); }
.dmf-nav a.dmf-nav-cta { color: var(--dmf-amber); }
.dmf-hero-copy {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	gap: 28px;
	max-width: calc(860px + 2 * var(--dmf-gutter));
	padding: 80px var(--dmf-gutter) 88px;
}
.dmf-eyebrow, .dmf-kicker { font-size: 13px; font-weight: 600; letter-spacing: 0.15em; text-transform: uppercase; color: var(--dmf-amber); }
.dmf-eyebrow { font-size: 14px; font-weight: 500; }
.dmf-hero .dmf-display {
	font-family: var(--dmf-serif);
	font-weight: 400;
	font-size: clamp(48px, 7vw, 104px);
	line-height: 0.98;
	letter-spacing: -0.015em;
	color: var(--dmf-strong);
}
.dmf-display em { color: var(--dmf-amber); }
.dmf-lede { font-size: clamp(17px, 1.6vw, 20px); line-height: 1.6; color: var(--dmf-body); max-width: 620px; }

/* Four figures under the hero. */
.dmf-stats {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
	border-top: 1px solid var(--dmf-rule);
	border-bottom: 1px solid var(--dmf-rule);
	margin-top: 0;
}
.dmf-stat { display: flex; flex-direction: column; gap: 8px; padding: 36px clamp(20px, 3vw, 40px); border-right: 1px solid var(--dmf-rule); }
.dmf-stat:last-child { border-right: 0; }
.dmf-stat-num { font-family: var(--dmf-serif); font-size: 52px; line-height: 1; color: var(--dmf-amber); }
.dmf-stat-label { font-size: 15px; line-height: 1.5; color: var(--dmf-muted); }
/* Number and label share one paragraph (a stand-alone big number read as an unmarked heading). */
body .entry-content .dmf-stat-text { display: flex; flex-direction: column; gap: 8px; margin: 0; }
.dmf-stat-text .dmf-stat-num { display: block; }
/* The label above a card or panel title sits inside its heading, in the label style. */
.dmf-h3 .dmf-kicker, .dmf-panel-title .dmf-kicker { display: block; margin-bottom: 14px; font-family: var(--dmf-sans); line-height: 1.4; }
body .entry-content h3.dmf-panel-title { margin: 0; }

/* Sections */
.dmf-section { padding: 120px var(--dmf-gutter) 0; }
.dmf-section-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 16px; padding-bottom: 64px; }
.dmf-h2 { font-family: var(--dmf-serif); font-weight: 400; font-size: clamp(40px, 5vw, 64px); line-height: 1.02; color: var(--dmf-strong); }
.dmf-muted { color: var(--dmf-muted); font-size: 15px; }

.dmf-cards { display: grid; grid-template-columns: minmax(0, 1fr); gap: 56px 64px; }
@media (min-width: 860px) { .dmf-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.dmf-card { display: flex; flex-direction: column; gap: 16px; padding-top: 28px; border-top: 1px solid var(--dmf-amber); }
.dmf-card p { font-size: 17px; line-height: 1.65; color: var(--dmf-body); }
.dmf-card .dmf-h3 { font-family: var(--dmf-serif); font-weight: 400; font-size: 36px; line-height: 1.1; color: var(--dmf-strong); }
.dmf-card p.dmf-stack { font-size: 14px; color: var(--dmf-muted); }
.dmf-plain-list { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 12px; font-size: 16px; line-height: 1.55; color: var(--dmf-body); }
.dmf-plain-list li { margin: 0; }
.dmf-plain-list strong { color: var(--dmf-strong); font-weight: 500; }

/* Security research panel */
.entry-content > .dmf-panel {
	margin-top: 120px;
	width: calc(100% - 2 * var(--dmf-gutter));
	padding: 48px clamp(24px, 4vw, 56px);
	background: var(--dmf-panel);
	border: 1px solid #3A3227;
	display: flex;
	flex-wrap: wrap;
	gap: 24px 64px;
	align-items: flex-start;
}
.dmf-panel-head { flex: 1 1 260px; display: flex; flex-direction: column; gap: 10px; }
.dmf-panel-title { font-family: var(--dmf-serif); font-size: 40px; line-height: 1.05; color: var(--dmf-strong); }
.dmf-panel-body { flex: 2 1 420px; display: flex; flex-direction: column; gap: 16px; }
.dmf-panel-body p { font-size: 17px; line-height: 1.65; color: var(--dmf-body); }
.dmf-link a { font-weight: 500; color: var(--dmf-amber); text-decoration: none; }
.dmf-link a:hover { color: var(--dmf-amber-light); }

/* About */
.dmf-about { display: flex; flex-wrap: wrap; gap: 48px 80px; }
.dmf-about .dmf-h2 { flex: 1 1 240px; }
.dmf-about-body { flex: 2 1 480px; display: flex; flex-direction: column; gap: 20px; }
.dmf-about-body p { font-size: 18px; line-height: 1.7; color: var(--dmf-body); }
.dmf-about-body p.dmf-muted { font-size: 18px; }

/* Contact band */
body .entry-content .dmf-contact {
	margin-top: 140px;
	padding: 88px var(--dmf-gutter);
	border-top: 1px solid var(--dmf-rule);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-end;
	gap: 40px;
}
.dmf-contact-copy { display: flex; flex-direction: column; gap: 16px; max-width: 640px; }
.dmf-contact-copy p.dmf-muted { font-size: 17px; }
.dmf-contact-links { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 4px; font-size: 17px; }
.dmf-contact-links li { margin: 0; }
.dmf-contact-links a { display: inline-block; padding: 8px 0; color: var(--dmf-amber); text-decoration: none; }
.dmf-contact-links a:hover, .dmf-contact-links a:focus-visible { color: var(--dmf-amber-light); }

@media (max-width: 600px) {
	.dmf-nav { gap: 0 14px; font-size: 14px; letter-spacing: 0; }
	.dmf-stat { border-right: 0; border-bottom: 1px solid var(--dmf-rule); }
	.dmf-stat:last-child { border-bottom: 0; }
	.dmf-section { padding-top: 88px; }
	.entry-content > .dmf-panel { margin-top: 88px; }
	body .entry-content .dmf-contact { margin-top: 96px; padding-top: 64px; padding-bottom: 64px; }
}

/* ---------- Résumé page (content/resume.html) ---------- */

.dmf-cv { max-width: 1040px; margin: 0 auto; padding: 16px 0 96px; display: flex; flex-direction: column; gap: 72px; }
.dmf-cv-head { display: flex; flex-direction: column; gap: 14px; padding-bottom: 48px; border-bottom: 1px solid var(--dmf-rule); }
body .entry-content .dmf-cv-name { font-family: var(--dmf-serif); font-weight: 400; font-size: clamp(56px, 8vw, 96px); line-height: 0.95; letter-spacing: -0.015em; color: var(--dmf-strong); }
.dmf-cv-title { font-size: clamp(17px, 1.6vw, 20px); color: var(--dmf-body); }
.dmf-cv-meta { font-size: 15px; color: var(--dmf-muted); }
.dmf-cv-meta a, .dmf-cv-org a { color: var(--dmf-amber); text-decoration: none; }
.dmf-cv-meta a:hover, .dmf-cv-org a:hover { color: var(--dmf-amber-light); }

/* Each section: its heading in a left column, its content on the right. */
.dmf-cv-section { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 32px 48px; }
.dmf-cv-section .dmf-cv-h2 { grid-column: 1; }
.dmf-cv-section .dmf-cv-body, .dmf-cv-section .dmf-cv-skills { grid-column: 2; }
body .entry-content .dmf-cv-h2 { font-family: var(--dmf-serif); font-weight: 400; font-size: 34px; line-height: 1.1; color: var(--dmf-strong); }
.dmf-cv p, .dmf-cv li { font-size: 17px; line-height: 1.7; color: var(--dmf-body); }
.dmf-cv .dmf-cv-lede { font-size: 20px; line-height: 1.6; color: var(--dmf-strong); }
.dmf-cv-body { display: flex; flex-direction: column; gap: 18px; }

.dmf-cv-skills { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 18px; }
.dmf-cv-skills li { margin: 0; }
.dmf-cv-skills strong { display: block; margin-bottom: 2px; font-size: 13px; font-weight: 600; letter-spacing: 0.14em; text-transform: uppercase; color: var(--dmf-amber); }

/* Roles: dates on the left, under the section heading; the role on the right. */
.dmf-cv-role { grid-column: 1 / -1; display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 8px 48px; }
.dmf-cv-role + .dmf-cv-role { padding-top: 40px; border-top: 1px solid var(--dmf-rule); }
.dmf-cv .dmf-cv-when { padding-top: 10px; font-size: 15px; font-weight: 500; color: var(--dmf-amber); }
.dmf-cv-what { display: flex; flex-direction: column; gap: 14px; }
body .entry-content .dmf-cv-h3 { font-family: var(--dmf-serif); font-weight: 400; font-size: 32px; line-height: 1.15; color: var(--dmf-strong); }
.dmf-cv .dmf-cv-org { font-size: 15px; color: var(--dmf-muted); }
.dmf-cv-work { list-style: none; padding: 0; display: flex; flex-direction: column; gap: 18px; }
.dmf-cv-work li { position: relative; margin: 0; padding-left: 22px; }
.dmf-cv-work li::before { content: ""; position: absolute; left: 0; top: 0.85em; width: 10px; height: 1px; background: var(--dmf-amber); }
.dmf-cv-work strong, .dmf-cv-extra strong { color: var(--dmf-strong); font-weight: 500; }

/* Education, languages, outside software: three across. */
.dmf-cv-section.dmf-cv-extras { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); padding-top: 48px; border-top: 1px solid var(--dmf-rule); }
.dmf-cv-extra { display: flex; flex-direction: column; gap: 12px; }
body .entry-content .dmf-cv-extra .dmf-cv-h2 { font-size: 26px; }

@media (max-width: 760px) {
	.dmf-cv { gap: 56px; }
	.dmf-cv-section, .dmf-cv-role { grid-template-columns: minmax(0, 1fr); }
	.dmf-cv-section .dmf-cv-h2, .dmf-cv-section .dmf-cv-body, .dmf-cv-section .dmf-cv-skills { grid-column: auto; }
	.dmf-cv .dmf-cv-when { padding-top: 0; }
}

/* Menu items the plugin hides (dmf_menu): Home and Security. */
.menu-item.dmf-hidden { display: none !important; }

/* About page (content/about.html): the résumé's layout, with a longer headline. */
body .entry-content .dmf-cv-display { font-family: var(--dmf-serif); font-weight: 400; font-size: clamp(44px, 6vw, 76px); line-height: 1; letter-spacing: -0.015em; color: var(--dmf-strong); max-width: 820px; }

/* ---------- QA fixes (1.3.0) ---------- */

/* The hero's nav sits over the bulb's filament: a dark band behind the bar, and a shadow under the links. */
.dmf-hero::after {
	content: "";
	position: absolute;
	inset: 0 0 auto 0;
	height: 180px;
	z-index: -1;
	background: linear-gradient(to bottom, rgba(14, 13, 11, 0.88), rgba(14, 13, 11, 0.55) 55%, rgba(14, 13, 11, 0));
	pointer-events: none;
}
.dmf-bar a { text-shadow: 0 1px 10px rgba(0, 0, 0, 0.85), 0 0 2px rgba(0, 0, 0, 0.6); }
.dmf-hero .dmf-nav a { color: var(--dmf-strong); }

/* Kadence indents every list in page content (.single-content ul: 2em); these lists draw their own markers. */
body .entry-content ul.dmf-plain-list,
body .entry-content ul.dmf-contact-links,
body .entry-content ul.dmf-cv-skills,
body .entry-content ul.dmf-cv-work { padding-left: 0; margin-left: 0; }

/* A card title that links (DomainWatch): the title's colour, amber on hover. */
.dmf-card .dmf-h3 a { color: inherit; text-decoration: none; }
.dmf-card .dmf-h3 a:hover, .dmf-card .dmf-h3 a:focus-visible { color: var(--dmf-amber-light); }

/* Earlier work on the home page: the résumé's amber dash in front of each item. */
.dmf-plain-list li { position: relative; padding-left: 22px; }
.dmf-plain-list li::before { content: ""; position: absolute; left: 0; top: 0.8em; width: 10px; height: 1px; background: var(--dmf-amber); }

/* ---------- Blog (content/blog.html) and the old posts ---------- */

/* The pages this plugin writes draw their own header; Kadence's title band would repeat it. */
body.dmf-page .entry-hero { display: none; }

.dmf-posts .wp-block-post-template { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; }
body .entry-content .dmf-posts .wp-block-post-template { padding-left: 0; }
.dmf-posts .wp-block-post-template > li { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: 6px 48px; padding: 32px 0; margin: 0; border-top: 1px solid var(--dmf-rule); }
.dmf-posts .wp-block-post-template > li:first-child { border-top: 0; padding-top: 0; }
.dmf-posts .dmf-post-date { grid-row: 1 / span 2; padding-top: 8px; font-size: 15px; font-weight: 500; color: var(--dmf-amber); }
body .entry-content .dmf-posts .dmf-post-title { margin: 0; font-family: var(--dmf-serif); font-weight: 400; font-size: 30px; line-height: 1.15; }
.dmf-posts .dmf-post-title a { color: var(--dmf-strong); text-decoration: none; }
.dmf-posts .dmf-post-title a:hover, .dmf-posts .dmf-post-title a:focus-visible { color: var(--dmf-amber-light); }
.dmf-posts .dmf-post-excerpt p { margin: 0; font-size: 16px; line-height: 1.65; color: var(--dmf-body); }
.dmf-posts .wp-block-post-excerpt__more-text { margin-top: 8px; }

/* A callout from an earlier theme's [box] shortcode, in the old posts. */
.dmf-note { margin: 0 0 1.5em; padding: 16px 20px; background: var(--dmf-panel); border: 1px solid var(--dmf-rule); border-radius: 4px; color: var(--dmf-body); }
.dmf-note a { color: var(--dmf-amber); }

/* Single posts: a readable measure, and links that read as links on the dark ground. */
.single-post .entry-content-wrap { max-width: 760px; margin-left: auto; margin-right: auto; }
.single-post .entry-content a { color: var(--dmf-amber); }
.single-post .entry-content a:hover { color: var(--dmf-amber-light); }
.single-post .entry-content img { height: auto; }

@media (max-width: 760px) {
	.dmf-posts .wp-block-post-template > li { grid-template-columns: minmax(0, 1fr); }
	.dmf-posts .dmf-post-date { grid-row: auto; padding-top: 0; }
}

/* Comment dates and reply links: at least 24px to tap (WCAG 2.2 target size; flagged by axe on the old posts). */
.comment-metadata a, .comment-reply-link, .comment-edit-link { display: inline-block; min-height: 24px; padding: 3px 0; line-height: 18px; }
/* No avatars (no Gravatar, see inc/filament.php): Kadence's comment header no longer needs room for one. */
body .comment-list .comment-meta { margin-left: 0; }

/* Travel: the globe's places as a list (dmf_travel_list). */
.dmf-places { max-width: 1040px; margin: 40px auto 0; padding: 20px 24px; background: var(--dmf-panel); border: 1px solid var(--dmf-rule); border-radius: 4px; }
.dmf-places summary { min-height: 24px; cursor: pointer; font-weight: 500; color: var(--dmf-amber); }
.dmf-places summary:hover { color: var(--dmf-amber-light); }
body .entry-content .dmf-places-list { list-style: none; margin: 20px 0 0; padding: 0; display: flex; flex-direction: column; gap: 14px; }
.dmf-places-list li { margin: 0; font-size: 16px; line-height: 1.6; color: var(--dmf-body); }
.dmf-places-name { font-weight: 600; color: var(--dmf-strong); }
.dmf-places-count { color: var(--dmf-muted); }
body .entry-content .dmf-places-list ul { list-style: none; margin: 8px 0 0; padding: 0 0 0 16px; border-left: 1px solid var(--dmf-rule); display: flex; flex-direction: column; gap: 6px; }
.dmf-places-list ul strong { color: var(--dmf-strong); font-weight: 500; }

/* Lost & Found (/found/): an English and a German form, both Gravity Forms in its Orbital theme, recoloured for the dark
   ground through Orbital's own colour variables. Gravity Forms prints its defaults per form, keyed to the form's ID, so
   these need the section's ID to win. */
/* One language at a time (the script in the page head picks it); without JavaScript both show, German second. */
html.dmf-found-de .dmf-found .dmf-only-en, html.dmf-found-en .dmf-found .dmf-only-de, html.dmf-found-js .dmf-found .dmf-found-both, html:not(.dmf-found-js) .dmf-found .dmf-found-switch, html:not(.dmf-found-js) .dmf-found .dmf-eyebrow.dmf-only-de { display: none; }
html:not(.dmf-found-js) .dmf-found .dmf-cv-title.dmf-only-de { margin-top: 12px; color: var(--dmf-muted); }
.dmf-found-switch { margin: 24px 0 0; }
.dmf-found-switch a { display: inline-flex; align-items: center; min-height: 24px; color: var(--dmf-amber); font-weight: 500; }
.dmf-found-switch a:hover, .dmf-found-switch a:focus-visible { color: var(--dmf-amber-light); }
.dmf-found-lang { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 28px 0 0; }
.dmf-found-lang a { display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border: 1px solid var(--dmf-amber); border-radius: 4px; color: var(--dmf-amber); font-weight: 500; text-decoration: none; }
.dmf-found-lang a:hover, .dmf-found-lang a:focus-visible { background: var(--dmf-amber); color: var(--dmf-ground); }
.dmf-found .dmf-cv-section { scroll-margin-top: 100px; }
.dmf-found .dmf-cv-body > p:first-child { margin-top: 0; }
body :is(#tab-english, #tab-deutsch) .gform_wrapper.gform-theme {
	--gf-color-primary: #F2A33A; --gf-color-primary-rgb: 242, 163, 58; --gf-color-primary-contrast: #0E0D0B; --gf-color-primary-contrast-rgb: 14, 13, 11;
	--gf-color-primary-darker: #D98A20; --gf-color-primary-lighter: #FFD08A;
	--gf-color-secondary: #1A1813; --gf-color-secondary-rgb: 26, 24, 19; --gf-color-secondary-contrast: #F7F1E6; --gf-color-secondary-contrast-rgb: 247, 241, 230;
	--gf-color-secondary-darker: #0E0D0B; --gf-color-secondary-lighter: #2E2A24;
	--gf-color-out-ctrl-light: #2E2A24; --gf-color-out-ctrl-light-rgb: 46, 42, 36; --gf-color-out-ctrl-light-darker: #6B6458; --gf-color-out-ctrl-light-lighter: #1A1813;
	--gf-color-out-ctrl-dark: #A79F92; --gf-color-out-ctrl-dark-rgb: 167, 159, 146; --gf-color-out-ctrl-dark-darker: #F7F1E6; --gf-color-out-ctrl-dark-lighter: #CFC7B9;
	--gf-color-in-ctrl: #1A1813; --gf-color-in-ctrl-rgb: 26, 24, 19; --gf-color-in-ctrl-contrast: #F7F1E6; --gf-color-in-ctrl-contrast-rgb: 247, 241, 230;
	--gf-color-in-ctrl-darker: #0E0D0B; --gf-color-in-ctrl-lighter: #2E2A24;
	--gf-color-in-ctrl-primary: #F2A33A; --gf-color-in-ctrl-primary-rgb: 242, 163, 58; --gf-color-in-ctrl-primary-contrast: #0E0D0B; --gf-color-in-ctrl-primary-contrast-rgb: 14, 13, 11;
	--gf-color-in-ctrl-primary-darker: #D98A20; --gf-color-in-ctrl-primary-lighter: #FFD08A;
	--gf-color-in-ctrl-light: #2E2A24; --gf-color-in-ctrl-light-rgb: 46, 42, 36; --gf-color-in-ctrl-light-darker: #6B6458; --gf-color-in-ctrl-light-lighter: #1A1813;
	--gf-color-in-ctrl-dark: #A79F92; --gf-color-in-ctrl-dark-rgb: 167, 159, 146; --gf-color-in-ctrl-dark-darker: #CFC7B9; --gf-color-in-ctrl-dark-lighter: #F7F1E6;
	--gf-color-danger: #FF9B8A; --gf-color-danger-rgb: 255, 155, 138; --gf-color-success: #8FD694; --gf-color-success-rgb: 143, 214, 148;
	--gf-font-family-base: var(--dmf-sans); --gf-font-family-primary: var(--dmf-sans); --gf-font-family-secondary: var(--dmf-sans);
	--gf-ctrl-label-color-primary: #F7F1E6; --gf-ctrl-label-color-secondary: #CFC7B9; --gf-ctrl-desc-color: #A79F92;
	--gf-ctrl-font-size: 16px; --gf-ctrl-label-font-size-primary: 16px; --gf-ctrl-label-font-size-secondary: 15px; --gf-ctrl-desc-font-size: 14px; --gf-ctrl-btn-font-size: 16px;
	max-width: 720px;
}
body :is(#tab-english, #tab-deutsch) .gform_confirmation_message { white-space: pre-line; color: var(--dmf-body); }
