/**
* Theme Name:     Hiroshi Lord
* Author:         Hiroshi Lord
* Template:       flatsome
* Text Domain:	   k-tech
* Description:    Theme Build by Hiroshi Lord
* Theme URI:      https://k-tech.net.vn/
* Author URI:     https://k-tech.net.vn/
* Version:        2025
* License:        2NRJM-B46WR-K6VQR-Y4T3D-QRWPX
* License URI:    https://k-tech.net.vn/
*/
.sec-demo-1{
	.col{
		.col-inner {
			height:100%;
			.row.large-columns-2 {
				height:100%;
				.gallery-col:nth-child(3),.gallery-col:nth-child(4){
					padding-bottom:0!important;
				}
				.box, .box-image, img{
					height:100%;
				}
			}
		}
	}
}
.product-small{
	.k-rating-sold{
		display:flex;
		padding:10px 0;
	}
	.review-count {
		display:none;
	}
}
.sec-category-home{
	.product-category {
		.col-inner{
			border-radius:8px;
			overflow:hidden;
			.box-text{
				padding: 10px;
				h5{
					text-transform:capitalize!important;
				}
			}
		}
	}
}
.demo-line{
	.section-title {
		position:relative;
		&::before{
			content: "";
			border-bottom: 1px solid #21216d;
			border-top: 1px solid #21216d;
			display: table;
			top: 42%;
			width: 30%;
			position: absolute;
			z-index: 9;
			right: 0;
			height: 5px;
		}
		&::after{
			content: "";
			border-bottom: 1px solid #21216d;
			border-top: 1px solid #201d6f;
			display: table;
			top: 42%;
			width: 30%;
			position: absolute;
			z-index: 9;
			height: 5px;
		}
	}
}
:root {
	--sticky-top: 96px;
} /* chiều cao header + khoảng cách */
body.admin-bar {
	--adminbar: 32px;
} /* bù thanh admin của WP */
/* DEFAULT NO BORDER AND LINE-THROUGH */
.section-title-center b {
	opacity: 0;
}
.section-title-normal {
	border-bottom: none;
}

.section-title-normal span {
	border-bottom: none;
}
a:where(:not(.wp-element-button)) {
	text-decoration: none !important;
}
.text-cap span {
	text-transform: capitalize !important;
}
.border-radius {
	border-radius: 8px !important;
	overflow: hidden;
}

.header {
	&.transparent {
		.header-wrapper {
			.header-nav-main {
				li a {
					color: #ffff !important;
					i:not(.icon-angle-down) {
						color: #fff !important;
					}
					&:hover{
						color:var(--fs-color-primary)!important;
					}
				}
				li.active a {
					color: var(--fs-color-primary) !important;
				}
			}
			.sub-menu li a {
				color: #333 !important ;
			}
		}

		@media screen and (max-width: 768px) {
			.header-main .nav > li > a > i:not(.icon-angle-down) {
				color: #fff !important;
			}
		}
	}
	.stuck {
		.cart-icon strong {
			border-color: #333 !important;
			color: #333 !important;
		}
		.cart-icon strong:after {
			border-color: #333 !important;
		}
		.header-search i:not(.icon-angle-down) {
			color: #333 !important;
		}
		.ux-search-submit i:not(.icon-angle-down) {
			color: #fff !important;
		}
	}

}
#comments {
	/* display: none !important; */
}
#button-contact-vr {
	@media screen and (max-width:768px){
		&{
			display: flex;
			align-items: center;
			justify-content: center;
			width: 100%;
			#gom-all-in-one{
				display: flex;
				align-items: center;
				justify-content: center;
			}
		}
	}
}
.sticky-add-to-cart-wrapper {
	@media screen and (max-width:768px){
		display:none;
	}
}
#contact-vr{
	.phone-vr-img-circle img{
		max-height: 35px;
		max-width: 35px;
	}
	/* 	.phone-vr-circle-fill, .phone-vr-img-circle {
	background-color: #a054ff;
} */
}
.blog-single {
	.entry-header-text {
		text-align: left !important;
		padding-left: 0 !important;
		padding-bottom: 0;
		.is-divider {
			display: none;
		}
		.entry-category a {
			background: #d4e8e9;
			padding: 4px 12px;
			border-radius: 4px;
			font-size: 12px;
			margin-bottom: 15px;
			color: #0c3133;
		}
	}
	.post-sidebar {
		position: -webkit-sticky;
		position: sticky;
		top: calc(var(--sticky-top) + var(--adminbar, 0px));
		align-self: flex-start; /* để không kéo dãn theo chiều cao hàng */
		height: fit-content; /* giữ đúng chiều cao nội dung */

		.widget.flatsome_recent_posts {
			.widget-title span {
				font-size: 1.4em;
				color: var(--fs-color-primary);
				font-weight: 700;
				text-transform: capitalize !important;
			}
			.is-divider {
				display: none;
			}

			.recent-blog-posts-li {
				.badge {
					width: 3.8em;

					.badge-inner {
						border-radius: 4px !important;
					}
				}
				a {
					font-size: 15px;
					transition: color 0.3s;
				}
			}
		}
		@media (max-width: 768px) {
			.sidebar-sticky {
				position: static;
			}
		}
	}
}

