@font-face {
    font-family: "Roboto Regular";
    src: url("/assets/main/fonts/Roboto-Regular.ttf");
}
@font-face {
    font-family: "Roboto Black";
    src: url("/assets/main/fonts/Roboto-Black.ttf");
}
@font-face {
    font-family: "Roboto Bold";
    src: url("/assets/main/fonts/Roboto-Bold.ttf");
}
h1, h2, h3, h4 {
    font-family: "Roboto Black", serif;
}
html,
body {
    height: 100%;
    font-family: "Roboto Regular", serif;
    font-size: 16px;
    color: #535353;
}

#wrapper {
    display: table;
    height: 100%;
    width: 100%;
}
.wrap {
    display: table-row;
    height: 100%;
    background : -moz-linear-gradient(-60.51% 17.69% -45deg,rgba(252, 250, 250, 1) 0%,rgba(252, 250, 248, 1) 48.29%,rgba(253, 252, 239, 1) 76.63%,rgba(255, 255, 225, 1) 99.79%,rgba(255, 255, 225, 1) 100%);
    background : -webkit-linear-gradient(-45deg, rgba(252, 250, 250, 1) 0%, rgba(252, 250, 248, 1) 48.29%, rgba(253, 252, 239, 1) 76.63%, rgba(255, 255, 225, 1) 99.79%, rgba(255, 255, 225, 1) 100%);
    background : -webkit-gradient(linear,-60.51% 17.69% ,160.51% 82.31% ,color-stop(0,rgba(252, 250, 250, 1) ),color-stop(0.4829,rgba(252, 250, 248, 1) ),color-stop(0.7663,rgba(253, 252, 239, 1) ),color-stop(0.9979,rgba(255, 255, 225, 1) ),color-stop(1,rgba(255, 255, 225, 1) ));
    background : -o-linear-gradient(-45deg, rgba(252, 250, 250, 1) 0%, rgba(252, 250, 248, 1) 48.29%, rgba(253, 252, 239, 1) 76.63%, rgba(255, 255, 225, 1) 99.79%, rgba(255, 255, 225, 1) 100%);
    background : -ms-linear-gradient(-45deg, rgba(252, 250, 250, 1) 0%, rgba(252, 250, 248, 1) 48.29%, rgba(253, 252, 239, 1) 76.63%, rgba(255, 255, 225, 1) 99.79%, rgba(255, 255, 225, 1) 100%);
    -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#FCFAFA', endColorstr='#FFFFE1' ,GradientType=0)";
    background : linear-gradient(135deg, rgba(252, 250, 250, 1) 0%, rgba(252, 250, 248, 1) 48.29%, rgba(253, 252, 239, 1) 76.63%, rgba(255, 255, 225, 1) 99.79%, rgba(255, 255, 225, 1) 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#FCFAFA',endColorstr='#FFFFE1' , GradientType=1);
}

.wrap > .container {
    padding: 70px 15px 20px;
}


.jumbotron {
    text-align: center;
    background-color: transparent;
}

.jumbotron .btn {
    font-size: 21px;
    padding: 14px 24px;
}

.not-set {
    color: #c55;
    font-style: italic;
}

/* add sorting icons to gridview sort links */
a.asc:after, a.desc:after {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    padding-left: 5px;
}

a.asc:after {
    content: /*"\e113"*/ "\e151";
}

a.desc:after {
    content: /*"\e114"*/ "\e152";
}

.sort-numerical a.asc:after {
    content: "\e153";
}

.sort-numerical a.desc:after {
    content: "\e154";
}

.sort-ordinal a.asc:after {
    content: "\e155";
}

.sort-ordinal a.desc:after {
    content: "\e156";
}

.grid-view th {
    white-space: nowrap;
}

.hint-block {
    display: block;
    margin-top: 5px;
    color: #999;
}

.error-summary {
    color: #a94442;
    background: #fdf7f7;
    border-left: 3px solid #eed3d7;
    padding: 10px 20px;
    margin: 0 0 15px 0;
}

/* align the logout "link" (button in form) of the navbar */
.nav li > form > button.logout {
    padding: 15px;
    border: none;
}

@media(max-width:767px) {
    .nav li > form > button.logout {
        display:block;
        text-align: left;
        width: 100%;
        padding: 10px 15px;
    }
}

.nav > li > form > button.logout:focus,
.nav > li > form > button.logout:hover {
    text-decoration: none;
}

.nav > li > form > button.logout:focus {
    outline: none;
}

/* САЙДБАР */


.nav .open > a,
.nav .open > a:hover,
.nav .open > a:focus {background-color: transparent;}

/*-------------------------------*/
/*           Wrappers            */
/*-------------------------------*/

#wrapper {
    position: relative;
    padding-left: 0;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

#wrapper.toggled {
    overflow-y: hidden;
}

