body {
	background-color: #ffffff;
}

body {
	background: url("/images/background/background-bezkarske-lyze-2560.jpg") no-repeat top center;
	background-size: cover;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: #000000;
}
.bold,
.sts-title {
	font-weight: 600;
}
#cnt__main-header,
#cnt__mainbottom-3 {
	background-color: #004289;
}
#cnt__mainbottom-3,
#cnt__mainbottom-3 h2 {
	color: #ffffff;
}
.btn.white {
	border-color: #ffffff;
	color: #ffffff;
}
.btn.white:hover,
.btn.white:focus,
.btn.white.active,
.btn.white.selected {
	outline: none;
	background-color: #ffffff;
	color: #004289;
	text-decoration: none;
	box-shadow: none;
}

/***MENU LOGO***/
ul.menu.logo {
	margin-bottom: 0;
	padding-left: 0;
}
/****/
.logo-svg-img span.image-title {
	font-size: 1.3em;
	line-height: 1.4;
}
.hidden {
	display: none !important;
}
.cnt__controls-inner-button input[type="checkbox"] {
	display: none;
}
#cnt__header .container .row {
	align-items: center;
}
/*** jazykovy-prepinac ***/
.jazykovy-prepinac .lang-inline.dropdown-menu li {
	border-radius: 3px;
	-ms-border-radius: 3px;
	-o-border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
}

.jazykovy-prepinac {
	position: relative;
	z-index: 5;
}

.jazykovy-prepinac a span {
	font-size: 16px;
}

.jazykovy-prepinac a span.arrow::before {
	content: "";
	background: url(/images/icons/arrow-down-white-bold.svg) no-repeat center;
	display: inline-flex;
	width: .8rem;
	height: .8rem;
	position: relative;
	margin-right: 1rem;
}

.jazykovy-prepinac ul.dropdown-menu>li>a {
	font-size: 16px;
	line-height: 24px;
}
.jazykovy-prepinac a.dropdown-toggle {
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.jazykovy-prepinac a.dropdown-toggle {
	color: #ffffff;
}
.jazykovy-prepinac ul.dropdown-menu>li>a {
	color: #ffffff;
}
.jazykovy-prepinac .dropdown-menu {
	position: absolute;
	top: 100%;
	right: 0;
	z-index: 1000;
	display: none;
	float: left;
	min-width: 160px;
	padding: 5px 0;
	margin: 20px 0 0;
	list-style: none;
	font-size: 18px;
	text-align: left;
	background-color: #f8f7f7;
	border: 1px solid transparent;
	-webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
	box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
	background-clip: padding-box;
}
.jazykovy-prepinac .btn-group {
	max-width: 100%;
	white-space: normal;
}
/***/
.services .page_header {
	margin-bottom: 3rem;
}
.mb-cnt-2 {
	margin-bottom: 3rem;
}
.mb-cnt-1 {
	margin-bottom: 3rem;
}
/*menu*/
.vlastni-menu ul li a,
.vlastni-menu ul li span.separator {
	color: #ffffff;
	position: relative;
	font-weight: 400;
}
.vlastni-menu ul li a:hover,
.vlastni-menu ul li span.separator:hover {
	color: #f8f7f7;
}
.vlastni-menu ul li.active ul li a::before,
.vlastni-menu ul li:hover ul li a::before {
	display: none;
}
.vlastni-menu ul li:last-child a::after,
.vlastni-menu ul li ul li a::after  {
	border: none;
}
/**end menu**/
#cnt__top {
	padding: .5rem 0;
}
#cnt__top a {
	font-size: .8em;
	color: #004289;
	padding: 0 .5rem;
}

