/*************************/
/***   FONTS           ***/
/*************************/

@import url('https://fonts.googleapis.com/css2?family=Barlow:wght@100;200;300;400;500;600;700;800;900&display=swap');


@font-face {
    font-family: 'Roboto';
    src: url('/files/fonts/Roboto-Regular.ttf') format('truetype');
}

@font-face {
    font-family: 'Roboto';
    src: url('/files/fonts/Roboto-Bold.ttf') format('truetype');
    font-weight: bold;
}

@font-face {
    font-family: 'Roboto-Light';
    src: url('/files/fonts/Roboto-Light.ttf') format('truetype');
    font-weight: 300;
}
@font-face {
    font-family: 'Roboto-Light';
    src: url('/files/fonts/Roboto-Bold.ttf') format('truetype');
    font-weight: bold;
}

@font-face {
    font-family: 'Roboto-Thin';
    src: url('/files/fonts/Roboto-Thin.ttf') format('truetype');
    font-weight: 200;
}
@font-face {
    font-family: 'Roboto-Thin';
    src: url('/files/fonts/Roboto-Bold.ttf') format('truetype');
    font-weight: bold;
}
* {
	margin: 0px;
	padding: 0px;
}
body{
  	background-color: #ffffff;
  	color: #001d44;  
	text-align: left;
	font-family: 'Barlow',sans-serif;
	font-weight: 300;
	height: 100%;
  	line-height: 1.5em;
  	font-size: 19px;
}

/**********************************/
/*         COMMON COMPONENTS
/**********************************/

@media (min-width: 1270px){
.container {
    max-width: 1600px;
}
}
.cols{
	display: flex;
}
.col{
	display: inline-block;
	vertical-align: middle;
}
#cookies_souhlas{
	width: 100% !important;
}
button, button:hover, button:active, button:focus{
	outline: none;
	box-shadow: none !important;
}
.fader{
	opacity: 0.0;
    	-webkit-transition: opacity 1.0s ease-in-out;
    	-moz-transition: opacity 1.0s ease-in-out;
    	-ms-transition: opacity 1.0s ease-in-out;
    	-o-transition: opacity 1.0s ease-in-out;
    	transition: opacity 1.0s ease-in-out;
}
.fader.visible{
	opacity: 1;
}
.scaler{
	-webkit-transform: translateY(0) scale(0.5);
    	transform: translateY(0) scale(0.5);
    	opacity: 0;
    	-webkit-transition: -webkit-transform 0.6s ease-in-out 0.6s, opacity 0.6s ease-in-out 0.6s;
    	transition: transform 0.6s ease-in-out 0.6s, opacity 0.6s ease-in-out 0.6s;
}
.scaler.visible{
	-webkit-transform: translateY(0) scale(1);
    	transform: translateY(0) scale(1);
	opacity: 1;
}
.EditableSection li, .EditableContent li, .editable-section li{
	padding-left: 20px;
	position: relative;
}
.EditableSection li:before, .EditableContent li:before, .editable-section li:before {
    	content: '\f111';
    	font-weight: 900;
    	font-family: "Font Awesome 5 Free";
    	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
    	font-size: 6px;
}b, strong {
    font-weight: bold;
}
.vertical-align {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row;
}

/**********************************/
/*         HEADER
/*********************************/
header{
	position: relative; 
	width: 100%; 
    padding: 30px 0;
    background-color: #0c1d42;
    color: white;
}

@media screen and (min-width: 1270px){
.header{
	display: flex;
}

}


header a{
    color: white;
}
header .odkaz_na_uvod{
    text-decoration: none;
}

header .logo-text{	
	font-weight: bold;
	color: white;
	font-size: 31px;
	text-decoration: none !important;	
}

@media screen and (max-width: 500px){
	header{
		padding: 15px 0;
	}

	header .logo-text{	
		font-size: 32px;
	}	
}
@media screen and (max-width: 320px){
	header .logo-text{	
		font-size: 20px;
	}	
}

header .logo-text .green-text{	
	letter-spacing: 8px;
	color: #95c15c;
}





#header{
	text-align: center;
}
#logo{	
	display: inline-block;
	margin-top: 20px;	
	margin-bottom: 10px;
	position: relative;
}
.link-fill {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    display: block;
    z-index: 10;
}
.nomargin{
	margin: 0;
}
#stripe{
	text-align: center;
	background: white;
	padding: 0;
	border-bottom: 1px solid #e7e7e7;
	margin-bottom: 15px;
}
#stripe p, #stripe a{
  font-family: 'Barlow-Light';
	font-weight: 300;
	color: black;
	text-decoration: none;
	display: inline-block;
	font-size: 17px;
	margin-bottom: 0;
}
#stripe p{
	margin: 0 8px;
}
#stripe a:hover{
	text-decoration: underline;
}


/**********************************/
/*         OBrazek s textem
/**********************************/

.main-image {
    background: url("/files/images/hlavni-foto-elektrohelp.jpg");
    width: 100%;
    background-size: cover;
    height: 800px;
}

.main-image h1 {
    color: white;
    text-transform: uppercase;
	font-weight: bold;
    font-size: 60px;
	text-shadow: 1px 1px 2px black;
}