.wpcf7-spinner {
	display: none;
}
.wpcf7-form-control-wrap {
	input {
		height: 50px;
		box-shadow: none !important;
	}
	textarea {
		box-shadow: none !important;
	}
}
.wpcf7-submit {
	border-radius: 4px !important;
}
.absolute-footer {
	/* 	display: none !important; */
	background:#333
}
/* END */

.sec-cate-product {
	margin-top: 60px !important;

	.flickity-button {
		opacity: 1;
	}
	.flickity-prev-next-button {
		top: -120px;
		& svg .arrow{
			fill:#fff!important;
		}
		.flickity-button-icon{
			background:var(--fs-color-primary)!important;
			padding:8px!important;
			fill:#fff!important;
		}
		@media screen and (max-width:768px){
			top:-140px;
			width:40px!important;
		}
	}
	.flickity-prev-next-button.previous {
		left: 90% !important;
		@media screen and (max-width:768px){
			left:75%!important;
		}
	}

	.box-image {
		border-radius: 50%;
		background: #ebebeb;
		padding: 25px;
	}
	.box-text {
		.header-title {
			text-transform: capitalize !important;
		}
	}
}
/* Product */
.badge-container {
	margin-top: 10px !important;
	.badge-frame {
		margin-left: 10px;
		width: 3.8rem !important;

		.badge-inner {
			background-color: var(--fs-color-alert) !important;
			color: #fff !important;
			border: none !important;
		}
	}
}

.product-small {
	.box-image {
		padding: 10px;
	}
	.is-divider {
		max-width: 100% !important;
		height: 1px !important;
	}
}
.price-wrapper {
	.price span {
		color: var(--fs-color-alert) !important;
	}
	& del span bdi {
		color: gray !important;
	}
	del .woocommerce-Price-amount .woocommerce-Price-currencySymbol {
		color: gray !important;
	}
}
/* End */

/* Blog */
.post-item {
	.box-blog-post {
		.tag-label {
			background: #d4e8e9;
			padding: 4px 12px;
			border-radius: 4px;
			font-size: 12px;
			display: block;
			margin-bottom: 15px;
			color: #0c3133;
			width: -moz-fit-content;
			width: fit-content;
			text-transform: capitalize !important;
		}

		.is-divider {
			display: none;
		}
	}
}
/* End Blog */
.sec-blog {
	.post-item {
		.col-inner {
			border-radius: 15px !important;
			overflow: hidden;
			border: 1px solid #e5e5e5 !important;
		}

		.box-image {
			border-radius: 15px !important;
			overflow: hidden;
			box-shadow: 0 12px 18px -6px rgb(0 0 0 / 0.3);
			margin-bottom: 10px;
		}
		.box-text {
			padding: 20px;
		}

		.is-divider {
			opacity: 0;
		}
	}
}

