/*
Theme Name: Theme Cloud
Description: This is a child theme for Flatsome Theme
Template: flatsome
Version: 3.0
*/
@import "assets/css/default.css";
@import "assets/css/theme.css";

/*************** ADD CUSTOM CSS HERE.   ***************/
b, strong{
	font-weight: 700;
}
.widget-area .searchform{
	background: #FFF;
	padding: 20px;
}
.widget-area .searchform input.search-field{
    padding: 15px;
    height: 50px;
    box-shadow: none !important;
    border: 1px solid #eee;
}
.widget-area .searchform  button.submit-button{
	height: 50px;
	width:50px;
	background: var(--primary-color);
}

.page-template #wrapper{
	padding-top: 90px;
}
.background-transparent .col-inner{
	background: transparent;
}
.feature-icon .icon .icon-inner{
	    padding: 8px;
    border: 1px dashed #06418f;
    border-radius: 100%;
    background: #06418f24;
        display: inline-flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}
.feature-icon img{
	padding-top: 0px;
}
.header-shadow .header-wrapper, .header-wrapper.stuck, .layout-shadow #wrapper{
	box-shadow: none !important;
}
#main .banner{
	background-color:var(--primary-color);
}
/*************** STYLE FORM  ***************/

.form-support .wpcf7-form-control.wpcf7-textarea,
.form-support .wpcf7-form-control.wpcf7-text{
	height: 55px;
	box-shadow: 0 5px 28.5px 1.5px rgb(149 152 200 / 20%)!important;
	margin-bottom: 10px;
	border:1px solid transparent;
}
.form-support .wpcf7-form-control.wpcf7-textarea:focus,
.form-support .wpcf7-form-control.wpcf7-text:focus{
	border-color: var(--primary-color);
}
.form-support{
	text-align: center;
}
.form-support .wpcf7-form-control.wpcf7-submit{
	padding: 2px 50px;
	box-shadow: 0 5px 28.5px 1.5px rgb(149 152 200/20%)!important;
}
/*************** STYLE ARCHIVE HEADER   ***************/
.single-product .header-product-single,
#wrapper .header-category-title,
#wrapper .header-single-template,
#main .archive-page-header{
	background-image: url(assets/images/background-blog.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
	    padding-bottom: 150px;
    margin-bottom: 30px;
    padding-top: 120px;
}
#wrapper .header-category-title{
	text-align: center;
}

#main .archive-page-header{
	padding-top: 150px;
}
.page-template-flatsome-child{
	position: relative;
}
.single-product .header-product-single *,
#wrapper .header-category-title .page-title-inner,
.page-template-flatsome-child .banner-layers.container,
#wrapper .header-single-template .page-title-inner,
#main .archive-page-header *{
	color: #FFF;
	font-weight: 700;
	position: relative;
	z-index: 11;
}
#wrapper .header-category-title .shop-page-title,
.page-title.header-single-template .entry-title,
.archive-page-header .page-title{
	font-size:30px;
}
.single-product .header-product-single:before,
#wrapper .header-category-title:before,
.page-template-flatsome-child:before,
#wrapper .header-single-template:before,
#main .archive-page-header:before{
    content: "";
    position: absolute;
    left: 0px;
    bottom: 0px;
    background:url(assets/images/bg-header-green.svg);
    width: 100%;
    height: 150px;
    background-repeat: no-repeat;
    background-size: cover;
    z-index:10;
    background-position: 50% 50%;
}
.single-product .header-product-single:after,
#wrapper .header-category-title:after,
.page-template-flatsome-child:after,
#wrapper .header-single-template:after,
#main .archive-page-header:after{
    content: "";
    background:#00000082;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
}
.header-product-single .title-header-product-single,
.page-template-flatsome-child .entry-title{
	margin-top: 30px;
	font-size: 30px;
	text-transform: uppercase;
	font-weight: 700;
}

/*************** STYLE HEADER   ***************/

.header{
	position: absolute;
	left:0px;
	top:10px;
	width:100%;
}
.header-wrapper.stuck,
.header .header-bg-container .header-bg-color{
	background: transparent !important;
}
.header .header-inner{
	background: #FFF;
	border-radius: 5px;
	box-shadow: 0 10px 30px rgb(0 0 0 / .07);
}
.header .header-wrapper.stuck{
	box-shadow: none !important;
}