.main-image p {
	font-weight: bolder;
	font-size: 30px;
	line-height: 1.3em;
	text-shadow: 1px 1px 2px black;
    color: white;
}

@media screen and (max-width: 500px){
	.main-image h1 {
		font-size: 22px;
	}
	.main-image p {
		font-size: 18px;
	}

	.main-image {
		height: 300px;
	}
}


/**********************************/
/*        Panel naše služby
/**********************************/
.panel-service{
	margin-top: 75px;
	margin-bottom: 75px;
}



.panel-service h2{
	text-align: center;
	margin-top: 15px;
	margin-bottom: 30px;
}
.panel-service p{
	margin-bottom: 0px;
}
.column {
    transition: all 0.3s ease;
}


.column p {
    text-align: center;
}

.column i,.column a {
   color: #1f2f50;
}


.column:hover i,
.column:hover a {
    color: #95c15c;
    font-weight: 700;
}

a {
    transition: color 0.3s ease;
}

i {
    transition: color 0.3s ease;
}

@media screen and (max-width: 500px){
	.panel-service{
		margin-top: 30px;
		margin-bottom: 30px;
	}
	.column {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}

/**********************************/
/*       Modrá sekce
/**********************************/

.blue-section {
    color: white;
    padding: 60px 0px;
    margin: 60px 0px;
    background-color: #1d3050;
}

.blue-section span{
    font-size: 24px;
}

.blue-section h2{
    color: white;
}
   

.blue-section img {
    width: 100%;
}
.blue-section .grid-box {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px 20px;
    /* row and column gap */
    margin-top: 1em;
}

@media (max-width: 768px) {
    .blue-section .grid-box {
        grid-template-columns: 1fr;
    }
}

.blue-section .grid-box span {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    font-size: 24px;
}

/**********************************/
/*         BUTTONS
/**********************************/

.btn-wrap{
	display: block;
	margin-top: 8px;
	clear: both;
}
.btn,  .camera_wrap .btn{
	text-decoration: none !important;
	font-weight: bold;
	font-size: 18px;
	box-shadow: none !important;
	padding: 0.3rem 1.2rem;
	border-radius: 0;
	display: inline-block;
}
.btn.btn:active{
	border: inherit !important;
	background: inherit !important;
}
.btn.btn-primary{
	background: #7abb00;
	border: 1px solid #7abb00;
	border-radius: 5px;
	color: white !important;
}
.reference_box .btn.btn-primary{
	text-transform: initial;
}
.btn.btn-primary:hover, .btn.btn-primary:focus, .reference_box:hover .btn.btn-primary{
	background: #cc041c;
	border: 1px solid #cc041c;
	color: white !important;
}
.btn.btn-secondary{
	background: white;
	border-radius: 5px;
	border: 1px solid #e7e7e7;
	color: black !important;
}
.btn.btn-secondary:hover, .btn.btn-secondary:focus, .article-thumb:hover .btn.btn-secondary{
	background: #cc041c;
	border: 1px solid #cc041c;
	color: white !important;
}



.btn1 {
    padding: 15px 20px;
    color: #faf4c0 !important;
    border: 2px solid #faf4c0;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 18px;
    font-weight: bold;
}

.btn1:hover,.btn3:hover {
    padding: 15px 20px !important;
    border: 2px solid #81ab59 !important;
    color: #81ab59  !important;
    background-color: #001e44!important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    font-size: 18px !important;
    font-weight: bold !important;

}

.btn3 {
    padding: 15px 20px !important;
    color: #001d44  !important;
    border: 2px solid #001d44 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    font-size: 18px !important;
    font-weight: bold !important;
}


.btn1:hover,
.btn2:hover {
    text-decoration: none;
}


/**********************************/
/*         MENU
/**********************************/
#menu_top .container{
	padding: 0;
	overflow: visible;
}
#menu_top{
	z-index: 2;
	margin-top: 15px;
}
.navbar {
    	padding: 0;
	margin-top: 0;
	-webkit-transition: all 0;
    	transition: all 0;
}
.navbar-toggler {
    display: none;
}
.navbar-collapse.collapse:not(.show) {
    display: block;
}
.navbar-inner{
	text-align: left;
	display: block;
    	width: 100%;
}
.nav {
    justify-content: center;
}
.nav li {
    margin: 0;
    position: relative;
    display: inline-block;
}
.nav li.lvl-1{
	padding: 6px 6px;
}
.nav li.lvl-1 > a {
    font-size: 19px;
    color: white;
    font-weight: normal;
    padding: 11px 8px;
	border-radius: 3px;

    font-family: 'Barlow', sans-serif;
    text-decoration: none !important;
    display: inline-block;
	position: relative;
}
.nav li.lvl-1 > a:hover, .nav li.lvl-1 > a.active {
	color: #94c15c;
}


.menu_servis{
	padding: 15px 10px;
    color: #faf4c0 !important;
    border: 2px solid #faf4c0;
    text-transform: uppercase;
    text-decoration: none;
    font-size: 14px;
    font-weight: bold;

}