.sec-gallery {
	.col.small-12 > .col-inner {
		border-radius: 15px !important;
		overflow: hidden;
	}
}

.sec-service-ft {
	border-bottom: 1px solid #fff !important;

	.row .col {
		padding-bottom: 0 !important;
	}
	.col-inner {
		.featured-box {
			align-items: center;
		}
	}
}

.sec-footer {
	.name-cty {
		font-size: 14px !important;
		text-transform: capitalize !important;
	}

	.custom-menu  {
		.ux-menu-link__link {
			justify-content: center !important;
		}
		.ux-menu-link__text{
/* 			color: #ffff !important;	 */
			text-align: center !important;
		}
	}
}


/* Page History */
.sec-history {
	.box {
		.is-divider {
			margin: 1em 0 !important;
		}
	}
	.custom-img-1 .box-image,
	.custom-img-2 .box-image {
		border-width: 6px;
		border-color: #fff;
		box-shadow: 0 2px 18px 0 rgb(0 0 0 / 0.3);

		@media screen and (max-width: 768px) {
			max-width: 80%;
		}
	}

	.custom-img-1 .box-image {
		transform: rotateX(0deg) rotateY(0deg) rotateZ(7deg);
	}

	.custom-img-2 .box-image {
		transform: rotateX(0deg) rotateY(0deg) rotateZ(354deg);
		z-index: 2;
	}

	.box-text {
		.box-title {
			padding: 80px 0px 50px !important;
		}
	}
}

.sec-brand {
	.custom-gallery {
		.gallery-col:first-child .box-image {
			transform: rotateX(0deg) rotateY(0deg) rotateZ(7deg);
		}
		.gallery-col:nth-child(2) .box-image {
			transform: rotateX(0deg) rotateY(0deg) rotateZ(354deg);
		}
		.gallery-col:last-child .box-image {
			transform: rotateX(0deg) rotateY(0deg) rotateZ(12deg);
		}

		@media screen and (max-width: 768px) {
			.gallery-col .box-image {
				max-width: 80% !important;
			}
		}
		.box-image {
			border-width: 6px;
			border-color: #fff;
			box-shadow: 0 2px 18px 0 rgb(0 0 0 / 0.3);
		}
	}
	.img-h-90 {
		img {
			height: 80px !important;
		}
	}
}

.sec-silder-paper {
	.custom-row > .col > .col-inner {
		border-radius: 16px;
		overflow: hidden;
	}
	.custom-slider {
		padding: 100px 50px !important;

		.col {
			padding-top: 15px !important;
			display: flex;
			align-items: center;

			@media screen and (max-width: 768px) {
				.col-inner {
					text-align: center !important;
				}
			}
		}

		.flickity-page-dots {
			transform: translateY(50px) !important;
		}

		@media screen and (max-width: 768px) {
			padding: 50px 20px !important;
		}
	}
}

.sec-mission {
	.img-1 {
		.img-inner {
			border-radius: 60px 0 60px 0;
			overflow: hidden;
			transform: translate(0px, 30px);
			z-index: 1;
		}
		@media screen and (max-width: 768px) {
			.img-inner {
				border-radius: 40px 0 40px 0;
			}
		}
	}
	.img-2 {
		.img-inner {
			border-radius: 60px 0 60px 0;
			overflow: hidden;
			transform: translate(-30px, 0px);
		}
	}

	.before-box::before {
		content: "";
		position: absolute;
		width: 136px;
		height: 136px;
		border-radius: 60px 0 60px 0;
		background-color: #88b0e373;
		top: -25%;
		left: 35%;
	}

	@media screen and (max-width: 768px) {
		.before-box::before {
			display: none;
		}
	}
}
.sec-staff {
	.box-image {
		border-radius: 30px !important;
		overflow: hidden;
	}
}

.sec-mission-rule {
	.custom-row-background {
		border-radius: 15px 0 15px 0;
		overflow: hidden;

		.background-text-0 {
			background-color: #223042;
			padding: 15px !important;
		}

		.background-text-1 {
			background-color: #334863;
			padding: 15px !important;
		}

		.background-text-2 {
			background-color: #334863;
			padding: 15px !important;
		}
		.background-text-3 {
			background-color: #446084;
			padding: 15px !important;
		}
		.background-text-4 {
			background-color: #5578a5;
			padding: 15px !important;
		}
	}
}
/* End Page His */

