* { margin: 0; padding: 0; }
  #changeRegion { margin-top: 20px; width: 80px; opacity: 0.1; }
  #changeRegion:hover {opacity: 1;}
  #changeRegion input { margin: 0; padding: 2px; width: 50%;  }
  #changeRegion > input + a.click { margin-left: 4px; padding: 4px; display: inline-block; vertical-align:top; width: 20px; height: 20px; line-height: 20px; color: #fff; text-decoration: none; background-color: #306529 !important; font-weight: bold }
html, body.mainbody { height: 100%; }
body.mainbody, th, td, p, div, span, ul, li, textarea, input, select, sup, sub,
#maineditor { color: #000; font: 16px 'Open Sans', Arial, sans-serif; font-weight: 300; }
strong { font-weight: 600 }
body.mainbody { position:relative; height: auto; z-index: 1}

a, input { outline: none;} /* FF links outline clear */
a:link, a:visited, a:active, #content a:hover, #maineditor a:hover { color: #306529; text-decoration: none; }
a:hover, #content a, #maineditor a{color:#44923A; text-decoration: underline;}
img, #content a.ext_icon img, #content a:hover.ext_icon img { border: 0; }
h1, h2, h3, h4, h5, h6 { color: #306529; font-family: 'Open Sans', Arial, sans-serif; text-decoration: none; text-transform: uppercase; }
h1 { font-size: 66px; color: #fff; font-weight: 700 }
h2 { font-size: 40px; }
h3 { font-size: 20px; }
input, textarea, select { margin: 10px 0; padding: 10px 14px; vertical-align: middle; border: 1px solid #d4d4d4; background-color: #fff; }
input[type='checkbox'],input[type='radio'] { border: none; }
textarea.full { width: 90%;  height: 80px;}


/* ===== def classes ===== */
.clear { clear: both; margin: 0; padding: 0; font-size: 0; line-height: 0; }
.flt_l { float: left; }
.flt_r { float: right; }
/* clearfix */
.clearfix:before,
.clearfix:after {
  content: "";
  display: table;
}
.clearfix:after {
  clear: both;
}
.clearfix {
  zoom: 1;
}
.hidden { display: none !important; }
.cntr { text-align: center; }
.pointer { cursor: pointer !important; }
.half { width: 48%; }
.thids { margin-right: 1%; width: 30%; }
/*.close {
  position: absolute; top: 10px; right: 10px;
  width: 30px; height: 30px;
  color: #fff; line-height: 30px;
  text-align: center; font-weight: bold;
  background-color: #568156;
  border: 1px solid #fff;
  cursor: pointer;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  -khtml-border-radius: 50%;
}*/

.nav, .nav li, .nav li a { display: inline-block; list-style-type: none; }
.ie7.ielt9 .nav,.ie7.ielt9 .nav li,.ie7.ielt9 .nav li a { display: block; }
.ie7.ielt9 .nav:before,.ie7.ielt9 .nav:after {
  content: "";
  display: table;
}
.ie7.ielt9 .nav:after{ clear: both; }
.ie7.ielt9 .nav li,.ie7.ielt9 .nav li a { float: left; }

span.liline { display: block; position: absolute; background-color: transparent; }
span.liline.tline { width: 36%; height: 2px; top:0;left:0; }
span.liline.lline { width: 2px; height: 60%; top:0;left:0; }
span.liline.bline { width: 50%; height: 2px; bottom:-80px;right:0; }
span.liline.rline { width: 2px; height: 60%; bottom:-80px;right:0; }
.navigation span.liline.bline { bottom:-6px !important; }
.navigation span.liline.rline { bottom:-6px !important; }

/* ====== Standart forms ======== */
.weform table td { padding: 2px 4px; }
.weform input { padding: 2px; }
.weform .btn input { font-size: 14px; font-weight: bold; padding: 5px 20px; border: none; background: none; background-color: #8B755B; color: #fff;}
span.we--form-err_msg {color: #CC0000;}
/* span.we--form-err_field {  }
span.we--form-err_uplfile {  } */


/* FEEDBACK */
#contact-form * {box-sizing: border-box !important;}
#contact-form p {margin-left: 10px; margin-right: 10px; }
#contact-form .row {display: flex; flex-wrap: wrap; }
#contact-form .form-group { margin-left: 10px; margin-right: 10px; min-width: 240px; }
#contact-form .form-group input { display: block; width: 100%; }
#contact-form textarea { margin-left: 10px; margin-right: 10px; width: 90%; max-width: 500px;}

.fbstar { color: #CC0000; } /* for feedback stars */
.wrong-inp {border-color: #CC0000;}
.btn input { font-size: 14px; font-weight: bold; padding: 5px 20px; border: none; background: none; background-color: #306529; color: #fff;}

/* ==================================================================================== */
/* ===== layout  ===== */
#site { position: relative; margin: 0 auto; width: 100%; min-height: 100%; }
.container { position: relative; margin: 0 auto; padding: 2% 2% 8%; width: 96%; max-width: 1200px; }
.content { width: 100%; height: auto; }

/* ===== HEADER ===== */
#header {
  position: absolute; width: 100%; z-index: 800;
    -webkit-transition: all 500ms ease-in-out;
    -moz-transition: all 500ms ease-in-out;
    -o-transition:  all 500ms ease-in-out;
    -ms-transition: all 500ms ease-in-out;
    transition: all 500ms ease-in-out;
}
#header.fixed { position: fixed; background-color: rgba(48, 101, 41, 1); }
#header.fixed .tools { display: none; }
#header.fixed .navigation { padding: 20px 0; }
#header.fixed .logo { width: 100px; height: 100px; background: #fff url(../images/mlogo.png) 50% 50% no-repeat; }
.mobile #header.fixed .logo {margin-left: -50px;}

#header .container { padding: 0; }

.logo {
    position: absolute; top: 0; left: 0;
    display: block; width: 145px; height: 135px;
    background: #fff url('../images/logo.png') 50% 50% no-repeat;
    border: 1px solid #e5e5e5;

/*-webkit-box-shadow: 0px 0px 10px 0px rgba(219,219,219,1);
-moz-box-shadow: 0px 0px 10px 0px rgba(219,219,219,1);
box-shadow: 0px 0px 10px 0px rgba(219,219,219,1);*/

    -webkit-transition: all 500ms ease-in-out;
    -moz-transition: all 500ms ease-in-out;
    -o-transition:  all 500ms ease-in-out;
    -ms-transition: all 500ms ease-in-out;
    transition: all 500ms ease-in-out;
}
/* HEADER TOOLS */
.tools { position: relative; float: right; padding: 0 0 20px; width: 100% }
.tools > li { position: relative; display: block; float: right !important; margin: 0 1px; width: 60px; height: 70px; color: #fff; text-align: center; }
.tools > li > a { color: #fff;}

.tools li#li-langs { position: relative; }
/* ===== LANGS ===== */
.tools li#li-langs a > span { display: none; }
.tools li#li-langs ul, .tools li#li-langs li, .tools li#li-langs a { float: none; display: block; }
.tools li#li-langs ul { position: relative; margin-top: 20px; padding-top: 30px; }
.tools li#li-langs ul.opened { background-color: rgba(0, 0, 0, 0.2); z-index: 9999 }
.tools li#li-langs a { margin: 6px 18px; width: 20px; height: 15px; border: 1px solid  #000; }
.tools li#li-langs li { display: none; padding: 2px 0;  }
.tools li#li-langs ul a.cur-lang { position: absolute; top:0; left: 0; }
.tools li#li-langs ul > a:after {
    content: ''; position: absolute; top: 0; left: 24px;
    display: block; width: 10px; height: 16px; background-size: cover;
    background: url(../images/arrow_down.png) 50% 50% no-repeat;
}
a#est { background: url(../images/langs/est.gif) 50% 50% no-repeat; }
a#rus { background: url(../images/langs/rus.gif) 50% 50% no-repeat; }
a#eng { background: url(../images/langs/eng.gif) 50% 50% no-repeat; }
a#lit { background: url(../images/langs/lit.gif) 50% 50% no-repeat; }
a#lat { background: url(../images/langs/lat.gif) 50% 50% no-repeat; }
a#pol { background: url(../images/langs/pol.gif) 50% 50% no-repeat; }
a#fin { background: url(../images/langs/fin.gif) 50% 50% no-repeat; }
a#swe { background: url(../images/langs/swe.gif) 50% 50% no-repeat; }

.tools li#li-search  { position: relative; }
/* ===== SEARCH ===== */
#search { position: absolute; top: 20px; right: 12px; padding: 0 4px; white-space: nowrap; text-align: right; z-index: 100}
#search input {
  display: none; margin-top: -18px; padding: 5px 10px; width: 170px; height: 30px; line-height: 20px; text-align: left; border: none;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border-radius: 2px; /* future proofing */
  -khtml-border-radius: 2px; /* for old Konqueror browsers */
}
a.bttn-search { display: inline-block; width: 30px; height: 30px; background: url(../images/search.png) 50% 50% no-repeat; }

.tools li#li-mnav { display: none; position: relative; text-align: center;  }
/* ===== NAVIGATION ===== */
.navigation { position: relative; float: right; }
.navigation li { position: relative; }
.navigation li a { padding: 8px 30px; color: #fff; font-size: 18px; font-weight: 600; text-decoration: none; text-transform: uppercase; cursor: pointer !important; }
.navigation li.cur a, .navigation li:hover a, .navigation li.opened a { color: #44923a; text-decoration: none }
.navigation li.cur span.liline { background-color: #44923a }


/* sub nav, mNAV */
.subnav { display: none; position: absolute; top: 0; left: 0; width: 100%; min-height: 100%; background-color: #306529; z-index: 700;}
.subnav .container { position: relative; margin: 0 auto; padding: 2%; /*width: 96%;*/ max-width: 1200px; height: 100% !important; }
  .subnav .container ul.nav:first-child { padding-top: 160px; }
.subnav ul, .subnav ul li, .subnav ul li a { width: 100%; }
.subnav ul li, .subnav ul li a { display: block; }
.subnav ul li a { padding: 20px 0; color: #fff; font-size: 20px; border-bottom: 1px solid #44923A; }
.subnav ul li a:hover { text-decoration: none; background-color: #3A7C31; }
.subnav a.hvr-ripple-out:before { border-color: #306529 }
.subnav .container > ul > li > a { padding-left: 4%; width: 96%; }
.subnav .container ul ul li a { padding-left: 8%; width: 92%;}
.subnav .container ul ul ul li a { padding-left: 12%; width: 88%;}

.subnav .hidesub { display: none; }
.subnav .showsub { display: block; }
.nav_active { background-color: #44923a  }

ul#mlang { padding-top: 160px; padding-bottom: 20px; z-index: 710 }
ul#mlang li, #mlang li a { display: inline-block; margin: 0; padding: 0; border: none; }
ul#mlang li { padding: 6px 10px 2px; width: 22px; text-align: center;background-color: rgba(48, 101, 41, 1)}
ul#mlang li.cur-lang, ul#mlang li:hover { background-color: rgba(0, 0, 0, 0.2);   }
ul#mlang li a { width: 20px; height: 15px; border: 1px solid rgba(255, 255, 255, 0.4)  }

.btn-main{
  display:block; width:100%; height:100%;
  position:relative; z-index: 600;
  text-align:center;
  cursor: pointer;
}

.btn-main span{
  display:inline-block; *display:inline; content:" ";
  width:30px; height:4px;
  position:absolute;
  background:#fff;
  zoom:1;
  text-indent:-999em;
}

.btn-main.bar{ right:0; background-color: transporent;}
.btn-main.bar span{ right: 15px;}
.btn-main.bar span:nth-child(1){top:24px; /*background-color: #CC0000;*/}
.btn-main.bar span:nth-child(2){top:34px; /*background-color: #FFCC00;*/}
.btn-main.bar span:nth-child(3){top:44px; /*background-color: #306529;*/}

.btn-main.close{ left:0;}
.btn-main.close span{ top: 34px; left: 15px;}
.btn-main.close span:nth-child(1){
-ms-transform: rotate(45deg) !important; /* IE 9 */
-webkit-transform: rotate(45deg) !important; /* Chrome, Safari, Opera */
transform: rotate(45deg) !important;
}
.btn-main.close span:nth-child(2){ display: none; }
.btn-main.close span:nth-child(3){
-ms-transform: rotate(-45deg) !important; /* IE 9 */
-webkit-transform: rotate(-45deg) !important; /* Chrome, Safari, Opera */
transform: rotate(-45deg) !important;
}


/* ===== TOP IMG ===== */
#top-img { position: relative; width: 100%; height: 500px; z-index: 10; }
.indexpage #top-img {  height: 700px; background: #ddd url("../images/topimg/2.jpg") 50% 50% no-repeat; background-size: cover; }
  #top-img .overflow {
    position: absolute;top:0;left:0;
    width: 100%; height: 100%;
    background: url(../images/2A2017-0.6.png) 0 0 repeat;
    z-index: 20;
  }
  #top-img #title { opacity: 0; position: absolute; margin: 0 auto; padding: 0 2%; width: 96%; text-align: center; bottom: 60px; z-index: 30 }
    .indexpage #top-img #title { top: auto; bottom: 40%; }
  #top-img #title h1 { font-size: 72px; position: relative; display: inline-block; padding: 40px 10% 20px 10%; }
    #top-img #title span.liline { background-color: #fff}
    #top-img #title span.liline.tline,
    #top-img #title span.liline.bline { width: 18% }
      #title h1 span.liline.tline { height: 10px}
      #title h1 span.liline.lline { width: 10px;}
      #title h1 span.liline.bline { height: 10px}
      #title h1 span.liline.rline { width: 10px;}
  #top-img #title h3 { padding: 0 0 20px 0; font-size: 30px; color: #fff;}

/* ============================================================================== */
#main {
  position: relative; margin: 60px 0; z-index: 20;
    -webkit-transition: all 300ms linear;
    -moz-transition: all 300ms linear;
    -o-transition:  all 300ms linear;
    -ms-transition: all 300ms linear;
    transition: all 300ms linear;
}
#main.fixed {
  padding-top: 80px;
    -webkit-transition: all 600ms linear;
    -moz-transition: all 600ms linear;
    -o-transition:  all 600ms linear;
    -ms-transition: all 600ms linear;
    transition: all 600ms linear;
}
.indexpage #main, .catalog#main { margin: 0; }
.foredit#main { margin: 0 0 40px; }


/*.foredit #title { margin: 0; text-align: left;}
.foredit #title h1 { padding: 40px 0; }
.foredit #title h1 span { color: #000; font-size: 40px; }*/



/* ===== INDEXPAGE ===== */
/* headers */
.indexpage .block-title { padding: 40px 0; text-align: center; }
.indexpage .block-title h2 { font-size: 32px; font-weight: bold }
/* icons */
#icons .container { padding-bottom: 4% }
.icon {
  position: relative; float: left;
  width: 33%; height: 265px;
}
.iconsvg {margin: 0 auto; width: 90%; height: 90%;}
.fil3,.fil1,.fil2 {fill: transparent}
.iconsvg#like svg .fil2 {fill:#fff}
.iconsvg#doc svg .fil3 {fill:#fff}
.iconsvg#car svg .fil1 {fill:#fff}
.iconsvg span.text { position: absolute; left: 0; top: 160px; width: 100%; color: #fff; font-size: 20px; text-align: center; text-transform: uppercase; font-family: 'Open Sans Condensed', sans-serif; font-weight: 700 }

/* offers */
#offers  { background: url(../images/hot_offers.jpg) 50% 50% no-repeat; background-size: cover;  }
#offers .container { padding: 20% 2%; }
#offers * { color: #fff; }
#offers ul { display: block; margin-bottom: 60px; width: 100%; text-align: center;}
#offers ul li, #offers ul li a { display: inline-block; }
#offers ul li { width: 33%; }
#offers ul li a {
  padding: 3% 8%; width: 50%;
  color: #fff;
  text-transform: uppercase; font-weight: bold;
  border: 2px solid #fff;
}
#offers ul li a:hover { text-decoration: none; background-color: #306529; border-color: #306529;  }


/* products */
/* #intro h2 { color: #fff; } */
/* partners */
#carousel { width: 100%; height: 190px; }
.cycle-slideshow { width: 100%;  }
.cycle-slide { padding: 0; margin: 0;}
.partner { display: block; }
.partner img { display: block; width: 100%; height: auto; }
/* addresses */
#address-maps { position: relative; padding-top: 40px;  background-color: #232222;  }
#maplogo { position: absolute; width: 160px; top:220px; left: 50%; margin-left: -79px; z-index: 400 }
.maplogo {width: 100%; height: 94px; background: url(../images/logo_icon.png) 50% 0 no-repeat;}

#address-maps h2 { color: #fff; }
.address { position: relative; width: 49.5%;}
.foredit#main .address { width: 100%; }
#main #mapTallinn, #main #mapTartu {display:none !important;}
.genverf#main #mapTallinn, .genverf#main #mapTartu { display: block !important; }
.genverf#main .address.nTallinn .container { padding-right: 10%; padding-bottom: 2%; width: auto; }
.genverf#main .address.nTartu .container { padding-left: 10%; padding-bottom: 2%; width: auto; }
.address table { margin: 0 40px 40px; }
.address.nTallinn { float: left; }
.address.nTartu { float: right; }
.address.nTallinn table { float: right; }
.foredit#main .address.nTallinn table { float: none; }
.address table tr:first-child *  { font-size: 18px; color: #3A7C31; font-weight: bold }
.address table tr td, .address table tr td p, .address table tr td div { color: #fff; font-size: 14px; }
.address table tr td:first-child { padding-right: 80px; }
.maptr {
  width: 20px; height: 20px;
  position: absolute; bottom: 290px;
  background-color: #232222;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}
.address.nTallinn .maptr { right:30% }
.address.nTartu .maptr { left:30% }


/* ===== mobile-feedback-bttn ====================================================================== */
.mobile-feedback-bttn {display: none; position: fixed; top: 150px; right: 15px; left:auto; bottom:auto; height: 40px; z-index: 670;}
.mobile-feedback-bttn a {
  display: inline-block; padding: 0 16px; width: 200px;
  color: #fff; font-size: 16px; line-height: 40px; font-weight: 700;
  border: none; background: none;
  -webkit-border-radius: 6px;
          border-radius: 6px;
  background-color: rgba(245, 147, 0, 0.9);
}
.mobile-feedback-bttn a:hover {text-decoration: none}

.mobile .mobile-feedback-bttn {display: block; top: auto; right: auto; left:0; bottom: 0; width: 100%;}
.mobile .mobile-feedback-bttn a {width: 100%; text-align: center; border-radius: 0; box-sizing: border-box;}

/* === Scroll to ==== */
.scrollNext {
  display: block;
  position: absolute; bottom: 40px; left: 0;
  height: 68px; width: 100%;
  overflow: hidden;
  text-indent: -1000px;
  z-index: 120; cursor: pointer;
}
.mobile .scrollNext {bottom: 90px;}
.scrollNext span {
  display: block; width: 24px; height: 24px; margin-left: -13px;
  position: absolute; bottom: 10px; left: 50%;
  border: 2px solid #3A7C31;
  -webkit-transform: rotate(225deg);
      -ms-transform: rotate(225deg);
          transform: rotate(225deg);
}
.scrollNext:after {
  content: "";
  display: block;
  position: absolute;
  height: 8px;
  width: 8px;
  bottom: 20px;
  left: 50%;
  margin-left: -4px;
  z-index: 121;
  border-top: 2px solid #fff;
  border-left: 2px solid #fff;
  -webkit-transform: rotate(225deg);
      -ms-transform: rotate(225deg);
          transform: rotate(225deg);
}
.scrollNext span:hover {  }

/* ===== BACK TO TOP ===== */
.back-to-top {
  display: none;
  position: fixed; z-index: 99999;
  bottom: 18px;
  right: 15px;
  text-decoration: none;
}
.back-to-top:hover { text-decoration: none }
.back-to-top i {
  display: block; width: 36px; height: 36px;
  line-height: 36px; color: #fff; text-align: center;
  -webkit-border-radius: 2px;
          border-radius: 2px;
  background-color: #444;
  -webkit-transition: all 0.2s ease-in-out;
  -o-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
}

.foverflow {position: fixed; top: 0; left: 0; align-items: center; display: none; overflow-y: auto;  width: 100%; height: 100%; background: rgba(0, 0, 0, 0.7); z-index: 900; -webkit-box-sizing: border-box; box-sizing: border-box;}
.info-popup {margin: 40px auto; position: relative; padding: 4%; width: 90%; background: #fff; -webkit-border-radius: 11px; border-radius: 11px; -webkit-box-sizing: border-box; box-sizing: border-box;}
.info-popup-close {position: absolute; top: -10px; right: -10px; width: 20px; height: 20px; text-align: center; line-height: 20px; -webkit-border-radius: 50%; border-radius: 50%; border: 1px solid rgba(0, 0, 0, 0.7); background: #fff; cursor: pointer;}
.info-popup-cont {margin-bottom: 20px;}
.info-popup-bttn { text-align: center; }
.info-popup-bttn .info-close {display: inline-block; margin: 0 auto; padding: 0 16px; height: 40px; line-height: 40px; color: #fff; -webkit-border-radius: 6px; border-radius: 6px; background: #306529; cursor: pointer;}

/* ===== FOOTER ===== */
#footer { padding: 10px 0; color: #5d5d5d; background-color: #232222; }
.mobile #footer {padding-bottom: 60px;}
#footer * { color: #5d5d5d; }
#footer .altnav { padding-bottom: 20px; }
#footer .altnav a { padding: 10px 24px; color: #5d5d5d; font-size: 18px; font-weight: 600;  }
#footer .altnav a:hover { text-decoration: none }
#ftools > div { width: 30%;  font-size: 0.9em;}

#edss { display: inline-block; width: 18px; height: 14px; background:  url(../images/edss.png) 0 0  no-repeat; opacity: 0.4 }
#edss span { display: none; }

@media screen and (max-width: 1080px) {
  .address table tr td:first-child { padding-right: 10px; }
}
@media screen and (min-width: 880px) and (max-width: 960px) {
  .navigation > li > a { padding: 8px 20px; }
}
@media screen and (max-width: 879px) {
  .info-popup {padding: 10%; }
  .no-mob, .navigation { display: none !important; }
  #maplogo { position: relative; top: 0; width: 160px; left: 50%; margin: 40px 0 40px -79px; z-index: 400 }
  #header.fixed .tools { display: block; }
  .tools li#li-mnav { display: inline-block; }
  .half, .half.flt_l, .half.flt_r { width: 98% ; float: none !important; }
  .user-data td { display: block; width: 100% }

  #top-img { height: 300px; }
  #top-img #title { top: auto; bottom: 40px; }
  #top-img #title h1 { padding: 40px 6%; font-size: 30px; }
    #top-img #title h1 span.liline.tline, #top-img #title h1 span.liline.bline { height: 6px}
    #top-img #title h1 span.liline.lline, #top-img #title h1 span.liline.rline { width: 6px;}
  #top-img #title h3 { padding: 10px 6%;  font-size: 16px;}
  .icon { width: 100%; }
  #offers ul li { margin: 10px auto; width: 90%; }

  table#order0 tr td:first-child {width: 20%}
  table#order0 td input {width: calc(100% - 50px)}
  table#order0 textarea {width: 90%}
}

@media screen and (max-width: 479px) {
  #offers h2 {font-size: 24px;}
  ul#ul-langs { display: block; padding-top: 160px; }
  #mnav.subnav .container > ul.nav { padding-top: 0; }

  .logo {
    position: absolute; top:0; left: 50%;
    margin-left: -64px; width: 122px; height: 106px;
    background: #fff url(../images/mlogo.png) 50% 50% no-repeat;
  }
  .tools li#li-mnav { display: inline-block; }

  .partner, .address  { width: 100%; }
    .genverf#main .address { float: none; }
    .genverf#main .address.nTallinn .container { padding: 8% 2%; width: auto; }
    .genverf#main .address.nTartu .container { padding: 8% 2%; width: auto; }
    .nTallinn.address table { float: none; }

  table#order0 {display: block; width: 100%;}
  table#order0 tr {display: flex; flex-direction: column; width: 100%;}
  table#order0 td {width: calc(100% - 10px) !important; margin: 0; }

  .mobile #ftools > div {width: 49%;}
}















