

/* ==========================================================================
   Author's custom styles
   ========================================================================== */


html {
font-family: sans-serif;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
}
::-moz-focus-inner { border: 0; padding: 0; }
body { margin:0; padding:0;}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

div{ margin:0; outline:0;}
ul {outline:0;}
a:active,
a:hover {
  outline: 0;
}
/*убираем бордюры*/
img, a:link img, a:visited img, a:hover img, a:active img { border: 0; }
a:focus { border:0px; }
/*общее оформление ссылок*/
a { color: #065b9c; text-decoration: none; }
a:hover { color:#065b9c; text-decoration:underline; }


/*бэкграунд*/
html {background:#fff;}
body {min-width:1240px; font-size: 16px; line-height: 1.3; color:#3b3b3b; font-weight:normal;}
 
/*разделитель*/
.clear { height:0px; width:100%; clear:both; }

/*все дивы в бокссайз бордер бокс*/
div {
	box-sizing: border-box;
}

/* обновите браузер*/
.browserupgrade {
	text-align:center;
	padding:10px;
	background:#fff;
	border-bottom:3px solid #000;
}
.browserupgrade a {
	color:#ff0000;
	font-weight:bold;
	text-decoration:underline;
}

/* шрифт */
body {font-family: 'Open Sans', sans-serif;}



/* Типографика */
h1 {
	font-weight:bold;
	font-size:28px;
	line-height:36px;
	text-align:center;
	padding:20px;
	margin:40px 0px 20px;
	text-transform:uppercase;
}
h2 {
	font-weight:bold;
	color:#333;
	font-size:32px;
	line-height:42px;
	padding:0;
	margin:50px 0 20px;
	letter-spacing:1px;
	text-transform:uppercase;
}
.teplo h2 {
    color:#ac8951;
}
.suho h2 {
    color:#418f9c;
}
h3 {
	font-weight:bold;
	font-size:21px;
	line-height:28px;
	margin:20px 0px 10px;
}
.teplo h3 {
    color:#ac8951;
}
.suho h3 {
    color:#418f9c;
}
p {
	margin:0 0 15px;
}


/*центрируем блоки*/
.center-box {
	margin:0 auto;
	width:1200px;
	position:relative;
	    /*background:rgba(0,0,0,0.03);*/
}


/*шапка*/

.header-line {
    height:140px;
    background:#fff;
    box-shadow: 0 0 3px rgba(0,0,0,0.3);
    position:relative;
    z-index:200;
}
    .header-line .logo-box {
        float:left;
        width:210px;
        height:140px;
    }
        .header-line .logo-box a {
            display:block;
        }
        .header-line .logo-box img {
            width:210px;
            height:140px;
        }
    .header-line .b1 {
        float:left;
        width:900px;
        margin-left:90px;
        height:140px;
    }  
        .header-line .b2 {
            width:100%;
            height:90px;
            padding:9px 0;
        }
            .header-line .b2 .contact-box {
                float:left;
                height:72px;
                line-height:36px;
                font-size:18px;
                width:400px;
                margin-left:50px;
                position:relative;
            }
                .header-line .b2 .telefon {
                    height:36px;
                    padding:0 0 0 40px;
                    background:url(../images/tel1.png) center left no-repeat;
                }
                .header-line .b2 .email {
                    height:36px;
                    padding:0 0 0 40px;
                    background:url(../images/mail1.png) center left no-repeat;
                }
                .teplo .header-line .b2 .telefon {
                    background:url(../images/tel2.png) center left no-repeat;
                }
                .suho .header-line .b2 .telefon {
                    background:url(../images/tel3.png) center left no-repeat;
                }
                .teplo .header-line .b2 .email {
                    background:url(../images/mail2.png) center left no-repeat;
                }
                .suho .header-line .b2 .email {
                    background:url(../images/mail3.png) center left no-repeat;
                }
            
            .header-line .b2 .fosbtn-box {
                float:left;
                height:72px;
                width:400px;
                margin-left:50px;
                text-align:right;
            }
                .header-line .b2 .fos-btn {
                    display:inline-block;
                    width:344px;
                    height:72px;
                    box-sizing: border-box;
                    padding:18px 20px 18px 90px;
                    text-align:center;
                    line-height:36px;
                    font-size:21px;
                    text-transform:uppercase;
                    color:#e0dbd5;
                    background:url(../images/fos1.png) center no-repeat;
                    cursor:pointer;
                }
                .teplo .header-line .b2 .fos-btn {
                    background:url(../images/fos2.png) center left no-repeat;
                    color:#fff;
                }
                .suho .header-line .b2 .fos-btn {
                    background:url(../images/fos3.png) center left no-repeat;
                    color:#fff;
                }
        
        
        .header-line .nav-box {
            width:100%;
            height:50px;
        }
            .header-line .nav-box ul.menu {
                display:block;
                list-style:none;
                margin:0;
                padding:0;
                width:100%;
                height:50px;
                text-align:right;
            }
                .header-line .nav-box ul.menu ul {
                    display:none;
                }
                .header-line .nav-box ul.menu li {
                    display:inline-block;
                    list-style:none;
                    margin-right:20px;
                }
                .header-line .nav-box ul.menu li:last-child {
                    margin-right:0;
                }
                    .header-line .nav-box ul.menu li a {
                        display:block;
                        line-height:40px;
                        padding:5px 0;
                        text-transform:uppercase;
                        font-size:21px;
                        color:#000;
                        text-decoration:none;
                    }
                    .header-line .nav-box ul.menu li:hover a {
                        padding:5px 0 2px;
                        border-bottom:3px solid #000;
                    }
.vk-header {
    position:absolute;
    top: 9px;
    left: 200px;
    display:inline-block;
    width:36px;
    height:20px;
    background:url(../images/vk-footer.png) center no-repeat;
}        
/*слайдер*/

.slider-line {
    position:relative;
    height: 590px;
    background:#aaa;
    z-index:100;
    overflow:hidden;
    max-width:100%;
}
.slider-line .nivo-slider-wrapper {
    width: 1920px !important;
    height: 590px !important;
    position: absolute !important;
    left: 50% !important;
    margin-left: -960px !important;
}

.top-line {
    
}
.top-line  .center-box {
    overflow:hidden;
}
.top-desc {
    border:3px solid #bcb3a7;
    padding:20px;
    margin:30px 0;
    font-size:18px;
}
.teplo .top-desc {
    border:3px solid #ac8951;
}
.suho .top-desc {
    border:3px solid #418f9c;
}

/*контент*/

.content-line {
        min-height:500px;
}
.content-line .center-box {
    padding:30px 0;
}

.content-line table {
    
}

.content-line table {
    /*display: block;*/
    border: 0;
    border-collapse: collapse;
    max-width: 100%;
    min-width:700px;
    margin: 20px 0;
    width:auto;
    border-left:1px solid #aaa;
    border-top:1px solid #aaa;
}
.content-line table:first-child {
    margin-top: 0;
}
.content-line table tr {
    width:100%;
}

.content-line table tr td {
    padding:15px;
    background: #eee;
    color:#000;
    border-bottom:1px solid #aaa;
    border-right:1px solid #aaa;
    font-size:14px;
    width:auto;
    white-space: pre;
}
.content-line table tr th {
    font-weight:bold;
    padding:15px;
    background: #e5e5e5;
    color:#000;
    font-size:14px;
    text-transform:uppercase;
    letter-spacing:0.5px;
    white-space: normal;
    border-bottom:1px solid #aaa;
    border-right:1px solid #aaa;
}

.content-line table tr:hover td {
    background:#d5e3d5;
}
.content-line table tr td {
    text-align:center;
}

a.teplo-btn {
    float:left;
    display:block;
    box-sizing: border-box;
    width:581px;
    border:1px solid #bcb3a7;
    padding:2px;
    margin-right:38px;
    color:#3b3b3b;
    text-decoration:none;
    
}
.teplo-btn div {
    padding:20px;
    min-height:150px;
}
a.suho-btn {
    float:left;
    display:block;
    box-sizing: border-box;
    width:581px;
    border:1px solid #bcb3a7;
    padding:2px;
    color:#3b3b3b;
    text-decoration:none;
}
.suho-btn div {
    padding:20px;
    min-height:150px;
}

.zayavka {
    width:100%;
    height:390px;
    margin:100px 0;
    background:#999 url(../images/zaya-bg.jpg) center no-repeat;
    background-size:cover;
    position:relative;
    padding:10px;
}
    .zayavka .zayavka-text {
        border-left:5px solid #fff;
        margin:90px 0 0 20px;
        color:#fff;
        padding-left:20px;
    }
        .zayavka .zayavka-title {
            line-height:42px;
            font-size:36px;
            text-transform:uppercase;
            font-weight:bold;
            letter-spacing:1px;
        }
        .zayavka .zayavka-subtitle {
            line-height:32px;
            font-size:21px;
            letter-spacing:1px;
        }
    .zayavka .fos-btn {
        margin-top:50px;
        margin-left:20px;
        padding:25px; 
        text-align:center;
        border:2px solid #fff;
        color:#fff;
        width:400px;
        font-size:28px;
        text-transform:uppercase;
        font-weight:bold;
        letter-spacing:1px;
        cursor:pointer;
    }


/*услуги кнопки*/
.services {
    background:rgba(0,0,0,0.05);
    padding:30px;
}
    .services-btn {
        float:left;
        width:530px;
        height:220px;
        position:relative;
        background:#a48859;  /*#51929d*/
        margin:15px 20px 15px 20px;
        position:relative;
        overflow:hidden;
    }
    .suho .services-btn {
        background:#75aeb7;
    }
        .services-btn .services-btn-text {
            display:block;
            position:absolute;
            top:0;
            opacity:0;
            box-sizing: border-box;
            border:5px solid #fff;
            background:rgba(0,0,0,0.7);
            width:530px;
            height:220px;
            z-index:30;
            color:#fff;
            padding:20px;
        }
        .services-btn.target .services-btn-text {
            opacity:1;
        }
        .services-btn a {
            display:block;
            position:relative;
            box-sizing: border-box;
            border:5px solid #e7d4b4;
            background:url(../images/btn-fon.png) left top;
            width:530px;
            height:220px;
            z-index:20;
            color:#fff;
            text-decoration:none;
        }
        .suho .services-btn a {
            background:url(../images/btn-fon3.png) left top;
            border:5px solid #75aeb7;
        }
            .services-btn .btn-img {
                display:block;
                width:100%;
                height:100px;
                text-align:center;
                margin-top:10px;
                margin-bottom:5px;
            }
                .services-btn .btn-img img {
                    height:100px;
                }
            .services-btn .btn-title {
                display:block;
                width:100%;
                height:90px;
                text-align:center;
                padding:25px 5px;
                text-transform:uppercase;
                font-weight:bold;
                font-size:36px;
                line-height:40px;
                letter-spacing:1px;
            }
            .services-btn .btn-title.duble {
                padding:5px;
                font-size:36px;
            }
            .services-btn .btn-title.duble2 {
                padding:5px;
                font-size:32px;
            }

/*почему*/
.why-line {
    background:#f8f8f8;
    padding:50px 0;
}
.suho .why-line {
    background:#e3ebed;
}
    .why-line h3 {
        font-size:32px;
        text-transform:uppercase;
        padding:0;
        margin:0;
        margin-bottom:10px;
    }
    .why-line .subtitle {
        font-size:21px;
        text-transform:uppercase;
        padding:0;
        margin:0;
        margin-bottom:30px;
    }
    .why-btn {
        width:260px;
        margin:20px;
        background:#fff;
        float:left;
        text-align:center;
        padding:10px 0;
    }
    .why-btn .btn-img {
        height:80px;
        padding:10px;
    }
        .why-btn .btn-img img {
            height:60px;
            width:auto;
        }
    .why-btn .btn-title {
        height:70px;
        padding:10px;
        line-height:25px;
        font-size:18px;
        font-weight:bold;
    }

/*почему2*/
.why2-line {
    padding:50px 0;
}
    .why2-line h3 {
        font-size:32px;
        text-transform:uppercase;
        padding:0;
        margin:0;
        margin-bottom:10px;
    }
    .why2-line .subtitle {
        font-size:21px;
        text-transform:uppercase;
        padding:0;
        margin:0;
        margin-bottom:30px;
        text-align:center;
    }
.my-table {
    width:900px;
    margin:30px auto;
    display: block;
    border: 0;
    border-collapse: collapse;
    max-width: 100%;
}
.my-table th {
    text-align:center;
    padding:10px;
    background:#ebedec;
    border:2px solid #fff;
    width:20%;
}
.my-table td {
    text-align:center;
    padding:10px;
    background:#f6f6f6;
    border:2px solid #fff;
}


/*наши клиенты*/
.clients-line {
    background:url(../images/clients-bg.png) center;
    padding:80px 0;
}
.suho .clients-line {
    background:url(../images/clients-bg2.png) center;
}
    .clients-line h3 {
        font-size:32px;
        text-transform:uppercase;
        padding:0;
        margin:0;
        margin-bottom:50px;
    }
    .clients-line .clients {
        overflow:hidden;
    }
        .clients-line .client-item {
            float:left;
            width:280px;
            padding:10px 10px 20px;
            margin:10px;
            text-align:center;
            
        }
            .clients-line .client-item img {
                display:block;
                width:100%;
                height:auto;
            }
            .clients-line .client-item span {
                display:block;
                width:100%;
                font-weight:bold;
                font-size:21px;
            }

/*портолио линия*/
.projects-line {
    padding:80px 0;
}
    .projects-line h3 {
        font-size:32px;
        text-transform:uppercase;
        padding:0;
        margin:0;
        margin-bottom:50px;
        float:left;
        width:860px;
    }
    .projects-line .more-box {
        display:block;
        float:left;
        width:340px;
        text-align:right;
    }
        .projects-line .more-box a {
            background:url(../images/divider.png) right center no-repeat;
            display: inline-block;
            padding-right:20px;
            line-height:32px;
            text-transform:uppercase;
        }


/*карта*/
.maps-line {
    overflow:hidden;
    position:relative;
    height:720px;
    background:#aaa;
}
    .maps-map {
        position:relative;
        height:720px;
        width:100%;
        z-index:200;
    }
    .maps-text {
        position:absolute;
        height:720px;
        width:100%;
        z-index:300;
        top:0;
    }
        .maps-text .map-desc {
            padding:20px 40px;
            background:rgba(255,255,255,0.8);
            margin-top:200px;
            width:400px;
            font-size:18px;
            line-height:36px;
        }
            .maps-text .map-desc h3 {
                margin:0 0 10px 0;
                padding:0;
                font-weight:normal;
                font-size:21px;
                text-transform:uppercase;
            }
            .maps-text .map-desc .telefon {
                padding-left:40px;
                background:url(../images/tel.png) center left no-repeat;
                margin:5px 0;
            }
            .maps-text .map-desc .email {
                padding-left:40px;
                background:url(../images/mail.png) center left no-repeat;
                margin:5px 0;
            }
            .maps-text .map-desc .vk {
                padding-left:40px;
                background:url(../images/vk.png) center left no-repeat;
                margin:5px 0;
            }
            .maps-text .map-desc .addres {
                padding-left:40px;
                background:url(../images/addres.png) center left no-repeat;
                margin:5px 0;
            }

/**/
#yoo-zoo .items .teaser-item {
    width: 300px;
    margin:  0 5px 10px 5px;
    text-align: center;
    display: block;
    float: left;
    padding: 0 !important;
    border: 1px solid #eee;
    font-size:18px;
    text-transform:uppercase;
    box-sizing: border-box;
}
#yoo-zoo .items .teaser-item:hover {
    color:#b56731;
    border: 1px solid #b56731;
}
    #yoo-zoo .items .teaser-item .img {
        display: table-cell;
        width: 300px;
        height: 200px;
        vertical-align: middle;
        padding:5px;
        background:#fafafa;
    }
    #yoo-zoo .items .teaser-item .img img {
        display:block;
        /*width:100%;*/
        width:auto;
        height:auto;
        max-width:290px;
        max-height:190px;
        margin:0 auto;
    }
    #yoo-zoo .items .teaser-item .title {
        padding:10px;
    }
    
