:root{
    --menu-color: #C09164;
}

a > picture,
a > img{
    max-width: 100%;
    max-height: 100%;
    height: auto;
}

body{
    margin: 0;
    color: #142A5C;
    font: 16px/1.167 Arial, Helvetica, sans-serif;
    min-width: 320px;
}

img{
    border-style: none;
}

a{
    color: #C00;
    text-decoration: none;
}

a:hover{
    text-decoration: underline;
}

#page{
    width: 100%;
    overflow: hidden;
    position: relative;
    /* background: url(../images/bg-page.png) repeat-x; */
}

#wrapper{
    background-color: #FFF;
    width: auto;
    margin: 0 auto;
}

#header{
    margin: 0 auto;
    position: relative;
}

#header > *{
    display: none;
}

.logo{
    text-indent: -9999px;
    overflow: hidden;
    background: url(../images/logo.png) 0 0 no-repeat;
    background-size: contain;
    width: calc(100% - 20px);
    max-width: 538px;
    height: 21vw;
    max-height: 109px;
    grid-area: logo;
    margin: 10px;
}

.logo a{
    display: block;
    height: 100%;
}

/*
.phone{
    position: absolute;
    left: 10px;
    top: 10px;
    color: #4985A5;
    font-size: 14px;
    line-height: 17px;
    width: 260px;
    margin-right: 60px;
}

.phone > span{
    display: none;
    margin: 0 0 0 53px;
}

.phone .number{
    font-size: 40px;
    line-height: 37px;
    color: #FFF;
    text-shadow: 1px 1px 1px #234D60;
    font-weight: bold;
}

.phone .number span{
    font-size: 20px;
    text-shadow: none;
    display: inline-block;
    vertical-align: top;
    margin: -4px 4px 0 0;
}
*/
#header .clouds{
    background: url(../images/clouds.png) no-repeat;
    width: 1015px;
    height: 493px;
    position: absolute;
    top: 0;
    left: -48px;
    z-index: 5;
}

#header .line{
    background: url(../images/line.png) repeat-y;
    width: 5px;
    height: 37px;
    position: absolute;
    top: 0;
    left: 66px;
    z-index: 1;
}

#header .line1{
    height: 108px;
    left: 210px;
}

#header .line2{
    height: 138px;
    left: 334px;
}

#header .line3{
    height: 200px;
    left: 468px;
}

#header .line4{
    height: 166px;
    left: 618px;
}

#header .line5{
    height: 107px;
    left: 763px;
}

#header .line6{
    height: 18px;
    left: 861px;
}


.post-content section#content_area{
    padding: 0 10px 30px 10px !important;
    font-family: 'PT Serif', serif !important;
    font-size: 18px;
    color: #142A5C !important;
    /*margin: 0 -30px;*/
    /* background: url(/images/texture.png) 0 0 repeat; */
}

.post-content section#content_area h1{
    font-family: 'PT Serif', serif !important;
    color: #142A5C !important;
}

.post-content section#content_area h2{
    font-family: 'PT Serif', serif !important;
    color: #142A5C !important;
}

.post-content section#content_area h3{
    font-family: 'PT Serif', serif !important;
    color: #142A5C !important;
}

.post-content section#content_area h4{
    font-family: 'PT Serif', serif !important;
    color: #142A5C !important;
}

.post-content section#content_area p,
.post-content section#content_area td,
.post-content section#content_area li{
    font-family: serif !important;
    margin: 0 0 0.5em 0 !important;
    font-size: 1em;
    line-height: 1.5em;
}

section#content_area .alignright{
    vertical-align: top;
    float: right;
    margin: 0 -29px 0 -66px;
    display: none;
}

#footer{
    margin: 0 -9999px;
    padding: 0 9999px;
    background: #BC893A;
    /*width: 1000px;*/
    color: #DAA048;
    font-size: 11px;
    line-height: 13px;
}

.footer-holder{
    position: relative;
    padding: 15px 20px;
    margin: 0 auto;
    max-width: 768px;
    height: 65px;
}

.footer-holder > *{
    display: none;
}

