/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/?utm_source=wp-themes&utm_campaign=theme-uri&utm_medium=wp-dash
Template: hello-elementor
Author: Elementor Team
Author URI: https://elementor.com/?utm_source=wp-themes&utm_campaign=author-uri&utm_medium=wp-dash
Description: Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
Tags: accessibility-ready,flexible-header,custom-colors,custom-menu,custom-logo,featured-images,rtl-language-support,threaded-comments,translation-ready
Version: 3.4.6.1769226037
Updated: 2026-01-24 03:40:37

*/

/*=============================================================================
 									CSS HOME 
=============================================================================*/


/*=============================================================================
 						CSS CÂU CHUYỆN VÙNG TRỒNG
=============================================================================*/
.hn-hero {
	position: relative;
}

.hn-story-overlay {
    font-family: 'Questrial';
    position: absolute;
    left: 50%;
    /* 70px -> 3.6458vw */
    bottom: 4.6458vw;
    transform: translateX(-50%);
    width: 60.67708vw;
    /* 18px -> 0.9375vw | 40px -> 2.0833vw */
    padding: 0.9375vw 2.0833vw;
    /* 16px -> 0.8333vw */
    border-radius: 0.8333vw;
    background: rgba(0,0,0,.15);
    /* 10px -> 0.5208vw */
    backdrop-filter: blur(10px);
    /* 1px -> 0.0521vw */
    border: 0.0521vw solid rgba(255,255,255,.25);
    text-align: center;
    color: #fff;
    min-height: 7.81250vw;
    align-content: center;
}

#hnStoryTitle {
    /* 7px -> 0.3646vw */
    margin: 0 0 0.3646vw;
    /* 24px -> 1.25vw */
    font-size: 1.25vw;
    font-weight: 600;
    text-transform: uppercase;
    /* 1px -> 0.0521vw */
    letter-spacing: 0.0521vw;
}

#hnStoryText {
    margin: 0;
    /* 16px -> 0.8333vw */
    font-size: 0.8333vw;
    line-height: 1.4em;
    opacity: .95;
}

/* timeline */
.hn-timeline {
    position: absolute;
    left: 50%;
    bottom: 0;
/*     transform: translateX(-50%); */
    width: 100%;
}

.hn-line {
    height: 0.31250vw;
    background: #FFFFFF66;
    display: flex;
    justify-content: center;
}

.hn-box {
    gap: 6.66667vw;
    display: flex;
    justify-content: center;
}

.hn-point {
	position: relative;
	cursor: pointer;
}

.hn-dot {
    --size-dot: 0.31250vw;
    width: var(--size-dot) !important;
    height: var(--size-dot) !important;
    background: #fff;
    border-radius: 50%;
    display: block;
}

.hn-star {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, calc(-100%));
    color: #fff;
    opacity: .35;
}

.hn-point.active .hn-star{
	color: #FD8700;
	opacity: 1;
}
.hn-point.active .hn-dot {
	background: #FD8700;
	opacity: 1;
}
@media (max-width: 1280px) {
	.hn-story-overlay {
    width: min(1150px, calc(100vw - 64px));
    padding: 14px 32px;
    bottom: 72px;
}
	#hnStoryTitle {
    font-size: 18px;
}
	#hnStoryText {
    font-size: 15px;
}
}
@media (max-width: 992px) {
	.hn-story-overlay {
		width: min(1150px, calc(100vw - 48px));
		padding: 14px 24px;
	}
	#hnStoryTitle {
    font-size: 16px;
}
		#hnStoryText {
    font-size: 14px;
}
}
@media (max-width: 768px) {
	.hn-box {
	width: 50%;
		gap: 11vw;
	}

	.hn-story-overlay {
    max-width: calc(100vw - 40px);
}
	#hnStoryText {
    font-size: 14px;
}
	#hnStoryTitle {
    margin: 0 0 7px;
    font-size: 18px;
}
	.hn-line {
    height: 4px;
}
	.hn-dot {
    --size-dot: 4px;
}
	.hn-star svg {
    width: 20px !important;
    height: 20px !important;
}
}
@media (max-width: 576px) {

	.hn-story-overlay {
    max-width: calc(100vw - 24px);
    padding: 16px 12px !important;
    width: 100%;
}
	
}
















/* Quy trình sản xuất */







a.js-open-popup {
    background: var(--bg-color);
    /* 7px -> 0.3646vw | 24px -> 1.25vw */
    padding: 0.35em 1.2em;
    display: inline-block;
    /* 37px -> 1.9271vw */
    border-radius: 100000px;
    transition: background .3s ease;
}
a.js-open-popup:hover {
	background: var(--bg-hover-color);
}

/* Popup - công thức nấu ăn */
img[data-hn-popup-thumb].popup-thumb {
    height: 100%;
    object-fit: cover;
}


.hn__nguyen-lieu:not(:has(li)) {
    display: none;
}
.hn__nguyen-lieu {
    padding: 24px 16px 24px 24px;
    border-radius: 12px;
    box-shadow: 0px 3px 8px rgba(0,0,0,0.15);
    font-family: 'Questrial';
    height: 100% !important;
}
.hn__nguyen-lieu h3 {
    margin: 0;
    font-size: 18px;
    color: #FD8700;
    padding-bottom: 7px;
    border-bottom: 1px solid #D4D4D4;
    margin-bottom: 14px;
}
.hn__nguyen-lieu > ul {
    padding: 0px;
	list-style: none;
	font-size: 16px;
}
.hn__nguyen-lieu > ul > li::before {
    content: "- ";
}