#yoo-zoo .full-item {

}

#yoo-zoo .full-item h2 {
    margin-bottom:5px;
}
#yoo-zoo .full-item .art {
    color:#999;
    margin-bottom:5px;
    font-size:14px;
}

#yoo-zoo .full-item .cost {
    font-size:21px;
    color:#999;
    padding-bottom:10px;
    border-bottom:1px solid #eee;
    margin-bottom:10px;
}
    #yoo-zoo .full-item .cost span {
        font-size:24px;
        color:#000;
    }
#yoo-zoo .full-item .img {
    width:400px;
    margin-right:30px;
    float:left;
    text-align:center;
}
#yoo-zoo .full-item .img img {
    width:auto;
    max-width:100%;
    height:auto;
}
#yoo-zoo .full-item .spec {
    width:500px;
    float:left;
}
#yoo-zoo .full-item .desc {
    padding:20px 0;
    margin:10px 0;
    border-top:1px solid #eee;
    border-bottom:1px solid #eee;
}


.items .teaser-project {
    width: 300px;
    margin:  0 5px 10px 5px;
    text-align: center;
    display: block;
    float: left;
    padding: 0 !important;
    background:transparent;
    font-size:18px;
    text-transform:uppercase;
    box-sizing: border-box;
    text-decoration:none !important;
}
.items .teaser-project:hover {
    box-shadow:0 0 5px rgba(0,0,0,0.7);
}
    .items .teaser-project img {
        display:block;
        width:100%;
    }
    .items .teaser-project .title {
        padding:10px;
        line-height:25px;
        min-height:70px;
        background:#f1e8d7;
        text-align:center;
        color:#000;
        text-decoration:none !important;
    }





