/* template */
body,html {
  height: 100%;
  scroll-behavior: smooth;
}

/* hidden spacer before sections for proper offset */
section::before {
    height: 7rem;
    content: "";
    display:block;
}
section::after {
    height: 2rem;
    content: "";
    display:block;
}
/* helpers */
.vh-50 {
    min-height: 50vh;
}
.vh-75 {
    min-height: 75vh;
}
.vh-100 {
    min-height: 100vh;
}
/*Header Block styles*/
#home::before,
#home::after{
    height: 0;
    content: "";
    display:block;
}

@media (max-width: 991px) and (min-width: 768px) {
    .navbar-toggler {
        right: 1.5rem;
    }
}
@media (max-width: 767px) and (min-width: 576px) {
    .navbar-expand-lg > .container{
        margin:0;
    }
    .navbar-toggler {
        right: 1.5rem;
    }
    #collapsingNavbar {
        padding: 0 1rem;
    }
}
@media (max-width: 575px) and (min-width: 349px) {
    .navbar-toggler {
        right: 1rem;
    }
}
@media (max-width: 348px){
    .navbar-brand .img-fluid {
        width: 80%;
        height: auto;
    }
    .navbar {
        padding: 0.75rem .5rem;
    }
}
/*Slider*/
.mbri-arrow-prev, .mbri-arrow-next {
    font-size: 4rem;
    color: #fff;
}
.carousel-caption {
    position: absolute;
    right: 5%;
    bottom: 0;
    left: 8%;
    width: 38%;
    height: 44%;
    padding: 2rem 0 1rem 1.5rem;
    z-index: 10;
}
.carousel-caption .headng{
    padding-bottom: 1rem;
    font-size: 3.15rem;
    line-height: 3rem;
    color: #fff;
}
.carousel-caption p{
    font-size: 1.15rem;
}
.lines{
    display: block;
    position: relative;
    margin: .35rem 0 0 -1rem;
    width: 100%;
    height: 10px;
    border-bottom: 1px solid #a44b04;
}
@media (max-width: 1024px){
	.navbar-dark .navbar-nav .nav-link {
		font-size: 1rem;
	}
	.carousel-caption {
		height: 48%;
	}
	.carousel-caption .headng {
		padding-bottom: .25rem;
		font-size: 2.5rem;
	}
	.carousel-caption p {
		font-size: .95rem;
	}
}
@media (max-width: 991px) and (min-width: 768px) {
    .carousel-caption {
        right: 5%;
        bottom: 0;
        left: 7%;
        width: 44%;
        height: 50%;
        padding: 2rem 0 0 1.5rem;
    }
    .carousel-caption .headng{
        font-size: 1.75rem;
        line-height: 1.7rem;
        padding-bottom: 0;
    }
    .lines {
        margin: 0.25rem 0 0 -1rem;
    }
    .carousel-caption p{
        font-size: 75%;
    }
    .carousel-indicators {
        bottom: -3px;
        left: 43px;
        margin-right: 2%;
        margin-left: 2%;
    }
}
@media (max-width: 767px) and (min-width: 576px) {
    .carousel-caption {
        right: 5%;
        bottom: 0;
        left: 6%;
        width: 44%;
        height: 50%;
        padding: 2rem 0 0 1rem;
    }
    .carousel-caption .headng{
        font-size: 1.35rem;
        line-height: 1.2rem;
        padding-bottom: 0;
    }
    .lines {
        margin: 0.25rem 0 0 0;
    }
    .carousel-caption p{
        font-size: 50%;
    }
    .carousel-indicators {
        bottom: -3px;
        left: 43px;
        margin-right: 2%;
        margin-left: 2%;
    }
}
@media (max-width: 575px) and (min-width: 349px) {
    .carousel-caption {
        right: 5%;
        bottom: 0;
        left: 6%;
        width: 44%;
        height: 50%;
        padding: 1.15rem 0 0 1rem;
    }
    .carousel-caption .headng{
        font-size: 1.15rem;
        line-height: 1.1rem;
        padding-bottom: 0;
    }
    .lines {
        margin: 0.05rem 0 0 0;
    }
    .carousel-caption p{
        font-size: 40%;
    }
    .carousel-indicators {
        bottom: -3px;
        left: 43px;
        margin-right: 2%;
        margin-left: 2%;
    }
}
@media (max-width: 348px){
    .carousel-caption {
        right: 5%;
        bottom: 0;
        left: 6%;
        width: 44%;
        height: 50%;
        padding: 1.15rem 0 0 1rem;
    }
    .carousel-caption .headng{
        font-size: 82%;
        line-height: 1;
        padding-bottom: 0;
    }
    .lines {
        margin: 0;
    }
    .carousel-caption p{
        font-size: 27%;
    }
    .mbri-arrow-prev, .mbri-arrow-next {
        font-size: 2rem;
    }
    .carousel-indicators {
        bottom: -3px;
        left: 0;
        margin-right: 2%;
        margin-left: 2%;
    }
}
/*Reasons Block styles*/
#reasons::before {
    height: 2rem;
    content: "";
    display:block;
}
#reasons::after {
    height: 3rem;
    content: "";
    display:block;
}
#reasons{
    background: rgba(246,246,246,.50);
}
.heading {
    margin-bottom: 1.5rem;
}
.heading h2{
    margin: 0 0 2.25rem 1.75rem;
}
.line{
    display: inline-block;
    position: relative;
    bottom: .5rem;
    left: 1.5rem;
    width: 50%;
    height: 1px;
    background: #a44b04;
}
.reason-1 {
    background: #fff url("../images/1.png") no-repeat left bottom;
}
.reason-2 {
    background: #fff url("../images/2.png") no-repeat left bottom;
}
.reason-3 {
    background: #fff url("../images/3.png") no-repeat left bottom;
}
.reason-1, .reason-2, .reason-3{
    height: 280px;
    border: 1px solid rgba(150,156,166,1);
    margin-bottom: 3rem;
}
.reason-1:hover, .reason-2:hover, .reason-3:hover{
    border: 1px solid rgba(197,182,156,1);
}
.box-effect{
    position:relative;
}
.box-effect::before,.box-effect::after {
    z-index: -1;
    position: absolute;
    content: "";
    bottom: 15px;
    left: 10px;
    width: 50%;
    top: 80%;
    max-width:300px;
    background: #777;
    -webkit-box-shadow: 0 15px 10px #777;
    -moz-box-shadow: 0 15px 10px #777;
    box-shadow: 0 15px 10px #777;
    -webkit-transform: rotate(-3deg);
    -moz-transform: rotate(-3deg);
    -o-transform: rotate(-3deg);
    -ms-transform: rotate(-3deg);
    transform: rotate(-3deg);
}
.box-effect::after{
    -webkit-transform: rotate(3deg);
    -moz-transform: rotate(3deg);
    -o-transform: rotate(3deg);
    -ms-transform: rotate(3deg);
    transform: rotate(3deg);
    right: 10px;
    left: auto;
}
.reason-1 img, .reason-2 img, .reason-3 img{
    padding: 3rem 10rem 1rem 10rem;
}
.reason-1 .line2, .reason-2 .line2, .reason-3 .line2{
    display: block;
    width: 50%;
    height: 1px;
    background: #a44b04;
    margin: 1rem auto;
}
.reason-1 p, .reason-2 p, .reason-3 p{
    font-size: 1.15rem;
    font-weight: 600;
}
@media (max-width: 1024px){
	.reason-1 img, .reason-2 img, .reason-3 img {
		padding: 3rem 7rem 1rem 7rem;
	}
	.reason-1, .reason-2, .reason-3 {
		height: 260px;
	}
}
@media (max-width: 991px) and (min-width: 768px) {
    #reasons::after {
        height: 1rem;
    }
    .heading h2 {
        font-size: 1.85rem;
        margin: 0 0 2.25rem .5rem;
    }
    #reasons .lines {
        margin: .35rem 0 0 -.5rem;
    }
    .reason-1, .reason-2, .reason-3{
        height: 160px;
        background-size: 35%;
    }
    .reason-1{
        background-size: 30%;
    }
    .reason-1 img, .reason-2 img, .reason-3 img {
        padding: 1.5rem 4.5rem 0 4.5rem;
    }
    .reason-1 .line2, .reason-2 .line2, .reason-3 .line2 {
        margin: .5rem auto;
    }
    .reason-1 p, .reason-2 p, .reason-3 p {
        font-size: .85rem;
    }
}
@media (max-width: 767px) and (min-width: 576px) {
    #reasons::after {
        height: 0;
    }
    .heading h2 {
        font-size: 1.65rem;
        margin: 0 0 2.25rem .5rem;
    }
    .line {
        width: 38%;
    }
    .reason-1, .reason-2, .reason-3 {
        height: 140px;
        background-size: 30%;
    }
    .reason-1{
        background-size: 25%;
    }
    .reason-1 img, .reason-2 img, .reason-3 img {
        padding: 1rem 3.5rem .5rem 3.5rem;
    }
    .reason-1 .line2, .reason-2 .line2, .reason-3 .line2 {
        margin: 0 auto .5rem auto;
    }
    .reason-1 p, .reason-2 p, .reason-3 p {
        font-size: .75rem;
    }
}
@media (max-width: 575px) and (min-width: 349px) {
    .heading h2 {
        font-size: 1.65rem;
        margin: 0 0 2.25rem .5rem;
    }
    .line {
        left: 1.15rem;
        width: 30%;
    }
    .reason-1, .reason-2, .reason-3 {
        background-size: 30%;
    }
    .reason-1{
        background-size: 25%;
    }
    .reason-1 img, .reason-2 img, .reason-3 img {
        padding: 1rem 10rem;
    }
}
@media (max-width: 348px){
    #reasons::after {
        height: 1rem;
    }
    .heading h2 {
        font-size: 1.35rem;
        margin: 0 0 2.25rem .5rem;
    }
    #reasons .heading h2 .line {
        left: 1rem;
        width: 20%;
    }
    .reason-1, .reason-2, .reason-3 {
        background-size: 27%;
        height: 192px;
    }
    .reason-1{
        background-size: 20%;
    }
    .reason-1 img, .reason-2 img, .reason-3 img {
        padding: .75rem 7.5rem;
    }
    .reason-1 .line2, .reason-2 .line2, .reason-3 .line2 {
        margin: .75rem auto;
    }
    .reason-1 p, .reason-2 p, .reason-3 p {
        font-size: 1rem;
    }
}
/*Services Block styles*/
#services::before {
    height: 4rem;
    content: "";
    display: block;
}
#services::after {
    height: 5rem;
    content: "";
    display: block;
}
#services h1{
    margin: 0 0 2.25rem 1.75rem;
}
#services .lines{
    margin: .5rem 0 0 -1.15rem;
}
.sub-heading {
    margin: 0 0 1.5rem 1.5rem;
    font-size: 1.1rem;
}
.uslugi {
    margin-top: 2rem;
}
.uslugi-title {
    font-size: 1.2rem;
    text-align: center;
    margin: 1.5rem 0;
    font-weight: 600;
}
.colour {
    font-size: 86%;
    font-weight: 400;
    color: #969ca6;
}
.uslugi-img {
    max-width: 100%;
    height: auto;
    border: 1px solid #c5b69c;
}
@media (max-width: 991px) and (min-width: 768px) {
    #services h1{
        font-size: 2rem;
        margin: 0 0 2.25rem .75rem;
    }
    #services .lines{
        margin: .5rem 0 0 -0.75rem;
    }
    .sub-heading {
        font-size: 95%;
        margin: 0 0 1.5rem 0;
    }
    .uslugi-title {
        font-size: 1.07rem;
    }
}
@media (max-width: 767px) and (min-width: 576px) {
    #services h1{
        font-size: 2rem;
        margin: 0 0 2.25rem .25rem;
    }
    #services .lines{
        margin: .5rem 0 0 -.5rem;
    }
    .sub-heading {
        font-size: 85%;
        margin: 0 0 1.5rem 0;
    }
    .uslugi-title {
        font-size: 1rem;
    }
}
@media (max-width: 575px) and (min-width: 349px) {
    #services h1{
        font-size: 2rem;
        margin: 0 0 2.25rem .25rem;
    }
    .sub-heading {
        font-size: 85%;
        margin: 0 0 1.5rem 0;
    }
    #services .price-btn {
        margin-top: 1rem;
    }
}
@media (max-width: 348px){
    #services::before,
    #services::after {
        height: 3rem;
        content: "";
        display: block;
    }
    #services h1{
        font-size: 1.85rem;
        margin: 0 0 2.25rem .25rem;
    }
    #services h1 .line {
        left: 1rem;
        width: 32%;
    }
    #services .lines{
        margin: .5rem 0 0 -.5rem;
    }
    .sub-heading {
        font-size: 85%;
        margin: 0 0 1.5rem 0;
    }
    .uslugi-title {
        font-size: 1.1rem;
    }
    #services .price-btn {
        margin-top: 1rem;
    }
}
/*Divider Block styles*/
#divider::before,
#divider::after,
#divider2::before,
#divider2::after{
    height: 0;
    content: "";
    display: block;
}
.divider .line3{
    display: block;
    background: rgb(197,182,156);
    width: 100%;
    height:1px;
    margin: 1rem 0;
}
.divider .div-icon{
    background: #fff url("../images/mark.png") no-repeat center;
    display: block;
    position: relative;
    width: 35px;
    height: 65px;
    margin: -2.85rem auto;
    padding: 0 2.35rem;
}
@media (max-width: 991px) and (min-width: 768px) {
    .divider .div-icon{
        top: 0;
        left: 0;
    }
}
@media (max-width: 767px) and (min-width: 576px) {
    .divider .div-icon{
        top: 0.05rem;
        left: 0;
    }
}
@media (max-width: 575px) and (min-width: 349px) {
    .divider .div-icon{
        top: 0.05rem;
        left: 0;
    }
}
@media (max-width: 348px){

}
/*About Block styles*/
#about::before{
    height: 5rem;
    content: "";
    display: block;
}
#about::after{
    height: 7rem;
    content: "";
    display: block;
}
#about .mar1 {
    margin-top: 2.1rem;
}
#about h2{
    margin: 0 0 2.25rem 1.75rem;
}
#about .lines{
    margin: .5rem 0 0 -1.15rem;
}
#about p{
    padding: 0 1.5rem;
}
.about-list li{
    padding: 0 0 .5rem 1.5rem;
}
.about-list li::before {
    margin-left: -1.5em;
    margin-right: .75rem;
    font-size: 1.5rem;
    transform: translateY(40%);
}
.about-img {
    width: 80%;
    border: 2px solid #c5b69c;
}
.working-hours {
    width: 35%;
    border: 1px solid #c5b69c;
    margin: 0 0 2rem 3rem;
    padding: 0 1rem;
}
.working-hours .headng {
    display: block;
    position: relative;
    bottom: 1rem;
    font-size: 1.15rem;
    font-weight: 600;
    background: #fff;
    width: 73%;
}
.working-list {
    list-style: none;
    padding-left: 1.5rem;
}
.working-list li{
    padding: 0 0 15px 0;
}
.working-list li b{
    font-weight: 600;
    font-size: 1.05rem;
}
@media (max-width: 1024px){
	.working-hours {
		width: 48%;
		margin: 1rem 0 2rem 3rem;
	}
}
@media (max-width: 991px) and (min-width: 768px) {
    #about::before {
        height: 4rem;
        content: "";
        display: block;
    }
    #about::after {
        height: 3rem;
    }
    #about h2 {
        margin: 0 0 2.25rem .25rem;
    }
    #about .lines{
        margin: .5rem 0 0 -0.5rem;
    }
    #about p {
        padding: 0;
        font-size: 95%;
    }
    .about-img {
        margin: 0.5rem 0 0 0;
        width: 100%;
    }
    .working-hours {
        width: 57%;
        margin: 1rem 0 2rem 0;
    }
    #about .working-hours p.headng {
        font-size: 1.15rem;
        padding-left: .5rem;
        width: 76%;
    }
    .working-list {
        padding-left: 0.5rem;
    }
}
@media (max-width: 767px) and (min-width: 576px) {
    #about::before,#about::after {
        height: 2rem;
        content: "";
        display: block;
    }
    #about h2 {
        margin: 0 0 2.25rem .25rem;
    }
    #about .lines{
        margin: .5rem 0 0 -0.5rem;
    }
    #about p {
        padding: 0;
        font-size: 85%;
    }
    .about-img {
        margin: 1rem 4rem;
    }
    .working-hours {
        width: 75%;
        margin: 1rem 0 2rem 0;
    }
    #about .working-hours p.headng {
        font-size: 1.15rem;
        padding-left: .5rem;
        width: 76%;
    }
    .working-list {
        padding-left: 0.5rem;
    }
}
@media (max-width: 575px) and (min-width: 349px) {
    #about::before,#about::after {
        height: 2rem;
        content: "";
        display: block;
    }
    #about h2 {
        margin: 0 0 2.25rem .25rem;
    }
    #about p {
        padding: 0;
        font-size: 85%;
    }
    .about-img {
        margin: 0 2rem 1rem 2rem;
    }
    .working-hours {
        width: 100%;
        margin: 1rem 0 2rem 0;
    }
    #about .working-hours p.headng {
        font-size: 0.95rem;
        padding-left: .5rem;
        bottom: 0.85rem;
        width: 62%;
    }
    .working-list {
        padding-left: 0.5rem;
        font-size: 85%;
    }
    .working-list li .calendar, .working-list li .clock  {
        padding: 0 1rem .5rem 1rem;
    }
}
@media (max-width: 348px){
    #about::before,#about::after {
        height: 2rem;
        content: "";
        display: block;
    }
    #about h2 {
        margin: 0 0 2.25rem .25rem;
    }
    #about p {
        padding: 0;
        font-size: 85%;
    }
    .about-img {
        margin: 0 0 1rem 0;
        width: 100%;
    }
    .working-hours {
        width: 100%;
        margin: 1rem 0 2rem 0;
    }
    #about .working-hours p.headng {
        font-size: 0.95rem;
        padding-left: .5rem;
        bottom: 0.85rem;
        width: 88%;
    }
    .working-list {
        padding-left: 0.5rem;
        font-size: 85%;
    }
    .working-list li .calendar, .working-list li .clock  {
        padding: 0 1rem .5rem 1rem;
    }
}