.hn__quy-trinh:not(:has(.hn-step)) {
	display: none;
}
.hn__quy-trinh {
    padding: 24px 0px 24px 12px;
	font-family: 'Questrial';
	border-radius: 12px 0px 0px 12px;
	box-shadow: 0px 3px 8px rgba(0, 0, 0, 0.15);
}
.hn__quy-trinh h3 {
    font-weight: 400;
    margin: 0;
    font-size: 18px;
    color: #FD8700;
    padding-bottom: 7px;
    border-bottom: 1px solid #D4D4D4;
    margin-bottom: 14px;
    margin-right: 110px;
}

div[data-hn-popup-quy-trinh] {
    display: flex;
	overflow-x: auto;
}
div[data-hn-popup-quy-trinh]::-webkit-scrollbar {
    height: 6px;
    border-radius: 5px;
	background-color: #ffffff
}
div[data-hn-popup-quy-trinh]::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: #00000000;
}
div[data-hn-popup-quy-trinh]::-webkit-scrollbar-thumb {
    height: 100%;
	background: #e3e3e3;
	border-radius: 10px;
}
div[data-hn-popup-quy-trinh] .hn-step {
    display: flex;
    min-width: 330px;
	margin-right: 28px;
	padding-bottom: 12px;
}
div[data-hn-popup-quy-trinh] .hn-step__left {
    width: 30%;
    position: relative;
    align-self: center;
    display: flex;
}
div[data-hn-popup-quy-trinh] .hn-step__right {
	width: 70%;
	padding-left: 16px;
}
div[data-hn-popup-quy-trinh] img.hn-step__img {
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 10px;
}
.hn-step__number {
    position: absolute;
    bottom: 0;
    left: 50%;
    --size: 30px;
    width: var(--size);
    height: var(--size);
    background: #fb8700;
    align-content: center;
    text-align: center;
    border-radius: 50%;
    color: #fff;
    transform: translate(-50%, 50%);
}
.hn-step__desc {
    line-height: 1.4em;
    margin-top: 6px;
}


/* Các công thức khác */
div[data-hn-popup-related] {
    display: flex;
    overflow-x: auto;
}
a.hn-related__item.js-open-popup {
    display: inline-flex;
    flex-direction: column;
    min-width: 200px;
    margin-right: 28px;
    align-items: center;
    padding-bottom: 18px;
}
a.hn-related__item.js-open-popup > img {
    width: 120px;
    aspect-ratio: 1;
    object-fit: cover;
    border-radius: 50%;
    border: 10px solid #F5F5F5;
}
a.hn-related__item.js-open-popup  span.hn-related__title {
    color: #000;
    font-family: 'Questrial';
    font-size: 18px;
    display: block;
    margin-top: 32px;
    line-height: 1.3em;
    text-align: center;
}
div[data-hn-popup-related]::-webkit-scrollbar {
    height: 6px;
    border-radius: 5px;
	background-color: #ffffff
}
div[data-hn-popup-related]::-webkit-scrollbar-track {
    border-radius: 10px;
    background-color: #00000000;
}
div[data-hn-popup-related]::-webkit-scrollbar-thumb {
    height: 100%;
	background: #e3e3e3;
	border-radius: 10px;
}







.hn__sp-tieu-bieu .e-loop-item {
    cursor: pointer;
    transition: all 0.3s ease;
}

/* Hiệu ứng mờ cho các item không được chọn */
.hn__sp-tieu-bieu .e-loop-item:not(.is-active) {
    opacity: 1;
}

.hn__sp-tieu-bieu .e-loop-item.is-active {
    opacity: 1;
}

/* Hiệu ứng hình ảnh khi hover vào container */
.hn_container_product {
    overflow: visible;
}


.hn_container_product .hn_img_product {
    transition: transform 0.4s ease;
    transform-origin: bottom right !important;
    transform: scale(1) translateY(50%);
}

.hn_container_product .hn_img_product img {
    transition: transform 0.4s ease;
}


.hn_container_product:hover .hn_img_product {
    transform: scale(1.2) translateY(50%);
}

.hn_container_product:hover .hn_img_product img {
    transform: rotate(14deg);
}

.hn_container_product:hover .hn__color-product {
    filter: brightness(50%);
    transition: filter .3s ease;
}

@media (max-width: 1279px) {
	
}


@media (max-width: 992px) {

}







/* Marquee Flag */
.hn__flag_marquee {
	--width-flag: 5.11927vw;
	--height-flag: 2.70208vw;
	--space: 1.66667vw;
    padding: 1.04167vw 1.25vw;
    background-color: #FFFFFF1A;
    border: 2px solid #FFFFFF1A;
    backdrop-filter: blur(10px);
    border-radius: 0.83333vw;
}
.hn__flag_marquee-container {
    overflow: hidden;
}
.hn__flag_marquee-wrapper {
    display: flex;
    min-width: calc(((var(--width-flag) + var(--space)) * var(--total)) * 2);
	animation: marqueeFlag 10s infinite linear;
}
.hn__flag_marquee-group {
    display: flex;
    flex-wrap: nowrap;
    min-width: calc((var(--width-flag) + var(--space)) * var(--total));
}
img.hn__flag_image {
    min-width: var(--width-flag);
    height: var(--height-flag) !important;
    object-fit: cover;
    border-radius: 0.41667vw !important;
    margin-right: var(--space);
}
@keyframes marqueeFlag {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-50%);
	}
}







