/* ===========================================================================
 * Extreme Pro - stránky: hlavička stránky (breadcrums.php), drobečková navigace,
 * obsah stránky (page.php, page-fullwidth.php, page-leftsb.php, page-rightsb.php)
 * Proměnné z nastavení: --pg-pad, --pg-pad-m, --pg-t, --pg-t-m, --pg-title, --pg-sub,
 * --pg-accent, --bc-size, --bc-text, --bc-link, --bc-active, --bc-sep, --bc-pill.
 * ======================================================================== */

/* ---------- Hlavička stránky ---------- */
.exp-ph { position: relative; overflow: hidden; padding: var(--pg-pad, 56px) 0; background-size: var(--pg-bgs, cover); background-position: var(--pg-bgp, center); }
@media (max-width: 991px) { .exp-ph { background-position: var(--pg-bgp-t, var(--pg-bgp, center)); } }
@media (max-width: 767px) { .exp-ph { background-position: var(--pg-bgp-m, var(--pg-bgp-t, var(--pg-bgp, center))); } }
.exp-ph *, .exp-ph *::before, .exp-ph *::after { box-sizing: border-box; }
.exp-ph--fixed { background-attachment: fixed; }
@media (max-width: 1024px), (hover: none) { .exp-ph--fixed { background-attachment: scroll; } }
.exp-ph-ov { position: absolute; inset: 0; pointer-events: none; }
.exp-ph-inner { position: relative; z-index: 1; }
.container.exp-ph-inner::before, .container.exp-ph-inner::after { content: none; display: none; }
.exp-ph-text { display: flex; flex-direction: column; gap: 12px; }
.exp-ph--center .exp-ph-text { align-items: center; text-align: center; }
.exp-ph--left .exp-ph-text { align-items: flex-start; text-align: left; }
.exp-ph-title { margin: 0; padding: 0; font-size: clamp(var(--pg-t-m, 28px), 4vw, var(--pg-t, 40px)); font-weight: 700; line-height: 1.15; color: var(--pg-title, var(--exp-heading, #1d2327)); background: none; border: 0; text-shadow: none; text-transform: none; }
.exp-ph--upper .exp-ph-title { text-transform: uppercase; letter-spacing: .03em; }
.exp-ph-sub { margin: 0; max-width: 760px; font-size: 18px; line-height: 1.6; color: var(--pg-sub, #5f6368); }
.exp-ph--dark .exp-ph-title { color: var(--pg-title, #fff); }
.exp-ph--dark .exp-ph-sub { color: var(--pg-sub, rgba(255, 255, 255, .85)); }
/* motivy */
.exp-ph--split .exp-ph-inner { display: flex; align-items: center; justify-content: space-between; gap: 16px 30px; flex-wrap: wrap; }
.exp-ph--split .exp-ph-text { align-items: flex-start; text-align: left; }
.exp-ph--image { padding: calc(var(--pg-pad, 56px) * 1.8) 0; min-height: var(--pg-min, 300px); display: flex; align-items: center; background-color: #333; }
/* Vlastní minimální výška (Stránky -> Vzhled hlavičky) pro všechny motivy - obsah svisle na střed. */
.exp-ph[style*="--pg-min:"] { min-height: var(--pg-min); display: flex; align-items: center; }
.exp-ph[style*="--pg-min:"] > .container, .exp-ph[style*="--pg-min-m:"] > .container { width: 100%; }
.exp-ph--image .exp-ph-inner { width: 100%; }
.exp-ph--gradient { padding: calc(var(--pg-pad, 56px) * 1.3) 0; }
.exp-ph--minimal { padding-bottom: calc(var(--pg-pad, 56px) * .6); }
.exp-ph--minimal .exp-ph-inner { border-bottom: 1px solid rgba(0, 0, 0, .08); padding-bottom: calc(var(--pg-pad, 56px) * .5); }
.exp-ph--minimal .exp-ph-title { font-size: clamp(var(--pg-t-m, 28px), 5vw, calc(var(--pg-t, 40px) * 1.2)); }
@media (max-width: 767px) {
	.exp-ph { padding: var(--pg-pad-m, 36px) 0; }
	.exp-ph--image { padding: calc(var(--pg-pad-m, 36px) * 1.8) 0; min-height: var(--pg-min-m, 220px); }
	.exp-ph[style*="--pg-min-m:"] { min-height: var(--pg-min-m); display: flex; align-items: center; }
	.exp-ph[style*="--pg-min:"]:not([style*="--pg-min-m:"]):not(.exp-ph--image) { min-height: 0; }
	.exp-ph--image[style*="--pg-min:"] { min-height: var(--pg-min-m, 220px); }
	.exp-ph .container { padding-left: 20px; padding-right: 20px; }
	.exp-ph--split .exp-ph-inner { flex-direction: column; align-items: flex-start; }
}

/* ---------- Drobečková navigace ---------- */
.exp-bc-nav { font-size: var(--bc-size, 14px); line-height: 1.5; color: var(--bc-text, #6b7076); }
.exp-bc-nav ol { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 0; margin: 0; padding: 0; list-style: none; }
.exp-bc-nav li { display: inline-flex; align-items: center; margin: 0; padding: 0; list-style: none; }
.exp-bc-nav a { display: inline-flex; align-items: center; gap: 6px; color: var(--bc-link, var(--pg-accent, var(--exp-primary,#5000A0))); text-decoration: none; transition: color .2s, opacity .2s; }
.exp-bc-nav a:hover { text-decoration: underline; text-underline-offset: 3px; }
.exp-bc-nav [aria-current] { color: var(--bc-active, #1d2327); font-weight: 600; }
.exp-bc-nav a span[itemprop] { display: inline-flex; align-items: center; gap: 6px; }
.exp-bc-nav li:first-child .exp-icon { font-size: 1.1em; }
.exp-bc-sep { display: inline-flex; align-items: center; margin: 0 9px; color: var(--bc-sep, #b0b4ba); font-size: .85em; }
.exp-bc-nav--pill { display: inline-flex; padding: 6px 16px; border-radius: 999px; background: var(--bc-pill, rgba(0, 0, 0, .05)); }
.exp-ph--dark .exp-bc-nav { color: var(--bc-text, rgba(255, 255, 255, .75)); }
.exp-ph--dark .exp-bc-nav a { color: var(--bc-link, #fff); }
.exp-ph--dark .exp-bc-nav [aria-current] { color: var(--bc-active, rgba(255, 255, 255, .85)); }
.exp-ph--dark .exp-bc-sep { color: var(--bc-sep, rgba(255, 255, 255, .5)); }
.exp-ph--dark .exp-bc-nav--pill { background: var(--bc-pill, rgba(255, 255, 255, .14)); -webkit-backdrop-filter: blur(6px); backdrop-filter: blur(6px); }
.screen-reader-text { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(1px, 1px, 1px, 1px); white-space: nowrap; }

/* ---------- Obsah stránky ---------- */
.exp-page { padding: var(--pg-ct, 50px) 0 var(--pg-cb, 80px); }
.exp-page *, .exp-page *::before, .exp-page *::after { box-sizing: border-box; }
.exp-page-wrap { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--sdb-space, 44px); }
.container.exp-page-wrap::before, .container.exp-page-wrap::after { content: none; display: none; }
.exp-page--w-narrow .exp-page-main { width: 100%; max-width: 860px; margin: 0 auto; }
.exp-page--side-left .exp-page-wrap { grid-template-columns: var(--sdb-w, 300px) minmax(0, 1fr); }
.exp-page--side-right .exp-page-wrap { grid-template-columns: minmax(0, 1fr) var(--sdb-w, 300px); }
@media (max-width: 991px) {
	.exp-page--side-left .exp-page-wrap,
	.exp-page--side-right .exp-page-wrap { grid-template-columns: minmax(0, 1fr); }
	.exp-page--side-left .exp-page-side { order: 2; }
}
.exp-page-main { min-width: 0; }
.exp-page--intro { padding-bottom: 0; }
.exp-page-thumb { margin: 0 0 30px; }
.exp-page-thumb img { display: block; width: 100%; height: auto; max-height: 560px; object-fit: cover; border-radius: 14px; }
.exp-page-content { font-size: 17px; line-height: 1.8; color: var(--pg-text, #2f3337); overflow-wrap: break-word; }
.exp-page-content > :first-child { margin-top: 0; }
.exp-page-content img { max-width: 100%; height: auto; }
.exp-page-content a { color: var(--pg-accent, var(--exp-primary,#5000A0)); }
.exp-page-side { min-width: 0; }
@media (max-width: 767px) {
	.exp-page { padding: var(--pg-ct-m, 34px) 0 var(--pg-cb-m, 60px); }
	.exp-page .container { padding-left: 20px; padding-right: 20px; }
	.exp-page-content { font-size: 16px; }
}

/* ---------- Stránka nenalezena (404) ---------- */
.exp-404 { max-width: 640px; margin: 0 auto; padding: 20px 0 30px; text-align: center; }
.exp-404-code { font-size: clamp(90px, 18vw, var(--e4-cs, 170px)); font-weight: 800; line-height: 1; letter-spacing: -.04em; background: linear-gradient(135deg, var(--e4-c1, var(--pg-accent, var(--exp-primary,#5000A0))), var(--e4-c2, #c9965b)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.exp-404-title { margin: 10px 0 12px; font-size: clamp(24px, 3vw, 32px); color: var(--e4-hc, #1d2327); }
.exp-404-text { margin: 0 auto 26px; color: var(--e4-tc, #5f6368); font-size: 17px; line-height: 1.7; }
.exp-404-search { max-width: 460px; margin: 0 auto 24px; }
.exp-404-btn { display: inline-flex; align-items: center; gap: 10px; padding: 13px 28px; border-radius: var(--e4-br, 999px); background: var(--e4-bbg, var(--pg-accent, var(--exp-primary,#5000A0))); color: var(--e4-bc, #fff) !important; font-weight: 600; text-decoration: none !important; transition: filter .2s, transform .2s; }
.exp-404-btn:hover { filter: brightness(1.1); transform: translateY(-2px); }
.exp-404[style*="--e4-bhbg"] .exp-404-btn:hover { background: var(--e4-bhbg); filter: none; }
.exp-404-img { margin: 0 auto 6px; }
.exp-404-img img { display: inline-block; max-width: 100%; height: auto; }
/* Vlastní barva textu stránky platí i pro nadpisy v obsahu */
.exp-page[style*="--pg-text"] .exp-page-content :is(h1, h2, h3, h4, h5, h6, p, li, td, th, blockquote) { color: var(--pg-text); }