/*подвал*/ 
.footer-line {
    background:#3e3e3e;
    color:#aaa190;
}
.footer-line a {
    color:#aaa190;
}

.footer-line .col1 {
    float:left;
    width:30%;
    min-height:20px;
}
.footer-line .col2 {
    float:left;
    width:30%;
    min-height:20px;
    margin:0 5%;
}
.footer-line .col3 {
    float:left;
    width:30%;
    text-align:right;
}
.footer-line h3 {
    font-size:21px;
    font-weight:normal;
    text-transform:uppercase;
    padding:10px 0;
    border-bottom:1px solid #aaa190;
    margin-top:0;
    color:#aaa190;
}

.footer-line .col1 ul {
    display:block;
    margin:0;
    padding:0;
    list-style:none;
}
.footer-line .col1 ul li {
    display:block;
    padding:5px 0;
    
}

.footer-line .nav-box ul {
    display:block;
    margin:0;
    padding:0;
    list-style:none;
}
.footer-line .nav-box ul li {
    display:block;
    padding:5px 0;
    text-transform:uppercase;
    font-size:18px;
    
}

.footer-line .footer1 {
    padding:50px 0;
}
.footer-line .footer2 {
    padding:30px 0;
    border-top:1px solid #aaa190;
}
.vk-footer {
    display:inline-block;
    width:36px;
    height:20px;
    background:url(../images/vk-footer.png) center no-repeat;
}