#sidebar-wrapper {
    z-index: 9998;
    left: 350px;
    width: 0;
    height: 100%;
    margin-left: -350px;
    margin-bottom: 0;
    overflow-y: inherit;
    overflow-x: hidden;
    background: white;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}

#sidebar-wrapper::-webkit-scrollbar {
    display: none;
}

#wrapper.toggled #sidebar-wrapper {
    width: 350px;
}

#page-content-wrapper {
    position: relative;
    width: 100%;
}
@media screen and (min-width: 768px){
    #page-content-wrapper {
        padding-top: 0;
    }
}

#wrapper.toggled #page-content-wrapper {
    position: relative;
}

/*-------------------------------*/
/*     Sidebar nav styles        */
/*-------------------------------*/

.sidebar-nav {
    position: absolute;
    top: 0;
    width: 220px;
    margin: 0;
    padding: 50px 0 0 0;
    list-style: none;
}

.sidebar-nav > li {
    position: relative;
    width: 100%;
}

.sidebar-nav > li > a {
    display: block;
    color: #535353;
    text-decoration: none;
    padding: 10px 15px 10px 30px;
}

.sidebar-nav > li > a:hover,
.sidebar-nav > li > a:active,
.sidebar-nav > li > a:focus,
.sidebar-nav > li.open > a:hover,
.sidebar-nav > li.open > a:active,
.sidebar-nav > li.open > a:focus{
    color: #F5D720;
    text-decoration: none;
    background-color: transparent;
}

.sidebar-nav > .sidebar-brand {
    height: 100%;
    font-size: 20px;
    line-height: 44px;
}
/*
.sidebar-nav .dropdown-menu {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
    border-radius: 0;
    border: none;
    background-color: #222;
    box-shadow: none;
}
*/
.sidebar-nav .dropdown-menu {
    width: 100%;
}
    /*-------------------------------*/
