/* Barvy 
#191C19 - black N10 
#184220 - Green Surface/Darker Green P20
#C50000 - Error Red
#767873 - Grays/N50
#C0C9BE - Outline Var NV80
#414940 - Surface/On Surface Var NV30
#00421C - Green
*/


/* CSS reset */
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;

}
html,body {
  margin:0;
  padding:0;
  font-family: 'Manrope';
  font-weight:500;
  font-size:16px;
  line-height:1.4em;
  background-color:white;
  color:#191C19;
  -webkit-text-size-adjust:100%;


}


html 		{ overflow-x:hidden;  }


h1, h2, h3, h4, h5, h6 { font-weight:500; }
a           { color:#191C19; text-decoration: none;}
a:focus		{ outline: none; -webkit-tap-highlight-color: transparent }

.clearboth  { clear: both; }
.floatleft  { float: left; }
.uppercase  { text-transform: uppercase; }
.capitalize { text-transform: capitalize; }
.black		{ color:black }
img         { border: none; }
p           { clear:both; }
ul          { margin:0; }
b           { font-weight:700 }
strong      { font-weight:700 }
hr          { height:1px; border:0; background-color: black; }
.tisic      { margin-left: 0.3em;	}
.nonselectable { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; 
				 -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none;}
.nopadding  { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
input,textarea,button { border:none; outline:none; resize:none; font-family: 'Manrope'; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
				-webkit-appearance: none; -webkit-border-radius:0px;  }
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
   -webkit-box-shadow: 0 0 0 1000px white inset !important;
}
.border4   { -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
.border8   { -webkit-border-radius:8px; -moz-border-radius:8px; border-radius:8px;  }
.border10  { -webkit-border-radius:10px; -moz-border-radius:10px; border-radius:10px;  }
.border16  { -webkit-border-radius:16px; -moz-border-radius:16px; border-radius:16px;  }
.border48  { -webkit-border-radius:48px; -moz-border-radius:48px; border-radius:48px;  }
.borderRounded { -webkit-border-radius:100%; -moz-border-radius:100%; border-radius:100%; }

.table-cell	{ display: table-cell; vertical-align: middle;  }

li 			{ list-style-position:outside;margin-left:40px   }

hr 			{ padding:0; margin:0; background-color:#404040; }

summary {
  list-style: none;        /* odstraní šipku v některých prohlížečích */
}


.textCenter		{  text-align:center; } 

main        { position: relative; display:block; width:100%; height:100%; overflow:hidden;}
nav         { position: relative; width:100%; margin-top:32px;  } 
.container  { display:block; width:calc(100% - 80px); max-width:1840px; margin:auto; }
.container-inner  { display:block; width:calc(100% - 56px); margin:auto;  }

.fontWeight400 { font-weight: 400; }
.fontWeight450 { font-weight: 450; }
.fontWeight550 { font-weight: 550; }
.fontWeight700 { font-weight: 700; }

.fontCaption 	{ font-size:16px; line-height:1.4em }
.fontText 		{ font-size:19px; line-height:1.4em }
.fontTextBig 	{ font-size:21px; line-height:1.35em; letter-spacing:-0.005em;  }
.fontPerex	 	{ font-size:24px; line-height:1.35em; letter-spacing:-0.02em; }

.font14 		{ font-size:14px; line-height:1.4em }
.font16			{ font-size:16px; line-height:1.4em }
.font18			{ font-size:18px; line-height:1.5em }
.font21	 		{ font-size:21px; line-height:1.35em; }
.font24	 		{ font-size:24px; line-height:1.35em; }
.font26			{ font-size:26px; line-height:1.25em; letter-spacing:-0.01em; }
.font32	 		{ font-size:32px; line-height:1.25em;  }
.font40	 		{ font-size:40px; line-height:1.25em; letter-spacing:-0.02em; }
.font48	 		{ font-size:48px; line-height:1.25em; letter-spacing:-0.02em; }
.font64	 		{ font-size:64px; line-height:1.1em; letter-spacing:-0.03em; }


h1	 			{ letter-spacing:0.01em; text-transform:uppercase; }
h2	 			{ font-size:40px; line-height:1.25em; letter-spacing:-0.02em; }
h3	 			{ font-size:32px; line-height:1.25em; letter-spacing:0.009em; }



.fontFlexible { font-family: 'Flexible'; font-variation-settings: "wdth" 200, "HGHT" 450;  }


.fontFlexible90 		{ font-size:90px; line-height:1em; letter-spacing:0.01em; }
.fontFlexible96 		{ font-size:96px; line-height:0.74em; letter-spacing:0.01em; }
.fontFlexible180		{ font-size:180px; line-height:0.6em; font-variation-settings: "wdth" 200, "HGHT" 400;  }


.bg-green-light1  	{ background-color:#F1F8F3 }
.bg-grays-N90		{ background-color:#E1E1E0 }
.bg-grays-N95		{ background-color: #EFEFEF;}


.gray-n50	 	{ color:#767873 }
.gray-n30	 	{ color:#464744 }
.green	 		{ color:#003917 }
.dark-green	 	{ color:#00421C }


.button {  display:inline-block; outline: none; -webkit-tap-highlight-color: transparent; font-size:21px; padding:13px 21px 13px 21px; 
		   letter-spacing:0.005em;  transition: background 0.2s ease;
		  -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; 
		  -moz-user-select: none; -ms-user-select: none; -o-user-select: none; user-select: none;
		  -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
		  -webkit-border-radius:48px; -moz-border-radius:48px; border-radius:48px;  }
/* Button Green	  */
.button-green 		{ border:solid 3px #00421C; background-color:#00421C; color:#fff; }
.button-green:hover { border:solid 3px #003917; background-color:#003917;  }
/* Button Green Border	  */
.button-greenBorder 		{ background-color:transparent; border:solid 3px #00421C; color:#00421C; }
.button-greenBorder:hover 	{ background-color:#00421C; color:#fff  }
/* Button Gray	  */
.button-gray 		{ border:solid 3px #9FA196; background-color:#9FA196; color:#fff; }
.button-gray:hover 	{ border:solid 3px #5F6466; background-color:#5F6466;  }
/* Button Gray Light	  */
.button-white 		{ border:solid 3px #fff; background-color:transparent; color:#fff; }
.button-white:hover 	{ background-color:#fff; color:#191C19  }
/* Button Blur	  */
.button-blur 		{ background:rgba(255, 255, 255, 0.2); color:#fff; backdrop-filter: blur(40px);  }
.button-blur:hover 	{ background:rgba(255, 255, 255, 0.4)  }
	




.logo		{ position:relative; float:left; width:249px; height:80px; display:table; margin-top:3px; z-index:2 } 
.logo img	{ float:left; width:100% } 
.logo2		{ position:absolute; top:0; left:0; width:100%; text-align:center; } 

.menu 		{ position:relative; float:right; color:#00421C; height:80px; margin-right:10px; z-index:10000 }
.menu a 	{ color:#00421C }
.menu-item 	{ display:inline-block; margin-left:20px; cursor:pointer; outline: none; -webkit-tap-highlight-color: transparent }
.menu-item img 	{ position:relative; display:inline-block; top:-2px; margin-left:8px; }
.menu-item.active img 	{ transform:rotate(180deg); }

.menu-close { display:none; position:absolute; top:24px; right:18px; z-index:10; cursor:pointer; outline: none; -webkit-tap-highlight-color: transparent;}

.language	{ display:inline-block; margin-left:20px; }
.language a	{ color:#717970 }
.language img	{ position:relative; display:inline-block; top:6px; margin-right:3px }

.logo-mobile { width:168px; display:none; margin-top:8px }
.logo-mobile img { float:left; width:100%; }
.header-hr-mobile { display:none; width:100%; margin:30px 0 24px 0; background-color:#C0C9BE; }
.submenu-mobile 	{ display:none; float:left; width:100%; margin-top:10px   }  
.submenu-mobile .font32 { font-size: 21px; font-weight: 500; }  
.submenu-mobile a 	{ float:left; margin-bottom:10px   }  

.menu-mobile { height:100%;  }
.menu-mobile2 { width:100%; height:100%;  display:table; }


.hamburger		{ display:none; position:relative; float:right; margin-left:24px; width:30px; height:16px;  cursor:pointer; z-index:100;
				  transform: rotate(0deg); transition: .5s ease-in-out; pointer-events:auto; outline: none; -webkit-tap-highlight-color: transparent; } 
.hamburger span { position:absolute; display:block; height:2px; width:100%; background:#353535; opacity:1; left:0; 
				  transition: width 0.5s ease-in-out, height 0.5s ease-in-out, left 0.5s ease-in-out, top 0.5s ease-in-out, transform 0.5s ease-in-out; }
.hamburger span:nth-child(1) { top: 0px; transform-origin: left center;}
.hamburger span:nth-child(2) { top: 8px; transform-origin: left center;}
.hamburger span:nth-child(3) { top: 16px; transform-origin: left center;}


.language-mobile { display:none; position:relative; float:right; text-transform:uppercase; margin-top:-1px; font-size: 14px; line-height: 1.4em; letter-spacing: 0.05em; }
.language-mobile a { color:#ABABA8 }


.submenu 			{ position:absolute; margin-top:30px; width:100%; height:0; background-color:rgba(20, 56, 27, 0.95); overflow:hidden; 
					  backdrop-filter: blur(10px); transition: height 0.5s cubic-bezier(.75,0,.25,1); z-index:1000 }
.submenu.active 	{  height:480px;  transition: height 1s cubic-bezier(0,.75,.25,1);  }
.submenu a 			{ color:#D7EFDD }
.submenu-flex 		{ display:flex; position:absolute; width: calc(100% - 136px); bottom:0; height:370px; }
.submenu-flex-item 	{ flex:0 calc(100%/4); border-right:1px solid rgba(255, 255, 255, 0.25); height:370px; }
.submenu-flex-item:last-child,
.submenu-flex-item:last-child .submenu-flex-item-outer 	{ border:0 }
.submenu-flex-item-outer { border-right:1px solid #fff; padding:0 20px; margin-right:-1px }
.submenu-flex-item:first-child .submenu-flex-item-outer { padding-left:0; }
.submenu-flex-item-title { position:relative; color:rgba(200, 234, 209, 0.5); letter-spacing:-0.02em; top:-8px }
.submenu-flex-item-inner { position:relative; max-width:280px;}
.submenu-flex-item:first-child .submenu-flex-item-inner { max-width:320px;}



.submenu-flex2		{ display:flex; position:absolute; width:100%; bottom:0; height:370px; color:#fff;}
.submenu-flex2 .submenu-flex-item-outer { float:left; border:0; }
.submenu-flex-item-outer2 { margin-left:-1px; border-left:1px solid #fff!important }
.submenu-flex2 a	{ clear:both; float:left; color:#D7EFDD; margin-bottom:12px }
.submenu-flex2 a:last-child	{ margin-bottom:0 }
.submenu-flex2-item 	{ flex:0 calc(100%/2); border-right:1px solid rgba(255, 255, 255, 0.25); height:370px; }
.submenu-flex2-item:last-child 	{ border:0 }
.submenu-flex2-text { padding-top:40px; max-width:531px; color:rgba(215, 239, 221, 1)}
.submenu-flex2 a.submenu-button { float:left; padding:8px 22px; margin-top:44px; margin-bottom:10px;letter-spacing:0.005em;  }


.content { margin-top:160px }



.slider 		{ position:relative; width:100%; height:300px; overflow:hidden; color:#191C19; margin-top:40px; margin-bottom:16px; }
.slider-left 	{ float:left; width:100%; max-width:500px; }
.slider-left h2 { max-width:250px }
.slider-right 	{ float:right; width:calc(100% - 600px); overflow:hidden;  }
.slider-right img { float:left; width:100%; height:480px; object-fit:cover;  }
.slider-rightA 	{ position:relative; float:left; width:50%; height:480px; }
.slider-rightB 	{ position:relative; float:left; width:50%; height:480px;  }


.slider-title 	{ margin-top:0; margin-bottom:40px   }
.slider-name 	{ margin-top:32px; letter-spacing:0; }
.slider-text-outer { position:relative; padding:20px 16px; border:solid 1px #C0C9BE; }
.slider-text-inner { float:left; width:calc(50% - 20px);color:#717970; }



.slider-text-right { position: absolute; right:20px; width:calc(50% - 20px); height:calc(100% - 32px); border-left:solid 1px #C0C9BE; }
.slider-text-logo {  width:100%; height:100%; display:table; }
.slider-text-logo img { float:right; width:100%; max-width:169px; height:auto; max-height:60px; object-fit:contain; object-position: right;}
.slider-position { letter-spacing:0.005em;    }

.slider-button-area { margin-top:30px; }
.slider-button 		{ display:inline-block; width:16px; height:16px; margin-right:24px; background-color:#C0C9BE; cursor:pointer;
					  transition:all 0.5s ease-in-out; text-align:left; overflow:hidden; outline: none; -webkit-tap-highlight-color: transparent  }
.slider-button.active { width:64px;  }
.slider-button-inside { opacity:0; width:0; height:16px; background-color: #00421C; transition:width 8s linear; vertical-align:top; }
.slider-button-inside.active  { opacity:1; width:100%; }


.animatedText {
    display: none;
    line-height: 0.5em;
    position: relative;
    overflow: hidden; /* Prevents overflow */
}
.box {
    display: none;
    line-height: 0.5em;
    position: relative;
    overflow: hidden; /* Prevents overflow */
}
.box1 { display:block; }


#animatedText1A .word, #animatedText1B .word, #animatedText1C .word {
    display:block;   
    transform: translateY(0);
    opacity:1
}


.word-wrapper {
    display: inline-block;
    white-space: nowrap;
    overflow: hidden;
}

.word-wrapper .word {
    padding-bottom: 0.03em; /* Adds a bit of padding to the bottom of each word */
	padding-top: 0.03em;
    display: inline-block;
    vertical-align: top;
}

.word {
    display: inline-block;
    opacity: 0;
    transform: translateY(100%);
    transition: opacity 0.4s ease, transform 0.4s ease;
    line-height: 1.2;
}
.word.visible {
    opacity: 1;
    transform: translateY(0);
}








.header		{ margin-top:100px }

.home-text { margin:80px auto 0 auto; max-width:768px; text-align:center; color:#00421C; letter-spacing:0 }
.home-button-outer { text-align:center; }
.home-button { margin-top:48px; padding: 13px 21px 13px 21px;  }
.homepage .next-services { margin-top:120px }


.home-info { background-color: #F1F8F3; margin-top:-170px; margin-bottom:120px; padding-top:240px; padding-bottom:60px; text-align:center; color:#00421C }
.numbers { display:flex; max-width:1450px;margin:auto;  }
.home-info-item { flex:1; display:flex; align-items: center; margin:0 10px }
.home-info-number { float:left; letter-spacing:-0.06em; font-feature-settings: 'tnum'; text-align:right; }
.home-info-number1 { width:158px }
.home-info-number2 { width:270px }
.home-info-number3 { width:220px }
.home-info-text { float:left; text-align:left; vertical-align:middle; margin:-3px 0 0 30px }
.home-info-text1 { max-width:258px }
.home-info-claim { max-width:867px; margin:160px auto 0 auto}

.home-info-button { margin-top:48px;}


.running-outer					{ margin-top:120px; }
.running						{ position: relative; text-transform:uppercase; width: 100vw; overflow: hidden;}
.tickerwrapper a { color:#003917 }
.tickerwrapper-nonslide 		{ position:absolute; background-color:#F1F8F3; height:41px; padding-left:60px; padding-right:30px; z-index:10 }
.tickerwrapper ul.list 			{ position:relative; display:inline-block; list-style:none; }
.tickerwrapper ul.list.cloned 	{ position:absolute; top:0; left:0; }
.tickerwrapper ul.list li 		{ float: left; padding:5px 12px; border:solid 1px #003917; margin:0 8px; color:#003917;
								  -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
								  -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px;  }

.running-mobile { display:none; flex-wrap: wrap; gap:8px 8px; justify-content:center; }
.runn 		{ display:inline-block; padding:5px 12px; border:solid 1px #003917; color:#003917;
			  -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
			  -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px;  }

.vision { position:relative; width:100%; height:900px; background:url(../images/jp.webp); background-size:cover; 
		  background-position:center top; color:#fff }
.vision-button { position:absolute; bottom:50px; right:50px; padding:17px 25px; }
.vision-text { float:left; width:100%; max-width:calc(50% - 24px); margin-left:10%; display:table; height:100% }
.vision-text1 { float:left; max-width:597px; margin-top:120px }
.vision-text2 { max-width:315px; margin:auto; margin-top:40px }

.other-sites	{ margin-top:24px; margin-bottom:80px; display:flex; gap:0 24px }
.other-sites-item	{ position:relative; flex:0 calc(100%/2); height:605px; color:#292929; overflow:hidden; padding:44px; }
.other-sites-item-bg	{ position:absolute; bottom:0; left:0; width:100%; height:100%; background-color: #EAF5ED}
.other-sites-item img 	{ position:absolute; top:0; left:0; height:100%; width:100%; object-fit:cover; object-position:center }
.other-sites-item .button { position:absolute; bottom:44px; left:30px; padding:19px 25px; z-index:100  }
.other-sites-inner { position:relative; z-index:100 }
.other-sites-text { margin-top:10px; max-width:520px; font-weight: 450; color:#003917 }
.other-sites-item .button.button-swi { padding:22px 24px }





/* IFM */

.ellipses { position:relative; margin:180px auto 300px auto; display:flex; max-width:1383px; z-index:10 }
.ellipse { position:relative; display:inline-block; flex:0 calc((100%/3) - 10px); aspect-ratio: 1; }
.ellipse svg { position:relative; transform:rotate(90deg) rotateX(180deg); width:calc(100% + 45px); height:calc(100% + 45px)}
.ellipse-inner { position:absolute; top:22px; left:22px;text-align:center; display:table; width:100%; height:100%;}
   
.ellipse-move {  opacity:0; transform: translateY(200px); transition: transform 1.3s ease-out; }

.ellipse:nth-child(2) .ellipse-move { transition-delay:0.5s; }
.ellipse:nth-child(3) .ellipse-move { transition-delay:1.0s; }


.ellipse-move2 {  transition-delay:0.25s; }
.ellipse:nth-child(2) .ellipse-move.ellipse-move2 { transition-delay:0.75s; }
.ellipse:nth-child(3) .ellipse-move.ellipse-move2 { transition-delay:1.20s; }


.ellipse-number { color:#ABABA8 }
.ellipse-title { color:#00421C }
.ellipse-text { max-width:200px; margin:auto; margin-top:24px }


.ellipse path	{   
  stroke-dasharray: 1560;
  stroke-dashoffset: 1560;
  animation: animateDash 2.5s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  display:block!important;

}

.ellipse:nth-child(1) path { animation-delay: 1s; }
.ellipse:nth-child(2) path { animation-delay: 1.3s; }
.ellipse:nth-child(3) path { animation-delay: 1.6s; }


@keyframes animateDash {

  to {
    stroke-dashoffset: 0;
  }

}





.background-ellipse { position:absolute; background-color:#EAF5ED; width:calc(100% + 320px); aspect-ratio:1; margin-left:-160px; filter: blur(300px); }


.cyrcle 	{ position:absolute; border:solid 1px #00421C; aspect-ratio:1; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }


.ifm-claim { position:relative; float:left; color:#003917 }
.ifm-claim-right { float:right; }
.ifm-claim .ifm-claim-text { margin-top:40px; letter-spacing: 0.005em;}

.animation1 { position:relative; float:left; margin-top:-100px  }

.ifm-claim1 .ifm-claim-text { max-width:610px;}
.cyrcle1 { width:600px; margin-top:120px }
.cyrcle2 { width:365px; margin-left:250px }
.cyrcle3 { width:156px; margin-left:522px }


.animation2 { position:relative; margin-top:520px  }
.animation2 .cyrcle {  margin:auto; left:0; right:0; }
.ifm-claim2 { margin-top:500px }
.ifm-claim2 .ifm-claim-text { max-width:600px; }
.cyrcle4 { width:605px; margin-top:0 }
.cyrcle5 { width:365px; top:calc((605px/2) - (365px/2)); }
.cyrcle6 { width:156px; top:calc((605px/2) - (156px/2)); }
.cyrcle7 { width:44px; top:calc((605px/2) - (44px/2)); background-color:#00421C; }



.animation3 { position:relative; margin-top:400px  }
.animation3 .cyrcle {  margin:auto; left:0; right:0; margin-top:0; }
.ifm-claim3 { margin-top:300px; margin-bottom:300px }
.ifm-claim3 .ifm-claim-text { max-width:610px;}
.cyrcle8 { width:102px; background-color:#00421C; }
.cyrcle9 { width:64px; top:-152px; left:152px!important }
.cyrcle10 { width:39px; top:-32px; left:-300px!important }
.cyrcle11 { width:11px; top:-5px; left:198px!important  }
.cyrcle12 { width:21px; top:20px; left:-200px!important  }
.cyrcle13 { width:37px; top:78px; left:362px!important  }
.cyrcle14 { width:57px; top:170px; left:0!important  }



.reference  { margin-top:180px; margin-bottom:120px; display:flex; gap:48px; justify-content: space-around; align-items: center; flex-wrap: wrap }
.reference img { max-width:180px; max-height:50px; }


.next-services	{ margin-top:60px; margin-bottom:80px; display:flex; flex-wrap: wrap; gap:0 24px }
.next-services-item	{ position:relative; flex:0 calc((100%/3) - 16px); height:763px; color:#fff; overflow:hidden; padding:30px;  border:solid 1px transparent; }
.next-services-item-bg	{ position:absolute; bottom:-100%; left:0; width:100%; height:100%; background-color: #F5F5F5; 
						  transition: all 1s cubic-bezier(0.25, 1, 0.5, 1); z-index:10}
.next-services-item img 	{ position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; object-position:center }
.next-services-item .button { position:absolute; bottom:50px; left:30px; background-color:rgba(25, 28, 25, 0.4); backdrop-filter: blur(40px); 
							  color:#fff; padding:21px 25px; z-index:100  }
.next-services-filter { position:absolute; top:0; left:0; width:100%; height:100%; background-color:rgba(0,0,0,0.2); z-index:1 }
.next-services-inner { position:relative; z-index:100 }
.next-services-title { letter-spacing:-0.02em; }
.next-services-text { max-width:303px; margin-top:8px; }
.next-services-inner-hide { opacity:0; position:absolute; left:30px; bottom:170px; z-index:100; /*transition: all 0s ease; transition-delay:0s;*/ }
.next-services-tag { display:inline-block; color:#003917; background-color: transparent; border:solid 1px #003917; padding:6px 12px; margin:8px 8px 0 0}
.next-services-tag:hover { background-color:#00421C; color:#fff }
.next-services-perex { margin-top:30px; max-width:479px; width:calc(100% - 60px) }


.next-services-item:hover { border:solid 1px #C0C9BE; }
.next-services-item:hover .next-services-title{ transition: all 1s cubic-bezier(0.25, 1, 0.5, 1); transition-delay: 400ms; color:#191C19; }
.next-services-item:hover .next-services-text{ transition: all 1s cubic-bezier(0.25, 1, 0.5, 1); transition-delay: 400ms; color:#191C19; }
.next-services-item:hover .next-services-inner-hide{ transition:all 0.5s cubic-bezier(0.25, 1, 0.5, 1); transition-delay: 400ms; opacity:1;z-index:12 }
.next-services-item:hover .next-services-perex{ opacity:1; color:#191C19; }
.next-services-item:hover .button{ background-color:#00421C; backdrop-filter:unset }
.next-services-item:hover .next-services-item-bg{ bottom:0;  }
/*.next-services-item:hover  .next-services-inner-hide { transition: all 1s ease;  }*/




.ifm-solution { max-width:1080px; margin:auto; margin-top:180px; text-align:center; }
.ifm-solution-more { margin-top:70px; margin-bottom:200px; }

.ifm-info { margin:48px auto 80px auto; max-width:768px; text-align:center; }
.ifm-scroll { position:relative; margin-top:200px; text-align:center; color:#717970 }
.ifm-scroll-text1 { position:absolute; top:20px; left:0; right:120px; margin:auto }
.ifm-scroll-text2 { position:absolute; top:20px; left:120px; right:0; margin:auto }

.services h1 { text-transform:initial; }
.services-text { margin:48px auto 80px auto; max-width:832px; text-align:center; }
.services-img img { float:left; width:100%; -webkit-border-radius:8px; -moz-border-radius:8px; border-radius:8px; }
.services hr { background-color: transparent; margin:120px 0 80px 0; }

.services-img-mobile { display:none; }
.services-img-mobile  img { float:left; width:100%; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }

.faqs				{ margin:120px auto 0 auto; max-width:868px; }
.faqs-item			{ padding:24px 0; cursor:pointer; border-top:solid 1px #C0C9BE; outline: none; -webkit-tap-highlight-color: transparent }
.faqs-title			{ position:relative; width:calc(100%); color:#00421C; }
.faqs-title-text  	{ float:left; width:calc(100% - 180px); max-width:570px; margin-top:5px;  }
.faqs-text			{ color:#191C19 }
.faqs-text-text  	{ float:left; width:calc(100% - 154px); margin:40px 0 30px 0 }
.faqs-text-text a 	{ font-weight: 700; }
.faqs-arrow			{ position: absolute; margin-top:4px; right: 0; width:48px; height:48px; background: url(../images/keyboard_arrow_down.svg); background-size: 48px; }
details[open] .faqs-arrow { transform: rotate(180deg); }

.material-icons		{ font-family: 'Material Symbols Outlined'; font-variation-settings:'FILL' 0,'wght' 300,'GRAD' 0,'opsz' 48; 
					  float:left; margin-top:5px; margin-left:5px; margin-right:60px; font-size: 48px; width:40px;  }
.faqs-shield-empty	{ float:left; width:108px; height:10px; }
.faqs-tags			{ margin-top:30px; }
.faqs-tag			{ float:left; background-color: #D7EFDD; color:#003917; padding:8px 16px; margin-top:8px; margin-right:8px;
					  -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; height: max-content; font-variant-numeric: tabular-nums; }
.faqs-tag-item 		{ display:flex; }

.faqs-energy		{  border-bottom:solid 1px #C0C9BE;  }

.faqs2				{ max-width:calc(100% - 90px);}
.faqs2-cat			{ float:left; width:calc(50% - 20px) }
.faqs2-cat-title	{ float:left; color:#767873; margin-bottom:10px }
.faqs2-items 		{ float:left; width:calc(50% - 20px); margin-top:80px; margin-left:40px; }
.faqs2-items-inner 		{ border-bottom:solid 1px #C0C9BE }
.faqs2-category 	{ clear:both; float:left; color:#ABABA8; cursor:pointer; outline: none; -webkit-tap-highlight-color: transparent }
.faqs2-category.active 	{ color:#00421C; }
.faqs2-cat-number 	{ float:left; width:70px }
.faqs2-cat-text		{ float:left; width:calc(100% - 70px) }
.faqs2-item			{ display:none; }

.substitute 		{ background-color:#EAF5ED; padding:32px; color:#003917; margin-top:40px; display:flex; flex-wrap: nowrap; }
.substitute-title 	{ /*flex: none;*/ margin-right:40px }
.substitute-title-cs 	{ flex: none; }

.substitute-mobile { display:none; }

.faqs2-category-mobile { display: none; padding-left:24px; padding-top:48px; padding-bottom:24px; font-size:21px; color:#767873; border-top:solid 1px #C0C9BE }
.faqs2-category-mobile:first-child { border-top:0 }

.faqs2-item.active		{ display:block; }


.contact { max-width:1165px; margin:auto; background-color:#EAF5ED; padding:95px 80px 95px 80px; color:#003917 }
.contact a { color:#003917 }
.contact-img { float:left; width:172px; height:200px; display:table; }
.contact img { float:left; width:100%; aspect-ratio:1; object-fit:cover; object-position:top; }
.contact-left { float:left; margin-left:60px; max-width:271px; height:200px; display:table; }
.contact-right { float:right; max-width:420px; margin-left:70px; height:200px; display:table; }
.menu-underline { display:none; }

.ifm { margin-top:120px; border:solid 1px #C0C9BE; padding:80px }
.ifm-title { float:left; max-width:455px; margin-top:-16px; margin-bottom:12px; font-variation-settings: "wdth" 200, "HGHT" 500; }
.ifm-text { float:left; margin-top:30px; margin-left:120px }
.ifm-button { float:right; margin-top:42px; }



.next-services2	{ margin-top:24px }
.next-services2-item	{ flex:0 calc((100%/2 - 12px)); height:605px; }
.next-services2 .next-services-inner-hide { bottom: 160px; }
.next-services2 .next-services-perex { max-width:615px; }

.contact-title 		{ margin-top:140px; margin-bottom:120px; text-align:center; color:#00421C; text-transform:inherit; }

.hotline { max-width:1165px; margin:auto; margin-top:180px; margin-bottom:24px; background-color:#F5F5F5; padding:40px; 
		   color:#414940 }
.hotline a { color:#414940 }
.hotline-left { float:left; margin-top:5px; max-width:325px; }
.hotline-right { float:right;  }


.reception-flex				{ position:relative; width:100%; display:flex; gap:100px; margin-bottom:120px; color:#00421C }
.reception-flex a 			{ color:#00421C  }
.reception-flex-item 		{ flex:0 calc((100%/2));  }
.reception-flex-item-title 	{ margin-bottom:10px  }
.reception-flex-item-abs 	{ position:absolute; bottom:0 }
.reception-flex-item-contact{ margin-bottom:10px }
.reception-flex2			{ position:relative; width:100%; display:flex; gap:20px;  }
.reception-flex2-item 		{ flex:0 calc((100%/2));  }


.contact-photo 				{ position:relative; margin-top:120px; height:1035px; padding:40px; }
.contact-photo img			{ position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover }
.centrals					{ position:relative; float:right; background-color:#EAF5ED; width:571px; height:241px; padding:32px; color:#00421C }
.centrals a					{ color:#00421C }
.centrals-abs				{ position:absolute; left:32px; bottom:32px; width:calc(100% - 64px) }
.branches-outer				{ position:relative; float:right; width:571px; height:690px; margin-top:24px;  }
.branches					{ position:relative; background-color:#FFFFFF; width:100%; height:100%; padding:32px;
							  color:#414940; overflow-y:scroll; scrollbar-width: none; }
.branches::-webkit-scrollbar { display:none; }
.branches a					{ color:#414940 }
.branches-item 				{ margin-bottom:50px; }
.branches-item:last-child	{ margin-bottom:0; }
.branches-item-text 		{ margin-top:32px; }
.branches-item-first-1 		{ display:none; } 	

.branches-scrollbar-container { position: absolute; right:0; width:8px; height:calc(100% - 48px); margin: 24px 24px; box-sizing: border-box; z-index:10}
.branches-scrollbar-track 	{ position: relative; width: 8px; height: 100%; background-color: #ccc;}
.branches-scrollbar-thumb 	{ position: absolute; width: 8px; background-color: #000; top: 0; left: 0; cursor: pointer; transition: background-color 0.3s;}





.billing-title 				{ margin-top:120px; margin-bottom:80px; text-align:center; color:#00421C }
.billing-flex 				{ width:100%; display:flex; gap:24px; flex-wrap: wrap; margin-bottom:120px; }
.billing-flex-item 			{ flex:0 calc((100%/4) - 18px); color:#414940; border:solid 1px #C0C9BE; padding:40px }
.billing-flex-item-title 	{ margin-bottom:10px }




/* About us */
.about-us				{ max-width:868px; margin:auto }
.about-us-title 		{ margin-top:140px; margin-bottom:44px; text-align:left; color:#00421C; text-transform:inherit; }
.about-us a 			{ border-bottom: 1px dashed #00421C; color:#00421C }
.about-us-info 			{ margin-top:160px; margin-bottom: 120px; text-align: center; color: #00421C; }

.about-us-photo 		{ position:relative; background-image:url(../images/map.webp); background-repeat:no-repeat; margin-top:120px; height:1035px;
						  padding:40px; background-color:#E1E1E0; color:#00421C;
						  background-size:1496px; background-position:0 -100px; }

.about-us-point			{ cursor:pointer; outline: none; -webkit-tap-highlight-color: transparent; }
.about-us-point img		{ position:relative; float:left; width:24px;  }
.about-us-point-text    { float:left; margin-left:17px; max-width: 100px; margin-top:-3px }
.about-us-point-praha   { position:absolute; top: 540px; left: 290px; }
.about-us-point-praha  img		{ width:36px  }
.about-us-point-praha .about-us-point-text    { margin-left:20px; margin-top:2px }
.about-us-point-ceske-budejovice   { position:absolute; top: 751px; left: 280px; }
.about-us-point-brno   { position:absolute; top: 712px; left: 560px;  }
.about-us-point-ostrava   { position:absolute; top: 600px; left: 734px; }
.about-us-point-bratislava   { position:absolute; top: 900px; left: 648px; }
.about-us-point-varsava   { position:absolute; top: 98px; left: 1057px; }
.about-us-point-varsava .about-us-point-text    { margin-left:-120px;  }



.overlay-about-us { top:0; background:rgba(0,0,0,0.3); }
.overlay-about-us-container { width:100%; max-width:960px; height:100%; margin:auto; display:table; }
.overlay-about-us-inner { position:relative; background-color:#fff; width:calc(100% - 32px); max-width:960px; margin:auto; color:#414940; 
						  padding:32px; animation:scaleOut 0.5s ease-in-out	forwards; }
.overlay-about-us-inner.active { animation:scaleIn 0.2s ease-in-out	forwards; }
.overlay-about-us-inner a { color:#414940; border-bottom:0.1em solid #414940 }
.overlay-about-us-close { position:absolute; right:32px; cursor:pointer; }
.overlay-about-us-name,
.overlay-about-us-function { width:calc(100% - 20px); }
.overlay-about-us-text { margin-top:100px; width:100%; }

@keyframes scaleIn {
  0% {
    transform: scale(0.5);
  }
  100% {
    transform: scale(1);
  }
}
@keyframes scaleOut {
  from {
    transform: scale(1);
  }
  to {
    transform: scale(0);
  }
}

.team-title { text-align:center; margin-top:120px; margin-bottom:80px }


.drag-box { position: absolute; opacity:0; margin-top:5px; margin-left:50px; color: #fff; pointer-events: none; transition: opacity 0.2s ease; z-index:100 }


.dragscroll-outer	{ position:relative; overflow-x:visible; overflow-y:hidden; margin:40px 0 0 0; scrollbar-width: none; cursor:grab;}
.dragscroll-outer .dragscroll-inner { width:20000px }  /* Podle počtu */

.gallery-scroll		{ padding-bottom:24px; display: flex; flex-wrap: wrap; gap:0 16px; }
.gallery-scroll img	{ float:left; width:100%; flex:0 calc((100%/15) - 8px);  }

.dragscroll-outer::-webkit-scrollbar { display:none; }

.custom-scrollbar-container { width: calc(100% - 48px); margin: 0 24px; box-sizing: border-box;}
.custom-scrollbar-track 	{ position: relative; width: 100%; height: 8px; background-color: #ccc;}
.custom-scrollbar-thumb 	{ position: absolute; height: 8px; background-color: #000; top: 0; left: 0; cursor: pointer; transition: background-color 0.3s;}

.gallery-scroll-cont	{ position:relative; width:100%; text-align:center; margin:40px 0 120px 0}
.gallery-scroll-button	{ position:absolute; width:72px; height:72px; background: url(../images/slider.svg?rand=1); cursor:pointer; z-index:10;}
.gallery-scroll-button:hover { background-image: url(../images/slider-active.svg?rand=1); transform:rotate(180deg) }

.gallery-scroll-prev	{ position:relative; display:inline-block; margin:auto 7px; }
.gallery-scroll-next	{ position:relative; display:inline-block; margin:auto 7px; transform:rotate(180deg)}

.gallery-scroll-button.gallery-scroll-next:hover  { transform:rotate(0) }

.gallery-scroll .scroll-item				{ position:relative; float:left; width:100%; max-width:350px; }
.gallery-scroll .scroll-item:first-child	{ margin-left:80px; }
.gallery-scroll .scroll-item:last-child		{ margin-right:24px; }
.gallery-scroll .scroll-item img			{ width:100%; height:490px; object-fit:cover; object-position:top; }


.name h2 { margin-top:16px; font-weight: 700; } 



.certification { max-width:868px; margin:auto }
.certification hr { background-color:#C0C9BE;  }
.certification .faqs { margin-top:80px; }
.certification .faqs-text-text { margin-bottom:0}
.certification .faqs-tag-item { margin-bottom:21px; }
.certification .faqs-tag { flex: none; float:none; margin-top: -7px; margin-right:24px; color:#003917 }




.panels-flex		{ width:100%; display:flex; gap:0 24px; flex-wrap: wrap; margin-bottom:120px; }
.panels-flex-item 	{ flex:0 calc((100% - 757px - 24px)); padding:32px;  }
.panels-flex-item1 	{ background:url(../images/mills.webp); background-size:cover; height:720px }
.panels-flex-item2 	{ flex:0 757px; padding:0 }
.panels-flex-item2-box1 { position:relative; background-color: #EAF5ED;  height:348px; padding:32px}
.panels-flex-item2-box2 { position:relative; background:url(../images/people.webp); background-size:cover; padding:32px; height:348px; 
						  margin-top:24px; color:#fff;}
.panels-text 			{ position:absolute; bottom:32px; width: calc(100% - 60px);  }
.panels-flex-item1-title { max-width:627px }
.panels-flex-item2-box1-title { max-width:350px }
.panels-flex-item2-box2-title { max-width:261px; }

.panels-flex-item2-box1 .panels-text 		{ max-width:661px;  }
.panels-flex-item2-box2 .panels-text 		{ max-width:369px;  }





/* Industry */
.industry .contact 	{ margin-bottom:220px }

.industry-text 		{ max-width:868px; margin:auto; margin-top:120px; }
.industry-text a 	{ font-weight: 700; }



.industry-reference-flex 		{ width:100%; display:flex; gap:24px; flex-wrap: wrap; margin-top:120px; margin-bottom:24px; }
.industry-reference-flex-item 	{ position:relative; flex:0 calc((100%/3) - 18px); background-color:#F1F8F3; color:#00421C; height:250px; 
								  padding:40px }
.industry-reference-flex-item-text 	{ max-width:467px }
.industry-reference-flex-item-img 	{ position:absolute; bottom:40px; width:calc(100% - 48px) }
.industry-reference-flex-item-img img 	{ position:absolute; bottom:0; max-width:100% }
			
.industry-img		{ overflow:hidden; margin-top:120px; }	
.industry-img img 	{ float:left; width:100%;  }	
.industry-img-alt	{ margin-top:8px; }	
				

.industry-services-title { max-width:500px; margin:auto; margin-top:120px; margin-bottom:80px; text-align:center; }

.industry-services-flex			  { width:100%; display:flex; gap:24px; flex-wrap: wrap; margin-bottom:120px;  }
.industry-services-flex-justifyCenter		  { justify-content:center; }
.industry-services-flex-item 	  { position:relative; flex:0 calc((100%/4) - 18px); background-color:#F5F5F5; height:240px; padding:40px }
.industry-services-flex-item .material-icons 	  { color:#414940 }

.industry-services-flex-item-text { position:absolute; bottom:40px; color:#414940; width:calc(100% - 80px) }
.industry-services-shield		  { float:left; width:48px; height:48px; }

.industry-services-flex-item:hover {  background-color:#EAF5ED }
.industry-services-flex-item:hover .material-icons 	  { color:#003917 }

.industry-services-arrow		  { float:left; width:48px; height:48px; background: url(../images/arrow_outward.svg); background-size:48px; }
.industry-services-flex-item-link 	  { background-color:#EAF5ED }


.reference2  { margin-top:80px; margin-bottom:120px }
.reference2 img { float:left; width:100%  }



/* ID CARD */

.id-card			{ max-width:868px; margin:auto; text-align:center; }
.id-card-title 		{ margin-top:140px; margin-bottom:44px; color:#00421C; text-transform:inherit; }
.id-hotline 		{ max-width:1165px; margin:auto; margin-top:120px; margin-bottom:24px; background-color:#F5F5F5; padding:40px; color:#414940 }
.id-hotline a 		{ color:#414940 }
.id-hotline-left 	{ float:left; margin-top:5px; max-width:550px; }
.id-hotline-right 	{ float:right;  }
.id-photo			{ max-width:1165px; margin:auto; overflow:hidden; margin-bottom:120px }
.id-photo img		{ float:left; width:100% }


.footer { background-color:#F5F5F5; padding:80px 0 }
.footer a { position:relative; }
.footer1 { float:left; width:100%; max-width:350px }
.footer2 { float:left; width:100%; max-width:282px;  }
.footer-right { float:right; width:564px; }
.footer3 { float:left; width:100%; max-width:282px; padding-right:50px; }
.footer4 { float:left; width:100%; max-width:282px; padding-right:50px; }

.footer-title 	{ color:#767774 }
.footer-contact { margin-top:24px}
.footer-links	{ margin-top:24px}

.footer2-link { float:left; margin-top:16px; margin-bottom:30px  }
.footer2-link a:hover { border:0 }
.footer2-link-text { position:relative; display:inline-block; margin-left:24px; top:-3px }


.footer-underline { border-top:1px solid #717970; margin-top:120px; padding-top:30px; color:#414940 }
.footer-underline a { color:#414940 }
.footer-underline-item { float:left; margin-right:30px; margin-bottom:16px; cursor:pointer; }
.footer-underline-item img { position:relative; top:1px; margin-left:6px; cursor:pointer; }
.footer-underline-item-right { float:right; margin-right:0; }

.footer-office-hide { display:none; }


.about-cookies { position:relative; outline: none; -webkit-tap-highlight-color: transparent }






.uline {
    background-image: linear-gradient(currentColor, currentColor);
	padding-bottom:2px;
	background-size: 0 0.08em;
    background-position: 0 calc(100%);
    background-repeat: no-repeat;
    transition: all 0.75s cubic-bezier(0.19, 1, 0.22, 1);
}


.uline:hover {
   background-size: 100% 0.08em; /* Plná délka podtržení */
}



.notification { float:left; color:#00421C; margin-top:120px; padding-bottom:0; text-align:center; }
.notification h1 { text-transform: inherit; }
.notification-text {  margin-top:48px; }

.notification-download		{ max-width:1165px; margin:auto; margin-top:120px; margin-bottom:24px; background-color:#F5F5F5; padding:40px; color:#414940 }
.notification-download-left 	{ float:left; margin-top:5px; max-width:400px; }
.notification-download-right 	{ float:right; margin-top:10px; }
.notification-download-right a	{ color:#414940 }
.notification-download-right img	{ position:relative; top:9px; margin-left:5px }


.notification-works		{ max-width:868px; margin:auto; margin-top:120px; }
.notification-works h2 { color:#00421C; text-align:center; margin-bottom:40px; }
.notification-works-item { padding:24px 0; border-top:1px solid #C0C9BE }
.notification-works-item:last-child { border-bottom:1px solid #C0C9BE }
.notification-works-item-number-cont { display:flex; align-items: center; gap:0 24px }
.notification-works-item-number { width:48px; height:48px; }
.notification-works-item-number-table { color:#fff; width:48px; height:48px; display:table; text-align:center; background-color:#00421C; }
.notification-works-item-text { display:inline-block; width:calc(100% - 48px) }

.notification-form		{ max-width:868px; margin:auto; margin-top:120px; }
.notification-form h2 { color:#00421C; text-align:center; margin-bottom:40px; }



.error404-detail {
    position: relative;
    display: block;
    width: calc(100% - 56px);
    max-width: 1080px;
    margin: auto;
}

.error404 { float:left; color:#00421C; margin-top:120px; padding-bottom:0; text-align:center; width:100% }
.error404 h1 { text-transform: inherit; }
.error404-text { margin:160px 0 48px 0; }
.error404-center	{  text-align:center; }
.error404-info-button	{  margin:24px 0 200px 0  }


.container-detail {
    position: relative;
    display: block;
    width: calc(100% - 56px);
    max-width: 868px;
    margin: auto;
}

.gdpr2 { float:left; color:#00421C; margin-top:120px; padding-bottom:80px }
.gdpr2 h1 { text-transform: inherit; }
.gdpr2-text {  margin-bottom:120px; }
.gdpr2-text a { color:#00421C; }


.gdpr2-text ol li { counter-increment: list-item; display: table-row; }
.gdpr2-text ol li::before {
  content: counter(list-item, number) ".\a0";
  display: table-cell;
  text-align: right;
  padding-right:5px
}
.gdpr2-text ol[type="a"] li::before  {   content: counter(list-item, lower-alpha) ".\a0"; }




/* Cookies */


.gdpr				{ position:fixed; bottom: 24px; width:calc(100%); right:0px;  margin:auto; z-index:101; color:#333333 }
.gdpr-y				{ position:relative; max-height:calc(100vh - 160px); background: rgba(234, 245, 237, 0.95); padding:48px; text-align: center; overflow:hidden;  }
.gdpr-close			{ position:absolute; top:0; right:0; background:url(../images/zavrit.svg); width:30px; height:30px; background-size:30px 30px; cursor:pointer; margin:24px; }
.gdpr-nadpis		{ width:calc(100% - 80px) }
.gdpr-text			{ text-align:left; margin-bottom:40px; padding-right:40px; max-width:902px; }
.gdpr-text a		{ color: #00421C; border-bottom:1px solid #191C19; }
.gdpr-buttons  		{ float:right }
.gdpr .button 		{ color: #00421C; margin-left:12px; cursor:pointer; padding:14px 22px; border:solid 3px #00421C; text-shadow:none; 
					  letter-spacing: 0.005em;  transition: background 0.2s ease;}

.gdpr-left { float:left; width:calc(50% - 40px); margin-right:40px; text-align:left;}
.gdpr-right { float:left; width:50%;  }

.gdpr .button.gdpr-odmitnout:hover		{ background:#00421C; color:#fff;  }
 
.gdpr .button.gdpr-prijmout		{ background:#00421C; color:#fff;}
.gdpr .button.gdpr-prijmout:hover { background:#003516; }

.gdpr-button		{ float:left; margin-top:20px!important; cursor:pointer}

.gdpr-nastaveni 	{ float:left; border-bottom:solid 2px #191C19; cursor:pointer; margin-top:38px; color:#003917 }


.overlay		{ display:none; position:fixed; width:100%; height:100vh; z-index:10001;    }
.overlay-gdpr 	{ top:0; background:rgba(0,0,0,0.75); }



.gdpr-info			{ position:fixed; top:0; width:100%; max-width:500px; height:100%; right:-500px; background:rgba(234, 245, 237, 0.95);
					  color:#414940; overflow-y:auto; z-index:100000000; }
.gdpr-info-prostor  { position: relative; width: 100%; padding:24px; min-height:calc(100% - 120px); } 

.gdpr-info-close	{ position:absolute; right:24px; margin-left:24px; width:40px; height:40px; cursor:pointer; z-index:10000;
				  	  transform: rotate(0deg); transition: .5s ease-in-out; pointer-events:auto; } 
.gdpr-info-close span { position:absolute; display:block; height:2px; width:100%; background:#414940; opacity:1; left:0;  
				  	 	transition: width 0.25s ease-in-out, height 0.25s ease-in-out, left 0.25s ease-in-out, top 0.25s ease-in-out, transform 0.25s ease-in-out; }

.gdpr-info-close span:nth-child(1) { top: 16px; left: 3px; transform: rotate(45deg);}
.gdpr-info-close span:nth-child(2) { top: 16px; left: 3px; transform: rotate(-45deg);}
.gdpr-info hr		{ background:rgba(234, 245, 237, 0.95); margin-top:10px; height:1px }
.gdpr-info-nadpis	{ margin-top:20px;  }

.gdpr-subnadpis		{ margin:30px 0 20px 0 }
.gdpr-info-uvod-text{ margin:24px 70px 30px 0; }
.gdpr-info-polozka	{ background:transparent; border-bottom:1px solid #414940; border-top:1px solid #414940; margin-bottom:16px }
.gdpr-info-button	{ margin:0 0 30px 0  }
.gdpr-info-checkbox input[type="checkbox"]  { position:absolute; opacity:0; cursor:pointer; border:0; width:0; height:0; padding:0; outline: none; }
.gdpr-info-checkbox input[type="checkbox"] + label	{ float:right; cursor:pointer; width:48px; height:24px; margin-top:19px; margin-right:15px; 
													  background:url(../images/checkbox-cookie.svg?rand=1); 
													  background-size:96px 24px; outline: none;  } 
.gdpr-info-checkbox input[type="checkbox"]:checked + label  { background-position: -48px  }
.gdpr-info-click	{ float:left; width:calc(100% - 158px); cursor:pointer; margin-bottom:18px}
.gdpr-info-click-aktivni	{ width:calc(100% - 150px); }
.gdpr-info-minus	{ display:none; float:left; background:url(../images/arrow-cookie.svg); background-size:24px 24px; width:24px; height:24px; margin-left:12px; transform: rotate(-180deg); margin-top:18px }
.gdpr-info-plus		{ float:left; background:url(../images/arrow-cookie.svg); background-size:24px 24px; width:24px; height:24px; margin-left:12px; margin-top:18px; }
.gdpr-info-cookies	{ float:left; width:calc(100% - 70px); margin:20px 0 0 20px;}

.gdpr-info-vyp-zap	{ float:right; margin:20px 8px 0 0 }
.gdpr-info-zap		{ display:none;  }

.gdpr-info-aktivni	{ float:right; margin-top:20px; margin-right:15px; color: #414940;}
.gdpr-info-text		{ display:none; margin:10px 0 30px 0; padding:12px }
.gdpr-info-text.font18		{ line-height:1.35em }
.gdpr-info hr		{ margin-bottom:16px }
.gdpr-info-potvrdit { float:none; margin:50px auto 30px auto; width:180px; text-align:center;}

.gdpr-souhlas-desktop	{ position: sticky; width:100%; height:120px; bottom:0px; padding: 24px 0;  text-align:center; }

.gdpr-info .button {  margin-right:12px; cursor:pointer; padding:0; text-shadow:none; color:#414940; transition: background 0.2s ease; }

.gdpr-prijmout2	{ background:#414940; border:solid 1px #414940; color:#fff; margin-left:12px;}
.gdpr-info .button.gdpr-potvrdit	{ float:none; display:inline-block; background:#00421C; color:#fff; padding:14px 22px; letter-spacing: 0.005em;  }
.gdpr-info .button.gdpr-potvrdit:hover	{ background:#003516;   }



/* Formulář */
.container-form { position:relative; max-width:868px; margin:auto; color:#00421C }
.form-title		{ text-align:center; margin:160px 0 30px 0 }
.form			{ margin-bottom:160px }

.form-blick 	{ width:100%; display: flex; flex-wrap: wrap; justify-content: left; gap:24px; margin-bottom:30px }
.form-blick.active 	{ animation: 2s blink ease  }
.floatleft .form-blick 	{ display:inherit; }
.form-item 		{ position:relative; flex: 0 calc((100%/2) - 12px); }
.form-item2		{ position:relative; flex: 0 100% }
.form input,
.form textarea	{ width:100%; padding:15px 15px; font-size:21px; letter-spacing:-0.005em; margin-top:8px; border:solid 1px #C0C9BE; color:#00421C;
				  -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px;  }
.form textarea	{ height:176px }
.form input:focus,
.form textarea:focus	{ border:solid 1px #717970;  }
.form-label.error,
.form input.error { color:#BA1A1A }

.form-label-error { display:none; color:#BA1A1A }

.form input[type="checkbox"]  { position:absolute; opacity:0; cursor:pointer; border:0; width:0; height:0; padding:0; outline: none; 
								-webkit-tap-highlight-color: transparent;}
.form input[type="checkbox"] + label 	{ width:30px; height:30px; background:white; padding:0; display:inline-block; color:#000; border:solid 1px #717970;
										  cursor:pointer; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px;   } 
.form input[type="checkbox"]:hover + label 	  { border-color:#003917; background:#EAF5ED } 
.form input[type="checkbox"]:checked + label  { border-color:#003917; background: #D7EFDD url(../images/checkbox.svg) no-repeat center }
.form input[type="checkbox"].error + label			  { background-color:#FCE9E9; border-color:#BA1A1A }
.form .souhlas {  position:relative; top:-7px; margin-left:16px }
.form a { color:#00421C; border-bottom:1px solid #00421C }
.form-button	{ position:relative;  display: inline-flex;  flex-direction: row; justify-content: center; align-items: center; flex-shrink: 0; 
				  float:right; background-color: #00421C; border: solid 2px #00421C; margin-top:-8px; 
				  width:110px; padding: 9px 19px 9px 19px; color:#fff; cursor:pointer; transition:all 0.6s ease; }
.form-button:hover { background-color:#003516;  }
.form-button img	{ visibility: hidden; opacity:0; width: 0; transition: opacity 0.5s ease, visibility 0.5s ease, width 0.5s ease, margin-right 0.5s ease;   }	 
.form-button.open img	{ visibility: visible; opacity:1; width: 24px; margin-left:-4px; margin-right: 8px;  }
.form-button.active	{ width:155px; }


.form .fade { display:none; }
.form .fade.in { display:table-row; }
.form .fileupload-progress.fade.in  { display:contents; }


.progress-extended { font-size:16px; width:50px; text-align:right; margin:auto; margin-top:12px; }
.progress { height:16px; margin:12px 0 12px 0; border-radius: 16px; }
.progress.active .progress-bar { background:#00421C }
 
.souhlas-hide { display:none; position:absolute; margin-top:12px }
.error { color:#C50000 }


.form-success	{ /*display:none;*/ position: fixed;  width:calc(100% - 30px); max-width:370px; top:-90px; right: 15px; background-color: #D7EFDD; padding:20px 20px 16px 20px;  
				  transition: all .5s ease-in-out; z-index:10000 }
.form-success img { display:inline-block; }
.form-success.open	{ top: 15px; }
.form-text		{ position:relative; top:-6px; display:inline-block; margin-left:15px; font-size:16px; font-weight: 550; }

.path {
  stroke-dasharray: 400;
  stroke-dashoffset: 400;
  animation: animateDash 5s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  display:block!important;
  animation-delay: 0.8s;
}


.path2 {
  stroke-dasharray: 400;
  stroke-dashoffset: 400;
  animation: animateDash 25s cubic-bezier(0.16, 1, 0.3, 1) forwards;
  display:block!important;
  animation-delay: 1.3s;
}

@keyframes animateDash {
  to {
    stroke-dashoffset: 0;
  }

}

@keyframes blink {

    from,
    to {
      opacity: 0;
    }

    100% {
      opacity: 1;
    }
  }
  
  
  