/* ДОПОЛНИТЕЛЬНОЕ ОФОРМЛЕНИЕ */
/*листалка для постраничного вывода*/
.pagination
{
text-align:center;
margin-top:30px !important;
padding-top:10px !important;
border-top:1px solid #aaa;
}

.pagination ul
{
list-style: none;
}
.pagination ul li
{
display: inline-block;
margin-left:2px;
margin-right:2px;
}
.pagination ul li span, .pagination ul li a
{
    padding: 2px 15px;
    line-height: 18px;
    border: 1px solid #999;
    color:#999;
    border-radius: 3px;
}
.pagination ul li a
{
    border: 1px solid #065b9c;
    color:#065b9c;
}


/* форма обратной связи */
.fos-wrapper {
    display: none; 
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.6);
    z-index: 200;
}
.fos-box {
    display: none;
    position: fixed;
    left: 50%;
    top: 50%;
    width:400px;
    height:400px;
    margin-left: -200px;
    margin-top: -200px;
    border:5px solid #3e3e3e;
    border-radius: 5px;
    padding: 10px;
    background: #fff;
    
    background: rgba(255,255,255,0.8);
    color: #333;
    text-align:center;

    z-index: 220;
}
    .fos-box .fos-box-close {
        position: absolute;
        width: 30px;
        height: 30px;
        top: 10px;
        right: 10px;
        border-radius:5px;
        background: url(../images/close.png) top center no-repeat;
        cursor: pointer;
    }
    .fos-box .fos-box-title {
        height: 30px;
        text-align: center;
        text-transform:uppercase;
        font-size: 21px;
        line-height: 30px;
        padding: 0 0 10px;
    }
    .fos-box .fos-box-dop {
        height: 16px;
        font-size: 14px;
        line-height: 16px;
        padding: 0 0 10px;
    }
    .fos-box .blo {
        margin: 10px 0;
        padding: 5px;
    }
    .fos-box .blo input[type="text"] {
        display: block;
        width: 320px;
        margin: auto;
        color: #333;
        background: transparent;
        padding: 5px;
        border: 1px solid #333;
        border-radius: 3px;
        outline: 0;
        box-sizing: border-box;
        font-size: 16px;
    }
    .fos-box .blo.error input[type="text"] {
        background:rgba(255,0,0,0.1);
        border: 1px solid #ff0000;
    }
    .fos-box .blo textarea {
        display: block;
        width: 320px;
        margin: auto;
        color: #333;
        background: transparent;
        padding: 5px;
        border: 1px solid #333;
        border-radius: 3px;
        outline: 0;
        box-sizing: border-box;
        font-size: 16px;
    }
    .fos-box .blo.error textarea {
        background:rgba(255,0,0,0.1);
        border: 1px solid #ff0000;
    }
    .fos-box .submit_fos {
        border: 1px solid #333;
        border-radius: 3px;
        background: #aaa190;
        padding: 5px 10px;
        text-align: center;
        text-transform: uppercase;
        width: 200px;
        line-height: 21px;
        color:#fff;
        margin: 10px auto;
        cursor:pointer;
    }

#lightbox-wrap, #lightbox-wrap * {
    box-sizing: unset;
}