div.mod-languages a {
	font-weight: 600;
}
#cnt__navigation {
	text-align: center;
}
#cnt__copyright {
	background-color: #f8f7f7;
	padding-top: 3rem;
	padding-bottom: 2rem;
}
#cnt__feature {
	padding-bottom: 3rem;
	padding-top: 3rem;
}
#cnt__feature,
#cnt__maintop .moduletable {
	margin-top: 0rem;
	margin-bottom: 1rem;
}
#cnt__feature .btn {
	margin-top: 3rem;
}
#cnt__mainbottom-1 {
	position: relative;
}
#cnt__mainbottom-1::before {
	content: "";
	display: block;
	position: absolute;
	top: 0%;
	bottom: 0%;
	left: 0;
	right: 0;
	background: #f8f7f7;
}
#cnt__mainbottom-1,
#cnt__mainbottom-3 {
	padding-top: 2rem;
	padding-bottom: 5rem;
}
#cnt__mainbottom-2 {
	padding-top: 3rem;
	padding-bottom: 0rem;
}
#cnt__footer {
	padding-top: 3rem;
	padding-bottom: 0rem;
}
#cnt__showcase .moduletable,
#cnt__car-search .moduletable {
	padding-top: 2rem;
	padding-bottom: 2rem;
}
#cnt__footer-wrapper {
	padding: 0;
}
.menu-item img,
.cnt-art {
	margin-bottom: 1rem;
}
.cnt-art {
	padding-bottom: 1rem;
	border-bottom: 1px solid #DDEEFB;
}
#cnt__footer-wrapper ul {
	padding-left: 0rem;
}
#cnt__footer .page_header {
	margin-bottom: 1rem;
}
#cnt__footer .container .row {
	padding-left: 2rem;
	padding-right: 2rem;
}
#cnt__footer p {
	margin-bottom: -10px;
}
.cnt-social p {
	font-size: .8em;
}
.kde-cvicime header,
.kde-cvicime h2 {
	margin-bottom: 0;
}
.table h4 {
	margin-bottom: 0;
}

/*** kontakt form ***/
.form .module_container {
	padding-left: 2rem;
	padding-right: 2rem;
}
.cnt__controls {
	flex-wrap: wrap;
	margin-bottom: 1rem;
}
.cnt__button.cnt__controls {
	justify-content: flex-end;
}
/****/

/**cnt-slider-block**/
.cnt-slider-block {
	display: grid;
	grid-template-columns: 30% 70%;
	margin-top: 3rem;
	margin-bottom: 3rem;
}
.cnt-slider-block-a {
	align-self: center;
	padding: 0rem 2rem 0rem 0rem;
}
/****/

/***kuba text ***/

.kuba-hover figure a::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgb(68 68 68 / 20%);
	transition: 0.2s all ease;
	-webkit-transition: 0.2s all ease;
	-moz-transition: 0.2s all ease;
	-ms-transition: 0.2s all ease;
	-o-transition: 0.2s all ease;
}
.kuba-hover figure a:hover::before {
	background: none;
}

.body__pronajem-salu .item_fulltext {
	margin-bottom: 0;
}
.body__pronajem-salu #cnt__mainbottom-2 {
	padding-top: 0;
}
/**menu footer 1 **/
.menu-footer-1 {
	align-items: center;
}
.menu-footer-1 ul li a {
	color: #000000;
	font-size: 1.2em;
	line-height: 1.6;
}

/***/
time.item_published {
	font-size: 13px;
	margin: 0 0 1rem 0;
	display: inline-flex;
}
/*** kontakty ***/
ul.kontakt {
	padding-left: 0;
}
li.icon-svg {
	position: relative;
	padding-left: 1.6rem;
}
li.icon-svg::before {
	content: "";
	width: 1rem;
	height: 1rem;
	position: absolute;
	left: 0;
	margin-right: 1rem;
	top: .4rem;
}
li.icon-svg.mail::before {
	background: url(/images/icons/email-blue-bold.svg) no-repeat center;
}
li.icon-svg.telefon::before {
	background: url(/images/icons/phone-blue-bold.svg) no-repeat center;
}
/***/
.item_fulltext {
	margin-bottom: 3rem;
}

