:root {
    /* #1c2a50 | #2147ad */
    /* 32, 72, 172 | 33, 71, 173 */
	--bs-bg-primary: #2147ad;
	--bs-primary: #2147ad;
	--bs-primary-hover: #1c2a50;
	--bs-primary-rgb: 33, 71, 173;
	--bs-secondary: #fdd063;
	--bs-secondary-hover: #ffe2a1;
	--bs-secondary-rgb: 253, 208, 99;
	--bs-font-sans-serif: "Raleway", sans-serif;
	--bs-body-font-family: "Raleway", sans-serif;
	--bs-body-font-weight-lighter: 200;
	--bs-body-font-weight-light: 300;
	--bs-body-font-weight: 400;
	--bs-body-font-weight-semibold: 600;
	--bs-body-font-weight-bold: 700;
	--bs-body-font-weight-bolder: 800;
	--bs-body-color: #1c2951;
	--bs-body-line-height: 1.3;
	--fancybox-zIndex: 9999;
	--bs-control-height: 40px;
	--bs-btn-height: 44px;
	--bs-body-font-size: 16px;
	--bs-border-radius: 10px;
	--bs-container-sm-width: 960px;
	--bs-container-md-width: 1080px;
	--bs-container-lg-width: 1200px;
	--bs-container-xl-width: 1320px;
	--bs-container-xxl-width: 1500px;
	--font-awesome: "Font Awesome 6 Pro";
}

a { color: var(--bs-primary); }
a:hover { color: var(--bs-secondary-hover); }
img { max-width: 100%; height: auto; }
button { transition: all 0.3s ease-in-out; }
strong, b{ font-weight: var(--bs-body-font-weight-bold);}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6{ font-weight: var(--bs-body-font-weight-bold);}

.fw-light{ font-weight: var(--bs-body-font-weight-lighter) !important;}
.fw-lighter{ font-weight: var(--bs-body-font-weight-light) !important;}
.fw-normal{ font-weight: normal !important;}
.fw-semibold{ font-weight: var(--bs-body-font-weight-semibold) !important;}
.fw-bold{ font-weight: var(--bs-body-font-weight-bold) !important;}
.fw-bolder{ font-weight: var(--bs-body-font-weight-bolder) !important;}

.btn{
	padding-left: 30px;
	padding-right: 30px;
	border-radius: 10px;
	font-size: 14px;
	font-weight: var(--bs-body-font-weight-bold);
	transition: all 0.3s ease 0ms;
}
.btn:after{font-family: var(--font-awesome);content: "\f105"; font-weight: 300; margin-top: -1px; margin-left: -14px; opacity: 0; transition: all 0.3s ease 0ms;}
.btn:hover:after{ margin-left: 2px; opacity: 1;}

.btn.btn-sm{
	padding-left: 15px;
	padding-right: 15px;
	border-radius: 8px;
	font-size: 13px;
	font-weight: var(--bs-body-font-weight-semibold);
	transition: all 0.3s ease 0ms;
}
.btn.btn-sm:after{ margin-left: -12px;}
.btn.btn-sm:hover:after{ margin-left: 2px;}

.btn-primary {
	background: var(--bs-primary);
}
.btn-primary:focus,
.btn-primary:active,
.btn-primary:hover {
	background: var(--bs-secondary);
	color: var(--bs-primary);
}

.btn-outline-primary {
	--bs-btn-color: #231f20;
	--bs-btn-border-color: var(--bs-primary);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--bs-primary);
	--bs-btn-hover-border-color: var(--bs-primary);
	--bs-btn-focus-shadow-rgb: 13, 110, 253;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--bs-primary);
	--bs-btn-active-border-color: var(--bs-primary);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: var(--bs-primary);
	--bs-btn-disabled-bg: transparent;
	--bs-btn-disabled-border-color: var(--bs-primary);
	--bs-gradient: none;

	border-width: 1px;
	font-size: 14px;
	text-transform: uppercase;
	padding-left: 20px;
	padding-right: 20px;
	border-radius: 24px;
	font-weight: var(--bs-body-font-weight-bold);
}
.btn-outline-primary:focus,
.btn-outline-primary:active,
.btn-outline-primary:hover {
	--bs-btn-color: #fff;
	background-color: var(--bs-primary);
}

