* { font-size:100%;/*transition: 0.5s;*/ -moz-box-sizing: border-box;     box-sizing: border-box; }

html, body { height:100%; width:100%; }

.aleft {text-align:left;}

.acenter {text-align:center;}
.aright-m {text-align:right;}


/*+Таблицы*/

table.tbl {
    border-collapse: collapse;
    width: 100%;
    margin: 20px 0;
}

table.tbl td, table.tbl th {
    padding: 10px;
    border: 1px solid #f7f8fa;
}

table.tbl th {color:#3a4e69; font-size:18px; font-weight:normal; text-align:left;}

table.tbl th{
    background-color: #f7f8fa;
}



table.tbl td.plus {color:#de2c32; text-align:center;}
table.tbl td.minus { text-align:center;}

table.tbl td.title {color:#de4e43;}

 @media (max-width: 600px) {

	table.tbl thead {display: none;}
	table.tbl tr {display: block;}
	table.tbl td {display: flex; justify-content: space-between; font-size: 14px;}
	table.tbl td::before { content: attr(data-label);font-weight: bold; margin-right: 20px; color:#de4e43;}
	table.tbl td.title {text-align:left; font-weight:bold; color:#3b3a4f; font-size:16px; background-color: #f9f9f9}
	table.tbl td.title::before {display:none;}
	table.tbl tr:nth-child(even), table.tbl th{background: none; }
        table.tbl td.tr-row {display:block}
        table.tbl td.aright-m {text-align:right;}

}


/*-Таблицы*/


.icons-soc, input[type="submit"] {transition: 0.3s;}

.section {display:block; /*padding-top:100px;*/}

body 
{
	font-family:Tahoma;
	font-size:14px;
	min-height:100%;
	margin:0;
	padding:0;
        font-size:18px;
}

a {color:#3d3d4f}
a:hover {color:#c14f45}

.btn  {display:inline-block;  padding:0px 33px 0px 33px; color:#fff; background:#de4e43; text-decoration:none; line-height:45px; font-size:22px; transition: 0.2s; -webkit-transition: 0.2s; -moz-transition: 0.2s;}
.btn:hover {background:#ef8d86; color:#fff;}

hr {color:#cacbcf; height:1px; background:#cacbcf; margin: 50px 0px 50px 0px; border:0px;}

form { margin:0; padding:0;}
form.main-form {  height:100%;}

.parallax-window {min-height: 400px;background: transparent;}
.bg {/*background-attachment:fixed*/}


.block-height {height: 100vh; display:table; width:100%;}
#partners.block-height {display:block; height: 100vh;}

#partners .table-row {display:block;height:100%}
/*Forms*/

.table-row {vertical-align: middle;display: table-cell; width:100% }

.table-row h2 {margin-bottom:120px; font-size:65px; }

input[type="text"], input[type="tel"]  {border:#cacbcf 1px solid; border-radius:3px; padding: 10px 5px; background:#f8fafc;}
input[type="text"]:focus { background:#fff;}

textarea {border:#cacbcf 1px solid; border-radius:3px; padding: 10px 5px; background:#f8fafc;}
textarea:focus {background:#fff;}

button, input[type="submit"] { color:#fff; background:#3b3a4f; border-radius:3px;padding: 10px 25px; border:#3b3a4f 1px solid; cursor:pointer; font-size:25px;}
button:hover, input[type="submit"]:hover {background:#de4e43; border:#de4e43 1px solid;}

.main-user-consent-request-popup-button-acc {background:#3b3a4f; color:#fff}
.main-user-consent-request-popup-button-acc:hover {background:#de4e43; color:#fff}

.btn-ani  {  -webkit-transition: color 300ms;
    transition: color 300ms;
    position: relative;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -moz-osx-font-smoothing: grayscale;}

.btn-ani:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background: #b0c0d0;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: 50%;
    transform-origin: 50%;
    -webkit-transition-property: transform;
    transition-property: transform;
    -webkit-transition: 300ms ease-out;
    transition: 300ms ease-out;
}
.btn-ani:hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
}


.field {margin-bottom: 15px;}
.field-title {color:#999aa5; font-size:15px; margin-bottom:5px; display:block;}



/*Page Layout */


.bg {vertical-align: middle;background-image: url('/upload/images/bg-home2.jpg'); background-size: cover; display:table;  text-align:center; width:100%}
.bg-text  {vertical-align: middle; display:table-cell; width:100%;  text-align:right; color: #fff;   font-size:300%;  /* text-shadow: 1px 1px white, 1px 1px white, -1px -1px white, -1px -1px white, -1px 1px white, 1px -1px white, -1px 1px white, 1px -1px white;*/}

.fp-tableCell {display:table; width:100%}

.width {max-width:1300px; margin: 0px auto; padding: 0px 10px 0px 10px; overflow:hidden;}
#partners .width {height:100%}
#grid {}




#content{ 	font-size:100%;	line-height:1.4 !important;	vertical-align: top;}
#content-wrapper {margin: 0px 0px 0px 0px }
.content-page {margin: 0px 0px 50px 0px !important}
#sidebar { }

/*Нижний блок*/
.blue-line {height:6px; background:#3d3d4f}
.white-line {height:2px; background:#fff}
.yellow-line {height:3px; background:#cfa44c}

#footer-row {/*background:url(/upload/images/bg-home1.jpg) bottom center */}

#footer {padding: 30px 0px; overflow:hidden; }
#footer .footer-logo {float:left; margin: 0px 38px 0px 0px}
#footer .copyright {float:left; font-size:18px; line-height:25px; margin-top:10px;}
#footer .soc-links {float:right;}
#footer .soc-links .icons-soc {width:46px; height:46px;display: inline-block;  background:url(/upload/images/icons-soc.png) no-repeat 0px 0px}
#footer .soc-links .icons-soc.wa {background-position: 0px 0px} 
#footer .soc-links .icons-soc.tw {background-position: -59px 0px} 
#footer .soc-links .icons-soc.fb {background-position: -115px 0px} 
#footer .soc-links .icons-soc.in {background-position: -172px 0px} 
#footer .soc-links .icons-soc.yt {background-position: -228px 0px} 
#footer .soc-links .icons-soc.wa:hover {background-position: -0px -50px} 
#footer .soc-links .icons-soc.tw:hover {background-position: -59px -50px} 
#footer .soc-links .icons-soc.fb:hover {background-position: -115px -50px} 
#footer .soc-links .icons-soc.in:hover {background-position: -172px -50px} 
#footer .soc-links .icons-soc.yt:hover {background-position: -228px -50px} 

/*Шапка*/
#header {color:#fff; overflow:hidden; width:100%;}
#header-row {background:rgba(59, 58, 79, 0.5); position:fixed; width:100%; z-index:10;transition: 0.5s; }
.dark-header {background:rgba(59, 58, 79, 1.0) !important;}
.fixed-header-row { background:rgba(59, 58, 79, 1) !important; z-index: 9999; position: fixed; left: 0; top: 0; width: 100%;}
#title{float:left; line-height:75px; font-size:22px;}
#title i {color:#de4e43; font-style:normal;}
#title a, #title a:hover { text-decoration: none; outline: none; color:#fff; }

/* Top Menu */
#top-menu {position:relative; float:right; background:none;line-height:45px; top:1px; padding: 0px 10px 0px 10px}
#top-menu li a	{	color:#fff; text-decoration: none;display: inline-block; font-size:18px; margin: 0px 10px 0px 10px;    cursor: pointer;    position: relative; line-height:16px; padding: 0px 2px 7px 2px;}
#top-menu li.selected a, #top-menu li.active a {border-bottom:#de4e43 5px solid;padding: 0px 2px 3px 2px;}
#top-menu ul {overflow: hidden;}
#top-menu ul li {list-style: none;float: left;margin: 0;}

#top-menu li  a:after {
    display: block;
    content: "";
    background-color: #de4e43;
    height: 5px;
    width: 0%;
    left: 50%;
    position: absolute;
   bottom:-1px;
    -webkit-transition: width .3s ease-in-out;
    -moz--transition: width .3s ease-in-out;
    transition: width .3s ease-in-out;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    transform: translateX(-50%);
}
#top-menu li  a:hover:after, #top-menu li a:focus:after { width: 100%;}
#top-menu li.selected  a:after, #top-menu li.active  a:after  {display:none;}



.fixed-header-row #title{line-height:40px} 
.fixed-header-row #top-menu-block {margin: 0px; top:-1px;}


#top-menu a#pull {display: none;  }
@media only screen and (max-width: 1000px) {  
#title span {display:none;}
}

@media only screen and (max-width: 600px) {  
#header, .width {overflow:inherit}

#top-menu {position:absolute;top:0px;right:0px;  width:100%; float:none; padding:0px;}
ul#top-menu-block {display: none; height: auto;   background:#3b3a4f;  margin:0px; padding: 0px;}  
#top-menu a#pull {   display: block;    position:absolute;  top:15px; right:10px;    }  
.fixed-header-row  #top-menu a#pull {   display: block;    position:absolute;  top:0px; right:10px;    }  
#top-menu ul li {width:100%; float:none;}
.bg-text {font-size:20px;}
}  

@media only screen and (max-width: 500px) {  
.parallax, .parallax-mirror {display:none;}
#about .about-right {padding-top:40px;}

}

.container { display: inline-block;  cursor: pointer;}

.bar1, .bar2, .bar3 { width: 35px;    height: 5px;    background-color: #fff;    margin: 6px 0;    transition: 0.4s;}

.change .bar1 { -webkit-transform: rotate(-45deg) translate(-9px, 6px);    transform: rotate(-45deg) translate(-9px, 6px);}

.change .bar2 {opacity: 0;}
.change .bar3 {-webkit-transform: rotate(45deg) translate(-8px, -8px); transform: rotate(45deg) translate(-8px, -8px);}

/*Главная*/
/*Обо мне*/
#about {position:relative; padding: 50px 0px 50px 0px; }
#about .about-left {float:left;width:75%; padding-right:30px;}
#about .about-right {float:right; width:20%}
#about .about-right img {width:100%}

.about-menu {margin:0px; padding:0px; /*position:absolute; bottom:0px*/}
.about-menu li {float:left; list-style:none; margin:0px 31px 0px 0px; padding: 0px;}
.about-menu li a {display:block;  padding:0px 33px 0px 33px; color:#fff; background:#de4e43; text-decoration:none; line-height:45px; font-size:22px; transition: 0.2s; -webkit-transition: 0.2s; -moz-transition: 0.2s;}
								 
.about-menu li a:hover { background:#ef8d86;}

.btn  {display:inline-block;  padding:0px 33px 0px 33px; color:#fff; background:#de4e43; text-decoration:none; line-height:45px; font-size:22px; transition: 0.2s; -webkit-transition: 0.2s; -moz-transition: 0.2s;}
.btn:hover {background:#ef8d86;}

/*Левое меню*/
ul.left-menu-page {margin:0px 0px 30px 0px; padding:0px 0px 0px 0px; overflow: hidden;}
.left-menu-page li {float:left; list-style:none; margin:0px 31px 0px 0px; padding: 0px;}
.left-menu-page li a {display:block;  padding:0px 23px 0px 23px; color:#fff; background:#de4e43; text-decoration:none; line-height:35px;}	
.left-menu-page li a.selected {background:#3b3a4f;}							 
.left-menu-page li a:hover { /*background:#b0c0d0;*/ color:#3b3a4f}


/*Деятельность*/
#activity {background:#f7f8fa;padding: 55px 0px 50px 0px; color:#3b3a4f; text-align:center;}
#activity h2 {color:#3b3a4f; text-align:center; margin-bottom:70px;}
section.demos {margin-top:50px;}
section.demos a {color:#3b3a4f; text-decoration:none; font-size:35px;}



/*Блог*/
#blog {background:#f7f8fa;padding: 50px 0px 50px 0px; color:#1c1b2f; text-align:center;}
#blog h2 {color:#1c1b2f; text-align:center;}

ul.blog-menu {margin: 0px; padding:0px;  list-style:none; position:relative;}.
ul.blog-menu li a {color:#1c1b2f; }

.blog-menu-item {margin: 0px; padding:0px;display:inline; list-style:none;}
.blog-menu-item a {color:#1c1b2f; text-decoration:none; font-size:30px;}

.blog-page .blog-menu-item {display:block;}

.all-blogs {margin-top:70px;}

.blog-page {}

/*Контакты*/
#contacts {padding: 50px 0px 50px 0px; color:#1c1b2f; text-align:center;}
#contacts h2 {color:#1c1b2f; text-align:center; margin-bottom:70px;}

#contacts input[type="text"], #contacts input[type="tel"], #contacts textarea  {width:100%; max-width:500px; margin-bottom:30px;}
#contacts input[type="submit"] {margin-top:30px;}
#contacts .fields {margin-top:50px;}

#contacts .mcallback {margin-top:50px;}

#contacts input.err {border:#de4e43 1px solid}
.agree-form {text-align:center;}
.agree-form-block  {width:100%; max-width:500px; margin: 0px auto; line-height:15px;}

section.demos div {
  float: left;
  width: 33%;
  text-align: center;
}
section.demos div i {
  font-size: 100px;
  display: block;
  padding: 50px;
  width: 150px;
  height: 150px;
  line-height: 150px;
  margin: 0 auto 30px;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
}

section.demos div i.onec {background: url(/upload/images/1c-red.png) no-repeat center center;}
section.demos div i.web {background: url(/upload/images/web-red.png) no-repeat center center;}
section.demos div i.other {background: url(/upload/images/other-red.png) no-repeat center center;}

section.demos div i:hover { -webkit-transform: scale(0.9);}

/*Партнеры*/
#partners {padding: 50px 0px 50px 0px; }
#partners .item-row {position: relative;top: 50%;margin-top: -200px;}

#partners h2 {text-align:center; }

.owl-carousel .owl-item img {max-width:350px;max-height:180px;}
#partners .news-list {margin-top:100px}

.title-page {margin-top:100px;}

#footer-design {margin-top: 20px; font-size:14px;}
#footer-design a{}
#footer-design a:hover{}

div.sidebar-rounded-box {height:100%; width:250px; position: relative;}
div.sidebar-rounded-box h3 { font-size: 140%;}
div.sidebar-rounded-box b { margin:0; border-left: 1px solid; border-right: 1px solid; }
div.sidebar-rounded-box b.r2 { position:absolute; bottom: 0; left:0; right:0; }
div.sidebar-rounded-box div.inner-box { padding: 2em 2em; }
div.sidebar-rounded-box .hr {margin: 15px 0;}


/* Photogallery */
div.photo-page-main div#photo-main-page-right {width:220px  !important;height:470px !important;}
li.photo-album-item {padding:0 60px 30px 0;}
table.photo-popup #title{width: 99%; font-size: 100%; position:inherit; font-family:Verdana,Arial,Helvetica,sans-serif;padding:inherit;}

/* User-menu */
#user-menu { margin:0; padding:0 1em; list-style: none; padding-bottom: 1.5em;}
#user-menu li { display: block; padding: 0.8em 1em; border-top: 1px solid; font-family: Georgia, serif;}
#user-menu li.last-item { border-bottom: 1px solid;}
#user-menu li a { text-decoration: none; font-size: 1.25em; font-weight: bold; outline: none;}

div.search-cloud { margin-top: 0.8em;}

/* Navigation */
div.navigation { font-size:100%; line-height:200%; }
span.navigation-title { padding-right:0.65em; font-weight: bold;}
div.navigation a { text-decoration:underline; padding:0.2em 0.3em;}
span.nav-current-page { padding:0.2em 0.3em; }
div.navigation span.arrow { font-size:100%; font-family:Times, serif; }
div.navigation span.ctrl { font-size:85%; }

dl.block-list { margin: 0; padding:0; font-size: 0.85em;}
dl.block-list dt { margin: 1em 0 0}
dl.block-list dd { margin:0; padding:0;}



#content-wrapper div.photo-page-section ol li, #content-wrapper div.photo-page-section ul li, #work-area div.photo-page-detail-list ul li {margin:0.1em 0;}
#content ul.photo-controls li, #content ul.photo-controls  ul li {margin:0.1em 0;}

/*Кнопка вверх*/
#toTop {border:1px solid #3b3a4f;background:#3b3a4f;text-align:center;position:fixed;bottom:20px;right:20px;cursor:pointer;display:none;color: #fff;font-size: 40px;font-weight: bold;line-height: 42px;border-radius: 60px;width: 60px;height: 60px;opacity:0.8;}
#toTop:hover {opacity:1;}







/* свойства модального окна по умолчанию */
    .modal {
      position: fixed;
      height:100vh;
       width:100%;
      /* фиксированное положение */
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: rgba(0, 0, 0, 0.5);
      /* цвет фона */
      z-index: 1050;
      opacity: 0;
      /* по умолчанию модальное окно прозрачно */
      -webkit-transition: opacity 400ms ease-in;
      -moz-transition: opacity 400ms ease-in;
      transition: opacity 400ms ease-in;
      /* анимация перехода */
      pointer-events: none;
      /* элемент невидим для событий мыши */
     margin-left:0px !important;
    }

    /* при отображении модального окно */
    .modal:target {
      opacity: 1;
      pointer-events: auto;
      overflow-y: auto;
    }

    /* ширина модального окна и его отступы от экрана */
    .modal-dialog {
      position: relative;
      width: auto;
     /* margin: 10px;*/
    }

    @media (min-width: 576px) {
      .modal-dialog {
        /*max-width: 500px;
        margin: 30px auto;*/
      }
    }

    /* свойства для блока, содержащего контент модального окна */
    .modal-content {
     height:100vh;
      position: relative;
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
      -webkit-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column;
      background-color: #fff;
      -webkit-background-clip: padding-box;
      background-clip: padding-box;
      /*border: 1px solid rgba(0, 0, 0, .2);
      border-radius: .3rem;*/
      outline: 0;
    }

    @media (min-width: 768px) {
      .modal-content {
        -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
        box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
      }
    }

    /* свойства для заголовка модального окна */
    .modal-header {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      padding: 15px;
      border-bottom: 1px solid #eceeef;
    }

    .modal-title {
      margin-top: 0;
      margin-bottom: 0;
      line-height: 1.5;
      font-size: 1.25rem;
      font-weight: 500;
    }

    /* свойства для кнопки "Закрыть" */
    .close {
      float: right;
      font-family: sans-serif;
      font-size: 50px;
      font-weight: normal;
      line-height: 1;
      color: #000;
      text-shadow: 0 1px 0 #fff;
      opacity: .5;
      text-decoration: none;
    }

    /* свойства для кнопки "Закрыть" при нахождении её в фокусе или наведении */
    .close:focus,
    .close:hover {
      color: #000;
      text-decoration: none;
      cursor: pointer;
      opacity: .75;
    }

    /* свойства для блока, содержащего основное содержимое окна */
    .modal-body {
      position: relative;
      -webkit-box-flex: 1;
      -webkit-flex: 1 1 auto;
      -ms-flex: 1 1 auto;
      flex: 1 1 auto;
      padding: 15px;
      overflow: auto;
    }



@media only screen and (max-width: 700px) { 
section.demos div {float:none; width:100%; margin-top: 70px;}
.blog-list .blog-item {width:100%; float: none;}
.blog-list .blog-item:nth-child(1) .blog-item-block  {margin-right:0px}
.blog-list .blog-item:nth-child(2) .blog-item-block  {margin-left:0px; margin-top:70px;}

h1, h2 {font-size:28px;}
.table-row h2 {font-size:45px; margin-bottom: 50px; text-align:center;}


#about .about-right {float:none; width:100%; margin-bottom: 15px;}
#about .about-left {float:none; width:100%; padding-right:0px;}
#about .about-left ul#top-menu-block {display:inline-block; background:none;}
.about-menu {display:inline-block;}
.about-menu li a {padding: 0px 23px 0px 23px; font-size: 17px;}


#footer .copyright {font-size:12px; float:none;}
#footer .soc-links {float:none; width:100%; margin-top:30px;}

.modal-header h2 {font-size:28px; margin-bottom:0px;}
 }




.sertificats-row {float:left; /*width:16.6%;*/ padding: 0px 20px 0px 0px;  margin:0px;}
.sertificats-row {list-style:none; padding:0px 20px 0px 0px; margin:0px;}
.sertificats-row img {/*width:100%; */height:auto; border: 0.625em solid rgba( 255, 255, 255, .5 );box-shadow: 0 0 0.313em rgba( 0, 0, 0, .05 ); max-height:300px;}
.sertificats-row:hover img {box-shadow: 0 0 0.313em rgba( 0, 0, 0, .5 );}

@media only screen and (max-width: 450px) { 
.about-menu li {float:none; width:100%; margin-right:0px; margin-top:15px;}
.about-menu li {width:100%;}
#about .about-left ul#top-menu-block {width:100%}
.sertificats-row img {width:100%;  height:auto; max-height:100%;}
.sertificats-row {text-align:center; width:100%}
}
