@charset "UTF-8";
/* ==========================================================================
*
* Basic CSS Stylesheet for Bootstrap
*
** ========================================================================== */
body {
  font-family: 'Inter', sans-serif;
}
.top-header-section {
  position: absolute;
  top: 0px;
  height: 44px;
  display: block;
  z-index: 10;
  width: 100%;
  padding: 0px;
  margin: 0px;
  background-color: #00b075;
  opacity: 0.7;
}
.top-header-section .top-logo img {
  width: 32px;
  margin: 6px 0px 0px 0px;
  background-color: #ffffffcc;
  border-radius:50%;
  padding:2px;
}

.top-header-section .curr-date {
  color: #ffffff;
  font-size: 1.2em;
  text-align: left;
  display: block;
  padding: 8px 0px 2px 16px;
  font-weight: normal;
}
.top-header-section .curr-date img {
  width: 32px;
  margin: -4px 0px 0px 0px;
}
.top-header-section .curr-phone-wrapp {
  display: block;
  margin: 0px 0px 0px auto;
  padding: 2px 8px 0px 0px;
  height: 44px;
  /*max-width: 222px;*/
}
.top-header-section .curr-phone {
  color: #ffffff;
  font-size: 1.2em;
  font-weight: normal;
  text-align: right;
  display: block;
  padding: 8px 0px 2px 16px;
  ;
}
.top-header-section .curr-phone img {
  width: 32px;
  /*display: inline-block;
	margin: auto 12px auto 0px;*/
}
/* Navigace nad sliderem */
.navbar {
  position: absolute;
  top: 45px;
  width: 100%;
  z-index: 1000;
  background: rgba(0, 0, 0, 0.3);
  backdrop-filter: blur(8px);
  /*padding: 1.5rem 0;*/
  padding: 0px;
}
nav#top-navigation {
  background: #ffffff;
  /*background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 45%, rgba(223, 26, 33, 1) 55%, rgba(223, 26, 33, 1) 100%);*/
  /*background: linear-gradient(90deg, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 25%, rgba(223, 26, 33, 1) 28%, rgba(223, 26, 33, 1) 100%);*/
  background: linear-gradient(90deg, #ffffff 0%, #ffffff 35%, #df1a21 38%, #df1a21 100%);
  height: 68px;
}
#navbarNav {
  padding: 0px 0px 0px 4px;
  background-color: #df1a21;
  height: 68px;
}
/*#navbarNav li.nav-item a.nav-link::after, #navbarNav li.nav-item a.nav-link.dropdown-toggle::after {
	content: "/";
	color: #00b075;
	padding: 0px 0px 0px 8px;
}*/

#navbarNav li.nav-item a.nav-link span {
  color: #00b075;
  padding: 0px 0px 0px 4px;
}

#navbarNav li.nav-item a.nav-link span::after {
  content: "/";
  color: #00b075;
  padding: 0px 0px 0px 4px;
}
#navbarNav a.nav-link {
  color: #ffffff;
  font-size: 1.0em;
  font-weight: bold;
  /*text-transform: uppercase*/ ;
}
#navbarNav li.nav-item a.nav-link.active::before {
	background-color:#ffffff;
	content: "";
	position: absolute;
	bottom: -18px;
	left: 0;
	width: 100%;
	height: 8px;
	opacity: 1;
	transition: opacity 0.3s ease;
	z-index: 1001;
}

#navbarNav li.nav-item a.nav-link.active {
	font-size: 1.2em;
}

#navbarNav ul.navbar-nav > li.nav-item:hover > a {
  color: #00b075;
  font-size: 1.2em;
  transition: all 0.4s ease;
}
#navbarNav ul.navbar-nav li .nav-item.dropdown ul.dropdown-menu li a.dropdown-item {
  font-size: 1.2em;
}
@media (min-width: 992px) {
.nav-item.dropdown:hover .dropdown-menu {
  display: block;
}
} /**/
/*---  TOP MENU PLUS SUBMENU ---*/
.dropdown-toggle::after {
  display: none !important;
}
.nav-item.dropdown {
  position: relative;
}
.nav-item.dropdown::before {
  content: "";
  position: absolute;
  bottom: -16px;
  left: 0;
  width: 100%;
  height: 6px;
  background-color: #00b075;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 1001;
}
/* Desktop: animované podmenu při najetí myší (jen od breakpointu lg, kdy je menu vodorovné) */
@media (min-width: 992px) {
.nav-item.dropdown:hover::before {
  opacity: 1;
}
.navbar-nav .nav-item.dropdown .dropdown-menu {
  display: block;
  visibility: hidden;
  opacity: 0;
  transform: translateY(10px);
  transition: all 0.3s ease-in-out;
  margin-top: 12px !important;
  border: none;
  border-radius: 0 !important;
  background-color: #00b075;
  /*box-shadow: 0 6px 15px rgba(0,0,0,0.1);*/
}
.navbar-nav .nav-item.dropdown:hover .dropdown-menu {
  visibility: visible;
  opacity: 1;
  transform: translateY(0);
}
}

/* Mobil: podmenu je zabalené, otevře se klikem (Bootstrap přidá .show) nebo najetím myší */
@media (max-width: 991.98px) {
.navbar-nav .nav-item.dropdown .dropdown-menu {
  display: none;
  margin: 0 !important;
  border: none;
  border-radius: 0 !important;
  background-color: #00b075;
}
.navbar-nav .nav-item.dropdown .dropdown-menu.show {
  display: block;
}
}
@media (max-width: 991.98px) and (hover: hover) {
.navbar-nav .nav-item.dropdown:hover .dropdown-menu {
  display: block;
}
}
.dropdown-item {
  padding: 6px 10px;
  /*color: #155724;*/
  color: #ffffff;
  transition: all 0.2s ease;
  font-size: 1.2em;
}
.dropdown-item:hover {
  background-color: #dc3545 !important;
  color: #ffffff !important;
}

#logo.site-logo img.logo-img {
	max-height: 64px;
}

#logo {
  width: 228px;
  display: block;
  padding: 0px 12px 0px 2px;
  background-color: #ffffff;
  max-height: 68px;
}
.navbar-brand {
  font-size: 1.5rem;
  letter-spacing: 1px;
}
.nav-link {
  color: #ffffff;
  font-weight: 500;
  margin-left: 20px;
  transition: color 0.3s;
}
.nav-link:hover {
  /*color: #28a745 !important;*/
  color: #00b075;
}
/* Slider sekce */
.carousel-item {
  height: 90vh;
  max-height: 498px;
  background: no-repeat center center scroll;
  background-size: cover;
  position: relative;
  /*min-height: 70vh;*/
  background-position: center;
  overflow: hidden
}
.carousel-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  /*background: rgba(0, 0, 0, 0.5);*/
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: white;
}
.carousel-control-prev-icon {
  background-image: url("slider_arrow.svg?r=");
}
.carousel-control-next-icon {
  background-image: url("slider_arrow.svg?r=");
  transform: rotate(180deg);
}

