/*
Theme Name: Erizo
Author: CSolution
*/

html{
	overflow-x: hidden;
	scroll-behavior: smooth;
	background-color: #2a2a2a;
}
body{
	background: #fff;
	overflow-x: hidden;
	font-size: 18px;
	margin: 0;
	padding: 0;
	font-family: 'Roboto Condensed', sans-serif;
}
section{
	background: #fff;
	padding: 75px 0;
}
li{
	color: #2a2a2a;
}

.double-pad-top{padding-top: 150px;}
.double-pad-bottom{padding-bottom: 150px;}
.double-pad{padding:150px 0;}

*:focus{
	outline: none;
}
a:hover{
	text-decoration: none;
}
img {
	max-width: 100%
	}
h1,h2,h3,h4,h5,h6{
    margin: 0;
	padding: 0;
}

/* ************* */
/* Titles */
/* ************* */
h1{
    font-size: 58px;
    text-transform: uppercase;
    color: #2a2a2a;
    font-weight: 400;
}
h2{
    color: #2a2a2a;
    font-size: 28px;
    margin-bottom: 30px;
    font-weight: 700;
}
h4{
    font-size: 20px;
    color: #2a2a2a;
    font-weight: 700;
    margin-bottom: 30px;
}
h6{
    color:  #2a2a2a;
    font-size: 18px;
    text-transform:uppercase;
    margin-bottom: 30px;
    font-weight: 400;
}
p{
    color: #727272;
    line-height: 1.5;
    font-size: 18px;
	margin-top: 0px;
}
p a {
	color: #2a2a2a;
	transition: color 0.5s;
	font-weight: 700;
}
p a:hover {
	color: #ddd;
}
.about-us p:last-of-type {
	margin-bottom: 0px;
}

@media screen and (max-width: 992px) {
	section{padding: 60px 0;}
	.double-pad-top{padding-top: 60px;}
	.double-pad-bottom{padding-bottom: 60px;}
	.double-pad{padding:60px 0;}
}