/*       Hamburger-Cross         */
/*-------------------------------*/
#menu-main-button {
    display: block;
}
.hamburger {
    position: fixed;
    top: 20px;
    z-index: 9999;
    display: block;
    width: 32px;
    height: 32px;
    margin-left: 15px;
    background: transparent;
    border: none;
}
.hamburger.toggled {
    left: 220px;
}
.hamburger:hover,
.hamburger:focus,
.hamburger:active {
    outline: none;
}
.hamburger.is-closed:before {
    content: '';
    display: block;
    width: 100px;
    font-size: 14px;
    color: #fff;
    line-height: 32px;
    text-align: center;
    opacity: 0;
    -webkit-transform: translate3d(0,0,0);
    -webkit-transition: all .35s ease-in-out;
}
.hamburger.is-closed:hover:before {
    opacity: 1;
    display: block;
    -webkit-transform: translate3d(-100px,0,0);
    -webkit-transition: all .35s ease-in-out;
}
.hamburger.is-open {
    margin-left: 300px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.hamburger.is-closed {
    left: 20px;
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.hamburger.is-closed .hamb-top,
.hamburger.is-closed .hamb-middle,
.hamburger.is-closed .hamb-bottom,
.hamburger.is-open .hamb-top,
.hamburger.is-open .hamb-middle,
.hamburger.is-open .hamb-bottom {
    position: absolute;
    left: 0;
    height: 4px;
    width: 100%;
}
.hamburger.is-closed .hamb-top,
.hamburger.is-closed .hamb-middle,
.hamburger.is-closed .hamb-bottom {
    background-color: #F5D720;

}
.hamburger.is-closed .hamb-top {
    top: 5px;
    -webkit-transition: all .35s ease-in-out;
}
.hamburger.is-closed .hamb-middle {
    top: 50%;
    margin-top: -2px;
}
.hamburger.is-closed .hamb-bottom {
    bottom: 5px;
    -webkit-transition: all .35s ease-in-out;
}

.hamburger.is-closed:hover .hamb-top {
    top: 0;
    -webkit-transition: all .35s ease-in-out;
}
.hamburger.is-closed:hover .hamb-bottom {
    bottom: 0;
    -webkit-transition: all .35s ease-in-out;
}
.hamburger.is-open .hamb-top,
.hamburger.is-open .hamb-middle,
.hamburger.is-open .hamb-bottom {
    background-color: #F5D720;
}
.hamburger.is-open .hamb-top,
.hamburger.is-open .hamb-bottom {
    top: 50%;
    margin-top: -2px;
}
.hamburger.is-open .hamb-top {
    -webkit-transform: rotate(45deg);
    -webkit-transition: -webkit-transform .2s cubic-bezier(.73,1,.28,.08);
}
.hamburger.is-open .hamb-middle { display: none; }
.hamburger.is-open .hamb-bottom {
    -webkit-transform: rotate(-45deg);
    -webkit-transition: -webkit-transform .2s cubic-bezier(.73,1,.28,.08);
}
.hamburger.is-open:before {
    content: '';
    display: block;
    width: 100px;
    font-size: 14px;
    color: #fff;
    line-height: 32px;
    text-align: center;
    opacity: 0;
    -webkit-transform: translate3d(0,0,0);
    -webkit-transition: all .35s ease-in-out;
}
.hamburger.is-open:hover:before {
    opacity: 1;
    display: block;
    -webkit-transform: translate3d(-100px,0,0);
    -webkit-transition: all .35s ease-in-out;
}

/*-------------------------------*/
/*            Overlay            */
/*-------------------------------*/

.overlay {
    position: fixed;
    display: none;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: black;
    opacity: 0.5;
    z-index: 9998;
}
#main-menu .login {

}
#main-menu .dropdown-menu {
    border: 1px solid #F5D720;
    border-radius: 0;
    font-size: 16px;
    width: auto;
    top: 0;
    z-index: 10000;
}
#main-menu .dropdown-menu a {
    padding: 10px 20px;
}
#main-menu .dropdown-menu a:hover {
    color: white;
    background: #F5D720;
}

@media screen and (min-width: 768px) {
    #sidebar-wrapper {
        width: 100%;
        z-index: 9999;
        position: relative;
        height: auto;
        overflow: inherit;
        margin-bottom: auto;
        min-height: 80px;

    }
    #main-menu {
        position: relative;
        width: 100%;
    }
    #main-menu .site-logo {
        position: absolute;
        left: 20px;
        top: 10px;
    }
    #main-menu .site-logo a {

    }
    #main-menu .site-logo img {
        height: 60px;
    }
    #main-menu .login {
        position: absolute;
        top: 25px;
        right: 30px;
        font-size: 25px;
    }
    #main-menu .login a {
        color: #F5D720;
    }
    #menu-main-button {
        display: none;
    }
    ul.sidebar-nav {
        width: 768px;
        padding: 0;
        position: relative;
        margin: 0 auto;
        text-align: center;
        padding-top: 20px;
    }
    ul.sidebar-nav > li{
        width: auto;
        display: inline-block;
    }
}

