/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

@import url('https://fonts.googleapis.com/css2?family=Barlow:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
:root{
	--primary-color: #607e39;
	--secondary-color: #e09717;
}
*{
	box-sizing: border-box;
}
body{
	font-family: "Barlow", sans-serif;
}
a{
	transition: all .25s ease;
}
#logo img {
	padding: 10px;
	background: #fff;
	z-index: 999;
	position: relative;
	border-radius: 8px;
}
.ss-pd {
	padding: 60px 0 !important;
}
.header-bottom{
	position: relative;
}
.header-bottom:after {
	content: '';
	position: absolute;
	top: -22px;
	left: 0;
	width: 100%;
	height: 75px;
	z-index: -1;
	background-image: url(/wp-content/uploads/2025/10/bg_header_top.webp);
	background-size: contain;
}
.header-bottom:before {
	content: '';
	position: absolute;
	bottom: -25px;
	left: 0;
	width: 100%;
	height: 75px;
	z-index: -1;
	background-image: url(/wp-content/uploads/2025/10/bg_header_bottom.webp);
	background-size: contain;
}
@keyframes shake-top {
	0%,
	100% {
		transform: rotate(0deg);
		transform-origin: 50% 0;
	}
	10% {
		transform: rotate(2deg);
	}
	20%,
	40%,
	60% {
		transform: rotate(-4deg);
	}
	30%,
	50%,
	70% {
		transform: rotate(4deg);
	}
	80% {
		transform: rotate(-2deg);
	}
	90% {
		transform: rotate(2deg);
	}
}