.footer-holder .image{
    position: absolute;
    top: -52px;
    left: 3px;
    width: 195px;
    height: 143px;
    display: none;
    /* vertical-align: top; */
    max-height: fit-content;
}

.footer-holder .nav{
    padding: 0;
    margin: 0 0 9px;
    list-style: none;
    font-size: 11px;
    line-height: 13px;
    overflow: hidden;
    max-width: 650px;
    margin: 0 auto 10px auto;
}

/*.nav li{
    float: left;
    padding: 0 14px;
    background: url(../images/separator.png) no-repeat 0 50%;
}

.nav li:first-child{
    background: none;
    padding-left: 0;
}

.nav a{
    color: #C00;
}*/

.footer-box{
    overflow: hidden;
    max-width: 550px;
    height: 45px;
    margin: 0 auto;
}

.footer-box .box-holder{
    float: left;
}

.footer-box .box-holder > span{
    display: block;
}

.footer-box .box-holder a{
    text-decoration: none;
    color: #DAA048;
}

.footer-box .box-holder a:hover{
    text-decoration: underline;
}

.footer-box .holder{
    float: right;
    margin: 2px 0 0;
}

.footer-box img{
    vertical-align: top;
}

section#content_area:after{
    content: '';
    display: block;
    clear: both;
}


.table_center{
    max-width: 1000px;
    margin: 0 auto;
}

.small_price{
    max-width: 380px;
    width: auto;
    clear: both;
    display: block;
    margin: 0 auto;
}

div.arrow{
    width: 30px;
    height: 30px;
    margin: 0 auto;
    transform: translateX(-300px);
    position: relative;
    top: 64px;
    background: url('/images/arrow.png') 0 0 no-repeat;
    display: none;
    /* outline: 1px solid #000; */
}

.table_price{
    border: 8px solid #D4B383;
    border-radius: 6px;
}
.table_price + .btn{
    display: block;
}

.table_price thead td{
    font-size: 1.2em;
    font-weight: bold;
    background-color: #FCEEDB;
}

.table_price tr > td{
    display: none;
    width: 150px;
    border: 2px solid #D4B383;
    text-align: center;
}

.table_price tr > td:nth-child(1){
    display: table-cell;
    width: 310px;
}

.table_price tr > td:nth-child(2){
    display: table-cell;
}

.table_price.clone_two tr > td:nth-child(2){
    display: none;
}

.table_price.clone_two tr > td:nth-child(3){
    display: table-cell;
}

.table_price.clone_three tr > td:nth-child(2){
    display: none;
}

.table_price.clone_three tr > td:nth-child(4){
    display: table-cell;
}

@media screen and (min-width: 694px){
    .table_price tr > td:nth-child(3){
        display: table-cell;
    }

    div.arrow{
        display: block;
        transform: translateX(-304px);
    }

    table.clone_two,
    table.clone_three,
    table.clone_two + .btn,
    table.clone_three + .btn{
        display: none;
    }
}

@media screen and (min-width: 840px){
    .table_price tr > td:nth-child(4){
        display: table-cell;
    }

    div.arrow{
        display: block;
        transform: translateX(-378px);
    }
}

@media screen and (min-width: 1070px){
    .table_price tr > td:nth-child(5){
        display: table-cell;
    }

    div.arrow{
        display: block;
        transform: translateX(-453px);
    }
}

.three_col{
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 auto 10px auto;
    grid-gap: 10px;
    max-width: 562px;
    width: auto;
}

.three_col a{
    align-items: stretch;
    display: contents;
}

@media screen and (min-width: 1000px){
    .three_col{
        grid-template-columns: 1fr 1fr;
        max-width: 1134px;
    }
}

@media screen and (min-width: 1600px){
    .three_col{
        grid-template-columns: 1fr 1fr 1fr;
        max-width: 1650px;
    }
}

.four_col,
.four_col_auto{
    display: grid;
    grid-template-columns: 1fr;
    margin: 0 auto 10px auto;
    grid-gap: 10px;
    max-width: 420px;
    width: auto;
    align-items: stretch;
    align-content: stretch;
}

.four_col a,
.four_col a picture,
.four_col_auto a,
.four_col_auto a picture{
    display: flex;
}


