@import url('https://fonts.googleapis.com/css2?family=Exo:wght@400;500&display=swap');

.text-center {
    text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align:left;
}
.align-items-center {
	align-items: center;
}
.vertical-align-items-center {
	align-items: center;
}
.d-none {
  display: none;
}
.d-inline-block {
  display: inline-block;
}

body {
	margin: 0;
	padding: 0;
	background: #fff;
  font-family:  'Exo', sans-serif;
  font-weight: 400;
	color: #002E72;
}

h1, h2, h3 {
  margin: 0;
  padding: 0;
}
h1 {
	font-size: 48px;
	line-height: 57px;
  font-weight: 500;
  padding-bottom: 15px;
}
h2 {
	font-size:24px;
	line-height: 36px;
  font-weight: 600;
  display: block;
  position: relative;
  padding-left: 20px;
}
h2 + p, h2 + ul, h2 + div.wpcf7 {
  margin-top: 40px;
}
p + h2, figure + h2, img + h2 {
  margin-top: 80px;
}
h2::after{
  content: '';
  border-left: 3px solid #996630;
  height:  100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
h2.has-text-align-center {
  position: relative;
  padding-left: 0;
  padding-bottom: 10px;
}
h2.has-text-align-center::after {
  content: '';
  border-bottom: 3px solid #996630;
  width: 68px;
  display: block;
  position: absolute;
  top: 0;
  left: calc(50% - 34px);
  border-left: none;
}

h3 {
  font-size:18px;
  line-height: 27px;
  font-weight: 500;
  display: block;
  position: relative;
}
h3::after, .shadow.proces p:after,.popis-aktuality:after {
  content: '';
  border-bottom: 2px solid #996630;
  width: 10%;
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
}

p, ul, ol, li, a, span, input, button, .btn, textarea {
	margin: 0;
	padding: 0;
	font-size: 16px;
  line-height: 24px;
}
p {
  margin-bottom: 15px;
}
span {
  font-size: 14px;
  line-height: 24px;
}
a {
	text-decoration: none;
  color: #996630;
}

a:hover {
  color:  #996630;
  text-decoration: underline;
}

select, input, textarea {
	width: 100%;
  display: block;
  font-size: 16px;
  line-height: 24px;
  border-radius: 4px;
  background: #EDE3D9;
  padding: 10px;
  margin-top: 10px;
  border: none;
  font-family: 'Exo', sans-serif;
}
::-webkit-input-placeholder { /* Edge */
  color: #002E72;
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #002E72;
}

::placeholder {
  color: #002E72;
}
.img-fluid {
  border-radius: 4px;
}

.btn-primary, input[type="submit"] {
  display: inline-block;
  border-radius: 27px;
  cursor: pointer;
  color: #fff;
  padding: 15px 35px;
  background:  #002E72;
  line-height: 21px;
  border: none;
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.32);
  width: auto;
  transition: 0.5s background, 0.5s box-shadow;
}
.btn-primary:hover {
  background: #996630;
  text-decoration: none;
  color: #fff;
  box-shadow: none;
}

.btn img {
  padding-right: 10px;
  vertical-align: middle;
}
.brown {
  color: #996630;
}
.box {
  padding: 35px 35px 25px;
  position: relative;
  display: block;
  background: #fff;
}
.box ul {
  margin-bottom: 10px;
}
.box h3 {
  padding-bottom: 10px;
  margin-bottom: 10px;
}
.shadow {
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.16);
}

.shadow .btn-primary {
  position: absolute;
  bottom: -25px;
  right: 25px;
}

table {
    width: 100%;
    border-collapse: collapse;
}
.container.narrow {
  max-width: 730px;
  margin-left: auto;
  margin-right: auto;
}
ul.plus li{
  list-style: none;
  background: url('img/ikona-plus.svg') no-repeat 0 0;
  padding-left: 30px;
  margin-top: 10px;
}
ul.plus + p {
  padding: 15px 0 15px 30px;
}
section {

}

body > .container {
  margin-top: 80px;
}

/* body > .pozadi {
  padding-top: 40px;
} */

.h2 + .container, .h2 + section {
  margin-top: 40px;
}

.container + .p {
  margin-top: 30px;
}