/* Shop  (sidebar)*/
#shop-sidebar,
.sidebar-sing-product .sidebar-wrapper{
	background-color: #f4f4f4;
	border-radius: 15px;
	overflow: hidden;
	padding: 15px;

	.yith-wcan-filter {
		background-color: #f4f4f4;

		.filter-title {
			border-bottom: 1px solid #ccc;
			padding-bottom: 10px;
		}
	}
	.widget_product_search {
		.flex-row {
			flex-direction: column !important;

			.flex-col {
				width: 100% !important;
				align-items: center !important;
				.search-field {
					width: 100% !important;
					height: 44px;
					border-radius: 4px;
					overflow: hidden;
				}
				.ux-search-submit {
					position: absolute;
					top: 0;
					right: 0;
					height: 44px;
					background-color: #fff !important;
					border: 1px solid #ddd !important;
					border-left: none !important;

					.icon-search {
						color: #333 !important;
					}
					&:hover {
						background-color: #fff !important;
						box-shadow: none !important;
					}
				}
			}
		}
	}

	.flatsome_recent_posts {
		.widget-title {
			display: none;
		}
		.is-divider {
			display: none;
		}
	}
}
/* End */

/* Page News */
.sec-news {
	.custom-blog-none-img {
		.flickity-button {
			margin-top: 0% !important;
		}
		.flickity-prev-next-button {
			opacity: 1;
		}
		.box-image {
			display: none;
		}
		.tag-label {
			margin: 0 auto 15px !important;
		}
	}
}

.sec-cat-blog {
	.custom-menu-view-all-cat-blog {
		a.ux-menu-link__link {
			justify-content: center !important;

			.ux-menu-link__text {
				position: relative;

				&::after {
					content: "\f061";
					font-family: "Font Awesome 5 Free";
					font-weight: 900;
					position: absolute;
					right: -30px;
					font-size: 18px;
				}
			}

			&:hover {
				.ux-menu-link__text {
					color: var(--fs-color-primary) !important;
					font-weight: 600;
				}
			}
		}
	}
}

.sec-video {
	.custom-col-scrool {
		max-height: 490px;
		overflow: auto;
		overflow-y: scroll;
		padding-bottom: 0px !important;
	}
}

/* Page Categories Blog */
.cat-archive-nav {
	.cat-archive-list {
		list-style-type: none;
		display: flex;
		justify-content: center;
		align-items: center;
		margin-bottom: 0 !important;
		li a {
			font-size: 16px;
			font-weight: 700;
			text-transform: uppercase;
			display: block;
			padding: 15px 25px;
			text-decoration: none;
			color: #0c3133;
			transition: all 0.3s ease;
		}
	}

	@media screen and (max-width: 768px) {
		& {
			display: none !important;
		}
	}
}

.featured-tag-split {
	.post-item {
		.col-inner {
			border-radius: 15px !important;
			overflow: hidden;
			border: 1px solid #e5e5e5 !important;
		}

		.blog-post-inner {
			.post-title {
				a {
					font-size: 1.3rem !important;
					font-weight: 600 !important;
					color: #333 !important;
					text-transform: capitalize !important;
				}
			}
			.from_the_blog_excerpt {
				opacity: 1 !important;
				text-transform: none !important;
				font-weight: 500;
				color: #777;
				font-size: 0.95rem;
				line-height: 1.5;
			}
		}
		.badge {
			display: none !important;
		}
	}
	.slider .flickity-prev-next-button {
		/* opacity: 1 !important; */

		.flickity-button-icon {
			background: #ccc !important;
			color: #333;
			border: none !important;
		}

		&:hover svg {
			fill: #333 !important;
		}
		&:hover .arrow {
			fill: #333 !important;
		}
	}
	.flickity-prev-next-button.previous {
		left: 4% !important;
	}
	.flickity-prev-next-button.next {
		right: 4% !important;
	}

	.wq-right-list {
		.wq-right-title {
			font-size: 14px;
			font-weight: 700;
			text-transform: capitalize !important;
			text-align: left !important;
		}
	}
}