@media screen and (min-width: 800px){
    .four_col{
        grid-template-columns: 1fr 1fr;
        max-width: 830px;
    }
}

@media screen and (min-width: 1200px){
    .four_col{
        grid-template-columns: 1fr 1fr 1fr;
        max-width: 1240px;
    }
}

@media screen and (min-width: 1600px){
    .four_col{
        grid-template-columns: 1fr 1fr 1fr 1fr;
        max-width: 1650px;
    }
}

@media screen and (min-width: 800px){
    .four_col_auto{
        grid-template-columns: 1fr 1fr;
        max-width: 830px;
    }
}

@media screen and (min-width: 1200px){
    .four_col_auto{
        grid-template-columns: auto auto auto;
        max-width: 1240px;
    }
}

@media screen and (min-width: 1600px){
    .four_col_auto{
        grid-template-columns: 714fr 636fr 767fr 731fr;
        max-width: 1650px;
    }
}


nav.navbar{
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    height: 80px;
    z-index: 999999999;
}

nav.navbar .phone{
    font-size: 22px;
    font-weight: 700;
    color: var(--menu-color);
    display: block;
    width: 200px;
    position: absolute;
    top: 20px;
    right: -12px;
    line-height: 1em;
    z-index: 3;
    text-align: center;
}

nav.navbar .phone:after{
    content: "Москва и СПб";
    position: absolute;
    top: 22px;
    left: 26px;
    font-size: 22px;
    color: var(--menu-color);
}

nav.navbar .modal_button{
    text-decoration: none;
    color: var(--menu-color);
    font-size: 16px;
    font-weight: 700;
    position: absolute;
    top: 60px;
    right: 0;
    z-index: 3;
    text-transform: uppercase;
}

nav.navbar .modal_button:hover{
    background-color: #C09164;
    color: #FFF;
}

.navbar-toggler{
    border: 2px solid var(--menu-color);
    box-shadow: none !important;
    position: absolute;
    z-index: 4;
}

nav.navbar .navbar-collapse{
    grid-area: c;
}

.navbar-toggler-icon{
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    background-image: none !important;
}

.navbar-toggler .navbar-toggler-icon::before{
    content: "";
    position: absolute;
    top: 5px;
    left: 0;
    height: 2px;
    width: 100%;
    background: var(--menu-color);
    transition: all 300ms ease;
    transform: rotate(45deg) translateX(6px) translateY(6px);
}

.navbar-toggler .navbar-toggler-icon::after{
    content: "";
    position: absolute;
    bottom: 5px;
    left: 0;
    height: 2px;
    width: 100%;
    background: var(--menu-color);
    transition: all 300ms ease;
    transform: rotate(-45deg) translateX(6px) translateY(-6px);
}

.navbar-toggler .navbar-toggler-icon span{
    height: 2px;
    width: 0;
    background-color: var(--menu-color);
    transition: all 300ms ease;
}

.navbar-toggler.collapsed .navbar-toggler-icon::before{
    transform: rotate(0);
}

.navbar-toggler.collapsed .navbar-toggler-icon::after{
    transform: rotate(0);
}

.navbar-toggler.collapsed .navbar-toggler-icon span{
    height: 2px;
    width: 100%;
    /*background: #FFF;*/
}


nav.navbar .navbar-collapse.collapsing,
nav.navbar .navbar-collapse.show{
    background-color: #FFF;
    padding: 80px 30px 20px 30px;
    /* box-shadow: 0 0 5px #333; */
    position: relative;
    top: 0;
    z-index: 3;
    margin: -8px -30px;
}

.navbar-expand-xl .navbar-nav a.nav-link{
    color: var(--menu-color) !important;
    transition: all 300ms ease;
    border-bottom: 1px dotted #DDD;
}

.navbar-expand-xl .navbar-nav a.nav-link:hover{
    color: #000;
}


.fusion-is-sticky .navbar-expand-xl .navbar-nav a.nav-link{
    color: var(--menu-color) !important;
    transition: all 300ms ease;
    border-bottom: 1px dotted #DDD;
}

.fusion-is-sticky .navbar-expand-xl .navbar-nav a.nav-link:hover{
    color: #000;
}

