html {
    font-size: 14.6px;
}
body {
    font-family: 'Raleway', sans-serif;
    line-height: 1.2;
    color: #212529;
    text-align: left;
}
.col-form-label{
    line-height: 1.2;
    padding: 0 1rem;
}
.form-group{
    margin-bottom: 0;
}
/* corporate */
:root {
    --color-base: #27282A; 
    --color-gold: #D09C24; 
    --color-gold-dark: #997523; 
    --color-yellow: #ffd966; 
}
.bg-gold{
    background-color: var(--color-gold);
}
.bg-gold-dark{
    background-color: var(--color-gold-dark);
}
.bg-base{
    background-color: var(--color-base);
}
.bg-yellow{
    background: #ffd966;
}
.bg-gray-light{
    background: #f6f6f6;
}
.bg-icon{
    background-image: url('/img/background/bg-patern-black.png');
}

.color-gold{
    color: #ffd966;
    text-shadow: 0 0 3px #0005;
}

/* для цифр, таблиц */
.font-roboto{
    font-family: 'Roboto', sans-serif;
}
/* default */
a{
    color: var(--color-base);
    transition: color 0.4s ease;
}
a:hover{
    text-decoration: none;
    color: var(--color-gold-dark);
}

h1{
    font-family: 'Philosopher', sans-serif;
}
h2{
    text-transform: uppercase;
}
h3{
    text-transform: uppercase;
}
.font-large{
    font-size: 1.4em;
}
header{
    padding: 1rem 0;
}
@media(max-width: 1600px) { /* notebook */
    header{padding: 0}
}
header img.logo{
    height: 100px;
}
.btn{
    border: 1px solid transparent;
    padding: 0.6rem 1.2rem;
    border-radius: 0;
    text-transform: uppercase;
    font-weight: 300;
    transition: all 0.4s ease;
}

.btn-primary{ 
    color: #fff;
    background-color: var(--color-gold-dark);
    border-color: var(--color-gold-dark);
}
.btn-primary.focus, .btn-primary:focus,
.btn-primary:hover, 
.btn-primary:not(:disabled):not(.disabled).active, 
.btn-primary:not(:disabled):not(.disabled):active, 
.show>.btn-primary.dropdown-toggle {
    background-color: var(--color-gold);
    border-color: var(--color-gold);
    box-shadow: none;
}
.btn-secondary{
    color: #555;
    background-color: #fff;
    border-color: #555;
}
.btn-secondary.focus, .btn-secondary:focus,
.btn-secondary:hover, 
.btn-secondary:not(:disabled):not(.disabled).active, 
.btn-secondary:not(:disabled):not(.disabled):active, 
.show>.btn-secondary.dropdown-toggle {
    background-color: var(--color-gold);
    border-color: var(--color-gold);
    box-shadow: none;
}
.btn-rounded{
    border-radius: 500px;
}
.btn-lg{
    font-size: 1.5rem;
    padding: 0.8rem 1.6rem;
}
.form-control:focus {
    box-shadow: none;
}

section{
    padding: 3rem 0;
}
@media(max-width: 575px) { /* mobile */
    .btn-lg{
        font-size: 1.2rem;
        padding: 0.6rem 1.2rem;
    }
}
/* -- design elements -- */
.after-r-gold:after{
    content: '';
    position: absolute;
    height: 100%;
    background-image: url('/img/icons/r-gold.svg');
    background-size: auto 100%;
    background-repeat: no-repeat;
    left: 100%;
    width: 70px;
}
.after-r-gold-dark:after{
    content: '';
    position: absolute;
    height: 100%;
    background-image: url('/img/icons/r-gold-dark.svg');
    background-size: auto 100%;
    background-repeat: no-repeat;
    left: 100%;
    width: 70px;
}
.after-r-base:after{
    content: '';
    position: absolute;
    height: 100%;
    background-image: url('/img/icons/r-base.svg');
    background-size: auto 100%;
    background-repeat: no-repeat;
    left: 100%;
    width: 70px;
}
/* <-- растягивает элемент до края экрана слева - см main.js */
.before-fill{
    position: absolute;
    top: 0;
    height: 100%;
}
.after-fill{
    position: absolute;
    top: 0;
    height: 100%;
}