/* ГЛАВНАЯ */
.main-logo {
    position: relative;
    height: 200px;
    max-width: 1920px;
    margin: 0 auto;
    background: url(/assets/main/images/duosoft_main_logo_small.png) center center no-repeat;
}
@media screen and (min-width: 768px) {
    .main-logo {
        position: relative;
        height: 100vh;
        width: 100%;
        background: url(/assets/main/images/duosoft_main_pic.jpg) center center no-repeat;
        background-size: cover;
    }
}
.main-category-block {
    margin-top: 20px;
}
.main-category-block > .header {
    border-bottom: 1px solid #F5D720;
    border-top: 1px solid #F5D720;
    padding: 10px 0;
    text-align: center;
}
.main-category-block > .header h2 {
    font-size: 16px;
    margin: 0;
}

/* Removes the default 20px margin and creates some padding space for the indicators and controls */
#news-carousel.carousel {
    margin-bottom: 0;
    padding: 0 40px 30px 40px;
}
#news-carousel .carousel-control.left {
    background: none;
    color: #F5D720;
    width: 5%;
}
#news-carousel .carousel-control.right {
    background: none;
    color: #F5D720;
    width: 5%;
}
#news-carousel .carousel-control span {
    font-size: 20px;
    color: white;
}
/* Changes the position of the indicators */
#news-carousel .carousel-indicators {
    right: 50%;
    top: auto;
    bottom: 0px;
    margin-right: -19px;
}
/* Changes the colour of the indicators */
#news-carousel .carousel-indicators li {
    background: #c0c0c0;
}
#news-carousel .carousel-indicators .active {
    background: #F5D720;
}
.news-block {
    max-width: 90%;
    margin: 0 auto;
    height: 250px;
}
.news-block .header {
    font-family: "Roboto Black", serif;
}
.news-block .header .date, .news-block .header .date a {
    font-size: 20px;
    color: #F5D720;
    margin-top: 10px;
}
.news-block .header .title {
    font-size: 16px;
    margin-top: 10px;
    margin-bottom: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 22px;
    text-transform: uppercase;
}
/*.news-block .header .title.blog {
    font-size: 30px;
    line-height: 32px;
}*/
.news-block.blog h2 {
    font-size: 16px;
    line-height: 22px;
}
.related a {
    text-decoration: none;
}
.related a:hover {
    background: #F5D720;
    color: white;
    text-decoration: none;
}
.news-block .header .title a, .news-block .header .title, .related a {
    color: #535353;
}
.related {
    margin-top: 30px;
}
.related .title {
    margin-bottom: 10px;
}
.related li {
    margin-top: 5px;
}
.news-block .content {
    margin-top: 10px;
    overflow: hidden;
}
#news-carousel .col-md-6 {
    overflow: hidden;
}
.main-app-block {
    position: relative;
    height: 500px;
}
.main-desc-block {
    position: relative;
    width: 300px;
    margin: 20px auto;
    padding-top: 10px;
    z-index:100;
}
.main-desc-block h3 {
    font-family: "Roboto Black", serif;
    font-size: 30px;
}
.main-app-block .main-app-image-container {
    position: absolute;
    top: -70px;
    right: -270px;
}
.main-app-block .opacity-overlay {
    opacity: 0.2;
    position: absolute;
    width: 100%;
    height: 100%;
    background: url("/assets/main/images/main_mobile_app.png") center center no-repeat;
    background-size: cover;
}
.buttons {
    margin-top: 20px;
}
.buttons a {
    margin-top: 10px;
    display: block;
    width: 100%;
    background-color: #F5D720;
    color: white;
    text-align: center;
    font-family: "Roboto Black", serif;
    padding: 10px 0;
}
.buttons a:hover {
    text-decoration: none;
}