.fusion-main-menu > ul > li > a:hover{
    text-decoration: none;
}

.fusion-main-menu > ul > li > a:hover span{
    border-bottom-style: solid !important;
}

@media (min-width: 360px){
    nav.navbar .phone{
        /* font-size: 24px; */
    }
}

@media (min-width: 450px){
    /*    nav.navbar .phone{
            top: 47px;
            right: 170px;
        }

        nav.navbar .modal_button{
            top: 47px;
        }*/
}

nav.navbar .navbar-collapse .modal_button{
    display: none;
}

@media (max-width: 599px){
    nav.navbar > .modal_button{
        display: none;
    }

    nav.navbar .navbar-collapse.collapsing, nav.navbar .navbar-collapse.show{
        padding: 140px 30px 20px 30px !important;
    }

    nav.navbar .navbar-collapse .modal_button{
        display: block;
        border: 2px solid #C09164;
        border-radius: 25px;
        padding: 11px 35px 9px 35px;
        top: 80px;
        right: auto;
        left: auto;
        transform: translate(calc((100vw - 60px - 227px) / 2));
    }
}

@media (min-width: 600px){
    nav.navbar .phone{
        right: 250px;
    }

    nav.navbar .modal_button{
        border: 2px solid #C09164;
        border-radius: 25px;
        padding: 11px 35px 9px 35px;
        top: 19px;
    }
}


@media (min-width: 1200px){
    .navbar-collapse.collapse{
        display: block !important;
        position: static;
        /* margin-top: 10px; */
    }

    .navbar-toggle{
        display: none;
    }

    .navbar-expand-xl .navbar-nav a.nav-link{
        border: none !important;
    }
}

@media (min-width: 1350px){
    .navbar-expand-xl .navbar-nav a.nav-link{
        padding: 8px 16px;
        border: 2px solid #C09164 !important;
        border-radius: 25px;
        margin-right: 5px;
    }

    .navbar-expand-xl .navbar-nav a.nav-link:hover{
        color: #FFF !important;
        background-color: #C09164;
        text-decoration: none;
    }

    .fusion-is-sticky .navbar-expand-xl .navbar-nav a.nav-link:hover{
        color: #FFF;
    }
}

.title_white .h2{
    color: #FFF;
}

.fusion-modal h1, .fusion-widget-area h1, .post-content h1,
.fusion-modal h2, .fusion-widget-area h2, .post-content h2,
.fusion-modal .h2, .fusion-widget-area .h2, .post-content .h2{
    font-size: 24px !important;
    line-height: 1.2em !important;
    color: #142A5C !important;
    margin: 0 0 12px 0 !important;
}

.fusion-modal h3, .fusion-widget-area h3, .post-content h3,
.fusion-modal h4, .fusion-widget-area h4, .post-content h4,
.fusion-modal h5, .fusion-widget-area h5, .post-content h5,
.fusion-modal h6, .fusion-widget-area h6, .post-content h6{
    font-size: 20px !important;
    line-height: 1.2em !important;
    color: #142A5C !important;
    margin: 0 0 8px 0 !important;
}

.title_white .h2{
    color: #FFF !important;
}

@media (min-width: 320px) and (max-width: 1199px){
    .fusion-modal h1, .fusion-widget-area h1, .post-content h1,
    .fusion-modal h2, .fusion-widget-area h2, .post-content h2,
    .fusion-modal .h2, .fusion-widget-area .h2, .post-content .h2{
        font-size: calc(24px + (46 - 24) * ((100vw - 320px) / (1200 - 320))) !important;
    }

    .fusion-modal h3, .fusion-widget-area h3, .post-content h3,
    .fusion-modal h4, .fusion-widget-area h4, .post-content h4,
    .fusion-modal h5, .fusion-widget-area h5, .post-content h5,
    .fusion-modal h6, .fusion-widget-area h6, .post-content h6{
        font-size: calc(20px + (32 - 20) * ((100vw - 320px) / (1200 - 320))) !important;
    }
}

