/*
 * assets/css/intl-2026.css -- cizojazyčná vrstva Spolupráce (DE/PL/ES/FR/HU).
 *
 * Načítá se JEN na stránkách vrstvy a na CZ/EN stránkách spolupráce, které
 * mají cizojazyčný protějšek (rozbalovací přepínač). Enqueue:
 * `inc/intl-2026.php`. Zbytek webu tenhle soubor nevidí, takže nemůže
 * změnit jeho vzhled. Architektura: docs/intl-layer-2026.md.
 *
 * Obsah: ořezaná hlavička (logo, přepínač, CTA, řádek o strojovém
 * překladu), rozbalovací přepínač `.th-langdd` (vzor Z-AGENCY, nativní
 * `<details>`, funguje bez JS), ořezaná patička s firemním blokem, karty
 * obchodnic vedle formuláře, poznámka pod pásem recenzí.
 */

/* ------------------------------------------------------------------
 * Hlavička
 * ------------------------------------------------------------------ */
.th-intl-hbar {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	min-height: 74px;
	padding-top: 10px;
	padding-bottom: 10px;
}

.th-intl-logo {
	display: inline-flex;
	flex-shrink: 0;
}

.th-intl-logoimg {
	width: auto;
	height: 44px;
}

.th-intl-hright {
	display: flex;
	align-items: center;
	gap: 14px;
	min-width: 0;
}

/* CTA se zalomí na dva řádky jen tehdy, když vedle loga a přepínače opravdu
   nezbude místo (nejdelší „Solicite una propuesta“ na 320–620 px). */
.th-intl-cta {
	line-height: 1.15;
	text-align: center;
}

.th-intl-note {
	border-top: 1px solid var(--line);
	background: var(--soft);
	color: var(--muted);
	font-size: 14px;
	line-height: 1.45;
}

.th-intl-note p {
	padding: 7px 0;
}

.th-intl-note a {
	margin-left: 6px;
	color: var(--ink);
	font-weight: 700;
	white-space: nowrap;
}

/* ------------------------------------------------------------------
 * Patička
 * ------------------------------------------------------------------ */
.th-intl-foot {
	padding: 48px 0 28px;
}

.th-intl-fgrid {
	display: grid;
	grid-template-columns: 2fr 1fr 1fr;
	gap: 32px;
}

.th-intl-fh {
	color: #fff;
	font-size: 17px;
	font-weight: 800;
}

/* Mezera pod nadpisem sloupce jako produkční `.fcol .fcolh` (16 px na všech
   šířkách, změřeno 14. 10.). Dvě třídy kvůli resetu `.th-chrome h2` (chrome.css). */
.th-intl-foot .th-intl-fh {
	margin-bottom: 16px;
}

/* Ikony sítí pod sloupcem Website: odstup jako `.fbrand p` nad `.socials`. */
.th-intl-foot .socials {
	margin-top: 18px;
}

.th-intl-firma {
	display: flex;
	flex-direction: column;
	gap: 3px;
	font-style: normal;
	line-height: 1.5;
}

.th-intl-firma strong {
	color: #fff;
}

.th-intl-firma a,
.th-intl-fcol > a,
.th-intl-flangs a {
	color: #fff;
}

.th-intl-firma .tel {
	margin-top: 8px;
	font-weight: 800;
	font-variant-numeric: tabular-nums;
}