.p + .p, .p + .ul {
  margin-top: 15px;
}

.ul ul {
  margin-left: 30px;
}

.wave-top, .wave-bottom {
  height: 120px;
  background-size: cover;
}

.wave-top {
  margin-top: 80px;
}

.wave-bottom {
  background-position: bottom;
}

.wp-block-table {
  margin: 40px 0 0;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.16);
}

.detail-pozice .wp-block-table {
  margin-top: 0;
  font-weight: 700;
}

.detail-pozice .wp-block-table span {
  font-weight: 400;
  display: block;
}

.wp-block-table table {
  background: #fff;
}

.wp-block-table table tr {
  background: url('img/table-line.svg');
  background-position: bottom;
  background-repeat: no-repeat;
}

.wp-block-table table tr:last-child {
  background: none;
}

.wp-block-table table td {
  padding: 20px 30px;
}

.quote-author blockquote {
  position: relative;
  margin: 0;
  padding: 30px 45px;
  font-size: 14px;
}

.quote-author blockquote:before {
  content: '';
  display: block;
  background: url('img/dolni-uvozovka.svg') no-repeat;
  position: absolute;
  left: 0;
  bottom: 10px;
  width: 30px;
  height: 30px;
}

.quote-author blockquote:after {
  content: '';
  display: block;
  background: url('img/horni-uvozovka.svg') no-repeat;
  position: absolute;
  right: 0;
  top: 10px;
  width: 30px;
  height: 30px;
}

.quote-author img {
  float: left;
  margin-left: 40px;
}

.quote-author img + p {
  float: left;
  margin-left: 10px;
}

span.label {
  position: absolute;
  top: -22px;
  left: 15px;
  z-index: 1;
  padding: 10px 25px;
  background: #002E72;
  display: block;
  color: #fff;
  border-radius: 27px;
}

.aktualita-detail .date {
  display: block;
  margin-bottom: 15px;
}

.extra-padding {
  padding-left: 75px!important;
}

.box-order {
  background-image: url('img/number-1.svg');
  background-position: bottom right;
  background-repeat: no-repeat;
}

.row div:nth-child(2) .box-order {
  background-image: url('img/number-2.svg');
}

.row div:nth-child(3) .box-order {
  background-image: url('img/number-3.svg');
}

.news .col-md-4 {
  margin-bottom: 30px;
}
.ref-slide {
  outline: none;
}
.ref-wrapper {
  padding: 0 40px 80px;
}

/*header*/
header {
  padding: 0 30px;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999;
}
.admin-bar header {
  top: 32px;
}
.main-menu ul {
  font-size: 0;
}
ul.sub-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: calc(50% - 100px);
  width: 200px;
  background: #002E72;
  border-radius: 8px;
  text-align: center;
  padding: 15px 20px;
}
.main-mobile-menu ul.sub-menu {
  position: relative;
  left: 0;
  width: auto;
}
.main-menu ul li {
  display: inline-block;
  position: relative;
}
.main-mobile-menu li {
  display: table;
  margin: 0 auto;
  position: relative;
}
.main-mobile-menu {
  display: none;
  position: fixed;
  left: 0;
  top: 0;
  text-align: center;
  width: 100%;
  height: 100%;
  padding-top: 65px;
  background-color: #EDE3D9;
  z-index: 999;
}
.main-menu ul li a, .main-mobile-menu a {
  padding: 23px 14px;
  display: block;
  color: #002E72;
  text-transform: uppercase;
}
.main-menu ul li.current-menu-item a, .main-mobile-menu li.current-menu-item a {
  font-weight: 600;
}
ul.sub-menu li {
  display: block;
}
ul.sub-menu li a {
  color: #fff;
  padding: 10px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.16);
}
ul.sub-menu li:last-child a {
  border-bottom: none;
}
li.menu-item-has-children > a + span {
  background-image: url('img/submenu.svg');
  background-repeat: no-repeat;
  background-position: center;
  width: 15px;
  height: 20px;
  position: absolute;
  right: 0;
  display: block;
  z-index: 1;
  cursor: pointer;
  top: 24px;
}
.main-menu li.menu-item-has-children:hover .sub-menu {
  display: block;
}
header .btn {
  z-index: 2;
  position: relative;
}