@media screen and (min-width: 992px){
    .main-app-block {
        border-left: 20px solid #F5D720;
        padding: 20px 0 0 50px;
        margin: 100px 0 0 50px;
    }
    .main-desc-block {
        width: 300px;
        margin: 0;
        padding-top: 0;
    }

}

.main-pc-block .main-pc-image-container {

}
.main-pc-block .main-pc-image-container img {
    display: block;
    position: relative;
}
.main-pc-block .opacity-overlay {
    opacity: 0.2;
    position: absolute;
    margin: 0 auto;
    width: 100%;
    height: 100%;
    background: url("/assets/main/images/main_pc.png") center center no-repeat;
    background-size: cover;
}
.main-pc-block .yellow-panel {
    background-color: #F5D720;
    top: 0;
    bottom: 0;
    left: 0;
    width: 50%;
    position: absolute;
}
@media screen and (min-width: 992px){
    .main-pc-block {
        margin: 70px 0 0 70px;
    }
    .main-pc-block .main-desc-block {
        margin: 100px auto 0 auto;
        padding-left: 30px;
        width: 330px;
    }
}

.main-website-block {
    position: relative;
}

@media screen and (min-width: 992px){
    .main-website-block {
        margin: 270px 0 50px 50px;
    }
    .main-website-image-container {
        position: absolute;
        top: -230px;
        z-index: 9998;
    }
    .main-website-block .main-desc-block {
        margin: 0 auto 0 auto;
        width: 80%;
        padding: 180px 30px 30px 30px;
        position: relative;
        border: 15px solid #F5D720;
    }
    .main-website-block h3 {
        text-align: center;
    }
}

footer {
    position: relative;

}
footer .header {
    padding: 10px 0;
    border: 1px solid #F5D720;
    text-align: center;
}
footer .copyright {
    padding: 10px 0;
    border-top: 1px solid #F5D720;
    text-align: center;
    margin-top: 20px;
}
footer .content {
    margin: 0 auto;
    text-align: center;
}
footer ul {
    list-style: none;
    margin: 20px auto;
    padding: 0;
}
footer ul li {
    display: inline-block;
    width: 140px;
}
footer .content a{
    color: #535353;
}
footer .content a:hover {
    text-decoration: none;
}
footer .content img {
    display: block;
    margin: 0 auto;
    height: 40px;
    width: 40px;
}
.footer-button {
    margin: 0 auto;
    display: block;
    background-color: #F5D720;
    color: white;
    width: 250px;
    text-align: center;
    font-family: "Roboto Black", serif;
    padding: 10px 20px;
    border: none;
    outline: none;
}
.footer-button:hover {
    text-decoration: none;
    color: white;
}
.footer .mail {
    margin-top: 10px;
    text-align: center;
}
.footer .mail a {
    color: #535353;
    text-decoration: underline;
}

.pagination-block {
    text-align: center;
}
.pagination li a {
    color: #535353;
}
.pagination li.active a {
    background-color: #F5D720;
    border-color: #F5D720;
}
.pagination li.active a:hover {
    background-color: #F5D720;
    border: 1px solid #F5D720;
}

.news-wrapper .news-block {
    max-width: 1170px;
    margin: 0 auto;
    padding-bottom: 20px;
    height: auto;
}
.news-wrapper .news-divider {
    border-bottom: 1px solid #F5D720;
    width: 100%;
}
.news-wrapper .news-block .content {
    height: 200px;
    overflow: hidden;
}
.news-wrapper .news-block .news-image a {
    text-align: center;
    display: block;
    margin: 0 auto;
}
.news-wrapper .news-block .news-image img {
    height: 250px;
    margin-top: 15px;
}
.categories.buttons {
    max-width: 1170px;
    margin: 10px auto 0 auto;
    text-align: center;
}
.categories.buttons a, .categories.buttons button {
    width: auto;
    display: inline-block;
    padding: 10px;
    margin: 10px 5px 0 5px;
    background-color: white;
    color: #F5D720;
    border: 1px solid #F5D720;
}
.categories.buttons a.active, .categories.buttons button.active{
    background-color: #F5D720;
    color: white;
}
.categories.buttons button:focus{
    outline: none;
}
.categories.buttons button {
    color: #535353;
}
.news-wrapper {
    padding: 20px 0;
}
.categories-links a {
    color: #535353;
    text-decoration: underline;
}
.categories-links a:hover {
    color: white;
    background-color: #F5D720;
    text-decoration: none;
}
@media screen and (min-width: 768px) {
    .news-wrapper .news-block {
        margin: 20px auto 0;
    }
    .news-wrapper .news-block .content {
        height: 160px;
    }
}
@media screen and (min-width: 992px) {
    .news-wrapper {
        padding: 0;
    }
}