.header #masthead .header-inner{
	max-width:1120px;
}

.header #masthead .header-nav-main a:before {
	content: '';
    position: absolute;
    top: -5px;
    left: calc(50% - 8px);
    width: 10px;
    height: 10px;
    border: 2px solid #c5e9ca;
    border-radius: 10px;
    transition: all .8s;
    background: #8acc92;
    background-repeat: no-repeat;
    background-position: center center;
    animation: pulse_shadow_colored 1s 5000;
    display: none;
}
@keyframes pulse_shadow_colored {
	0% {
	    box-shadow: 0 0 0 0 rgb(32 158 46 / .4);
	}
	70% {
	    box-shadow: 0 0 0 6px #fff0;
	}
	100% {
	    box-shadow: 0 0 0 0 #fff0;
	}
}
.header #masthead .header-nav-main a:hover:before{
	display: inline-block;
}
.header #masthead .header-nav-main ul a:before{
	display: none !important;
}

/*************** STYLE ITEM POST IN BLOG   ***************/

.flatsome-post-overlay .box-blog-post{
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}
.flatsome-post-overlay .box-blog-post:hover{
	box-shadow: 0 .5rem 1rem rgba(0,0,0,.15);
}
.flatsome-post-overlay .box-blog-post .image-cover{
	padding-top: 100% !important;
}
.flatsome-post-overlay .box-blog-post .box-text{
	position: absolute;
	bottom: 0px;
	width:100%;
	left:0px;
	height: 100%;
	    display: flex;
    flex-direction: row;
    align-items: flex-end;
    color:#FFF;
    padding:20px;
}
.flatsome-post-overlay .box-blog-post .post-title a{
	font-size: 20px;
	font-weight: 700;
	margin-bottom: 10px;
}
.flatsome-post-overlay .box-blog-post .post-title a,
.flatsome-post-overlay .box-blog-post .from_the_blog_excerpt {
	overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.flatsome-post-overlay .box-blog-post *{
	color:#FFF;
}
.flatsome-post-overlay .box-blog-post .box-text-inner{
	position: relative;
	z-index: 1;
}
.flatsome-post-overlay .box-blog-post .box-text:after{
	content:"";
	position: absolute;
	left:0px;
	top:0px;
	width:100%;
	height:100%;
	background: #00000070;
	transition: all 0.4s;
}
.flatsome-post-overlay .box-blog-post:hover .box-text:after{
	background: #06418eab;
}

.flatsome-post-overlay .box-text a.button{
	padding: 5px 30px;
    border-radius: 99px;
    font-weight: 700;
    font-size: 14px;
    display: inline-block;
}
.flatsome-post-overlay .box-text a.button:hover{
	border-color:#FFF;
}

@media (max-width:849px){
	.flatsome-post-overlay .box-blog-post .image-cover{
		padding-top: 70% !important;
	}
	.flatsome-post-overlay .box-blog-post .post-title a{
		font-size: 18px;
	}
	.flatsome-post-overlay .box-text a.button{
		padding: 0px 20px;
	}
	#wrapper .header-single-template,
	#main .archive-page-header{
		padding-bottom: 40px;
	}
	#wrapper .header-single-template{
		margin-bottom: 0px;
	}
}

@media (max-width:549px){
	.flatsome-post-overlay .post-item .col-inner{
		padding:0px;
	}
}

/*************** STYLE PAGIINATION   ***************/

.nav-pagination>li>a, .nav-pagination>li>span{
	border-radius: 5px;
	border:0px;
	box-shadow: 0 8px 19px 0 rgb(0 0 0 / .1);
	padding:2px 15px;
	display: inline-block;
	width: auto;
	height: auto;
}
#main .post-sidebar{
	background:#0000000a;
	padding:30px !important;
}

#main span.widget-title span{
    background: none;
    border:0px;
    color: #000;
    padding-left: 0px;
    font-size: 18px;
    text-transform: inherit;
    font-weight: 700;
    position: relative;
}

#main span.widget-title span:after{
	content: "";
    position: absolute;
    top: 100%;
    left: 0px;
    width: 100%;
    height: 1px;
    background: var(--primary-color);
    border: 0px;
    right: inherit;
}
#main span.widget-title,
#main .page-wrapper .widget, #main #product-sidebar .widget, #main .post-sidebar .widget, #main #shop-sidebar .widget{
	background: transparent;
}
#main span.widget-title{
	border-bottom: 1px solid #e2e2e2;
	height: auto;
	overflow: inherit;
}
.page-wrapper .widget .badge .badge-inner, #product-sidebar .badge .badge-inner, #shop-sidebar .badge .badge-inner, .post-sidebar .badge .badge-inner{
	border-radius: 5px;
}

