@media (min-width: 1400px) {
    h1, .h1 {font-size:35px;}
    h2, .h2 {font-size:30px;}
    h3, .h3 {font-size:26px;}
}
@media (max-width: 1365px) {
    .photos > a {height:150px;}

    .cont-left {padding-left:20px;}
    .cont-right {padding-right:20px;}
}

@media (max-width: 1200px) {
    .menu-cont .pc-menu a {margin: 0 15px;}
    .top2-text-cont {
        width:65%;
        padding-top:40px;
        padding-bottom:60px;
    }
}

@media (min-width: 480px) {
    .md-valign-middle {
        vertical-align:middle;
    }
}

@media (max-width: 1023px) {
    
    .menu-main a {
        font-size:14px;
    }
    .logo span:nth-child(2) {font-size:16px;}
    
    .mainimg {height:300px;}
    .addimgs .img {height:70px;}
 
    .photos > div {width:25%;}
}

@media (max-width: 900px) {
    
    .pad {padding-left:20px;padding-right:20px;}
    .events .item.large .img .button {right:10px;}
    .map-cont {height:400px;}

    .menu-bottom a {
        display: inline-block;
        width:25%;
        font-size:14px;
        margin:10px 0;
    }
    .menu-bottom {height:auto; padding:10px 0;}

    .catalog .item > div .info .text-right {text-align: left;}
    
    .fpanel {
        margin:0 -5px;
        padding:0 5px;
    }
    .catalog-subs-list {padding-right:10px;}
    
    .search-button {
        padding-left:20px;
    }
    .menu-cont {
    }
    .menu-cont .pc-menu a {
        margin:0 10px;
    }
    
    .cube-text {
        float: none !important;
        width:auto;
    }
    .cube-photo {
        display: inline-block;
        float:right;
        width:300px;
        height:250px;
        margin:40px 30px 10px;
    }
    .cube {
        height:auto;
        padding-bottom: 40px;
        border-bottom: 1px solid #ddd;
    }
}