.carousel-indicators {
  margin-bottom: 3rem !important;
}
.hero-content h1 {
  /*font-size: 4rem;
	font-weight: 700;
	margin-bottom: 1.5rem;
	text-shadow: 2px 2px 10px rgba(0,0,0,0.5);*/
  display: block;
  background-color: #ecbb00;
  /*max-height: 64px;*/
  /*width: 520px;*/
  width: fit-content;
  /*max-width: 60%;*/
  color: #df1a21;
  padding: 6px 8px;
  margin: 0px 0px 0px 12px;
  border: 3px solid #00b075;
  border-radius: 32px;
  font-size: 2.2rem;
  font-weight: normal;
  /*text-transform: uppercase;*/
  text-align: left;
  opacity: 0.95;
}

.hero-content h1 a {
  background-image: url("i_slider_link.svg?");
  /*background-color: #f00;*/
  background-repeat: no-repeat;
  background-position: center;
  width: 46px;
  height: 46px;
  display: inline-block;
  border: 3px solid #df1a21;
  border-radius: 23px;
  /*fill: #0f0;*/
  transform: rotate(90deg);
  margin: 0px 2px 0px 8px;
  /*padding: 6px 2px 0px 12px;*/
  background-size: 26px;
  vertical-align: center;
  text-align: center;
  cursor: pointer;
}
.hero-content span.subtitle {
  display: block;
  color: #ffffff;
  background-color: #00b075;
  height: auto;
  /*max-height: 32px;*/
  width: fit-content;
  max-width: 94%;
  padding: 4px 14px;
  margin: 1px 0px 0px 46px;
  font-size: 1.4rem;
  font-weight: normal;
  /*text-transform: uppercase;*/
  text-align: left;
  opacity: 0.95;
  border-radius: 24px;
}
.hero-content p {
  font-size: 1.4rem;
  opacity: 0.9;
  max-width: 800px;
  margin: 0 auto;
}
/* Indicators style */
.carousel-indicators [data-bs-target] {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  margin: 0 5px;
  background-color: #fff;
}
.no-space {
  margin: 0 !important;
  padding: 0 !important;
}
/* Icon section */
.icon-section {
  padding: 0px;
  text-align: center;
  background-color: #e9e9e6;
}
/* Kontejner, který drží ikony v lajně se zbytkem webu */
.dynamic-icon-container {
  display: flex;
  flex-wrap: nowrap; /* Na desktopu je chceme v jedné lajně */
  gap: 12px;
  /*margin-bottom: 1.5rem;*/
  width: 100%; /* Klíčové pro roztažení */
}
/* POLOŽKA - ROZTAŽENÁ OD KRAJE KE KRAJI */
.icon-item {
  flex: 1 1 0; /* Každá ikona dostane přesně stejný díl koláče */
  transition: all 0.2s ease-in-out;
  /* border-radius: 0.75rem;*/
  /*background: #ffffff;*/
  cursor: pointer;
  /*border: 1px solid #dee2e6;*/
  min-height: 125px;
  padding: 15px 5px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-between;
  text-align: center;
  background-repeat: no-repeat;
  background-position: center;
  background-clip: unset;
  background-blend-mode: normal;
  background-size: auto;
}
/* Na mobilu (pod 768px)  */
@media (max-width: 767px) {
  .dynamic-icon-container {
    flex-wrap: wrap;
  }
  .icon-item {
    flex: 1 1 45%; /* Na mobilu 2 vedle sebe */
  }
}
.icon-item:hover {
  /*border-color: var(--primary-color);*/
  /*background-color: #f0f7ff;*/
}
.icon-item.active {
  /*background: var(--primary-color); */
  /*color: white;*/
  /*border-color: var(--primary-color);*/
  /*box-shadow: 0 4px 10px rgba(0, 123, 255, 0.3);*/
}
.icon-item .icon-wrapper img {
  display: block;
  width: 12vH;
  max-width: 12vH;
  border-radius: 12vH;
  border: 3px solid #ffffff;
}
.icon-title {
  font-size: 1.0rem;
  text-transform: uppercase;
  font-weight: 800;
  margin-bottom: 5px;
  height: 48px;
  max-height:48px;
}
.icon-wrapper i {
  font-size: 1.1rem;
  /*color: var(--primary-color);*/
}
.icon-item.active .icon-wrapper i {
  color: white;
}
/*.icon-item .icon-wrapper:hover, */ .icon-item .icon-wrapper img:hover {
  transform: scale(1.11);
  transition: all 0.2s ease-in-out;
  box-shadow: 0px 0px 10px #ffffff;
  border: 4px solid #fff;
  /*border-radius:0;*/
	
}
.icon-desc {
  font-size: 1.0rem;
  /*opacity: 1.0;*/
  margin-top: 5px;
  height: 36px;
  max-height:36px;
}
/* Detailní panel přesně pod ikonami */
.collapse-wrapper {
  /*border-radius: 1rem;*/
  overflow: hidden;
  /*box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);*/
  border: none;
  /*margin-bottom: 3rem;*/
}
.detail-card {
  /*background: white;*/
  padding: 2rem;
  /*border-top: 5px solid var(--primary-color);*/
}
.stat-badge {
  /*background: var(--bg-light);*/
  padding: 4px;
  /*border-radius: 0.5rem;*/
  /*flex: 1;*/
  /*min-width: 120px;*/
  /*border: 1px solid #eee;*/
}
.stat-badge::before {
  content: "/";
  color: #df1a21;
  /*padding: 0px 8px 0px 0px;*/
}
/* Announcement Section */
.announcement-section {
  /*background-color: #ffffff;*/
  /*background: linear-gradient(180deg, #fff 0%, #fff 12%, #a4a4a5 88%, #a4a4a5 100%);*/
  padding: 0px;
  text-align: center;
  /*height:52px;*/
  margin: -26px 0px 0px 0px;
  position: relative;
  z-index: 200;
}
.announcement-section .card {
  border: none;
  border-radius: 0px;
  background: none;
  padding: 4px 0px 0px 12px;
}
.announcement-section h2 {
  font-size: 1.2em;
  text-align: left;
  /*text-transform: uppercase;*/
  color: #df1a21;
  display: block;
}
.announcement-section h2 .hi {
  /*color: #fbb03b;*/
  /*color: #ecbb00;*/
  color: #df1a21;
  padding: 0px 0px 0px 2px;
  /*display: inline-block;*/
}
.announcement-section .home-icon {
  color: #444;
  width: 30px;
  height: 30px;
  margin: 0px 4px 0px 6px;
  /*background-image: url("i_home.svg");*/
  display: inline-block;
}
.announcement-section .home-icon img {
  margin-bottom: 8px;
}
.announcement-section .card .info {
  color: #00b075;
  /*font-size:1.2em;
	font-weight: bold;
	text-align: left;*/
  display: inline-block;
  margin: 4px 0px 0px 8px;
  text-transform: none;
}
.announcement-section .card .info a {
  color: #00b075;
  /*font-size:1.2em;
	text-transform: uppercase;
	text-align: left;
	font-weight: bold;*/
}
.announcement-section .card.link {
  display: inline-block;
}
.announcement-section .card.link a {
  font-size: 1.2em;
  font-weight: bold;
  text-align: center;
  text-transform: uppercase;
  /*background-color: #df1a21;*/
  color: #00b075;
  display: block;
  vertical-align: middle;
  padding: 2px 8px 2px 8px;
  text-decoration: none;
  border-radius: 24px;
  border: 2px solid #df1a21;
}
/* Titles section  */
.title-section {
  /*background-color: #ffffff;*/
  padding: 8px 0px 8px 0px;
  /*border-bottom: 1px solid #eee;*/
}
.title-section .display-title {
  margin-bottom: 0;
  font-size: 2.5rem;
  color: #333;
}
/* --- STYL 1: Podtržení s akcentem (Střed) --- */
.title-section .title-underline {
  position: relative;
  padding-bottom: 15px;
  font-weight: 800;
  /*text-transform: uppercase;*/
}
.title-section .title-underline::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 4px;
  background-color: #df1a22;
  border-radius: 2px;
}
/* --- STYL 2: Vertikální linka (Vlevo) --- */
.title-section .title-accent-left {
  /*border-left: 6px solid #df1a22;*/
  border-left: 6px solid #00b075;
  padding-left: 20px;
  font-weight: 700;
}
/* --- STYL 3: Barevný přechod (Gradient) --- */
.title-section .title-gradient {
  font-weight: 900;
  background: linear-gradient(45deg, #007bff, #00d4ff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}
/* --- STYL 4: Závorky (Industriální vzhled) --- */
.title-section .title-bracket {
  display: inline-block;
  position: relative;
  padding: 0 25px;
  font-weight: 700;
}
.title-section .title-bracket::before, .title-bracket::after {
  content: "";
  position: absolute;
  top: 10%;
  height: 80%;
  width: 4px;
}
.title-section .title-bracket::before {
  left: 0;
  border-left: 3px solid #00b075;
}
.title-section .title-bracket::after {
  right: 0;
  border-right: 3px solid #00b075;
}
/* --- STYL 5: Stín (Hloubka) --- */
.title-section .title-shadow {
  font-weight: 800;
  color: #2c3e50;
  text-shadow: 4px 4px 0px rgba(0, 123, 255, 0.1);
}
/* --- STYL 6: Minimalistický s tečkou --- */
.title-section .title-dot {
  font-weight: 700;
}
.title-section .title-dot::after {
  content: ".";
  color: #00b075;
}
.title-section .title-label {
  font-size: 0.8rem;
  color: #aaa;
  text-transform: uppercase;
  margin-bottom: 10px;
  display: block;
}
/* news section */
.news-section {
	/*background-color: #ffffff;*/
	padding: 8px 0px 8px 0px;
}
.news-section .img-zoom-container {
	position: relative;
	cursor: pointer;
	overflow: hidden;
	border-radius: 4px;
	background: #000; /* Pozadí pod lupu */
}
.news-section .news-img {
	width: 100%;
	height: auto;
	display: block;
	transition: all 0.4s ease;
	object-fit: cover;
}
.news-section .img-zoom-container:hover .news-img {
	transform: scale(1.05);
	opacity: 0.8;
}
.news-section .img-zoom-container::after {
	content: "\f473"; /* Bootstrap icon 'zoom-in' */
	font-family: "bootstrap-icons";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 2.5rem;
	color: white;
	opacity: 0;
	transition: opacity 0.3s ease;
	text-shadow: 0 0 15px rgba(0,0,0,0.5);
}
.news-section .img-zoom-container:hover::after {
	opacity: 1;
}
.news-section .news-meta {
	font-size: 0.75rem;
	text-transform: uppercase;
	letter-spacing: 1.5px;
	/*color: var(--accent-color);*/
	color:#00b095;
	font-weight: 800;
	margin-bottom: 0.8rem;
	display: block;
}
.news-section .pic-news-info {
	/*color: var(--text-dark);*/
	color:#00b075;
	font-weight: 800;
	font-size: 1.15rem;
	line-height: 1.25;
	margin:10px 0px 1rem 0px;
	transition: color 0.2s ease;
	text-transform: none; 
}
.news-section .pic-news-info:hover {
	/*color: var(--accent-color);*/
	color:#00b095;
	cursor: pointer;
}
.news-section .news-title {
	/*color: var(--text-dark);*/
	color:#111111;
	font-weight: 800;
	line-height: 1.25;
	margin-bottom: 1rem;
	transition: color 0.2s ease;
	text-transform: none; 
}
.news-section .news-title:hover {
	/*color: var(--accent-color);*/
	color:#111133;
	cursor: pointer;
}
.news-section .border-divider-right {
	/*border-right: 1px solid var(--border-color);*/
	border-right: 1px solid #cccccc;
	padding-right: 40px;
}
.news-section .col-border {
	padding: 0 30px;
}
@media (min-width: 768px) {
	.news-section .col-border:not(:last-child) {
		/*border-right: 1px solid var(--border-color);*/
		border-right: 1px solid #cccccc;
	}
}
/* Mobilní fixy */
@media (max-width: 767px) {
	.news-section .border-divider-right, .col-border {
		border-right: none !important;
		/*border-bottom: 1px solid var(--border-color);*/
		border-bottom: 1px solid #cccccc;
		padding: 0 0 30px 0;
		margin-bottom: 30px;
	}
	.news-section .col-border:last-child {
		border-bottom: none;
		margin-bottom: 0;
	}
}
.news-section .read-more {
	font-size: 0.85rem;
	font-weight: 700;
	/*color: var(--text-dark);*/
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-top: 10px;
}
.news-section .read-more:hover {
	/*color: var(--accent-color);*/
}
.news-section .title-shadow {
	font-weight: 800;
	color: #2c3e50;
	text-shadow: 4px 4px 0px rgba(0, 123, 255, 0.1);
}
.news-section .link-section {
  background-color: #ffffff;
  padding: 8px 0px 8px 0px;
}
.news-section .link-section .css-link {
  text-align: right;
}
.news-section .link-section .css-link a.custom-link {
  background-color: #E06D51;
  color: #FFFFFF;
  padding: 12px 12px 12px 12px;
  border-bottom-right-radius: 18px;
  border-bottom-left-radius: 18px;
  text-decoration: none;
  font-size: 1.2em;
  font-weight: bold;
}
.news-section .link-section .css-link a.custom-link:hover {
  color: #111111;
}


/* news section cfg */
.news-section-cfg {
	padding: 8px 0px 8px 0px;
	/*background-color: #ffffff;*/
}

.news-section-cfg .section-title {
	font-weight: 800;
	margin-bottom: 1rem;
	position: relative;
	padding-bottom: 8px;
}

.news-section-cfg .section-title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 50px;
	height: 3px;
	background-color: #00B095;
}

.news-section-cfg .news-card {
	/*background: #fff;*/
	border: 1px solid #cccccc;
	border-radius: 8px;
	overflow: hidden;
	height: 100%;
	transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.news-section-cfg .news-card:hover {
	transform: translateY(-5px);
	box-shadow: 0 10px 20px rgba(0,0,0,0.05);
}

.news-section-cfg .img-container .news-img {
	width: 100%;
	height: 220px;
	object-fit: cover;
}

.news-section-cfg  .img-container:hover .news-img {
	transform: scale(1.05);
	opacity: 0.8;
}

.news-section-cfg .img-container::after {
	content: "\f473";
	font-family: "bootstrap-icons";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 2rem;
	color: white;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.news-section-cfg .img-container:hover::after { opacity: 1; }

.news-section-cfg .news-body {
	padding: 0px 25px;
}

.news-section-cfg .news-tag {
	font-size: 0.8rem;
	font-weight: 700;
	text-transform: uppercase;
	color: #00B095;
	margin-bottom: 10px;
	display: inline-block;
}

.news-section-cfg .news-title {
	font-weight: 700;
	font-size: 1.25rem;
	margin-bottom: 12px;
	padding-top: 25px;
}

.news-section-cfg .news-text {
	color: #6c757d;
	font-size: 0.95rem;
	line-height: 1.6;
}

.news-section-cfg .news-info a:hover {
	background-color: #cccccc;
}

/* Partner section  */

.partners-section {
	/*padding: 80px 0;*/
	/*background-color: #ffffff;*/
	overflow: hidden;
}

.partners-section .container {
	/*padding:0;*/
}

.partners-section .partner-hover-name {
	font-size: 0.75rem;
	font-weight: 800;
	color: #000001;
	margin-top: 8px;
	text-transform: uppercase;
	letter-spacing: 1px;
	text-align: center;
	opacity: 0;
	transform: translateY(5px);
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
	white-space: nowrap;
}

.partners-section .marquee-wrapper {
	display: flex;
	width: 100%;
	position: relative;
	mask-image: linear-gradient(to right, transparent, #000 15%, #000 85%, transparent);
	-webkit-mask-image: linear-gradient(to right, transparent, #000 15%, #000 85%, transparent);
}

.partners-section .marquee-track {
	display: flex;
	width: max-content;
	animation: scrollMarquee 30s linear infinite;
	gap: 50px;
	padding: 20px 0;
}

.partners-section .marquee-wrapper:hover .marquee-track {
	animation-play-state: paused;
}

.partners-section .marquee-item {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 90px; 
	width: 140px;  
	text-decoration: none;
	transition: transform 0.3s ease;
}

.partners-section .marquee-item img {
	max-height: 40px;
	max-width: 100%;
	object-fit: contain;
	filter: grayscale(100%) opacity(0.4);
	transition: all 0.3s ease;
}

.partners-section .marquee-item:hover img {
	filter: grayscale(0%) opacity(1);
	transform: scale(1.05);
}

.partners-section .marquee-item:hover .partner-hover-name {
	opacity: 1;
	transform: translateY(0);
}

@keyframes scrollMarquee {
	0% { transform: translateX(0); }
	100% { transform: translateX(-50%); }
}

.partners-section .partner-badge-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	/*height: 110px; */
	/*padding: 15px;*/
	padding: 2px;
	background: #f8f9fa;
	border: 1px solid #000003;
	border-radius: 8px;
	text-decoration: none;
	transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1);
}

.partners-section .partner-badge-link img {
	/*max-height: 35px;*/
	max-height: 5vH;
	max-width: 100%;
	object-fit: contain;
	filter: grayscale(100%) opacity(0.5);
	transition: all 0.3s ease;
	transform: translateY(8px); 
}

.partners-section .partner-badge-link:hover {
	background: #ffffff;
	border-color: #000002;
	box-shadow: 0 10px 25px rgba(0,0,0,0.06);
	transform: translateY(-4px);
}

.partners-section .partner-badge-link:hover img {
	filter: grayscale(0%) opacity(1);
	transform: translateY(0px); 
}

.partners-section .partner-badge-link:hover .partner-hover-name {
	opacity: 1;
	transform: translateY(0);
}

/* Photo Media section  */

.photo-section {
	/*background-color: #ffffff;*/
	padding: 8px 0px 8px 0px;
}

/* --- SPOLEČNÝ STYL PRO OBRÁZEK --- */
.photo-section  .media-item {
	flex: 1 1 0; /* Zajišťuje automatické roztažení (2 nebo 3 v řadě) */
	min-width: 250px;
}

.photo-section  .media-container {
	position: relative;
	cursor: pointer;
	overflow: hidden;
	background: #000;
	border-radius: 4px;
}

.photo-section  .media-img {
	width: 100%;
	/* Fixní poměr stran pro různé výšky fotek z administrace */
	aspect-ratio: 16 / 10; 
	object-fit: cover;
	display: block;
	transition: all 0.4s ease;
}

.photo-section  .media-container:hover .media-img {
	transform: scale(1.05);
	opacity: 0.8;
}

.photo-section .media-container::after {
	content: "\f473";
	font-family: "bootstrap-icons";
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	font-size: 2rem;
	color: white;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.photo-section .media-container:hover::after { opacity: 1; }

/* Texty u fotek */
.photo-section .media-title { font-weight: 700; font-size: 1.1rem; margin-top: 15px; margin-bottom: 5px; }
.photo-section span.media-desc { font-size: 0.85rem; color: #6c757d; }

/* --- VARIANTA 1: Linky uprostřed --- */
.photo-section .grid-lined {
	display: flex;
	flex-wrap: wrap;
	gap: 0; /* Žádná mezera, řešíme paddingem a linkou */
}

.photo-section .line-col {
	padding: 0 8px 0px 8px;
}

@media (min-width: 768px) {
	.photo-section .grid-lined .line-col:not(:last-child) {
		/*border-right: 1px solid var(--border-color);*/
		border-right: 1px solid #cccccc;
	}
}

.photo-section .grid-gap {
	display: flex;
	flex-wrap: wrap;
	gap: 4px; /* Fixní mezera 4px */
}

/* Responzivita pro obě varianty */
@media (max-width: 767px) {
	/*.photo-section .line-col { border-right: none !important; border-bottom: 1px solid var(--border-color); padding: 20px 0; }*/
	.photo-section .grid-gap .line-col { border-right: none !important; border-bottom: 1px solid #cccccc; padding: 20px 0; }
	.photo-section .grid-gap .line-col:last-child { border-bottom: none; }
}

/* Youtube Media section  */
.youtube-section {
	/*background-color: #ffffff;*/
	padding: 8px 0px 8px 0px;
}

.youtube-wrapper {
	max-width: 900px;
	margin: 0 auto;
	box-shadow: 0 15px 35px rgba(0,0,0,0.1);
	border-radius: 8px;
	overflow: hidden;
	background-color: #000;
}

video {
	display: block;
	width: 100%;
	height: auto;
}
/* Download Section */
:root {
	/* Barvy pro typy souborů */
	--color-pdf: #dc3545;
	--color-xls: #198754;
	--color-doc: #0d6efd;
	--color-jpg: #6c757d;
}

.download-section {
	/*background-color: #ffffff;*/
	padding: 8px 0px 8px 0px;
}

.download-section .download-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.download-section .download-item {
	flex: 1 1 calc(33.333% - 20px); /* 3 sloupce na desktopu */
	min-width: 280px;
	background: #fff;
	padding: 12px 20px;
	border-radius: 0px;
	border: 1px solid #cccccc;
	display: flex;
	align-items: center;
	transition: all 0.3s ease;
	text-decoration: none; /* Aby celý box byl odkaz */
	color: inherit;
}

.download-section .download-item:hover {
	border-color: var(--accent-color);
	box-shadow: 0 10px 20px rgba(0,0,0,0.05);
	transform: translateY(-3px);
}

.download-section .file-icon-wrapper {
	width: 50px;
	height: 50px;
	border-radius: 8px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.5rem;
	color: #fff;
	margin-right: 20px;
	flex-shrink: 0;
}


.download-section .file-pdf { background-color: var(--color-pdf); }
.download-section .file-xls { background-color: var(--color-xls); }
.download-section .file-doc { background-color: var(--color-doc); }
.download-section .file-jpg { background-color: var(--color-jpg); }


.download-section .file-info {
	flex-grow: 1;
}

.download-section .file-name {
	font-weight: 700;
	margin: 0;
	font-size: 1rem;
	line-height: 1.2;
	text-transform: none; /* Zachování malých/velkých písmen */
}

.download-section .file-meta {
	font-size: 0.8rem;
	color: #6c757d;
	margin-top: 4px;
	display: block;
}

.download-section .download-arrow {
	font-size: 1.2rem;
	color: #ced4da;
	transition: color 0.2s;
}

.download-section .download-item:hover .download-arrow {
	color: var(--accent-color);
}

/* Responzivita */
@media (max-width: 767px) {
	.download-section .download-item {
		flex: 1 1 100%; /* Na mobilu pod sebou */
	}
}
/* Content Section */
.content-section {
	/*background-color: #ffffff;*/
	padding: 8px 0px 8px 0px;
}

.content-section h3 {
	font-weight: 800;
	margin-top: 2rem;
	margin-bottom: 1.2rem;
	position: relative;
}

.content-section span {
	/*margin-bottom: 1.5rem;
	font-size: 1.1rem;*/
}
.content-section span.content-addition {
	margin:6px 0px 6px 0px;
	font-size: 1.0rem;
}

.custom-table-container {
	margin: 0px;
	border-radius: 4px;
	/* overflow: hidden; -- Volitelné, pokud chcete kulaté rohy i u tabulky */
}

.table-custom {
	width: 100%;
	border-collapse: collapse;
	vertical-align: middle;
}

.table-custom thead th {
	background-color: #f8f9fa;
	border-bottom: 2px solid #00b095;
	padding: 10px 15px;
	font-weight: 800;
	/*text-transform: uppercase*/;
	/*font-size: 0.85rem;*/
	letter-spacing: 1px;
	color: #555;
}


.table-custom td {
	padding: 8px 10px;
	border-bottom: 1px solid #cccccc;
	vertical-align: top;
}

.table-custom tbody tr:nth-child(even) {
	background-color: #fafafa;
}


.table-custom tbody tr:hover {
	background-color: rgba(0, 123, 255, 0.03);
	transition: background-color 0.2s ease;
}

/* První sloupec zvýrazněný */
.table-custom td:first-child {
	font-weight: 700;
	color: #00b095;
}

/* Responzivita pro malé displeje - tabulka bude mít scrollbar */
.table-responsive-custom {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

/* Speciální blok pro důležité info (Highlight) */
.content-highlight {
	border-left: 4px solid #00b095;
	padding: 20px 30px;
	background-color: #eeeeee;
	margin: 2rem 0;
	font-style: italic;
}
/* Map Setion */
.map-section {
	/*background-color: #ffffff;*/
	padding: 8px 0px 8px 0px;
}

.map-section .map-wrapper {
	border-radius: 12px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0,0,0,0.08);
	border: 1px solid #dee2e6;
	background: #eee;
}

.map-section .map-image-link {
	position: relative;
	display: block;
	cursor: pointer;
	text-decoration: none;
}

.map-section .map-image-link img {
	width: 100%;
	height: 450px;
	object-fit: cover;
	transition: transform 0.5s ease;
}

.map-section .map-overlay {
	position: absolute;
	top: 0; left: 0; width: 100%; height: 100%;
	background: rgba(0, 123, 255, 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	transition: all 0.3s ease;
}

.map-section .map-image-link:hover .map-overlay {
	opacity: 1;
	background: rgba(0, 123, 255, 0.3);
}

.map-section .map-image-link:hover img {
	transform: scale(1.02);
}

.map-section .btn-map {
	background: white;
	color: #222222;
	padding: 12px 25px;
	border-radius: 50px;
	font-weight: 700;
	box-shadow: 0 5px 15px rgba(0,0,0,0.2);
}

/* Detail Media section  */
.detail-section {
  padding: 8px 0px 8px 0px;
}
.detail-section h2.display-title {
  font-size: 2.4em;
  text-align: left;
  text-transform: uppercase;
  color: #00b075;
}
.detail-section h3.display-subtitle {
  font-size: 1.8em;
  text-align: left;
  text-transform: uppercase;
  color: #fbb03b;
}
.detail-section h2.display-title .hi {
  color: #fbb03b;
}
/* Page Titles section  */
.page-title-section {
  padding: 16px 0px 8px 0px;
  margin: 0px 0px 0px 0px;
  background-color: #cccccc;
}
.page-title-section h2.display-title {
  font-size: 2.4em;
  text-align: left;
  text-transform: uppercase;
  color: #00b075;
}
.page-title-section h2.display-title .hi {
  color: #ffffff;
}
/* Services Section  */
.services-section {
  background-color: #ebebeb;
  padding: 8px 0px 8px 0px;
}
.service-card {
  border: none;
  border-radius: 0px;
  /*padding: 3rem 1.5rem;*/
  height: 100%;
  /*transition: all 0.4s ease;*/
  /*box-shadow: 0 10px 40px rgba(0,0,0,0.04);*/
}
.service-card:hover /*.service-card.pic-bg*/ {
  /*transform: translateY(-15px);*/
  /*box-shadow: 0 20px 50px rgba(220, 53, 69, 0.6);*/
  /*box-shadow: 0 10px 20px rgba(100, 100, 100, 0.6);*/
}
.service-card:hover .pic-bg {
  transform: rotate(4deg);
}
.service-card h3 {
  color: #5b726c;
  font-size: 1.4em;
  line-height: 1.3em;
  text-transform: uppercase;
  font-weight: bold;
  display: block;
  height: 5.6em;
  padding: 3px 26px 3px 26px;
}
.service-card h3 div.decor {
  display: block;
  width: 100%;
  text-align: center;
}
.service-card h3 div.decor strong.hi-left {
  color: #fbb03b;
}
.service-card h3 div.decor strong.hi-right {
  color: #00b075;
}
.service-card .pic-bg {
  width: 270px;
  height: 176px;
  padding: 0px;
  margin: 0px auto;
  background-color: #fbb03b;
  border-radius: 88px 88px 88px 88px;
  transform: rotate(-4deg);
}
.service-card .pic {
  position: relative;
  /*top: -172px;*/
  /*left: 0px;*/
  z-index: 20;
  width: 262px;
  height: 168px;
  padding: 0px;
  margin: -172px 0px 0px 10px;
  background-color: #ffffff;
  border-radius: 88px 88px 88px 88px;
}
.service-icon {
  color: #dc3545;
  margin-bottom: 1.5rem;
}
/* Circle Menu Section  */
.circle-menu-section {
  background-color: #ffffff;
  padding: 8px 0px 8px 0px;
}
.circle-menu-section .container {
  max-width: 100%;
}
.circle-menu-card {
  border: none;
  border-radius: 0px;
  /*padding: 3rem 1.5rem;*/
  height: auto;
  margin: 18px 0px 6px 0px;
  /*transition: all 0.4s ease;*/
  /*box-shadow: 0 10px 40px rgba(0,0,0,0.04);*/
}
.circle-menu-card:hover {
  /*transform: translateY(-15px);*/
  /*box-shadow: 0 20px 50px rgba(220, 53, 69, 0.1);*/
}
.circle-menu-card .card-title {
  height: 5.2vH;
  max-height: 5.2vH;
  display: block;
  margin: 0px 0px 16px 0px;
}
.circle-menu-card .card-title .decor small {
  font-size: 0.6em;
  color: #aaaaaa;
  font-weight: normal;
  text-align: right;
  /*margin: 0px 0px 0px 228px;*/
}
.circle-menu-card h2 {
  /*color: #5b726c;*/
  color: #00b075;
  /*font-size: 1.8em;*/
  /*font-size: 2.6vH;*/
  font-size: 2.6vH;
  /*line-height: 1.1em;*/
  text-transform: uppercase;
  text-align: center;
  font-weight: normal;
  display: block;
  /*height: 5.6em;*/
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 12px 0px;
}
.circle-menu-card h3 {
  color: #ffffff;
  background-color: #f7931e;
  font-size: 1.4em;
  /*line-height: 1.2em;*/
  /*text-transform: uppercase;*/
  text-align: left;
  font-weight: normal;
  display: inline-block;
  /*height: 2.6em;*/
  padding: 4px 12px 4px 12px;
  border-radius: 3vH;
  position: relative;
  z-index: 200;
  margin: 4vH 30% 0px 0px;
}
.circle-menu-card h2 div.decor {
  display: block;
  width: 100%;
  text-align: left;
}
.circle-menu-card h2 div.decor strong.hi-left {
  color: #fbb03b;
}
.circle-menu-card h2 div.decor strong.hi-right {
  color: #5b726c;
}
.circle-menu-card .pic-bg {
  /*width: 270px;
	height: 176px;*/
  width: 372px;
  height: 372px;
  padding: 0px;
  margin: 0px auto;
  /*background-color: #fbb03b;*/
  border-radius: 50%;
  /*transform: rotate(-4deg);*/
}
.circle-menu-card .pic {
  position: relative;
  /*top: -172px;
  left: 0px;*/
  z-index: 20;
  /*width: 262px;
  height: 168px;
  width: 360px;
  height: 360px;*/
  width: 28vH;
  height: 28vH;
  padding: 0px;
  /*margin: -366px 0px 0px 10px;
  margin: -96px auto 0px auto;*/
  margin: 6px auto 0px auto;
  background-color: #ffffff;
  border-radius: 50%;
  border: 4px solid #00b075;
}
/* Overlay with arrow */
.circle-menu-card .pic::after {
  content: "";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  /* semi-transparent dark veil */
  background: rgba(0, 0, 0, 0.35);
  /* šipka uprostřed – SVG jako background (bílá, 60x60) */
  /*background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'>\
<polyline points='9 18 15 12 9 6'/></svg>");*/
  background-image: url("i_click.svg?");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 60px 60px;
  /*background-size: contain;*/
  border-radius: 50%;
  opacity: 0;
  transform: scale(0.98);
  transition: opacity 180ms ease, transform 180ms ease;
  pointer-events: none; /* overlay neblokuje klik */
}
.circle-menu-card .pic:hover {
  cursor: pointer;
}
.circle-menu-card .pic:hover::after, .circle-menu-card .pic:focus-visible::after {
  opacity: 1;
  transform: scale(1);
}
.circle-menu-card a .pic span.idrop {
  background-image: url("i_drop.svg?");
  background-repeat: no-repeat;
  background-position: center;
  /*background-size: 34px 34px;
  background-size: 2.6vW 2.6vW;*/
  background-size: contain;
  border-radius: 50%;
  /*width: 42px;
  height: 42px;*/
  width: 4.4vH;
  height: 4.4vH;
  display: block;
  position: relative;
  z-index: 230;
  bottom: 6%;
  right: 6%;
  top: 21vH;
  left: 21vH;
}
.circle-menu-info {
  border: none;
  border-radius: 0px;
  /*padding: 3rem 1.5rem;*/
  height: auto;
  margin: 12px 0px 0px 0px;
  text-align: center;
  /*transition: all 0.4s ease;*/
  /*box-shadow: 0 10px 40px rgba(0,0,0,0.04);*/
  font-size: 1.2em;
  font-weight: bold;
  /*color:#b8004f;*/
  color: #a4a4a4;
}
.circle-menu-info .bullet {
  font-size: 1.2em;
  padding: 0px 8px 0px 0px;
}

/* Media Section  */
.media-section {
  background-color: #ebebeb;
  padding: 8px 0px 8px 0px;
}
.media-card {
  border: none;
  border-radius: 0px;
  /*padding: 3rem 1.5rem;*/
  height: auto;
  margin: 18px 0px 6px 0px;
  /*transition: all 0.4s ease;*/
  /*box-shadow: 0 10px 40px rgba(0,0,0,0.04);*/
}
.media-card:hover {
  /*transform: translateY(-15px);*/
  box-shadow: 0 20px 50px rgba(220, 53, 69, 0.1);
}
.media-card .card-title {
  height: 8.8em;
  display: block;
}
.media-card .card-title .decor small {
  font-size: 0.6em;
  color: #aaaaaa;
  font-weight: normal;
  text-align: right;
  /*margin: 0px 0px 0px 228px;*/
}
.media-card h2 {
  /*color: #5b726c;*/
  color: #fbb03b;
  font-size: 2.0em;
  line-height: 1.1em;
  text-transform: uppercase;
  text-align: left;
  font-weight: bold;
  display: block;
  /*height: 5.6em;*/
  padding: 0px 0px 0px 0px;
}
.media-card h3 {
  color: #00b075;
  font-size: 1.35em;
  line-height: 1.2em;
  text-transform: uppercase;
  text-align: left;
  font-weight: bold;
  display: block;
  /*height: 2.6em;*/
  padding: 0px 4px 0px 0px;
}
.media-card h2 div.decor {
  display: block;
  width: 100%;
  text-align: left;
}
.media-card h2 div.decor strong.hi-left {
  color: #fbb03b;
}
.media-card h2 div.decor strong.hi-right {
  color: #5b726c;
}
.media-card .pic-bg {
  /*width: 270px;
	height: 176px;*/
  width: 372px;
  height: 252px;
  padding: 0px;
  margin: 0px auto;
  /*background-color: #fbb03b;*/
  border-radius: 26px 26px 26px 26px;
  /*transform: rotate(-4deg);*/
}
.media-card .pic {
  position: relative;
  /*top: -172px;*/
  /*left: 0px;*/
  z-index: 20;
  /*width: 262px;
	height: 168px;*/
  width: 360px;
  height: 240px;
  padding: 0px;
  margin: -246px 0px 0px 10px;
  background-color: #ffffff;
  border-radius: 22px;
}
/* Overlay with arrow */
.media-card .pic::after {
  content: "";
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  /* semi-transparent dark veil */
  background: rgba(0, 0, 0, 0.35);
  /* šipka uprostřed – SVG jako background (bílá, 60x60) */
  /*background-image: url("data:image/svg+xml;utf8,\
<svg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'>\
<polyline points='9 18 15 12 9 6'/></svg>");*/
  background-image: url("i_click.svg?");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 60px 60px;
  /*background-size: contain;*/
  border-radius: 20px;
  opacity: 0;
  transform: scale(0.98);
  transition: opacity 180ms ease, transform 180ms ease;
  pointer-events: none; /* overlay neblokuje klik */
}
.media-card .pic:hover {
  cursor: pointer;
}
.media-card .pic:hover::after, .media-card .pic:focus-visible::after {
  opacity: 1;
  transform: scale(1);
}
.media-list-card {
  border: none;
  border-radius: 0px;
  /*padding: 3rem 1.5rem;*/
  height: auto;
  margin: 12px 0px 0px 0px;
  text-align: left;
  /*transition: all 0.4s ease;*/
  /*box-shadow: 0 10px 40px rgba(0,0,0,0.04);*/
}
.media-list-card:hover {
  /*transform: translateY(-15px);
	box-shadow: 0 20px 50px rgba(220, 53, 69, 0.1);*/
}
.media-list-card .pic-wrap {
  width: 36px;
  height: 24px;
  padding: 0px;
  margin: 8px 2px 12px 8px;
  display: inline-block;
}
.media-list-card .pic-bg {
  width: 36px;
  height: 24px;
  padding: 0px;
  margin: 0px;
  /*background-color: #fbb03b;*/
  border-radius: 4px 4px 4px 4px;
  /*transform: rotate(-4deg);*/
}
.media-list-card .pic {
  position: relative;
  z-index: 20;
  width: 32px;
  height: 20px;
  padding: 0px;
  margin: -22px 0px 0px 2px;
  background-color: #ffffff;
  border-radius: 4px 4px 4px 4px;
  display: none;
}
/* Request Form Section */
.request-form-section {
  background-color: #ebebeb;
}
.custom-form label {
  color: #00b075;
  font-size: 1.1em;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  font-weight: bold;
}
.custom-form .form-control {
  border-radius: 15px;
  /*border: 1px solid #e0e0e0;*/
  padding-right: 40px; /* home icon */
  background-color: #fff;
  font-weight: bold;
}
.custom-form .form-control::placeholder {
  font-size: 1.1em;
  color: #a4a4a5;
  text-transform: uppercase;
}
/* red home icon inside input */
.req-icon {
  position: absolute;
  right: 25px;
  top: 50%;
  transform: translateY(-50%);
  color: #ff1016;
  width: 18px;
  height: 18px;
  background-image: url("i_required.svg");
}
.required-icon {
  color: #ff1016;
  width: 18px;
  height: 18px;
  margin: 0px 24px 0px 0px;
}
/* Oprava pozice ikony v textaree */
textarea.form-control + .req-icon {
  top: 20px;
  transform: none;
}
/* Legenda pod formulářem */
.req-legend {
  color: #a4a4a5;
  font-size: 1.1em;
  text-transform: uppercase;
}
.req-icon-inline {
  color: #ff1016;
  width: 14px;
  height: 14px;
  vertical-align: middle;
}
.btn-submit {
  background-color: #ff1016;
  color: white;
  font-weight: bold;
  border-radius: 20px;
  border: none;
  font-size: 1.2rem;
  transition: background 0.3s;
}
.btn-submit:hover {
  background-color: #cc0000;
  color: white;
}
/* under form legend */
.req-legend {
  color: #888;
  font-size: 1.2em;
  font-weight: 800;
  text-transform: uppercase;
}
/* Bootstrap validation */
.was-validated .form-control:invalid {
  background-image: none !important;
  border: 2px solid var(--firm-red) !important;
}
.was-validated .form-control:valid {
  z-index: 23;
  position: relative;
}
.captcha-box {
  background: #fff;
}
/* Map Location Section */
.map-section {
  background-color: #ffffff;
  padding: 0px;
  text-align: center;
}
.map-section .card {
  border: none;
  border-radius: 0px;
  background: none;
  padding: 0px 0px 0px 0px;
}
/* Content section  */
.content-section {
  background-color: #ffffff;
  padding: 8px 0px 8px 0px;
}
.content-section .text-content {}
.content-section .text-content {}
.content-section .text-content .custom-text {
  font-size: 1.6em;
  font-weight: normal;
  display: block;
}
/* Footer */
footer {
  /*background-color: #111;*/
  background: #a4a4a5;
  color: #ffffff;
  padding: 24px 0 0 0;
  border-top: 4px solid #606060;
}
.footer-logo img.logo-img {
  /*width:324px;*/
  /*margin: 0px;*/
  padding: 0px;
  max-height: 86px;
}
footer h5 {
  color: #ffffff;
  font-size: 1.3em;
  font-weight: normal;
  margin-bottom: 18px;
  /*text-transform: uppercase;*/
  border-bottom: 2px solid #df1a21;
  padding-bottom: 3px;
}
footer h5.firm {
  font-size: 1.0em;
  color: #ffffff;
  font-weight: normal;
  /*text-transform: uppercase;*/
  margin-bottom: 16px;
  border-bottom: 0px;
}
footer p.firm-info {
  font-size: 1.0em;
  color: #ffffff;
  font-weight: normal;
  /*text-transform: uppercase;*/
}
footer p.firm-info i {
  vertical-align: middle;
  width: 28px;
  height: 22px;
  display: inline-block;
  background-repeat: no-repeat;
  background-position: center;
}
[data-lucide="phone"] {
  background-image: url("i_contact_phone.svg?");
}
[data-lucide="mail"] {
  background-image: url("i_contact_mail.svg?");
}
[data-lucide="address"] {
  background-image: url("i_contact_address.svg?");
}
footer a {
  color: #ffffff;
  text-decoration: none;
  /*text-transform: uppercase;*/
  transition: color 0.2s;
}
footer a:hover {
  /*color: #28a745;*/
  color: #00b075;
}
footer ul.footer-menu {
  padding-left: 0;
  list-style: none;
  margin-top: 16px;
}
footer ul.footer-menu li {
  margin: 1px 0px 0px 0px;
  /*border-bottom: 2px solid #df1a21;*/
}
footer ul.footer-menu.list-unstyled li a {
  color: #ffffff;
  font-size: 1.1em;
  font-weight: bold;
  /*text-transform: uppercase;*/
}
footer ul.footer-menu.list-unstyled li a::before {
  content: "/";
  color: #df1a21;
  padding: 0px 8px 0px 0px;
}
footer ul.footer-menu.list-unstyled li a:hover {
  color: #df1a21;
  transition: all 0.4s ease;
}
footer a.navbar-brand.link img.logo-img {
  max-height: 74px;
  display: block;
  margin: 0px auto 0px auto;
}
footer ul.list-social {
  padding-left: 0;
  list-style: none;
  display: block ruby;
  margin: 12px auto 0px auto;
  text-align: center;
}
footer ul.list-social li {
  margin: 0px 6px 0px 0px;
}
footer ul.list-social li a img.footer-img {
  width: 48px;
  height: 48px;
}
footer a#top-link {
  text-align: right;
  display: block;
}
/* Copyright  */
.copyright-bar {
  /*background-color: #28a745;*/
  background-color: #00b075;
  color: #df1a21;
  padding: 16px 0;
  margin-top: 0px;
  font-weight: bold;
  /*text-transform: uppercase;*/
}
.copyright-bar img.top-img {
  width: 28px;
  text-align: end;
}
@media (min-width: 1400px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
    max-width: 1140px;
  }
  #navbarNav a.nav-link {
    padding: 0px 0px 0px 2px;
    margin-left: 8px;
  }
}
@media (min-width: 300px) and (max-width: 480px) {
  .top-header-section .curr-phone {
    font-size: 1.2em;
    padding: 6px 2px 2px 6px;
  }
  .top-header-section .curr-phone img {
    width: 24px;
    margin: auto 6px auto 0px;
  }
  #navbarNav {
    padding: 0px 0px 0px 0px;
    background-color: #e6d48b;
    margin: 0px;
  }
  #navbarNav ul.navbar-nav li {
    border-bottom: 2px solid #fff;
  }
  #top-navigation .container {
    padding-right: 0px;
    padding-left: 0px;
    background-color: #ffffff;
  }
  #top-navigation button.navbar-toggler {
    /*display: block;
		margin: 0px;
		padding: 0px;*/
    position: absolute;
    top: 8px;
    right: 12px;
  }
  #navbarNav ul.navbar-nav li a:hover {
    color: #E4070B !important;
  }
  .hero-content h1 {
    max-height: 76px;
    width: fit-content;
    max-width: 80%;
    padding: 4px 6px 4px 6px;
    font-size: 1.8em;
  }
  .hero-content h1 a {
    width: 24px;
    height: 24px;
  }
  #mainCarousel .hero-content.container {
    margin-left: 28px !important;
  }
  .hero-content span.subtitle {
    max-height: 128px;
    width: fit-content;
    max-width: 85%;
    padding: 4px 12px 4px 8px;
    margin: 0px 0px 0px 12px;
    font-size: 1.6em;
    line-height: 1.2em;
  }
  .announcement-section {
    height: auto;
  }
  .announcement-section .card h2.info, .announcement-section .card .info {
    margin-left: 44px;
  }
  .announcement-section .card a.link {
    width: 40%;
    text-align: center;
    margin: auto 12px auto auto;
  }
  .services-section .service-card {
    margin-bottom: 24px;
  }
  .services-section .service-card .pic {
    /*margin: -172px 0px 0px 106px;*/
    margin: -25vh 0px 0px 6vh;
    width: 80vw;
    height: 25vh;
    max-width: 80vw;
    border-radius: 34vw;
  }
  .services-section .service-card .pic-bg {
    margin: 0px auto;
    width: 81vw;
    height: 27vh;
    max-width: 82vw;
    border-radius: 34vw;
  }
  .media-card .card-title {
    /* margin-left: 12px;*/
    margin-bottom: 8px;
  }
  .media-section .media-card .card-title h2, .media-section .media-card .card-title h2 .decor, .media-section .media-card .card-title h3 {
    text-align: center;
  }
  .media-card .pic {
    /*margin: -246px 0px 0px 54px;*/
    margin: -30vh 0px 0px 3vh;
    width: 86vw;
    height: 30vh;
    max-width: 86vw;
    border-radius: 4vw;
  }
  .media-card .pic-bg {
    margin: 0px auto;
    width: 88vw;
    height: 31vh;
    max-width: 88vw;
    border-radius: 4vw;
  }
  .media-list-card {
    margin: 12px auto 0px auto;
    text-align: center;
  }
  .map-section .card a img.map-img {
    max-width: 100%;
  }
}



