@font-face {
    font-family: 'Open Sans';
    src: url("../fonts/open sans.eot");
    src: local('0');
    src: url("../fonts/open sans.eot?#iefix") format("embedded-opentype"),
         url("../fonts/open sans.ttf") format("truetype");
}
@font-face {
    font-family: 'Open Sans lite';
    src: url('../fonts/open sans lite.ttf');
    src: local('0');
}
@font-face {
    font-family: 'Helvetica';
    src: url("../fonts/helvetica.eot");
    src: local('0');
    src: url("../fonts/helvetica.eot?#iefix") format("embedded-opentype"),
         url("../fonts/helvetica.otf") format("truetype");
}
@font-face {
    font-family: 'Helvetica Neue';
    src: url('../fonts/helvetica-neue.otf');
}
@font-face {
    font-family: 'Arial';
    src: local('0');
    src: url('../fonts/arial.ttf');
}

.navbar.navbar-inverse {
  background-color: #2c608a;
  border-color: #204563;
}

.navbar.navbar-inverse .navbar-nav > li > a {
    color: #ccc;
}
.navbar.navbar-inverse .navbar-nav > li > a:hover {
	color: white;
}
.wrap > .container {
    /*padding: 50px 15px 20px;*/
    padding-top: 2vw;
}
.lowvisionpanel {
    display:none;
}

/*.toplogo {
	width: calc(10%);
	background: url("../img/dsns_logo.png") 0 0 no-repeat;
	float: unset;
	background-size: contain;
	display: block;
	margin: auto;
	padding-top: calc(10%);
    min-height: 50px;
    min-width: 50px;
}*/
.toplogo {
    width: calc(10%);
    background: url("../img/dsns_logo.png") 0 0 no-repeat;
    background-size: contain;
    display: block;
    margin: auto;
    min-height: 7vw;
    min-width: 7vw;
    background-position-x: center;
}
.toptitle-padding {
    padding: 3vw 0vw 0vw 0vw;
}

.toptitle-header {
    font-family: 'Open Sans lite', "Helvetica Neue", Helvetica;
    color: #fff;
    text-align: center;
    text-shadow: 2px 1px 5px black;
    /*margin: 0;*/
    font-size: 2.5vw;
}

.toptitle-subheader {
    font-family: 'Open Sans lite', "Helvetica Neue", Helvetica;
    color: #fff;
    text-align: center;
    text-shadow: 2px 1px 5px black;
   /* margin: 0;*/
    font-size: 2.5vw;
}

.topline {
    width: 100%;
    border:0;
    height:50px;
}
a:focus, a:hover {
    text-decoration: none !important;
}
a.soc-link {
    color: #ccc;
    font-size: 1.2em;
    display: inline-block;
    text-align: center;
    margin-top: 0.3em;
}

a.soc-link:hover {
    color: #ccc;
    background: #10283f;
}

.navbar-nav > li > a {
    padding: 10px;
    line-height: 20px;
}

a.low-vision-link {
    margin: 5px 0 8px 8px;
    padding: 0.3em 0.6em;
    color:#ccc;
    font-size:1.5em;
    text-decoration:none;
    display:inline-block;
    vertical-align:middle;
    text-align:center;
    border:1px solid #ccc;
}

a.low-vision-link:hover {
    color:#fff;
    background:#10283f;
    text-decoration:none;
}

body {
    font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.42857143;
    color: #333333;
    background-color: #ffffff;
    background-position: center;
}
.search-box {
    margin-top: 1vw;
    color: #fff;
}

.search-box .btn-main {
    display: block;
    /*margin-top: 3vw;*/
}
.form-horizontal .control-label {
    padding-top: 0px;
    margin-bottom: 0;
    text-align: right;
}
.search-box input.form-control {
    border-radius: 2px;
    background: rgba(0,0,0, 0.5);
    color: #fff;
    border: 1px solid #fff;
}