.news-wrapper .news-block.single {
    max-width: 1000px;
    margin: 30px auto;
}
.news-wrapper .news-block.single .content {
    height: auto;
}
.news-share {
    margin-top: 30px;
    text-align: center;
}

#form-wrapper {
    max-width: 500px;
    margin: 0 auto;
}
#form-wrapper .form-pane {
    margin-top: 30px;
}

.portfolio {
    text-align: center;
    max-width: 1700px;
    margin: 20px auto 0;
}
.portfolio .poster {
    width: 400px;
    height: 240px;
}
.portfolio .icon {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 40px;
}
.portfolio div.title {
    position: absolute;
    display: block;
    bottom: 0;
    right: 40px;
    left: 0;
    height: 40px;
    line-height: 40px;
    text-align: left;
    padding-left: 10px;
    background:rgba(0,0,0,0.5);
}
.portfolio div span {
    color: white;
}
.portfolio-items {
    padding: 0;
    list-style: none;
}
.portfolio-items li {
    display: inline-block;
    padding: 0;
    margin: 0;
    margin-right: -4px;
    margin-top: -6px;
}
.portfolio-items a {
    display: block;
    position: relative;
    overflow: hidden;
}

@media screen and (min-width: 992px) {
    .portfolio div.title {
        display: none;
        bottom: -40px;
    }
}

.news-wrapper.app {

}
@media screen and (min-width: 768px) {
    .app .app-title-block {
        height: 420px;
    }
    .app .app-title-block > div, .app .shortstory > div  {
        height: 100%;
    }
}

.app .poster-table {
    text-align: center;
    width: 100%;
    height: 100%;
}
.app .poster-cell img {
    max-height: 400px;
    max-width: 400px;
}
.table-div {
    display: table;
}
.table-cell-div {
    display: table-cell;
    vertical-align: middle;
}
.app .title {
    width: 100%;
    height: 100%;
    max-width: 300px;
    max-height: 400px;
    margin: 0 auto;
}
.app h1.app-title {
    font-family: "Roboto Black", serif;
    font-size: 30px;
}
.app .app-buttons {
    width: 100%;
    margin-top: 30px;
}
.app .app-buttons a {
    display: block;
    text-align: center;
    width: 100%;
    padding: 10px;
    color: white;
    background-color: #F5D720;
    margin-top: 20px;
}
.app .app-buttons a:hover {
    text-decoration: none;
}
.app .full-width-block {
    width: 100%;
    background: white;
}
.app .shortstory, .app .fullstory {
    margin: 0 auto;
    padding: 20px 0;
}
.fullstory img {

}
.app .video {
    margin-top: 30px;
    width: auto;
    height: 300px;
}
.app .related-apps h2 {
    margin-bottom: 30px;
}
.app .related-app-block {
    text-align: center;
}
.app .related-app-block img {
    max-width: 200px;
}

@media screen and (min-width: 768px) {
    .app .video {
        margin-top: 0;
        width: 100%;
        height: 350px;
    }
    .app .news-block {
        max-width: 1000px;
    }
}

.news-block.contact {
    max-width: 700px;
}