/* ************* */
/* For all */
/* ************* */
a,a:hover{text-decoration: none;}
.rel{position: relative;}
.flex-align-column{
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.text-center{text-align: center;}
.text-right{text-align: right;}
.text-justify{text-align: justify;}
.uppercase{text-transform: uppercase;}
.bg{
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.color-bg{
    background-color: #f1f1f1;
}
.justify-content-center{
    justify-content: center;
}
.offer-rev{
    flex-direction: row-reverse;
}



/* ************* */
/* Buttons*/
/* ************* */

.color-btn-arrow{
    background:#2a2a2a;
    color: #fff;
    border-radius: 0px;
    display: inline-block;
    width: max-content;
    padding: 16px 75px;
    border: 2px solid #2a2a2a;
    margin: 30px 0 0px;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 700;
    max-width: 100%;
}
.border-btn-arrow{
    background:none;
    color: #2a2a2a;
    border-radius: 0px;
    display: inline-block;
    width: max-content;
    padding: 16px 75px;
    border: 2px solid #2a2a2a;
    margin: 30px 0 0px;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 700;
    max-width: 100%;
}
.white-border-btn-arrow{
    background:#2a2a2a;
    color: #fff;
    border-radius: 0px;
    display: inline-block;
    width: max-content;
    padding: 16px 45px;
    border: 2px solid #2a2a2a;
    margin: 30px 0 0px;
    font-size: 18px;
    text-transform: none;
    font-weight: 700;
    max-width: 100%;
}

.btn-full-col{
    padding: 15px;
    text-align: center;
    display: block;
    width: 100%;
}
.color-btn-arrow>i{
    content: url('img/arrow-btn.png');
    width: 15px;
    margin-left: 10px;
    transition: 0.5s;
}
.border-btn-arrow>i{
    content: url('img/arrow-btn-black.png');
    width: 15px;
    margin-left: 10px;
    transition: 0.5s;
}

.white-border-btn-arrow.custom-button i {
	content: url('img/arrow-btn-black.png');
}
.white-border-btn-arrow>i{
    content: url('img/arrow-btn.png');
    width: 15px;
    margin-left: 10px;
    transition: 0.5s;
}
.white-border-btn-arrow:hover>i,
.color-btn-arrow:hover>i,
.border-btn-arrow:hover>i
{
    margin-left: 35px;
}

/* ************* */
/* Color icons */
/* ************* */

.color-icon-tick{
    background: #2a2a2a;
    border-radius: 50%;
    width: 50px;
    max-width: 100%;
    height: 50px;
    position: relative;
    margin:auto;
}
.color-icon-tick::after{
    content: "";
    background-image: url('img/tick.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 0;
    right: 0;
    width: 30%;
    top: 0;
    bottom: 0;
    margin: auto;
}


.color-icon-1{
    background: #2a2a2a;
    border-radius: 50%;
    width: 50px;
    max-width: 100%;
    height: 50px;
    position: relative;
    margin:auto;
}
.color-icon-1::after{
    content: "";
    background-image: url('img/white-icon-1.png');
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    left: 0;
    right: 0;
    width: 50%;
    top: 0;
    bottom: 0;
    margin: auto;
}



@media screen and (max-width:768px){
    .flex-reverse-mobile-768{flex-direction: column-reverse;}
    .mobile-mgbot-0{margin-bottom: 0;}
}
@media screen and (max-width:992px){
    .mobil992-mgt-60{
        margin-top: 60px;
    }
    .mobil992-mgb-60{
        margin-bottom: 60px;
    }
    .less992-text-center{
        text-align: center;
    }
}

/* slick */
.slick-dotted.slick-slider{
    margin-bottom: 0;
}
.slick-dots li button:before{
    content: "";
    border: 2px solid #2a2a2a;
    border-radius: 0px;
    width: 10px;
    height: 10px;
}
.slick-dots li.slick-active button:before{
    background: #2a2a2a;
}
.slick-dots{bottom: -60px;}

/* ************* */
/* About us */
/* ************* */
.about-us img{width: 100%;}
.about-us-img-bg{
    min-height: 440px;
    height: 100%;
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
@media screen and (max-width:768px){
    .about-us img{margin-top: 60px;}
    
}
.about-us-new{
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    position: relative;
    z-index: 0;
}
.about-us-new::after{
    z-index: -1;
    position: absolute;
    content: "";
    left: 42%;
    right: 0;
    top: 0;
    bottom: 0;
    background-color: #ffffff;
    opacity: 0.9;
}
@media screen and (max-width:992px){
    .about-us-new::after{
        left: 0!important;
    }
}

/* ************* */
/* Banner */
/* ************* */

@keyframes arrowAnimation {
    0%   {transform:translateY(-30px) ;}
    30% {transform:translateY(0) ;}
    100% {transform:translateY(-30px) ;}
}
.banner{
    background-position: center;
    width: 100%;
    height: 540px;
    display: flex;
    position: relative;
    flex-direction: column;
    justify-content: center;
	padding: 130px 0 15px;
    background-size: cover;
    z-index: 0;
    background-repeat: no-repeat;
}
.home{
    min-height: 100vh;
}
.banner h1, .home h1 {
	color: #fff;
	font-weight: 700;
	letter-spacing: 1px;
	text-align: center;
}
.home h1 {
	margin-bottom: 30px;
}
.home h2 {
	margin-bottom: 15px;
	text-align:center;
	padding: 0 15px;
}
.home{
	padding: 120px 0 30px;
}
@media screen and (max-width:992px){
	.home{
		padding: 90px 0 30px;
	}
	.home h1 {
		font-size: 38px;
	}
	.home h2 {
		font-size: 22px;
	}
}
.call-action{
    position: relative;
    z-index: 0;
}

.call-action-v1::after{
    opacity: 1;
}
.banner h2, .home h2{
    color: #fff;
    text-transform: uppercase;
}
.banner-text, .banner-text *{
    font-size: 32px;
    font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 2px;
}
.banner-box{
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
}
.banner::after,.call-action::after{
    /* background:linear-gradient(90deg, #00193a91 0%, #00193a91 20%, rgba(255,255,255,0) 100%); */
	background: rgba(0,0,0,0.2);
    content: "";
    top: 0;
    left: 0;
    opacity: 0.7;
    z-index: -1;
    bottom: 0;
    right: 0;
    position: absolute;

}
.banner-scroll-btn{
    position: absolute;
    bottom: 5px;
    left: 0;
    right: 0;
    text-align: center;
	z-index: 3;
}
.scroll-btn-arrow{
    position: relative;
    margin: auto;
}

.scroll-btn-arrow {
    animation-duration: 2s;
    animation-name: arrowAnimation;
    animation-timing-function: ease;
    animation-iteration-count: infinite;	
}

.scroll-btn-arrow::after{
    position: absolute;
    content: "";
    background: #fff;
    width: 3px;
    height: 16px;
    bottom: -4px;
    right: -6px;
    transform: rotateZ(45deg);
}
.scroll-btn-arrow::before{
    position: absolute;
    content: "";
    background: #fff;
    width: 3px;
    height: 16px;
    bottom: -4px;
    left: -7px;
    transform: rotateZ(-45deg);
}
.scroll-btn-elements{
    display: inline-block;
    border-radius: 0px;
    padding: 15px 12px;
}
@media screen and (max-width:992px){
    .banner h1{font-size: 36px;}
}
.parallax-banner{
    background-size: 190%!important;
    background-position-y: 100%;
}
@media screen and (max-width:992px){
    .parallax-banner{
        background-size: 350%!important;
    }
}

/* ************* */
/* Banner  v4 2btns*/
/* ************* */
.banner-v4 h1,
.banner-v4 p,
.banner-v4 div{color: #fff;}
.banner-v4 h2{font-weight: 400;}

.banner-v4 .scroll-btn-arrow,
.banner-v4 .scroll-btn-arrow::after,
.banner-v4 .scroll-btn-arrow::before{background: #fff;}

.banner-v4 .scroll-btn-elements{border-color: #fff;}

@media screen and (max-width:768px){
    .banner-v4 a{
        margin: 60px 0 0;
    }
}

/* ************* */
/* Services */
/* ************* */
.services{background-color: #f1f1f1;}

.services .services-container h6 {
    font-weight: 700;
    color: #2a2a2a;
    text-transform: none;
	background-color: #d9d9d9e6;
	position: absolute;
	bottom: 0px;
	left:0;
	right:0;
padding: 7px 10px;
	display: flex;
	align-items:center;
	justify-content: center;
	margin: 0;
    text-transform: none;
}
.services .services-img {
	background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
	padding-top: 72%;
}
.services-container {
    margin-top: 60px;
}
.services-text{font-size: 14px;line-height: 1.4;}
.services-header-text{
    font-size: 14px;
    line-height: 1.4;
}
.services-v3 .services-white-box{
    background: #fff;
    box-shadow: 0px 1px 17px 0px rgba(0,0,0,0.06);
}
.services-v3 .services-container{
    margin-top: 30px;
}
.services-white-box{
    position: relative;
    z-index: 0;
	transition: transform 0.5s;
}
.services-white-box:hover{
    transform: scale(1.05);
}
.services-white-box a{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 10;
}

/* ************* */
/* Contact form */
/* ************* */
.contact-container{
    text-align: center;
    margin-top: 60px;
}
.contact-container  img{
    position: relative;
    float: left;
    top:-14px;
    margin-right: 5px;
    width: 60px;
}
.contact-container a,.contact-container{color: #999;}
@media screen and (max-width:992px){
    .contact-container{
        text-align: left;
    }
}
.wpcf7-not-valid-tip {
    margin-bottom: 30px;
    margin-top: -20px;
}
.contact-form input,
.contact-form textarea{
    width: 100%;
    border: none;
    background: none;
    transition: 0.5s;
    resize: none;
}
.contact-form input:focus,
.contact-form textarea:focus
{outline: none;}

.contact-form-container{position: relative;}
input:-webkit-autofill {background-color:#fff!important;}
.contact-label-up{top: 0!important;}
/*Change autofill */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:active,
input:-webkit-autofill:focus {
    background-color: #FFFFFF !important;
    color: #555 !important;
    -webkit-box-shadow: 0 0 0 1000px white inset !important;
    -webkit-text-fill-color: #555555 !important;
}
/* ************* */
/* Contact form v6*/
/* ************* */
.contact-form-v6 input,
.contact-form-v6 textarea
{
    border-bottom: 1px solid #2a2a2a65;
    font-size: 14px;
    color: #2a2a2a;
    padding: 30px 20px;
    margin-bottom: 30px;
}
.contact-form-v6 label{
    position: absolute;
    top:25px;
    left: 0;
    transition: 0.5s;
    font-weight: 300;
    font-size: 14px;
    color: #2a2a2a;
}

.contact-form-v6 textarea {
	margin-top: 25px;
}
.contact-form-v6 input:focus,.contact-form-v6 textarea:focus{border-color: #2a2a2a;}

.contact-form-v6 button[type="submit"]{
    background: #2a2a2a;
    font-weight: 700;
    cursor: pointer;
    width: unset;
    border: 1px solid #2a2a2a;
    border-radius: 0px;
    padding: 20px 60px;
    color: #fff;
    text-align: center;
    display: block;
    text-transform: uppercase;
    font-family: inherit;
}
.contact-form-v6 button[type="submit"]:hover>i{
    margin-left: 30px;
}
.contact-form-v6 button>i{
    content: url('./img/arrow-btn.png');
    width: 15px;
    margin-left: 10px;
    transition: 0.5s;
}
.contact-form-v6 iframe{
    width: 100%;
    min-height: 450px;
    height: 100%;
}
.contact-form-v6 .input-select label {
	position: static;
}
.contact-form-v6 select {
	border: 1px solid #2a2a2a;
	border-radius: 0px;
	background-color: transparent;
	padding: 5px;
	font-family: inherit;
	margin-top: 15px;
}
.contact-form-v6 .contact-form-box{
    padding-top: 0px;
    padding-bottom: 0px;
}
@media screen and (max-width:992px) {
	.contact-form-v6 .contact-form-box{
		padding-top: 60px;
    	padding-bottom: 0px;
	}
}
/* ************* */
/* Call action */
/* ************* */
.call-action *{
    color: #fff!important;
}
.call-action .white-border-btn-arrow{
    margin: 0;
}
.call-action-text{font-size: 20px;}
.call-action{background-color: #fff;}
.call-action h2{color: #fff;}
@media screen and (max-width:992px){
    .call-action h1{font-size: 30px;}
}
@media screen and (max-width:768px){
    .call-action h1{font-size: 30px;}
    .call-action .white-border-btn-arrow{
        margin: 60px 0 20px;
    }
}


/* ************* */
/* Price */
/* ************* */
.price-btn>i{
    content: url('img/arrow-btn.png');
    width: 15px;
    margin-left: 10px;
    transition: 0.5s;
}
.price-btn{
    background-color: #2a2a2a;
    border: 2px solid #2a2a2a;
    color: #fff;
    transition: 0.5s;
    padding:15px 30px;
    display: inline-block;
    border-radius: 0px;
}
/* ************* */
/* Price v4*/
/* ************* */
.price-v4 .price-title-1{
    font-size: 18px;
    color: #2a2a2a;
    margin: 30px 0;
}
.price-v4 .price-title-main{
    color:#999;
}
.price-v4 .price-container{
    margin-bottom: 30px;
}
.price-v4  .price-value{
    height: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
    color: #2a2a2a;
    font-weight: 700;
    font-size: 26px;
}
.price-v4 .price-line{
    height: 100%;
    border-bottom: 1px solid #99999980;
}
.price-v4 .price-title-hide{
    font-size: 16px;
    background-color: #f7f7f7;
    padding: 30px 60px 30px 30px;
    position: relative;
    border-bottom: 1px solid #999;
}
.price-v4 .price-btn-x{
    position: absolute;
    width: 30px;
    height: 30px;
    right: 30px;
    cursor: pointer;
    top: 30%;
    opacity: 0.7;
    transition: 0.5s;
}
.price-v4 .price-btn-x::after,.price-v4 .price-btn-x::before{
    position: absolute;
    content: "";
    height: 20px;
    width: 2px;
    background-color: #2a2a2a;
    display: block;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.price-v4 .price-btn-x::before{
    transform: rotateZ(90deg);
}
.price-btn-transform{
    transform: rotateZ(45deg);
    opacity: 1;
}
.price-v4 .price-el{
    display: none;
}
@media screen and (max-width:768px){
    .price-v4 .price-line{
        margin-top: 15px;
        height: unset;
    }
    .price-v4  .price-value{
        margin-top: 15px;
    }
}

/* ************* */
/* Custom gallery */
/* ************* */

.custom-gallery{
    display: flex;
    flex-wrap: wrap;
    width: 100%;
}
.custom-gallery-photo{
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    width: 100%;
    padding-top: 100%;
}
.gallery-column{
    padding: 15px;
}

.gl-1 > div{flex-basis: 100%;}
.gl-2 > div{flex-basis:50%;padding:15px;max-width: 50%;}
.gl-3 > div{flex-basis:33.3%;padding:15px;max-width: 33.3%;}
.gl-4 > div{flex-basis:25%;padding:15px;max-width: 25%;}
.gl-5 > div{flex-basis:20%;padding:15px;max-width: 20%;}
.gl-6 > div{flex-basis:16.6%;padding:15px;max-width: 16.6%;}
.gl-7 > div{flex-basis:14.2%;padding:15px;max-width: 14.2%;}
.gl-8 > div{flex-basis:12.5%;padding:15px;max-width: 12.5%;}
.gl-9 > div{flex-basis:11.1%;padding:15px;max-width: 11.1%;}
@media screen and (max-width:1199px){
    .gl-9 > div,
    .gl-8 > div,
    .gl-7 > div,
    .gl-6 > div{
        flex-basis: 20%;
        max-width: 20%;
    }
}
@media screen and (max-width:992px){
    .gl-9 > div,
    .gl-8 > div,
    .gl-7 > div,
    .gl-6 > div,
    .gl-5 > div{
        flex-basis:25%;
        max-width: 25%;
    }
}
@media screen and (max-width:768px){
    .gl-9 > div,
    .gl-8 > div,
    .gl-7 > div,
    .gl-6 > div,
    .gl-5 > div,
    .gl-4 > div,
    .gl-3 > div{
        flex-basis:50%;
        max-width: 50%;
    }
}

    .home {
        width: 100%;
        height: 100vh;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }
    .home h1, .home h2 {
        z-index: 3;
		position:relative;
    }
	.box-home-slider div {
		text-align:center;
	}
    .home--overlay {
        background-color: #000;
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        opacity: 0.4;
        z-index: 2;       
    }
    .fade-zoom-slider {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 0;
        background-color: #fff;
        overflow: hidden;
    }
    .fade-zoom-slider > div {
        position: absolute;
		top: 0px;
		left: 0px;
		right: 0px;
		z-index: -1;
        height: 100vh;
        background-size: cover;
        background-position: center;
		background-color: #fff;
    }
    @keyframes slideFade {
        0% {
            transform: scale(1);
            opacity: 0;
        }
        10% {
            opacity: 1;
        }
        90% {
            opacity: 1;
        }
        100% {
            transform: scale(1.2);
            opacity: 0;
        }
    }
    .fade-zoom-slider .fade-zoom-slider--active {
        z-index: 1;
    }


.margin-bottom-30 {
	margin-bottom: 30px;
}
.margin-bottom-60 {
	margin-bottom: 60px;
}
.margin-bottom-60-row-elements {
	margin-bottom: 60px;
}
.margin-bottom-60-row-elements:last-of-type {
	margin-bottom: 0px;
}
.blog-post-bg {
	background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
	padding-top: 56%;
}
.item-container {
	padding-top: 60px;
	padding-bottom: 60px;
	border-bottom: 1px solid #2a2a2a;
}
.item-container:last-of-type {
	border-bottom: 0;
}
.item-variations {
	background-color: #ddd;
}
.item-variation {
	text-align: center;
	background-color: #fff;
	box-shadow: 0px 1px 17px 0px rgba(0,0,0,0.06);
}
.item-variation img {
	display: block;
	margin: 0 auto;
}
.item-variation-caption {
	text-align: center;
	background-color: #fff;
	padding: 10px;
}

.single-banner {
	background-color: #e8e8e8;
	margin-top: 120px;
	padding: 60px;
}

@media screen and (max-width:992px){
	.single-banner {
		margin-top: 90px;	
	}
}

.item-desc {
	padding: 15px;
	background-color: #fff;
	display:none;
	text-align: left;
}
.item-desc ul {
	padding-left: 14px;
}
.item-variation-slide {
	cursor: pointer;
}
.item-variation-container {
	padding-top: 15px;
	padding-bottom: 15px;
}