figure {
	margin: 0;
	position: relative;
	transition: 0.3s all ease;
	-webkit-transition: 0.3s all ease;
	-moz-transition: 0.3s all ease;
	-ms-transition: 0.3s all ease;
	-o-transition: 0.3s all ease;
}
.mod-newsflash-adv_custom-link {
	display: flex;
	justify-content: center;
}
figcaption {
	position: absolute;
	top: 45%;
	width: 100%;
	text-align: center;
	padding: 0 1rem;
}
.box-align-center figcaption {
	top: 35%;
}
figcaption span {
	color: #ffffff;
	font-size: 2em;
	line-height: 1.4;
	font-weight: 600;
}
figcaption span.bck-blue {
	background-color: rgb(0 66 137 / 0.2);
	padding: 2rem;
	display: flex;
	width: max-content;
	justify-content: center;
	margin: 0 auto;
}
.box-btn {
	width: 100%;
	justify-content: center;
}
.btn {
	border: 1px solid #000;
	align-items: center;
	line-height: 20px;
	font-size: inherit;
	outline: none;
	padding: .8rem 1.4rem;
	color: #000;
	background-color: transparent;
	cursor: pointer;
	width: auto;
	justify-content: center;
	min-width: 200px;
	text-align: center;
	font-weight: 400;
	display: inline-block;
}
.btn.disabled,
.btn[disabled] {
	cursor: default;
}
.btn:hover,
.btn:focus,
.btn.active,
.btn.selected {
	outline: none;
	background-color: #000;
	color: #ffffff;
	text-decoration: none;
	box-shadow: none;
}
.articel {
	text-align: justify;
}
.cnt__modul_3 {
	margin-top: 2rem;
}
.category_desc {
	padding-left: 1rem;
	padding-right: 1rem;
}
article,
.module_container .cnt__form,
.category_desc .category_desc__cnt {
	background-color: #ffffff;
	border-radius: 0.25rem;
	-webkit-border-radius: 0.25rem;
	-moz-border-radius: 0.25rem;
	-ms-border-radius: 0.25rem;
	-o-border-radius: 0.25rem;
}
article,
.module_container .cnt__form,
.category_desc .category_desc__cnt {
	width: 100%;
}
.articel,
article,
.module_container .cnt__form,
.category_desc {
	overflow: hidden;
}
/*** DD set ***/
.item_info_dl dd {
	margin-left: 0;
}
/***/
.list,
.list li,
.list-none,
.list-none li {
	position: relative;
	padding-left: .5rem;
	width: 100%;
}
.list li::before {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid #004289;
	position: relative;
	margin-right: 10px;
}
.list1 {
	padding-left: 1rem;
}
.list1 li {
	position: relative;
	padding-left: 1.4rem;
}
.list1 li::before {
	content: "";
	background: url(/images/icons/icon-arrow-right.svg) no-repeat center;
	width: .8rem;
	height: .8rem;
	position: absolute;
	left: 0;
	margin-right: 1rem;
	top: .5rem;
}
.breadcrumb li {
	font-size: .8em;
}
#cnt__navigation .breadcrumb li:first-of-type {
	font-size: 0.8em;
	margin-right: 0;
}
.btn-link {
	border-bottom: 1px solid;
	padding: 5px 15px;
}
.icon::before,
.cnt__language ul.lang-inline::before {
	font-family: "";
	position: relative;
	padding: 0 .4em;
}
.icon.e-mail::before {
	content: "\46";
}
.cnt__language select {
	background-color: transparent;
	border: none;
	color: #fff;
}
.cnt__language ul.lang-inline::before {
	content: "\44";
	color: #004289;
	font-size: 1.2em;
}
.moduletable.cnt__language {
	text-align: right;
}
.mod-languages.cnt__language {
	padding-right: 1.8rem;
}
div.mod-languages li {
	position: relative;
}
div.mod-languages ul.lang-inline li::after {
	content: '';
	border-right: 1px solid #004289 ;
	position: absolute;
	right: 0;
	height: 20px;
	bottom: 5px;
}
div.mod-languages ul.lang-inline li:last-child::after,
.btn-slide a div div::after{
	display: none;
}
div.mod-languages ul.lang-inline li:last-child {
	padding-left: 0;
	margin-left: 0;
}
#cnt__top .icon.e-mail::before {
	font-size: 1.6em;
}
.pdf,
.pptx,
div.mod-languages ul,
#cnt__top a {
	display: inline-flex;
	display: -ms-inline-flexbox;
	align-items: center;
	text-decoration: none;
}
.btn-link:hover {
	text-decoration: none;
	background-color: #f8f8f8;
}