@media (max-width: 991px) {
  /* Zrušení fixní výšky navigace a menu na mobilu, aby se mohlo rozbalit */
  #top-navigation {
    height: auto !important;
  }
  #navbarNav {
    height: auto !important;
    padding: 10px 0 !important;
  }
  
  /* Pozicování rozbaleného menu pod hlavičkou */
  .navbar-collapse.show, .navbar-collapse.collapsing {
    position: absolute;
    top: 68px;
    left: 0;
    width: 100%;
    z-index: 2000;
    box-shadow: 0 10px 15px rgba(0,0,0,0.1);
  }

  /* --- ÚPLNÉ ODSTRANĚNÍ ORANŽOVÝCH ČÁR A LOMÍTEK V MOBILNÍM MENU --- */
  #navbarNav li.nav-item a.nav-link span,
  #navbarNav li.nav-item a.nav-link span::after,
  #navbarNav li.nav-item a.nav-link::after,
  #navbarNav li.nav-item::before,
  #navbarNav li.nav-item a.nav-link.active::before {
    display: none !important;
    content: none !important;
    height: 0 !important;
  }
  
  /* Sjednocení vzhledu položek v rozbaleném menu pod sebou */
  #navbarNav ul.navbar-nav {
    width: 100%;
    padding: 10px 15px;
  }
  
  #navbarNav li.nav-item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    text-align: left;
  }
  
  #navbarNav li.nav-item:last-child {
    border-bottom: none;
  }
  
  #navbarNav li.nav-item a.nav-link {
    padding: 10px 0;
    font-size: 1.1rem !important;
    color: #ffffff !important;
  }
}