@media (max-width: 750px){

    .logo img {width: 90px}
    .logo {
        float:left;
        padding:0;
    }
    .menu-cont {
        padding: 12px 10px 0 0;
        position: static;
        float:right;
    }
    .menu-main {
        padding: 25px 0;
    }
    .top-margin,
    .menu-main-cont {height:100px;}

    .menu-main .menu-subs {
        display:none !important;
        position: static;
        max-height: none;
    }
    .mb-menu {
        display: inline-block;
        cursor: pointer;
    }
    .pc-menu {height:auto;}
    .mb-menu a:first-child {padding-left:60px; padding-right:15px;}
    .mb-menu a:last-child {float:right;}
    .mb-menu a {font-size:16px;}
    .menu-cont .pc-menu a.sel:hover,
    .menu-cont .pc-menu a.sel,
    .menu-cont .pc-menu a {
        display:block !important;
        font-size:16px !important;
        line-height: 1.4em;
        padding:12px 20px 12px;
        margin: 0 -20px;
        border-bottom: 1px solid #eee;
        background:none;
        color:black;
    }
    .menu-cont .pc-menu a:hover {
        color:#bf0000;
    }
    .menu-cont .pc-menu a.sel:hover {color:#d40000;}
    .menu-cont .pc-menu a:last-child {border:none !important;}
    .menu-cont .pc-menu {
        position: absolute;
        z-index: 0;
        right:0;
        text-align: left;
        padding:0 20px;
        margin-left:0px;
        top:100%;
        min-width:200px;
        max-width:400px;
        background:white;
        transition: all 300ms;
        box-shadow: 0 2px 5px rgba(0,0,0,0.4);
        max-height:0;
        overflow: hidden;
    }
    .menu-cont .pc-menu.show {
        padding:3px 20px 3px;
        max-height: 500px;
    }
    

    .ns-logo {width:300px;}
    .head .side-right {display:none;}
    
    .cont-left {float:none;}
    .cont-left, .cont-right {max-width: none;}
    .side-content {display:block;}
    .side-content .side-left, .side-content .side-right {
        width:100%;
        display: block;
        float:none;
        max-width: none;
        width:auto;
    }
    
    .catalog.wide.pc-wide {display:none;}
    .catalog.wide.mb-wide {display:block;}
    
    .head .cont-left *, .head .cont-right *,
    .head .side-left, .head .side-right {
        min-height: 90px;
        line-height: 90px;
    }
    .head.sm {
        min-height: 90px !important;
    }
    .head .side-left img {
        min-height:0;
        height:70px;
    }
    .documents .item > .ico {
        width:40px;
        height:40px;
        background-size: 100% auto;
    }
    .documents .item {
        padding-left:45px;
    }
    
    .photos > div {width:33.33333333%;}
    
    .types {text-align: center;}
    .types .item span {font-size:16px;}
    .types .item {width:33.333333%;}
    
    .banners .twister .item .back {
        width:60%;
        padding-right:20px;
    }
    .banners .twister .item {height:300px;}
    .catalog-subs-list {padding-right:10px;}
    .fpanel {
        margin:0 -5px 0 0;
        padding:0;
    }
    
    .catalog-header {padding-right:120px;}
    .item-share > span {display: none;}
    
    .right-icons {
        padding-left:20px;
    }
    
    .cube-text {
        padding:10px 30px;
    }
    .cube-photo {
        width:250px;
        height:200px;
    }
}

@media (max-width: 600px) {
    .top2-text-cont {
        width:100%;
        padding-top:10px;
        padding-bottom:40px;
    }

    .side-left,
    .side-right {
        display: block;
        width:auto;
    }
    
    .menu-bottom a {width:40%;}
    .col.column {display: none;}
    .col.subcontent {width:100% !important; display: block;}
    
    .illust.left,
    .illust.right {float:none; text-align: center;}
    
    .illust.left,
    .illust.right {width:100%;}
    .cube-photo {
        width:200px;
        height:150px;
    }
    .cube-desc {
        min-height:0;
    }

    .gn-header {
        padding:0 30px;
    }
    .catalog-item .mainimg {
        min-height:0;
    }
}

@media (max-width: 479px) {
    .info-block {
        padding:10px;
    }
    .feedback {
        padding: 20px;
    }
    
    .pad {padding-left:10px;padding-right:10px;}
    .menu-main .menu-cont {padding-right:5px;}
    .events .item.large .img .button {right:5px;}
    
    .copyright {height:auto; line-height: 1.2em; padding:5px 5px;}
    .copyright .right {float:none; text-align: center; width:auto;}
    
    .events .item.large .img {height:250px;}
    .events .item.large .title {padding-top:5px;}
    .events .item.large .title a {font-size:25px;}
    
    .logo span:nth-child(2) {font-size:14px; margin-left:5px;}
    
    .photos > div {width:50%;}
    
    .catalog.twister .item > div .img,
    .catalog .item > div .img {
        display: block;
        position: relative;
        height:200px;
        width:auto;
    }
    .catalog .item > div {padding-left:0;}
    .copytext {
        clear:both;
        text-align: center;
    }
    
    .banners .twister .item {height:300px;}
    .banners .twister .item .button {position: static;}
    .banners .twister .item .back {
        width:100%;
        text-align: center;
    }
    .mainimg {margin-bottom: 15px;}

    .cube-photo {
        margin:40px 20px 5px;
    }
    .cube-text {
        padding:10px 10px;
    }
    .cube-photo {
        width:150px;
        height:100px;
    }
    h1, .h1 {font-size:24px;}
    .catalog-item .predesc {font-size:16px;}
}
@media (max-width: 440px) {
    .types .item {width:50%;}
    .cube {
        padding-bottom: 20px;
    }
    .top-desc {
        margin-bottom: 20px;
        font-size:16px;
    }
}

@media (max-width: 400px) {
    .head a span {display:none;}
    .menu-main.stick .logo span:nth-child(2),
    .logo span:nth-child(2) {font-size:12px;}
    .menu-main.stick .logo span:nth-child(2) {
        max-height: 30px;
        overflow: hidden;
    }
    .logo span:nth-child(2) {max-width:150px;}
    
    .map-cont {height:250px;}
    .photos > div {height:110px;}    
    
}

@media (max-width: 350px) {
    
    .events .item.large .img {height:200px;}
    .events .item .img {width:100px; margin-left:-100px;}
    .events .item.small .img .button {font-size:12px; padding:0 8px;}
    .events .item.small {padding-left:100px;}
    .events .item.large .title a {font-size:20px;}
}