/*-----------------------------------------------------------------------------------
	Ramis
	Author: Aleksandr Mikheev
	Version: 1.0
	Built with Blocs
-----------------------------------------------------------------------------------*/
body{
	margin:0;
	padding:0;
    background:#FFFFFF;
    overflow-x:hidden;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.page-container{overflow: hidden;} /* Prevents unwanted scroll space when scroll FX used. */
a,button{transition: background .3s ease-in-out;outline: none!important;} /* Prevent ugly blue glow on chrome and safari */
a:hover{text-decoration: none; cursor:pointer;}


/* Preloader */

.page-preloader{position: fixed;top: 0;bottom: 0;width: 100%;z-index:100000;background:#FFFFFF url("img/pageload-spinner.gif") no-repeat center center;animation-name: preloader-fade;animation-delay: 2s;animation-duration: 0.5s;animation-fill-mode: both;}
.preloader-complete{animation-delay:0.1s;}
@keyframes preloader-fade {0% {opacity: 1;visibility: visible;}100% {opacity: 0;visibility: hidden;}}

/* = Blocs
-------------------------------------------------------------- */

.bloc{
	width:100%;
	clear:both;
	background: 50% 50% no-repeat;
	padding:0 20px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	position:relative;
	display:flex;
}
.bloc .container{
	padding-left:0;
	padding-right:0;
}


/* Sizes */

.bloc-lg{
	padding:100px 20px;
}

/* = Full Screen Blocs 
-------------------------------------------------------------- */

.bloc-fill-screen{
	min-height:100vh;
	display: flex;
	flex-direction: column;
	padding-top:20px;
	padding-bottom:20px;
}
.bloc-fill-screen > .container{
	align-self: flex-middle;
	flex-grow: 1;
	display: flex;
	flex-wrap: wrap;
}
.bloc-fill-screen > .container > .row{
	flex-grow: 1;
	align-self: center;
	width:100%;
}
.bloc-fill-screen .fill-bloc-top-edge, .bloc-fill-screen .fill-bloc-bottom-edge{
	flex-grow: 0;
}
.bloc-fill-screen .fill-bloc-top-edge{
	align-self: flex-start;
}
.bloc-fill-screen .fill-bloc-bottom-edge{
	align-self: flex-end;
}


/* Background Styles */

.bg-center,.bg-l-edge,.bg-r-edge,.bg-t-edge,.bg-b-edge,.bg-tl-edge,.bg-bl-edge,.bg-tr-edge,.bg-br-edge,.bg-repeat{
	-webkit-background-size: auto!important;
	-moz-background-size: auto!important;
	-o-background-size: auto!important;
	background-size: auto!important;
}
.bg-r-edge{
	background: right no-repeat;
}


/* Dark theme */

.d-bloc{
	color:rgba(255,255,255,.7);
}
.d-bloc button:hover{
	color:rgba(255,255,255,.9);
}
.d-bloc .icon-round,.d-bloc .icon-square,.d-bloc .icon-rounded,.d-bloc .icon-semi-rounded-a,.d-bloc .icon-semi-rounded-b{
	border-color:rgba(255,255,255,.9);
}
.d-bloc .divider-h span{
	border-color:rgba(255,255,255,.2);
}
.d-bloc .a-btn,.d-bloc .navbar a, .d-bloc a .icon-sm, .d-bloc a .icon-md, .d-bloc a .icon-lg, .d-bloc a .icon-xl, .d-bloc h1 a, .d-bloc h2 a, .d-bloc h3 a, .d-bloc h4 a, .d-bloc h5 a, .d-bloc h6 a, .d-bloc p a{
	color:rgba(255,255,255,.6);
}
.d-bloc .a-btn:hover,.d-bloc .navbar a:hover,.d-bloc a:hover .icon-sm, .d-bloc a:hover .icon-md, .d-bloc a:hover .icon-lg, .d-bloc a:hover .icon-xl, .d-bloc h1 a:hover, .d-bloc h2 a:hover, .d-bloc h3 a:hover, .d-bloc h4 a:hover, .d-bloc h5 a:hover, .d-bloc h6 a:hover, .d-bloc p a:hover{
	color:rgba(255,255,255,1);
}
.d-bloc .navbar-toggle .icon-bar{
	background:rgba(255,255,255,1);
}
.d-bloc .btn-wire,.d-bloc .btn-wire:hover{
	color:rgba(255,255,255,1);
	border-color:rgba(255,255,255,1);
}
.d-bloc .card{
	color:rgba(0,0,0,.5);
}
.d-bloc .card button:hover{
	color:rgba(0,0,0,.7);
}
.d-bloc .card icon{
	border-color:rgba(0,0,0,.7);
}
.d-bloc .card .divider-h span{
	border-color:rgba(0,0,0,.1);
}
.d-bloc .card .a-btn{
	color:rgba(0,0,0,.6);
}
.d-bloc .card .a-btn:hover{
	color:rgba(0,0,0,1);
}
.d-bloc .card .btn-wire, .d-bloc .card .btn-wire:hover{
	color:rgba(0,0,0,.7);
	border-color:rgba(0,0,0,.3);
}


/* Light theme */

.d-bloc .card,.l-bloc{
	color:rgba(0,0,0,.5);
}
.d-bloc .card button:hover,.l-bloc button:hover{
	color:rgba(0,0,0,.7);
}
.l-bloc .icon-round,.l-bloc .icon-square,.l-bloc .icon-rounded,.l-bloc .icon-semi-rounded-a,.l-bloc .icon-semi-rounded-b{
	border-color:rgba(0,0,0,.7);
}
.d-bloc .card .divider-h span,.l-bloc .divider-h span{
	border-color:rgba(0,0,0,.1);
}
.d-bloc .card .a-btn,.l-bloc .a-btn,.l-bloc .navbar a,.l-bloc a .icon-sm, .l-bloc a .icon-md, .l-bloc a .icon-lg, .l-bloc a .icon-xl, .l-bloc h1 a, .l-bloc h2 a, .l-bloc h3 a, .l-bloc h4 a, .l-bloc h5 a, .l-bloc h6 a, .l-bloc p a{
	color:rgba(0,0,0,.6);
}
.d-bloc .card .a-btn:hover,.l-bloc .a-btn:hover,.l-bloc .navbar a:hover, .l-bloc a:hover .icon-sm, .l-bloc a:hover .icon-md, .l-bloc a:hover .icon-lg, .l-bloc a:hover .icon-xl, .l-bloc h1 a:hover, .l-bloc h2 a:hover, .l-bloc h3 a:hover, .l-bloc h4 a:hover, .l-bloc h5 a:hover, .l-bloc h6 a:hover, .l-bloc p a:hover{
	color:rgba(0,0,0,1);
}
.l-bloc .navbar-toggle .icon-bar{
	color:rgba(0,0,0,.6);
}
.d-bloc .card .btn-wire,.d-bloc .card .btn-wire:hover,.l-bloc .btn-wire,.l-bloc .btn-wire:hover{
	color:rgba(0,0,0,.7);
	border-color:rgba(0,0,0,.3);
}

/* Row Margin Offsets */

.voffset{
	margin-top:30px;
}
.voffset-lg{
	margin-top:80px;
}


/* = NavBar
-------------------------------------------------------------- */

.hero .hero-nav{
	padding-left:inherit;
	padding-right:inherit;
}
/* Handle Multi Level Navigation */.navbar-light .navbar-nav .nav-link {
	color: rgb(64, 64, 64);
}
.btco-menu li > a {
	padding: 10px 15px;
	color: #000;
}
.btco-menu .active a:focus,.btco-menu li a:focus ,.navbar > .show > a:focus{
	background: transparent;
	outline: 0;
}
.dropdown-menu .show > .dropdown-toggle::after{
	transform: rotate(-90deg);
}

/* = Bric adjustment margins
-------------------------------------------------------------- */

.mg-clear{
	margin:0;
}
.mg-sm{
	margin-top:10px;
	margin-bottom:5px;
}
.mg-md{
	margin-top:10px;
	margin-bottom:20px;
}
.mg-lg{
	margin-top:10px;
	margin-bottom:40px;
}

/* = Buttons
-------------------------------------------------------------- */

.btn-d,.btn-d:hover,.btn-d:focus{
	color:#FFF;
	background:rgba(0,0,0,.3);
}

/* Prevent ugly blue glow on chrome and safari */
button{
	outline: none!important;
}

.btn-clean{
	border:1px solid rgba(0,0,0,.08);
	border-bottom-color:rgba(0,0,0,.1);
	text-shadow:0 1px 0 rgba(0,0,1,.1);
	box-shadow: 0 1px 3px rgba(0,0,1,.25), inset 0 1px 0 0 rgba(255,255,255,.15);
}
.btn-xl{
	padding: 16px 40px;
	font-size: 28px;
}

/* = Icons
-------------------------------------------------------------- */
.icon-md{
	font-size:30px!important;
}
.icon-lg{
	font-size:60px!important;
}
.icon-round{
	margin:0 auto;
	border:2px solid transparent;
	border-radius: 50%;
	padding: 32px 30px 26px 30px;
	min-width:80px;
}
.icon-round.icon-md,.icon-square.icon-md,.icon-rounded.icon-md{
	min-width: 92px;
}
.icon-round.icon-lg,.icon-square.icon-lg,.icon-rounded.icon-lg{
	min-width: 122px;
}
.icon-round.icon-xl,.icon-square.icon-xl,.icon-rounded.icon-xl{
	min-width: 162px;
}


/* = Text & Icon Styles
-------------------------------------------------------------- */
.blockquote{
	padding:0 20px;
	border-left:2px solid;
}
.blockquote.text-right{
	border-left:0;
	border-right:2px solid;
}


.card-sq, .card-sq .card-header, .card-sq .card-footer{
	border-radius:0;
}
.card-rd{
	border-radius:30px;
}
.card-rd .card-header{
	border-radius:29px 29px 0 0;
}
.card-rd .card-footer{
	border-radius:0 0 29px 29px;
}


/* = Forms
-------------------------------------------------------------- */

.form-control{
	border-color:rgba(0,0,0,.1);
	box-shadow:none;
}


.carousel-nav-icon{
	fill: none;
	stroke: #fff;
	stroke-width: 2px;
	fill-rule: evenodd;
	stroke-linecap:round;
}


/* ScrollToTop button */

.scrollToTop{
	width:36px;
	height:36px;
	padding:5px;
	position:fixed;
	bottom:20px;
	right:20px;
	opacity:0;
	z-index:999;
	transition: all .3s ease-in-out;
	pointer-events:none;
}
.showScrollTop{
	opacity: 1;
	pointer-events:all;
}
.scroll-to-top-btn-icon{
	fill: none;
	stroke: #fff;
	stroke-width: 2px;
	fill-rule: evenodd;
	stroke-linecap:round;
}

/* = Custom Styling
-------------------------------------------------------------- */

h1,h2,h3,h4,h5,h6,p,label,.btn,a{
/*
	font-family:"Lato";
	font-weight:400;
*/
}
.container{
	max-width:1140px;
}
.feature-col-mt{
	margin-top:29px;
}
.hero-first-col-mb{
	margin-bottom:30px;
}
.btn-style{
	width:28.6%;
}
.h2-style{
	font-size:32px;
	width:100%;
}
.p-style{
	font-size:36px;
}
.btn-button-style{
	width:22.72%;
}

/* = Colour
-------------------------------------------------------------- */

/* Background colour styles */

.bgc-white-smoke{
	background-color:#F5F5F5;
}
.bgc-black{
	background-color:rgba(0,0,0,0.86);
}

/* Text colour styles */

.tc-black{
	color:#000000!important;
}

/* Button colour styles */

.btn-ultramarine-blue{
	background:#2D57EB;
	color:#FFFFFF!important;
}
.btn-ultramarine-blue:hover{
	background:#2446bc!important;
	color:#FFFFFF!important;
}

.btn-yellow{
	background:#f3f338;
	color:#000 !important;
}
.btn-yellow:hover{
	background:rgba(243, 243, 56, 0.73) !important;
	color:#000 !important;
}

/* Icon colour styles */

.icon-black{
	color:#000000!important;
	border-color:#000000!important;
}

/* Bloc image backgrounds */

.bg-321{
	background-image:url("img/321.png");
}

/* = Custom Bric Data
-------------------------------------------------------------- */

.img-text-overlay-container{
	position:relative;
}
.text-label-overlay{
	position:absolute;
	top: 50%;
	transform: translateY(-50%);
	width:100%;
	 text-align:center;
	font-size:40px;
}
.text-overlay-light-text{
	color:rgba(255,255,255,.5);
}


/* = Bloc Padding Multi Breakpoint
-------------------------------------------------------------- */

@media (min-width: 576px) {
    .bloc-xxl-sm{padding:200px 20px;}
    .bloc-xl-sm{padding:150px 20px;}
    .bloc-lg-sm{padding:100px 20px;}
    .bloc-md-sm{padding:50px 20px;}
    .bloc-sm-sm{padding:20px;}
    .bloc-no-padding-sm{padding:0 20px;}
}
@media (min-width: 768px) {
    .bloc-xxl-md{padding:200px 20px;}
    .bloc-xl-md{padding:150px 20px;}
    .bloc-lg-md{padding:100px 20px;}
    .bloc-md-md{padding:50px 20px;}
    .bloc-sm-md{padding:20px 20px;}
    .bloc-no-padding-md{padding:0 20px;}
}
@media (min-width: 992px) {
    .bloc-xxl-lg{padding:200px 20px;}
    .bloc-xl-lg{padding:150px 20px;}
    .bloc-lg-lg{padding:100px 20px;}
    .bloc-md-lg{padding:50px 20px;}
    .bloc-sm-lg{padding:20px;}
    .bloc-no-padding-lg{padding:0 20px;}
}

.header-tel-wrap {
    -ms-flex-positive: 1;
    flex-grow: 1;
    text-align: right;
}
.header-tel-wrap.hid {
    display: none;
}


.popup-form {
    width: 400px;
    max-width: 100%;
    box-sizing: border-box;
    padding: 30px 40px 40px;
}
.popup-title {
    font-size: 28px;
    margin: 0;
}
.popup-undertitle {
    font-size: 18px;
    line-height: 24px;
    margin: 10px 0 25px;
}
.popup-label {
    display: block;
    width: 100%;
    margin: 0 0 10px;
}
.popup-input {
    border: 1px solid #ced4da;
    border-radius: 4px;
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 8px 20px 12px;
}
.errors_block {
    display: none;
}
.popup-input.error {
    border: 1px solid #f00;
}
.popup-button {
    display: block;
    width: 100%;
    background: #2D57EB;
    color: #FFFFFF;
    border-radius: 4px;
    border: none;
    padding: 8px 20px 12px;
}

/* = Mobile adjustments 
-------------------------------------------------------------- */
@media (max-width: 1024px)
{
    .bloc.full-width-bloc, .bloc-tile-2.full-width-bloc .container, .bloc-tile-3.full-width-bloc .container, .bloc-tile-4.full-width-bloc .container{
        padding-left: 0; 
        padding-right: 0;  
    }
}
@media (max-width: 991px)
{
    .container{width:100%;}
    .bloc{padding-left: constant(safe-area-inset-left);padding-right: constant(safe-area-inset-right);} /* iPhone X Notch Support*/
    .bloc-group, .bloc-group .bloc{display:block;width:100%;}
}
@media (max-width: 767px)
{
    .bloc-tile-2 .container, .bloc-tile-3 .container, .bloc-tile-4 .container{
        padding-left:0;padding-right:0;
    }
    .btn-dwn{
       display:none; 
    }
    .voffset{
        margin-top:5px;
    }
    .voffset-md{
        margin-top:20px;
    }
    .voffset-lg{
        margin-top:30px;
        margin-bottom: 30px;
    }
    form{
        padding:5px;
    }
    .close-lightbox{
        display:inline-block;
    }
    .blocsapp-device-iphone5{
	   background-size: 216px 425px;
	   padding-top:60px;
	   width:216px;
	   height:425px;
    }
    .blocsapp-device-iphone5 img{
	   width: 180px;
	   height: 320px;
    }
}
@media (max-width: 767px){
	.btn-style{
		width:38.02%;
	}
	.bg-321 {
	    background-size: auto 100%!important;
	}
	.bg-321 .btn-button-style {
	    width: 100%;
	    max-width: 200px;
	}
	.header-tel-wrap.vis {
	    display: none;
	}
	.header-tel-wrap.hid {
	    display: block;
	    flex: none;
	    flex-grow: none;
	    width: 100%;
	    text-align: center;
	}
	
}

@media (max-width: 575px){
	.btn-style{
		width:71.11%;
	}
	#bloc-2 .row, #bloc-3 .row, #bloc-4 .row, #bloc-5 .row, #bloc-6 .row {
	    display: block;
	}
	.bg-321 {
	    background: #242424;
	}
	#bloc-0 .btn-style {
	    width: 100%;
	    max-width: 237px;
	    font-size: 22px;
	    padding: 16px 20px 21px;
	}
	.popup-form {
	    padding: 10px 15px 15px;
	}
	.popup-undertitle {
	    font-size: 16px;
	    line-height: 21px;
	    margin: 5px 0 22px;
	}
	
}

.hero-first-col-mb h4{
	font-size: 140%;
	text-align: center;
	margin-bottom: 50px;
	
}