/* Scroll to top button*/
#scrollToTopBtn{
    display: inline-block;
    background: rgba(246,246,246,1);
    border: 2px solid #d7ccb9;
    width: 50px;
    height: 50px;
    text-align: center;
    position: fixed;
    bottom: 30px;
    right: 30px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.35);
    transition: background-color .3s, opacity .5s, visibility .5s;
    opacity: 0;
    visibility: hidden;
    z-index: 1000;
    color: #d7ccb9;
    font-size: 2em;
}
#scrollToTopBtn:hover {
    cursor: pointer;
    background: rgba(215,204,185,1);
    border: 2px solid #a44b04;
    color: #a44b04;
}
#scrollToTopBtn:active {
    background: rgba(215,204,185,1);
    border: 2px solid #a44b04;
    color: #a44b04;
}
#scrollToTopBtn.show {
    opacity: 1;
    visibility: visible;
}
/*Footer Block styles*/
#footer:before{
    height: 4rem;
    content: "";
    display:block;
}
#footer{
    background:transparent url("../images/bg-footer.jpg") no-repeat center;
    background-size: cover;
    color:#fff;
}

#footer h3{
    margin: 0 0 3.5rem 1.75rem;
    color:#fff;
}
#footer h3 .line {
    background: #c5b69c;
}
#footer a{
    color: #d7ccb9;
}
#footer a:hover{
    color: #d7ccb9;
    text-decoration: underline;
}
.map-responsive{
    overflow:hidden;
    padding-bottom:45%;
    position:relative;
    height:0;
}
.map-responsive iframe{
    left: 3%;
    top:0;
    height:75%;
    width:93%;
    position:absolute;
    margin: 0 1.2rem;
    border: 7px solid #fff;
    box-shadow: 0 0 15px rgba(0, 0, 0, 0.3);
}
.footer-slogan {
    display: block;
    margin-left: 5rem;
}
.footer-slogan img {
    border: 1px solid #c5b69c;
}
.contact-info{
    padding: 1.5rem 5rem 5rem 4.75rem;
}
.contacts-list {
    list-style: none;
    margin: 2rem 0;
    padding-left: .4rem;
    font-size: 1.15rem;
    line-height: 1.65;
}
.contacts-list li {
    padding: 6px 0;
}
.contacts-icons {
    margin-right: .4rem;
}
.mapa{
    background: transparent url("../images/icons/map.png") no-repeat;
    padding: .25rem 1rem;
}
.sml{
    font-size:smaller;
}
.bdr2 {
    border-bottom: 1px solid rgba(150,156,166,1);
    margin-bottom: 1rem;
}
.move {
    padding-left: 2.5rem;
}
.phone{
    background: transparent url("../images/icons/phone.png") no-repeat;
    padding: 0 1rem .42rem 1rem;
}
.web{
    background: transparent url("../images/icons/globe.png") no-repeat;
    padding: 0 1rem .45rem 1rem;
}
.mail{
    background: transparent url("../images/icons/message.png") no-repeat;
    padding: 0 1rem .25rem 1rem;
}
.clock{
     background: transparent url("../images/icons/clock.png") no-repeat;
     padding: 0 1rem .35rem 1rem;
 }
