/**
 * Cross-site accessibility overrides paired with the performance layer.
 * Keep this file small: it is loaded on all active language sites.
 */

/* Preserve the TOPModel pink while meeting WCAG AA for normal button text. */
.et_pb_button.backbutton-link,
.et-db #et-boc .et-l .et_pb_button.backbutton-link {
	color: #2b2b2b !important;
}

/* Real Cookie Banner uses generated class names; role semantics are stable. */
html[lang="de-DE"] body dialog a[role="button"],
html[lang="de-DE"] body dialog a[role="button"] span {
	color: #2b2b2b !important;
}

/* The original pink is too dark on the charcoal footer for normal text. */
#main-footer .video-entry .videoname .date {
	color: #ff9aad !important;
}

/*
 * The closed mobile navigation previously downloaded a 240 KB decorative
 * background on every request. The capture-phase listener restores it before
 * Divi opens the menu.
 */
#mobile_menu {
	background-image: linear-gradient(rgba(66, 66, 66, 0.50), rgba(66, 66, 66, 0.90)) !important;
}

#mobile_menu.tm-mobile-menu-background-loaded {
	background-image: linear-gradient(rgba(66, 66, 66, 0.50), rgba(66, 66, 66, 0.90)), url("/wp-content/themes/topmodel-design/assets/images/topmodel-homepage-menu-small.png") !important;
}

/*
 * Let Chromium skip layout and paint work for distant homepage sections.
 * The first content section remains eager; later sections render ahead of the
 * viewport and remember their real size after first display.
 */
body.home .et_builder_inner_content > .et_pb_section:not(.et_pb_section_first) {
	content-visibility: auto;
	contain-intrinsic-size: auto 700px;
}

/* Form policy links remain pink, but are legible and not color-only. */
.wpcf7 .app a {
	color: #ff9aad !important;
	text-decoration: underline !important;
}

/* Model and tutorial templates use TOPModel pink as a large color field. */
.single-models .tm-title,
.single-models .tm-title span,
.single-models .et_pb_button,
.single-anleitungen .et_pb_button {
	color: #2b2b2b !important;
}

/* The first model fact row sits on charcoal panels. */
.single-models .et_pb_blurb_0_tb_body .modeltyp-h3,
.single-models .et_pb_blurb_0_tb_body .et_pb_blurb_description,
.single-models .et_pb_blurb_1_tb_body .modeltyp-h3,
.single-models .et_pb_blurb_1_tb_body .et_pb_blurb_description,
.single-models .et_pb_blurb_2_tb_body .modeltyp-h3,
.single-models .et_pb_blurb_2_tb_body .et_pb_blurb_description {
	color: #ffffff !important;
}

/* The second row uses TOPModel pink and therefore needs a dark foreground. */
.single-models .et_pb_blurb_3_tb_body .modeltyp-h3,
.single-models .et_pb_blurb_3_tb_body .et_pb_blurb_description,
.single-models .et_pb_blurb_4_tb_body .modeltyp-h3,
.single-models .et_pb_blurb_4_tb_body .et_pb_blurb_description {
	color: #2b2b2b !important;
}

/* Download cards retain their pink design with an accessible dark foreground. */
.post-type-archive-sdm_downloads .dp-dfg-filter-link.active,
.post-type-archive-sdm_downloads .dp-dfg-header .entry-title,
.post-type-archive-sdm_downloads .dp-dfg-content,
.post-type-archive-sdm_downloads .dp-dfg-content p,
.post-type-archive-sdm_downloads .sdm-termscond-checkbox,
.post-type-archive-sdm_downloads .sdm-termscond-checkbox a,
.post-type-archive-sdm_downloads .sdm_download.sdm_disabled_button {
	color: #2b2b2b !important;
}

.post-type-archive-sdm_downloads .dp-dfg-content a,
.post-type-archive-sdm_downloads .sdm-termscond-checkbox a {
	text-decoration: underline !important;
}

.post-type-archive-sdm_downloads .sdm_download.sdm_disabled_button {
	background: #efb0c7 !important;
	opacity: 1 !important;
}

html body.post-type-archive-sdm_downloads .dp-dfg-filter-link.active,
html body.post-type-archive-sdm_downloads .dp-dfg-header h2.entry-title,
html body.post-type-archive-sdm_downloads .dp-dfg-content,
html body.post-type-archive-sdm_downloads .dp-dfg-content p,
html body.post-type-archive-sdm_downloads .dp-dfg-content p a,
html body.post-type-archive-sdm_downloads .sdm-termscond-checkbox,
html body.post-type-archive-sdm_downloads .sdm-termscond-checkbox a {
	color: #222222 !important;
}

/* Social icon-only links need a usable pointer/touch target. */
.fa-ul a[href*="instagram.com"] {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	min-height: 44px;
}

/* Prevent icon-font swaps from blocking first text paint. */
@font-face {
	font-family: "Font Awesome 5 Pro";
	font-style: normal;
	font-weight: 900;
	font-display: swap;
	src: url("/wp-content/themes/topmodel-design/assets/fonts/fontawesome/webfonts/fa-solid-900.woff2") format("woff2");
}

@font-face {
	font-family: "Font Awesome 5 Brands";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("/wp-content/themes/topmodel-design/assets/fonts/fontawesome/webfonts/fa-brands-400.woff2") format("woff2");
}

@font-face {
	font-family: "icomoon";
	font-style: normal;
	font-weight: normal;
	font-display: swap;
	src: url("/wp-content/themes/topmodel-design/assets/fonts/icomoon.woff?rzy711") format("woff");
}

@font-face {
	font-family: "slick";
	font-style: normal;
	font-weight: normal;
	font-display: swap;
	src: url("/wp-content/themes/topmodel-design/assets/js/slick/fonts/slick.woff") format("woff");
}