#menu_top .nav li.lvl-1 > a:hover::before,
#menu_top .nav li.lvl-1 > a.active::before {
    content: ''; /* Empty content for the pseudo-element */
    position: absolute;
    top: -6px; /* Adjust this value to increase or decrease the gap */
    left: 5%;
    width: 90%;
    height: 2px; /* Thickness of the overline */
    background-color: #94c15c; /* Matches the text color */
}

.footer_main .nav li.lvl-1{
	padding: 0px 6px;
}


.dropdown-toggle::before {
    display: inline-block;
    width: 0;
    height: 0;
	color: white;
    margin-left: 0.255em;
    vertical-align: 0.255em;
    content: "";
    border-top: 0.3em solid;
    border-right: 0.3em solid transparent;
    border-bottom: 0;
    border-left: 0.3em solid transparent;
}
.nav li.lvl-1 > a:hover:before, .nav li.lvl-1 > a.active:before, .nav li.lvl-1.show > a:before{
	color: #94c15c;
}
.dropdown-toggle::after{
	display: none;
}
.dropdown-menu {
    border-radius: 0;
    border: 1px solid #e7e7e7;
    margin: 0;
    left: 8px;
	top: 41px;
    min-width: calc(100% + 2px);
    background-color: white;
    transform-origin: 50% 0;
    transform: scaleY(0);
    opacity: 0;
    display: block;
    transition: transform 0.3s, opacity 0.3s;
-webkit-box-shadow: 4px 4px 5px 0px rgba(0,0,0,0.25);
-moz-box-shadow: 4px 4px 5px 0px rgba(0,0,0,0.25);
box-shadow: 4px 4px 5px 0px rgba(0,0,0,0.25);
}
.dropdown-menu.show {
    transform: scaleY(1);
    opacity: 1;
}
.dropdown-menu a{
	text-transform: uppercase;
	text-decoration: none;
	position: relative;
}
.dropdown-menu a img{
	max-width: 15px;
	max-height: 15px;
}
.dropdown-menu a:hover, .dropdown-menu a:active{
	background: inherit;
}
.dropdown-menu a:hover:after, .dropdown-menu a:active:after{
	position: absolute;
	left: 1.5rem;
	bottom: 0;
	right: 1.5rem;
	height: 2px;
	background: #94c15c;
	content: '';
}

/**********************************/
/*         SLIDESHOW
/**********************************/
#slides{
	position: relative;
}	
.camera_prevThumbs, .camera_nextThumbs, .camera_prev, .camera_next, .camera_commands, .camera_thumbs_cont{
	background: transparent;
}
.camera_prev > span, .camera_next > span{
	z-index: 100;
	width: 37px;
    	height: 60px;
}
.camera_prev > span {
    background: url(/files/images/prev.png) no-repeat left 5px top;
    left: 15px;
}
.camera_next > span {
    background: url(/files/images/next.png) no-repeat right 5px top;
    right: 15px;
}


#header figure{
	margin: 0;
}
.caption{
	position: absolute;
	bottom: 0;
      left: 0;
      right: 0;
	margin: auto;
	padding: 0px 20px 5px 20px;
	background: rgba(0,0,0,0.5);
	padding: 15px;

}
.caption p{
	color: white;
	font-family: 'Barlow';
	font-size: 36px;
	font-weight: bold;
	margin: 0;
	line-height: 50px;
	text-align: center;
	text-shadow: 2px 2px 1px rgba(0, 0, 0, 1);
}
.caption p .color{
	color: #7abb00;
}
#intro{
	position: relative;
      text-align: center;
	overflow: hidden;
}


/**********************************/
/*         CONTENT
/**********************************/
#main_content {
	height: auto;
	padding: 15px 0;
	text-align: left;
	position: relative;
	display: block;
}

.box_green{
	border: 1px solid #7abb00;	
	padding: 20px;
	color: #3a3a3a;
	margin-bottom: 20px;
	border-radius: 5px;
}
.box_green button{
	align-items: center;
}
.box_green button p{
	display: inline-block;
	vertical-align: middle;
  font-family: 'Barlow-Light';
	font-weight: 300;
	font-size: 24px;
	margin: 0;
	margin-right: 8px;
	color: black;
}
.box_green button a.btn-primary{
	padding: 10px 19px;
	
}
.box_green h2{
	position: relative;
	font-weight: bold;
	color: #3a3a3a;
	padding-bottom: 5px;
}
.box_green h2:after{
	content: "";
    	background: #e6152e;
    	position: absolute;
    	bottom: 0;
    	left: 0;
    	height: 3px;
    	width: 120px;
}
.col-main {
    max-width: calc(100% - 250px);
    width: calc(100% - 250px);
    margin-top: 10px;
}
.left-col {
    width: 250px;
    margin-top: 10px;
}

/**********************************/
/*  INDEX 
/*********************************/
.index-info{
	display: flex;
	margin-bottom: 40px;
}
.index-info-box {
	flex-basis: 50%;
	max-width: 50%;
}
.index-info-text-box{
	background: white;
	border: 1px solid #eaeaea;
	border-right: none;
	padding: 20px 25px;
}
.index-info-text-box p{
	margin-bottom: 30px;
}
.index-info-img-box{
	background: url(/files/images/index-intro.jpg) no-repeat center center;
	background-size: cover;
}
.index-info h1, .index-info .h1{
	font-size: 30px;
	font-weight: bold;
	color: black;
}