@media (min-width: 1200px){
    .fusion-modal h1, .fusion-widget-area h1, .post-content h1,
    .fusion-modal h2, .fusion-widget-area h2, .post-content h2,
    .fusion-modal .h2, .fusion-widget-area .h2, .post-content .h2{
        font-size: 46px !important;
    }

    .fusion-modal h3, .fusion-widget-area h3, .post-content h3,
    .fusion-modal h4, .fusion-widget-area h4, .post-content h4,
    .fusion-modal h5, .fusion-widget-area h5, .post-content h5,
    .fusion-modal h6, .fusion-widget-area h6, .post-content h6{
        font-size: 32px !important;
    }
}

.fusion-header{
    height: 81px !important;
}

main{
    /* background: url(/images/texture.webp) 0 0 repeat #FFF !important; */
}

footer{
    display: grid;
    justify-items: center;
    grid-gap: 10px;
    background: linear-gradient(to top, #EBF0FC, #F8F3ED);
    color: #52699E;
    line-height: 1.4em;
    padding: 30px 10px;
}

footer a{
    color: #52699E;
}

footer a:hover{
    color: #000;
}

footer ul{
    margin: 0;
    padding: 0;
    list-style: inside none;
    text-align: center;
}

footer ul li{
    display: inline-block;
}

footer .footer_phone{
    color: #EDCFC0;
    border-bottom: 1px dashed #EDCFC0;
}

footer .footer_phone:hover{
    border-bottom: 1px solid #EDCFC0;
    text-decoration: none;
}

/*.fusion-title h1{
    visibility: hidden;
}*/

.fusion-header-wrapper .fusion-header{
    background-color: #FFF !important;
}

div.header_text{
    display: grid;
    /* padding: 0 10px; */
    list-style: none;
    max-width: 290px;
    margin: 20px auto;
    grid-gap: 10px;
    /*outline:  1px solid #fff;*/
}

div.header_text div{
    color: #FFF;
    font-size: 24px;
    /* line-height: 32px; */
    height: 120px;
    text-transform: uppercase;
    margin: 0;
    display: grid;
    grid-template-columns: 60px 1fr;
    /*align-items: center;*/
    /* outline: 1px solid #fff; */
}


div.header_text div p{
    /* height: 70px; */
    margin: 2px 0 0 0;
    line-height: 1.15em;
    align-self: center;
    /* outline: 1px solid #f00; */
}

/*@media (max-width: 499px){
    div.header_text > div:nth-child(2){
        grid-template-columns: 1fr 60px;
    }

    div.header_text > div:nth-child(2) span{
        order: 1;
    }
}*/

@media (min-width: 500px){
    /*    .fusion-title{
            padding-top: 220px !important;
        }

        .fusion-title h1{
            visibility: visible;
        }*/
    div.header_text{
        grid-template-columns: repeat(2, auto);
        max-width: 450px;
    }

    div.header_text div{
        /* display: block; */
    }

    div.header_text > div:nth-child(3){
        grid-column: 1 / 3;
        width: 50%;
        margin: 0 auto;
    }

    div.header_text > div span{
        /*float: none;*/
        /*width: auto;*/
        /* line-height: 1.2em; */
    }
}

/*
@media (min-width: 768px){
    div.header_text{
        display: grid;
        grid-template-columns: repeat(6, 1fr);
        max-width: 740px;
    }

    div.header_text div span{
    }

    div.header_text div:nth-child(1){
        grid-column: 1 / 3;
    }

    div.header_text div:nth-child(2){
        grid-column: 3 / 5;
    }

    div.header_text div:nth-child(3){
        grid-column: 5 / 7;
    }

    div.header_text div:nth-child(4){
        grid-column: 2 / 4;
    }

    div.header_text div:nth-child(5){
        grid-column: 4 / 6;
        width: auto;
        margin: 0;
    }
}*/

@media (min-width: 681px){
    /*.fusion-title{*/
    /*    padding-top: 20px !important;*/
    /*}*/
}

@media (min-width: 801px){
    /*.fusion-title{*/
    /*    padding-top: 220px !important;*/
    /*}*/
}

@media (min-width: 992px){
    /*.fusion-title{*/
    /*    padding-top: 0 !important;*/
    /*}*/
    div.header_text{
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        max-width: 960px;
        min-height: 200px;
        /* outline: 1px solid #FFF; */
    }

    div.header_text div{
        grid-column: span 1 !important;
        grid-template-columns: auto;
        grid-template-rows: 120px auto;
        height: 140px;
        justify-content: center;
    }
}

@media (min-width: 440px) and (max-width: 799px){
    #uslugi_01,
    #uslugi_02,
    #uslugi_03{
        margin: 0 0 10px calc((100vw - 380px - 60px) / 2) !important;
    }
}