header {
    background-image: url(../img/dsns_back.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position-x: center;
    background-position-y: center;
}

.masked {
    background: rgba(0,0,0,0.5);
    background-size: cover;
    height: 100%;
    width: 100%;
    display: block;
    padding-bottom: 25px;
    margin-top: 50px;
}

.form-control {
    border-radius: 2px;
    box-shadow: none;
    font-weight: normal;
    border: 1px solid #ccc;
}
.form-group {
    margin-top: 5px;
    margin-bottom: 2px;
}
.btn {
    border-radius: 3px;
    margin-bottom: 15px !important;
}

.btn-main {
    color: #ffffff !important;
    background-color: #2c608a;
    border-color: #265377;
}

.btn-main:hover {
    border-color: #265377;
    background: #1d405c;
    color: #fff;
}

.main-services-counter-bg .opinfo {
    color: #fff;
    text-align: center;
    /*margin: 0.5vw 0vw 0vw 0vw;*/
    text-shadow: 0 1px 1px rgba(0,0,0,0.9);
    /*float: unset;*/
    display: inline-block;
    margin-top: 1vw;
}

.opinfo b {
    font-weight: normal;
    display: inline-block;
    position: relative;
    z-index: 10;
    top: -5px;
    padding: 0 0.5em;
    /*background: #2c608a;*/
}

.opinfo var {
    display: block;
    margin: 0 auto 0.5em auto;
    border: 1px solid #fff;
    border-radius: 3px;
    padding: 0.2em 0;
    text-align: center;
    font: normal normal 1.2em/150% Helvetica Neue;
    background: rgba(0,0,0, 0.5);
    color: #fff;
}
.main-services-padding {
    padding: 6vw 0 0 0
}

a.main-services-btn {
	height: 100px;
	font-weight: bold;
	font-size: 28px;
	margin: 10px 10px;
	color: #ffffff;
	background-color: #2c608a;
	border-color: #265377;
	text-decoration: none;
	padding: 25px;
	display: inline-block;
}

.main-services-btn:hover {
    background: #1d405c;
    color: #fff;
    text-decoration: none;
}

.ext-services-padding {
    padding: 4vw 0 0 0
}

a.ext-services-btn {
    display: inline-block;
    text-align: center;
    padding: 1em;
    vertical-align: top;
}

.ext-services-btn span {
    display:block;
    margin:auto;
    border:1px solid #2c608a;
    padding:0.5em 0;
    text-align:center;
    font-size:2em;
    line-height:100%;
}

.ext-services-btn p {
    margin-top: 0.5em;
	white-space: normal;
}

a.ext-services-btn:hover {
    color:#fff;
    /*background:#ae3d21;*/
    background: #ff9b4d;
    text-decoration: none;
}

a.ext-services-btn:hover span {
    border-color:#fff;
}

.banner-left-margin {
    margin-left: 6px;
}
.banner-padding {
	padding: 0 50px 1vw 0;
}
@media only screen and (max-width: 495px),
    screen and (max-device-width: 495px) {
        .banner-padding {
            padding: 0 0 15px 0;
            display: table !important;
            width: 100% !important;
        }
    }
@media only screen and (max-width: 992px),
    screen and (max-device-width: 992px) {
        .banner-padding {
            width: 230px;
            display: inline-block;
        }
    }
.banner-padding:last-child{
	padding: 0 0 1vw 0;
    text-decoration: none;
}
.banner-box-padding {
    margin-right: auto;
    margin-left: auto;
    padding: 25px 0;
    display: table;
}

.sepline {
    float: none;
    clear: both;
    /*margin: 2vw;*/
    text-align: center;
    border-bottom: 1px solid #2c608a;
}

.sepline:after {
    content: '';
    display: block;
    height: 0;
    margin: auto;
    width: 60%;
    border-bottom: 4px solid #ff9b4d;
    top: 5px;
}

.sepline span {
    display: inline-block;
    vertical-align: middle;
    background: #fff;
    position: relative;
    top: 0.8em;
    padding: 0 1em;
    font-size: 25px;
    color: #2c608a;
}

.footer {
    background-color:#2c608a;
    color:#ccc;
    text-shadow: 0 1px 1px rgba(0,0,0,0.9);
    padding:1em 0;
    font-weight:300;
}

footer .foottitle {
    position:absolute;
    width:100%;
    text-align:center;
    font-size: 2.5vw;
    line-height:5vw;
    opacity:0.5;
    margin-left: -1vw;
}

footer a.footlogo {
    display:block;
    width: 5vw;
    height: 5vw;
    margin:auto;
    background:url("../img/dsns_logo.png") 0 0 no-repeat;
    background-size:cover;
    opacity:0.5;
}

footer .footcontacts {
    font-size:85%;
    color:#ccc;
}

footer .footcontacts a {
    color:#ccc;
}

footer .footcontacts a:hover {
    color:#ffff00;
    text-decoration: none;
    background: none;
}

footer .footcol {
    float: left;
    text-align: center;
}

footer .copyright {
    text-align:center;
    opacity:0.8;
}

/* FLATICON */
@font-face {
  font-family: "Flaticon";
  src: url("../fonts/flaticon.eot");
  src: url("../fonts/flaticon.eot?#iefix") format("embedded-opentype"),
       url("../fonts/flaticon.woff") format("woff"),
       url("../fonts/flaticon.ttf") format("truetype"),
       url("../fonts/flaticon.svg#Flaticon") format("svg"),
	   url("../fonts/support.svg") format("svg");
  font-weight: normal;
  font-style: normal;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: "Flaticon";
    src: url("../fonts/flaticon.svg#Flaticon") format("svg");
  }
}