.no-posts {
	text-align: center;
	color: #666;
	font-size: 1.1rem;
	padding: 40px;
}
.custom-post-list {
	.post-item {
		.col-inner {
			border-radius: 15px !important;
			overflow: hidden;
			border: 1px solid #e5e5e5 !important;

			.blog-post-inner {
				.post-title {
					a {
						font-size: 1.3rem !important;
						font-weight: 600 !important;
						color: #333 !important;
						text-transform: capitalize !important;
					}
				}
				.from_the_blog_excerpt {
					opacity: 1 !important;
					text-transform: none !important;
					font-weight: 500;
					color: #777;
					font-size: 0.95rem;
					line-height: 1.5;
				}
			}
			.badge {
				display: none !important;
			}

			.image-cover {
				padding-top: 62.5% !important;
			}
			.box-image {
				.image-cover {
					padding-top: 62.5% !important;
				}
				img {
					transform: scale(1);
					transition: transform var(--zoom-speed, 0.45s) ease;
					will-change: transform;
				}
			}
			.from_the_blog_comments {
				display: none !important;
			}
		}
		&:hover .box-image img {
			transform: scale(var(--zoom-scale, 1.06));
		}
	}
}

/* Single Blog */
.sec-new-blog-at-single-blog {
	.post-item {
		.col-inner {
			overflow: hidden;
			transition: transform 0.3s, box-shadow 0.3s;
			background-color: #f9f9f9;
			border-radius: 15px 15px;
			border: 1px solid #efefef;
		}
	}
}

/* Page Contact */
.et_pb_blurb_description {
	p {
		margin-bottom: 5px !important;
	}
}

.sec-faq {
	.custom-accordion {
		position: relative;
		.accordion-item:first-child::before {
			content: "";
			position: absolute;
			top: -50px;
			left: 0;
			right: 0;
			height: 50px;
			background-color: var(--fs-color-primary);
		}
		.accordion-item {
			margin-bottom: 30px;
			border: 1px solid #d9d9d9;
			.accordion-title {
				border-top: none;
				background-color: #f4f4f4;
				padding: 15px;
				&.active {
					background: none;
				}

				.toggle {
					left: 96%;
					top: 36%;
					background-color: var(--fs-color-alert);
					min-width: 16px;
					min-height: 16px;
					height: 16px;
					width: 16px;
					border-radius: 50%;
					opacity: 1;

					i {
						font-size: 11px;
						color: #fff;
					}

					@media screen and (max-width: 768px) {
						& {
							left: 94%;
							top: 40%;
						}
					}
				}
				&.active .toggle {
					background-color: var(--fs-color-success);
				}
			}
		}
	}
}

/* Page Single Product */

input.ux-quantity__button {
	background: rgb(51, 51, 51) !important;
	color: rgb(204, 204, 204) !important;
	font-weight: 700;
	align-items: center;
	justify-content: center;
	transition: 0.3s;
	outline: none;
	border: none !important;
	width: 35px !important;
	height: 100% !important;
	font-size: 18px !important;
	display: flex !important;
	margin: 0px !important;
	padding: 0px !important;
	border-radius: 0px !important;
}
.input-text.qty {
	border: 0 solid #333 !important;
	width: auto;
	max-width: 3em;
	height: 100%;
	background: rgb(34, 34, 34) !important;
	color: rgb(255, 255, 255) !important;
}

.button.single_add_to_cart_button,
.button.ux-buy-now-button {
	color: #ffffff !important;
	border-radius: 3px;
	background-color: #2d485d !important;
	padding-top: 5px !important;
	padding-bottom: 5px !important;
	text-transform: capitalize !important;
}
.ux-quantity.buttons_added {
	align-items: center;
	border: 1px solid rgb(221, 221, 221);
	border-radius: 4px;
	overflow: hidden;
	max-width: 140px;
	justify-content: space-between;
	display: flex !important;
}

