:root { --color-red: #ff0000; --clr-primary: #333333; --clr-secondary: #666666; --clr-white: #ffffff; --clr-black: #000000; --clr-active: #0C2D4E; --clr-btn: #4795D5; --clr-main: #196CB0; --font-title: "Montserrat-b"; --font-bold: "Montserrat-b"; --font-regular: "Montserrat"; --font-medium: "Montserrat-m"; --font-semi: "Montserrat-s"; --font-slogan: "1FTV"; }
body { font-size: 14px; line-height: 1.5; }
.main__title { text-align: center; margin-bottom: 1.5rem; }
.main__title h1 { font-family: var(--font-title); font-size: clamp(24px, 3.5vw, 30px); color: var(--clr-main); text-transform: uppercase; }
.main__title p { font-family: var(--font-title); font-size: clamp(24px, 3.5vw, 30px); color: var(--clr-main); text-transform: uppercase; }
.title-main { position: relative; text-align: center; }
.title-main span { font-size: 1.5em; font-weight: bold; text-transform: uppercase; }
.ff-title { font-family: var(--font-title); }
.ff-bold { font-family: var(--font-bold); }
.ff-regular { font-family: var(--font-regular); }
.ff-medium { font-family: var(--font-medium); }
.ff-semi { font-family: var(--font-semi); }
.ff-slogan { font-family: var(--font-slogan); }
.rps-xl--visible, .rps-lg--visible, .rps-md--visible { display: none; }
.rps-xl--hidden, .rps-lg--hidden, .rps-md--hidden { display: block; }
img { max-width: 100%; }
* { box-sizing: border-box; }
a { text-decoration: none; }
.social-plugin { display: flex; margin-top: 10px; }
.hover-img { position: relative; overflow: hidden; display: block; }
.p-relative { position: relative; }
.content-main img {display: inline-flex; }

/* Translate */
body { top: 0px !important; }
.skiptranslate iframe { display: none !important; }
.goog-te-banner-frame { display: none; }
.goog-logo-link { display: none !important; }
.goog-te-gadget { color: transparent !important; height: 30px !important; }
.goog-te-gadget .goog-te-combo { color: #3b3b3b !important; padding: 9px 4px; font-size: 13px; width: 125px; border: 1px solid var(--c1); -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; }
.goog-te-gadget span { display: none; }
#google_language_translator>div, #google_language_translator>div>div select { height: 100% !important; width: 100% !important; max-width: 100%; height: 38px !important; cursor: pointer; }

/* Transition All */
.transition, .btn-frame .kenit-alo-circle-fill, .control-owl button, .carousel-comment-media .carousel-control a span, .menu ul li a.has-child:after, .menu ul li ul, .menu ul li:hover>ul, .scale-img img, .scale-img:hover>img, .support-online .kenit-alo-circle-fill { transition: 0.3s all; }
.gutter-x-30 { --bs-gutter-x: 30px; }
.gutter-x-20 { --bs-gutter-x: 20px; }
.gutter-x-15 { --bs-gutter-x: 15px; }
.gutter-x-5 { --bs-gutter-x: 5px; }

/* slideshow */
.slideshow { position: relative; }

/* Search */
.search { width: 50%; max-width: 400px; background: #fff; position: relative; border-radius: 10px; display: flex; justify-content: space-between; align-items: center; }
.search input { width: calc(100% - 35px); font-size: 13px; color: #333; border-radius: 10px; border: none; }
.search input:focus { border: none; box-shadow: none; }
.search label { height: 35px; cursor: pointer; text-align: center; font-size: 16px; background: #f00; color: #fff; border-radius: 10px; margin-right: 3px; padding: 5px 10px; }
.search label i { font-weight: bold; color: #999; }
.box-search { padding: 10px; border-bottom: 1px solid #f1f1f1; display: flex; justify-content: space-between; align-items: center; }
.ds-item-search { width: calc(100% - 70px); }
.ds-item-search a { font-size: 14px; color: #333; }
.show-search { position: absolute; z-index: 9999; top: 100%; background: #fff; width: 100%; border-radius: 10px; box-shadow: 0 1px 8px rgba(0, 0, 0, 0.3); }
.box-search .price-product { width: 100%; margin: 0px; text-align: left; }
.box-search .price-product .price-new { color: #f00; font-size: 14px; font-weight: bold; }
.box-search .price-product .price-old { color: #999; text-decoration-line: line-through; }

/* Mmenu */
.offcanvas-body { flex-grow: 1; padding: 1rem 1rem; overflow: scroll; }
.offcanvas-body::-webkit-scrollbar { width: 4px; height: 4px; transition: all 1s; }
.offcanvas-body::-webkit-scrollbar-thumb { background-color: #0d6efd; border-radius: 5px; transition: all 1s; }
.offcanvas-body::-webkit-scrollbar-track { background: #fff; width: 4px; height: 4px; transition: all 1s; }
.btn-close-menu { position: absolute; right: 20px; top: 20px; }
.menu-mobile ul { padding: 0px; list-style: none; }
.menu-mobile ul li { position: relative; }
.menu-mobile ul li>span i { transition: transform 0.3s ease; }
.menu-mobile ul li a { display: block; padding-right: 30px; color: #333; font-size: 15px; padding: 10px 0px; border-bottom: 1px solid #f1f1f1; }
.menu-mobile ul li a i { margin-right: 10px; }
.menu-mobile ul li li a { font-weight: normal; }
.menu-mobile ul li a:hover { color: #f00; }
.menu-mobile ul li .scroll { position: absolute; right: 0px; top: 9px; background: var(--clr-main); font-size: 17px; line-height: 18px; height: 25px; color: #fff; width: 35px; border-radius: 5px; display: flex; justify-content: center; align-items: center; cursor: pointer; padding-right: 14px; }
.menu-mobile ul li:hover { color: #f00; }
.menu-mobile ul ul li .scroll { background: none; color: var(--clr-main); }
.menu-mobile ul li ul { padding-left: 10px; }
.company { border-bottom: 1px solid #f1f1f1; padding-bottom: 10px; }
.company p { margin-bottom: 5px; font-size: 13px; }
.company p span { color: var(--clr-main); }
.head-menu { display: flex; justify-content: center; flex-wrap: wrap; }
.head-menu img { max-width: 80px; }
.search-menu { width: 100%; position: relative; margin: 10px 0px; }
.search-menu input { width: 100%; background: #f5f5fa; border: 1px solid #f1f1f1; height: 40px !important; font-size: 13px; }
.search-menu p { position: absolute; right: 10px; bottom: 8px; }

/* ? Navigation*/
.navigation { position: sticky; z-index: 501; background: var(--clr-white); -webkit-transition: all 0.3s ease-out; -o-transition: all 0.3s ease-out; -moz-transition: all 0.3s ease-out; transition: all 0.3s ease-out; }
.navigation>.navigation__inner { -webkit-column-gap: 1rem; -moz-column-gap: 1rem; column-gap: 1rem; }
.navigation nav#menu { -webkit-box-flex: 1; -webkit-flex: 1; -moz-box-flex: 1; -ms-flex: 1; flex: 1; }
.navigation nav#menu ul { list-style: none; padding: 0; margin: 0; }
.navigation nav#menu ul:has(.level-0) { display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -webkit-justify-content: space-between; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -webkit-box-align: center; -webkit-align-items: center; -moz-box-align: center; -ms-flex-align: center; align-items: center; }
.navigation nav#menu ul li { position: relative; z-index: 1; }
.navigation nav#menu ul li .navigation__name::before { position: absolute; content: ''; width: 100%; height: 1px; background: transparent; border-radius: 5px; left: 0px; bottom: 14px; transform-origin: right; transform: scaleX(0); transition: transform 0.5s; }
.navigation nav#menu ul li ul li .navigation__name::before { content: none; }
.navigation nav#menu ul li.active .navigation__name::before, .navigation nav#menu ul li:hover>.navigation__name::before { transform-origin: left; transform: scaleX(1); }
.navigation nav#menu ul li .navigation__name { display: block; position: relative; font-family: var(--font-medium); font-size: 16px; color: #222; text-transform: capitalize; padding: .87rem 0rem .67rem; text-decoration: none; overflow: hidden; }
.navigation nav#menu ul li.active>.navigation__name, .navigation nav#menu ul li:hover>.navigation__name { color: var(--clr-btn); }
.navigation nav#menu ul li ul { opacity: 0; visibility: hidden; position: absolute; top: 100%; left: 0; min-width: 250px; -webkit-border-radius: 0.25rem; -moz-border-radius: 0.25rem; border-radius: 0.25rem; background: var(--clr-white); -webkit-box-shadow: 1px 1px 15px var(--clr-black)26; -moz-box-shadow: 1px 1px 15px var(--clr-black)26; box-shadow: 1px 1px 15px var(--clr-black)26; padding: 0.75rem 0; margin-top: -5px; -webkit-transform: perspective(600px) scaleY(1.5) translateY(15px); -moz-transform: perspective(600px) scaleY(1.5) translateY(15px); transform: perspective(600px) scaleY(1.5) translateY(15px); -webkit-transform-origin: 0 0 0; -moz-transform-origin: 0 0 0; -ms-transform-origin: 0 0 0; -o-transform-origin: 0 0 0; transform-origin: 0 0 0; -webkit-transition: all .5s ease-out; -o-transition: all .5s ease-out; -moz-transition: all .5s ease-out; transition: all .5s ease-out; box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px; }
.navigation nav#menu ul li:hover>ul { opacity: 1; visibility: visible; -webkit-transform: perspective(600px) scaleY(1) translateY(0); -moz-transform: perspective(600px) scaleY(1) translateY(0); transform: perspective(600px) scaleY(1) translateY(0); -webkit-transform-origin: 0 0 0; -moz-transform-origin: 0 0 0; -ms-transform-origin: 0 0 0; -o-transform-origin: 0 0 0; transform-origin: 0 0 0; -webkit-transition: all .5s ease-out; -o-transition: all .5s ease-out; -moz-transition: all .5s ease-out; transition: all .5s ease-out; top: -webkit-calc(100% + 10px); top: -moz-calc(100% + 10px); top: calc(100% + 10px); }
.navigation nav#menu ul li ul li>ul { left: 100%; top: 0 !important; }
.navigation nav#menu ul li ul li { isolation: isolate; padding: 0 0.75rem; }
.navigation nav#menu ul li ul li a.navigation__name { color: var(--clr-black); padding: .7rem 0; }
.navigation nav#menu ul li ul li:hover>.navigation__name { background: transparent; color: var(--clr-active); }
.navigation nav#menu ul li ul li:not(:last-child):before { content: ''; position: absolute; right: 0.75rem; bottom: 0; left: 0.75rem; z-index: -1; height: 1px; background: var(--clr-silver); }

/* Menu */
#hamburger { display: none; width: 35px; height: 23px; position: relative; cursor: pointer; }
#hamburger:before, #hamburger:after, #hamburger span { background: #ffffff; content: ''; display: block; width: 100%; height: 2px; position: absolute; left: 0px; }
#hamburger:before { top: 0px; }
#hamburger span { top: 10px; }
#hamburger:after { top: 20px; }
#hamburger:before, #hamburger:after, #hamburger span { -webkit-transition: none 0.5s ease 0.5s; transition: none 0.5s ease 0.5s; -webkit-transition-property: transform, top, bottom, left, opacity; -webkit-transition-property: top, bottom, left, opacity, -webkit-transform; transition-property: top, bottom, left, opacity, -webkit-transform; transition-property: transform, top, bottom, left, opacity; transition-property: transform, top, bottom, left, opacity, -webkit-transform; }

/* News */
.share { padding: 17px 10px 10px 10px; line-height: normal; background: rgba(128, 128, 128, 0.15); margin-top: 15px; border-radius: 5px; text-align: start; }
.share b { display: block; margin-bottom: 5px; }

/* Toc */
.tt-toc { position: relative; font-size: 18px; text-transform: uppercase; font-family: var(--font-bold); display: flex; justify-content: space-between; align-items: center; cursor: pointer; }
.box-readmore { padding: 8px 15px; border: 1px solid #dedede; margin-bottom: 2rem; border-radius: 5px; background-color: #eeeeee; }
.box-readmore li ul>li { margin: 0; margin-bottom: 8px; }
.box-readmore li ul>li:before { content: counters(item, '.') ' '; }
.box-readmore ul { list-style-type: none; counter-reset: item; margin-bottom: 0px; padding-left: 0px !important; margin-top: 8px; display: none; }
.box-readmore ul li { display: table; counter-increment: item; margin-bottom: 5px; }
.box-readmore ul li:before { content: counters(item, '.') '. '; display: table-cell; padding-right: 5px; }
.box-readmore ul li a { color: #333333; cursor: pointer; font-weight: 600; }
.box-readmore ul li a:hover { color: #767676; }

/* Video */
.video-main { position: relative; }
.list-video { margin-top: 10px; width: 100%; border-radius: 5px; border: 1px solid #ddd; }
.img-video span { position: absolute; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); border: 1px solid #ff000066; border-radius: 50%; width: 50px; height: 50px; display: flex; justify-content: center; align-items: center; color: #f00; background: #ffffffa8; font-size: 27px; cursor: pointer; transition: all 1s; }
.video-item:hover span { transform: translateX(-50%) translateY(-50%) rotate(360deg); }
.video-name { text-align: center; font-size: 16px; margin-top: 10px; }

/* Sort */
.sort-select { display: flex; justify-content: end; margin: 20px 0px; position: relative; }
.sort-select .click-sort { border: 1px solid #e0e0e0; border-radius: 4px; cursor: pointer; font-size: 14px; padding: 6px 10px 6px 8px; margin: 0px; }
.sort-select-main { display: grid; background-color: #fff; border-radius: 4px; box-shadow: 0 4px 6px rgb(0 0 0 / 20%); position: absolute; padding: 0 7px; top: 30px; right: 0; width: 160px; z-index: 2; }
.sort-select-main p { border-bottom: 1px solid #f1f1f1; margin: 0px; order: 2; }
.sort-select-main p:has(.check) { order: 1; }
.sort a { color: #000; font-size: 14px; line-height: 17px; padding: 11px 3px; display: block; cursor: pointer; }
.sort a.check i { box-sizing: border-box; position: relative; display: inline-block; transform: scale(var(--ggs, 1)); width: 22px; height: 16px; border: 2px solid transparent; border-radius: 100px; vertical-align: middle; }
.sort a.check i::after { content: ''; display: block; box-sizing: border-box; position: absolute; left: 3px; top: -4px; width: 6px; height: 10px; border-width: 0 2px 2px 0; border-style: solid; transform-origin: bottom left; transform: rotate(45deg); }
.sort-select .sort-show { padding-right: 12px; position: relative; }
.sort-select .sort-show::before { content: ''; border-left: 4px solid transparent; border-right: 4px solid transparent; border-top: 4px solid #333; content: ''; height: 0; position: absolute; top: 6px; right: 0; width: 0; }

/* Product */
.filter { position: absolute; right: 0px; top: 0px; padding: 5px 10px; background: #f1f1f1; display: flex; justify-content: space-between; align-items: center; margin-bottom: 10px; text-transform: uppercase; border-radius: 5px; cursor: pointer; border: 1px solid #ddd; display: none; }
.flex-product-main { display: flex; gap: 20px; }
.flex-product-main .left-product { width: 250px; border: 1px solid #f1f1f1; padding: 20px; border-radius: 5px; }
.flex-product-main .right-product { width: calc(100% - 250px); }
.wr-search p { font-weight: bold; text-transform: uppercase; }

/* product detail */
.left-pro-detail .MagicZoom { border: 1px solid #7e7e7e; padding: 7px; -webkit-border-radius: 20px; -moz-border-radius: 20px; border-radius: 20px; background-color: var(--clr-white); }
.left-pro-detail .MagicZoom img { border-radius: 20px; }
.tabs-pro-detail .tab-content { border: 1px solid #ddd; border-top: none; padding: 20px; }
.nav-tabs li a { text-transform: uppercase; font-weight: 500; color: #333; }
.nav-tabs .nav-item.show .nav-link, .nav-tabs .nav-link.active, .nav-tabs .nav-link:hover { color: #f00; }
.attr-pro-detail { margin: auto; padding: 0; list-style: none; }
.title-pro-detail { text-transform: capitalize; display: block; }
.price-new-pro-detail { font-weight: 700; font-size: 20px; color: #ff2e00; }
.price-old-pro-detail { font-weight: 500; color: #666; text-decoration: line-through; padding-left: 10px; }
.color-pro-detail.active, .size-pro-detail.active, .size-pro-detail:hover { color: #fff !important; background: #232323; }
.quantity-pro-detail { width: 100%; max-width: 110px; line-height: normal; display: flex; align-items: center; justify-content: space-between; text-align: center; margin-right: 20px; font-weight: 500; }
.quantity-pro-detail span { line-height: 40px; padding: 0; width: 30px; height: 40px; color: #000; cursor: pointer; font-size: 22px; }
.quantity-pro-detail span.quantity-plus-pro-detail { border-left: 0; }
.quantity-pro-detail span.quantity-minus-pro-detail { border-right: 0; }
.quantity-pro-detail input { height: 40px; width: calc(100% - 60px); text-align: center; font-size: 20px; padding: 5px; font-weight: 700; }
.cart-pro-detail { margin-bottom: 1rem; display: flex; align-items: center; justify-content: flex-start; }
.cart-pro-detail a { text-align: center; color: #fff; padding: 8px 15px; cursor: pointer; border-radius: 5px; font-weight: bold; }
.cart-pro-detail a.addnow { margin-right: 10px; color: #fff; border-radius: 5px; }
.cart-pro-detail a.addnow:hover { background-color: #f00; color: #fff; border-color: #f00; }
.cart-pro-detail a.buynow { background-color: #000; }
.cart-pro-detail a.buynow:hover { background-color: #f00; color: #fff; }
.cart-pro-detail a i { vertical-align: top; margin-top: 3px; margin-right: 8px; }

/* modal-detail */
.modal-detail::-webkit-scrollbar { width: 10px; }
.modal-detail::-webkit-scrollbar-thumb { width: 10px; background: #4d90e0; border-radius: 10px; height: 50px; }
.modal-detail { position: fixed; z-index: 999; background: #000000c4; top: 0px; left: 0px; width: 100%; height: 100%; overflow-y: scroll; }
.content-modal-detail { background: #fff; max-width: 1200px; margin: 0px auto; min-height: 100vh; }
.content-modal-detail .tabs { display: flex; cursor: pointer; padding: 0; list-style: none; justify-content: center; border-bottom: 1px solid #e0e0e0; position: sticky; top: 0px; background: #fff; z-index: 99; }
.content-modal-detail .tabs li { padding: 20px 20px; margin-right: 5px; font-weight: bold; position: relative; border-bottom: 4px solid #fff; }
.content-modal-detail .tabs li.active { color: #2d9cdb; border-bottom: 4px solid #2d9cdb; }
.content-modal-detail .tab-content { padding: 20px; max-width: 900px; margin: 0px auto; }
.content-modal-detail .tab-content.active { display: block; }
.close-tab { position: fixed; top: 15px; right: 20px; z-index: 10; }
.btn-closemenu { position: fixed; top: 10px; right: 20px; background-color: #fff; border: 1px solid #e0e0e0; border-radius: 4px; color: #333; cursor: pointer; line-height: 21px; padding: 7px; text-align: right; width: 72px; }
.btn-closemenu::before { transform: rotate(45deg); }
.btn-closemenu::after { transform: rotate(-45deg); }
.btn-closemenu::before, .btn-closemenu::after { background-color: #333; content: ''; left: 13px; height: 14px; position: absolute; top: 10px; width: 1px; }
.cursor-pointer { cursor: pointer; }

/* Contact */
.contact-map { position: relative; height: 500px; margin-top: 30px; }
.contact-map iframe { position: absolute; left: 0px; top: 0px; width: 100%; height: 100%; }
.frm_contact { border: 1px solid #ddd; padding: 30px; }

/*  breadCrumbs */
.breadCrumbs { padding: 10px 0px; background: #ddd; }
.breadCrumbs ol { margin: 0px; }
.breadCrumbs ol li a { color: #333; }
.breadCrumbs ol li a:hover { color: #f00; }

/* paging */
.paging-product { position: relative; }
.pagination { margin: 20px 0px; text-align: center; }
.pagination li span { cursor: pointer; }
.btn-frame { display: block; width: 50px; height: 50px; position: fixed; right: 20px; z-index: 10; cursor: pointer; }
.btn-frame i { width: 50px; height: 50px; border-radius: 50%; background: #1182fc; position: relative; z-index: 1; display: flex; align-items: center; justify-content: center; }
.btn-frame i img { vertical-align: middle; width: 70%; }
.btn-frame .animated.infinite { animation-iteration-count: infinite; }
.btn-frame .kenit-alo-circle { width: 60px; height: 60px; top: -5px; right: -5px; position: absolute; background-color: transparent; border-radius: 100%; border: 2px solid rgba(7, 41, 103, 0.8); opacity: 0.1; border-color: #1182fc; opacity: 0.5; }
.btn-frame .zoomIn { animation-name: zoomIn; }
.btn-frame .animated { animation-duration: 1s; animation-fill-mode: both; }
.btn-frame .kenit-alo-circle-fill { width: 70px; height: 70px; top: -10px; right: -10px; position: absolute; border-radius: 100%; border: 2px solid transparent; background-color: rgba(7, 41, 103, 0.35); opacity: 0.4; }
.btn-frame .pulse { animation-name: pulse; }
.grid-properties { display: flex; gap: 10px; }
.grid-properties span { position: relative; border: 1px solid #ddd; padding: 5px 15px; cursor: pointer; }
.grid-properties span:hover, .grid-properties span.active { border: 1px solid #f00; color: #f00; }
.grid-properties span:hover:after, .grid-properties span.active:after { content: ''; border: 0.9375rem solid transparent; border-bottom: 0.9375rem solid var(#d0011b, #ee4d2d); bottom: 0; position: absolute; right: -0.9375rem; }
.grid-properties span.outstock { pointer-events: none; background-color: #fafafa; color: rgba(0, 0, 0, 0.26); cursor: not-allowed; }

/* scrollToTop */
.scrollToTop { width: 41px; height: 41px; text-align: center; font-weight: bold; color: #444; text-decoration: none; position: fixed; bottom: 65px; right: 25px; display: none; z-index: 10; cursor: pointer; }

/* Hidden Google Captcha */
.grecaptcha-badge { display: none !important; width: 0px !important; height: 0px !important; visibility: hidden !important; overflow: hidden; }
[x-cloak] { display: none !important; }

/* CSSS T */
a.views_dm { width: 140px; height: 38px; }
.effect_button { transform-style: preserve-3d; transform: translateZ(-25px); transition: transform 0.25s; position: relative; display: inline-flex; z-index: 1; }
.effect_button:after, .effect_button:before { position: absolute; content: 'xem thêm'; height: 100%; width: 100%; display: flex; align-items: center; justify-content: center; border: 1px solid #f00; box-sizing: border-box; border-radius: 5px; z-index: -1; text-transform: uppercase; font-weight: 700; font-size: 15px; }
.effect_button:before { color: #fff; background: #f00; transform: rotateY(0deg) translateZ(25px); }
.effect_button:after { color: #f00; transform: rotateX(90deg) translateZ(25px); }
.effect_button:hover { transform: translateZ(-25px) rotateX(-90deg); }

/* News */
.grid-news { --col: 2; --gap-x: 15px; --gap-Y: 15px; }
.ds-news span { display: block; line-height: 25px; color: #999; font-size: 13px; margin: 10px 0px 0px; font-style: italic; }
.ds-news h3 { font-size: 16px; margin: 0; color: #000; font-weight: 500; text-transform: uppercase; -webkit-line-clamp: 2 !important; }
.ds-news .desc { color: #333; }
.item-news-all { display: flex; justify-content: space-between; }
.item-news-all .ds-news { width: calc(100% - 110px); }
.item-news-all .ds-news h3 { text-transform: capitalize; font-size: 15px; }
.flex-news-detail { display: flex; justify-content: space-between; align-items: start; flex-wrap: wrap; }
.news-left { width: 68%; }
.news-right { position: sticky; top: 20px; width: 30%; background: #f1f1f1cc; padding: 20px; box-shadow: 0px 0px 5px #99999978; }

/* Swipper */
.swiper .swiper-wrapper { width: inherit; height: inherit; }
.swiper.swiper-initialized .swiper-wrapper { margin: 0; width: 100%; height: 100%; }
.swiper.swiper-initialized .swiper-slide { padding: 0; margin: 0px; overflow: hidden; }

/* Popup */
.modal-title { font-size: 20px; }

/* CSS cho loading */
.loading-overlay { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 0.7); justify-content: center; align-items: center; z-index: 999; }
.loading { width: 50px; height: 50px; border: 5px solid rgba(0, 0, 0, 0.1); border-radius: 50%; border-top: 5px solid #3498db; animation: spin 1s linear infinite; }

/* Album */
.album__item-inner { position: relative; z-index: 1; }
.album__info { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: #00000082; z-index: 1; display: grid; place-content: center; padding: 10px 15px; opacity: 0; transition: all 300ms ease; }
.album__name { font-family: var(--font-bold); font-size: clamp(16px, calc(20 / 1188 * 100vw), 20px); color: var(--clr-white); width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.album__item:hover .album__info { opacity: 1; transition: all 300ms ease; }
.album__item:hover .album__name { width: 100%; transition: all 300ms ease; }
.album__photo { border-radius: 10px; overflow: hidden; }

/* ? Policy */
.grid-policy { display: grid; grid-template-columns: repeat(2, 1fr); gap: 15px; }
.policy-item a { background: var(--clr-gray); font-family: var(--font-bold); padding: 12px 20px; border-radius: 10px; display: block; }
.policy-item h3 { font-size: 16px; color: black; transition: all 300ms ease; }
.policy-item h3:hover { color: var(--clr-active); transition: all 300ms ease; }

/* ? Popup lang */
.flex_selection { display: flex; flex-direction: column; gap: 15px; }
.title_selection { font-weight: 700; font-size: 14px; margin-bottom: 10px; }
.selection_grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 0 calc(0% - 10px); }
.item_selection { display: block; padding: 10px; transition: .3s; position: relative; border-radius: 5px; }
.item_selection:hover { background: rgba(0, 0, 0, .07); }
.flex_item_selection { display: flex; justify-content: space-between; align-items: center; }
.selection__pic { width: 25px; border-radius: 100px; overflow: hidden; border: solid 1px #8d8d8d; }
.selection__name { width: calc(100% - 35px); text-align: left; display: flex; align-items: center; justify-content: space-between; }
.selection__name span { font-size: 13px; display: inline-block; }
.selection__name svg { width: 18px; opacity: 0; }
.item_selection.active .selection__name svg { opacity: 1; fill: #006ce4; }
.skiptranslate iframe { display: none; }

/* ? Menu */
.navigation:before { content: ''; width: 100%; height: 40px; background: url(../images/i-header.png) no-repeat center center / cover; position: absolute; z-index: -1; top: 0; left: 0; }
.navigation-top { display: flex; align-items: center; justify-content: space-between; padding: 5px 0; }
.navigation-top p { display: flex; align-items: center; gap: 10px; }
.navigation-hotline-translate { display: flex; align-items: center; gap: 10px; }
.header-translate { background: var(--clr-white); border-radius: 120px; border: 1px solid #E5E5E5; box-shadow: 0 1px 4px 0 rgba(0, 0, 0, 0.10); padding: 3px 9px; font-family: var(--font-semi); color: var(--clr-active); }
.header-translate img { display: block; border-radius: 50px; }
.navigation-logo { margin-top: 1.5rem; margin-bottom: .5rem; }
.navigation-right { width: 89%; }
.navigation-bottom { margin-top: 1rem; display: flex; justify-content: space-between; align-items: center; gap: 20px; }
.navigation-name { font-size: clamp(20px, calc(30 / 1300 * 100vw), 30px); font-family: var(--font-title); color: var(--clr-main); letter-spacing: -1.32px; min-width: 270px; }

/* TODO: Search Toggle */
.search__toggle { --height: 40px; position: relative; background: var(--clr-main); border-radius: 100%; }
.search__toggle .search__icon { display: grid; place-items: center; width: 40px; height: var(--height); font-size: 17px; color: var(--clr-white); cursor: pointer; }
.search__toggle .search__icon.active { color: var(--clr-active); -webkit-border-radius: 50%; -moz-border-radius: 50%; border-radius: 50%; background: var(--clr-white); }
.search__toggle .search__grid { opacity: 1; width: 230px; overflow: hidden; position: absolute; top: 50px; right: 0px; display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; height: var(--height); border: 1px solid var(--clr-active); -webkit-border-radius: 999px; -moz-border-radius: 999px; border-radius: 999px; background: var(--clr-white); padding: 0rem 0.25rem; }
.search__toggle .search__grid .search__button { display: grid; place-items: center; width: 35px; font-size: 17px; color: var(--clr-active); background: none; }
.search__toggle .search__grid .search__input { -webkit-box-flex: 1; -webkit-flex: 1; -moz-box-flex: 1; -ms-flex: 1; flex: 1; color: var(--clr-active); text-indent: 10px; width: 100%; }
.search__toggle .search__grid input, .search__toggle .search__grid input:focus { box-shadow: none; border: none; }
.search__toggle .search__grid input::-webkit-input-placeholder {    /* autoprefixer: off */
color: var(--clr-silver); }
.search__toggle .search__grid input:-moz-placeholder {    /* autoprefixer: off */
color: var(--clr-silver); }
.search__toggle .search__grid input::-moz-placeholder {    /* autoprefixer: off */
color: var(--clr-silver); }
.search__toggle .search__grid input:-ms-input-placeholder {    /* autoprefixer: off */
color: var(--clr-silver); }

/* ? Side */
.slideshow { position: relative; width: 100%; height: 100%; overflow: hidden; }
.slideshow-inner { position: relative; width: 100%; padding-top: 56.25%; }
.slide-photo { z-index: 10; }
.slide-photo, .slide-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.slide-video video { width: 100%; height: 100%; object-fit: cover; transition: opacity 0.5s ease; }
.slide-photo span { position: absolute; top: calc(50% - 60px); left: calc(50% - 60px); }
.productSlide-main { width: 858px; position: absolute; bottom: 5rem; right: -10rem; z-index: 20; }
.productSlide-main .swiper-pagination { top: -2rem; bottom: auto; height: auto; display: flex; }
.productSlide-main .swiper-pagination-bullet { border-radius: 8px; background: rgba(255, 255, 255, 0.50); width: 110px; height: 3px; }
.productSlide-main .swiper-pagination-bullet.swiper-pagination-bullet-active { background: var(--clr-white); }
.productSlide-item { padding: 10px; border-radius: 16px; background: rgba(255, 255, 255, 0.30); backdrop-filter: blur(2.5px); display: flex; align-items: center; gap: 15px; }
.productSlide-photo { width: 42.125%; overflow: hidden; border-radius: 10px;  }
.productSlide-info { flex: 1; color: var(--clr-white); }
.productSlide-name { font-family: var(--font-semi); font-size: clamp(20px, calc(24 / 1300 * 100vw), 24px); --line-clamp: 1; }
.productSlide-btn { border: 1px solid var(--clr-white); display: inline-flex; padding: 9px 16.39px 9px 17px; justify-content: center; align-items: center; border-radius: 48px; border: 1px solid #FFF; color: var(--clr-white); transition: all 300ms ease; }
.productSlide-btn:hover { border-color: var(--clr-main); background: var(--clr-main); color: var(--clr-white); transition: all 300ms ease; }

/* ? Tour List */
.tourList__main { display: flex; align-items: center; justify-content: center; gap: 24px; margin-top: 2rem; }
.tourList__main .tourList-item:first-child { width: 55%; }
.tourList__main:hover .tourList-item:first-child { width: 15%; }
.tourList__main:hover .tourList-item:first-child:hover { width: 55%; }
.tourList-item:first-child { width: 55%; }
.tourList-item { width: 15%; ; transition: 0.4s; height: 542px; position: relative; overflow: hidden; border-radius: 25px; }
.tourList-item>a:before { content: ''; position: absolute; top: 0; left: 0; bottom: 0; right: 0; background: rgba(0, 0, 0, 0.40); z-index: 1; }
.tourList-item img { transition: 0.3s; height: 542px; object-fit: cover; width: 100%; position: relative; }
.tourList-item img:after { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #000000bd; }
.tourList-item:hover { width: 55%; }
.tourList-item:hover .tourList-info { transform: rotate(270deg); transform-origin: center; top: 95%; left: 0; bottom: unset; padding: 0; }
.tourList-item:hover .tourList-info p { display: -webkit-box; }
.tourList-info h3 { font-family: var(--font-semi); font-size: clamp(20px, calc(28 / 1300 * 100vw), 28px); color: white; text-transform: capitalize; margin-bottom: 8px; overflow: hidden; text-overflow: ellipsis; white-space: normal; -webkit-box-orient: vertical; display: -webkit-box; -webkit-line-clamp: 1; letter-spacing: 0.56px }
.tourList-info p { font-size: 16px; color: rgba(255, 255, 255, 0.9); margin-bottom: 20px; overflow: hidden; text-overflow: ellipsis; white-space: normal; -webkit-box-orient: vertical; display: -webkit-box; -webkit-line-clamp: 2; line-height: 1.5; width: 75%; margin-top: 5px; }
.tourList-info { position: absolute; bottom: 0%; transform: rotate(180deg); left: 3%; writing-mode: vertical-rl; height: 100%; transition: 0.4s; width: 100%; z-index: 2; display: flex; align-items: start; justify-content: space-between; padding: 2.5rem 0; }
.tourList-btn { border-radius: 48px; background: var(--Linear, linear-gradient(90deg, #196CB0 0%, #4795D5 100%)); padding: 17px 10px; color: var(--clr-white); font-size: 16px; font-family: var(--font-semi); display: none; }
.tourList-btn:hover { color: var(--clr-white); }
.tourList-item:hover .tourList-btn { display: block; }

/* ? Title */
.title__home { text-align: center; }
.title__icon { width: fit-content; margin-left: auto; margin-right: auto; display: block; }
.title__slogan { font-family: var(--font-slogan); font-size: clamp(20px, calc(32 / 1300 * 100vw), 32px); color: var(--clr-main); margin-bottom: -.5rem; }
.title__main { font-size: clamp(30px, calc(48 / 1300 * 100vw), 48px); font-family: var(--font-bold); letter-spacing: -1.92px; color: var(--clr-active); }
.title-quote { max-width: 825px; margin-left: auto; margin-right: auto; font-size: 15px; line-height: 30px; }

/* ? About */
.wrap-about { background: url(../images/bg-intro.jpg) no-repeat center center /cover; }
.about-left { width: 46.923077%; display: flex; justify-content: space-between; gap: 43px; align-items: start; position: relative; z-index: 1; }
.about-left a { display: block; border-radius: 500px; }
.about-right { width: 46.153846%; }
.about-quote { font-size: clamp(20px, calc(32 / 1200 * 100vw), 32px); font-family: var(--font-slogan); color: var(--clr-main); }
.about-name { font-family: var(--font-bold); font-size: clamp(25px, calc(36 / 1300 * 100vw), 36px); letter-spacing: -1.44px; color: var(--clr-active); }
.about-desc { font-size: 15px; line-height: 30px; margin-top: .5rem; }

/* ? Criteria */
.about-criteria { display: grid; grid-template-columns: repeat(2, auto); gap: 28px; margin-top: 2.5rem; }
.criteria-item { display: flex; align-items: center; gap: 20px; width: fit-content; }
.criteria-item:hover .criteria-photo { transform: rotateY(360deg); transition: all 600ms ease; }
.criteria-photo { background: var(--clr-main); border-radius: 50%; width: 61px; height: 61px; padding: 13px; transition: all 600ms ease; }
.criteria-name { margin: 0; font-family: var(--font-bold); font-size: 15px; color: var(--clr-active); }
.about-exp { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); display: flex; align-items: center; flex-direction: column; width: 196px; height: 196px; justify-content: center; background: linear-gradient(90deg, #196CB0 0%, #4795D5 100%); border-radius: 100%; color: var(--clr-white); border: 11px solid var(--clr-white); filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.10)); padding: 20px; text-align: center; }
.about-exp span:first-child { font-size: clamp(35px, calc(48 / 1300 * 100vw), 48px); font-family: var(--font-bold); letter-spacing: -1.92px; display: block; line-height: 1; }
.about-exp span:last-child { font-size: clamp(16px, calc(20 / 1300 * 100vw), 20px); font-family: var(--font-semi); }

/* ? Tour List */
.wrap-tourListTab { background: url(../images/bg-tour.jpg) no-repeat center center /cover; }
.choose__list { margin-top: 1rem; }
.choose__item { color: var(--clr-white); padding: 9px 10px; border: 1px solid var(--clr-white); min-width: 128px; text-align: center; border-radius: 50px; font-size: 16px; font-family: var(--font-semi); cursor: pointer; }
.choose__item:hover, .choose__item.active { background: var(--clr-white); color: var(--clr-active); }
.tourListTab__main { margin-top: 2.25rem; padding-bottom: 1.5rem; }
.product-item { position: relative; z-index: 1; overflow: hidden; border-radius: 16px; }
.product-info { position: absolute; bottom: 16px; left: 12px; width: calc(100% - 24px); border-radius: 12px; border: 1px solid rgba(255, 255, 255, 0.80); background: rgba(255, 255, 255, 0.83); backdrop-filter: blur(10.5px); padding: 12px 10px; text-align: center; }
.product-name a { color: var(--clr-active); font-size: clamp(14px, calc(16 / 1300 * 100vw), 16px); font-family: var(--font-semi); transition: all 300ms ease; }
.product-name a:hover { color: var(--clr-main); transition: all 300ms ease; }

/* ? Gallery */
.galleryHome__main { display: grid; grid-template-columns: repeat(5, 1fr); grid-template-rows: repeat(4, auto); gap: 15px; max-width: 1470px; margin: 2.75rem auto 0; }
.galleryH-item { position: relative; z-index: 1; overflow: hidden; }
.galleryH-item a { display: block; }
.galleryH-item img { height: 100%; }
.galleryH-item:nth-child(1) { grid-row: span 2 / span 2; grid-column-start: 1; grid-row-start: 2; }
.galleryH-item:nth-child(2) { grid-row: span 2 / span 2; grid-column-start: 2; grid-row-start: 1; }
.galleryH-item:nth-child(3) { grid-row: span 2 / span 2; grid-column-start: 2; grid-row-start: 3; }
.galleryH-item:nth-child(4) { grid-row: span 4 / span 4; grid-column-start: 3; grid-row-start: 1; }
.galleryH-item:nth-child(5) { grid-row: span 2 / span 2; grid-column-start: 4; grid-row-start: 1; }
.galleryH-item:nth-child(6) { grid-row: span 2 / span 2; grid-column-start: 4; grid-row-start: 3; }
.galleryH-item:nth-child(7) { grid-row: span 2 / span 2; grid-column-start: 5; grid-row-start: 2; }

/* ? Form */
.newsletter__main { display: flex; justify-content: space-between; }
.newsletter-box { background: var(--clr-white); width: 50%; padding: 20px; padding: 30px 41px 45px 44px; border-radius: 20px; }
.newsletter-title { font-family: var(--font-semi); font-size: clamp(30px, calc(40 / 1300 * 100vw), 40px); letter-spacing: -1.6px; color: var(--clr-active); }
.newsletter__form { margin-top: 1rem; }
.newsletter-right { width: 50%; display: grid; place-content: center; }
.newsletter-right span:hover { cursor: pointer; }

/* ? FormNewsletter */
.newsletter__input, .newsletter__button { width: 100%; position: relative; }
.newsletter__input, .newsletter__textarea { margin-bottom: 25px; }
.newsletter__input input { height: 57px; }
.newsletter__input input, .newsletter__textarea textarea { font-size: 14px; color: var(--clr-secondary); border: 1px solid #CACACA; background: var(--clr-white); border-radius: 8px; }
.newsletter__textarea textarea { height: 155px; resize: none; }
.newsletter__textarea textarea::placeholder, .newsletter__textarea textarea:focus, .newsletter__input input::placeholder, .newsletter__input input:focus {    /* autoprefixer: off */
font-size: 14px; color: var(--clr-secondary); background: var(--clr-white); box-shadow: none !important; }
.newsletter__button { max-width: 230px; }
.newsletter__button input { border-radius: 0; height: 65px; font-family: var(--font-semi); font-size: 17px; color: var(--clr-white); outline: none; border: 1px solid var(--clr-main); background: var(--clr-main); padding: 0 70px 0 20px; width: 100%; border-radius: 50px; }
.newsletter__button input::placeholder, .newsletter__button input:focus {    /* autoprefixer: off */
box-shadow: none !important; }
.newsletter__button input:hover { color: var(--clr-main); background: var(--clr-active); border-color: var(--clr-active); }
.newsletter__button span { position: absolute; top: 50%; right: 7%; -webkit-transform: translate(-50%, -50%); -moz-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); -o-transform: translate(-50%, -50%); transform: translate(-50%, -50%); color: var(--clr-white); }

/* ? News */
.newsHome-left { width: 48.923077%; }
.newsHome-right { width: calc(48.923077% + 10px); }
.newsHome-right .swiper { height: 565px; }
.newsHome-item { padding: 13px; background: var(--clr-white); border-radius: 12px; box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.10); }
.newsHome-photo-inner { display: block; overflow: hidden; border-radius: 10px; }
.newsHome-name a { font-family: var(--font-medium); font-size: clamp(18px, calc(24 / 1300 * 100vw), 24px); line-height: 30px; color: var(--clr-active); transition: all 300ms ease; --line-clamp: 2; }
.newsHome-name a:hover { color: var(--clr-main); transition: all 300ms ease; }
.newsHome-info { margin-top: 1rem; }
.newsHome-desc { margin-top: .5rem; font-size: 15px; line-height: 24px; }
.newsHome-btn { width: fit-content; display: flex; align-items: center; color: var(--clr-white); background: var(--clr-main); padding: 13px 28px; border-radius: 50px; gap: 10px; transition: all 300ms ease; }
.newsHome-btn:hover { color: var(--clr-white); background: var(--clr-active); transition: all 300ms ease; }
.newsHome__main { margin-top: 2rem; }
.newsHome__main .swiper-slide { overflow: unset !important; padding: 0 10px !important; }
.news-item { padding: 14px; border-radius: 12px; background: var(--clr-white); box-shadow: 0 0 4px 0 rgba(0, 0, 0, 0.10); display: flex; justify-content: space-between; gap: 25px; }
.news-photo { width: 39.473684%; border-radius: 10px; overflow: hidden; }
.news-info { flex: 1; }
.news-name a { --line-clamp: 2; font-family: var(--font-medium); font-size: clamp(15px, calc(19 / 1300 * 100vw), 19px); color: var(--clr-active); line-height: 26px; margin-bottom: .5rem; transition: all 300ms ease; }
.news-name a:hover { color: var(--clr-main); transition: all 300ms ease; }
.news-desc { font-size: 15px; line-height: 24px; }

/* ? Footer */
.footer { background: url(../images/bg-footer.jpg) no-repeat center center / cover; }
.footer-article__inner { display: -webkit-box; display: -webkit-flex; display: -moz-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -webkit-justify-content: space-between; -moz-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
.footer-article--1 { width: 25%; }
.footer-article--2 { width: 24.615385%; }
.footer-article--3 { width: 11.538462%; }
.footer-article--4 { width: 24.230769%; }
.footer-info { color: var(--clr-white); font-size: 15px; line-height: 28px }
.footer-title { font-family: var(--font-semi); font-size: clamp(18px, calc(24 / 1300 * 100vw), 24px); color: var(--clr-white); position: relative; margin-bottom: 20px; }
.footer__social { list-style: none; padding: 0; margin: 0; gap: 10px; margin-top: 1.5rem; }
.footer-policy { list-style: none; padding: 0 0 0 1.5rem; margin: 0; }
.footer-policy li { position: relative; z-index: 1; }
.footer-policy li:not(:last-child) { margin-bottom: 20px; }
.footer-policy li a { color: var(--clr-white); transition: all 300ms ease; font-size: 15px; }
.footer-policy li a:hover { color: var(--clr-active); transition: all 300ms ease; }
.footer-policy li span { position: absolute; top: 0; left: -20px; color: var(--clr-white); }
.footer-powered { border-top: 1px solid rgba(255, 255, 255, 0.30); padding: 20px 0 30px; background: transparent; color: var(--clr-white); font-size: 13px; font-family: var(--font-medium); }
.footer-powered .wrap-content { display: flex; align-items: center; justify-content: center; text-align: center; }
.footer-powered a { color: var(--clr-white); }
.footer-powered span { font-family: var(--font-bold); }
.gallery-footer { display: grid; grid-template-columns: repeat(3,1fr) ; gap: 12px;}