.cnt__top-menu ul {
	padding-left: 0;
	text-align: right;
}
.item_introtext {
	width: 100%;
}

/** nas tym **/
.page-category__nas-tym .page_header {
	padding-left: 3rem;
	padding-top: 2rem;
}
.page-category__nas-tym article {
	display: grid;
	grid-template-columns: 50% 50%;
}
.page-category__nas-tym article .img-intro__left,
.page-category__nas-tym article .img-intro__right {
	width: 100%;
	max-width: 100%;
	margin-left: 0;
	margin-right: 0;
}
.page-category__nas-tym article .item_introtext {
	align-self: center;
}
/***/

/** nase sluzby **/
.body__nase-sluzby #cnt__mainbottom-1::before {
	background: #ffffff;
}
.body__nase-sluzby #cnt__mainbottom-1 .page_header h2 {
	text-align: left;
}
/***/


/** table responzive **/

table {
	border-collapse: collapse;
	margin: 30px 0;
	padding: 0;
	width: 100%;
	table-layout: fixed;
}

table caption {
	margin: .5em 0 .75em;
}

table tr {
	background-color: #ffffff;
	padding: .35em;
	border-bottom: 1px solid #f8f7f7;
}
table th {
	  background-color: #f8f7f7;
	  color: #000;
}
table th,
table td {
	padding: .625em;
	position: relative;
}
table td span {
	position: absolute;
	right: 10px;
	font-weight: 600;
}
table th {
	font-weight: 400;
}

@media screen and (max-width: 600px) {
	table {
		border: 0;
	}

	table caption {
		font-size: 1.3em;
	}

	table thead {
		border: none;
		clip: rect(0 0 0 0);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		width: 1px;
	}

	table tr {
		border-bottom: 3px solid #ddd;
		display: block;
		margin-bottom: .625em;
	}

	table td {
		border-bottom: 1px solid #ddd;
		display: block;
		font-size: .8em;
		text-align: right;
	}

	table td::before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
		text-transform: uppercase;
	}

	table td:last-child {
		border-bottom: 0;
	}
}
  /****/

/* --------------------------------------------------------------------------
   Zástupný rámeček za zablokovaný vložený obsah (plg_system_gdpr).

   Plugin ho dává 120 px vysoký, ale nahrazuje YouTube video, jehož blok měří
   457 px (iframe 450 + mezera pod inline prvkem) na všech šířkách — roste jen
   šířka, výška ne. Rozdíl by vytáhl nahoru všechno pod videem a po odemknutí
   by obsah poskočil zpátky. Rámeček proto drží přesně místo videa.

   Volba placeholder_custom_height v nastavení komponenty na to nestačí —
   do JS se vůbec nepropisuje a výšku drží CSS pluginu.
   -------------------------------------------------------------------------- */
/* div.* aby pravidlo přebilo plugin, který má min-height:120px se stejnou
   specificitou a načítá se později. */
div.gdprlock-placeholder,
div.gdprcookielock-placeholder {
	align-items: center;
	justify-content: center;
	min-height: 457px;
}

/* --------------------------------------------------------------------------
   Přihlašovací formulář: co Joomla 6 přidala a šablona neumí vykreslit.

   Šablona načítá z Bootstrapu jen grid a utilities, ne komponenty. Joomla 6
   ale u pole pro heslo vykresluje .input-group a u přihlášení tlačítko pro
   přístupový klíč — obojí se opírá o pravidla, která tady nejsou:

     .input-group      není definována vůbec → zůstane display:block a tlačítko
                       pro zobrazení hesla spadne pod vstup místo na jeho konec
     .btn-secondary    není definována vůbec → obě tlačítka bez rámečku i barvy
     .icon-eye         je alias Joomly, který si šablona musí namapovat na
                       FontAwesome sama → ::before nemá content a ikona zmizí
     .w-100            v utilities JE, a s ní se tlačítko roztáhne přes celou
                       šířku; SVG uvnitř nemá width ani height, jen viewBox,
                       takže dorostlo na 1131 px a zabralo celou stránku

   Na produkci nic z toho není — Joomla 3 přístupové klíče ani přepínač hesla
   nevykresluje — takže to nemá s čím srovnávat a paritní sada se sem nedívá.
   -------------------------------------------------------------------------- */