@media screen and (max-width: 1100px){
.index-info, .box{
	flex-wrap: wrap;
}
.index-info-box, .box-half{
	flex-basis: 100%;
	max-width: 100%;
}
.index-info-text-box, .box-text{
	border-top: 1px solid #eaeaea !important;
	border-left: 1px solid #eaeaea !important;
	border-right: 1px solid #eaeaea !important;
	border-bottom: none !important;
}
.index-info-img-box, .box-img{
	width: 100%;
    	padding-top: 70%;
    	position: relative;
}
}

/**********************************/
/*         BREADCRUMB
/**********************************/
.breadcrumb{
	border-top: 1px solid #e7e7e7;
	border-bottom: 1px solid #e7e7e7;
	background: #f5f5f5;
    	padding: 7px 1rem;
	border-radius: 0;
}
.breadcrumb a, .breadcrumb span{
	font-size: 15px;
}
.drobeckova-navigace-sipky{
	display: inline-block;
	margin: 0 15px;
}

/**********************************/
/*         PRODUKT DETAIL
/**********************************/

.product-detail{
	margin-bottom: 3rem;
}
.detail_image_big{
	position: relative;	
}
.detail_image_big img{
	border: 3px solid #e7e7e7;
}
.detail_image_big img:hover{
	border: 3px solid #84bf14 !important;
}
.detail_image_big img, .detail_image img{
	max-width: 100%;
	height: auto;
}	
.detail_images{
	border: 1px solid #e7e7e7;
	border-radius: 5px;
	padding: 1rem 2rem;
	margin: 0;
	width: 100%;
}
.detail_images .col-md-4{
	padding-left: 0.5rem;
	padding-right: 0.5rem;
}
.detail_images .col-md-4:nth-of-type(n+7){
	max-height: 0;
    	opacity: 0;
    	overflow: hidden;
	-webkit-transition: all .4s; 
    	transition: all .4s;
}
.detail_images .col-md-4.visible{
	max-height: 200px;
	opacity: 1;
}
.detail_images .button{
	width: 100%;
}
.detail_image{
	width: 100%;
	padding-top: 66%;
	position: relative;
	background: #e7e7e7;
	margin-bottom: 1rem;
}
.detail_image:hover{
	background: #84bf14;
}
.detail_image a{
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}
.detail_image img, .detail_img img{
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	margin: auto;
	max-height: 100%;
	max-width: 100%;
	width: auto;
}
.button-back{
	margin-top: 1rem;
}

/**********************************/
/*         KATEGORIE
/**********************************/
.kategorie-nadpis {
    margin: 0;
}
.kategorie .toggler {
    border: none;
    background: transparent;
    text-transform: uppercase;
    color: black;
    text-align: center;
    width: 100%;
    cursor: pointer;
    display: none;
}
#category {
    margin-bottom: 20px;
}
#category p {
    margin-bottom: 3px;
    border-radius: 5px;
    padding-left: 3px;
	background: #7abb00;
-webkit-transition: padding-left .2s ease-out;
  -moz-transition: padding-left .2s ease-out;
  -o-transition: padding-left .2s ease-out;
  transition: padding-left .2s ease-out;
}
#category p:hover, #category p.selectedP{
	background: #94c15c;
	padding-left: 6px;
}
#category a {
    display: block;
    border-radius: 5px;
    background: #f1f1f1;
    font-size: 17px;
    font-weight: bold;
    padding: 12px 15px;
	text-decoration: none;
}
#category a:hover{
	color: black;
}

.kontakt{
	width: 330px;
	display: inline-block;
}

.kontakt p:first-of-type, .kontakt h3{
      font-family: 'Barlow',sans-serif;
	margin: 10px 0;
}

.kontakt p{
	margin-bottom: 8px;
}

.kontakt strong, .kontakt strong a{
	color: black;
	font-size: 15px;
}

#mapa_nadpis{
	margin: 5px auto;
}
#mapa > div iframe{
	display: block;
	margin: 0 !important;
}

#main_content table { 
border: 1px solid #E4E4E4; width: auto; height: auto; 
} 
#main_content td { 
border: 1px solid #E4E4E4; padding: 10px; line-height: 1.3em; 
} 

#nadpatickou{
	background: #f5f5f5;
	padding: 20px 0;
	border-top: 1px solid #dadada;
}
#nadpatickou .row{
	justify-content: center;
	align-items: center;
}
#nadpatickou .row .col{
	padding: 20px 30px;
}
#nadpatickou .col:nth-of-type(2){
	border-left: 1px solid #dadada;
	border-right: 1px solid #dadada;
}
#nadpatickou p.mail a{
	white-space: nowrap;
}
#nadpatickou a{
	text-decoration: none;
}
#nadpatickou a:hover{
	text-decoration: underline;
	color: black;
}