/* header + menu */
    .top-menu{
        background-color: #fff;
        position: sticky;
        top: 0;
        z-index: 100;
        transition: all 0.4s ease;
    }
    .top-menu.sticky,
    header.sticky{
        box-shadow: 0 0 20px #0003;
    }
    .top-menu .btn-menu-mobile{
        display: none;
    }
    .top-menu .menu{
        padding: 1rem 0;
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .top-menu .menu .menu-item{
        padding: 0.4rem;
    }
    .top-menu .menu .menu-item:after{
        content: '';
        display: block;
        width: 0;
        height: 1px;
        background-color: var(--color-gold-dark);
        transition: width 0.2s ease;
    }
    .top-menu .menu .menu-item:hover:after{
        width: 100%;
    }

    header{
        font-size: 1.2rem;
        background-color: #fff;
        padding-bottom: 1rem;
        z-index: 99;
    }
    header .btn-menu-mobile{
        font-size: 2.4rem;
        color: var(--color-gold);
        padding: 0.4rem 1rem;
    }
    @media(max-width: 767px) { /* palm */
        header{position: sticky; top: 0px; padding-bottom: 0.5rem}
        header img.logo{height: 70px}
    }
    @media(max-width: 575px) { /* mobile */
        header{font-size: 1rem}
        header img.logo{height: 60px}
    }

/* mobile panel + menu */
    .mobile-panel{
        position: relative;
    }
    .mobile-menu{
        position: fixed;
        top: 0;
        left: 100%;
        width: 100%;
        height: 100vh;

        padding: 0 1rem 1rem;
        background-color: #fff;
        z-index: 1000;

        transition: left 0.4s ease;
    }
    .mobile-menu.show{
        left: 0;
    }
    .mobile-menu .header{
        padding: 1rem 0;
        text-align: right;
        border-bottom: 1px #ccc solid;
        margin-bottom: 0.5rem;
    }
    .mobile-menu .header .btn-menu-mobile{
        font-size: 1.6rem;
        padding: 1rem;
        color: #777
    }
    .mobile-menu a.menu-item{
        display: block;
        padding: 1rem;
    }
    .mobile-menu .phone .fa,
    .mobile-menu .email .fa{
        font-size: 1.6rem;
        color: var(--color-gold-dark);
        margin-right: 0.5rem;
    }
/* slider */

    #slider{
        position: relative;
    }
    #slider .slide{
        position: relative;
            overflow: hidden;    
    }
    #slider .slide img{
        position: relative;
    }
    #slider .slide .overlay{
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        z-index: 1;
        color: #fff;
        /*
        background: linear-gradient(to right, rgba(0,0,0,0.4) 0, rgba(0,0,0,0.05) 50%, transparent);
        */
    }
    #slider .slide .darkless{
        padding: 2rem;
        background-color: rgba(0,0,0,0.5);
    }
    #slider .slide .overlay .container,
    #slider .slide .overlay .row{
        height: 100%;
    }
    #slider .slide .title{
        font-size: 3rem;
        font-weight: bolder;
        text-transform: uppercase;
        line-height: 1.1;
    }
    #slider .slide .subtitle{
        margin-top: 20px;
        font-size: 2rem;
        font-weight: bolder;
        line-height: 1;
    }
    #slider .slide p{
        margin-top: 20px;
        font-size: 1.6rem;
    }
    #slider .slide ul.list {
        font-size: 1.6rem;
    }

    #slider .slide ul li:before {
        
    }
    @media(max-width: 1600px) { /* notebook */
        #slider .slide{max-height: 480px;}
    }
    @media(max-width: 575px) { /* mobile */
        #slider .slide{min-height: 500px;}
        #slider .slide>img{height: 500px; width:auto !important; float: right;}
        #slider .slide .title{font-size: 2rem;}
        #slider .slide .subtitle{font-size: 1.6rem;}
        #slider .slide p, #slider .slide ul.list{font-size: 1.2rem;}
        #slider .slick-arrow{display: none !important;}
        #slider .darkless{height: 100%; background-color: rgba(0,0,0,0.7);}
        #slider .slider-carousel{margin-bottom: 0;}
    }