.flaticon:before, .flaticon:before,
.flaticon:after, .flaticon:after {
  font-family: Flaticon;
  font-size: 24px;
  font-style: normal;
  margin-left: 0px;
}

.flaticon-instagram:before {
    content: "\f100";
}
.flaticon-facebook:before {
    content: "\f102";
}
.flaticon-youtube:before {
    content: "\f103";
}
.flaticon-twitter:before {
    content: "\f104";
}
.flaticon-rss:before {
    content: "\f105";
}

.treeview .glyphicon:hover {
	color: red;
}

.treeview .treenode:hover {
    background: rgba(200,200,200, 0.25);
    cursor: pointer;
}

div.required label.control-label::after {
	content: " *";
	color: red;
	white-space: nowrap;
}

.select2-results__option[aria-selected="true"] {
    display: none;
}
.select2-container--bootstrap .select2-selection--multiple .select2-selection__arrow {
	position: absolute;
	bottom: 0;
	right: 12px;
	top: 0;
	width: 4px;
}
.select2-container--bootstrap .select2-selection--multiple .select2-selection__arrow b {
	border-color: #999 transparent;
	border-style: solid;
	border-width: 4px 4px 0;
	height: 0;
	left: 0;
	margin-left: -4px;
	margin-top: -2px;
	position: absolute;
	top: 50%;
	width: 0;
}

.select2-container--bootstrap .select2-selection--multiple .select2-selection__rendered {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    display: block;
    line-height: 1.42857143;
    list-style: none;
    margin: 0;
    overflow: hidden;
    padding: 0;
    width: 97%;
    text-overflow: ellipsis;
    white-space: normal;
}
.select2-container--bootstrap .select2-selection--single {
    /*background: none;*/
    border-bottom: 1px solid #ccc !important;
   /* border: none;*/
    border-radius: 2px !important;
}
.select2-container--bootstrap .select2-selection--multiple .select2-selection__rendered {
    width: 97% !important;
    white-space: normal !important;
}
.select2-container--bootstrap .select2-selection--multiple .select2-selection__choice__remove {
    color: red !important;
}
.select2-container--bootstrap .select2-selection--multiple {
    border-radius: 2px !important;
}
.select2-container--bootstrap .select2-selection--multiple .select2-selection__choice {
    border-radius: 2px !important;
}
.select2-container--bootstrap .select2-results__option[role="group"]{
    border-bottom: 1px solid;
}
.select2-results__options.select2-results__options--nested {
	text-indent: 25px;
}
.fileUpload {
    position: relative;
    overflow: hidden;
    margin-left: 10px;
    margin-bottom: 5px !important;
}
.fileUpload input.upload {
      position: absolute;
      top: 0;
      right: 0;
      margin: 0;
      padding: 0;
      font-size: 20px;
      cursor: pointer;
      opacity: 0;
      filter: alpha(opacity=0);
}
.add-service-information {
	/*font-size: 18px;
	border: 1px solid;
	padding-top: 3px;
	background: green;
	color: white;
	cursor: pointer;
	opacity: 0.75;
	height: 26px;
	padding-left: 3px;
    padding-right: 3px;*/
    font-size: inherit;
    padding: 2px 12px 5px 12px;
    margin-top: -2px;
    width: 170px;
}
.add-service-information:hover {
    opacity: 1;
    text-decoration: none;
}
.add-service-information span {
	margin-left: 10px;
	font-size: 12px;
	height: 16px;
	vertical-align: 5px;
}
.detail-view th {
    width: 30% !important;
}