/* paticka */
#footer {
	color: white;
	height: auto;
	margin: 0 auto;
	text-align: center;
	background: transparent;
	border: none;
}
footer {
	
  	background: #021943;
  	z-index: 0;
  	width: 100%;
}
#footer_text{ 
	padding: 2em 0; 
	text-align: start;
}
#footer #footer_text, #footer #footer_text p, #footer #footer_text a{
	color: white;
	font-size: 15px;
}
#footer #footer_text .editable-section{
	margin-bottom: 0px;
}
#footer #footer_text p{
	display: inline;
}
#footer #footer_text a{
	text-decoration: none;
}
#footer #footer_text a:hover{
	text-decoration: underline;
}

.footer_main{
	background-color: #1d3050;
	padding: 40px 0;
}

.footer_main .logo-text{	
	font-weight: bold;
	color: white;
	font-size: 31px;
	text-decoration: none !important;	
}
.footer_main .logo-text .green-text{	
	letter-spacing: 8px;
	color: #95c15c;
}

@media screen and (max-width: 768px){

	.footer_main {	
		text-align:center;
	}	
	.footer_main p{	
		text-align:center;
	}
	.footer_main img,	.footer_main a{	
		align-self:center;
	}	

}


@media screen and (max-width: 500px){

	.footer_main .logo-text{	
		font-size: 32px;
	}	
}
@media screen and (max-width: 320px){
	.footer_main .logo-text{	
		font-size: 20px;
	}	
}

.footer_main .odkaz_na_uvod{
    text-decoration: none;
}
.footer_main .nav li.lvl-1{
	width: 100%;
}
.footer-ref{
color: white !important;
font-size: 24px;
font-weight: bold;
}

a.footer-ref{
text-decoration: none;
}

.footer-ref:hover{
	color: #94c15c !important;
	font-size: 24px;
	font-weight: bold;
	}



/* resetovac */
#reset {
	border:  0px none;
	margin:  0px;
	padding: 0px;
	float: none;
	clear: both;
	width: 0px;
	height: 0px;
	line-height: 0px;
	font-size: 0px;
}
/**********************************/
/*         DEFAULTNI HODNOTY
/*********************************/



h1, h2, h3, h4, .h1, .h2, .h3, .h4 {
  line-height: 1.3em;
  margin: 0 0 12px 0;
  text-align: left;
}

h1.centered{
	text-align: center;
}
h1 {
    font-family: 'Barlow', sans-serif;
    font-weight: 500;
    /* Medium */
    font-size: 36px;
    color: #001d44;
    margin-top: 3rem;
}

 h1 {
            position: relative;
            text-align: center;
        }

        h1::after {
            content: "";
            display: block;
            width: 10rem;
            height: 1px;
            background-color: #001d44;
            margin: 1rem auto 0 auto;
        }
.no-after{

  text-align: start;
}
.no-after::after {
    display: none;
    content: none;
}/* H2 – Default (except blue or special sections) */
h2 {
    font-family: 'Barlow', sans-serif;

    /* Bold */
    font-size: 30px;

	color: #95c15c;
	font-weight: 500;

}

h2.indexpage{
    color: #001d44;
}

/* H3 */
h3 {
    font-family: 'Barlow', sans-serif;
    font-weight: 400;
    /* Regular */
    font-size: 30px;
    color: #001d44;
}

h4, .h4 {
	color: #0ea155;
	font-size: 14px;
	font-weight: 600;
}
p, li {
  margin: 0 0 12px 0;
  list-style-type: none;
  text-align: left;
}

#main_content ul{
	padding-left: 0;
}

img {
	border: none;
	margin: 0; 
	max-width: 100%;
}

.EditableSection a[rel="lightbox[all]"] img, .EditableContent a[rel="lightbox[all]"] img, .editable-section a[rel="lightbox[all]"] img{
	border: 3px solid #e7e7e7;
	margin: 4px;
	z-index: 50;
}
.EditableSection a[rel="lightbox[all]"] img:hover, .EditableContent a[rel="lightbox[all]"] img:hover, .editable-section a[rel="lightbox[all]"] img:hover{
	border: 3px solid #84bf14 !important;
}
a,
a:visited {
    color: black;
    font-size: 17px;
    font-weight: 700;
    font-family: 'Barlow';
    text-decoration: underline;
}
a:hover {
	text-decoration: none;
	color: #94c15c;
}
table {
	border-collapse: collapse;
	border: none;
  margin: 0 0 12px 0;
}
.EditableSection th, .EditableContent th, .editable-section th,
.EditableSection td, .EditableContent td, .editable-section td{
	font-size: 17px;	
  	color: black;
  	font-weight: 300;
    font-family: 'Barlow-Light';
	padding: 5px;
	border: 1px solid #e0e0e0;
}
table td {
  vertical-align: top;
  text-align: left;
}
ul, ol {
	list-style-position: outside;
	margin: 0 0 0px 0px;
}

#main_content table {
  border: 1px solid #ffffff;
  width: auto;
  height: auto;
}

#main_content td {
  border: 1px solid #E4E4E4;
  padding: 10px;
  line-height: 1.3em;
  font-size: 15px;
  color: #4d4c4c;
}