#mobile-menu-toggle {
  border: none;
  background: none;
  cursor: pointer;
  outline: none;
}


/*podstránka home*/
.uvod {
  height: calc(30vh);
  background-color: rgba(153,102,48,0.18);
  padding-top: 70px;
}
.admin-bar .uvod {
  padding-top: 102px;
}
.home .uvod {
  height: calc(100vh - 80px);
  position: relative;
  background-image: url('img/uvod-img.png');
  background-position: calc(100% + 120px) top;
  background-repeat: no-repeat;
  background-size: contain;
}
.uvod .container, .uvod .row {
  height: 100%;
}
body:not(.home) .uvod + * {
  margin-top: 80px;
}
.home .uvod + * {
  margin-top: 120px;
}

a.push-screen-down {
  display: block;
  background: #fff;
  border-radius: 50%;
  padding: 20px 22px;
  line-height: 16px;
  position: absolute;
  text-align: center;
  left: calc(50% - 32px);
  bottom: 0;
}
a.push-screen-down img {
  transition: 0.5s transform;
}
a.push-screen-down:hover img {
  transform: translateY(-3px);
}
.uvod:after {
  background: url('img/pozadi-vlna.jpg') no-repeat;
  background-position: bottom;
  background-size: cover;
  display: block;
  content: '';
  width: 100%;
  height: 120px;
}
.white-back img {
  background: #fff;
  border-radius: 50%;
}
.white-back.right img{
  margin-top: -120px;
}
.white-back a img {
  padding: 20px;
}

.sluzba-info {
  position: relative;
  padding: 20px 0;
}
.show-info {
  opacity: 0;
  transition: 0.5s opacity;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  text-align: left;
  padding: 20px;
  color: #fff;
  background: #002E72;
}
.sluzba-info:hover .show-info {
  opacity: 1;
}
.info-icon::after {
  content: '';
  position: absolute;
  background: url('img/info.svg') no-repeat;
  top: 0;
  right: 0;
  width: 68px;
  height: 68px;
  z-index: 1;
  transition: 0.5s opacity;
}
.info-icon:hover:after {
  opacity: 0;
}
.sluzba-info img, .shadow.box img {
  background: #EDE3D9;
  border-radius: 50px;
}

.sluzba-info p {
  margin-top: 15px;
}
.sluzba-info p.show-info {
  margin-top: 0;
}
.box.proces {
  padding-bottom: 45px;
}
.box.dokument {
  margin-bottom: 45px;
}
.shadow.proces h3::after, .popis-aktuality h3:after{
  border-bottom: none;
}
.shadow.proces p {
  position: relative;
}
.shadow.proces p::after{
  left:0;
  bottom: -10px;
}
.popis-aktuality:after {
  bottom: 10px;
}
.schvalovaci-proces {
  background-color: rgba(153,102,48,0.18);
  margin-top: 80px;
  padding: 80px 0;
  position: relative;
}
.schvalovaci-proces + .container {
  margin-top: 160px;
}
.schvalovaci-proces:after {
  background: url('img/pozadi-vlna.jpg') no-repeat;
  background-position: bottom;
  background-size: cover;
  display: block;
  content: '';
  width: 100%;
  height: 80px;
  position: absolute;
  top: 100%;
  left: 0;
}
.schvalovaci-proces h2 {
  margin-bottom: 40px;
}
.schvalovaci-proces span {
  background: #fff;
  border-radius: 50%;
  width: 80px;
  height: 80px;
  display: inline-block;
  padding-top: 30px;
  position: relative;
}
.schvalovaci-proces span:before {
  content: '';
  display: block;
  background-image: url('img/proces-horizontal.svg');
  position: absolute;
  top: 50%;
  width: 150px;
  z-index: -1;
}
.schvalovaci-proces .odd span:before {
  left: 100%;
  height: 1px;
}
.schvalovaci-proces .even span:before {
  right: 100%;
  height: 2px;
}
.odborne-reference {
  background: url('img/pozadi-vlna-up.jpg') no-repeat;
  background-position: top;
  background-size: cover;
}
.box.button {
  margin-bottom: 25px;
}
.autor {
  padding: 30px 0;
}
.popis-aktuality {
  height: 80px;
  position: relative;
}
.aktuality img {
  margin: 10px 0;
}