/* ------- slick ---------- */
    .slick-dots {
        bottom: 2rem;
    }    
    .slick-dots li {
        position: relative;
        width: 10px;
        height: 10px;
        margin: 0 5px;
        padding: 0.4rem;
        cursor: pointer;
    }    
    .slick-dots li button::before {
        opacity: 1;
        content: '\f111'; /* \f10c - пустой */
        font-family: 'FontAwesome';
        font-size: 10px;
        color: #fff;
    } 
    .slick-dots li.slick-active button::before {
        opacity: 1;
        content: '\f111';
        color: var(--color-gold);
    }   
    .slick-arrow{
        border-radius: 50%;
        background-color: #50505050;
        display: flex;
        align-items: center;
        justify-content: center;
        transition: all 0.4s ease;
    } 
    .slick-arrow:hover{
        border-radius: 50%;
        background-color: var(--color-gold);
    } 
/* ------- GALLERY ---------- */
.sertificate-gallery{
    margin-top: 80px;
    margin-bottom: 30px;
}
.sertificate{
    margin: 20px 10px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
}

/* ----section title --- */
.section-title{
    text-align: left;
    margin-bottom: 2rem;
}

.section-title h2{
    font-family: 'Philosopher';
    font-size: 3rem;
    text-transform: uppercase;
}

.section-title.text-center h2:after{
    content: '';
    display: block;
    width: 200px;
    height: 20px;
    background-image: url('after-title.svg');
    background-size: cover;
    margin: 0 auto;
}
.section-description{
    display: inline-block;
    max-width: 600px;    
}
@media(max-width: 575px) { /* mobile */
    .section-title h2{font-size: 2rem;}
}

/* --- profit section --- */
.profit-item + .profit-item{
    margin-top: 1rem;
}
.profit-item .arrow{
    height: 100px;
    position: relative;
}
.profit-item .arrow .icon{
    position: absolute;
    right: 100px;
    transform: translateX(50%);
    top: 10px;
    max-height: 80px;
}
@media(max-width: 575px) { /* mobile */
    h3.profit-title{margin-top: 1.4rem}
    .profit-item .arrow .icon{right: 50%}
}

/*  -- list ---  */
ul.list{
    list-style: none;
    padding: 0;
}
ul.list li{
    margin-left: 22px;
    padding-left: 10px;
}
ul.list li:before{
    content: '';
    display: inline-block;
    position: relative;
    width: 20px;
    height: 20px;
    top: 3px;
    background-image: url('/img/icons/marker.png');
    background-size: contain;
    margin-right: 10px;
    margin-left: -30px;
}
/* --  steps  section --*/
.steps{
    background-color: #f4f4e2;
}
.step-item .icon{
    width: 140px;
    height: 140px;
    border: 12px var(--color-gold-dark) solid;
    border-top-left-radius: 70px;
    border-bottom-right-radius: 70px;
    margin: 0 auto;
    background-color: #fff;

    display: flex;
    justify-content: center;
    align-items: center;

    transition: all 0.8s ease;
}
.step-item:hover .icon{
    border-color: var(--color-gold);
}
.step-item .icon img{
    width: 70px;
}
.step-item .title{
    margin-top: 1rem;
    text-align: center;
    font-size: 1.4rem;
    font-weight: bold;
}
.step-item .description{
    margin-top: 1rem;
    text-align: center;
}
@media(max-width: 575px) { /* mobile */
    .step-item{display: flex; margin-top: 1.4rem}
    .step-item .icon{
        width: 100px;
        min-width: 100px;
        height: 120px;
        border: 10px var(--color-gold-dark) solid;
        border-top-left-radius: 50px;
        border-bottom-right-radius: 50px;
        margin-right: 10px;
    }   
    .step-item .icon img{
        width: 50px;
    }         
}

/* --  accountant  section --*/
.package-item{
    margin: 1rem 0;
}