.custom-list {
    list-style: none;
    padding-left: 0;
  }

  .custom-list li::before {
    content: ">";
    color: #94c15c;
    font-size: 24px;

    display: inline-block;
    width: 1em;
    margin-right: 0.5em;
  }

/**********************************/
/*  BANNERY 
/*********************************/
#banners{
	margin-top: 20px;
	margin-bottom: 35px;
}
.banner{
	text-align: center;
	margin-bottom: 20px;
}
.banner .h2{
	text-align: center;
	font-weight: 300;
  font-family: 'Barlow-Light';
	height: 1.2em;
	overflow: hidden;
}
.banner_img{
	border-radius: 5px;
	overflow: hidden;
	border-bottom: 4px solid #7abb00;
}
.banner_img img{
	width: 100%;
}
.banner:hover .banner_img{
	border-bottom: 4px solid #cc041c;
}
.banner .btn-primary{
	z-index: 50;
	margin-top: -23px;
	font-weight: normal;
}
.banner:hover .btn-primary{
	border: 1px solid #cc041c;
	background: #cc041c;
}

.card-service{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 250px;
}

.card-service p{
    flex-grow: 1;
}


/**********************************/
/*         AKTUALITY SLIDE
/**********************************/
#aktuality_slide_box{
	border: 1px solid #e7e7e7;	
	border-radius: 5px;
	position: relative;
	margin-bottom: 2.5rem;
	display: flex;
	align-items: center;
	position: relative;
	overflow: hidden;
}
#aktuality_slide_box p.aktuality-title-box{
	background: #cc041c;
	color: white;
	padding: 20px 10px;
	font-size: 20px;
	font-weight: bold;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.5);
	margin: 0;
}
#aktuality_slide{
	margin: 0;
	max-width: 85%;
	flex-basis: 85%;
	position: relative;
}
.aktuality_box{
	justify-content: space-between;
	padding: 1rem;
    	padding-right: 200px;
	position: relative;
}
.aktuality_date, .aktuality_name{
	display: inline-block;
	overflow: hidden;
}
.aktuality_date{
	color: black;
	font-size: 20px;
	font-weight: bold;
}
.aktuality_name{
	font-size: 20px;
	font-weight: 300;
  font-family: 'Barlow-Light';
	color: black;
	text-decoration: none;
}
#aktuality_slide .aktuality_name{
	height: 1.4em;
	overflow: hidden;
}
.aktuality_box:hover .aktuality_name{
	text-decoration: underline;
}
.aktuality_box:hover .btn-primary{
	background: #e7e7e7;
	color: black;
}
.archiv{
	position: absolute;
	margin: auto;
	right: 1.5rem;
	top: 0;
	bottom: 0;
	display: flex;
    	align-items: center;
}
.archiv a{
	vertical-align: middle;
}


/**********************************/
/*  MODULY 
/*********************************/

/* hlavicka - odkaz logo */
#head .link_logo  {
	background: url(/files/images/logo.png);
	float: left;
	width: 397px;
	height: 78px;
	display: block;
	margin-top: 30px;
    margin-bottom: 10px;
}

/* clear obtekani */
.clear {
	border:  0px none;
	margin:  0px;
	padding: 0px;
	float: none;
	clear: both;
	width: 0px;
	height: 0px;
	line-height: 0px;
	font-size: 0px;
}
/**********************************/
/*  FORMULARE 
/*********************************/

button#modal-launch, button#modal-launch-2 {
    background: none;
    border: none;
    cursor: pointer;
	box-shadow: none;
	padding: 0;
	white-space: normal;
}
button#modal-launch-2 {
	padding: 0;
}

.modal-content{
	border: none;
	border-radius: 0;
	font-family: Barlow,sans-serif;
}

div.modal-header {
	border-radius: 0;
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#2ab8fa+0,2a83fa+100 */
	background: #0c1d42;
}

div.modal-header .close{
	margin: 0 0 auto;
	border: 1px solid white;
	border-radius: 5px;
	padding: 0.4rem 0.7rem;
	color: white;
	opacity: 1;
	-webkit-transition: all 0.3s; 
	-ms-transition: all 0.3s;
    	transition: all 0.3s;    
}
div.modal-header .close:not(:disabled):not(.disabled):hover, 
div.modal-header .close:not(:disabled):not(.disabled):focus{
	opacity: 1;
	color: black;
	background: white;
}

.modal-dialog label {
    margin-bottom: 0.2rem;
}

.modal-dialog .modal-title{
	color: white;
	/* text-transform: uppercase; */
	font-size: 25px;
	font-family: 'Barlow';
	font-weight: bold;
}

span.mandatory-star {
    color: #ff6d6d;
}

.modal-dialog .modal-body {
    background-color: #f5f5f5;
}

.modal-dialog .modal-body label{
	/* font-weight: bold; */
	font-size: 17px;
	color: black;
}

