:root {
	--bs-bg-primary: linear-gradient(135deg, #ed1c24, #af1517);
	--bs-primary: #ed1c24;
	--bs-primary-hover: #af1517;
	--bs-primary-rgb: 180, 30, 32;
	--bs-secondary: #f4a701;
	--bs-secondary-hover: #fdb20c;
	--bs-secondary-rgb: 244, 167, 1;
	--bs-font-sans-serif: "Montserrat", sans-serif;
	--bs-body-font-family: "Montserrat", sans-serif;
	--bs-body-font-weight: 400;
	--bs-body-font-weight-semibold: 500;
	--bs-body-font-weight-bold: 600;
	--bs-body-font-weight-bolder: 700;
	--bs-body-font-weight-light: 400;
	--bs-body-font-weight-lighter: 300;
	--bs-body-color: #151617;
	--fancybox-zIndex: 9999;
	--bs-control-height: 44px;
	--bs-btn-height: 44px;
	--bs-body-font-size: 16px;
	--bs-border-radius: 10px;
	--font-awesome: "Font Awesome 6 Pro";
}

.btn-primary {background: var(--bs-primary);
	padding-left: 32px;
	padding-right: 32px;
	font-size: 18px;
	border-radius: 24px;
}
.btn-primary:focus,
.btn-primary:active,
.btn-primary:hover {
	background: var(--bs-primary-hover);
}

.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-bolder);
}
.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;
}
.btn-secondary:hover { background: var(--bs-secondary-hover); }

.form-control-file {
	line-height: 40px;
}

a { color: var(--bs-primary); }
a:hover { color: var(--bs-primary-hover); }
img { max-width: 100%; height: auto; }
button { transition: all 0.3s ease-in-out; }

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

.pagination { margin-top: 30px;}

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