.sec-content-header {
	.custom-icon-box-product {
		.col-inner {
			border: 1px solid rgb(49 54 56 / 0.2588235294);
			border-radius: 8px;

			.custom-icon-box {
				padding: 4px 8px;

				&:first-child {
					align-items: center;
					background-clip: padding-box, border-box;
					background-image: linear-gradient(90deg, #fff5c7, #fffced),
						linear-gradient(90deg, #ffe880, #fffcb0);
					background-origin: border-box;
					border: 1px solid #fff0;
					border-radius: 8px;
					display: flex;
					font-size: 15px;
					justify-content: space-between;
					margin-bottom: 12px;

					width: 100%;
					font-weight: 600;
				}
			}

			.custom-icon-box {
				.icon-box-img {
					margin-bottom: 0 !important;
				}
			}
		}
	}

}

.sec-content-product {
	.row-product-related {
		.product-small {
			.col-inner {
				background: #fff;
				border: 1px solid #ddd;
				border-radius: 8px;
				text-align: center;
				transition: transform 0.3s ease, box-shadow 0.3s ease;
				height: 100%;
				display: flex;
				flex-direction: column;
				overflow: hidden;
			}
		}
	}
	.woocommerce-tabs {
		box-shadow: 6px 6px 18px 0 rgb(0 0 0 / 0.3);
		border-radius: 8px;
		overflow: hidden;
	}
}

.wb-custom-tabs {
	.tab-content {
		table {
			border-collapse: collapse;
			border-spacing: 0;
			width: 100% !important;
			border-radius: 8px;
			overflow: hidden;
			tbody {
				border: 1px solid #ebebeb;
			}
			td {
				width: auto !important;
				padding: 10px 6px;
				border: 1px solid #dee2e6;
				font-size: 14px;
			}
		}
		.table-striped tbody tr:nth-of-type(odd) {
			background-color: rgb(0 0 0 / 0.05);
		}
	}
}

.tab-panels {
	.woocommerce-Tabs-panel--reviews {
		#reviews {
			.large-7,
			.large-5 {
				max-width: 100% !important;
				flex-basis: 100% !important;
			}
			.large-7 {
				order: 1;
			}
		}
		.cr-upload-images-status {
			font-size: 0;

			.my-upload-note {
				font-size: 16px;
			}
		}
		.cr-upload-images-preview {
			.cr-upload-images-delete {
				min-height: 16px;
				min-width: 16px;
				margin-right: 6px !important ;
				margin-top: 6px !important ;
			}
		}
	}
}
.related-products-wrapper{
	.product-small{
		.box-text-products{
			text-align:left;
			padding:10px;
		}
	}
}

/* Thông tin sản phẩm at shop */
.text-wrapper {
	margin: 0 auto;
	text-align: justify;

	.description-content {
		overflow: hidden;
		transition: max-height 0.4s ease;
		position: relative;

		&.collapsed {
			max-height: 300px; /* chỉ hiện tầm 3-4 dòng đầu */

			&::after {
				content: "";
				position: absolute;
				bottom: 0;
				left: 0;
				right: 0;
				height: 60px; /* chiều cao phần mờ */
				background: linear-gradient(to top, white 60%, transparent);
				pointer-events: none;
			}
		}
	}
	.toggle-btn {
		margin-top: 12px;
		background: var(--fs-color-primary); /* màu chủ đạo */
		color: #fff;
		border: none;
		border-radius: 6px;
		cursor: pointer;
		font-weight: 600;

		&:hover {
			background: #2f4a65;
		}
	}
}
.acf-info-video{
	padding: 0px;
	.acf-info-video__item {
		background-color: rgba(0, 0, 0, 0.3);
		.video-button-wrapper {
			background-repeat: no-repeat;
			background-size: cover;

			background-position: center;
			display: flex;
			justify-content: center;
			align-items: center;
			.button.icon {
				margin: 30px;
			}
		}
	}
}