.modal-dialog .btn-primary{
	border: 1px solid #0c1d42;
	color: white;
	font-family: 'Barlow';
	font-size: 18px;
	font-weight: bold;
	text-transform: uppercase;
    	padding: 0.375rem 1.75rem; 

	background: #0c1d42;
	-webkit-box-shadow: inset 1px 1px 2px 0px rgba(255,255,255,0.5) !important;
	-moz-box-shadow: inset 1px 1px 2px 0px rgba(255,255,255,0.5) !important;
	box-shadow: inset 1px 1px 2px 0px rgba(255,255,255,0.5) !important;
}


.modal-dialog .btn-primary:hover{
	background: #95c15c;
	border: 1px solid #95c15c;
}


.was-validated .form-control:invalid, .form-control.is-invalid, .was-validated .custom-select:invalid, .custom-select.is-invalid
{
    background-color: #ffdede;
}

.invalid-feedback, .form-text, small, .small {
    font-size: 15px;
}
.modal small a{
	font-size: 15px;
    	font-weight: normal;
}
.modal small a:hover{
	text-decoration: none !important;
}
/***************************/
/*  PRODUKTY
/***************************/

.produkt{
	text-align: center;
	position: relative;
	margin-bottom: 20px;
	border-radius: 8px;
	border: 1px solid #e7e7e7;
	padding: 20px;
	padding-top: 0;
}
.produkt_nazev{
	margin: 10px 0;
	height: 2.6em;
	overflow: hidden;
	text-align: center;
	font-weight: normal;
	color: black;
}
.produkt_img{
	position: relative;
	height: 200px;
	z-index: -1;
}
.produkt_img img{
	border: 2px solid white;
	position: absolute;
	top: 2px;
	left: 2px;
	bottom: 2px;
	right: 2px;
	margin: auto;
	max-height: calc(100% - 4px);
	max-width: calc(100% - 4px);
	height: auto;
	width: auto;
}
.produkt_buttons{
	z-index: 50;
	position: absolute;
	bottom: 8px;
	left: 0;
	right: 0;
}
.produkt:hover .btn{
    	background: #cc041c;
    	border: 1px solid #cc041c;
    	color: white !important;
}
.produkt:hover{
	background: #f5f5f5;
	-webkit-box-shadow: 4px 4px 5px 0px rgba(0,0,0,0.25);
    	-moz-box-shadow: 4px 4px 5px 0px rgba(0,0,0,0.25);
    	box-shadow: 4px 4px 5px 0px rgba(0,0,0,0.25);
}
.produkt_pagination{
	flex-basis: 100%;
	max-width: 100%;
	margin: 5px 15px;
}

.pgr, .strankovani-odkaz, .strankovani-sipky{
	font-size: 15px;
	padding: 2px 5px;
	border-radius: 3px;
	border: 1px solid transparent;
	display: inline-block;
	vertical-align: top;
	text-decoration: none;
}
.pgr, .strankovani-odkaz:hover, .strankovani-sipky:hover{
	font-weight: bold;
	background: #f5f5f5;
	border: 1px solid #e7e7e7;
	text-decoration: none;
	color: black;
}
.products-not-found{
	display: none;
}

/***************************/
/*  AKTUALITY
/***************************/
.article-thumb .aktuality_img {
    	background: #f5f5f5;
    	height: 100%;
    	width: 100%;
	margin: 0;
	text-align: center;
	border: 1px solid transparent;
}
.article-thumb:hover{
	border: 1px solid #e7e7e7;
}
.article-thumb:hover .aktuality_img{
	border: 1px solid #e7e7e7;
}
.article-thumb .aktuality_img img{
    	max-height: 135px;
}
h2.aktuality_name {
    	margin-top: 0;
	font-weight: bold;
}
.aktuality_text {
    	height: 2.8rem;
    	overflow: hidden;
}
.article-thumb{
	position: relative;
	border: 1px solid #f5f5f5;
	padding: 10px;
}
.article-thumb .aktuality_img a{
	width: 100%;
	position: relative;
	text-align:center;
}
.mobile-show{
	display: none !important;
}

.desktop-hide {
	display: none !important;
  }
  
  @media (max-width: 1272px) {
	.desktop-hide {
	  display: flex !important; /* or inline, flex, etc., depending on what you want */
	}
  }
  

/***********
RESPONSIVE
************/

@media screen and (max-width: 1270px){


#menu_top .nav li.lvl-1 > a:hover::before, #menu_top .nav li.lvl-1 > a.active::before {
    content: '';
    position: absolute;
    top: 0px;
    left: 8px;
    width: 96%;
    height: 2px;
    background-color: #94c15c;
}


.custom-list li::before {
	display: none;
}	
#stripe .container{
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#stripe .container > div{
	display: flex;
	align-items: center;
}
#stripe .container .logo{
	margin: 0;
}
#menu_top{
    position: static;
}
#menu_top .navbar-collapse {
    position: absolute;
    top: 100%;
    right: 0px;
	left: 0;
    background: #0c1d42;
	z-index: 5000;
}