.btn-secondary {
	background: var(--bs-secondary);
	padding-left: 32px;
	padding-right: 32px;
	font-size: 18px;
	color: #222222;
}
.btn-secondary:hover { background: var(--bs-secondary-hover); color: #222222; }

.form-control-file {
	line-height: var(--bs-control-height);
}

.input-group .btn{ border-radius: var(--bs-border-radius); padding-left: 20px; padding-right: 20px;}

.form-group { margin-bottom: 16px;}
.form-group .form-label { font-weight: var(--bs-body-font-weight-bold);}

.modal .icon-close{ position: absolute; top: -34px; right: 0; width: 26px; height: 26px; background: transparent; display: inline-flex; align-items: center; justify-content: center; border: 2px solid var(--bs-secondary); border-radius: 50%;}
.modal .icon-close i{ color: var(--bs-secondary);}
.modal-backdrop.show{--bs-backdrop-opacity: 0.7;}

.pagination { margin-top: 30px;}

.lozad { opacity: 0;}
.lozad.show { opacity: 1;}

.f-carousel{ display: flex; overflow: hidden;}
.f-carousel.is-ltr{ overflow: unset;}
.f-carousel .f-carousel__track { height: 100%;}
.f-carousel .f-carousel__slide { height: 100%;}
.f-carousel .f-carousel__viewport { height: auto; min-height: 10px;}
.f-carousel .f-progress { display: none;}
.f-carousel .f-carousel__dots { bottom: 20px; }
.f-carousel .f-carousel__dots li { margin-right: 5px; }
.f-carousel .f-carousel__dots li:last-child { margin-right: 0; }
.f-carousel .f-carousel__dots li { opacity: 1; transition: all .15s ease-in-out;}
.f-carousel .f-carousel__dots li button { width: auto; height: auto; transition: all 0.3s ease-in-out;}
.f-carousel .f-carousel__nav .f-button { color: #636363;}
.f-carousel .f-carousel__nav .f-button > * { pointer-events: none;}
.f-carousel .f-carousel__nav .f-button > i{ font-size: 30px;}
.f-carousel .f-carousel__nav .f-button:hover > i{ color: #000000;}
.f-carousel .f-carousel__dot { width: 8px; height: 8px; transition: all 0.3s ease-in-out; background-color: #999999;}
.f-carousel .is-current .f-carousel__dot { background-color: var(--bs-primary);}
.f-carousel.has-dots { margin: 0;}

.post-card { background-color: #ffffff; height: 100%; border-radius: var(--bs-border-radius); box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); transition: all 0.2s ease-in-out; overflow: hidden; border-bottom: 8px solid var(--bs-secondary);}
.post-card .image { display: block; overflow: hidden;}
.post-card .image img { width: 100%; height: 220px; object-fit: cover; transition: all 0.2s ease-in-out;}
.post-card .info { background-color: #ffffff; padding: 20px; text-align: center;}
.post-card .info .category { margin-bottom: 10px; display: none; text-align: center;}
.post-card .info .category a { font-size: 14px; color: #999;}
.post-card .info .name { margin-bottom: 15px; font-size: 18px; font-weight: var(--bs-body-font-weight-bold); color: #302f2f; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; max-height: calc(1.4em * 3);}
.post-card .info .name a { color: var(--bs-primary);}
.post-card .info .name a:hover { color: var(--bs-primary-hover);}
.post-card .info .desc { font-size: 16px; color: #333; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; max-height: calc(1.4em * 3);}
.post-card .info .date { font-size: 14px; color: #999; align-items: center; margin-top: 15px; display: none;}
.post-card .info .date > * { margin-right: 5px; }
.post-card .info .date > *:last-child { margin-right: 0; }
.post-card .info .date i { font-size: 16px; padding-top: 2px;}
.post-card .info .date span { font-size: 14px; padding-top: 3px;}
.post-card .info .view { margin-top: 20px; text-align: center;}
.post-card .info .view a{ display: inline-flex; gap: 5px; align-items: center; background: var(--bs-primary); color: #ffffff; padding: 10px 15px; border-radius: var(--bs-border-radius);}
.post-card .info .view a span { line-height: 1; font-weight: var(--bs-body-font-weight-semibold); font-size: 16px;}
.post-card .info .view a i { display: none;}
.post-card .info .view a:hover{ background: var(--bs-secondary); color: var(--bs-primary);}
.post-card .info .view:hover{}
.post-card:hover { box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);}
.post-card:hover .image img { transform: scale(1.05); -webkit-transform: scale(1.05); }

.product-card { background-color: #ffffff; padding: 24px; position: relative; box-shadow: 0 0 15px rgba(0, 0, 0, 0.1); transition: all 0.2s ease-in-out; }
.product-card .sale { position: absolute; top: 10px; right: 10px; background-color: #ed1c24; color: #ffffff; font-weight: var(--bs-body-font-weight-bold); font-size: 14px; padding: 3px 10px; border-radius: 20px;}
.product-card .image { position: relative; cursor: pointer; overflow: hidden; height: 280px;}
.product-card .image a{ display: block;}
.product-card .image img { width: 100%; height: 100%; transition: all 0.2s ease-in-out; object-fit: cover;}
.product-card .image .control { position: absolute; top: 50%; left: 0; height: 50px; margin-top: -25px; width: 100%; display: none; justify-content: center; align-items: center; opacity: 0; transition: all 0.2s ease-in-out;}
.product-card .image .control > * { margin: 0 5px; }
.product-card .image .control .btn { width: 40px; height: 40px; background-color: #ffffff; border-radius: 50%; display: inline-flex; justify-content: center; align-items: center; transition: all 0.15s ease-in-out;}
.product-card .image .control .btn:hover { margin-top: -10px;}
.product-card .info { padding: 10px 0;}
.product-card .info .name {padding: 0;margin-bottom: 10px;font-size: 16px;font-weight: var(--bs-body-font-weight-bold);color: #333;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;text-overflow: ellipsis;line-height: 1.4;min-height: calc(1.4em * 2);max-height: calc(1.4em * 2);}
.product-card .info .name a { color: #231f20;}
.product-card .info .name a:hover { color: var(--bs-primary);}
.product-card .info .price { font-weight: var(--bs-body-font-weight-bold); font-size: 20px; color: #ed1c24; display: inline-flex; align-items: flex-end; margin-bottom: 20px;}
.product-card .info .price > * { margin-right: 10px; }
.product-card .info .price > *:last-child { margin-right: 0; }
.product-card .info .price .price-regular { text-decoration: line-through; color: rgba(0, 0, 0, 0.4); font-size: 14px; font-weight: normal; margin-bottom: 2px;}
.product-card .info .control { display: flex; justify-content: space-between;}
.product-card .info .control .btn { height: 38px; padding-left: 15px; padding-right: 15px;}
.product-card:hover { box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);}
.product-card:hover .image .control { opacity: 1;}
.product-card:hover .image img { transform: scale(1.1); -webkit-transform: scale(1.1); }

.product-category-card { background-color: #ffffff; padding: 24px; position: relative; box-shadow: 0 0 15px rgba(0, 0, 0, 0.1); transition: all 0.2s ease-in-out; }
.product-category-card .image { position: relative; cursor: pointer; overflow: hidden; height: 280px;}
.product-category-card .image img { width: 100%; height: 100%; transition: all 0.2s ease-in-out; object-fit: cover;}
.product-category-card .info { padding: 15px 0 0;}
.product-category-card .info .name { text-transform: uppercase; text-align: center; padding: 0; font-size: 16px; font-weight: var(--bs-body-font-weight-bold); color: #333; }
.product-category-card .info .name a { color: #231f20;}
.product-category-card .info .name a:hover { color: var(--bs-primary);}
.product-category-card:hover { box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);}
.product-category-card:hover .image img { transform: scale(1.1); -webkit-transform: scale(1.1); }

.project-card { position: relative; margin-bottom: 30px;}
.project-card .image { position: relative; cursor: pointer; overflow: hidden;}
.project-card .image:after { pointer-events: none; content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 1; background: linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);}
.project-card .image img { width: 100%; transition: all 0.2s ease-in-out;}
.project-card .image:hover img { transform: scale(1.05); -webkit-transform: scale(1.05); }
.project-card .info { padding: 30px; position: absolute; z-index: 2; bottom: 0; left: 0; width: 100%;}
.project-card .info .name { font-size: 16px; line-height: 1.5; font-weight: var(--bs-body-font-weight-bold); color: #fff; text-transform: uppercase; margin-bottom: 15px}
.project-card .info .name a { color: #fff; font-weight: var(--bs-body-font-weight-bold);}
.project-card .info .name a:hover { color: var(--bs-secondary);}
.project-card .info .desc { font-size: 15px;color: #fff; display: none; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; min-height: calc(1.4em * 2); max-height: calc(1.4em * 2); font-weight: normal; margin: 15px 0;}
.project-card .info .province { display: flex; align-items: center; color: #fff; font-weight: normal; margin-bottom: 3px;}
.project-card .info .province i { width: 24px; font-size: 16px; margin-top: -1px; color: var(--bs-primary);}
.project-card .info .calendar { display: flex; align-items: center; color: #fff; font-weight: normal;}
.project-card .info .calendar i { width: 24px; font-size: 16px; margin-top: -1px; color: var(--bs-primary);}
.project-card .info .detail { display: none; align-items: center; font-weight: normal;}
.project-card .info .detail > * { margin-right: 10px; }
.project-card .info .detail > *:last-child { margin-right: 0; }
.project-card .control { text-align: center;}
.project-card .control a { display: inline-flex; width: 50px; height: 50px; justify-content: center; align-items: center; border: 1px solid #ccc; border-radius: 50%; font-size: 18px;}
.project-card .control a:hover { background-color: var(--bs-secondary); border-color: var(--bs-secondary); color: #000000;}

.course-card { background-color: #ffffff; height: 100%; border-radius: var(--bs-border-radius); box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); transition: all 0.2s ease-in-out; overflow: hidden; border-bottom: 8px solid var(--bs-secondary);}
.course-card .image { display: block; overflow: hidden;}
.course-card .image img { width: 100%; height: 220px; object-fit: cover; transition: all 0.2s ease-in-out;}
.course-card .info { background-color: #ffffff; padding: 20px; text-align: center;}
.course-card .info .category { margin-bottom: 10px; text-align: center;}
.course-card .info .category a { font-size: 14px; color: #999;}
.course-card .info .name { margin-bottom: 15px; font-size: 18px; font-weight: var(--bs-body-font-weight-bold); color: #302f2f; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; max-height: calc(1.4em * 3);}
.course-card .info .name a { color: var(--bs-primary);}
.course-card .info .name a:hover { color: var(--bs-primary-hover);}
.course-card .info .desc { font-size: 16px; color: #333; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; max-height: calc(1.4em * 3);}
.course-card .info .date { font-size: 14px; color: #999; align-items: center; margin-top: 15px; display: none;}
.course-card .info .date > * { margin-right: 5px; }
.course-card .info .date > *:last-child { margin-right: 0; }
.course-card .info .date i { font-size: 16px; padding-top: 2px;}
.course-card .info .date span { font-size: 14px; padding-top: 3px;}
.course-card .info .view { margin-top: 20px; text-align: center;}
.course-card .info .view a{ display: inline-flex; gap: 5px; align-items: center; background: var(--bs-primary); color: #ffffff; padding: 10px 15px; border-radius: var(--bs-border-radius);}
.course-card .info .view a span { line-height: 1; font-weight: var(--bs-body-font-weight-semibold); font-size: 16px;}
.course-card .info .view a i { display: none;}
.course-card .info .view a:hover{ background: var(--bs-secondary); color: var(--bs-primary);}
.course-card .info .view:hover{}
.course-card:hover { box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);}
.course-card:hover .image img { transform: scale(1.05); -webkit-transform: scale(1.05); }

.brand-card { position: relative; margin-bottom: 30px;}
.brand-card .image { position: relative; cursor: pointer; overflow: hidden;}
.brand-card .image:after { pointer-events: none; content: ""; position: absolute; width: 100%; height: 100%; top: 0; left: 0; z-index: 1; background: linear-gradient(to top, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, 0) 100%);}
.brand-card .image img { width: 100%; transition: all 0.2s ease-in-out;}
.brand-card .image:hover img { transform: scale(1.05); -webkit-transform: scale(1.05); }
.brand-card .info { padding: 30px; position: absolute; z-index: 2; bottom: 0; left: 0; width: 100%;}
.brand-card .info .name { font-size: 16px; line-height: 1.5; font-weight: var(--bs-body-font-weight-bold); color: #fff; text-transform: uppercase; margin: 0;}
.brand-card .info .name a { color: #fff; font-weight: var(--bs-body-font-weight-bold);}
.brand-card .info .name a:hover { color: var(--bs-secondary);}
.brand-card .info .desc { font-size: 15px;color: #fff; display: none; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; min-height: calc(1.4em * 2); max-height: calc(1.4em * 2); font-weight: normal; margin: 15px 0;}
.brand-card .info .detail { display: none; align-items: center; font-weight: normal;}
.brand-card .info .detail > * { margin-right: 10px; }
.brand-card .info .detail > *:last-child { margin-right: 0; }
.brand-card .control { text-align: center;}
.brand-card .control a { display: inline-flex; width: 50px; height: 50px; justify-content: center; align-items: center; border: 1px solid #ccc; border-radius: 50%; font-size: 18px;}
.brand-card .control a:hover { background-color: var(--bs-secondary); border-color: var(--bs-secondary); color: #000000;}

.teacher-card { position: relative; margin-bottom: 30px; border-radius: var(--bs-border-radius); background-color: #f9f9f9; height: 100%; overflow: hidden;}
.teacher-card .info{ padding: 20px 20px 0;}
.teacher-card .info .name{ font-size: 22px; margin-bottom: 5px;}
.teacher-card .info .title{ font-size: 14px; font-weight: bolder; margin-bottom: 5px; color: #333333;}
.teacher-card .info .desc{ font-size: 14px; padding-top: 10px;}
.teacher-card .info .desc p{ margin-bottom: 5px;}
.teacher-card .info .desc p:last-child{ margin-bottom: 0;}

.feedback-card { position: relative; margin-bottom: 30px; border-radius: var(--bs-border-radius); background-color: #f9f9f9; height: 100%; overflow: hidden;}
.feedback-card .info{ padding: 20px 20px 0;}
.feedback-card .info .name{ font-size: 22px; margin-bottom: 5px;}
.feedback-card .info .title{ font-size: 14px; font-weight: bolder; margin-bottom: 5px; color: #333333;}
.feedback-card .info .desc{ font-size: 15px; padding-top: 10px;}
.feedback-card .info .desc p{ margin-bottom: 5px;}
.feedback-card .info .desc p:last-child{ margin-bottom: 0;}

.menu__main{ margin-left: -15px;}
.menu__main > ul { display: flex; padding: 0; margin: 0; list-style: none; }
.menu__main > ul > li { position: relative; margin: 0; }
.menu__main > ul > li > a { display: flex; white-space: nowrap; align-items: center; color: #444444; padding: 10px 15px; font-size: 14px; font-weight: var(--bs-body-font-weight-bold); text-transform: uppercase; }
.menu__main > ul > li > a span.title { display: block; padding: 7px 0; position: relative;}
.menu__main > ul > li > a span.title:after { content: ""; position: absolute; display: block; height: 2px; width: 100%; top: 0; left: 0; background-color: var(--bs-secondary); opacity: 0; transition: all 0.3s ease-in-out;
	-webkit-transform: scaleX(0);
	transform: scaleX(0);
	-webkit-transform-origin: center;
	transform-origin: center;
	-webkit-transition: -webkit-transform .3s ease-in-out;
	transition: -webkit-transform .3s ease-in-out;
	transition: transform .3s ease-in-out;
}
.menu__main > ul > li > a > .arrow{ display: inline-block; line-height: 1; margin-top: -3px; font-size: 10px; margin-left: 4px;}
.menu__main > ul > li > a > .arrow:after { content: "\f078"; font-family: var(--font-awesome); font-weight: 900;}
.menu__main > ul > li:hover > a span.title:after,
.menu__main > ul > li.active > a span.title:after { opacity: 1;-webkit-transform: scaleX(1); transform: scaleX(1);}
.menu__main .submenu { display: none; position: absolute; top: 100%; left: 0; min-width: 300px; background-color: #fff; box-shadow: 0 0 35px 0 rgba(0, 0, 0, 0.1); list-style: none; padding: 15px 0; margin: 0; z-index: 999; border-radius: var(--bs-border-radius); }
.menu__main .submenu li { position: relative; }
.menu__main .submenu li a { display: flex; align-items: center; color: #444444; font-size: 14px; text-transform: uppercase; padding: 5px 20px; white-space: nowrap; font-weight: var(--bs-body-font-weight-bold); position: relative; transition: all 0.3s ease-in-out; }
.menu__main .submenu li a span { display: block; padding: 5px 0; position: relative;}
.menu__main .submenu li a:after{ content: ""; height: 100%; width: 4px; background-color: var(--bs-secondary); position: absolute; left: 0; top: 0; opacity: 0; transition: all 0.3s ease-in-out; }
/* .menu__main .submenu li a span:after { content: ""; position: absolute; display: block; height: 1px; width: 0; bottom: 0; left: 0; background-color: #d1d1d1; transition: width 0.3s ease-in-out;} */
.menu__main .submenu li a > i { width: 16px; text-align: center; margin-right: 8px;}
.menu__main .submenu li:hover > a,
.menu__main .submenu li.active > a { padding-left: 25px;}
.menu__main .submenu li:hover > a:after,
.menu__main .submenu li.active > a:after { opacity: 1;}
/* .menu__main .submenu li:hover > a span:after, */
/* .menu__main .submenu li.active > a span:after { width: 100%;} */
.menu__main .submenu .submenu { top: -15px; left: 100%; }
.menu__main .submenu .divider { height: 1px; display: block; background-color: rgba(var(--bs-black-rgb), 0.05); margin: 2px 0;}
.menu__main > ul > li:hover > .submenu { display: block; animation: SlideDownMenu 0.3s ease forwards; }
.menu__main .submenu li:hover > .submenu { display: block; animation: SlideRightMenu 0.3s ease forwards; }
.menu__main ul li img{ display: none;}

.menu__offcanvas.offcanvas-start { max-width: 100%; width: 100%; border: 0; }
.menu__offcanvas .offcanvas-header{ background-color: #f9f9f9; border-bottom: 1px solid #eeeeee; justify-content: space-between; align-items: center;}
.menu__offcanvas .offcanvas-header .logo{ margin: 0;}
.menu__offcanvas .offcanvas-header .logo img{ height: 44px; }
.menu__offcanvas .offcanvas-header .control{ display: flex; align-items: center;}
.menu__offcanvas .offcanvas-header .control a { color: #444444; margin-left: 20px;}
.menu__offcanvas .offcanvas-header .control a:hover { color: #000000; }
.menu__offcanvas .offcanvas-header .control i { font-size: 22px;}
.menu__offcanvas .offcanvas-header .control .cart { position: relative; margin-top: -2px; display: none;}
.menu__offcanvas .offcanvas-header .control .cart span { position: absolute; bottom: -5px; right: -5px; height: 12px; min-width: 12px; font-size: 10px; font-weight: var(--bs-body-font-weight-bold); background-color: #fed74c; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; padding: 3px; }
.menu__offcanvas .offcanvas-header .control button{ padding: 5px; margin-left: 15px; border: 0; background: none;}
.menu__offcanvas .offcanvas-header .control button i{ font-size: 24px; color: #444444;}
.menu__offcanvas .offcanvas-body { position: relative; overflow: auto; padding: 0; }
.menu__offcanvas .offcanvas-body .contact{ padding: 8px 0; }
.menu__offcanvas .offcanvas-body .contact .item{ padding: 4px var(--bs-offcanvas-padding-x); display: flex; align-items: center; font-weight: var(--bs-body-font-weight-semibold); }
.menu__offcanvas .offcanvas-body .contact .item i{ min-width: 30px;}

.menu__mobile ul { list-style: none; margin: 5px 0; padding: 0; }
.menu__mobile ul li{ border-bottom: 1px solid #e9e9e9;}
.menu__mobile ul li a { display: flex; padding: 12px var(--bs-offcanvas-padding-x); align-items: center; color: #333; text-transform: uppercase; font-weight: var(--bs-body-font-weight-bold); font-size: 16px;}
.menu__mobile ul li a > img{ width: 30px; height: 30px; object-fit: cover; border-radius: 50%; margin-right: 10px;}
.menu__mobile ul li a > span { margin-right: 5px; }
.menu__mobile ul li a .arrow { font-size: 16px; margin-top: 3px; margin-left: auto; transition: all 0.2s ease; transform: rotateX(0deg);}
.menu__mobile ul li a .arrow:after { content: "\f107"; font-family: var(--font-awesome); font-weight: 400; color: #333;}
.menu__mobile ul li ul.submenu { display: none; overflow: hidden; margin: 0; padding: 5px 0 5px 25px; border-top: 1px solid #e9e9e9;}
.menu__mobile ul li ul.submenu > li:last-child { border: 0;}
.menu__mobile ul li ul.submenu > li a{ position: relative;}
.menu__mobile ul li ul.submenu > li a:after{ content: ""; position: absolute; width: 6px; height: 6px; left: 0; top: 50%; margin-top: -4px; border-radius: 50%; background-color: #AAAAAA;}
.menu__mobile ul li.active > a .arrow { transform: rotateX(180deg);}
.menu__mobile ul li.active > ul.submenu{ display: block;}
.menu__mobile ul li.active > ul.submenu.submenu-image{ display: flex; flex-wrap: wrap;}
.menu__mobile ul li ul.submenu.submenu-image{ padding: 20px calc(var(--bs-offcanvas-padding-x) - 8px) 0;}
.menu__mobile ul li ul.submenu.submenu-image > li{ width: 33.333%; border: 0; padding-bottom: 25px;}
.menu__mobile ul li ul.submenu.submenu-image > li a{ margin: 0 8px; padding: 0; flex-direction: column;}
.menu__mobile ul li ul.submenu.submenu-image > li a img{ margin: 0 0 5px; border: 1px solid #e9e9e9; border-radius: 6px; width: 100%; height: auto; object-fit: cover; overflow: hidden;}
.menu__mobile ul li ul.submenu.submenu-image > li a span{ margin: 0; line-height: 1.3; font-size: 14px; text-align: center; text-transform: none;}
.menu__mobile ul li ul.submenu.submenu-image > li a:after{ display: none;}

.menu__footer > ul { padding: 0; margin: 0; list-style: none; display: flex; width: 100%; }
.menu__footer > ul > li { position: relative; padding-bottom: 30px; flex: 1; text-align: center; }
.menu__footer > ul > li > a { color: #ffffff; padding: 5px; margin-bottom: 10px; display: block; font-size: 18px; font-weight: var(--bs-body-font-weight-semibold);}
.menu__footer > ul > li ul{ padding: 0; margin: 0 auto; list-style: none; width: 90%;}
.menu__footer > ul > li ul li{ display: inline-flex; padding: 5px;}
.menu__footer > ul > li ul li a{ padding: 6px 10px; border-radius: 30px; background-color: rgba(255, 255, 255, 0.2); font-size: 12px; font-weight: var(--bs-body-font-weight-semibold);}

.menu__policy > ul { padding: 0; margin: 0; list-style: none; }
.menu__policy > ul > li { position: relative; margin-bottom: 10px; }
.menu__policy > ul > li > a { color: #ffffff; padding: 0; display: block; font-size: 13px;}

.menu__sidebar ul { list-style: none; padding: 0; margin: 0;}
.menu__sidebar li {position: relative; border-bottom: 1px solid #dcdcdc;}
.menu__sidebar li:last-child { border: 0;}
.menu__sidebar li a { position: relative; width: 100%; display: flex; align-items: center; justify-content: space-between; padding: 10px 5px 10px 15px; color: #000; font-size: 14px; text-transform: uppercase;}
.menu__sidebar li a:hover { background: #dcdcdc;}
.menu__sidebar li a .title { flex: 1; }
.menu__sidebar li.active > a { background: #dcdcdc; }
.menu__sidebar li.active > a:after { content: ""; position: absolute; top: 0; left: 0; width: 3px; height: 100%; background-color: var(--bs-primary);}
.menu__sidebar li a .count { font-size: 14px; color: #9ca3af; margin-left: 5px;}
.menu__sidebar li.active > a .count {color: var(--bs-primary); }
.menu__sidebar li a .arrow {display: inline-flex;align-items: center;justify-content: center;width: 20px;height: 100%;cursor: pointer;transition: transform 0.25s ease;flex-shrink: 0;}
.menu__sidebar li a .arrow::before {font-family: var(--font-awesome);content: "\f105";font-size: 14px;color: #9ca3af;}
.menu__sidebar li.open > a .arrow,
.menu__sidebar li > a .arrow,
.menu__sidebar li.active > a .arrow{transform: rotate(90deg);}
.menu__sidebar li.active > a .arrow::before {color: var(--bs-primary);}
.menu__sidebar .submenu {padding-left: 25px;display: block;margin-top: 5px;margin-bottom: 5px; border-top: 1px solid #dcdcdc; }
.menu__sidebar .submenu li > a{ padding: 8px 5px 8px 15px; position: relative; }
.menu__sidebar .submenu li > a:hover{ background: none; color: #000;}
.menu__sidebar .submenu li > a:after{ content: ""; position: absolute; width: 6px; height: 6px; top: 50%; left: 0; margin-top: -4px; border-radius: 50%; background-color: #666;}
.menu__sidebar .submenu li > a:hover{ color: #000000;}
.menu__sidebar .submenu li.open > a,
.menu__sidebar .submenu li.active > a{ background: none; color: #000; font-weight: var(--bs-body-font-weight-bold);}
.menu__sidebar .submenu li.open > a:after,
.menu__sidebar .submenu li.active > a:after{ background: #000000;}
.menu__sidebar li.active > .submenu,
.menu__sidebar li.open > .submenu {display: block;}

.menu__hotline{ position: fixed; bottom: 0; left: 0; width: 100%; z-index: 2000; background-color: #ffffff; border-top: 1px solid #eeeeee; }
.menu__hotline ul{ margin: 0; padding: 0; list-style: none; display: flex; justify-content: space-between;}
.menu__hotline ul li { width: 20%; display: flex; justify-content: center; align-items: flex-end; flex: 1;}
.menu__hotline ul li a{ padding: 5px 2px; display: flex; flex-direction: column; align-items: center; justify-content: center;}
.menu__hotline ul li a img{ width: 38px;}
.menu__hotline ul li a span{ font-size: 11px; margin-top: 3px; display: block; text-align: center; color: #000000; font-weight: var(--bs-body-font-weight-semibold);}
.menu__hotline ul li:nth-child(3) a img { width: 60px; margin-top: -20px; padding: 5px; background-color: #6bb319; border: 2px solid #FFF; border-radius: 50%; }

.sidebar__left {background: #fff; margin-bottom: 30px;}
.sidebar__left .box-title { position: relative; padding-bottom: 5px;}
.sidebar__left .box-title:after { content: ""; position: absolute; left: 0; bottom: 0; width: 70px; height: 2px; background-color: var(--bs-primary);}
.sidebar__left .box-title .title {font-size: 20px; font-weight: var(--bs-body-font-weight-bold); color: #000; text-transform: uppercase;}
.sidebar__left .box-content { padding: 10px 0;}

.header__top .box-content{ display: flex; gap: 20px; align-items: center; justify-content: space-between; border-bottom: 1px solid #eeeeee; padding: 20px 0 10px;}
.header__top .logo{ margin: 0;}
.header__top .logo img{ height: 50px;}
.header__top .contact { display: inline-flex; align-items: center; gap: 30px; }
.header__top .contact .item { display: inline-flex; align-items: center; gap: 10px; font-size: 14px; font-weight: var(--bs-body-font-weight-bold); }

.header__menu { padding: 20px 0 10px;}
.header__menu .box-content{ display: flex; gap: 20px; align-items: center; justify-content: space-between;}
.header__menu .control { display: inline-flex; align-items: center;}
.header__menu .control .btn { border-radius: 0; text-transform: uppercase;}

.banner__main { text-align: center;}
.banner__main img { max-width: 100%;}

.box__slider { position: relative; height: 650px; overflow: hidden; }
.box__slider:after { content: ""; position: absolute; z-index: 1; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(var(--bs-primary-rgb), 0.7);}
.box__slider .image-bg { width: 100%; object-fit: cover; }
.box__slider .video-bg { width: 100%; object-fit: cover; }
.box__slider .youtube-bg { position: absolute; top: 50%; left: 50%; width: 100vw; height: 56.25vw; min-height: 100vh; min-width: 177.77vh; transform: translate(-50%, -50%); pointer-events: none; }
.box__slider .content { pointer-events: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.2); display: flex; align-items: center; justify-content: center; }
.box__slider .item { padding: 100px 0; color: #ffffff; }
.box__slider .item .name { font-size: 24px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 20px; }
.box__slider .item .description { font-size: 42px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 40px; line-height: 1.2; }
.box__slider .item .image { text-align: center;}
.box__slider .item .image img{ width: 80%;}
.box__slider .item a{ color: var(--bs-secondary);}
.box__slider .item a:hover{ color: var(--bs-secondary-hover);}
.box__slider .item .btn { color: #ffffff; border: 1px solid #ffffff; padding: 8px 30px; border-radius: 0; background-color: transparent;}
.box__slider .item .btn:hover { background-color: #ffffff; color: var(--bs-primary);}
.box__slider .item h2{ margin-bottom: 15px;}
.box__slider .item h3{ margin-bottom: 15px;}
.box__slider .item p{ line-height: 1.7; font-size: 18px;}
.box__slider .f-carousel { position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 10;}
.box__slider .f-carousel .f-carousel__track{ height: 100%; align-items: center;}
.box__slider .f-carousel .f-carousel__nav .f-button { width: auto; height: 50px; background: transparent; font-size: 34px; color: rgba(255, 255, 255, 0.6);}
.box__slider .f-carousel .f-carousel__nav .f-button:hover { color: rgba(255, 255, 255, 1); }
.box__slider .f-carousel .f-carousel__nav .is-prev { left: 50px; right: auto;}
.box__slider .f-carousel .f-carousel__nav .is-next { left: auto; right: 50px;}
.box__slider .f-carousel .f-carousel__dots { bottom: 50px; }
.box__slider .f-carousel .f-carousel__dots .f-carousel__dot { width: 60px; height: 3px; border-radius: 3px; background: rgba(255, 255, 255, 0.3)}
.box__slider .f-carousel .f-carousel__dots li.is-current .f-carousel__dot { background: rgba(255, 255, 255, 0.9)}

.slider__partners { padding: 0 0 70px;}
.slider__partners .box-title { margin-bottom: 30px; padding: 0;}
.slider__partners .box-title .title { text-transform: uppercase; color: #000000; font-size: 40px; font-weight: var(--bs-body-font-weight-bold);}
.slider__partners .box-content { margin: 0 -10px;}
.slider__partners .item { display: flex; align-items: center; justify-content: center; box-shadow: 0 0 15px #eee;}
.slider__partners .f-carousel__slide { width: 16.66666667%; padding: 10px;}
.slider__partners .f-carousel__nav .f-button { transition: all 0.2s ease-in-out; top: -40px !important; left: auto !important; width: auto; height: auto; background: none; color: var(--bs-primary); font-size: 30px; }
.slider__partners .f-carousel__nav .f-button:disabled { color: #cacaca; }
.slider__partners .f-carousel__nav .f-button.is-prev { right: 40px;}
.slider__partners .f-carousel__nav .f-button.is-next { right: 0;}
.slider__partners .f-carousel__dots { display: none; }

.box__result { padding: 30px 70px; width: var(--bs-container-xxl-width); max-width: 100%; margin: 50px auto; background-color: var(--bs-secondary); border-radius: 20px;}
.box__result .box-content{ display: flex; gap: 70px;}
.box__result .number .title{ font-weight: var(--bs-body-font-weight-bold); font-size: 80px; line-height: 1;}
.box__result .number .description{ font-weight: var(--bs-body-font-weight-bold); font-size: 24px; white-space: nowrap; line-height: 1.2;}
.box__result .content h2{ font-size: 36px;}
.box__result .content h3{ font-size: 26px; margin-bottom: 15px;}
.box__result .content p{ line-height: 1.2;}
.box__result .content p:last-child{ margin-bottom: 0;}
.box__result .content ul{ margin-left: 0; margin-bottom: 0; padding-left: 0; }
.box__result .content ul li { list-style: none; position: relative; padding-left: 20px; margin-bottom: 15px; }
.box__result .content ul li::before { content: "\f0da"; font-family: var(--font-awesome); font-weight: 900; position: absolute; left: 0; top: 0; line-height: 1; color: #000000; font-size: 18px; }
.box__result .action{ align-items: center; display: inline-flex; margin-left: 50px;}
.box__result .action .btn{ border-radius: 4px; text-transform: uppercase; font-size: 16px;}
.box__result .action .btn:hover{ background-color: var(--bs-primary); color: #ffffff;}

.box__about-us { padding: 70px 0 0; background: linear-gradient(180deg,rgba(var(--bs-primary-rgb),.8) 0%,rgba(var(--bs-primary-rgb),.8) 100%), url('../img/bg_caps.jpeg') no-repeat center bottom; background-size: cover; }
.box__about-us { background: var(--bs-primary);}
.box__about-us .container{ width: var(--bs-container-md-width); max-width: 100%;}
.box__about-us .box-banner { margin-bottom: 50px;}
.box__about-us .box-title { text-align: center; width: 940px; max-width: 100%; margin: 0 auto 40px;}
.box__about-us .box-title .title { font-size: 18px; font-weight: var(--bs-body-font-weight-bolder); text-transform: uppercase; color: var(--bs-secondary); margin-bottom: 10px; line-height: 1.2;}
.box__about-us .box-title .desc { font-size: 28px; font-weight: var(--bs-body-font-weight-bold); margin: 0 0 10px; line-height: 1.2; color: #ffffff;}
.box__about-us .box-control { text-align: center; padding-top: 40px;}
.box__about-us .box-control .btn { min-width: 350px; font-size: 20px; border-radius: 24px;}
.box__about-us .image img{ max-width: 80%;}
.box__about-us .content { font-size: 18px; font-weight: var(--bs-body-font-weight-semibold); color: #231f20;}
.box__about-us .content ul { padding-left: 0; margin-bottom: 0; }
.box__about-us .content ul li { list-style: none; position: relative; padding-left: 30px; margin-bottom: 15px; }
.box__about-us .content ul li::before { content: "\f0da"; font-family: var(--font-awesome); font-weight: 900; position: absolute; left: 0; color: var(--bs-secondary); font-size: 30px; }
.box__about-us .item{ background-color: var(--bs-primary); color: #ffffff; padding: 30px; text-align: center; border: 1px solid #d1d1d1; border-radius: 20px; height: 100%; transition: all 0.2s ease-in-out;}
.box__about-us .item .image{ margin: 5px 0 30px;}
.box__about-us .item .image img{ width: 60px; border-radius: 50%;}
.box__about-us .item .title{ font-size: 20px; text-transform: uppercase; margin-bottom: 15px;}
.box__about-us .item .title a{ color: var(--bs-secondary);}
.box__about-us .item .desc{ font-size: 15px; margin-bottom: 20px;}
.box__about-us .item .btn{ border-radius: 24px;}
.box__about-us .item:hover{ transform: scale(1.01);}

.box__about-us-detail { padding: 15px 30px 0 0; }
.box__about-us-detail .box-title { margin-bottom: 20px;}
.box__about-us-detail .box-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bold); text-transform: uppercase; color: #ffffff; margin-bottom: 20px; line-height: 1.2;}
.box__about-us-detail .box-title .desc { font-size: 16px; font-weight: var(--bs-body-font-weight-bold); text-transform: uppercase; color: #ffffff; margin-bottom: 10px; line-height: 1.5;}
.box__about-us-detail .content { font-size: 16px; color: #ffffff; line-height: 1.7; font-weight: normal; text-align: justify;}
.box__about-us-detail .meta { display: flex; padding: 20px 0 0;}
.box__about-us-detail .meta > * { margin-right: 15px; }
.box__about-us-detail .meta > *:last-child { margin-right: 0; }
.box__about-us-detail .item { display: block; color: #ffffff; padding: 0; width: 50%; border-radius: 10px; transition: all 0.3s ease-in-out;}
.box__about-us-detail .item .image { display: block; margin-bottom: 20px;}
.box__about-us-detail .item .image img { width: 60px; height: auto; object-fit: contain;}
.box__about-us-detail .item .name { flex: 1; font-size: 16px; font-weight: var(--bs-body-font-weight-bold); line-height: 1.5;}


.box__service { padding: 20px 0 70px; background: #ffffff; }
.box__service .container{ width: var(--bs-container-md-width); max-width: 100%;}
.box__service .box-banner { margin-bottom: 50px;}
.box__service .box-title { text-align: center; width: 940px; max-width: 100%; margin: 0 auto 40px;}
.box__service .box-title .title { font-size: 18px; font-weight: var(--bs-body-font-weight-bolder); text-transform: uppercase; color: #666666; margin-bottom: 10px; line-height: 1.2;}
.box__service .box-title .desc { font-size: 28px; font-weight: var(--bs-body-font-weight-bold); margin: 0 0 10px; line-height: 1.2;}
.box__service .box-control { text-align: center; padding-top: 40px;}
.box__service .box-control .btn { min-width: 350px; font-size: 20px; border-radius: 24px;}
.box__service .image img{ max-width: 80%; border-radius: 20px; box-shadow: 0 0 10px #f9f9f9;}
.box__service .item{ transition: all 0.2s ease-in-out;}
.box__service .item .image{ margin: 5px 0 30px;}
.box__service .item .image img{ width: 60px; border-radius: 50%;}
.box__service .item .title{ font-size: 20px; text-transform: uppercase; margin-bottom: 15px; border: 1px solid #cccccc; border-radius: 10px; padding: 10px 20px;}
.box__service .item .title a{ color: var(--bs-secondary);}
.box__service .item .title:hover{ cursor: pointer; background: #f9f9f9;}
.box__service .item .content{ display: none; padding: 0 20px 20px;}
.box__service .item .content { font-size: 18px; font-weight: var(--bs-body-font-weight-semibold); color: #231f20;}
.box__service .item .content ul { padding-left: 0; margin-bottom: 20px; }
.box__service .item .content ul li { list-style: none; position: relative; padding-left: 20px; margin-bottom: 10px; }
.box__service .item .content ul li::before { content: "\f0da"; font-family: var(--font-awesome); font-weight: 900; position: absolute; left: 0; top: 1px; line-height: 1; color: var(--bs-secondary); font-size: 22px; }
.box__service .item .btn{ border-radius: 24px;}
.box__service .item.active .title{ background: var(--bs-primary); color: #ffffff; border-color: var(--bs-primary);}
.box__service .item.active .content{ display: block;}

.box__success-stories{ padding: 70px 0; background-color: var(--bs-primary); color: #ffffff;}
.box__success-stories .container{ width: var(--bs-container-md-width); max-width: 100%;}
.box__success-stories .box-title { text-align: center; width: 940px; max-width: 100%; margin: 0 auto 40px;}
.box__success-stories .box-title .title { font-size: 18px; font-weight: var(--bs-body-font-weight-bolder); text-transform: uppercase; color: var(--bs-secondary); margin-bottom: 10px; line-height: 1.2;}
.box__success-stories .box-title .desc { font-size: 28px; font-weight: var(--bs-body-font-weight-bold); margin: 0 0 10px; line-height: 1.2; color: #ffffff;}
.box__success-stories .box-control{ margin: 30px 0;}
.box__success-stories .media{ margin: 0; border-radius: var(--bs-border-radius); overflow: hidden;}
.box__success-stories .box-more{ display: flex; flex-wrap: wrap; gap: 20px; margin: 50px 0 0;}
.box__success-stories .box-more .item{ flex: 1;}
.box__success-stories .box-more .item .image{ border-radius: var(--bs-border-radius); overflow: hidden;}
.box__success-stories .box-more .item .image img{ transition: all 0.2s ease-in-out;}
.box__success-stories .box-more .item .info{ display: none;}
.box__success-stories .box-more .item .info .title{ margin: 10px 0;}
.box__success-stories .box-more .item .info .title a{ color: #ffffff; font-size: 14px; text-transform: uppercase; font-weight: var(--bs-body-font-weight-semibold);}
.box__success-stories .box-more .item:hover .image img{ transform: scale(1.2);}
.box__success-stories .box-more .item:hover .title a{ color: var(--bs-secondary);}

.product__category-home { padding: 70px 0 100px; background-color: #f7f7f7;}
.product__category-home .box-title { margin-bottom: 40px; padding: 0;}
.product__category-home .box-title .title { text-transform: uppercase; color: #000000; font-size: 40px; font-weight: var(--bs-body-font-weight-bold);}
.product__category-home .box-content { margin: 0 -16px;}
.product__category-home .item { position: relative; display: flex; align-items: center; flex-direction: column; width: 100%; }
.product__category-home .item .info { position: relative; width: 100%; padding-bottom: 100%; transition: all 0.2s ease-in-out; background-color: #fff; box-shadow: 0 0 10px #eee; }
.product__category-home .item .info .title { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -70%); padding: 10px 30px; text-align: center; color: #000000; font-size: 24px; text-transform: uppercase; line-height: 1.3; font-weight: var(--bs-body-font-weight-bold); width: 100%; margin: 0; }
.product__category-home .item .info i { position: absolute; top: 50%; left: 50%; transform: translate(-50%, 20px); font-size: 26px; margin: 0; }
.product__category-home .item img { margin-top: -30%; width: 80%; position: relative;}
.product__category-home .item:hover .info { border-radius: 50%; background-color: var(--bs-primary); color: #ffffff;}
.product__category-home .item:hover .info .title { color: #ffffff;}
.product__category-home .f-carousel__slide { width: 25%; padding: 0 16px;}
.product__category-home .f-carousel__nav .f-button { transition: all 0.2s ease-in-out; top: -40px !important; left: auto !important; width: auto; height: auto; background: none; color: var(--bs-primary); font-size: 30px; }
.product__category-home .f-carousel__nav .f-button:disabled { color: #cacaca; }
.product__category-home .f-carousel__nav .f-button.is-prev { right: 56px;}
.product__category-home .f-carousel__nav .f-button.is-next { right: 16px;}
.product__category-home .f-carousel__dots { display: none; }

.product__new-arrivals { padding: 50px 0;}
.product__new-arrivals .box-title { text-align: center; margin-bottom: 20px;}
.product__new-arrivals .box-title .title { font-size: 30px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 10px;}
.product__new-arrivals .box-title .desc { width: 700px; margin: 0 auto; max-width: 100%; color: #666;}
.product__new-arrivals .box-control { padding-top: 15px; text-align: center;}

.product__featured { padding: 70px 0 70px; background: url("../img/bg_product-fratured.jpg") no-repeat center center; background-size: cover;}
.product__featured .box-title { margin-bottom: 20px;}
.product__featured .box-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 40px; text-transform: uppercase; color: #ffffff;}
.product__featured .box-title .desc { width: 700px; max-width: 100%; color: #666;}
.product__featured .box-control { padding-top: 25px; text-align: center;}

.product__featured-tab { padding: 50px 0 70px;}
.product__featured-tab .box-title { text-align: center; margin-bottom: 20px;}
.product__featured-tab .box-title .title { font-size: 30px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 28px;text-transform: uppercase;}
.product__featured-tab .box-title .desc { width: 700px; margin: 0 auto; max-width: 100%; color: #666;}
.product__featured-tab .box-tabs { text-align: center; margin-bottom: 40px; display: flex; justify-content: center; flex-wrap: wrap;}
.product__featured-tab .box-tabs > * { margin: 0 5px 10px 5px; }
.product__featured-tab .box-tabs .tab-btn { background: transparent; border: 1px solid #ddd; padding: 5px 8px; font-size: 12px; font-weight: var(--bs-body-font-weight); color: #333; cursor: pointer; transition: all 0.3s ease-in-out; border-radius: 8px;}
.product__featured-tab .box-tabs .tab-btn:hover { border-color: var(--bs-primary); color: var(--bs-primary);}
.product__featured-tab .box-tabs .tab-btn.active { background: var(--bs-primary); border-color: var(--bs-primary); color: #ffffff;}
.product__featured-tab .box-control { padding-top: 25px; text-align: center;}
.product__featured-tab .tab-content { display: none; }
.product__featured-tab .tab-content.active { display: block; }

.product__bestseller{ margin-bottom: 30px;}
.product__bestseller .box-title { margin-bottom: 20px;}
.product__bestseller .box-title .title { font-size: 20px; font-weight: var(--bs-body-font-weight-bold); padding-bottom: 10px; text-transform: uppercase; position: relative;}
.product__bestseller .box-title .title:after { content: ""; height: 2px; width: 70px; background-color: var(--bs-primary); position: absolute; bottom: 0; left: 0;}
.product__bestseller .box-title .desc { display: none;}
.product__bestseller .product-card { display: flex; padding: 0 0 15px; box-shadow: none; margin-bottom: 15px; border-bottom: 1px solid #EEE;}
.product__bestseller .product-card > * { margin-right: 10px; }
.product__bestseller .product-card > *:last-child { margin-right: 0; }
.product__bestseller .product-card .image{ height: 80px; width: 80px; flex-shrink: 0; margin: 0 10px 0 0; box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);}
.product__bestseller .product-card .info { padding: 0;}
.product__bestseller .product-card .info .name { font-size: 14px; font-weight: var(--bs-body-font-weight-bold); text-transform: none; line-height: 1.5; margin: 0;}
.product__bestseller .product-card .info .price { margin: 5px 0 0; font-size: 16px;}
.product__bestseller .product-card .info .control { display: none;}
.product__bestseller .box-content .product-card:last-child{ border: 0; margin: 0;}

.product__other { padding: 70px 0 80px;}
.product__other .box-title { margin-bottom: 20px;}
.product__other .box-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bold); text-transform: uppercase; color: #231f20;}
.product__other .box-title .desc { width: 700px; max-width: 100%; color: #666;}
.product__other .box-content { margin: 0 -15px;}
.product__other .f-carousel__slide { width: 25%; padding: 0 15px;}
.product__other .f-carousel__nav .f-button { transition: all 0.2s ease-in-out; top: -40px !important; left: auto !important; width: auto; height: auto; background: none; color: var(--bs-primary); font-size: 30px; }
.product__other .f-carousel__nav .f-button:disabled { color: #cacaca; }
.product__other .f-carousel__nav .f-button.is-prev { right: 55px;}
.product__other .f-carousel__nav .f-button.is-next { right: 15px;}
.product__other .f-carousel__dots { display: none; }
.product__other .f-carousel .f-carousel__track { padding: 20px 0;}

.project__home { padding: 70px 0 80px; background-color: #f7f7f7;}
.project__home .box-title { margin-bottom: 40px;}
.project__home .box-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 10px; text-transform: uppercase; color: #231f20;}
.project__home .box-title .desc { width: 700px; max-width: 100%; color: #666;}
.project__home .box-content { margin: 0 -15px;}
.project__home .f-carousel__slide { width: 50%; padding: 0 15px;}
.project__home .f-carousel__nav .f-button { transition: all 0.2s ease-in-out; top: -40px !important; left: auto !important; width: auto; height: auto; background: none; color: var(--bs-primary); font-size: 30px; }
.project__home .f-carousel__nav .f-button:disabled { color: #cacaca; }
.project__home .f-carousel__nav .f-button.is-prev { right: 55px;}
.project__home .f-carousel__nav .f-button.is-next { right: 15px;}
.project__home .f-carousel__dots { display: none; }

.box__news-event { background-color: #ffffff; padding: 70px 0;}
.box__news-event .box-title { margin-bottom: 20px; text-align: center;}
.box__news-event .box-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 10px; color: #231f20;}
.box__news-event .box-title .desc { color: #666; font-size: 18px;}
.box__news-event .box-content { position: relative;}
.box__news-event .box-control { position: absolute; top: -60px; right: 0;}
.box__news-event .f-carousel__slide { width: 33.333%; padding: 20px;}
.box__news-event .f-carousel__dots { bottom: -20px;}
.box__news-event .f-carousel__nav .f-button.is-prev { right: auto; left: -40px;}
.box__news-event .f-carousel__nav .f-button.is-next { right: -40px; left: auto;}

.news__viewed{ margin-bottom: 40px;}
.news__viewed .box-title { margin-bottom: 20px;}
.news__viewed .box-title .title { font-size: 20px; font-weight: var(--bs-body-font-weight-bold); padding-bottom: 10px; text-transform: uppercase; position: relative;}
.news__viewed .box-title .title:after { content: ""; height: 2px; width: 70px; background-color: var(--bs-primary); position: absolute; bottom: 0; left: 0;}
.news__viewed .box-title .desc { display: none;}
.news__viewed .post-card { display: flex; gap: 10px; height: auto; padding: 0 0 15px; box-shadow: none; margin-bottom: 15px; border-bottom: 1px solid #EEE; border-radius: 0;}
.news__viewed .post-card .image{ width: 80px; display: flex; flex-shrink: 0; margin: 0 10px 0 0;}
.news__viewed .post-card .image img{ max-width: 100%; height: 60px; margin-top: 2px; }
.news__viewed .post-card .info{ padding: 0; text-align: left;}
.news__viewed .post-card .info .name { font-size: 14px; font-weight: var(--bs-body-font-weight-bold); text-transform: none; line-height: 1.5; margin: 0;}
.news__viewed .post-card .info .category { display: none;}
.news__viewed .post-card .info .desc { display: none;}
.news__viewed .post-card .info .date { display: none;}
.news__viewed .post-card .info .view { display: none;}
.news__viewed .box-content .post-card:last-child{ border: 0; margin: 0;}

.news__featured { background-color: var(--bs-bg-primary); position: relative; height: 34px; overflow: hidden; }
.news__featured .item{ display: flex; justify-content: space-between; align-items: center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; transition: opacity 0.8s ease-in-out; z-index: 1;}
.news__featured .item[style*="opacity: 1"] { z-index: 2; }
.news__featured .item .container{ display: flex; justify-content: space-between; align-items: center; height: 100%;}
.news__featured .item .text { flex: 1; min-width: 0; }
.news__featured .item .text a{ color: var(--bs-secondary); font-weight: var(--bs-body-font-weight-bold); font-size: 14px; display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;}
.news__featured .item .action a{ background-color: var(--bs-secondary); color: var(--bs-primary); display: inline-flex; align-items: center; justify-content: center; min-width: 200px; padding: 0 20px; text-transform: uppercase; height: 100%; font-size: 14px; font-weight: var(--bs-body-font-weight-bold); transition: all 0.3s ease 0ms;}
.news__featured .item .action a:after{font-family: var(--font-awesome);content: "\f105"; font-weight: 300; margin-left: -10px; margin-top: -1px; opacity: 0; transition: all 0.3s ease 0ms;}
.news__featured .item .action a:hover:after{ margin-left: 10px; opacity: 1;}

.form__default .form-group { margin-bottom: 20px;}
.form__default .form-label { font-weight: var(--bs-body-font-weight-semibold); font-size: 14px; margin-bottom: 7px; position: relative; padding-right: 12px;}
.form__default .form-label .required { color: #ff0000; font-size: 24px; font-weight: var(--bs-body-font-weight-bolder); position: absolute; right: 0; top: 0; margin: 0; line-height: 1;}
.form__default .form-element { position: relative; }
.form__default .form-element i { position: absolute; top: 0; left: 0; width: 30px; height: 100%; display: inline-flex; align-items: center; justify-content: center; font-size: 16px;}
.form__default textarea.form-control { resize: vertical; min-height: 100px; padding-top: 12px;}
.form__default .form-group.is-invalid .form-element { border-color: var(--bs-danger);}
.form__default .form-group.is-invalid .form-label { color: var(--bs-danger);}
.form__default .form-action { display: flex; align-items: center; justify-content: center; gap: 10px; padding-top: 20px; margin-top: 20px; border-top: 1px solid #eeeeee;}
.form__default .form-action .btn { text-transform: uppercase; }
.form__default .alert { text-align: center;}
.form__default .btn-close-modal{ display: none;}
.modal .form__default .btn-close-modal{ display: inline-flex;}

.box__form-register { padding: 30px 0 0; display: flex; background: linear-gradient(180deg,var(--bs-primary) 0%,rgba(var(--bs-primary-rgb),.17) 48%,rgba(255,255,255,0) 100%), url("../img/bg_register.jpg") no-repeat center center; background-size: cover;}
.box__form-register .box-title { margin-bottom: 50px;}
.box__form-register .box-title .title { font-size: 42px; color: var(--bs-primary); font-weight: var(--bs-body-font-weight-bold); line-height: 1;}
.box__form-register .box-title .desc { font-size: 18px; color: #636363; font-weight: var(--bs-body-font-weight-bold);}
.box__form-register .container{ width: auto; padding: 70px 100px;}
.box__form-register .form{ flex: 1; background-color: #ffffff; border-radius: 20px 0 0;}
.box__form-register .content { width: 33.3333%; padding: 70px 10px; color: #ffffff; text-align: center;}
.box__form-register .content .wrapper{ width: 400px; margin: 0 auto; max-width: 100%;}
.box__form-register .content .title { margin-bottom: 40px; padding-bottom: 20px; position: relative; font-size: 30px;}
.box__form-register .content .title:after { content: ""; position: absolute; bottom: 0; left: 50%; margin-left: -25px; width: 50px; height: 3px; background-color: var(--bs-secondary);}
.box__form-register .content .box-control{ margin-top: 30px; justify-content: center; border: 0; padding-top: 0;}
.box__form-register .content .btn{ border-radius: 0; text-transform: uppercase; border: 1px solid #ffffff; padding: 9px 20px 8px; font-size: 14px; height: auto;}
.box__form-register .content .ck-content{ line-height: 1.6; font-weight: var(--bs-body-font-weight-semibold);}
.box__form-register .form-action{ justify-content: flex-start;}

.box__feedback{ padding: 70px 0; background: linear-gradient(180deg,rgba(var(--bs-primary-rgb), 0.2) 0%,rgba(var(--bs-primary-rgb), 0.2) 100%), url("../img/bg_register.jpg") no-repeat center center; background-size: cover;}
.box__feedback .container{ width: var(--bs-container-sm-width); max-width: 100%;}
.box__feedback .box-title{ margin-bottom: 20px; color: #ffffff; text-align: center;}
.box__feedback .box-title .icon{ color: var(--bs-secondary); text-transform: uppercase; font-size: 60px; margin-bottom: 10px;}
.box__feedback .box-title .title{ color: var(--bs-secondary); text-transform: uppercase; font-size: 15px; margin-bottom: 10px;}
.box__feedback .box-title .desc{ font-size: 26px; font-weight: var(--bs-body-font-weight-bold);}
.box__feedback .item{ padding: 20px 10px; width: 800px; max-width: 100%; margin: 0 auto; text-align: center; color: #ffffff;}
.box__feedback .item .description{ font-size: 18px; font-weight: var(--bs-body-font-weight-semibold); line-height: 1.7; margin-bottom: 40px;}
.box__feedback .item .member{ display: inline-flex; gap: 10px;}
.box__feedback .item .member .image{ width: 60px; height: 60px; border-radius: 5px; overflow: hidden;}
.box__feedback .item .member .image img{ width: 100%; height: 100%; object-fit: cover;}
.box__feedback .item .member .info{ text-align: left; display: flex; flex-direction: column; justify-content: center;}
.box__feedback .item .member .info .name{ font-size: 16px; font-weight: var(--bs-body-font-weight-bold);}
.box__feedback .item .member .info .title{ font-size: 13px; font-style: italic;}
.box__feedback .f-carousel__dots { bottom: -20px;}
.box__feedback .f-carousel__nav .f-button.is-prev { right: auto; left: 40px; opacity: 0;}
.box__feedback .f-carousel__nav .f-button.is-next { right: 40px; left: auto; opacity: 0;}
.box__feedback .f-carousel__nav .f-button > i{ color: #999999; font-size: 40px;}
.box__feedback .f-carousel__nav .f-button:hover > i{ color: #ffffff;}
.box__feedback .f-carousel .f-carousel__dot{ width: 6px; height: 6px; background-color: #999999;}
.box__feedback .f-carousel .is-current .f-carousel__dot{ background-color: var(--bs-secondary);}
.box__feedback:hover .f-carousel__nav .f-button.is-prev { right: auto; left: -40px; opacity: 1;}
.box__feedback:hover .f-carousel__nav .f-button.is-next { right: -40px; left: auto; opacity: 1;}

.form__contact { border-radius: var(--bs-border-radius); box-shadow: 0 0 20px rgba(0, 0, 0, 0.05);}
.form__contact .box-title{ padding: 20px 20px 5px;}
.form__contact .box-title .title{ font-size: 20px; margin: 0;}
.form__contact .box-content{ padding: 20px 20px 30px;}

.form__search{ margin-bottom: 30px;}
.form__search .btn{ }

.form__subscribe .form-title{ text-align: center; margin-bottom: 30px;}
.form__subscribe .form-title .title{ font-size: 26px;}
.form__subscribe .form-action{ justify-content: flex-end;}

.box__footer { padding: 50px 0 20px; background: linear-gradient(180deg,rgba(var(--bs-primary-rgb),.86) 0%,rgba(var(--bs-primary-rgb),.39) 100%),url('../img/bg_footer.png') no-repeat center bottom; background-size: cover; color: #ffffff;}
.box__footer .box-header { width: var(--bs-container-lg-width); max-width: 100%; margin: 0 auto 40px; display: flex; align-items: center; gap: 80px;}
.box__footer .box-header .logo { width: 250px;}
.box__footer .box-header .logo img { max-width: 100%; max-height: 80px;}
.box__footer .box-header .search { flex: 1;}
.box__footer .box-header .search .input-group .form-control { border-radius: 40px; background-color: #ffffff; border: 0; font-size: 16px; padding-left: 20px; }
.box__footer .box-header .search .input-group .input-group-text { border-radius: 40px; background-color: #ffffff; border: 0;}
.box__footer .box-info { width: var(--bs-container-md-width); max-width: 100%; margin: 0 auto 40px; padding: 20px 0; background-color: rgba(var(--bs-primary-rgb), 0.9); border: 1px solid #c1cfde; border-radius: 6px;}
.box__footer .box-info .item{ border-left: 1px solid #c1cfde; padding: 0 30px; display: flex; flex-direction: column; margin: 15px 0;}
.box__footer .box-info .item .title{ font-weight: var(--bs-body-font-weight-semibold); font-size: 16px; margin-bottom: 10px;}
.box__footer .box-info .item .title i{ color: var(--bs-secondary); margin-right: 5px;}
.box__footer .box-info .item .content{ font-size: 13px;}
.box__footer .box-info .item .content p{ margin: 0;}
.box__footer .box-info .item .content a{ color: var(--bs-secondary);}
.box__footer .box-info .row .col-12:first-child .item{ border: 0;}
.box__footer .box-menu { width: var(--bs-container-md-width); max-width: 100%; margin: 0 auto;}
.box__footer .box-bocongthuong { display: flex; gap: 30px; justify-content: center; align-items: center;}
.box__footer .box-bocongthuong img { max-height: 50px;}
.box__footer .box-subscribe .box-title { font-size: 18px; font-weight: var(--bs-body-font-weight-semibold); padding: 5px; text-align: center; margin-bottom: 15px;}
.box__footer .box-subscribe .box-content { text-align: center; margin-bottom: 20px; font-size: 14px;}
.box__footer .box-subscribe .box-content .btn { margin-top: 10px;}
.box__footer .social { margin-top: 20px; margin-bottom: 30px;}
.box__footer .social .label { margin-bottom: 10px;}
.box__footer .social .link { display: flex; align-items: center;}
.box__footer .social .link > * { margin-right: 15px; }
.box__footer .social .link > *:last-child { margin-right: 0; }
.box__footer .social .link a { display: inline-flex; width: 40px; height: 40px; justify-content: center; align-items: center; font-size: 18px; background-color: rgba(255, 255, 255, .1);}
.box__footer .box-title { font-weight: var(--bs-body-font-weight); margin-bottom: 25px; font-size: 24px;}
.box__footer .box-content { margin-bottom: 30px;}
.box__footer .box-content.company { width: 80%; }
.box__footer .box-content .item { margin-bottom: 15px; display: flex; font-size: 12px; color: #ddd; line-height: 1.6;}
.box__footer .box-content .item i { width: 30px; margin-top: 3px; font-size: 16px;}
.box__footer .box-content .item span { font-weight: normal; flex: 1;}
.box__footer a { color: #ffffff;}
.box__footer a:hover { color: var(--bs-secondary);}
.box__footer .copyright { padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.2); font-size: 12px; color: #999; line-height: 1.6;}

.box__copyright { padding: 10px 0; background-color: var(--bs-primary); color: #ffffff; font-size: 13px; font-weight: var(--bs-body-font-weight-semibold);}
.box__copyright p:last-child{ margin: 0;}
.box__copyright a{ color: #ffffff;}
.box__copyright .social .link { display: flex; align-items: center; justify-content: flex-end; gap: 10px;}
.box__copyright .social .link a { display: inline-flex; width: 30px; height: 30px; justify-content: center; align-items: center; font-size: 16px; background-color: rgba(255, 255, 255, .1); border-radius: 5px;}
.box__copyright .social .link a:hover{ background-color: rgba(255, 255, 255, 0.3);}

.btn-to-top { position: fixed; z-index: 1001; right: 25px; bottom: 162px; background-color: rgba(var(--bs-primary-rgb)); display: inline-flex; width: 40px; height: 40px; padding: 0; justify-content: center; align-items: center; color: #ffffff; font-size: 16px; border-radius: 50%;}
.btn-to-top:hover { background-color: rgba(var(--bs-primary-rgb), 0.8); color: #ffffff;}

.breadcrumbs ul { margin: 0; padding: 0; list-style: none; display: flex; }
.breadcrumbs ul li { color: #000000; font-size: 16px; font-weight: var(--bs-body-font-weight-semibold); padding: 0 8px 0 0;}
.breadcrumbs ul li:before { content: "/"; padding-right: 5px; font-weight: normal;}
.breadcrumbs ul li:first-child:before { display: none;}
.breadcrumbs ul li a { color: #000; font-weight: normal; font-size: 16px;}

.related__posts{ margin-top: 50px; padding-top: 50px; border-top: 1px solid #EEE;}
.related__posts .box-title{ margin-bottom: 30px;}
.related__posts .box-title .title{ font-size: 36px; font-weight: var(--bs-body-font-weight-bold); text-transform: uppercase;}
.related__posts .post-card{ padding: 15px;}
.related__posts .post-card .image img{ height: 200px; object-fit: cover;}

.related__products{ margin-top: 50px;}
.related__products .box-title{ margin-bottom: 30px;}
.related__products .box-title .title{ font-size: 36px; font-weight: var(--bs-body-font-weight-bold); text-transform: uppercase;}

.viewed__products{ margin-top: 50px;}
.viewed__products .box-title{ margin-bottom: 30px;}
.viewed__products .box-title .title{ font-size: 36px; font-weight: var(--bs-body-font-weight-bold); text-transform: uppercase;}

.page__default { padding: 0;}
.page__default .page-title { margin-bottom: 30px;}
.page__default .page-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bold); }
.page__default .page-banner { padding: 50px 0; background: linear-gradient(180deg, rgba(var(--bs-primary-rgb), 0.8) 0%, rgba(var(--bs-primary-rgb), 0.8) 100%), url(../img/bg_footer.png) no-repeat center bottom; background-size: cover; min-height: 300px; align-content: center; position: relative;}
.page__default .page-banner .page-title{ margin: 0; text-align: center;}
.page__default .page-banner .page-title .title { color: #ffffff; font-size: 30px; text-transform: uppercase; margin: 15px 0;}
.page__default .page-banner .breadcrumbs ul{ justify-content: center;}
.page__default .page-banner .breadcrumbs ul li { color: #ffffff; font-weight: normal;}
.page__default .page-banner .breadcrumbs ul li a { color: #ffffff;}
.page__default .page-content { padding: 50px 0; }
.page__default .page-breadcrumbs { background: #f7f7f7; padding: 10px 0;}

.page__post-detail .page-title { margin-bottom: 30px;}
.page__post-detail .page-title .sub-title { display: flex; align-items: center; margin-top: 10px;}
.page__post-detail .page-title .sub-title > * { margin-right: 20px; }
.page__post-detail .page-title .sub-title > *:last-child { margin-right: 0; }
.page__post-detail .page-title .sub-title .date { color: #999; margin-top: 3px;}
.page__post-detail .page-title .sub-title .share { display: flex; align-items: center;}
.page__post-detail .page-title .sub-title .share > * { margin-right: 8px; }
.page__post-detail .page-title .sub-title .share > *:last-child { margin-right: 0; }
.page__post-detail .page-title .sub-title .share a { display: inline-flex; width: 26px; height: 26px; align-items: center; justify-content: center; color: #ffffff; background-color: var(--bs-primary); border-radius: 50%;}
.page__post-detail .ck-banner { margin-bottom: 30px;}
.page__post-detail .ck-description { margin-bottom: 30px; text-align: justify;}
.page__post-detail .ck-content { text-align: justify; position: relative;}

.page-pagination { margin: 30px 0;}

.read-more-wrapper { position: relative; overflow: hidden; transition: max-height 0.4s ease; }
.read-more-wrapper .read-more-overlay { position: absolute; bottom: 0; left: 0; right: 0; height: 120px; background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%); display: flex; align-items: flex-end; justify-content: center; transition: opacity 0.3s ease;}
.read-more-wrapper .btn-read-more { padding: 8px 15px;cursor: pointer;transition: all 0.3s ease;display: inline-flex;align-items: center;gap: 8px;height: auto;font-weight: var(--bs-body-font-weight-semibold);}
.read-more-wrapper .btn-read-more:hover {background: #f8f9fa;border-color: #bbb;}
.read-more-wrapper .btn-read-more i { font-size: 12px; }
.read-more-wrapper.expanded { max-height: none !important; }
.read-more-wrapper.expanded .read-more-overlay { position: relative; height: auto; background: none; padding-top: 20px;}

.box__right-fixed {position: fixed;bottom: 30px;right: 20px;z-index: 1000;display: flex;flex-direction: column;gap: 20px;align-items: flex-end;}
.box__right-fixed .item {display: flex;align-items: center;gap: 15px;cursor: pointer;transition: transform 0.3s ease;}
.box__right-fixed .item:hover {transform: translateX(-5px);}
.box__right-fixed .label {background: #fff;padding: 12px 20px;border-radius: 30px;box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);font-size: 15px;font-weight: 500;color: #333;white-space: nowrap;order: 1;}
.box__right-fixed .icon {width: 48px;height: 48px;background: var(--bs-primary);border-radius: 50%;display: flex;align-items: center;justify-content: center;position: relative;order: 2;box-shadow: 0 4px 12px rgba(var(--bs-primary-rgb), 0.4);}
.box__right-fixed .icon img {width: 30px;height: 30px;object-fit: contain;}
.box__right-fixed .icon i {color: #fff;font-size: 24px;}
.box__right-fixed .icon::before,
.box__right-fixed .icon::after {content: '';position: absolute;top: 50%;left: 50%;transform: translate(-50%, -50%);width: 100%;height: 100%;border: 2px solid var(--bs-primary);border-radius: 50%;opacity: 0;animation: ring-pulse 2s ease-out infinite;}
.box__right-fixed .icon::after {animation-delay: 1s;}

@keyframes ring-pulse {
	0% {width: 100%;height: 100%;opacity: 0.8;}
	100% {width: 140%;height: 140%;opacity: 0;}
}

@media (min-width: 1200px) {
	.container-sm {
		max-width: var(--bs-container-sm-width);
	}
	.container-md {
		max-width: var(--bs-container-md-width);
	}
}

@media (min-width: 1400px) {
	.container-lg {
		max-width: var(--bs-container-lg-width);
	}
	.container-xl {
		max-width: var(--bs-container-xl-width);
	}
}

@media (min-width: 1600px) {
	.container-xxl {
		max-width: var(--bs-container-xxl-width);
	}
}

@media (min-width: 1900px) {
	.container-xxl {
		max-width: var(--bs-container-xxl-width);
	}
}

@media (max-width: 1513.98px) {
    .product-card .image{ height: 240px;}
}

/* `xxl` applies to x-large devices (large desktops, less than 1400px) */
@media (max-width: 1399.98px) {
	.product-card{ padding: 15px;}
	.product-card .info .control .btn{ font-size: 13px; padding-left: 12px; padding-right: 12px;}
	.product-card .image{ height: 230px;}

	.product-category-card{ padding: 15px;}
	.product-category-card .image{ height: 180px;}
	.product-category-card .info .name{ line-height: 1.5; min-height: 48px;}

	.post-card{ padding: 15px;}

	.box__slider .f-carousel .f-carousel__nav .f-button{ font-size: 28px;}
	.box__slider .f-carousel .f-carousel__nav .is-next{ right: 5px;}
	.box__slider .f-carousel .f-carousel__nav .is-prev{ left: 5px;}
	.box__slider .f-carousel .f-carousel__dots .f-carousel__dot{ width: 40px;}

	.product__category-home .f-carousel__slide{ width: 25%;}
	.product__category-home .item .info .title{ font-size: 20px;}
	.product__category-home .item .info i { font-size: 22px; }
}

/* `xl` applies to large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {
	.slider__partners .f-carousel__slide { width: 25%; }
}

/* `lg` applies to medium devices (tablets, less than 992px) */
@media (max-width: 991.98px) {

}

/* `md` applies to small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
	.f-carousel .f-carousel__dots { bottom: -25px;}
	.f-carousel .f-carousel__dot { width: 8px; height: 8px;}
	.f-carousel .is-current .f-carousel__dot { width: 8px; height: 8px;}
	.f-carousel__dots li button { width: 16px; height: 16px;}
	
	.form__default .form-action{ border: 0; padding-top: 0;}

	.product-card { padding: 10px;}
	.product-card .image { height: 180px;}
	.product-card .info { padding-bottom: 0;}
	.product-card .info .name { font-size: 14px;}
	.product-card .info .price { display: block;}
	.product-card .info .price .price-sale { display: block;}
	.product-card .info .price .price-regular { display: block;}
	.product-card .info .control { justify-content: center;}
	.product-card .info .btn-detail { display: none;}

	.post-card { padding: 20px;}
	.post-card .image img { height: auto;}

	.project-card .info { padding: 20px;}

	.breadcrumbs ul li:nth-child(n+3) {display: none;}
	
	.header__top .box-content{ padding: 10px 0;}
	.header__top .open-menu-mobile{ flex: 1; font-size: 28px;}
	.header__top .logo{ flex: 1;}
	.header__top .contact{ flex: 1; justify-content: flex-end; gap: 10px;}
	.header__top .contact .item{ font-size: 16px; justify-content: center; width: 30px; height: 30px; border-radius: 50%; border: 1px solid #eeeeee;}
	.header__top .contact .item span{ display: none;}
	
	.header__menu{ display: none;}
	
	.menu__footer > ul{ display: flex; flex-wrap: wrap; margin: 0 -5px;}
	.menu__footer > ul > li{ width: 50%; padding: 0 5px; margin-bottom: 10px;}
	
	.menu__policy > ul{ display: flex; flex-wrap: wrap; margin: 0 -5px;}
	.menu__policy > ul > li{ width: 50%; padding: 0 5px; margin-bottom: 10px;}
	
	.sidebar__left{ margin-top: 40px;}
	
	.box__slider{ height: auto;}
	.box__slider .f-carousel{ position: relative; height: auto;}
	.box__slider .f-carousel .f-carousel__nav { display: none;}
	.box__slider .f-carousel .f-carousel__dots{ bottom: 20px;}
	.box__slider .f-carousel .f-carousel__track{ height: auto;}
	.box__slider .item{ padding: 50px 0;}
	.box__slider .item p{ line-height: 1.3;}
	
	.news__featured .item{ justify-content: center;}
	.news__featured .item .text{ text-align: center;}
	.news__featured .action{ display: none;}
	
	.box__result{ padding: 30px 20px; margin: 10px; width: auto;}
	.box__result .box-content{ display: block; gap: 0;}
	.box__result .number{ margin-bottom: 20px;}
	.box__result .content{ margin-bottom: 20px;}
	.box__result .content ul{ margin-bottom: 30px;}
	.box__result .action{ margin: 0; display: block; text-align: center; }
	.box__result .action .btn{ border-radius: 24px;}

	.box__about-us { padding: 50px 0 30px;}
	
	.box__success-stories .box-title .title{ font-size: 15px; line-height: 1.3;}
	.box__success-stories .box-more{ gap: 5px; margin-top: 20px;}
	
	.box__form-register{ display: block; padding: 0 15px 50px;}
	.box__form-register .content{ width: auto; padding: 0 0 30px;}
	.box__form-register .form{ margin: 0; border-radius: 20px;}
	.box__form-register .container{ padding: 15px;}
	.box__form-register .box-title{ margin-bottom: 20px;}

	.box__news-event { padding: 50px 0 80px;}
	.box__news-event .box-control { display: none;}
	.box__news-event .box-title .title { font-size: 30px;}
	.box__news-event .f-carousel__slide{ width: 100%; padding: 10px;}
	.box__news-event .f-carousel__nav{ display: none;}
	
	.box__feedback .f-carousel__nav{ display: none;}
	
	.product__featured { background: none; padding: 50px 0; border-bottom: 1px solid #eee;}
	.product__featured .box-title .title { color: var(--bs-primary); font-size: 34px;}

	.product__category-home { padding: 50px 0;}
	.product__category-home .box-title { margin-bottom: 30px;}
	.product__category-home .box-title .title { font-size: 26px; width: 50%;}
	.product__category-home .f-carousel__slide { width: 50%;}
	.product__category-home .f-carousel__nav .f-button { top: -50px !important;}
	.product__category-home .f-carousel__nav .f-button.is-next { right: 15px;}
	.product__category-home .f-carousel__nav .f-button.is-prev { right: 55px;}
	.product__category-home .item .info .title { font-size: 14px; padding: 5px 10px;}
	.product__category-home .item .info i { font-size: 18px; transform: translate(-50%, 10px); }
	.product__category-home .item img { margin-top: -25%; }
	.product__category-home .box-content { margin: 0 -10px;}

	.product__other .box-title .title { font-size: 32px; width: 50%;}
	.product__other .box-content { margin: 0 -10px;}
	.product__other .f-carousel__slide { width: 50%;}

	.project__home { padding: 50px 0 20px;}
	.project__home .box-title { margin-bottom: 30px;}
	.project__home .box-title .title { font-size: 30px; width: 60%;}
	.project__home .box-content { margin: 0 -10px;}
	.project__home .f-carousel { margin: 0;}
	.project__home .f-carousel__slide { width: 100%;}

	.slider__partners { padding: 50px 0;}
	.slider__partners .box-title .title { font-size: 30px;}
	.slider__partners .f-carousel__slide { width: 50%; }
	.slider__partners .f-carousel__nav .f-button.is-next { right: 10px;}
	.slider__partners .f-carousel__nav .f-button.is-prev { right: 50px;}

	.box__form-register .box-title .title { font-size: 26px;}

	.box__footer { padding: 50px 0 30px;}
	.box__footer .box-header{ display: block; text-align: center;}
	.box__footer .box-header .logo{ width: auto; margin-bottom: 30px;}
	.box__footer .box-info{ display: block;}
	.box__footer .box-info .item{ border: 0;}
	
	.box__copyright{ text-align: center;}
	.box__copyright .social .link{ justify-content: center; margin-top: 5px;}

	.btn-to-top { bottom: 145px; right: 25px;}

	.related__posts .box-title .title{ font-size: 32px;}
	.related__posts .post-card .image img { height: auto;}

	.related__products .box-title .title{ font-size: 32px;}

	.page__default .page-banner { padding: 50px 0; background-size: cover; min-height: 200px;}
	.page__default .page-banner .page-title .title { width: 100%; font-size: 34px;}
	.page__default .page-title .title { font-size: 20px;}

    .page__product-detail .page-content{ padding-top: 15px;}

	.box__right-fixed {bottom: 20px;right: 20px;gap: 12px;}
	.box__right-fixed .icon {width: 50px;height: 50px;}
	.box__right-fixed .icon img {width: 26px;height: 26px;}
	.box__right-fixed .icon i {font-size: 20px;}
	.box__right-fixed .label {padding: 10px 16px;font-size: 14px;}
}

/* `sm` applies to x-small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {
}