@media (min-width: 992px) and (max-width: 1600px) {
.main-services-padding {
    padding: 3vw 0 0 0
}
}
@media (min-width: 768px) and (max-width: 991px) {
.main-services-padding {
    padding: 4vw 0 0 0
}
}
@media (min-width: 480px) and (max-width: 767px) {
.main-services-padding {
    padding: 3vw 0 0 0
}
.toptitle-header {
    font-family: 'Open Sans lite', "Helvetica Neue", Helvetica;
    color: #fff;
    text-align: center;
    text-shadow: 2px 1px 5px black;
    font-size: 18px;
}
.toptitle-subheader {
    font-family: 'Open Sans lite', "Helvetica Neue", Helvetica;
    color: #fff;
    text-align: center;
    text-shadow: 2px 1px 5px black;
    font-size: 18px;
}
}
@media (min-width: 360px) and (max-width: 479px) {
.toptitle-header {
    font-family: 'Open Sans lite', "Helvetica Neue", Helvetica;
    color: #fff;
    text-align: center;
    text-shadow: 2px 1px 5px black;
    font-size: 16px;
}
.toptitle-subheader {
    font-family: 'Open Sans lite', "Helvetica Neue", Helvetica;
    color: #fff;
    text-align: center;
    text-shadow: 2px 1px 5px black;
    font-size: 16px;
}
}
.hidescreen,
.load_page {
     position: fixed;
     display: none; /*изначально блоки скрыты*/
}
.hidescreen {
     z-index: 9998;
     width: 100%;
     height: 100%;
     background: rgba(167, 163, 163, 0.75);
     opacity: 0.9;
     filter: alpha(opacity=70);
     left:0;
     top:0;
}
.load_page {
     z-index: 9999; /*значение должно больше чем для .hidescreen*/
     left: 50%;
     top: 50%;
     padding: 30px 10px;
     text-align: center;
     color: white;
     font: normal normal 15px Verdana;
     border: none;
     margin-left: -125px;
     width: 250px;
}
.services-btn {
	text-align: left;
	padding: 0 1em;
	vertical-align: top;
	width: 100%;
	white-space: normal;
	font-size: 18px;
	color: #2c608a;
	display: inline-flex;
	position: relative;
	border-left: 2px solid;
	margin-bottom: 25px;
}
.services-btn:hover {
    color:#fff;
    /*background:#ae3d21;*/
    background: #ff9b4d;
    text-decoration: none;
}
#main-modal .modal-dialog {
    width:60% !important;
    overflow-y: initial !important
}

#main-modal .modal-dialog.modal-lg {
    width:90% !important;
    overflow-y: initial !important
}

.modal-body {
    overflow-y: auto;
    overflow-x: hidden;
}

.services .tab-content {
	background: #fff;
	padding: 3vw 5vw;
	counter-reset: list;
}

.services .info-box::after {
	content: "";
	display: block;
	width: 12px;
	height: 6px;
	background: url("../img/info-box-arrow.png");
	position: absolute;
	top: 13px;
	right: 10px;
}

.services .info-box::before {
	counter-increment: list;
	content: counter(list);
	display: inline-block;
	color: #999999;
	font-size: 12px;
	width: 20px;
	line-height: 18px;
	text-align: center;
	border-radius: 50%;
	border: 1px solid #84c7e5;
	position: absolute;
	top: 10px;
	left: 10px;
}

.services .info-box {
	padding: 10px 40px;
	background: #fafafa;
	border-radius: 4px;
	margin-bottom: 15px;
	position: relative;
	-webkit-transition: all 0.2s ease-in-out;
	-o-transition: all 0.2s ease-in-out;
	transition: all 0.2s ease-in-out;
	-webkit-box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.16);
	box-shadow: 0px 1px 3px 0px rgba(0, 0, 0, 0.16);
}