.skype{
    background: transparent url("../images/icons/skype.png") no-repeat;
    padding: 0 1rem .35rem 1rem;
}
.calendar{
    background: transparent url("../images/icons/calendar.png") no-repeat;
    padding: 0 1rem .35rem 1rem;
}
.copyright {
    margin-top: 2rem;
    text-align: center;
    font-size: 80%;
    border-top: 1px solid #c5b69c;
    padding: 1rem 0 0 0;
}
@media (max-width: 1024px){
	.contact-info {
		padding: 1.5rem 1rem 3rem 2.75rem;
	}
}
@media (max-width: 991px) and (min-width: 768px) {
    #footer::before {
        height: 2rem;
        content: "";
        display: block;
    }
    .footer-slogan {
        margin-left: 0;
    }
    .contact-info {
        padding: 1rem 1rem .15rem 1rem;
    }
    .contacts-list li {
        font-size: 85%;
    }
    .mapa, .phone, .web, .mail, .clock, .skype{
        background-size: 75%;
        padding-bottom: 0.8rem;
    }
    .map-responsive iframe{
        margin: 0;
    }
    .copyright{
        font-size: 70%;
    }
}
@media (max-width: 767px) and (min-width: 576px) {
    #footer::before {
        height: 2rem;
        content: "";
        display: block;
    }
    .footer-slogan {
        margin-left: 0;
    }
    .contact-info {
        padding: 1rem .5rem .15rem .5rem;
    }
    .contacts-list li{
        padding: 5px 0;
        font-size: 74%;
    }
    .map-responsive iframe {
        top: 0;
        margin: 0;
        left: .95rem;
        width: 91%;
    }
    .mapa, .phone, .web, .mail, .clock, .skype{
        background-size: 75%;
        padding-bottom: 0.8rem;
    }
    .copyright{
        font-size: 67%;
    }
}
@media (max-width: 575px) and (min-width: 349px) {
    #footer::before {
        height: 1rem;
        content: "";
        display: block;
    }
    .footer-slogan {
        margin-left: 1.25rem;
    }
    .contact-info {
        padding: 1rem 1rem .15rem 1rem;
    }
    .sml {
        font-size: 60%;
    }
    .map-responsive iframe {
        top: 15px;
        margin: 0;
        left: 1rem;
        width: 94%;
    }
}
@media (max-width: 348px){
    #footer::before {
        height: 1rem;
        content: "";
        display: block;
    }
    #footer h3 {
        margin: 0 0 0.5rem 1.75rem;
    }
    #footer h3  .line {
        left: 1rem;
        width: 38%;
    }
    .footer-slogan {
        margin-left: 0;
    }
    .contact-info {
        padding: 1rem 0 .15rem 0;
    }
    .contacts-list li {
        padding: 5px 0;
        font-size: 80%;
    }
    .sml {
        font-size: 50%;
    }
    .mapa, .phone, .web, .mail, .clock, .skype{
        background-size: 75%;
        padding-bottom: 0.8rem;
    }
    .map-responsive iframe {
        top: 15px;
        margin: 0;
        left: .95rem;
        width: 91%;
    }
    .copyright {
        font-size: 65%;
    }
}