/* NT 2026-09-29 FINAL-F (pklawfirm.sk stand 8084): items 1-2. Loaded by the module loader of functions.php after
   nt-zz-final-e.css. Nothing here changes stored data. Rollback: delete this file.
   Scripts and checks: SITE/stand-8084-scripts-2026-09-29/finF/. */

/* ===== 1) Home pages (/, /en/, /ru/, body class page-id-3974), three cards under the banner (grid 1a03f19).
   The Russian "Уголовное" was wider than the 330px title box at 70px and broke inside the word ("Уголовно / е") from about
   1850px; below that it ran across the striped photo inset of the gold card (as "Trestné" and "Criminal" did up to 1600px).
   Now: one title size per page, taken from the card width (container units) so that the longest word of the language fits
   the free zone of the gold card left of the inset; words never break inside, the gold card title wraps inside that zone;
   the inset keeps its place and look, it only gets smaller on narrow cards (at most 36% of the card, 187px as before).
   Overrides nt-zz-final-c.css 9 (Russian size) and the theme sizes of these three titles. */
body.page-id-3974 .elementor-element-1a03f19 {
	--ntf-p: 40px;   /* 1) card padding left, as the Elementor card setting */
	--ntf-r: 54px;   /* 1) inset offset from the card right edge, as the Elementor setting */
	--ntf-max: 70px; /* 1) biggest title size, the theme size */
	--ntf-em: 3.6;   /* 1) longest word of EN ("Criminal" 3.4em) plus reserve */
}
html[lang|="pl"] body.page-id-3974 .elementor-element-1a03f19 {
	--ntf-em: 3.3;   /* 1) "Trestné" 3.1em plus reserve */
}
html[lang|="ru"] body.page-id-3974 .elementor-element-1a03f19 {
	--ntf-max: 64px; /* 1) "Уголовное" at 64px still fits the 330px title box of the photo cards */
	--ntf-em: 5;     /* 1) "Уголовное" 4.83em plus reserve */
}
@media only screen and (max-width: 1279px) {
	body.page-id-3974 .elementor-element-1a03f19 {
		--ntf-r: 20px; /* 1) Elementor tablet setting */
	}
}
@media only screen and (max-width: 991px) {
	body.page-id-3974 .elementor-element-1a03f19 {
		--ntf-p: 20px; /* 1) Elementor tablet setting */
	}
}
@media only screen and (max-width: 767px) {
	body.page-id-3974 .elementor-element-1a03f19 {
		--ntf-max: 35px; /* 1) phones: the theme size, one card per row */
	}
}
/* 1) each card is a size container: 100cqw = card width */
body.page-id-3974 .elementor-element-1a03f19 > .e-con {
	container-type: inline-size; /* 1) */
}
/* 1) the striped photo inset of the gold card: at most 36% of the card width (187px from about 1600px wide) */
body.page-id-3974 .elementor-element-1a03f19 .elementor-element.elementor-element-4e8a777 img {
	width: min(187px, 36cqw); /* 1) */
}
body:not(.rtl).page-id-3974 .elementor-element-1a03f19 .elementor-element.elementor-element-4e8a777 {
	right: var(--ntf-r); /* 1) same values as Elementor, repeated so the size formula below always matches */
}
/* 1) the three titles: one size, free zone of the gold card / longest word; no break inside a word (selector as strong as
   nt-zz-final-c.css 9, this file comes later) */
html body.page-id-3974 .elementor-element.elementor-element-1a03f19 .elementor-widget-constructum_heading h2.constructum-heading {
	font-size: min(var(--ntf-max), calc((100cqw - var(--ntf-p) - var(--ntf-r) - min(187px, 36cqw) - 4px) / var(--ntf-em))); /* 1) */
	font-size: round(down, min(var(--ntf-max), calc((100cqw - var(--ntf-p) - var(--ntf-r) - min(187px, 36cqw) - 4px) / var(--ntf-em))), 1px); /* 1) whole px: the three cards differ by 0.01px in width */
	letter-spacing: -0.03em; /* 1) as the theme (-2.1px at 70px), now proportional */
	overflow-wrap: normal; /* 1) was break-word: "Уголовно / е" */
	word-break: normal; /* 1) */
	hyphens: manual; /* 1) */
}
/* 1) gold card: the title wraps inside the zone left of the inset */
body.page-id-3974 .elementor-element-1a03f19 .elementor-element-fbbba97 h2.constructum-heading {
	max-width: calc(100cqw - var(--ntf-p) - var(--ntf-r) - min(187px, 36cqw) - 4px); /* 1) */
}
/* 1) three cards in a row (from 768px): title box two lines high, so the titles start on one line
   (nt-zz-final-c.css 9 did this from 1025px only) */
@media only screen and (min-width: 768px) {
	body.page-id-3974 .elementor-element-1a03f19 .elementor-widget-constructum_heading h2.constructum-heading {
		min-height: 2em; /* 1) */
	}
}

/* ===== 2) Header dropdown on SK (desktop): the list was 266px, so "Obhajoba v trestnom konaní", "Prevod obchodného
   podielu", "Zmeny v obchodnom registri" and "Potravinárske a poľnohospodárske právo" took two lines. Same as FINAL-E 5 does
   for EN and RU (nt-zz-final-e.css): the list is as wide as its longest item (266-360px), one-line items keep 40px.
   The language switcher list (SK/EN/RU with flags) is not touched. */
html[lang|="pl"] body .elementor-widget-constructum_navigation_menu .main-menu > li:not(.nt-lang-switcher) ul.sub-menu {
	width: max-content; /* 2) as wide as the longest item */
	min-width: 266px; /* 2) not narrower than before */
	max-width: 360px; /* 2) */
}
html[lang|="pl"] body .elementor-widget-constructum_navigation_menu .main-menu > li:not(.nt-lang-switcher) ul.sub-menu > li > a {
	line-height: 1.3; /* 2) was 16px on a 16px font */
	padding-top: 9.6px; /* 2) 12px before: a one-line item keeps its 40px height */
	padding-bottom: 9.6px; /* 2) */
}
/* 2) "Potravinárske a poľnohospodárske právo" (about 300px of text) did not fit 360px: the list has 34px + 28px side padding
   and every item 20px more on the right. Items without their own submenu have no chevron, so they need no right padding
   (the list padding keeps the space), and the list right padding is 20px: 34 + 300 + 20 = 354px. */
html[lang|="pl"] body .elementor-widget-constructum_navigation_menu .main-menu > li:not(.nt-lang-switcher) ul.sub-menu {
	padding-right: 20px; /* 2) 28px before */
}
html[lang|="pl"] body .elementor-widget-constructum_navigation_menu .main-menu > li:not(.nt-lang-switcher) ul.sub-menu > li:not(.menu-item-has-children) > a {
	padding-right: 0; /* 2) 20px before */
}