.th-intl-flangs {
	display: flex;
	flex-direction: column;
	gap: 6px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.th-intl-flangs [aria-current] {
	color: var(--ondark);
	font-weight: 700;
}

.th-intl-flegal {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 22px;
	margin-top: 36px;
	padding-top: 18px;
	border-top: 1px solid rgba(255, 255, 255, .16);
	font-size: 14px;
}

.th-intl-flegal a {
	color: var(--ondark);
}

/* ------------------------------------------------------------------
 * Formulář vrstvy: otázka na model spolupráce, nápověda s odkazem
 * na Z-AGENCY, druhý odstavec pod nadpisem (`formsec.php`, argumenty
 * `model`, `lead_note`, `consent_note`).
 * ------------------------------------------------------------------ */

/* Volby jsou celé věty: pod sebou, text zarovnaný vlevo (ne tři sloupce). */
.th-modelfield .pickrow {
	grid-template-columns: 1fr;
}

.th-modelfield .pick-box {
	justify-content: flex-start;
	padding-top: 10px;
	padding-bottom: 10px;
	line-height: 1.35;
}

.th-modelhint-za {
	color: #fff;
	text-decoration: underline;
}

.th-lead-note {
	margin-top: -6px;
}

/* ------------------------------------------------------------------
 * Rozbalovací přepínač jazyků (vrstva i CZ/EN stránky clusteru)
 * ------------------------------------------------------------------ */
.th-langdd {
	position: relative;
	font-size: 15px;
	font-weight: 700;
}

.th-langdd > summary {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	min-height: 44px;
	padding: 0 12px;
	border: 1px solid var(--line);
	border-radius: 999px;
	color: var(--ink);
	cursor: pointer;
	list-style: none;
	white-space: nowrap;
}

.th-langdd > summary::-webkit-details-marker {
	display: none;
}

.th-langdd > summary::after {
	content: "";
	width: 7px;
	height: 7px;
	margin: -3px 0 0 2px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: rotate(45deg);
}

.th-langdd[open] > summary::after {
	margin-top: 3px;
	transform: rotate(225deg);
}

.th-langdd > summary:focus {
	outline: 2px solid var(--org);
	outline-offset: 2px;
}

.th-langdd-ic {
	flex: none;
	color: var(--muted);
}

.th-langdd ul {
	position: absolute;
	top: calc(100% + 6px);
	right: 0;
	z-index: 120;
	min-width: 170px;
	margin: 0;
	padding: 6px;
	border: 1px solid var(--line);
	border-radius: 12px;
	background: #fff;
	box-shadow: 0 12px 32px rgba(23, 64, 46, .16);
	list-style: none;
}

.th-langdd li a,
.th-langdd li span {
	display: block;
	padding: 9px 12px;
	border-radius: 8px;
	color: var(--ink);
	text-decoration: none;
}

.th-langdd li a:hover,
.th-langdd li a:focus {
	background: var(--tint);
}

.th-langdd li[aria-current] span {
	color: var(--muted);
}

/* V mobilním panelu CZ/EN hlavičky se seznam neotevírá přes obsah, ale pod sebe. */
.th-langdd--panel ul {
	position: static;
	margin-top: 6px;
	box-shadow: none;
}

/* ------------------------------------------------------------------
 * Karty obchodnic vedle formuláře (`aside.person.th-intl-sales`)
 * ------------------------------------------------------------------ */
.person.th-intl-sales {
	display: block;
	padding: 24px 26px 26px;
}

.th-intl-sales-h {
	margin-bottom: 14px;
}

.th-intl-card {
	display: grid;
	grid-template-columns: 72px 1fr;
	gap: 14px;
	align-items: start;
	padding: 14px 0;
	border-top: 1px solid var(--line);
}

.person.th-intl-sales .pfoto {
	width: 72px;
	height: 72px;
	border-radius: 50%;
	object-position: center 22%;
}

.th-intl-card-txt {
	display: flex;
	flex-direction: column;
	gap: 2px;
	min-width: 0;
}

.th-intl-card-txt strong {
	font-size: 18px;
}

.th-intl-role,
.th-intl-langs {
	color: var(--muted);
	font-size: 14.5px;
}

.person.th-intl-sales .tel {
	margin: 6px 0 0;
	font-size: 19px;
}

.person.th-intl-sales .em {
	color: var(--ink);
	font-size: 15px;
	overflow-wrap: anywhere;
}

/*
 * Dlouhá slova v nadpisech (HU „rendezvényszervezőknek“ na 390 px roztáhlo
 * hlavičku na 416 px a sekce ji ořízla; nález kontroly ořezu 14. 10.).
 * Dělení podle jazyka stránky (`lang` na <html>), nouzově zalomit kdekoli,
 * aby min-content sloupce nepřetekl. Jen vrstva a jen úzké displeje.
 */
@media (max-width: 480px) {
	.th-intl h1,
	.th-intl h2,
	.th-intl h3 {
		overflow-wrap: anywhere;
		hyphens: auto;
		/* Dělit jen dlouhá slova (≥ 12 znaků, aspoň 6 před i za dělením). */
		hyphenate-limit-chars: 12 6 6;
	}

}

/* Panel s fakty na nejužších displejích: dlouhé hodnoty (DE „Begrenzung“, HU) přetékaly pravý okraj karty → popisek nad hodnotou. */
@media (max-width: 359px) {
	.th-intl .coop-dside-row {
		flex-direction: column;
		gap: 2px;
	}

	.th-intl .coop-dside-row b {
		text-align: left;
		overflow-wrap: anywhere;
		hyphens: auto;
	}
}

/*
 * Hlavička stránky (tablet, 768 px, HU): dlouhé slovo H1 roztáhlo levý sloupec
 * a pravý (video, fajfky) odjel za okraj. Sloupce se nesmí rozšířit podle
 * obsahu a H1 se smí rozdělit (nález kontroly ořezu na šířkách z druhého
 * názoru 14. 10.). Nad 1199 px se nic nemění.
 */
@media (max-width: 1199px) {
	.th-intl .dhead--coop .wrap {
		grid-template-columns: minmax(0, 1.02fr) minmax(0, .98fr);
	}

	.th-intl .dhead--coop h1,
	.th-intl .dhead--coop .dstat span {
		overflow-wrap: anywhere;
		hyphens: auto;
		hyphenate-limit-chars: 12 6 6;
	}
}

/* ------------------------------------------------------------------
 * Poznámka pod pásem recenzí
 * ------------------------------------------------------------------ */
.th-revnote {
	margin-top: 14px;
	color: var(--muted);
	font-size: 14px;
	text-align: center;
}

/* ------------------------------------------------------------------
 * Poznámka o AI v ořezané patičce: zarovnaná vlevo jako zbytek patičky
 * vrstvy (CZ/EN patička ji má pod 1024 px na střed, `chrome.css`).
 * ------------------------------------------------------------------ */
.th-intl-foot .th-fai {
	padding-top: 14px;
	text-align: left;
}

/* ------------------------------------------------------------------
 * Rozcestník vrstvy: 4 dlaždice oborů jako matice 2×2 (majitel 14. 10.).
 * Sdílená `.segrid` (components.css) dává na CZ/EN rozcestníku se
 * 6 dlaždicemi 3 sloupce; tady by vyšlo 3 + 1. Jen pod třídou `th-intl`
 * na `<body>` (stránky vrstvy), CZ/EN se nemění. Od 768 px 2 sloupce
 * až do nejširšího okna, pod 768 px platí 1 sloupec z components.css.
 * Řádky mřížky dlaždice v řádku natáhnou na stejnou výšku.
 * ------------------------------------------------------------------ */
@media (min-width: 768px) {
	.th-intl .segrid {
		grid-template-columns: repeat(2, 1fr);
	}
}

/* ------------------------------------------------------------------
 * Mobil
 * ------------------------------------------------------------------ */
@media (max-width: 767px) {
	/* Vrstva nemá mobilní spodní lištu; rezerva pro ni (`.js body` v chrome.css)
	   by nechala bílý pruh pod patičkou. Bezpečná zóna iPhonu zůstává. */
	body.th-intl {
		--th-dock-h: 0px;
	}

	.js body.th-intl {
		padding-bottom: var(--th-safe-bottom);
	}
}

@media (max-width: 899px) {
	.th-intl-fgrid {
		grid-template-columns: 1fr;
		gap: 26px;
	}

	.person.th-intl-sales {
		margin-top: 24px;
	}
}

@media (max-width: 599px) {
	.th-intl-hbar {
		gap: 10px;
		min-height: 62px;
		padding-right: 16px;
		padding-left: 16px;
	}

	.th-intl-logoimg {
		height: 34px;
	}

	.th-intl-hright {
		gap: 8px;
	}

	.th-langdd > summary {
		padding: 0 10px;
	}

	/* Na úzkém displeji jen ikona + šipka; jméno jazyka je v aria-label i v seznamu. */
	.th-langdd--header .th-langdd-cur {
		position: absolute;
		width: 1px;
		height: 1px;
		/* stylelint-disable-next-line plugin/no-unsupported-browser-features -- css-overflow je „partial" jen kvůli `overflow: clip` a dvouhodnotovému zápisu; jednohodnotové `overflow: hidden` umí celá matice (vzor chrome.css:200) */
		overflow: hidden;
		clip: rect(0, 0, 0, 0);
		white-space: nowrap;
	}

	.th-intl-cta {
		min-height: 44px;
		padding-right: 14px;
		padding-left: 14px;
		font-size: 15px;
	}

	.th-intl-note {
		font-size: 13px;
	}

	.th-intl-note .wrap {
		padding-right: 16px;
		padding-left: 16px;
	}
}

/*
 * Úzké telefony (14. 10.): nejdelší CTA vrstvy („Solicite una propuesta“)
 * se vedle loga a přepínače na 320–400 px nevejde. Pod 420 px má CTA menší
 * písmo; zalomení řeší základní pravidlo `.th-intl-cta` (jen když místo
 * opravdu dojde, flex ho zúží až na nejdelší slovo). Pod 360 px se zmenší
 * logo. Dlouhá slova
 * v nadpisech dlaždic rozcestníku (HU) se smí rozdělit.
 */
@media (max-width: 419px) {
	.th-intl-cta {
		padding-right: 12px;
		padding-left: 12px;
		font-size: 14px;
	}

	.th-intl .ecard-h {
		overflow-wrap: anywhere;
	}
}

@media (max-width: 359px) {
	.th-intl-hbar {
		gap: 8px;
	}

	.th-intl-logoimg {
		height: 28px;
	}

	.th-langdd > summary {
		padding: 0 8px;
	}

	/* Seznam je zarovnaný k pravé hraně úzkého tlačítka; se 170 px přetekl
	   na 320 px o 2 px za levý okraj (test 11, 14. 10.). */
	.th-langdd--header ul {
		min-width: 150px;
	}
}

/* ------------------------------------------------------------------
 * Blok Praha (obory agentury a CK, `template-parts/components/praha-blok.php`)
 *
 * Vzor bloku Praha Z-AGENCY (`.planb--praha`) s tokeny TerraHunt: fotka
 * vlevo se štítkem a menší doplňkovou fotkou přes pravý dolní roh, vpravo
 * text, čísla (count-up `stats.js`), hry s fajfkou `.th-chk`, tlačítko
 * a věta s odkazem na Z-AGENCY. Na mobilu fotka → text.
 * ------------------------------------------------------------------ */
.thpraha {
	background: var(--white);
}

/*
 * Kotvy bloku a otázek FAQ (`#prag`, `#faq-…`): skok se nezasekne pod lepivou
 * hlavičkou. Přesnou hodnotu podle změřené hlavičky nastaví `th-faq-kotva.js`;
 * tohle je záloha bez skriptu (hlavička vrstvy 110–118 px, změřeno 14. 10.).
 */
.thpraha[id],
.faq-item[id] {
	scroll-margin-top: calc(var(--th-head-full, 75px) + 16px);
}

.th-intl .thpraha[id],
.th-intl .faq-item[id] {
	scroll-margin-top: 134px;
}

.thpraha-wrap {
	display: grid;
	/* minmax(0, …): široký obsah (tabulka faktů) sloupec nerozšíří přes okraj stránky. */
	grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
	gap: 56px;
	align-items: center;
}

.thpraha-photo {
	position: relative;
	margin: 0;
}

.thpraha-photo.has-foto2 {
	padding-bottom: 56px;
}

.thpraha-ph {
	overflow: hidden;
	border-radius: var(--r-panel);
	box-shadow: var(--shadow);
}

.thpraha-img {
	display: block;
	width: 100%;
	height: 460px;
	object-fit: cover;
	object-position: 50% 45%;
	transition: transform .6s var(--reveal-ease);
}

.thpraha-ph2 {
	position: absolute;
	right: -18px;
	bottom: 0;
	width: 44%;
	border: 6px solid var(--white);
	border-radius: var(--r-card);
}

.thpraha-ph2 .thpraha-img {
	height: 190px;
}

.thpraha-badge {
	position: absolute;
	top: 18px;
	left: 18px;
	display: inline-flex;
	align-items: center;
	gap: 9px;
	padding: 9px 16px;
	border-radius: var(--r-btn);
	background: var(--teal);
	box-shadow: var(--shadow);
	color: var(--white);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: .02em;
}

.thpraha-badge i {
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: var(--org);
	box-shadow: 0 0 0 4px rgba(242, 95, 0, .25);
}

.thpraha-txt h2 {
	margin: 12px 0 14px;
}

.thpraha-txt h2 em {
	display: inline-block;
	padding: 0 10px;
	border-radius: 10px;
	background: var(--org);
	color: var(--white);
	font-style: normal;
}

.thpraha-uvod {
	max-width: 54ch;
	margin: 0 0 22px;
	color: var(--muted);
	font-size: 17px;
}

.thpraha-stats {
	display: flex;
	flex-wrap: wrap;
	gap: 14px 34px;
	margin: 0 0 24px;
}

.thpraha-stat {
	display: grid;
	gap: 2px;
	padding-left: 14px;
	border-left: 3px solid var(--org);
}

.thpraha-stat .stat-num {
	color: var(--teal);
	font-size: 38px;
	font-weight: 900;
	font-variant-numeric: tabular-nums;
	line-height: 1.05;
	letter-spacing: -.02em;
}

.thpraha-stat-label {
	max-width: 22ch;
	color: var(--ink);
	font-size: 14px;
	font-weight: 700;
	line-height: 1.35;
}

.thpraha-nowrap,
.th-intl-nowrap {
	white-space: nowrap;
}

/*
 * Span filtru rozsahů nesmí převzít styl `X span` komponenty, do které padne
 * (14. 10.: `.dhead--coop .dstat span` = 13 px, šedá, block → „1,5-3“ v čísle
 * dlaždice malé na vlastním řádku). Vzhled vždy od rodiče. Specifičnost
 * (0,2,1) + pořadí za `components.css` přebije pravidla typu `.a .b span`.
 */
.th-intl span.th-intl-nowrap,
.thpraha span.th-intl-nowrap {
	display: inline;
	margin: 0;
	padding: 0;
	border: 0;
	background: none;
	color: inherit;
	font: inherit;
	letter-spacing: inherit;
	line-height: inherit;
	text-transform: inherit;
}

.thpraha-uvod p,
.thpraha-za p {
	margin: 0 0 10px;
}

.thpraha-uvod p:last-child,
.thpraha-za p:last-child {
	margin-bottom: 0;
}

.thpraha-hry {
	display: grid;
	gap: 14px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.thpraha-hry li {
	display: flex;
	gap: 12px;
	align-items: flex-start;
	color: var(--ink);
	font-size: 15.5px;
	line-height: 1.5;
}

.thpraha-hra {
	color: var(--ink);
	/* 700, ne 800: řez 800 nemá „š“ (Vyšehrad se vykreslil náhradním písmem). */
	font-weight: 700;
	text-decoration: underline;
	text-decoration-color: var(--org);
	text-decoration-thickness: 2px;
	text-underline-offset: 3px;
}

a.thpraha-hra:hover,
a.thpraha-hra:focus-visible {
	color: var(--org-deep);
}

.thpraha-hra-text {
	display: block;
	color: var(--muted);
}

.thpraha-hry-pozn {
	margin: 14px 0 0;
	color: var(--muted);
	font-size: 14px;
}

.thpraha-cta {
	margin-top: 26px;
}

.thpraha-za {
	max-width: 54ch;
	margin: 16px 0 0;
	color: var(--muted);
	font-size: 15px;
}

.thpraha-za a {
	color: var(--link-on-light);
	text-decoration: underline;
	text-decoration-color: var(--link-on-light-underline);
	text-underline-offset: 3px;
}

.thpraha-za a:hover,
.thpraha-za a:focus-visible {
	color: var(--link-on-light-hover);
}

@media (hover: hover) and (pointer: fine) {
	.thpraha-ph:hover .thpraha-img {
		transform: scale(1.05);
	}
}

/* Nájezd: sekce `.reveal` (reveal.js), doplňková fotka a štítek o chvilku později. */
html.js .thpraha .thpraha-ph2,
html.js .thpraha .thpraha-badge {
	opacity: 0;
	transform: translateY(14px);
	transition: opacity .35s var(--reveal-ease) .2s, transform .35s var(--reveal-ease) .2s;
}

html.js .thpraha[data-reveal-ready="1"] .thpraha-ph2,
html.js .thpraha[data-reveal-ready="1"] .thpraha-badge,
html.reveal-failed .thpraha .thpraha-ph2,
html.reveal-failed .thpraha .thpraha-badge {
	opacity: 1;
	transform: none;
}

/*
 * Tabulka faktů bloku Praha (Praha SEO 14. 10.): pod oběma sloupci na plnou
 * šířku. Na mobilu zůstává `<table>` v HTML, řádek se jen přes CSS skládá do
 * karty a popisek buňky bere z `data-label`. Bez `overflow: hidden`: ořízlo by
 * i `<caption>` (první písmeno nadpisu, nález orchestrátora 14. 10.); řádky
 * nemají vlastní pozadí, zaoblení drží okraj tabulky.
 */
.thpraha-fakta {
	grid-column: 1 / -1;
	width: 100%;
	margin: 8px 0 0;
	border-collapse: separate;
	border-spacing: 0;
	border: 1px solid var(--line-org);
	border-radius: var(--r-card);
	background: var(--white);
	color: var(--ink);
	font-size: 15px;
	line-height: 1.45;
}

.thpraha-fakta caption {
	padding: 0 0 12px;
	color: var(--ink);
	font-size: 18px;
	font-weight: 700;
	text-align: left;
	caption-side: top;
}

.thpraha-fakta th,
.thpraha-fakta td {
	padding: 12px 16px;
	border-bottom: 1px solid var(--line-org);
	text-align: left;
	vertical-align: top;
}

.thpraha-fakta thead th {
	color: var(--muted);
	font-size: 13px;
	font-weight: 700;
	letter-spacing: .02em;
}

.thpraha-fakta tbody th {
	font-weight: 700;
	white-space: nowrap;
}

.thpraha-fakta tbody tr:last-child th,
.thpraha-fakta tbody tr:last-child td {
	border-bottom: 0;
}

/*
 * Karty místo tabulky až do 1199 px: 6 sloupců s německými/maďarskými slovy
 * má min. šířku ~880 px, v kartě bloku pod 1200 px se nevejde (768 a 900 px
 * dělaly vodorovný posuv stránky; druhý názor GPT 14. 10., šířky 768/900/1024).
 */
@media (max-width: 1199px) {
	.thpraha-fakta,
	.thpraha-fakta tbody,
	.thpraha-fakta tr,
	.thpraha-fakta th,
	.thpraha-fakta td {
		display: block;
	}

	.thpraha-fakta {
		border: 0;
		background: transparent;
	}

	.thpraha-fakta caption {
		display: block;
	}

	/* Záhlaví jen pro čtečky; na kartě popisek nese každá buňka. */
	.thpraha-fakta thead {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip-path: inset(50%);
	}

	.thpraha-fakta tbody tr {
		margin: 0 0 12px;
		border: 1px solid var(--line-org);
		border-radius: var(--r-card);
		background: var(--white);
	}

	.thpraha-fakta tbody th {
		padding: 12px 14px 6px;
		border: 0;
		white-space: normal;
	}

	.thpraha-fakta td {
		display: grid;
		grid-template-columns: minmax(0, 40%) minmax(0, 1fr);
		gap: 10px;
		padding: 6px 14px;
		border: 0;
	}

	.thpraha-fakta td:last-child {
		padding-bottom: 12px;
	}

	/* Popisek jen vizuálně: čtečka ho zná ze záhlaví sloupce (`/ ""` = prázdný alt; starší prohlížeč druhý řádek ignoruje). */
	.thpraha-fakta td::before {
		content: attr(data-label);
		content: attr(data-label) / "";
		color: var(--muted);
		font-size: 13px;
		font-weight: 700;
	}
}

/* Tablet a menší desktop: karty her vedle sebe (3, případně 2 v řadě), ne pod sebou. */
@media (min-width: 768px) and (max-width: 1199px) {
	.thpraha-fakta tbody {
		display: grid;
		grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
		gap: 12px;
	}

	.thpraha-fakta tbody tr {
		margin: 0;
	}
}

/*
 * Oranžový rámeček bloku (pole `ramecek` v adminu, majitel 14. 10. „blok je
 * hodně bílý“). Oranžová = barva tlačítek (`--org-cta`). Zaoblení příbuzné
 * bloku Praha Z-AGENCY (`.planb`, 22 px).
 *   blok  = celý blok v kartě s okrajem 3 px a světlým teplým podkladem;
 *   fotky = okraj 7 px kolem velké fotky, malá fotka oranžovým lemem
 *           místo bílého.
 */
.thpraha--ramecek-blok .thpraha-wrap {
	padding: 48px 56px;
	border: 3px solid var(--org-cta);
	border-radius: 24px;
	background: #fff7f0;
}

.thpraha--ramecek-fotky .thpraha-ph {
	border: 7px solid var(--org-cta);
	border-radius: 22px;
}

.thpraha--ramecek-fotky .thpraha-ph2 {
	border-width: 6px;
	border-radius: var(--r-panel);
}

@media (prefers-reduced-motion: reduce) {
	html.js .thpraha .thpraha-ph2,
	html.js .thpraha .thpraha-badge {
		opacity: 1;
		transform: none;
		transition: none;
	}

	.thpraha-img {
		transition: none;
	}
}

@media (max-width: 900px) {
	.thpraha-wrap {
		grid-template-columns: minmax(0, 1fr);
		gap: 36px;
	}

	.thpraha-img {
		height: 300px;
	}

	.thpraha-ph2 {
		right: 10px;
	}

	.thpraha--ramecek-blok .thpraha-wrap {
		padding: 28px 24px;
	}

	.thpraha-ph2 .thpraha-img {
		height: 130px;
	}

	.thpraha-photo.has-foto2 {
		padding-bottom: 44px;
	}
}

@media (max-width: 480px) {
	.thpraha-img {
		height: 240px;
	}

	.thpraha-ph2 .thpraha-img {
		height: 100px;
	}

	/* Karta si bere boční okraj sekce, aby text v ní nebyl užší než bez karty. */
	.thpraha--ramecek-blok .wrap {
		padding: 0 12px;
	}

	.thpraha--ramecek-blok .thpraha-wrap {
		padding: 20px 16px 24px;
		border-radius: 20px;
	}

	.thpraha-stats {
		display: grid;
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 14px 18px;
	}

	.thpraha-stat .stat-num {
		font-size: 32px;
	}
}

/* ------------------------------------------------------------------
 * Rozcestník: popisek pod pásem čísel a definice formátu
 * ------------------------------------------------------------------ */
.th-intl-staty-subjekt {
	margin-top: 14px;
	margin-bottom: 0;
	color: var(--muted);
	font-size: 14px;
	text-align: center;
}

.th-intl-definice {
	/* Navazuje na pás čísel a popisek: poloviční odstup sekce. */
	padding-top: calc(var(--pad) / 2);
	padding-bottom: 0;
}

.th-intl-definice .wrap {
	max-width: 860px;
}

.th-intl-definice h2 {
	margin: 0 0 14px;
}

.th-intl-definice p {
	margin: 0 0 12px;
	color: var(--muted);
	font-size: 17px;
}