/* Vstup a tlačítko na jedné řádce. stretch dá tlačítku výšku vstupu (56 px
   z template.css), takže se nemusí opisovat a nerozejde se s ním. */
.password-group .input-group {
	display: flex;
	align-items: stretch;
}

/* Vstup má z template.css width:100%; bez min-width:0 by se v pružném
   kontejneru odmítl zmenšit a tlačítko by vytlačil ven. */
.password-group .input-group > input {
	flex: 1 1 auto;
	min-width: 0;
}

/* Vzhled je převzatý z pravidla pro pole ve style.css — na tomhle webu nemají
   pole rámeček, jen spodní linku. Rámečkované tlačítko by na konci podtržené
   řádky vypadalo jako cizí prvek, takže tu linku prostě prodlužuje. */
.input-password-toggle {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	justify-content: center;
	min-width: 56px;
	padding: 0 16px;
	background: transparent;
	color: #808588;
	border: none;
	border-bottom: solid 2px #ccc;
	cursor: pointer;
	transition: border 0.3s, color 0.3s;
}

/* Stejné zvýraznění, jaké dostane pole při focusu. */
.input-password-toggle:hover,
.input-password-toggle:focus-visible {
	color: var(--primary-color);
	border-bottom-color: var(--primary-color);
}

/* Joomla přepíná mezi těmito dvěma třídami (media/system/js/fields/passwordview.js),
   takže musí být namapované obě — jinak ikona po prvním kliknutí zmizí. */
.input-password-toggle .icon-eye::before,
.input-password-toggle .icon-eye-slash::before {
	font-family: "Font Awesome 5 Pro";
	font-weight: 400;
	font-style: normal;
	line-height: 1;
}

.input-password-toggle .icon-eye::before {
	content: "\f06e";
}

.input-password-toggle .icon-eye-slash::before {
	content: "\f070";
}

/* Pevná šířka, aby oko a přeškrtnuté oko nebyly každé jinak široké a tlačítko
   se při přepnutí neškublo. */
.input-password-toggle .icon-fw {
	display: inline-block;
	width: 1.25em;
	text-align: center;
}

/* Selektor je záměrně přes dvě třídy. Plugin si veze vlastní button.min.css
   s `button[class*="plg_system_webauthn_login_button"]`, což je specifičtější
   než samotná třída a načítá se později — jednoduchý zápis by prohrál a
   tlačítko by zůstalo na jeho 0.4rem odsazení, o třetinu nižší než Přihlásit
   se hned pod ním. Odsazení je pak stejné jako .btn výše, aby ta dvě tlačítka
   pod sebou měla stejnou výšku.

   .w-100 nese !important, takže ho jinak než !important přebít nejde. */
button.btn.plg_system_webauthn_login_button {
	display: inline-flex !important;
	width: auto !important;
	align-items: center;
	gap: 10px;
	padding: 0.8rem 1.4rem;
	background: #fff;
	color: #808588;
	border: 1px solid #c5cbd5;
	cursor: pointer;
}

button.btn.plg_system_webauthn_login_button:hover,
button.btn.plg_system_webauthn_login_button:focus-visible {
	color: var(--primary-color);
	border-color: var(--primary-color);
}

/* Bez rozměrů se SVG s pouhým viewBox roztáhne na šířku rodiče. */
button.btn.plg_system_webauthn_login_button svg {
	flex: 0 0 auto;
	width: 1.25em;
	height: 1.25em;
	fill: currentColor;
}