/* :nth-child(1) заменен на .pos-1*/
.packages .col.pos-1 .package-item{--l-color: #f5ebd2; --d-color: #d8a333;}
.packages .col.pos-2 .package-item{--l-color: #f1e1bd; --d-color: #b68d32;}
.packages .col.pos-3 .package-item{--l-color: #ecd8a6; --d-color: #917633;}
.packages .col.pos-4 .package-item{--l-color: #e5cb8e; --d-color: #715e33;}
.packages .col.pos-5 .package-item{--l-color: #e4c27a; --d-color: #49432d;}

.package-item{
    background-color: var(--l-color);
    color: #555;
    position: relative;
    overflow: hidden;
}
.package-item .title{
    padding: 1.2rem 0;
    text-align: center;
    text-transform: uppercase;
    font-weight: bold;
    background-color: var(--d-color);
    color: #fff;
}
.package-item .field{
    padding: 0.2rem 0.8rem;
    font-size: 0.8rem;
    text-align: center;
    border-bottom: 1px var(--d-color) solid;
}
.package-item .field .value{
    color: #333;
    font-size: 1rem;
    font-weight: bold;
    font-family: 'Roboto', sans-serif;
}
.package-item .field .fa-times{
    color: #af0707;
}
.package-item .field .fa-check{
    color: #2eaf07;
}
.package-item .btn-download{
    color: var(--d-color);
    display: inline-flex;
    padding: 0.4rem 1.2rem;
}
.package-item .btn-download .fa{
    font-size: 2rem;
    margin-right: 0.6rem;
}

/* --- */
.consult{
    color:#fff;
    font-size: 1.4rem;
    background-color: var(--color-base);
}
@media(max-width: 575px) { /* mobile */
    .consult .btn{margin-top: 2rem}
}

/* --- cost --- */
.cost-calculator form{
    padding: 2rem;
    border: 1px #ccc solid;
}
.cost-calculator form input[type="text"]:read-only{
    background-color: #fff;
    font-size: 1.2rem;
    color: #740000;
}
.cost-calculator form input[type="number"]::-webkit-outer-spin-button,
.cost-calculator form input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
.cost-calculator form input[type="number"]{
    -moz-appearance: textfield;
    padding: 0.2rem;
    margin-bottom: 0.2rem;
}
@media(max-width: 575px) { /* mobile */
    .cost-calculator form{padding: 1rem;}
    .cost-calculator{margin-bottom: 2rem;}
}


/* quiz-carousel */
.quiz-carousel{
    /* max-width: 400px; */
}
.quiz-carousel .slide{
    padding: 1rem 2rem;
    background-color: #f6f6f6;
    border: 1px #ccc solid;
    height: 330px;
}
.quiz-carousel .answers{
    padding-top: 1rem;
    display: flex;
    flex-wrap: wrap;
}
.quiz-carousel input[type="radio"],
.quiz-carousel input[type="checkbox"]{
    display: none;
}
.quiz-carousel label.radio{
    display: block;
    width: 100%;
    padding: 0.6rem 0.8rem 0.6rem 2rem;
    margin-bottom: 0.8rem;
    background-color: #fff;
    border: 1px #ccc solid;
    box-shadow: 3px 3px 10px #00000033;
    cursor: pointer;
    position: relative;
    transition: all 0.3s ease;
}
.quiz-carousel .radio.w-50pc{
    width: calc(50% - 0.8rem);
    margin-right: 0.8rem;
}
.quiz-carousel .radio:hover{
    background-color: #ffecb3;
}
.quiz-carousel .radio i.fa{
    color: #2eaf07;
    font-size: 1.4rem;
    position: absolute;
    left: 0.4rem;
    top: 0.4rem;
    display: none;
}
.quiz-carousel .radio input[type="radio"]:checked + i.fa,
.quiz-carousel .radio input[type="checkbox"]:checked + i.fa{
    display: inline-block;
}
.quiz-action{
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    padding-right: 15px;
}
.quiz-action button{
    margin-left: 0.6rem;
}
@media(max-width: 575px) { /* mobile */
    .quiz-carousel .slide{padding: 1rem;}
    .quiz-carousel .radio.w-50pc{
        width: calc(50% - 0.4rem);
        margin-right: 0.4rem;
        margin-bottom: 0.4rem;
    }
    .quiz-carousel .radio{word-break: break-all;}
    .quiz-form{min-height: 380px;}
}

/* --- business - accardion -- */
.btn-accord{
    display: block;
    position: relative;
    padding: 1rem;
    padding-right: 3rem;
    font-size: 1.4rem;
    text-transform: uppercase;
}
.btn-accord:after{
    content: '\002B';
    font-size: 4rem;
    font-weight: 300;
    display: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 2rem;
}
.btn-accord.collapsed:after{
    display: block;
}
.tab-accord + .tab-accord{
    border-top: 2px var(--color-gold) solid;
}
.tab-accord .list li{
    /* font-size: 1rem; */
    margin: 0;
}
.tab-accord .list p{ 
    font-size: 0.85rem;
    color: #777;
    margin: 0;
    display: none;
}
.service-doc-carousel{
    position: relative;
    padding: 0 
}
.service-doc-carousel .doc-scan{
    display: block;
    max-width: 100%;
    max-height: 400px;
    margin: 0 auto;
    box-shadow: 5px 5px 20px rgba(0,0,0,0.3);
}

/* -- section specials -- */
section.specials{
    background: var(--color-gold);
    color: #fff;
    text-align: center;
}
section.specials .section-title.text-center h2::after{
    filter: brightness(10);
}
section.specials .icon{
    width: 140px;
    height: 140px;
    border-radius: 100px;
    background-color: #fff;

    display: flex;
    align-items: center;
    justify-content: center;
    margin: 2rem auto 1rem;

    border: 10px var(--color-gold) solid;    
    outline: 2px #fff dashed;
}
section.specials .icon img{
    width: 80px;
}
section.specials h4{
    text-transform: uppercase;
    font-weight: 700;
}

section.specials .btn-primary{
    background-color: var(--color-gold);
    color: #fff;
    border: 2px #fff solid; 
    transition: all 0.4s ease;   
}
section.specials .btn-primary:hover{
    background-color: #fff;
    color: #555;
    box-shadow: 0 0 10px rgba(0,0,0,0.3);
}

/* -- about  --*/




/* -- review  --*/
.review-carousel{
    max-width: 800px;
    position: sticky;
    top: 0;
} 
.review-carousel .slick-prev{
    left: -100px;
}
.review-carousel .slick-next{
    right: -100px;
}
.review-item{
}
.review-text{
    position: relative;
    background-color: #e6e6e6;
    border-radius: 1rem;
    
    padding: 2rem;
    color:#555;
    font-style: italic;
    text-align: right;
}
.review-text:after{
    content: '';
    display: block;
    position: absolute;
    top: -20px;
    right: 4rem;
    width: 0;
    height: 0;
    border-left: 20px solid transparent;
    border-right: 20px solid transparent;
    border-bottom: 20px solid #e6e6e6;
}
.review-author{
    text-align: right;
    color: #555;
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: 2rem;
}



/* -- guarantee  -- */
.guarantee-card{
    text-align: center;
}
.guarantee-card h4{
    font-weight: bold;
    margin: 1rem 0;
}
.guarantee-text{
    padding: 0 1rem;
}

/* -- percents  -- */
section.percents{
    color:#fff;
    background-color: var(--color-base);
}

.percent{
    text-align: center;
    font-size: 4rem;
    font-weight: bold;
    color: #fff;
    margin-top: 1rem;
}
.percent-text{
    text-align: center;
    font-size: 1.4rem;
    margin-top: 1rem;
}
@media(max-width: 575px) { /* mobile */
    .percent{font-size: 2.4rem;}
    .percent-text{font-size: 1rem;}
}
/* gallery */
.photo-gallery img{
    height: 200px;
    width: auto;
    margin-right: 5px;
}
.photo-gallery .slick-prev{
    background-color: transparent !important;
    left: 0;
    transform: translate(-100%, -50%);
}
.photo-gallery .slick-next{
    background-color: transparent !important;
    right: 0;
    transform: translate(100%, -50%);
}
@media(max-width: 767px) { /* palm */
    .photo-gallery .slick-prev{
        transform: translate(0, -50%);
    }
    .photo-gallery .slick-next{
        transform: translate(0, -50%);
    }
}

/* -- footer  ---- */
#footer{
    padding: 3rem 0;
    background-color: var(--color-base);
    color: #fff;
}
#footer a{
    color: #fff;
}
#footer a:hover{
    color: var(--color-gold);
}

#footer .copyright{
    padding: 1rem 0;
}