/* ==========================================================================
   Czech BCSD – doplňky pro stránky složené z nativních prvků Elementoru.
   Barvy, písma, odsazení a rozměry se nastavují přímo v Elementoru;
   zde jsou jen věci, které Elementor neumí (kurzíva uvnitř nadpisu,
   běžící pás log, rozbalování skupin, přesah panelu k okraji obrazovky…).
   ========================================================================== */

/* ---------- Kurzíva uvnitř nadpisu: Naši <em>členové</em> ---------- */
.bcsd-site .elementor-widget-heading .elementor-heading-title em,
.bcsd-site .elementor-widget-text-editor em {
	font-family: 'Taviraj', Georgia, 'Times New Roman', serif; font-style: italic; font-weight: 400; letter-spacing: 0;
}
.bcsd-site .elementor-widget-heading .elementor-heading-title em { color: var(--e-global-color-bcsdpurple, #a4a1d7); }
.bcsd-site .bcsd-em-green .elementor-heading-title em { color: var(--e-global-color-bcsdgreen, #0fa34a); }
.bcsd-site .bcsd-em-block .elementor-heading-title em { display: block; }
@media (max-width: 767px) {
	.bcsd-site .bcsd-em-block-m .elementor-heading-title em { display: block; }
}
.bcsd-site .elementor-widget-heading .elementor-heading-title { text-wrap: pretty; }
.bcsd-site .bcsd-tag-sm .elementor-heading-title { text-transform: uppercase; letter-spacing: .02em; }

/* ---------- Textový editor ---------- */
.bcsd-site .elementor-widget-text-editor p,
.bcsd-site .elementor-widget-text-editor ul,
.bcsd-site .elementor-widget-text-editor ol { margin: 0 0 1.2em; }
.bcsd-site .elementor-widget-text-editor > :last-child,
.bcsd-site .elementor-widget-text-editor .elementor-widget-container > :last-child,
.bcsd-site .elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.bcsd-site .elementor-widget-text-editor ul { padding-left: 1.2em; }
.bcsd-site .elementor-widget-text-editor li { margin-bottom: .38em; }
.bcsd-site .elementor-widget-text-editor a { color: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.bcsd-site .elementor-widget-text-editor a:hover { color: var(--e-global-color-bcsdgreen, #0fa34a); }
.bcsd-site .bcsd-center-list ul { display: inline-block; text-align: left; }
@media (max-width: 767px) {
	.bcsd-site .bcsd-wg-text br { display: none; }
}

/* ---------- Tlačítka ---------- */
.bcsd-site .elementor-widget-button .elementor-button { min-height: 50px; display: inline-flex; align-items: center; justify-content: center; transition: background-color .25s, color .25s; }

/* ---------- Zelený panel s přesahem k okraji obrazovky („Jak pracujeme“) ----------
   Barvu panelu měníte normálně v Elementoru (Styl → Pozadí sloupce); přesah ji převezme. */
.bcsd-site .e-con.bcsd-clip-x { overflow-x: clip; }
.bcsd-site .e-con.bcsd-bleed { position: relative; isolation: isolate; }
.bcsd-site .e-con.bcsd-bleed::after { content: ""; position: absolute; top: 0; bottom: 0; z-index: -1; background: inherit; border-radius: 0; pointer-events: none; width: auto; }
.bcsd-site .e-con.bcsd-bleed--left::after { left: -100vw; right: 50%; }
.bcsd-site .e-con.bcsd-bleed--right::after { left: 50%; right: -100vw; }
@media (max-width: 767px) {
	.bcsd-site .e-con.bcsd-bleed::after { left: -100vw; right: -100vw; }
}

/* ---------- Běžící pás log ---------- */
.bcsd-site .e-con.bcsd-marquee-wrap { overflow: hidden; -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); }
.bcsd-site .e-con.bcsd-marquee { flex-wrap: nowrap; width: max-content; max-width: none; --width: max-content; }
.bcsd-site .e-con.bcsd-marquee > .elementor-widget { flex: none; max-width: none; }
.bcsd-site .e-con.bcsd-marquee.is-running { animation: bcsd-marquee var(--dur, 60s) linear infinite; }
.bcsd-site .bcsd-marquee-wrap:hover .bcsd-marquee.is-running { animation-play-state: paused; }
@keyframes bcsd-marquee { to { transform: translateX(-50%); } }
/* v editoru se loga zobrazí v řádcích, aby šla pohodlně upravovat */
.elementor-editor-active .e-con.bcsd-marquee { flex-wrap: wrap; width: 100%; --width: 100%; justify-content: center; row-gap: 30px; }

/* ---------- Pracovní skupiny – řádky ---------- */
.bcsd-site a.e-con.bcsd-wg-row { position: relative; color: inherit; text-decoration: none; transition: background-color .25s; }
.bcsd-site a.e-con.bcsd-wg-row:is(:hover, :focus-visible) { background-color: var(--e-global-color-bcsdmint, #b8f9d2); }
.bcsd-site .bcsd-wg-row .bcsd-wg-label { display: none; white-space: nowrap; }
@media (min-width: 768px) {
	.bcsd-site .bcsd-wg-row:is(:hover, :focus-visible) .bcsd-wg-arrow { visibility: hidden; }
	.bcsd-site .bcsd-wg-row:is(:hover, :focus-visible) .bcsd-wg-label { display: block; position: absolute; right: 40px; top: 50%; transform: translateY(-50%); }
}
@media (max-width: 1024px) and (min-width: 768px) {
	.bcsd-site .bcsd-wg-row .bcsd-wg-label { display: none !important; }
	.bcsd-site .bcsd-wg-row .bcsd-wg-arrow { visibility: visible !important; }
}
@media (max-width: 767px) {
	.bcsd-site a.e-con.bcsd-wg-row { background-color: var(--e-global-color-bcsdmint, #b8f9d2); }
	.bcsd-site .bcsd-wg-row .bcsd-wg-arrow { display: none; }
	.bcsd-site .bcsd-wg-row .bcsd-wg-label { display: block; width: 100%; margin-top: 8px; }
}

/* ---------- Rozbalovací pracovní skupiny ---------- */
.bcsd-site .e-con.bcsd-acc-item { scroll-margin-top: 110px; transition: box-shadow .25s; }
.bcsd-site .e-con.bcsd-acc-item.is-open { box-shadow: 1px 1px 0 0 var(--e-global-color-bcsdpurple, #a4a1d7); }
.bcsd-site .e-con.bcsd-acc-head { cursor: pointer; position: relative; }
.bcsd-site .bcsd-acc-bgicon { pointer-events: none; }
.bcsd-site .bcsd-acc-toggle .elementor-icon { transition: transform .3s, background-color .25s, color .25s; }
.bcsd-site .bcsd-acc-head:is(:hover, :focus-visible) .bcsd-acc-toggle .elementor-icon { background-color: var(--e-global-color-bcsdgreen, #0fa34a); color: #fff; fill: #fff; }
.bcsd-site .bcsd-acc-head:is(:hover, :focus-visible) .bcsd-acc-toggle .elementor-icon svg { fill: #fff; }
.bcsd-site .bcsd-acc-item.is-open .bcsd-acc-toggle .elementor-icon { transform: rotate(45deg); }
.bcsd-acc-ready .bcsd-site .e-con.bcsd-acc-item:not(.is-open) > .bcsd-acc-panel,
html.bcsd-acc-ready .e-con.bcsd-acc-item:not(.is-open) > .e-con.bcsd-acc-panel { display: none; }

/* ---------- Lidé: jemná přechodová linka pod textem ---------- */
.bcsd-site .e-con.bcsd-gradline { position: relative; }
.bcsd-site .e-con.bcsd-gradline::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 2px; background: linear-gradient(90deg, var(--e-global-color-bcsdpurple, #a4a1d7), var(--e-global-color-bcsdmint, #b8f9d2)); pointer-events: none; }

/* ---------- Karty s obrysem ---------- */
.bcsd-site .e-con.bcsd-grow { flex-grow: 1; }
@media (min-width: 1025px) {
	.bcsd-site .bcsd-oc-title { min-height: 147px; }
	.bcsd-site .bcsd-oc-note { min-height: 104px; }
}

/* ---------- Závěrečná výzva: ruce se zeměkoulí vpravo, ukotvené ke spodku sekce ---------- */
.bcsd-site .e-con.bcsd-cta-sec { position: relative; }
.bcsd-site .e-con.bcsd-cta-sec > .e-con-inner { position: static; }
.bcsd-site .bcsd-cta-hands { pointer-events: none; line-height: 0; }
.bcsd-site .bcsd-cta-hands img { display: block; width: 100%; max-width: none; }
.bcsd-site .bcsd-cta-list ul { list-style: none; padding: 0; margin: 0; color: var(--e-global-color-bcsdnavy, #272454); }
.bcsd-site .bcsd-cta-list li { margin-bottom: .5em; }
@media (max-width: 767px) {
	.bcsd-site .bcsd-cta-hands.elementor-absolute { position: relative !important; left: auto !important; right: auto !important; top: auto !important; bottom: auto !important; max-width: none; }
}

/* ---------- Banner: obrázek může přesahovat okraj ---------- */
.bcsd-site .bcsd-banner-img { max-width: none; }
.bcsd-site .bcsd-banner-img img { max-width: none; display: block; }
@media (max-width: 1024px) and (min-width: 768px) {
	.bcsd-site .bcsd-banner-img img { max-width: 100%; }
}

@media (max-width: 767px) {
	.bcsd-site .bcsd-banner-img--center img { position: relative; left: 50%; transform: translateX(-50%); }
}

/* ---------- Nic nesmí stránku rozšířit do strany (vodorovný posuvník na mobilu) ---------- */
.bcsd-site .elementor > .e-con { overflow-x: clip; }

/* ---------- Karta karuselu (šablona) ---------- */
.bcsd-site .bcsd-stack__card > .elementor { width: 100%; }
.bcsd-site .bcsd-stack__card > .elementor > .e-con { width: 100%; max-width: 100%; margin: 0; --padding-top: 0px; --padding-bottom: 0px; --padding-left: 0px; --padding-right: 0px; --padding-block-start: 0px; --padding-block-end: 0px; --padding-inline-start: 0px; --padding-inline-end: 0px; padding: 0; }

/* ---------- Kontaktní formulář v nativní sekci ---------- */
.bcsd-site .bcsd-form--native { font-family: 'Figtree', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif; font-weight: 300; color: var(--e-global-color-bcsdnavy, #272454); }
.bcsd-site .bcsd-form--native, .bcsd-site .bcsd-form--native * { box-sizing: border-box; }
.bcsd-site .bcsd-form--native p { margin: 0; }
@media (max-width: 767px) {
	.bcsd-site .bcsd-form--native { padding: 30px 20px; }
	.bcsd-site .bcsd-form--native .bcsd-form__foot { flex-direction: column; align-items: stretch; }
}

/* ---------- Patička ---------- */
.bcsd-site .bcsd-footer-native .elementor-widget-text-editor p { margin-bottom: 0; }
.bcsd-site .bcsd-footer-native .elementor-social-icon { transition: background-color .2s; }
.bcsd-site .bcsd-footer-native .elementor-social-icon:hover { background-color: var(--e-global-color-bcsdnavy, #272454); }
.bcsd-site .bcsd-footer-native .elementor-social-icon:hover i,
.bcsd-site .bcsd-footer-native .elementor-social-icon:hover svg { color: #fff; fill: #fff; }

@media (prefers-reduced-motion: reduce) {
	.bcsd-site .e-con.bcsd-marquee.is-running { animation: none; }
}
