::-webkit-scrollbar { width: 10px; }

::-webkit-scrollbar-track { border-radius: 10px; }

::-webkit-scrollbar-thumb { border-radius: 10px; background-color: #FAB702; }

@-ms-viewport { width: device-width; }
html { min-width: 100%; height: 100%; }

*:before, *:after { -webkit-box-sizing: border-box; box-sizing: border-box; }

.clear:after, .lists:after, .row:after, .lists > div:after, .ispage:after, .box-content:after, .clearfix:after { display: block; height: 0px; clear: both; content: ""; float: none; }

*, .fix:after, .fix:before, *:before, *:after { outline: none; background-repeat: no-repeat; -webkit-text-size-adjust: none; -webkit-box-sizing: border-box; box-sizing: border-box; }

section, header, footer, nav { display: block; }

ul.menu { margin: 0px; padding: 0px; list-style: none; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

ul.menu > li { display: block; }

img { max-width: 100%; vertical-align: bottom; }

table.middle td, .middle { vertical-align: middle; }

a { text-decoration: none; }

ul, ol.unstyled { margin: 0px; padding: 0px; list-style: none; }

.hidden { display: none; }

.relative { position: relative; }

.flex { display: -webkit-box; display: -ms-flexbox; display: flex; }

.wrap { max-width: 1170px; margin: 0 auto; position: relative; padding: 0 15px; }

h1, h2, h3, h4, h5, h6, .de_count h3, .typing-wrap, .de_tab.tab_steps .de_nav li span, h3 b, ul.countdown li span, ul.countdown li p, .teaser-text, .text-slider, .big-white, .ultra-big-white, .big-text h2, .de-navbar-left header .mainmenu > li { font-family: "Dosis", Arial, Helvetica, sans-serif; }

h1, h2, h3, h4, h5 { color: #eceff3; }

h2 { display: inline-block; width: 100%; text-align: center; font-size: 50px; text-transform: uppercase; font-weight: 200; line-height: normal; letter-spacing: 10px; }

label[for=menu-mobile-btn] { color: #eee9e6; font-size: 28px; position: absolute; right: 20px; top: -55px; display: none; cursor: pointer; }

.separator { line-height: 0.5; text-align: center; margin: 30px 0; }
.separator span { display: inline-block; position: relative; }
.separator span:before, .separator span:after { content: ""; position: absolute; border-bottom: 1px solid rgba(255, 255, 255, 0.1); top: 5px; width: 300px; }
.separator span:before { right: 100%; margin-right: 15px; }
.separator span:after { left: 100%; margin-left: 15px; }
.separator span i { font-size: 6px; padding: 0; margin: 0; float: none; color: #FAB702; }

body { opacity: 0; font-size: 13px; font-family: "Dosis", Arial, Helvetica, sans-serif; color: #ddd; line-height: 1.8em; margin: 0px; padding: 0px; position: relative; min-height: 100%; padding-top: 0px; background: #606060; padding-bottom: 180px; -webkit-animation-name: attenuation; animation-name: attenuation; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }

.navigation, .open_menu { display: none; }

header { width: 100%; height: 80px; position: fixed; top: 0; left: 0; z-index: 199; -webkit-transition: height 0.3s; transition: height 0.3s; background: rgba(0, 0, 0, 0.6); border-bottom: solid 1px rgba(0, 0, 0, 0); }
header #main_menu { font-weight: 400; letter-spacing: 3px; text-transform: uppercase; margin-bottom: 0px; right: 0; top: 0; z-index: 999; }
header #main_menu.menu_is_open { display: block; -webkit-animation: slideToLeft 0.1s ease-in; animation: slideToLeft 0.1s ease-in; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
header #main_menu.toRight { -webkit-transform: translateX(280px); transform: translateX(280px); -webkit-animation: slideToRight 0.5s ease-in; animation: slideToRight 0.5s ease-in; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
header ul.header { -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; height: 80px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
header ul.header li nav .navigation h3 { display: none; padding: 20px 0; color: #FAB702; margin: 0; }
header ul.header li nav li a { display: block; padding: 25px 0 20px 20px; line-height: 35px; text-decoration: none; color: #fff; text-align: center; outline: none; -webkit-transition: 0.5s; transition: 0.5s; }
header ul.header li nav li a:after { position: relative; font-family: "FontAwesome"; content: "\f111"; font-size: 6px; margin-left: 20px; margin-top: 0px; color: #FAB702; float: right; }
header ul.header li nav li a.selected { color: #FAB702; }
header ul.header li nav li a:hover { color: #FAB702; }
header ul.header li nav li a.active { color: #FAB702; }
header ul.header li nav li:last-child a { padding-left: 10px; }
header ul.header li nav li:last-child a:after { content: ""; }

@-webkit-keyframes slideToLeft { 0% { display: none; }
  100% { -webkit-transform: translateX(0px); transform: translateX(0px); display: block; } }

@keyframes slideToLeft { 0% { display: none; }
  100% { -webkit-transform: translateX(0px); transform: translateX(0px); display: block; } }
@-webkit-keyframes slideToRight { 0% { display: block; }
  100% { -webkit-transform: translateX(280px); transform: translateX(280px); display: none; } }
@keyframes slideToRight { 0% { display: block; }
  100% { -webkit-transform: translateX(280px); transform: translateX(280px); display: none; } }
footer { position: absolute; background: #111; height: 180px; right: 0; bottom: 0; left: 0; }
footer .flex { height: 180px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
footer .flex img { width: 60%; }

#loadingPopUp { display: block; position: absolute; z-index: 9999; width: 100%; height: 100%; left: 0; top: 0; background: rgba(0, 0, 0, 0.8); -webkit-animation: fadeIn 0.3s linear; animation: fadeIn 0.3s linear; }
#loadingPopUp .wrapped { position: fixed; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 98%; max-width: 900px; height: 90%; margin: 0 auto; background: #606060; padding: 20px; overflow: hidden; }
#loadingPopUp .wrapped .serviceItem { overflow: auto; height: 90%; display: block !important; margin-top: 40px; }
#loadingPopUp .wrapped .serviceItem h3 { font-size: 3em; line-height: normal; }
#loadingPopUp .wrapped .serviceItem p { font-size: 1.5em; }
#loadingPopUp .wrapped .close { position: absolute; width: 30px; height: 30px; top: auto; right: 10px; cursor: pointer; }
#loadingPopUp .wrapped .close:after { font-family: "FontAwesome"; content: '\f00d'; display: block; width: 15px; height: 15px; font-size: 2.3em; }

.loadedContent { position: fixed; top: calc(50% - 75px); left: 0; right: 0; bottom: 0; margin: 0 auto; z-index: 10000; width: 150px; height: 150px; }
.loadedContent div { display: block; width: 150px; height: 150px; border: 3px solid #FAB702; border-right: 3px solid transparent; border-radius: 50%; background: transparent; -webkit-animation: loader 2s linear infinite; animation: loader 2s linear infinite; }

@-webkit-keyframes loader { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }

@keyframes loader { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
@-webkit-keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
@keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
#home-slider { height: 650px; overflow: hidden; position: relative; }
#home-slider .sliderImg { width: 100%; background-size: cover; }
#home-slider .slider__overlay { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: 0 auto; width: 100%; text-align: center; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; z-index: 100; }
#home-slider .slider__overlay h1 { line-height: normal; font-size: 64px; letter-spacing: 10px; text-transform: uppercase; font-weight: 300; }
#home-slider .slider__overlay h1 strong { color: #FAB702; }
#home-slider .slider__overlay p.text { font-size: 16px; }

address { font-family: "Open Sans",Arial, Helvetica, sans-serif; font-style: normal; margin: 0; margin-top: 20px; line-height: 1.5; }
address div { display: block; border-bottom: solid 1px #222; padding-bottom: 5px; margin-bottom: 5px; font-weight: 300; }
address div strong { color: #FAB702; font-weight: bold; display: inline-block; width: 60px; }
address div a { color: inherit; }
address div a:hover { text-decoration: underline; }

a.button_link { border: solid 1px rgba(255, 255, 255, 0.2); color: #fff; font-size: 12px; border-radius: 0; padding: 5px; padding-left: 30px; padding-right: 30px; text-transform: uppercase; display: inline-block; text-align: center; letter-spacing: 2px; text-decoration: none; -ms-flex-item-align: center; align-self: center; margin-top: 50px; -webkit-transition: 0.2s; transition: 0.2s; }
a.button_link:after { font-family: FontAwesome; content: "\f054"; margin-left: 10px; color: #FAB702; }
a.button_link:hover { background: #FAB702; color: #111; outline: none; }
a.button_link:hover:after { color: #111; }

#services { overflow: hidden; padding-bottom: 30px; background: #18191b; }
#services h2 { margin-bottom: 0; }
#services p.short-text { display: block; margin: 0 auto; margin-bottom: 20px; text-align: center; position: relative; width: 70%; font-size: 1.1em; }
#services p.wellcome { text-align: center; margin-bottom: 0; font-size: 2em; }
#services .service_item { width: 360px; min-width: 320px; height: 325px; max-height: 450px; margin: 0 15px; opacity: 0; -webkit-animation-name: fadeInRight; animation-name: fadeInRight; -webkit-animation-duration: 1s; animation-duration: 1s; -webkit-animation-fill-mode: both; animation-fill-mode: both; }
#services .service_item:after { display: block; content: ""; height: 100%; background: rgba(0, 0, 0, 0.6); }
#services .service_item .txt { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: 0 auto; padding: 20px; text-align: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
#services .service_item .txt h3 { margin-top: 0; font-size: 18px; letter-spacing: 3px; text-transform: uppercase; }
#services .service_item .txt p { padding-bottom: 20px; }
#services .service_item .txt a { margin-top: 0; width: 100%; }

@media only screen and (max-width: 1200px) { #services .service_blocks { -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  #services .service_blocks .service_item { width: 100% !important; max-width: 700px; min-width: 320px; margin-top: 20px; }
  #services p.short-text { width: 100%; text-align: justify; padding: 0 15px; } }
@media only screen and (max-width: 990px) { #home-slider { height: 500px; }
  #home-slider .sliderImg { background-size: auto; }
  header #main_menu { position: fixed; right: 0; top: 0; height: 100vh; max-width: 250px; min-width: 200px; -webkit-transform: translateX(280px); transform: translateX(280px); -webkit-transition: all .3s linear; transition: all .3s linear; border-left: 1px solid #FAB702; }
  header #main_menu.active { -webkit-transform: translateX(0px) !important; transform: translateX(0px) !important; }
  .separator span:before, .separator span:after { width: 150px; }
  .navigation, .open_menu { display: block; }
  header { background: #111 !important; position: static; }
  header .logo a { display: inline-block; }
  header .logo a img { max-width: 70%; }
  header ul.header li.open_menu { cursor: pointer; text-transform: uppercase; padding: 21px; background: #11111180; position: fixed; right: 15px; top: auto; z-index: 9999; }
  header ul.header li.open_menu i { font-size: 21px; }
  header ul.header li.open_menu span { display: block; width: 22px; height: 2px; margin-top: -1px; position: absolute; left: 10px; top: 50%; right: auto; bottom: auto; background-color: #fff; }
  header ul.header li.open_menu span:before, header ul.header li.open_menu span:after { content: ''; width: 100%; height: 100%; background-color: inherit; position: absolute; left: 0; -webkit-transition: all .1s ease; transition: all .1s ease; }
  header ul.header li.open_menu span:before { top: -9px; }
  header ul.header li.open_menu span:after { top: 9px; }
  header ul.header li.open_menu.open span { background: transparent; }
  header ul.header li.open_menu.open span:before, header ul.header li.open_menu.open span:after { background: #fff; top: 0; }
  header ul.header li.open_menu.open span:before { -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }
  header ul.header li.open_menu.open span:after { -webkit-transform: rotate(45deg); transform: rotate(45deg); }
  header ul.header li nav { height: 100%; min-width: 170px; background: #111 !important; width: 100%; padding: 0 20px; display: block; }
  header ul.header li nav .navigation { display: -webkit-box; display: -ms-flexbox; display: flex; height: 80px; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
  header ul.header li nav .navigation h3 { color: #FAB702; padding: 0; display: inline-block; margin: 0; }
  header ul.header li nav ul { -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }
  header ul.header li nav ul li { height: 100%; width: 100%; }
  header ul.header li nav ul li a { border-bottom: solid 1px #333; text-align: left; padding: 10px 0; }
  header ul.header li nav ul li a:after { display: none; }
  header ul.header li nav ul li a:last-child { padding: 0; }
  #about .flex.about_item { height: auto; }
  #about .flex.about_item div.image, #about .flex.about_item div.text { width: 100%; }
  #about .flex.about_item div.image { min-height: 420px; width: 100%; background-size: cover !important; }
  #about .flex.about_item div.text { text-align: justify; padding: 30px; }
  #contacts h3 { font-weight: 100; font-size: 18px; }
  #contacts .unstyled.contats_item { -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #contacts .unstyled.contats_item li { -webkit-box-flex: 0 !important; -ms-flex: 0 0 100% !important; flex: 0 0 100% !important; }
  #contacts .unstyled.contats_item li form { margin-bottom: 30px; }
  #home-slider .slider__overlay h1 { font-size: 3em; } }
@media only screen and (max-width: 640px) { .separator span:before, .separator span:after { width: 100px; }
  #contacts .unstyled.contats_item { -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #contacts .unstyled.contats_item li { -webkit-box-flex: 0 !important; -ms-flex: 0 0 100% !important; flex: 0 0 100% !important; }
  #contacts .unstyled.contats_item li form { width: 100%; margin-bottom: 30px; }
  #contacts .unstyled.contats_item li form .fields.flex { -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #contacts .unstyled.contats_item li form .fields.flex div.input, #contacts .unstyled.contats_item li form .fields.flex div.textarea { -webkit-box-flex: 0; -ms-flex: 0 0 100%; flex: 0 0 100%; }
  #contacts .unstyled.contats_item li form .fields.flex div.input:first-child, #contacts .unstyled.contats_item li form .fields.flex div.textarea:first-child { margin-bottom: 20px; }
  #contacts .unstyled.contats_item li form .fields.flex textarea { min-height: 120px; } }
@media only screen and (max-width: 320px) { #home-slider .slider__overlay h1 { font-size: 2em; }
  #services .service_blocks { -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  #services .service_blocks .service_item { width: 100% !important; min-width: 300px; max-height: 300px; margin-top: 20px; }
  #services .service_blocks .service_item .txt { padding: 20px; }
  header ul.header li.open_menu i { font-size: 20px; } }
#about { background: #212225; }
#about .about_item { border-top: 1px solid #424242; border-bottom: 1px solid #424242; -ms-flex-wrap: wrap; flex-wrap: wrap; height: 560px; }
#about .about_item div { width: 40%; }
#about .about_item div.text { padding: 50px; }
#about .about_item h2 { font-weight: 400; margin-bottom: 30px; line-height: 1.2em; font-size: 30px; letter-spacing: normal; text-transform: none; }
#about .about_item .text { display: block; text-align: left; }
#about .about_item .text strong { font-size: 16px; line-height: 1.5em; font-weight: normal; }
#about .about_item .text h2 { text-align: left; }

#contacts { display: block; width: 100%; min-height: 100vh; background: #18191b; padding-bottom: 90px; }
#contacts ul li { padding: 0 10px; }
#contacts ul li h3 { margin-bottom: 20px; }
#contacts ul li:first-child { -webkit-box-flex: 0; -ms-flex: 0 0 70%; flex: 0 0 70%; }
#contacts ul li:first-child form .fields { width: 100%; margin-bottom: 20px; }
#contacts ul li:first-child form .fields .input { margin-right: 20px; -webkit-box-flex: 0; -ms-flex: 0 0 30%; flex: 0 0 30%; width: 100%; }
#contacts ul li:first-child form .fields .input input { padding: 10px; margin-bottom: 20px; color: #fff; border: solid 1px rgba(0, 0, 0, 0.3); background: rgba(0, 0, 0, 0.2); border-radius: 0; height: auto; width: 100%; }
#contacts ul li:first-child form .fields .input input + span { display: none; position: absolute; top: -20px; color: #f00; }
#contacts ul li:first-child form .fields .input input#form-ari-contacts { margin-bottom: 0; margin-right: 20px; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
#contacts ul li:first-child form .fields .input input:focus { border-color: #FAB702; outline: 0px; }
#contacts ul li:first-child form .fields .input input.error { border-color: #f00; outline: 0px; }
#contacts ul li:first-child form .fields .input input.error + span { display: block; color: red; }
#contacts ul li:first-child form .fields .input #image-ari-contacts { opacity: 0.7; border-radius: 5px; }
#contacts ul li:first-child form .fields .textarea { -webkit-box-flex: 70%; -ms-flex: 70%; flex: 70%; }
#contacts ul li:first-child form .fields .textarea textarea { font-family: "Dosis", Arial, Helvetica, sans-serif; width: 100%; height: 100%; padding: 10px; margin-bottom: 20px; color: #fff; border: solid 1px rgba(0, 0, 0, 0.3); background: rgba(0, 0, 0, 0.2); border-radius: 0; resize: none; }
#contacts ul li:first-child form .fields .textarea textarea + span { display: none; position: absolute; top: -20px; color: #f00; }
#contacts ul li:first-child form .fields .textarea textarea:focus { border-color: #FAB702; outline: 0px; }
#contacts ul li:first-child form .fields .textarea textarea.error { border-color: #f00; outline: 0px; }
#contacts ul li:first-child form .fields .textarea textarea.error + span { display: block; color: red; }
#contacts ul li:first-child form input[type=submit] { background: none; color: #eceff3; border: solid 1px rgba(255, 255, 255, 0.2); font-size: 12px; border-radius: 0; padding: 5px; padding: 5px 30px; text-transform: uppercase; display: inline-block; text-align: center; letter-spacing: 2px; text-decoration: none; cursor: pointer; -webkit-transition: 0.5s; transition: 0.5s; }
#contacts ul li:first-child form input[type=submit]:hover { border-color: #FAB702; }
#contacts ul li:last-child { -webkit-box-flex: 0; -ms-flex: 0 0 30%; flex: 0 0 30%; }

#preLoader { display: none; position: fixed; width: 100%; height: 100%; background: #18191b; top: 0; left: 0; z-index: 9999999; }

#scrollTop { display: none; background: #f5f5f5ad; border: 0 none; border-radius: 2px; bottom: 40px; cursor: pointer; height: 32px; line-height: 30px; outline: medium none; position: fixed; right: 20px; text-align: center; text-decoration: none; -webkit-transition: opacity 0.2s ease-out 0s; transition: opacity 0.2s ease-out 0s; width: 32px; z-index: 999; }
#scrollTop:before { color: #222; content: "\f106"; font-family: "FontAwesome"; font-size: 22px; margin: 5px; position: relative; }

.page_404 a { color: #FAB702; text-decoration: none; }
.page_404 a:hover { text-decoration: underline; }

@-webkit-keyframes fadeInRight { 0% { opacity: 0; -webkit-transform: translateX(70px); transform: translateX(70px); }
  100% { opacity: 1; -webkit-transform: translateX(0px); transform: translateX(0px); } }

@keyframes fadeInRight { 0% { opacity: 0; -webkit-transform: translateX(70px); transform: translateX(70px); }
  100% { opacity: 1; -webkit-transform: translateX(0px); transform: translateX(0px); } }
@-webkit-keyframes attenuation { 0% { opacity: 0; }
  100% { opacity: 1; } }
@keyframes attenuation { 0% { opacity: 0; }
  100% { opacity: 1; } }