.f-carousel .f-carousel__track { height: auto;}
.f-carousel .f-carousel__viewport { height: auto; min-height: 10px;}
.f-carousel .f-progress { display: none;}
.f-carousel .f-carousel__dots { bottom: 20px; gap: 5px; }
.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__slide img { width: 85%;}
.f-carousel .f-carousel__nav .f-button { background-color: rgba(0, 0, 0, 0.8); color: #ffffff;}
.f-carousel .f-carousel__nav .f-button > * { pointer-events: none;}
.f-carousel .f-carousel__dot { width: 12px; height: 12px; transition: all 0.3s ease-in-out;}
.f-carousel .is-current .f-carousel__dot { background-color: var(--bs-primary);}
.f-carousel.has-dots { margin: 0;}

.post-card { background-color: #ffffff; padding: 30px; box-shadow: 0 0 20px rgba(0, 0, 0, 0.1); transition: all 0.2s ease-in-out;}
.post-card .image { display: block; overflow: hidden; margin-bottom: 20px;}
.post-card .image img { width: 100%; transition: all 0.2s ease-in-out;}
.post-card .info { background-color: #ffffff;}
.post-card .info .category { margin-bottom: 10px; display: none;}
.post-card .info .category a { font-size: 14px; color: #999;}
.post-card .info .name { margin-bottom: 15px; font-size: 18px; text-transform: uppercase; font-weight: var(--bs-body-font-weight-bolder); color: #302f2f; display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; line-height: 1.4; min-height: calc(1.4em * 3); max-height: calc(1.4em * 3);}
.post-card .info .name a { color: #222;}
.post-card .info .name a:hover { color: var(--bs-primary);}
.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; min-height: calc(1.4em * 3); max-height: calc(1.4em * 3);}
.post-card .info .date { font-size: 14px; color: #999; align-items: center; gap: 5px; margin-top: 15px; display: none;}
.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 { display: inline-flex; margin-top: 20px; gap: 5px; align-items: center;}
.post-card .info .view span { line-height: 1; text-transform: uppercase; font-weight: var(--bs-body-font-weight-bolder); font-size: 16px;}
.post-card:hover { box-shadow: 0 0 20px rgba(0, 0, 0, 0.2);}
.post-card:hover .image img { 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 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; gap: 10px; justify-content: center; align-items: center; opacity: 0; transition: all 0.2s ease-in-out;}
.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-bolder);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-bolder); font-size: 20px; color: #ed1c24; display: inline-flex; align-items: flex-end; gap: 10px; margin-bottom: 20px;}
.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 { 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 { 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; gap: 10px;}
.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;}

.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 { 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; gap: 10px;}
.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;}

.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: #231f20; padding: 20px 20px; font-size: 16px; font-weight: var(--bs-body-font-weight-bolder); text-transform: uppercase; }
.menu__main > ul > li > a span { display: block; padding: 5px 0; position: relative;}
.menu__main > ul > li > a span:after { content: ""; position: absolute; display: block; height: 2px; width: 0; bottom: 0; left: 0; background-color: #ed1c24; transition: width 0.3s ease-in-out;}
.menu__main > ul > li > a > .arrow:after { content: "\f107"; font-family: var(--font-awesome); font-weight: 400; display: none;}
.menu__main > ul > li:hover > a span:after { width: 100%;}
.menu__main > ul > li.active > a span:after { width: 100%;}
.menu__main .submenu { display: none; position: absolute; top: 100%; left: 0; min-width: 220px; 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; }
.menu__main .submenu li { position: relative; }
.menu__main .submenu li a { display: flex; align-items: center; color: #000; font-size: 14px; padding: 5px 20px; white-space: nowrap; font-weight: normal; 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 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 { background-color: #d9d9d9; }
/* .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__mobile_toggle { padding: 3px 5px; border: 1px solid rgba(255, 255, 255, 0.5); border-radius: 5px; font-size: 20px; color: rgba(255, 255, 255, 0.8);}
.menu__mobile .offcanvas-body { position: relative; overflow: hidden; padding: 0 var(--bs-offcanvas-padding-x); }
.menu__mobile .offcanvas-body ul { list-style: none; margin: 0; padding: 0; }
.menu__mobile .offcanvas-body > ul > li > a { text-transform: uppercase; font-weight: var(--bs-body-font-weight-bold); color: #333; font-size: 15px; }
.menu__mobile ul li a { display: flex; padding: 8px 0; gap: 5px; align-items: flex-start; justify-content: space-between; color: #333; }
.menu__mobile ul li a .arrow { font-size: 16px; margin-top: 3px; 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; margin-left: 15px; overflow: hidden;}
.menu__mobile ul li.active > a .arrow { transform: rotateX(180deg);}

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

.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 {background: #fff; margin-bottom: 30px;}
.menu__sidebar .box-title { position: relative; padding-bottom: 5px;}
.menu__sidebar .box-title:after { content: ""; position: absolute; left: 0; bottom: 0; width: 70px; height: 2px; background-color: var(--bs-primary);}
.menu__sidebar .box-title .title {font-size: 20px; font-weight: var(--bs-body-font-weight-bolder); color: #000; text-transform: uppercase;}
.menu__sidebar .box-content { padding: 10px 0;}
.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 {transform: rotate(90deg);}
.menu__sidebar li.active > a .arrow::before {color: var(--bs-primary);}
.menu__sidebar .submenu {padding-left: 10px;display: none;margin-top: 5px;margin-bottom: 5px;}
.menu__sidebar li.open > .submenu {display: block;}

.header__top { background: var(--bs-bg-primary); color: #ffffff;}
.header__top .hotline { display: inline-flex; gap: 5px; align-items: center; height: 44px; }
.header__top .hotline i { font-size: 20px;}
.header__top .social { display: inline-flex; gap: 10px; align-items: center; }
.header__top .social .brand { font-size: 20px; display: flex; gap: 10px; align-items: center; }
.header__top .social .brand a { color: #ffffff;width: 30px;height: 30px;display: inline-flex;border: 1px solid #eee;border-radius: 50%;justify-content: center;align-items: center; }
.header__top .social .brand a:hover { background-color: rgba(255, 255, 255, 0.2); }
.header__top .social .brand i { font-size: 14px;}
.header__top a { color: #ffffff;}
.header__top a:hover { color: var(--bs-secondary);}

.header__menu { padding: 10px 0; border-bottom: 1px solid #eee;}
.header__menu .logo { margin: 0;}
.header__menu .logo img { max-height: 65px; }
.header__menu .control { display: inline-flex; align-items: center; gap: 25px;}
.header__menu .control a { color: #444444;}
.header__menu .control a:hover { color: #000000; }
.header__menu .control i { font-size: 22px;}
.header__menu .control .cart { position: relative;}
.header__menu .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; }

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

.slider__main { position: relative; background: url("../img/bg_slide.jpg") no-repeat center center; background-size: cover; }
.slider__main .banner { width: 100%; }
.slider__main .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; }
.slider__main .item { padding: 100px 0; color: #ffffff; min-height: 800px; }
.slider__main .item .name { font-size: 24px; font-weight: var(--bs-body-font-weight-bolder); margin-bottom: 20px; }
.slider__main .item .description { font-size: 42px; font-weight: var(--bs-body-font-weight-bolder); margin-bottom: 40px; line-height: 1.2; }
.slider__main .item .image { text-align: center;}
.slider__main .item .btn { color: #ffffff; border: 1px solid #ffffff; font-size: 14px; text-transform: uppercase; font-weight: var(--bs-body-font-weight-bolder); padding: 10px 30px; border-radius: 30px;}
.slider__main .f-carousel .f-carousel__nav .f-button { width: auto; height: 50px; background: transparent; font-size: 34px; color: rgba(255, 255, 255, 0.6);}
.slider__main .f-carousel .f-carousel__nav .f-button:hover { color: rgba(255, 255, 255, 1); }
.slider__main .f-carousel .f-carousel__nav .is-prev { left: 50px; right: auto;}
.slider__main .f-carousel .f-carousel__nav .is-next { left: auto; right: 50px;}
.slider__main .f-carousel .f-carousel__dots { bottom: 50px; }
.slider__main .f-carousel .f-carousel__dots .f-carousel__dot { width: 60px; height: 3px; border-radius: 3px; background: rgba(255, 255, 255, 0.3)}
.slider__main .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-bolder);}
.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; }

.meta__model { padding: 70px 0 0;}
.meta__model .box-title { text-align: center; margin-bottom: 20px;}
.meta__model .box-title .title { font-size: 30px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 28px;text-transform: uppercase;}
.meta__model .box-title .desc { width: 700px; margin: 0 auto; max-width: 100%; color: #666;}
.meta__model .box-content { border-bottom: 1px solid #eee; padding: 30px 0 50px; text-align: center;}
.meta__model .box-content img { width: 1000px; max-width: 100%;}

.meta__about-us { padding: 70px 0; }
.meta__about-us .box-banner { margin-bottom: 50px;}
.meta__about-us .box-title { margin-bottom: 20px;}
.meta__about-us .box-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bolder); text-transform: uppercase; color: #231f20; margin-bottom: 20px; line-height: 1.2;}
.meta__about-us .box-title .desc { font-size: 16px; font-weight: var(--bs-body-font-weight-bolder); text-transform: uppercase; color: #231f20; margin-bottom: 10px; line-height: 1.5;}
.meta__about-us .box-content { position: relative;}
.meta__about-us .box-control { position: absolute; top: -100px; right: 0;}
.meta__about-us .content { font-size: 16px; color: #231f20; line-height: 1.8;}
.meta__about-us .item { margin-left: 70px; display: flex; align-items: center; gap: 30px; background: #fff; color: #231f20; padding: 25px 30px; margin-bottom: 25px; border-radius: 12px; box-shadow: 0 2px 15px rgba(0, 0, 0, 0.08); transition: all 0.3s ease-in-out;}
.meta__about-us .item:hover { box-shadow: 0 2px 15px rgba(0, 0, 0, 0.2);}
.meta__about-us .item .image { flex-shrink: 0; width: 60px; height: 60px; display: flex; align-items: center; justify-content: center;}
.meta__about-us .item .image img { width: 100%; height: auto; object-fit: contain;}
.meta__about-us .item .name { flex: 1; font-size: 16px; font-weight: var(--bs-body-font-weight-bolder); line-height: 1.5;}

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

.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-bolder);}
.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 { height: 304px; width: 100%; transition: all 0.2s ease-in-out; display: flex; flex-direction: column; justify-content: center; align-items: center; background-color: #fff; box-shadow: 0 0 10px #eee; }
.product__category-home .item .info .title { 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-bolder);}
.product__category-home .item .info i { font-size: 26px;}
.product__category-home .item img { margin-top: -110px; width: 80%;}
.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: 336px; 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: 40px;}
.product__category-home .f-carousel__nav .f-button.is-next { right: 0;}
.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; gap: 10px; flex-wrap: wrap;}
.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-bolder); 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; gap: 10px; padding: 0 0 15px; box-shadow: none; margin-bottom: 15px; border-bottom: 1px solid #EEE;}
.product__bestseller .product-card .image{ height: 80px; width: 80px; flex-shrink: 0; margin: 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.3; margin: 0;}
.product__bestseller .product-card .info .price { margin: 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__featured { padding: 70px 0 80px; background-color: #f7f7f7;}
.project__featured .box-title { margin-bottom: 40px;}
.project__featured .box-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 10px; text-transform: uppercase; color: #231f20;}
.project__featured .box-title .desc { width: 700px; max-width: 100%; color: #666;}
.project__featured .box-content { margin: 0 -15px;}
.project__featured .f-carousel__slide { width: 50%; padding: 0 15px;}
.project__featured .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__featured .f-carousel__nav .f-button:disabled { color: #cacaca; }
.project__featured .f-carousel__nav .f-button.is-prev { right: 55px;}
.project__featured .f-carousel__nav .f-button.is-next { right: 15px;}
.project__featured .f-carousel__dots { display: none; }

.news__event { background-color: #ffffff; padding: 70px 0;}
.news__event .box-title { margin-bottom: 40px;}
.news__event .box-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bold); margin-bottom: 10px; text-transform: uppercase; color: #231f20;}
.news__event .box-title .desc { width: 700px; max-width: 100%; color: #666;}
.news__event .box-content { position: relative;}
.news__event .box-control { position: absolute; top: -60px; right: 0;}

.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-bolder); 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; padding: 0 0 15px; box-shadow: none; margin-bottom: 15px; border-bottom: 1px solid #EEE;}
.news__viewed .post-card .image{ width: 80px; display: flex; flex-shrink: 0; margin: 0;}
.news__viewed .post-card .image img{ max-width: 100%; max-height: 100%; margin-top: 2px; }
.news__viewed .post-card .info .name { font-size: 14px; font-weight: var(--bs-body-font-weight-bold); text-transform: none; line-height: 1.3; 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;}

.form__default .form-group { margin-bottom: 20px;}
.form__default .form-element { position: relative; display: flex; border: 1px solid var(--bs-border-color); border-radius: var(--bs-border-radius); padding: 0; }
.form__default .form-element i { margin: 13px 10px; font-size: 16px;}
.form__default .form-label { position: absolute; left: 36px; top: 12px; font-weight: normal; pointer-events: none; transition: all 0.3s ease; font-size: 16px;}
.form__default .form-label .required { color: var(--bs-danger);}
.form__default .form-control { flex: 1; border: 0; border-radius: 0; background: transparent; padding: 0; outline: none;}
.form__default textarea.form-control { resize: vertical; min-height: 100px; padding-top: 12px;}
.form__default .form-control::placeholder { color: transparent;}
.form__default .form-control:focus ~ .form-label,
.form__default .form-control:not(:placeholder-shown) ~ .form-label { top: -10px; left: 5px; font-size: 14px; padding: 0 3px; background-color: #ffffff;}
.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 .box-control { display: flex; justify-content: center; padding-top: 10px;}
.form__default .box-control .btn { border-radius: var(--bs-border-radius); text-transform: uppercase; font-weight: var(--bs-body-font-weight-semibold);}
.form__default .alert { text-align: center;}

.form__register { padding: 70px 0; background: url("../img/bg_register.jpg") no-repeat center center; background-size: cover;}
.form__register .box-wrapper { width: 900px; margin: 0 auto; max-width: 100%;}
.form__register .box-title { text-align: center; margin-bottom: 50px;}
.form__register .box-title .title { font-size: 40px; color: #ffffff; margin-bottom: 10px; text-transform: uppercase; font-weight: var(--bs-body-font-weight-bolder);}
.form__register .box-title .desc { font-size: 16px; color: #ffffff;}
.form__register .form-group { margin-bottom: 30px;}
.form__register .form-element { border: 0; border-bottom: 1px solid #ffffff; border-radius: 0; color: #ffffff;}
.form__register .form-element i { margin-left: 1px;}
.form__register .form-label { color: #ffffff; left: 30px;}
.form__register .form-label .required { color: #ffffff;}
.form__register .form-control { color: #ffffff; }
.form__register .form-control:focus ~ .form-label,
.form__register .form-control:not(:placeholder-shown) ~ .form-label { left: 0; padding: 0; background: transparent;}
.form__register .form-group.is-invalid .form-element { border-color: #00ff51;}
.form__register .form-group.is-invalid .form-label { color: #ffffff;}
.form__register .box-control{ padding-top: 20px;}
.form__register .box-control .btn { border: 1px solid #ffffff; border-radius: 34px;}
.form__register .alert { border-radius: 0;}

.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;}

.footer__main { padding: 70px 0; background: #231f20; color: #ffffff;}
.footer__main .logo { border-bottom: 1px solid rgba(255, 255, 255, .1); width: 90%; padding-bottom: 30px; margin-bottom: 20px;}
.footer__main .logo img { max-width: 80%;}
.footer__main .contact .item { margin-bottom: 5px; display: flex; align-items: center;}
.footer__main .contact .item i { width: 30px;}
.footer__main .social { margin-top: 20px; margin-bottom: 30px;}
.footer__main .social .label { margin-bottom: 10px;}
.footer__main .social .link { display: flex; align-items: center; gap: 15px;}
.footer__main .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);}
.footer__main .box-title { font-weight: var(--bs-body-font-weight); margin-bottom: 25px; font-size: 24px;}
.footer__main .box-content { margin-bottom: 30px;}
.footer__main .box-content.company { width: 80%; }
.footer__main .box-content .item { margin-bottom: 15px; display: flex; font-size: 12px; color: #ddd; line-height: 1.6;}
.footer__main .box-content .item i { width: 30px; margin-top: 3px; font-size: 16px;}
.footer__main .box-content .item span { font-weight: normal; flex: 1;}
.footer__main a { color: #ffffff;}
.footer__main a:hover { color: var(--bs-secondary);}
.footer__main .copyright { padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.2); font-size: 12px; color: #999; line-height: 1.6;}

.footer__copyright { padding: 10px 0; background-color: var(--bs-primary); color: #ffffff; text-align: center; font-size: 14px; font-weight: normal;}

.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; 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;}

.page__default { padding: 0;}
.page__default .page-title .title { font-size: 40px; font-weight: var(--bs-body-font-weight-bolder); margin-bottom: 20px; }
.page__default .page-banner { padding: 50px 0; background: url("../img/bg_icon.png") no-repeat left -50px bottom -50px var(--bs-primary); min-height: 400px; align-content: center; position: relative;}
.page__default .page-banner .page-title .title { width: 50%; color: #ffffff; font-size: 50px; text-transform: uppercase; margin: 15px 0;}
.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; gap: 20px; align-items: center;}
.page__post-detail .page-title .sub-title .date { color: #999; margin-top: 3px;}
.page__post-detail .page-title .sub-title .share { display: flex; gap: 8px; align-items: center;}
.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;}

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

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

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

/* `xxl` applies to x-large devices (large desktops, less than 1400px) */
@media (max-width: 1399.98px) {

}

/* `xl` applies to large devices (desktops, less than 1200px) */
@media (max-width: 1199.98px) {

}

/* `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) {
	.menu__main { display: none;}
	.header__menu .logo img { height: 40px;}

	.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;}

	.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;}

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

	.breadcrumbs ul li:nth-child(n+3) {display: none;}

	.slider__main .f-carousel .f-carousel__nav { display: none;}
	.slider__main .item { padding: 50px 0; min-height: 500px; text-align: center;}
	.slider__main .item .name { font-size: 18px;}
	.slider__main .item .description { font-size: 30px;}
	.slider__main .item .image { margin-top: 30px;}

	.meta__about-us { padding: 50px 0 30px;}
	.meta__about-us .box-control { display: none;}
	.meta__about-us .item { margin-left: 0;}
	.meta__about-us-detail { padding: 15px 0;}

	.news__event { padding: 50px 0 30px;}
	.news__event .box-control { display: none;}
	.news__event .box-title .title { font-size: 30px;}

	.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 { height: 150px;}
	.product__category-home .item .info .title { font-size: 16px; padding: 10px;}
	.product__category-home .item img { margin-top: -30px;}
	.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__featured { padding: 50px 0 20px;}
	.project__featured .box-title { margin-bottom: 30px;}
	.project__featured .box-title .title { font-size: 30px; width: 60%;}
	.project__featured .box-content { margin: 0 -10px;}
	.project__featured .f-carousel { margin: 0;}
	.project__featured .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;}

	.form__register .box-title .title { font-size: 36px;}

	.footer__main { padding: 50px 0 70px;}
	.footer__main .logo { width: auto;}
	.footer__main .logo img { width: auto; height: 80px;}
	.footer__main .box-content.company { width: auto;}

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

	.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;}
}

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