@media (min-width: 1200px){
    .three_col img,
    .four_col img,
    .uslugi_section{
        transition: all .4s ease;
    }

    .three_col img:hover,
    .four_col img:hover,
    .uslugi_section:hover{
        outline: 8px solid #D4B383;
        /* transform: translateY(-30px); */
        position: relative;
        z-index: 1113;
    }
}

a.tp-caption{
    width: 280px;
    height: 385px;
    display: block;
    object-fit: cover;
}

a.tp-caption picture{
    display: flex;
}

section.top{
    margin: 82px -30px 0 -30px;
    background-color: rgba(255, 255, 255, 0);
    background-image: url("/landing/img/s1-bg.webp");
    background-position: center center;
    background-repeat: no-repeat;
    padding: 25px 0 50px 0;
    min-height: 200px;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-attachment: fixed;
    text-align: center;
}

.digital_grid{
    font-size: 24px;
    line-height: 30px;
    /*font-family: Arial, Helvetica, sans-serif;*/
    font-family: pfdintextpro-bold, Arial, Helvetica, sans-serif;
    color: #FFF;
    display: grid;
    grid-gap: 40px 25px;
    justify-items: center;
    /*outline: 1px solid #FFF;*/
    max-width: 360px;
    margin: 0 auto;
}

.top .digital_grid{
    margin: 50px auto;
}

.digital_grid div{
    position: relative;
    /*outline: 1px solid #FF0;*/
}

.digital_grid img{
    margin: 0 auto 10px auto;
    display: block;
}

@media (min-width: 400px){
    .digital_grid div{
        max-width: 400px;
    }

    .digital_grid .two span{
        position: absolute;
        top: 35px;
        left: 10px;
    }

    .digital_grid .two img{
        margin: 0 0 10px auto;
    }
}

@media (min-width: 800px){
    .digital_grid{
        max-width: 880px;
        grid-template-columns: 1fr 1fr;
        grid-template-rows: 1fr 1fr;
    }

    .digital_grid .three{
        grid-column: 1 / 3;
    }

}

@media (min-width: 1200px){
    .digital_grid{
        max-width: 1180px;
        grid-template-columns: 1fr 1fr 1fr;
        grid-template-rows: 1fr;
    }

    .digital_grid .three{
        grid-column: 3 / 4;
    }
}

table.price{
    width: 100%;
    font-size: 18px;
}

table.price tr > td:last-child{
    width: 70px;
    text-align: right;
}

table.price td{
    padding: 5px;
}

table.price thead td{
    font-weight: 700;
    font-size: 22px;
    border: 1px solid rgba(207, 171, 136, .3);
    background-color: rgba(207, 171, 136, .1);
}

table.price tbody tr > td{
    border: 1px solid rgba(207, 171, 136, .3);
}

table.price tr > td:first-child{
    border-right: none;
}

table.price tr > td:last-child{
    border-left: none;
}

#telegram_btn{
    position: fixed;
    bottom: 20px;
    left: 20px;
    display: block;
    z-index: 1000;
    width: 50px;
    height: 50px;
    background-color: rgb(0, 136, 204) !important;
    border-radius: 50%;
    box-shadow: rgba(136, 136, 136, 0.4) 0px 1px 7px;
}

#whatsapp_btn{
    position: fixed;
    bottom: 80px;
    left: 20px;
    display: block;
    z-index: 1000;
    width: 50px;
    height: 50px;
    background-color: rgb(77, 194, 71) !important;
    border-radius: 50%;
    box-shadow: rgba(136, 136, 136, 0.4) 0px 1px 7px;
}