/*
 * HEIDI — Sistema tipográfico DIN
 *
 * The body class keeps every rule reversible from Appearance > Tipografía HEIDI.
 * Selectors include Elementor's common widgets so page-level typography settings
 * do not fragment the brand system.
 */

@font-face {
	font-family: "HEIDI DIN Pro";
	src: url("../fonts/DINPro-Light.woff2") format("woff2");
	font-style: normal;
	font-weight: 300;
	font-display: swap;
}

@font-face {
	font-family: "HEIDI DIN Pro";
	src: url("../fonts/DINPro-Regular.woff2") format("woff2");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "HEIDI DIN Pro";
	src: url("../fonts/DINPro-Medium.woff2") format("woff2");
	font-style: normal;
	font-weight: 500;
	font-display: swap;
}

@font-face {
	font-family: "HEIDI DIN Pro";
	src: url("../fonts/DINPro-Bold.woff2") format("woff2");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

@font-face {
	font-family: "HEIDI DIN Pro";
	src: url("../fonts/DINPro-Black.woff2") format("woff2");
	font-style: normal;
	font-weight: 900;
	font-display: swap;
}

@font-face {
	font-family: "HEIDI DIN Engschrift";
	src: url("../fonts/DINEngschriftStd.woff2") format("woff2");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "HEIDI DIN Mittelschrift";
	src: url("../fonts/DINMittelschriftStd.woff2") format("woff2");
	font-style: normal;
	font-weight: 400;
	font-display: swap;
}

@font-face {
	font-family: "HEIDI DIN Neuzeit Condensed";
	src: url("../fonts/DINNeuzeitGroteskStd-BdCond.woff2") format("woff2");
	font-style: normal;
	font-weight: 700;
	font-display: swap;
}

@font-face {
	font-family: "HEIDI DIN Neuzeit Light";
	src: url("../fonts/DINNeuzeitGroteskStd-Light.woff2") format("woff2");
	font-style: normal;
	font-weight: 300;
	font-display: swap;
}

/* Base text: neutral, highly legible, and consistent across theme + Elementor. */
.heidi-din-typography,
.heidi-din-typography .elementor,
.heidi-din-typography p,
.heidi-din-typography li,
.heidi-din-typography dd,
.heidi-din-typography dt,
.heidi-din-typography address,
.heidi-din-typography table,
.heidi-din-typography input:not([type="button"]):not([type="submit"]):not([type="reset"]),
.heidi-din-typography select,
.heidi-din-typography textarea {
	font-family: "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 400;
}

/* Display hierarchy. Sizes remain controlled by Elementor and the active theme. */
.heidi-din-typography h1,
.heidi-din-typography h1 a,
.heidi-din-typography .elementor-widget-heading h1.elementor-heading-title,
.heidi-din-typography .elementor-widget-heading h1.elementor-heading-title a {
	font-family: "HEIDI DIN Neuzeit Condensed", "Arial Narrow", sans-serif !important;
	font-weight: 700 !important;
	line-height: 0.96;
	letter-spacing: -0.015em;
}

.heidi-din-typography h2,
.heidi-din-typography h2 a,
.heidi-din-typography .elementor-widget-heading h2.elementor-heading-title,
.heidi-din-typography .elementor-widget-heading h2.elementor-heading-title a {
	font-family: "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 900 !important;
	line-height: 1.02;
	letter-spacing: -0.02em;
}

.heidi-din-typography h3,
.heidi-din-typography h3 a,
.heidi-din-typography .elementor-widget-heading h3.elementor-heading-title,
.heidi-din-typography .elementor-widget-heading h3.elementor-heading-title a {
	font-family: "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 700 !important;
	line-height: 1.08;
	letter-spacing: -0.012em;
}

.heidi-din-typography h4,
.heidi-din-typography h4 a,
.heidi-din-typography .elementor-widget-heading h4.elementor-heading-title,
.heidi-din-typography .elementor-widget-heading h4.elementor-heading-title a {
	font-family: "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 500 !important;
	line-height: 1.15;
}

.heidi-din-typography h5,
.heidi-din-typography h5 a,
.heidi-din-typography .elementor-widget-heading h5.elementor-heading-title,
.heidi-din-typography .elementor-widget-heading h5.elementor-heading-title a {
	font-family: "HEIDI DIN Mittelschrift", "Arial Narrow", sans-serif !important;
	font-weight: 400 !important;
	line-height: 1.15;
	letter-spacing: 0.035em;
	text-transform: uppercase;
}

.heidi-din-typography h6,
.heidi-din-typography h6 a,
.heidi-din-typography .elementor-widget-heading h6.elementor-heading-title,
.heidi-din-typography .elementor-widget-heading h6.elementor-heading-title a {
	font-family: "HEIDI DIN Engschrift", "Arial Narrow", sans-serif !important;
	font-weight: 400 !important;
	line-height: 1.12;
	letter-spacing: 0.075em;
	text-transform: uppercase;
}

/*
 * Elementor uses heading tags for a few supporting labels. These stable widget
 * selectors keep them from inheriting the visual weight of a section H2.
 * The named utility classes can be reused on future Elementor widgets.
 */
.heidi-din-typography .elementor-element.elementor-element-a17678d.elementor-widget-heading h2.elementor-heading-title,
.heidi-din-typography .elementor-element.elementor-element-a17678d.elementor-widget-heading h2.elementor-heading-title a,
.heidi-din-typography .elementor-widget-heading.heidi-din-auxiliary-light h2.elementor-heading-title,
.heidi-din-typography .elementor-widget-heading.heidi-din-auxiliary-light h2.elementor-heading-title a {
	font-family: "HEIDI DIN Neuzeit Light", "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 300 !important;
	line-height: 1.15;
	letter-spacing: 0.01em;
}

.heidi-din-typography .elementor-element.elementor-element-c017b07.elementor-widget-heading h2.elementor-heading-title,
.heidi-din-typography .elementor-widget-heading.heidi-din-eyebrow h2.elementor-heading-title {
	font-family: "HEIDI DIN Engschrift", "Arial Narrow", sans-serif !important;
	font-weight: 400 !important;
	line-height: 1.2;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

/* Links and emphasis. Heading links are restored by the hierarchy above. */
.heidi-din-typography :where(
	a:not(.elementor-button):not(.themegoods-background-menu__item-link),
	p a,
	li a
) {
	font-family: "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 500;
}

.heidi-din-typography strong,
.heidi-din-typography b {
	font-family: "HEIDI DIN Pro", Arial, sans-serif;
	font-weight: 700;
}

/* Navigation and actions use the road-sign clarity of Mittelschrift. */
.heidi-din-typography button,
.heidi-din-typography input[type="button"],
.heidi-din-typography input[type="submit"],
.heidi-din-typography input[type="reset"],
.heidi-din-typography .button,
.heidi-din-typography .elementor-button,
.heidi-din-typography .elementor-button *,
.heidi-din-typography .menu-item > a,
.heidi-din-typography nav a {
	font-family: "HEIDI DIN Mittelschrift", "Arial Narrow", sans-serif !important;
	font-weight: 400 !important;
	letter-spacing: 0.055em;
}

/* The large off-canvas menu behaves as display typography, not small navigation. */
.heidi-din-typography .themegoods-background-menu__item-link {
	font-family: "HEIDI DIN Neuzeit Condensed", "Arial Narrow", sans-serif !important;
	font-weight: 700 !important;
	letter-spacing: 0.015em;
}

/* Editorial accents use Neuzeit Light; metadata uses DIN Pro Light. */
.heidi-din-typography blockquote,
.heidi-din-typography blockquote p,
.heidi-din-typography .wp-block-quote,
.heidi-din-typography .elementor-blockquote {
	font-family: "HEIDI DIN Neuzeit Light", "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 300 !important;
	line-height: 1.3;
}

.heidi-din-typography small,
.heidi-din-typography figcaption,
.heidi-din-typography caption,
.heidi-din-typography .wp-caption-text,
.heidi-din-typography .elementor-image-box-description,
.heidi-din-typography .elementor-testimonial__title {
	font-family: "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 300 !important;
}

/* Forms: clear labels, calm input text, and a true light placeholder. */
.heidi-din-typography label,
.heidi-din-typography legend,
.heidi-din-typography .wpcf7-list-item-label {
	font-family: "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 500 !important;
}

.heidi-din-typography input::placeholder,
.heidi-din-typography textarea::placeholder {
	font-family: "HEIDI DIN Pro", Arial, sans-serif !important;
	font-weight: 300 !important;
	opacity: 0.72;
}

/* Compact specimen on the settings screen. */
.heidi-din-admin-specimen {
	max-width: 780px;
	margin-top: 24px;
	padding: 28px 32px;
	border: 1px solid #c3c4c7;
	border-radius: 4px;
	background: #fff;
	color: #1d2327;
}

.heidi-din-admin-specimen h1,
.heidi-din-admin-specimen h2,
.heidi-din-admin-specimen h3,
.heidi-din-admin-specimen h4,
.heidi-din-admin-specimen h5,
.heidi-din-admin-specimen h6 {
	margin: 0 0 12px;
}

.heidi-din-admin-specimen blockquote {
	margin: 24px 0;
	padding-left: 18px;
	border-left: 4px solid #1d2327;
	font-size: 22px;
}