/*************** STYLE HOME  ***************/

body.home.page-template #wrapper{
	padding-top:0px;
}

.feature-box .col-inner{
    border-top-right-radius: 8px;
    border-bottom-left-radius: 8px;
    border-bottom-right-radius: 8px;
    overflow: hidden;
    background: #06418f08;
}
.feature-box img{
	    border-top-left-radius:60px;
    border-bottom-right-radius: 60px;
}
.image-service img {
    border-top-left-radius: 8em;
    border-bottom-right-radius: 8em;
}
blockquote{
	padding: 5px 15px 5px 55px;
	border-left:1px solid #0000000f;
}
blockquote:after{
	position: absolute;
    top: 2px;
    left: 10px;
    content: '';
    display: block;
    width: 30px;
    height: 30px;
    opacity: .3;
    background-image: url(assets/images/blockquote.svg);
    background-size: 30px;
    background-repeat: no-repeat;
    background-position: center center;
}
.template-slider{
	position: relative;
	overflow: hidden;
}
.template-slider:after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-image: url(assets/images/slider-outline.svg);
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    z-index:100;
}

.about-section{
	    position: absolute;
    left: 0px;
    z-index: -1;
    width: 100% !important;
    max-width: 600px;
    top: -15%;
}
.player-video .button{
	background: #fff !important;
    color: var(--primary-color) !important;
    border: none;
    margin: 0;
    position: relative;
    display: inline-block;
    overflow: inherit;
}
.player-video .button .icon-play{
	top:3px;
}
.player-video .button:after,
.player-video .button:before{
	content: '';
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    border: 1px solid #fff;
    border-radius: 100px;
    top: 0;
    left: 0;
    animation: circlePulse 1s linear infinite;
}
.player-video .button:after{
	    animation-delay: 500ms;
}
@keyframes circlePulse{
	0% {
	    transform: scale(1);
	    opacity: 1;
	}
	50% {
	    transform: scale(1.4);
	    opacity: .75;
	}
	100% {
	    transform: scale(1.8);
	    opacity: 0;
	}
}

/*************** STYLE PRODUCT SMALL ITEM  ***************/
.product-small .product-small.box{
	border: 1px dashed var(--primary-color);
    border-radius: 5px;
}
.product-small .product-small.box:hover{
    box-shadow: 0 7px 16px 0 #817c7c26;
}
.product-small .product-small.box .add-to-cart-grid{
	display:none;
}
.product-small .product-small.box .name.product-title{
	    font-size: 16px;
    font-weight: 600;
}
.product-small .product-small.box .box-text{
	position: relative;
	overflow: hidden;
}
.product-small .product-small.box .box-text:after{
	content:"";
	position: absolute;
	left:0px;
	top:110%;
	width:100%;
	height: 100%;
	background: var(--primary-color);
	transition: all 0.2s;
}
.product-small .product-small.box .box-text .star-rating,
.product-small .product-small.box .box-text .price-wrapper,
.product-small .product-small.box .box-text .title-wrapper{
	position: relative;
	z-index:1;
}
.product-small .product-small.box:hover .box-text:after{
	top:0px;
}
.product-small .product-small.box:hover *{
	color:#FFF;
}
.star-rating span:before{
	color:#f8d002;
}
.product-small .product-small.box .star-rating{
	font-size: 18px;
}

/*************** STYLE SINGLE PRODUCT  ***************/

.header-product-single .title-header-product-single{
	text-transform: inherit;
}
.breadcrumbs-header-product-single{
	font-size:15px;
	padding-top:10px;
}
.single-product .header-product-single{
	text-align: center;
}
.product-main.product-main-template{
	padding-top:0px;
}
.breadcrumbs-header-product-single *{
	color:#FFF !important;
}
.woocommerce #review_form #respond p.form-submit input#submit, .woocommerce #reviews #comments ol.commentlist #respond p.form-submit input#submit, #comments a.btn-reviews-now{
	background:var(--primary-color);
}
.theme-flatsome .devvn-star:before{
	color:#f8d002;
}