.btn-booknow{
	color: #fff !important;
	background-color: var(--secondary-color);
	padding: 8px 16px !important;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	border-radius: 6px;
	position: relative;
	animation: shake-top 1.5s cubic-bezier(0.455, 0.030, 0.515, 0.955) infinite both;
}
.btn-booknow:after {
	content: '';
	position: absolute;
	width: 2px;
	height: 27px;
	background-color: var(--secondary-color);
	top: 0;
	transform: translateY(-100%);
	border-radius: 6px;
}
.btn-booknow:hover{
	animation: none;
}
.frame-title{
	position: relative;
	.title_module{
		position: relative;
		font-size: 40px;
		font-weight: 700;
		color: #607e3a;
		line-height: 40px;
	}
	.sub_title {
		position: absolute;
		justify-content: center;
		align-items: center;
		display: flex;
		position: absolute;
		width: 100%;
		top: 50%;
		left: 50%;
		text-align: center;
		transform: translate(-50%, -50%);
		transition: all 0.3s 
		ease-in-out;
		font-size: 70px;
		color: #607e3a;
		opacity: 0.1;
		font-weight: 700;
	}
	img{
		margin-bottom: 6px;
	}
}
section.dark .frame-title {
	.title_module, .sub_title {
		color: #fff;
	}
	img {
		filter: brightness(0) invert(1);
	}
}
.text-about-us{
	h3{
		font-size: 40px;
		margin-bottom: 10px;
		color: var(--primary-color);
		font-weight: 400;
	}
	h2{
		font-size: 40px;
	}
	.desc-experience{
		padding: 25px 30px;
		background: #FCF4E6;
		margin: 25px 0;
		border-radius: 15px;
		display: block;
	}
}
.icon-box-img img, .icon-box-img svg{
	padding-top: 0;
}
.iconbox-exp{
	display: flex;
	align-items: center;
	justify-content: center;
	.icon{
		padding: 6px;
		border: 1px solid var(--primary-color);
		border-radius: 50%;
	}
	h4{
		font-weight: 500;
		font-size: 16px;
	}
}
.image-absolute-exp {
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translate(0%, 50%);
}
.quick-phone-exp {
	i {
		background-color: var(--primary-color);
		border: 3px solid #fff;
		font-size: 26px;
		width: 60px;
		height: 60px;
		display: inline-flex;
		justify-content: center;
		border-radius: 50%;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	span{
		font-weight: 600;
	}
	a {
		font-weight: 700;
		font-size: 26px;
	}
	a:hover{
		color: var(--primary-color);
	}
}
.ss-services{
	overflow-y: visible;
	.item-service{
		h3{
			font-size: 30px;
			margin-bottom: 12px;
		}
		.frame-info-service{
			margin-top: 12px;
			display: flex;
			align-items: center;
			gap: 24px;
			justify-content: center;
			div{
				display: flex;
				align-items: center;
				gap: 6px;
			}
		}
	}
}
.ss-services:after {
	content: '';
	position: absolute;
	top: -25px;
	left: 0;
	width: 100%;
	height: 45px;
	background-image: url(/wp-content/uploads/2025/10/bg_header_top.webp);
	z-index: 11111;
}
.ss-whychoose{
	h3{
		color: var(--primary-color);
	}
	.frame-contact-whychoose{
		h4{
			font-size: 16px;
		}
		a{
			font-size: 50px;
			font-weight: bold;
			color: var(--secondary-color);
			position: relative;
			display: block;
			line-height: 1;
		}
		a:after{
			content: '';
			position: absolute;
			width: 35%;
			height: 1px;
			background-color: var(--primary-color);
			left: 0;
			top: 50%;
		}
		a:before{
			content: '';
			position: absolute;
			width: 35%;
			height: 1px;
			background-color: var(--primary-color);
			right: 0;
			top: 50%;
		}
		a:hover{
			color: var(--primary-color);
		}
	}
}
.ss-cat-outstanding{
	.item-box{
		align-items: center;
		padding: 10px;
		border: 2px solid #C6C6C6;
		border-radius: 10px;
		position: relative;
		padding-right: 55px;
		transition: all .25s ease;
		h3{
			margin-bottom: 0;
			font-size: 18px;
		}
		.icon-box-text{
			border-left: 1px solid #ddd;
			margin-left: 15px;
		}
		.icon-right {
			position: absolute;
			top: 50%;
			transform: translateY(-50%);
			right: 20px;
			width: 40px;
			height: 40px;
			display: flex;
			align-items: center;
			justify-content: center;
			border-radius: 50%;
			transition: all .25s ease;
			i{
				color: var(--secondary-color);
				transition: all .25s ease;
			}
		}
	}
	.item-box:hover{
		background-color: var(--primary-color);
		border-color: var(--primary-color);
		color: #fff;
		h3{
			color: #fff;
		}
		img{
			filter: brightness(0) invert(1);
		}
		.icon-right{
			background: linear-gradient(90deg, #607e3a 0%, #fff 100%);
			i{
				color: #fff;
			}
		}
	}
}
.flickity-slider>.row:not(.is-selected){
	opacity: 1;
}
.product_getcontent.product-review-content{
	.show-more{
		display: none;
	}
}
.product-outstanding-tab{
	li a{
		border: 1px solid #fff;
		font-weight: 500;
		padding: 0px 16px;
		margin-right: 10px;
	}
	li.active a{
		background-color: #fff !important;
		font-weight: 500;
		color: var(--primary-color) !important;
	}
	.product-small{
		padding: 10px;
		background-color: #fff;
		.box-image{
			padding: 20px;
		}
		.product-title a{
			color: #000;
			font-size: 18px;
			display: -webkit-box;
			-webkit-box-orient: vertical;
			-webkit-line-clamp: 2;
			overflow: hidden;
			font-weight: 500;
			line-height: 1.4;
		}
		.price bdi{
			font-size: 24px;
			font-weight: 700;
			color: var(--primary-color);
			margin: 12px 0;
			display: block;
		}
	}
	.tab-panels .entry-content{
		border-radius: 16px;
		overflow: hidden;
	}
}
.slider-nav-push.slider-nav-reveal .flickity-prev-next-button svg{
	margin-top: 0;
}
.ss-order-camping{
	h3{
		font-size: 40px;
		font-weight: 600;
	}
	.frame-info-order-camping{
		display: flex;
		align-items: center;
		gap: 24px;
		justify-content: center;
		div{
			display: flex;
			align-items: center;
			justify-content: center;
			gap: 6px;
			font-size: 16px;
			font-weight: 600;
		}
	}
	.box-image{
		border-radius: 8px;
		overflow: hidden;
	}
}
.flickity-page-dots {
	width: max-content;
	left: 50%;
	transform: translate(-50%, -50%);
	background: #607e39a6;
	padding: 8px 10px !important;
	display: flex;
	border-radius: 8px;
	bottom: -20px !important;
	.dot{
		width: 25px !important;
		height: 3px !important;
		border-radius: 50px !important;
	}
}
.ss-activity{
	.column-image{
		.col-inner{
			box-shadow: 0px 4px 17px 0px rgba(0, 0, 0, 0.1);
			padding: 10px !important;
			border-radius: 14px;
			img{
				border-radius: 7px;
			}
		}
	}
	.column-text{
		.col-inner {
			box-shadow: 0px 4px 17px 0px rgba(0, 0, 0, 0.1);
			padding: 10px !important;
			border-radius: 14px;
			background: #fbf6ee;
			border: 10px solid #fff;
			h3{
				margin-bottom: 0;
				margin-top: 16px;
				color: var(--secondary-color);
			}
			span{
				font-size: 14px;
				color: var(--secondary-color);

			}
		}
	}
}
.ss-album-activity{
	.box-text{
		display: none;
	}
}
.ss-blogpost{
	.post-item{
		padding-bottom: 0;
	}
	.post-item .col-inner{
		background-color: #fbf6ee;
		border-radius: 8px;
		overflow: hidden;	
		.box-text{
			padding: 15px;
			.is-divider{
				display: none;
			}
			.from_the_blog_excerpt{
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 3;
				overflow: hidden;
			}
			.post-title a{
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 2;
				overflow: hidden;
			}
		}
	}
}
.ss-questiona:after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 440px;
	background-image: url(/wp-content/uploads/2025/10/bg_faq.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}
.ss-questiona{
	.item-question, p{
		color: #000;
	}
	.accordion-title.active, .accordion-title:hover{
		color: unset;
	}
}
.ss-partner{
	.box-text{
		display: none;
	}
	.gallery-col{
		padding-bottom: 0;
	}
}
.ss-footer{
	.follow-icon-edit{
		margin-top: 30px;
		a{
			width: 40px;
			height: 40px;
			background-color: var(--primary-color);
			border-radius: 50%;
			display: inline-flex;
			align-items: center;
			justify-content: center;
		}
		a:hover{
			background-color: var(--secondary-color);
		}
	}
	.icon-phone-footer{
		display: flex;
		align-items: center;
		gap: 6px;
		margin: 12px 0;
		font-weight: 700;
		font-size: 18px;
		i{
			width: 36px;
			height: 36px;
			background-color: var(--primary-color);
			display: flex;
			align-items: center;
			justify-content: center;
			border-radius: 50px;
		}
		a:hover{
			color: var(--primary-color);
		}
	}
	.icon-box{
		h4{
			margin-bottom: 0;
		}
	}
	form{
		.form-flat-v2{
			position: relative;
		}
		margin-top: 15px;
		input{
			background-color: #fff;
			height: 50px;
			border-radius: 8px;
			margin-bottom: 0;
		}
		.wpcf7-submit{
			height: 40px;
			position: absolute;
			top: 50%;
			right: 5px;
			transform: translateY(-50%);
			margin: 0;
			background-color: var(--secondary-color) !important;
		}
		.wpcf7-not-valid-tip{
			display: none;
		}
	}
	.ul-footer{
		li{
			list-style-type: none;
			margin-left: 0;
		}
		li a:hover{
			color: var(--secondary-color);
		}
	}
}
.wpcf7-spinner, .absolute-footer{
	display: none;
}
.back-to-top {
	height: 74px;
	width: 74px;
	background-color: rgba(255, 167, 0, 0.3) !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	color: #fff !important;
	position: relative;
	border: 0 !important;
	transition: all .25s ease;
}
.back-to-top:after {
	content: "";
	position: absolute;
	border-radius: 100%;
	background-color: #FFA700;
	opacity: .4;
	width: 55px;
	height: 55px;
	transition: all .25s ease;
}
.back-to-top:before {
	content: "";
	position: absolute;
	border-radius: 100%;
	background-color: #FFA700;
	opacity: .7;
	width: 40px;
	height: 40px;
	transition: all .25s ease;
}
.back-to-top:hover{
	background-color: #0001 !important;
}
.back-to-top:hover:after{
	background-color: #0006 !important;
}
.back-to-top:hover:before{
	background-color: #000 !important;
}
.ss-discover{
	h1{
		color: var(--primary-color);
	}
	.frame-process-discover{
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 36px;
		margin-top: 30px;
		div{
			display: flex;
			align-items: center;
			justify-content: space-between;
			position: relative;
			padding-bottom: 15px;
			h4,h5{
				margin-bottom: 0;
			}
			h4{
				font-size: 16px;
			}
			h5{
				text-align: right;
			}
		}
		.process-full{
			position: absolute;
			bottom: 0;
			left: 0;
			width: 100%;
			height: 10px;
			border-radius: 10px;
			background-color: #f0ead2;
			overflow: hidden;
			.process-real{
				position: absolute;
				bottom: 0;
				height: 10px;
				border-radius: 10px;
				background-color: var(--primary-color);
			}
		}
	}
}
.ss-cometous{
	.icon-box{
		align-items: center;
		margin-bottom: 15px;
	}
	.icon-box-text{
		h4{
			margin-bottom: 0;
			color: var(--primary-color);
		}
	}
}
.frame-title-aboutus{
	h3{
		color: var(--secondary-color);
		font-weight: 20;
		font-weight: 600;
	}
	h2{
		font-size: 40px;
		color: var(--primary-color);
	}
}
.ss-cta-aboutus{
	h2{
		font-size: 45px;
		margin: 15px 0;
	}
	.icon-box{
		align-items: center;
		h3{
			color: #ffe7bd;
		}
	}
}
.sidebar-inner {
	border: 2px solid #E9E9E9;
	padding: 15px;
	border-radius: 10px;
	.widget{
		margin-bottom: 15px;
		border-bottom: 1px solid #E6E6E6;
		padding-bottom: 15px;
	}
	.widget:last-child{
		border-bottom: 0;
		margin-bottom: 0;
	}
	.widget>ul>li+li, ul.menu>li+li{
		border: 0;
	}
	.widget ul li a{
		padding: 4px 0;
	}
}
.widget .is-divider{
	display: none;
}
span.widget-title{
	display: block;
	font-size: 18px;
	margin-bottom: 12px;
	color: var(--secondary-color);
	font-weight: 500 !important;
}
.shop-container{
	.price bdi{
		font-size: 20px;
		color: var(--primary-color);
	}
	.product-small.box{
		border: 1px solid #D9D9D9;
		border-radius: 10px;
		.box-image{
			padding: 20px;
		}
	}
}
.nav-pagination{
	li a{
		border-radius: 4px !important;
		border-width: 1px;
		border-color: #d9d9d9;
	}
	li .current{
		border-radius: 4px !important;
	}
}
h1.product-title.product_title.entry-title {
	font-weight: 600;
	color: var(--primary-color);
}
.product-info .price bdi{
	font-size: 40px;
	color: #d90000b3;
}
.product-short-description {
	border: 1px dashed rgba(96, 126, 58, 0.35);
	position: relative;
	border-radius: 10px;
	box-shadow: 5px 4px 0px 0px rgba(96, 126, 58, 0.41);
	background-color: #FFFDF4;
	padding: 15px;
	display: block;
	margin-bottom: 15px;
	h3{
		color: var(--secondary-color);
		font-size: 18px;
	}
	ul{
		margin-bottom: 0;
	}
}
.wc-block-cart__submit-container, button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained {
	background: var(--secondary-color);
	border-radius: 4px;
	font-weight: 600;
	transition: all .25s ease;
	margin: 0;
	a, div{
		color: #fff;
	}
}
.wc-block-cart__submit-container:hover, button.wc-block-components-button.wp-element-button.wc-block-components-checkout-place-order-button.contained:hover{
	background: var(--primary-color);
}
.wc-block-checkout__sidebar .wc-block-components-product-name{
	font-size: 18px;
}
.wc-block-components-product-metadata__description {
	display: none;
}
.ss-quytrinh{
	h1{
		font-size: 40px;
		color: var(--primary-color);
		margin-bottom: 12px;
	}
	p{
		font-size: 24px;
	}
	.frame-icon-qt{
		.col-inner{
			text-align: center;
			position: relative;
			border: 2px dashed rgba(96, 126, 58, 0.35);
			box-shadow: 5px 4px 0px 0px rgba(96, 126, 58, 0.41);
			p{
				font-size: 16px;
				color: var(--primary-color);
				font-weight: 500;
			}
		}
	}
}
.blog-archive{
	.from_the_blog_excerpt{
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 3;
		overflow: hidden;
	}
}
.widget{
	box-shadow: 0px 1px 21px 0px rgba(0, 0, 0, 0.11);
	padding: 15px;
	border-radius: 10px;
	display: block;
	margin-bottom: 30px;
	.recent-blog-posts{
		align-items: center !important;
	}
	.badge.post-date {
		width: 55px;
		div{
			background-size: cover;
		}
	}
	.recent-blog-posts a{
		display: -webkit-box;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2;
		overflow: hidden;
		font-size: 14px;
		margin-bottom: 0;
		line-height: 1.3;
	}
}
img{
		max-width: 100%;
}	
.col-inner:last-child{
		padding-bottom: 0;
}
p{
		margin: 0;
}
#logo img {
    padding: 0 !important;
	background: rgba(0, 0, 0, .1);
}
.is-divider.medium {
    display: none;
}
h1.entry-title {
    color: #fff;
}
h6.uppercase.portfolio-box-title {
    color: #fff;
}
ul.nav.nav-left.nav-center.nav-line-grow.nav-uppercase.filter-nav {
    display: none;
}
.frame-title {
    .title_module {
        position: relative;
        font-size: 40px;
        font-weight: 700;
        color: #607e3a;
        line-height: 40px;
    }
}
.col.post-item .col-inner {
    background-color: #fbf6ee;
    border-radius: 8px;
    overflow: hidden;
}
.col.post-item .col-inner .box-text.text-left {
    padding: 15px;
}
.box-blog-post .is-divider{
	display:none;
}
.widget{
	background: #faf5ed;
}
span.widget-title {
    color: #607e3a;
}
.entry-content.single-page ul, li, p {
    color: #fff;
}
.entry-meta.uppercase.is-xsmall {
    color: #fff;
}
time.entry-date.published.updated {
    color: #fff;
}
a.url.fn.n {
    color: #fff;
}
.ss-blogpost .from_the_blog_excerpt 
{color:#000}
.blog-archive .from_the_blog_excerpt{
	color:#000;
}
h6.entry-category.is-xsmall a {
    color: #fff;
}
figcaption {
    color: #fff;
}



@media(max-width: 998px){
	.ss-cta-aboutus {
		h2 {
			font-size: 35px;
		}
	}
	.ss-cometous {
		.icon-box {
			margin-bottom: 30px;
		}
	}
	.frame-title-aboutus {
		h2 {
			font-size: 30px;
		}
	}
	.ss-order-camping {
		h3 {
			font-size: 30px;
		}
	}
	.ss-pd {
		padding: 40px 0 !important;
	}
	.ss-order-camping {
		.frame-info-order-camping {
			display: grid;
			grid-template-columns: repeat(2, 1fr);
			gap: 16px;
			width: 60%;
			margin-top: 15px;
		}
	}
	.ss-whychoose {
		& .frame-contact-whychoose {
			a:after {
				width: 28%;
			}
		}
	}
	.ss-whychoose {
		& .frame-contact-whychoose {
			a:before {
				width: 28%;
			}
		}
	}
	.ss-whychoose {
		& .frame-contact-whychoose {
			a {
				font-size: 40px;
			}
		}
	}
	.ss-whychoose {
		h3 {
			font-size: 18px;
			line-height: 1.4;
		}
	}
	.ss-services {
		& .item-service {
			h3 {
				font-size: 26px;
			}
		}
	}
	.image-absolute-exp {
		transform: translate(0%, 32%);
	}
	.text-about-us h2, .frame-title .title_module, .text-about-us h3{
		font-size: 32px;
	}
	.frame-title {
		.sub_title {
			font-size: 50px;
		}
	}
	.header-main li.html.custom{
		display: block;
	}
	.ss-footer{
		h3{
			font-size: 18px;
		}
	}
}
@media(max-width: 580px){
	.ss-cta-aboutus {
		h2 {
			font-size: 26px;
		}
	}
	.ss-discover {
		.frame-process-discover {
			grid-template-columns: 1fr;
			gap: 16px;
		}
	}
	.product-outstanding-tab {
		& .product-small {
			.product-title a {
				font-size: 16px;
			}
		}
	}
	.product-outstanding-tab {
		& .product-small {
			.price bdi {
				font-size: 18px;
			}
		}
	}
	.ss-order-camping {
		h3 {
			font-size: 22px;
		}
	}
	.ss-order-camping {
		.frame-info-order-camping {
			width: 100%;
		}
	}
	.product-outstanding-tab {
		li a {
			margin-top: 15px;
		}
	}
	.ss-whychoose {
		& .frame-contact-whychoose {
			a:before {
				width: 20%;
			}
		}
	}
	.ss-whychoose {
		& .frame-contact-whychoose {
			a:after {
				width: 20%;
			}
		}
	}
	.ss-whychoose {
		& .frame-contact-whychoose {
			a {
				font-size: 30px;
			}
		}
	}
	.iconbox-exp {
		flex-direction: column;
		.icon-box-text{
			padding: 0 !important;
		}
	}
	.text-about-us h2, .frame-title .title_module, .text-about-us h3 {
		font-size: 30px;
	}
	.frame-title {
		.sub_title {
			font-size: 40px;
		}
	}
	.header-main li.html.custom{
		display: none;
	}
	.frame-title-aboutus {
		h2 {
			font-size: 28px;
		}
	}
}
@media (max-width: 390px) {
	.ss-cta-aboutus {
		h2 {
			font-size: 22px;
		}
	}
	.frame-title-aboutus {
		h2 {
			font-size: 24px;
		}
	}
	.frame-title {
		.sub_title {
			font-size: 35px;
		}
	}
	.ss-order-camping {
		& .frame-info-order-camping {
			div {
				font-size: 14px;
			}
		}
	}
	.ss-order-camping {
		h3 {
			font-size: 16px;
		}
	}
	.ss-cat-outstanding {
		& .item-box {
			.icon-right {
				right: 10px;
			}
		}
	}
	.ss-cat-outstanding {
		& .item-box {
			h3 {
				font-size: 16px;
			}
			p{
				font-size: 14px;
			}
		}
	}
	.ss-cat-outstanding {
		.item-box {
			.icon-box-img{
				width: 40px !important;
			}
		}
	}
	.ss-whychoose {
		& .frame-contact-whychoose {
			a {
				font-size: 26px;
			}
		}
	}
	.ss-services {
		& .item-service {
			h3 {
				font-size: 24px;
			}
		}
	}
	.text-about-us h2, .frame-title .title_module, .text-about-us h3 {
		font-size: 26px;
	}
}