.mobile-show{
	display: block;
}
.mobile-hide{
	display: none;
}
.mobile-show img{
	min-height: 50px;
}
.navbar-inner {
    width: 100%;
}
.nav{
	display: block;
	text-align: center !important;
}
.nav-header{
}
.navbar {
	height: auto;
}
.navbar-toggler {
    	display: block !important;
    	color: black;
	font-size: 22px;
   	vertical-align: middle;
    	outline: none !important;
    	line-height: 25px;
}
.navbar-toggler-icon {
    	font-size: 25px;
    	height: auto;
    	vertical-align: initial;
	margin-bottom: 0;
	color: black;
	width: auto;
}
.navbar-collapse.collapse:not(.show) {
    display: none;
    height: auto;
}

.nav li.lvl-1 a {
    display: block;
text-align: center;
}

header .nav li.lvl-1 a {
    display: block;
text-align: left;
}



.nav li.lvl-1:last-of-type{
	padding-left: 0;
}
.nav li.lvl-1:last-of-type a:before{
	display: none;
}
.dropdown-toggle::before{
	display: none;
}

}
@media screen and (max-width: 768px){
.article-thumb > .row{
	flex-direction: column-reverse;
}
.article-thumb > .row > .col{
	width: 100%;
	position: relative;
	flex-basis: 100%;
}
}

@media screen and (max-width: 900px){
.kategorie .toggler {
    display: block;
}
.navbar-toggler-icon {
    font-size: 22px;
    height: auto;
    vertical-align: initial;
    margin-bottom: 0;
    color: black;
    width: auto;
}
.left-col {
    width: 100%;
}
.col-main {
    width: 100%;
    max-width: 100%;
}
}

@media screen and (max-width: 800px){
	
.p-mobile-top-1{
	padding-top: 1rem;
}
.p-mobile-top-2{
	padding-top: 2rem;
}
.p-mobile-top-3{
	padding-top: 3rem;
}
.p-mobile-top-4{
	padding-top: 4rem;
}

.nav li.lvl-1 {
    display: block;
	padding-left: 1rem;    
	padding: 0;
}

footer_main .nav li.lvl-1{
text-align: center !important;

}


#aktuality_slide_box{
	display: block;
}
.archiv {
    position: relative;
    right: auto;
    top: auto;
    bottom: auto;
    display: block;
    padding: 1rem;
    padding-top: 0;
}
#aktuality_slide{
	max-width: 100%;
}
#nadpatickou .row .col{
	flex-basis: 100%;
	max-width: 100%;
	text-align: center !important;
}
#nadpatickou p{
	text-align: center;
}
#nadpatickou .col:nth-of-type(2) {
    border: none;
}
#stripe .tel i, #stripe .mail i{
	display: none;
}
#stripe .tel a, #stripe .mail a{
    overflow: hidden;
    content: '';
    color: transparent;
    height: 25px;
    width: 25px;
    display: block;
}
#stripe .tel a:before, #stripe .mail a:before {
    font-weight: 900;
    font-family: "Font Awesome 5 Free";
    display: inline-block;
    font-size: 20px;
    margin-right: 6px;
    color: black;
	line-height: 25px;
}
#stripe .tel a:before {
    content: '\f095';
}
#stripe .mail a:before {
    content: '\f2b6';
    font-weight: normal;
}
.caption p{
	font-size: 18px;
	line-height: 20px;
}
button#modal-launch, button#modal-launch-2{
	text-align: center;
}
.box_green button p{
	margin-right: 0;
	margin-bottom: 5px;
}

}
	
@media screen and (max-width: 640px){
#footer_text{
text-align:center;
}


}


.custom-list-item {
    display: flex;
    gap: 4px;
    margin-bottom: 1rem; /* same as mb-3 */
}

.list-icon {
    color: #95c15c;
    padding-top: 4px;
}

.underline-div {
    height: 1px;
    width: 10rem;
    background-color: #001d44;
    margin: 0 auto; /* centers the div horizontally */
}





    .carousel-wrapper {
        position: relative;
        width: 100%;
        display: flex;
        align-items: center;
        margin-top: 30px;
        justify-content: center;
        overflow: visible;
    }

    .carousel-container {
        position: relative;
        width: 80%;
        max-width: 1000px;
        margin: auto;
        overflow: hidden;
        border-radius: 10px;
        background: white;
    }

    .carousel-track {
        display: flex;
        transition: transform 0.5s ease-in-out;
    }

    .carousel-slide {
        min-width: calc(33.333%);
        /* Subtract total horizontal padding (10px on each side) */
        padding: 10px;
    }


    @media only screen and (max-width: 1250px) {
        .carousel-slide {
            min-width: calc(50%);
        }
    }

    @media only screen and (max-width: 700px) {
        .carousel-slide {
            min-width: calc(100%);
        }
    }


    .carousel-slide img {
        width: 100%;
        border-radius: 10px;
	 object-fit: cover;
    }

    .carousel-button {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        background: transparent;
        color: darkgray;
        border: none;

        cursor: pointer;
        z-index: 10;
        font-size: 30px;
    }

    .carousel-button:hover {
        color: black;
    }

    .carousel-button.prev {
        left: 15%;
    }

    .carousel-button.next {
        right: 15%;
    }

    @media only screen and (max-width: 1500px) {
        .carousel-button.prev {
            left: 5%;
        }

        .carousel-button.next {
            right: 5%;
        }
    }

/***********
Kamca
************/