/*všechny poddstranky bez home*/
.pozadi-vlna {
  background: url('img/pozadi-vlna.jpg') no-repeat;
  background-position: bottom;
  background-size: cover;
  margin-top: -120px;
  padding: 120px 0 100px;
}
.pozadi-vlna + section {
  margin-top: -100px;
}
/*nase produkty*/
.nabidka.duvody span {
  display: block;
  background: url('img/ikona-plus.svg') no-repeat 0 2px;
  padding-left: 30px;
  padding-bottom: 15px;
}
.nabidka.duvody p{
  padding-left: 30px;
  padding-bottom: 30px;
}
/*aktualita-detail*/
.pozadi {
  background-color: #EDE3D9;

}
.aktuality p {
  position: relative;
}
/*kontakt*/
.mapa img {
  width: 100%;
}
/*kariera*/
.kariera p {
  padding-left: 20px;
}
/*o spolecnosti*/
.o-spolecnosti p, .kariera p{
  padding-bottom: 10px;
}


/*footer*/
footer {
  background-color: #002E72;
  position: relative;
  padding-top: 50px;
  margin-top: 80px;
}
.aktuality-pozadi {
  padding-bottom: 80px;
  margin-top: 80px;
  position: relative;
}
.aktuality-pozadi h2 {
  margin-bottom: 40px;
}
.aktuality-pozadi + footer, iframe + footer {
  margin-top: 0;
}
.aktuality-pozadi:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 50%;
  background-color: rgba(153,102,48,0.18);
}
footer::before {
  content: '';
  background: url('img/footer-img-right.jpg');
  position: absolute;
  background-position: right;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  background-repeat: no-repeat;
  background-size: contain;
}
footer p, footer span, footer a {
  color: #fff;

}
footer p {
  padding-bottom: 15px;

}
.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.16);
  padding: 20px 0;
  margin-top: 20px;

}
footer .btn {
  border-radius: 0;
  width: 100%;
  margin-bottom: 15px;
}
footer a.decoration {
  display: block;
  text-decoration: underline;
}

/*mobile*/

@media (min-width: 576px) {
    .d-sm-block {
    display: block !important;
    }
    .d-sm-none {
    display: none  !important;
     }

     .text-sm-left{
       text-align: left;
     }
     .text-sm-center {
       text-align: center;
     }
     .text-sm-right {
       text-align: right;
     }

}
@media (max-width: 575px){


}

@media (min-width: 768px) {
  .d-md-block {
  display: block !important;
  }
  .d-md-none {
  display: none  !important;
   }
   .text-md-left {
     text-align: left;
   }
   .text-md-rigt {
     text-align: right;
   }
}
@media (max-width: 768px){
  .home .uvod {
    background-image: none;
  }
  body > .container {
    margin-top: 40px;
  }
  .extra-padding {
    padding-left: 15px!important;
  }
  .box, .box.button {
    margin-bottom: 45px;
  }
  .schvalovaci-proces span {
    margin-bottom: 15px;
  }
  .schvalovaci-proces span:before {
    display: none;
  }
  .popis-aktuality:after {
    left: 45%;
  }
  .main-menu ul li a, .main-mobile-menu a {
    padding: 23px 0;
  }
  li.menu-item-has-children > a + span {
    right: -25px;
    z-index: 1;
  }
  footer::before {
    background-size: cover;
  }
  footer .btn {
    margin-top: 15px;
  }
}
@media (min-width: 991px) {
  .d-lg-block {
  display: block !important;
  }
  .d-lg-inline {
  display: block !important;
  }
  .d-lg-none {
  display: none !important;
   }
   .text-lg-left {
     text-align: left;
   }
   .text-lg-rigt {
     text-align: right;
   }
}
@media (max-width: 991px) {
  header .btn {
    display: none;
  }
  .logo {
    display: block;
    padding: 10px 0;
  }
  .home .uvod {
    background-size: 50%;
  }
}

@media (max-width: 1200px) {
  header .btn {
    padding: 15px 25px;
  }
  .main-menu ul li a {
    font-size: 13px;
  }
}