.services .info-box .title span {
	display: inline-block;
	border-bottom: 1px dashed;
	cursor: pointer;
}

.services .info-box .full-text {
	display: none;
	font-size: 12px;
}

.services .info-box::after {
	content: "";
	display: block;
	width: 12px;
	height: 6px;
	background: url("../img/info-box-arrow.png");
	position: absolute;
	top: 13px;
	right: 10px;
}

.services .info-box.opened .title {
	margin-bottom: 8px;
}

.services .info-box.opened::after {
	background-position: 0 -6px;
}

.services .info-box.opened::before {
	color: #fff;
	background: #84c7e5;
}

.services .info-box.opened {
	background: #fff;
}
.modal-header .form-title {
    margin-top: -10px;
    text-align: left;
}
.modal-header {
    border-top-right-radius: 6px;
    border-top-left-radius: 6px;
}
.form-title {
    font-size: 24px;
    color: #2c608a;
    padding: 10px;
    text-align: center;
}
.action-btn {
	width: 250px;
	margin-top: 25px;
	height: 150px;
	/* font-size: 18pt; */
	white-space: normal;
	font-weight: bold;
	padding: 12px;
	text-align: center;
	padding: 1em;
	float: unset;
	vertical-align: top;
}
.action-btn span {
	display: table;
	margin: auto;
	border: 2px solid;
	padding: 0.3em;
	text-align: center;
	font-size: 3em;
	line-height: 100%;
	font-weight: bolder;
	border-radius: 50%;
}
.action-btn p {
    margin: 14px 0;
}
.grid-view tr.new {
    font-weight: bold;
}
.btn.services-btn.in-develop {
	cursor: not-allowed;
	color: rgba(44, 96, 138, 0.75);
	pointer-events: none;
	background-image: url(/images/icons/in_develop.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}
.scrollToTop-btn {
	position: fixed;
	bottom: 0.5vh;
	right: 5vh;
	display: none;
	z-index: 1040;
	font-size: 25px;
	padding: 5px 10px 3px 8px;
	background-color: rgba(51, 122, 183, 0.75);
}
@media only screen and (max-width: 648px),
    screen and (max-device-width: 648px) {
        .grid-view.table-responsive {
            overflow-y: auto;
            max-height: calc(100vh - 200px);
        }
        .grid-view .table-responsive {
                overflow-y: auto;
                max-height: calc(100vh - 200px);
        }
    }

.grid-view th a {
	position: relative;
	margin-left: 15px;
	display: table;
}
.grid-view th a::before {
	content: "\e150";
	position: absolute;
	top: 3px;
	left: -15px;
	display: inline-block;
	font-family: 'Glyphicons Halflings';
	font-style: normal;
	font-weight: 400;
	/* line-height: 1; */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 12px;
	margin-right: 5px;
}

.grid-view th a.asc:before {
	content: "\e155";
}

.grid-view th a.desc:before {
	content: "\e156";
}

.grid-view th {
	vertical-align: top !important;
}
.table-responsive > .table > tbody > tr > td,
.table-responsive > .table > tbody > tr > th,
.table-responsive > .table > tfoot > tr > td,
.table-responsive > .table > tfoot > tr > th,
.table-responsive > .table > thead > tr > td,
.table-responsive > .table > thead > tr > th {
    white-space: normal;
}
.dropdown-menu {
    min-width: 30vw;
}
.dropdown-menu > li > a {
    white-space: normal;
}
/*
#mibew-agent-button::before {
	font-family: "Flaticon";
	content: "\f100";
	font-size: 35px;
	position: fixed;
	top: 50%;
	left: 5px;
	opacity: 1;
	z-index: 201;"
}
*/
/*#mibew-agent-button {
	position: fixed;
	bottom: 0px;
	width: 150px;
	height: 25px;
	z-index: 999;
    background-color: #ff9b4d;
    color: #555;
    text-shadow: none;
	padding-top: 1px;
	border-radius: 3px;
    text-align: center;
    font-weight: 600;
}
a#mibew-agent-button:hover {
    background-color: #f0934b;
}*/