@charset "UTF-8"; /* Set the encoding of the style sheet to Unicode UTF-8 */
/* Fonts */
@font-face {
   font-family: 'Roboto';
   src: url('../fonts/Roboto-Thin.woff2') format('woff2');
   font-weight: 100;
   font-style: normal;
}
@font-face {
   font-family: 'Roboto';
   src: url('../fonts/Roboto-Regular.woff2') format('woff2');
   font-weight: 400;
   font-style: normal;
}

@font-face {
   font-family: 'Roboto';
   src: url('../fonts/Roboto-Medium.woff2') format('woff2');
   font-weight: 500;
   font-style: normal;
}

@font-face {
   font-family: 'Roboto';
   src: url('../fonts/Roboto-SemiBold.woff2') format('woff2');
   font-weight: 600;
   font-style: normal;
}

@font-face {
   font-family: 'Roboto';
   src: url('../fonts/Roboto-Bold.woff2') format('woff2');
   font-weight: 700;
   font-style: normal;
}

@font-face {
   font-family: 'Roboto';
   src: url('../fonts/Roboto-ExtraBold.woff2') format('woff2');
   font-weight: 800;
   font-style: normal;
}

@font-face {
   font-family: 'Roboto';
   src: url('../fonts/Roboto-Black.woff2') format('woff2');
   font-weight: 900;
   font-style: normal;
}

@font-face {
   font-family: 'SpanishSignature';
   src: url('../fonts/SpanishSignature-Regular.woff2') format('woff2');
   font-weight: 400;
   font-style: normal;
}

:root {
   --color-main: #033E8A;
   --color-social: #033E8A;
   --color-hover: #033E8A;
   --color-text: #033E8A;
}

body {
   font-size: 14px;
   line-height: 1.5;
   font-family: 'Roboto';
   font-weight: 400;
}

.max-width,
.wrap-content {
   width: calc(100% - 30px);
   max-width: 1300px;
   margin: 0px auto;
}

img {
   max-width: 100%;
   display: initial;
}

p{
   margin-bottom: 0;
}
* {
   box-sizing: border-box;
}

a {
   text-decoration: none;
}

.content-main p{
   margin-bottom: revert;
}
.content-main iframe {
   max-width: 100% !important;
}

.content-main img {
   height: auto !important;
}

.content-main * {
   max-width: 100% !important;
}

.content-main table {
   display: block;
   overflow-y: auto;
}
.content-main table td{
    border-width: initial;
    border-color: initial;
    border-style: inset;
}
.content-main ul li {
   margin-bottom: 0.75rem;
   list-style-type: disc;
}

.content-main ol li {
   margin-bottom: 0.75rem;
   list-style-type: decimal;
}

.content-main ul,
.content-main ol {
   list-style: initial;
}

.content-main img {
   margin: auto;
}

h3 a:hover {
   color: var(--color-hover);
}

.title-main,
.title-detail {
   position: relative;
   text-align: center;
   margin-bottom: 35px;
   padding-bottom: 30px;
   background: url(../images/deco.png) no-repeat bottom;
}

.title-main h2,
.title-detail h1 {
   font-size: 45px;
   font-weight: bold;
   color: var(--color-main);
   text-transform: uppercase;
   line-height: normal;
}
.title-main .slogan {font-size: 15px;color: #5E5E5E;}

.page-link {
   color: var(--color-main);
}

.page-item.active .page-link {
   background-color: var(--color-main);
   border-color: var(--color-main);
}
.social-title {
}
.social {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: center;
   gap: 5px;
}

.social a {
}
.social p{}
.footer-ul {
   padding-left: 0;
   display: flex;
   flex-wrap: wrap;
   gap: 15px 35px;
   justify-content: center;
}

.footer-ul li {
}

.footer-ul li a {
   color: #fff;
   font-size: 16px;
}

.footer-ul li a:hover {
   color: #FEAE18;
}

.social-plugin {
   display: flex;
   margin-top: 10px;
}

/* .scale-img {
   overflow: hidden;
}
.scale-img img, .scale-img picture {
   transition: all 0.5s;
}

.scale-img:hover > img, .scale-img:hover > picture {
   transform: scale(1.2, 1.2);
} */

.scale-img {
   position: relative;
   width: 100%;
   overflow: hidden;
}

.scale-img::before {
   bottom: 0;
   content: "";
   left: 0;
   position: absolute;
   right: 0;
   top: 0;
   -webkit-transition: all 0.8s cubic-bezier(0.94, 0.85, 0.1, 0.62) 0s;
   -o-transition: all 0.8s cubic-bezier(0.94, 0.85, 0.1, 0.62) 0s;
   transition: all 0.8s cubic-bezier(0.94, 0.85, 0.1, 0.62) 0s;
   z-index: 1;
   border: 100px double rgba(0, 0, 0, 0);
   border-radius: inherit;
   opacity: 1;
   filter: alpha(opacity=100);
   visibility: visible;
   box-sizing: border-box;
   pointer-events:none;
}

.scale-img img {
   transform: unset !important;
}

.scale-img:hover::before {
   opacity: 0;
   filter: alpha(opacity=0);
   border: 0 double rgba(255, 255, 255, 0.7);
   visibility: hidden;
}

.text-split {
   overflow: hidden;
   text-overflow: ellipsis;
   white-space: normal;
   -webkit-box-orient: vertical;
   display: -webkit-box;
   -webkit-line-clamp: 3;
}

/* Transition All */

/* 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;
}

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

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

@media (min-width: 1025px) {
   .slideshow-item video, .slideshow-item img{
      height: 900px !important;
      object-fit: cover;
   }

   .bannerQC-pic img{
      height: 700px !important;
      object-fit: cover;
   }

   .theLightHouse-banner img{
      height: 580px !important;
      object-fit: cover;
   }
}

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

/* Search */
.search {
   width: 50%;
   background: #fff;
   position: relative;
   border-radius: 10px;
   display: flex;
   justify-content: space-between;
   align-items: center;
}

.search input {
}

.search input:focus {
   border: none;
   box-shadow: none;
}

.search label {
}

.search label i {
}

/* 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: var(--color-main);
   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;
   /* Adjust duration and easing as needed */
}

/* .menu-mobile ul li:last-child a{
   border-bottom: none;
} */
.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(--color-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;
}

.menu-mobile ul li:hover {
   color: #f00;
}

.menu-mobile ul ul li .scroll {
   background: none;
   color: var(--color-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(--color-text);
}

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

/* Menu */
#menu {
   display: none;
}

#hamburger {
   display: none;
   width: 35px;
   height: 23px;
   position: relative;
   cursor: pointer;
}

#hamburger:before,
#hamburger:after,
#hamburger span {
   background: var(--color-main);
   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;
}

/* Menu-wrapper */
.fix_menu {
   position: fixed !important;
   box-shadow: 0 0 1px #999;
   top: 0;
   left: 0;
   width: 100%;
   z-index: 999;
}

.menu-wrapper {
   background: #fff;
   padding: 7px 0px;
}

.menu-wrapper .wrap-content {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   justify-content: flex-end;
   align-items: center;
   position: relative;
}


.menu_category-box{
    position: relative;
    width: 270px;
}

.menu_category-box:hover .menu_category-pos {
    margin: 0;
    opacity: 1;
    visibility: visible;
    transition: all .4s ease;
}

.menu_category-box .menu_sanpham-wrapper {
    border-radius: 0 !important;
    padding: 5px !important;
}

.menu_category-box .menu_sanpham-title {
    display: none !important;
}

.menu_category-box .menu_sanpham-list{
   max-height:555px;
   overflow:auto;
}
.menu_category-title{
    margin: 0;
    line-height: normal;
    height: 50px;
    background: #E6DE0C;
    font-size: 15px;
    font-family: 'BT-BeauSans-ExtraBold';
    text-transform: uppercase;
    padding: 0 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    cursor: pointer;
}
.menu_category-pos{
    position: absolute;
    width: 100%;
    left: 0;
    top: 100%;
    z-index: 9;
    margin-left: -60px;
    opacity: 0;
    visibility: hidden;
    transition: all .4s ease;
}

nav.menu {
   position: relative;
   z-index: 99;
   width: 56.9230769231%;
}

.fix_menu nav.menu {
}

.menu .wrap-content {
   position: relative;
}

.menu .ulmn {
}

.menu ul {
   padding: 0px;
   margin: 0;
   list-style: none;
}

.menu ul li {
   position: relative;
   z-index: 99;
}

.menu ul.ulmn > li {
}

.menu ul li.line {
   width: 1px;
   height: 15px;
   background-color: rgba(255, 255, 255, 0.5);
   flex: none;
}

.menu ul li a {
   font-size: 14px;
   font-weight: 500;
   color: #363636;
   margin: 0px;
   padding: 0;
   position: relative;
   z-index: 1;
   text-align: center;
   text-decoration: none !important;
   display: block;
   text-transform: capitalize;
   transition: all 0.4s ease;
   line-height: 35px;
   background-position: bottom;
   padding-bottom: 10px;
}

.menu ul li a img {
   vertical-align: middle;
}

.menu > ul > li > a.active, .menu > ul > li > a:hover
{
   background: url(../images/menu-deco.png) no-repeat bottom;
}

.menu ul li ul {
   position: absolute;
   min-width: 250px;
   left: 0;
   background: #fff;
   box-shadow: 0 3px 11px 0 rgba(0, 0, 0, 0.3);
   -webkit-transform: perspective(600px) rotateX(-90deg);
   transform: perspective(600px) rotateX(-90deg);
   -webkit-transform-origin: 0 0 0;
   transform-origin: 0 0 0;
   opacity: 0;
   visibility: hidden;
   transition: all 0.5s;
}

.menu ul li:hover > ul {
   -webkit-transform: perspective(600px) rotateX(0);
   transform: perspective(600px) rotateX(0);
   -webkit-transform-origin: 0 0 0;
   opacity: 1;
   visibility: visible;
   transition: all 0.7s;
}

.menu ul li ul li {
   text-align: left;
   border-bottom: 1px solid rgb(173 173 173 / 32%);
}

.menu ul li ul li:last-child {
   border-bottom: 0px;
}

.menu ul li ul li a {
   font-size: 14px;
   padding: 10px;
   display: block;
   text-decoration: none !important;
   line-height: 20px;
   text-align: left;
   font-weight: 500;
   text-transform: capitalize;
   color: #333;
}

.menu ul li ul li ul {
   top: 0px;
   left: 100%;
}

.menu ul li ul li a:before {
   position: absolute;
   content: "";
   top: 50%;
   left: 0;
   width: 0;
   height: 1px;
   background: #fed402;
   transition: all 0.3s linear;
   -webkit-transition: all 0.3s linear;
   -moz-transition: all 0.3s linear;
   -o-transition: all 0.3s linear;
   -ms-transition: all 0.3s linear;
   visibility: hidden;
   opacity: 0;
}

.menu ul li ul li a:hover:before,
.menu ul li ul li > a.active:before {
   left: 0;
   visibility: visible;
   opacity: 1;
   width: 30px;
}

.menu ul li ul li a:hover {
   padding-left: 40px;
}

.share {
   padding: 17px 10px 10px 10px;
   line-height: normal;
   background: rgba(128, 128, 128, 0.15);
   margin-top: 15px;
   border-radius: 5px;
}

.share b {
   display: block;
   margin-bottom: 5px;
}

/* Toc */
.box-readmore {
   padding: 8px 15px;
   border: 1px solid var(--color-main);
   margin-bottom: 2rem;
   border-radius: 5px;
   background: var(--color-main);
   color: #fff;
}

.tt-toc {
   position: relative;
   font-size: 18px;
   text-transform: uppercase;
   display: flex;
   justify-content: space-between;
   align-items: center;
   cursor: pointer;
   color: #fff;
}

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

/* Footer */
.footer-wrapper {
   overflow: hidden;
   background: var(--color-main);
   color: #fff;
}

.footer-wrapper .wrap-content {

}

.footer-info {
    padding: 65px 0px;
}

.footer-info .wrap-content {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
}

.footer-flex {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   gap: 20px;
}

.footer-title {
   font-size:15px;
   font-weight: 500;
   color:#fff;
   text-transform:uppercase;
   margin-bottom: 20px;
}

.footer-box:nth-child(1) {
   width: 14%;
   text-align: center;
}

.footer-box:nth-child(2) {
   width: 20%;
   text-align: center;
}

.footer-box:nth-child(3) {
   width: 22%;
   text-align: center;
}

.footer-box:nth-child(4) {
   width: 23%;
}

.footer-box:nth-child(5) {
    width: 100%;
    text-align: center;
    margin-top: 30px;
}

.footer-box:nth-child(4) .social {
    justify-content: flex-start;
    gap: 30px;
}

.footer-logo{}
.footer-name{}
.footer-desc{
    font-size: 13px;
    font-style: italic;
    margin-bottom: 25px;
    line-height: 30px;
}
.footer-content{}

.footer-optsetting{
}
.footer-optsetting p{
   display:flex;
   align-items: flex-start;
   color:#fff;
   gap: 15px;
   margin-bottom: 10px;
}
.footer-optsetting p{}
.footer-optsetting b{}
.footer-optsetting span{}

.footer_map-wrapper{}
.footer_map-wrapper .wrap-content{
    background: linear-gradient(90deg, #FBD184 0%, #FFF0AF 25%, #FBD184 50%, #FFF0AF 75%, #FBD184 100%);
    position: relative;
    border-radius: 1000px;
    padding: 1px;
}
.footer_map-title{
    font-size: 29px;
    font-family: 'SVN-GilroyXBold';
    text-transform: uppercase;
    font-style: italic;
    position: absolute;
    top: -20px;
    left: 365px;
    background: #F9F6EE;
    padding: 0 25px;
}
.footer_map-box{
    background: #F9F6EE;
    border-radius: 1000px;
    padding: 25px;
}
.footer_map-box iframe{
    width: 100%;
    height: 380px;
    border-radius: 1000px;
}

.footer-powered {text-align: center;}

.footer-powered .wrap-content {padding: 30px 0px 40px 0px;border-top: 1px #597CAA solid;}

.footer-powered .wrap-content .footer-box {
    width: 100%;
    max-width: 700px;
    margin: auto;
}

.footer-copyright {text-align: center;font-size: 13px;}

.footer-copyright b {
}
.footer-statistic{}
.footer-statistic span {
   position: relative;
   padding: 0px 5px;
}

.footer-hotline {
}

.footer-hotline p {
   margin-bottom: 15px;
   font-size: 18px;
   font-weight: 600;
}

.footer-hotline a {
   border-radius: 50px;
   background: var(
      --Vng-gold,
      linear-gradient(
         270deg,
         #c89a2a 0.84%,
         #f3ed9f 28.21%,
         #c89a2a 52.49%,
         #f3ed9f 80.37%,
         #c89a2a 100%
      )
   );
   display: inline-flex;
   align-items: center;
   padding: 10px 15px;
   gap: 10px;
}

.footer-hotline a span {
   font-size: 20px;
   color: #131b4a;
   font-weight: bold;
}

/* 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;
}

.grid-product {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 35px 20px;
}
.product-card{
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 15px;
    padding: 10px;
    padding-bottom: 20px;
    box-shadow: 0px 3px 3px #00000038;
}
.product-image{}
.product-info{}
.product-name{
    height: 50px;
}
.product-name a{
    font-size: 18px;
    color: #000;
    line-height: 25px;
}
.product-price_container{}
.product-price_new{
    font-weight: bold;
    color: var(--color-main);
    font-size: 15px;
}
.product-price_old{}
.product-price_discount{}

/* product detail */
.grid-pro-detail {
   display: flex;
   justify-content: space-between;
   align-items: start;
}

.grid-pro-detail .left-pro-detail {
   width: 41%;
}

.grid-pro-detail .right-pro-detail {
   width: 57%;
}

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

.cursor-pointer {
   cursor: pointer;
}

/*  breadCrumbs */
.breadCrumbs {
   padding: 10px 0px;
   background: var(--color-main);
}

.breadCrumbs ol {
   margin: 0px;
}

.breadCrumbs ol li a {
   color: #fff !important;
}

.breadCrumbs ol li a:hover {
   color: var(--color-hover);
}

/* paging */
.paging-product {
   position: relative;
}

.pagination {
   margin: 20px 0px;
   width: 100%;
   justify-content: center;
}

.pagination li span {
   cursor: pointer;
}

.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: attr(data-text);
   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);
}


.menu_sanpham-aside{}
.menu_sanpham-wrapper {
    min-height: 100%;
}
.menu_sanpham-title{}
.menu_sanpham-list{}
.menu_sanpham-submenu{}
.menu_sanpham-sublink{}

.menu_sanpham-link {
   color: #212529;
   transition: all 0.3s ease;
}

.menu_sanpham-link:hover,
.menu_sanpham-link:focus,
.menu_sanpham-link[aria-expanded="true"] {
box-shadow: 0px 3px 10px var(--color-main);
background-color: var(--color-main) !important;
color: #fff;
}
.menu_sanpham-link:hover a{
color: #fff !important;
}

.menu_sanpham-link i[aria-expanded="true"] {
transform: rotate(180deg);
}

.menu_sanpham-link i {
transition: transform 0.3s ease;
}

.menu_sanpham-sublink {
font-size: 0.95rem;
}

.menu_sanpham-sublink:hover {
color: #0d6efd;
text-decoration: underline;
}


/* News */
.grid-news {
   display: grid;
   grid-template-columns: repeat(3, 1fr);
   gap: 35px 20px;
}

a.btn_link {
   position: relative;
   margin: 5px;
   height: 36px;
   width: 140px;
}

.btn_link.effect_button:first-child:after,
.btn_link.effect_button:first-child:before {
   content: "facebook";
}

.btn_link.effect_button:first-child:after,
.btn_link.effect_button:first-child:before,
.btn_link.effect_button:nth-child(2):after,
.btn_link.effect_button:nth-child(2):before {
   border-width: 1px;
   border-style: solid;
   --tw-border-opacity: 1;
   border-color: rgb(0 165 217 / var(--tw-border-opacity));
   --tw-bg-opacity: 1;
   background-color: rgb(0 165 217 / var(--tw-bg-opacity));
}

.btn_link.effect_button:nth-child(2):after,
.btn_link.effect_button:nth-child(2):before {
   content: "google map";
}

div.slick.in-page:not(.slick-initialized) {
   display: flex;
   gap: 10px;
   overflow: hidden;
   white-space: nowrap;
}

.tags-pro-detail{
}
.tags-pro-detail a {
   background: transparent;
   border-color: #fff;
}

.tags-pro-detail a:hover {
   background: #0085DE;
   border-color: #fff;
}

.attr-pro-detail {
   margin: auto;
   padding: 0;
}

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

/* 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;
}

.swiper-pagination {
   position: initial;
   margin-top: 30px;
}

.swiper-pagination .swiper-pagination-bullet {
   width: 30px;
   border-radius: 5px;
   background: var(--color-main);
}

.swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
}

.general-pagination {
   text-align: center;
   margin: auto;
   margin-top: 35px;
   transform: unset !important;
}

.general-pagination .swiper-pagination-bullet {
   width: 40px;
   border-radius: 0;
   height: 1px;
   background: var(--color-main);
}

.general-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
}

/* 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;
}

@keyframes spin {
   0% {
      transform: rotate(0deg);
   }

   100% {
      transform: rotate(360deg);
   }
}
.menu-divide{
   margin: 0 37px 0px 31px;
}
/* search2 */
.search-icon {
   cursor: pointer;
   width: 50px;
   height: 50px;
   background: var(--color-main);
   border-radius: 50%;
   display: flex;
   align-items: center;
   justify-content: center;
   margin-right: 20px;
}

.search_custom.active {
   opacity: 1;
   visibility: visible;
   transform: scale(1);
}

.search_custom {
   width: 230px;
   background: #ffffff;
   position: absolute;
   bottom: -46px;
   right: 265px;
   opacity: 0;
   visibility: hidden;
   transform: scale(0);
   transition: all 0.5s;
   display: flex;
   align-items: center;
   border: 1px var(--color-main) solid; */
   padding-right: 10px;
   border-radius: 100px;
   z-index: 3;
}

.search_custom input:focus {
   box-shadow: unset;
}

.search_custom img {
}

.search_custom p {
   width: 35px;
   height: 35px;
   line-height: 35px;
   cursor: pointer;
   text-align: center;
   margin: 0px;
   color: #000;
   font-size: 16px;
   background: #7c0807 url(../images/search-icon.png) no-repeat center;
}

.search_custom input {
   width: calc(100% - 35px);
   height: 35px;
   outline: none;
   padding: 0px;
   border: 0px;
   background: transparent;
   text-indent: 10px;
   font-size: 12px;
}

.search_custom label img {filter: brightness(0);}

.search_custom input::-webkit-input-placeholder {
   color: #000;
}

.search_custom input:-moz-placeholder {
   color: #000;
}

.search_custom input::-moz-placeholder {
   color: #000;
}

.search_custom input:-ms-input-placeholder {
   color: #000;
}

.toolbar{
   display: none !important;
}

/*Toolbar 2*/
.toolbar_custom {
   width: 100%;
   bottom: 0px;
   position: fixed;
   z-index: 500;
   left: 0px;
   -webkit-filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.75));
   -moz-filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.75));
   -ms-filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.75));
   -o-filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.75));
   display: none;
}

.toolbar_custom.is-active .list-phone {
   display: block;
   -webkit-animation: quickShow 0.2s cubic-bezier(0.66, 0.45, 0.76, 1.53)
      forwards;
   animation: quickShow 0.2s cubic-bezier(0.66, 0.45, 0.76, 1.53) forwards;
}

.toolbar_custom .list-phone {
   position: absolute;
   bottom: 100%;
   left: 30px;
   opacity: 0;
   transform: scale(0);
   transform-origin: 50% 100%;
   display: none;
   min-width: 200px;
}

.toolbar_custom .list-phone a {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: space-between;
   background: #fff;
   padding: 10px 20px;
   margin: 10px 0;
   border-radius: 50px;
   padding-right: 30px;
}

.toolbar_custom .list-phone img {
   max-width: 30px;
   max-height: 30px;
}

.toolbar_custom ul li a#chatfb svg {
   filter: invert(100%) sepia(40%) saturate(2%) hue-rotate(17deg)
      brightness(109%) contrast(100%);
   fill: unset;
}

.toolbar_custom .list-phone span {
   display: block;
   width: calc(100% - 40px);
   color: #333;
   font-weight: 700;
}

.toolbar_custom .phone {
   position: relative;
   width: 50px;
   height: 50px;
   z-index: 99;
   display: flex;
   align-items: center;
   justify-content: center;
   background: var(--color-main);
   border-radius: 50%;
   margin: 0 0px -25px 30px;
   transition: transform 0.2s ease-in-out;
}

.toolbar_custom .phone a {
   color: #333;
   display: block;
   position: relative;
}

.toolbar_custom .phone a:before,
.toolbar_custom .phone a:after {
   position: absolute;
   content: "";
   top: 50%;
   left: 50%;
   transform: translate(-50%, -50%) rotate(135deg);
   width: 30px;
   height: 3px;
   border-radius: 2rem;
   background-color: #0f4334;
   opacity: 0;
   transition: opacity 0.2s ease-in-out;
}

.toolbar_custom .phone a:after {
   transform: translate(-50%, -50%) rotate(45deg);
}

.toolbar_custom .phone img {
   max-width: 27px;
   max-height: 27px;
   display: block;
   position: relative;
   fill: #0f4334;
}

.toolbar_custom.is-active .phone {
   transform: rotate(-180deg);
}

.toolbar_custom.is-active .phone img {
   opacity: 0;
}

.toolbar_custom.is-active .phone a:before,
.toolbar_custom.is-active .phone a:after {
   opacity: 1;
}

.toolbar_custom ul {
   list-style: none;
   display: flex;
   align-items: center;
   justify-content: space-between;
   padding: 0px;
   margin: 0px;
   -webkit-mask: radial-gradient(33px at 55px 0px, #0000 99%, #fff 101%) 100%;
   background: var(--color-main);
   padding: 10px 0px;
   padding-left: 100px;
   border-radius: 10px 10px 0px 0px;
}

.toolbar_custom ul li {
   text-align: center;
   width: 25%;
   line-height: 1;
}

.scrollToTopMobile img {
    width: 30px;
}

.toolbar_custom ul li a {
   display: block;
   width: 100%;
   font-size: 27px;
   color: #ffff;
}

.toolbar_custom ul li .icon {
   position: relative;
   margin: 0 auto;
   text-align: center;
}

.toolbar_custom ul li a span {
   display: none;
   font-weight: 400;
   font-size: 11px;
   margin-top: 5px;
   color: #333;
   text-transform: capitalize;
}

.toolbar_custom ul li a img,
.toolbar_custom ul li svg {
   width: 30px;
   object-fit: cover;
}

.toolbar_custom .phone img {
   animation: tada 1.2s infinite;
   /* fill: #0f4334; */
   /* filter: brightness(100); */0); */
}

.tada {
   animation: tada 1.2s infinite;
}

.lang-toolbar {
   display: flex;
   justify-content: center;
   align-items: center;
}

.toolbar_custom ul li.lang-toolbar a {
   display: inline-block;
   width: unset;
   margin: 0px 2px;
   font-size: unset;
}

.toolbar_custom ul li.lang-toolbar a img {
   height: 10% !important;
}

.ex6 path {
   fill: transparent;
   stroke: #0f4334;
   stroke-width: 0.5;
   stroke-dasharray: 1500;
   stroke-dashoffset: 1500;
   -webkit-animation: dash 5s ease forwards;
   animation: dash 5s ease forwards;
}

.flex_inner_hotline {display: flex;flex-wrap: wrap;gap: 10px;}

.flex_inner_hotline a {
   display: flex;
   justify-content: center;
   align-items: center;
   gap: 10px;
   background: var(--color-main);
   border-radius: 5px;
   color: #fff;
   padding: 5px 15px;
   font-size: 16px;
   font-weight: 600;
   transition: 0.3s ease-out;
}

.flex_inner_hotline a i {
   font-size: 20px;
}

.inner_zalo {
   background-color: #009dff !important;
}

/* Long CSS */
.header-wrapper {
   background: var(--color-main);
   padding: 10px 0px 5px 0px;
}

.header-wrapper .wrap-content {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   align-items: center;
   position: relative;
}
.header-left{}
.header-right{}
.header-top {
   display: flex;
   justify-content: space-between;
   align-items: center;
}

.header-info {
   display: flex;
   align-items: center;
   color: #fff;
   gap: 10px;
}
.header-info img{}
.header-info .info{}
.header-info .info p{}
.header-info .info b{}
.header-slogan {
}

.header-bottom {
}

.header-logo {margin-right: auto;}

.header-banner {
}

.header-hotline {
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   justify-content: space-between;
   gap: 10px;
}
.header-hotline img{

}
.header-hotline .info {
}

.header-hotline p {
}

.header-hotline span {
}

/* newsHot */

/* Album */
.album-item {
}

.album-pic {
}

.album-name {
   margin-top: 10px;
   text-align: center;
}

.album-name a {
   font-size: 16px;
   font-weight: bold;
   color: #000;
}

/*contact*/
.contact-section {
   padding: 4rem 0;
   animation: fadeIn 1s ease-in;
}

.contact-card {
   background: #fff;
   border-radius: 1.25rem;
   box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.1);
   overflow: hidden;
   display: flex;
   flex-wrap: wrap;
}

.contact-title {
   font-size: 2rem;
   font-weight: 700;
   color: var(--color-main);
   margin-bottom: 1.5rem;
   animation: slideDown 0.7s ease-out;
}

.contact-left,
.contact-right {
   flex: 1 1 100%;
   padding: 2rem;
}

@media (min-width: 992px) {
   .contact-left,
   .contact-right {
      flex: 1 1 50%;
   }
}

.contact-section .form-control,
.contact-section textarea {
   border-radius: 0.75rem;
   border: 1px solid #ddd;
   padding: 1rem;
   transition: all 0.3s ease-in-out;
   background-color: #f9f9f9;
}

.contact-section .form-control:focus,
.contact-section textarea:focus {
   background-color: #fff;
   border-color: var(--color-main);
   box-shadow: 0 0 0 0.2rem rgba(245, 124, 0, 0.2);
}

.contact-section .form-floating label {
   color: #999;
}

.contact-section .btn-primary {
   background: var(--color-main);
   border: none;
   font-weight: 600;
   padding: 0.75rem 2rem;
   border-radius: 2rem;
   transition: transform 0.2s;
}

.contact-section .btn-primary:hover {
   transform: scale(1.05);
   opacity: 0.9;
}

.contact-section .btn-outline-secondary {
   border-radius: 2rem;
}

.othernews b{margin-bottom:10px;}
.list-news-other{padding-left:17px;list-style:square;}
.list-news-other li{margin-bottom:2px;}
.list-news-other li a{text-transform:none;color:#333333;}
.list-news-other li a:hover{color:var(--color-red);}


/*Chi nhÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡nh*/
.branch-wrapper{
    position: relative;
}
.branch-wrapper .wrap-content{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
.branch-items{
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
}
.branch-name{
    text-align: center;
    background: #000;
    padding: 10px 20px;
}

.branch-name a{
      font-size: 15px;
      font-weight: 600;
      color: #fff;
      text-transform: uppercase;
}


.branch-name.active,
.branch-name:hover{
   background: #F9CC23;
}

.branch-name.active a, .branch-name:hover a {
}

.branch-name.active a, .branch-name:hover a {
    color: #A80010;
}
.branch-name.active  a{}

.branch-name:hover a{
}
.branch-ajax{
    width: 87.0833333333%;
}
.branch-map{
  width: 100%;
  }
.branch-box{
  display: none;

}

.branch-box iframe {
    width: 100%;
    border: 5px #fff solid !important;
    border-radius: 10px;
    overflow: hidden;
}

.branch-box.active {
  display: block;
}

/*video*/
.video-item {
}

.video-pic {
    position: relative;
    cursor: pointer;
}

.video-pic.dg-center {
   border: 20px #F4F7F9 solid;
   box-shadow:none;
}
.video-pic:not(.dg-center) span{
   display:none;
}
.video-pic span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

.video-pic span i {
    filter: brightness(100);
}

.video-name {
    margin: 0;
    font-size: 16px;
    font-family: 'SVN-GilroyBold';
    margin-top: 15px;
}


/* Newsletter Modal */
.newsletter-modal.modal-backdrop {
   background-color: rgba(15, 23, 42, 0.8);
   backdrop-filter: blur(8px);
   -webkit-backdrop-filter: blur(8px);
}

.newsletter-modal .modal-dialog {
   max-width: 600px;
   margin: 2rem auto;
}

.newsletter-modal .modal-content {
   border: none;
   border-radius: var(--newsletter-radius-lg);
   box-shadow: var(--newsletter-shadow);
   background-color: var(--newsletter-background);
   overflow: hidden;
   backdrop-filter: blur(20px);
   -webkit-backdrop-filter: blur(20px);
}

/* Newsletter Modal Header */
.newsletter-modal .modal-header {
   background: #553B2C;
   border-bottom: none;
   padding: 2rem 2rem 1.5rem;
   position: relative;
   color: white;
}

.newsletter-modal .modal-header::before {
   content: "";
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   background: #553B2C;
   animation: newsletter-drift 30s ease-in-out infinite;
}

@keyframes newsletter-drift {
   0%,
   100% {
      transform: translateX(0) translateY(0);
   }
   33% {
      transform: translateX(-10px) translateY(-10px);
   }
   66% {
      transform: translateX(10px) translateY(-5px);
   }
}

.newsletter-modal .modal-title {
   font-size: 1.75rem;
   font-weight: 700;
   letter-spacing: -0.025em;
   margin: 0;
   position: relative;
   z-index: 1;
   color: white;
}

.newsletter-modal .btn-close {
   position: absolute;
   top: 1.5rem;
   right: 1.5rem;
   background: rgba(255, 255, 255, 0.1);
   border: 1px solid rgba(255, 255, 255, 0.2);
   border-radius: 50%;
   width: 44px;
   height: 44px;
   padding: 0;
   opacity: 1;
   filter: none;
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
   z-index: 2;
}
.newsletter-modal .btn-close i {
   color: #fff;
   font-size: 50px;
}
.newsletter-modal .btn-close:hover {
   background: rgba(255, 255, 255, 0.2);
   border-color: rgba(255, 255, 255, 0.3);
   transform: rotate(90deg);
}

.newsletter-modal .btn-close:focus {
   box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.2);
}


/* Newsletter Modal Body */
.newsletter-modal .modal-body {
   padding: 2rem;
   background-color: #F6CE50;
   color: var(--newsletter-text);
}

.newsletter-modal .modal-body p {
   color: var(--newsletter-text-muted);
   font-size: 1rem;
   line-height: 1.6;
   margin-bottom: 1.5rem;
}

/* Newsletter Buttons */
.newsletter-modal .btn {
   padding: 0.875rem 2rem;
   font-size: 1rem;
   font-weight: 600;
   border-radius: var(--newsletter-radius);
   transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
   border: none;
}

.newsletter-modal .btn-primary {
   background: #553B2C;
   color: white;
   box-shadow: var(--newsletter-shadow-sm);
}

.newsletter-modal .btn-primary:hover {
   background: linear-gradient(
      135deg,
      var(--newsletter-primary-dark) 0%,
      #ffba00 100%
   );
   transform: translateY(-2px);
   box-shadow: 0 10px 25px -5px rgb(213 46 3 / 54%);
   color: white;
}

.newsletter-modal .btn-primary:focus {
   box-shadow: 0 0 0 0.25rem rgba(99, 102, 241, 0.2);
   color: white;
}

.newsletter-modal .btn-primary:active {
   transform: translateY(0);
   color: white;
}

.newsletter-modal .btn-outline-secondary {
   border: 2px solid var(--newsletter-border);
   color: var(--newsletter-text);
   background-color: transparent;
}

.newsletter-modal .btn-outline-secondary:hover {
   background-color: var(--newsletter-surface);
   border-color: var(--newsletter-secondary);
   color: var(--newsletter-text);
   transform: translateY(-1px);
}

.newsletter-modal .btn-outline-secondary:focus {
   box-shadow: 0 0 0 0.25rem rgba(100, 116, 139, 0.1);
   border-color: var(--newsletter-secondary);
   color: var(--newsletter-text);
}

/* Newsletter Form Validation */
.newsletter-modal .form-control.is-invalid {
   border-color: #ef4444;
   box-shadow: 0 0 0 0.25rem rgba(239, 68, 68, 0.1);
}

.newsletter-modal .form-control.is-valid {
   border-color: #10b981;
   box-shadow: 0 0 0 0.25rem rgba(16, 185, 129, 0.1);
}

.newsletter-modal .invalid-feedback {
   color: #ef4444;
   font-size: 0.875rem;
   margin-top: 0.5rem;
}

.newsletter-modal .valid-feedback {
   color: #10b981;
   font-size: 0.875rem;
   margin-top: 0.5rem;
}

/* Newsletter Modal Footer */
.newsletter-modal .modal-footer {
   background-color: transparent;
   padding: 1.5rem 2rem;
   border: 0;
}

/* Newsletter Responsive Design */
@media (max-width: 576px) {
   .newsletter-modal .modal-dialog {
      margin: 1rem;
      max-width: calc(100% - 2rem);
   }

   .newsletter-modal .modal-header,
   .newsletter-modal .modal-body,
   .newsletter-modal .modal-footer {
      padding-left: 1.5rem;
      padding-right: 1.5rem;
   }

   .newsletter-modal .modal-title {
      font-size: 1.5rem;
   }

   .newsletter-modal .btn {
      padding: 0.75rem 1.5rem;
      font-size: 0.95rem;
   }
}

/* Newsletter Animation Enhancements */
.newsletter-modal.fade .modal-dialog {
   transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
   transform: scale(0.9) translateY(-2rem);
}

.newsletter-modal.show .modal-dialog {
   transform: scale(1) translateY(0);
}

/*veTheLightHouse*/
.veTheLightHouse-wrapper{
    background: #02316F url(../images/gt-bg.png) no-repeat right;
    padding-top: 75px;
}
.veTheLightHouse-wrapper .wrap-content{}
.veTheLightHouse-box{
    margin-bottom: 55px;
}
.veTheLightHouse-title{
    position: relative;
    padding-left: 35px;
    margin-bottom: 25px;
}

.veTheLightHouse-title::before {
    content: "";
    position: absolute;
    background: #fff;
    width: 3px;
    height: 84%;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.veTheLightHouse-name{
    font-size: 65px;
    font-weight: 500;
    color: #fff;
    line-height: normal;
    margin-bottom: 15px;
    text-transform: uppercase;
}
.veTheLightHouse-desc{
    color: #fff;
}
.veTheLightHouse-btn{
    display: flex !important;
    align-items: center;
    gap: 12px;
    padding-left: 35px;
}
.veTheLightHouse-btn span{
    font-size: 13px;
    color: #fff;
}
.veTheLightHouse-pic{
    max-width: 1490px;
    display: block;
}

/*dichvuHot*/
.dichvuHot-wrapper{
   padding: 80px 0px;
   background: #F4F7F9;
}
.dichvuHot-wrapper .wrap-content{}
/* Container Grid bên trong mỗi slide */
.dichvuHot-grid {
    display: grid;
    grid-template-columns: 865fr 424fr;
    grid-template-rows: 300fr 300fr;      /* Cột phải chia 2 hàng */
    gap: 10px;
     /* Tùy chỉnh chiều cao tổng thể */
}
.dichvuHot-swiper{}
/* Thẻ card chung */
.dichvuHot-card {
    position: relative;
    overflow: hidden;
    background: #f0f0f0;
}

.dichvuHot-swiper .dichvuHot-card:first-child {
    grid-row: span 2;
}


.dichvuHot-swiper .dichvuHot-card:first-child .dichvuHot-name{
   top:0;
   right: 0 !important;
   bottom: unset !important;
   border-radius: 0px 0px 0px 15px !important;
   padding: 19px 42px;
   width: unset;
}


.dichvuHot-swiper .dichvuHot-card:first-child .dichvuHot-name a {
    font-size: 25px;
} 
.dichvuHot-swiper .dichvuHot-card:nth-child(even) .dichvuHot-name {bottom: 0;left: 0;border-radius: 0px 15px 0px 0px;}

.dichvuHot-swiper .dichvuHot-card:nth-child(odd) .dichvuHot-name {
    bottom: 0;
    right: 0;
    border-radius: 15px 0px 0px 0px;
}
.dichvuHot-swiper .dichvuHot-card:first-child .dichvuHot-title{
   display: block;
}
.dichvuHot-title{
   display: none;
   font-size: 38px;
   font-weight: bold;
   color: #fff;
   position: absolute;
   bottom: 45px;
   left: 45px;
   z-index: 3;
   margin-bottom: 0;
}
.dichvuHot-pic, .dichvuHot-pic > a {
    height: 100%;
    width: 100%;
}
.dichvuHot-pic img{
   border-radius: 10px;
}
/* Căn chỉnh ảnh */
.object-main {
    object-fit: cover;
    height: 100% !important;
}

/* Tối ưu nhãn tên giống ảnh mẫu (Label Tag) */
.dichvuHot-name {
    position: absolute;
    background: #fff;
    margin: 0;
    padding: 16px 35px;
    z-index: 10;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: 500;
    bottom: 0;
}

.dichvuHot-name a {
    font-size: 16px;
    font-weight: 500;
    color: #333;
    text-decoration: none;
    line-height: 25px;
    -webkit-line-clamp: 1;
}

/*quytrinh*/
.quytrinh-wrapper{
    margin: 65px 0px 75px 0px;
}
.quytrinh-wrapper .wrap-content{}
.quytrinh-grid{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 60px;
}
.quytrinh-item{
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 15px;
    position: relative;
    padding-right: 50px;
}

.quytrinh-item:not(:last-child) {
}

.quytrinh-item:not(:last-child)::before {
    content: "";
    position: absolute;
    background: url(../images/qt-arrow.png);
    width: 16px;
    height: 13px;
    left: 100%;
    top: 25%;
    transform: translateY(-50%);
}
.quytrinh-pic{}
.quytrinh-name{
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 0;
    line-height: 24px;
    -webkit-line-clamp: 1;
}
.quytrinh-step{
    color: #033E8A;
}
.quytrinh-desc{
    font-size: 13px;
    color: #646464;
    line-height: 24px;
    -webkit-line-clamp: 2;
}

/*duanListHot*/
.duanListHot-wrapper{
    padding: 80px 0px;
    background: #F4F7F9;
}
.duanListHot-wrapper .wrap-content{
    max-width: 100%;
}
.duanListHot-load{}
.duanListHot-show{}
.duanHot-grid{
    display: grid;
    grid-template-columns: repeat(5,1fr);
    gap: 20px;
}
.duanHot-card{
    position: relative;
    border-radius: 15px;
    overflow: hidden;
}
.duanHot-pic{
    position: relative;
    display: block;
}

.duanHot-pic::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 10px;
    background: linear-gradient(180deg, rgba(60, 60, 60, 0.00) 64.13%, #1B1B1B 100%);
    bottom: 0;
    left: 0;
}
.duanHot-name{
    margin-bottom: 0;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    text-align: center;
    padding: 0 15px;
    padding-bottom: 25px;
}
.duanHot-name a{
    font-size: 18px;
    font-weight: bold;
    color: #fff;
}

.duanHot-name a:hover {
    color: #FFB01E;
}

.title-cat-main{
    white-space: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 7px;
    max-width: 1300px;
    margin: auto;
    margin-bottom: 30px;
    text-align: center;
}
.title-cat-main p{
    margin: 5px;
    padding: 14px 20px;
    border: 1px #000 solid;
    border-radius: 5px;
    cursor: pointer;
    display: inline-block;
}
.title-cat-main p span{
    color: #424242;
    text-transform: uppercase;
}
.title-cat-main p.active{
    border-color: var(--color-main);
    background: var(--color-main);
}
.title-cat-main p.active span{
    color: #fff;
}


/*thanhtuu*/
.thanhtuu-wrapper {
    background: url(../images/tt-bg.png) no-repeat;
    background-size: cover;
    padding: 80px 0px;
}
.thanhtuu-wrapper .wrap-content {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.thanhtuu-pic {
    width: 51.1538461538%;
}
.thanhtuu-box {
    width: 51.1538461538%;
    margin-left: -30px;
    background: #F4F7F9;
    padding: 80px 50px 80px 50px;
}

.thanhtuu-title {
    font-size: 34px;
    font-weight: 500;
    color: #033E8A;
    margin-bottom: 12px;
}

.thanhtuu-slogan {
    font-size: 15px;
    color: #747474;
    margin-bottom: 45px;
}
.thanhtuu-container {max-height: 200px;overflow: hidden;overflow-y: auto;padding-right: 20px;}

.thanhtuu-item:not(:last-child) {
   margin-bottom: 40px;
}

.thanhtuu-header {
   margin-bottom: 10px;
}

.thanhtuu-label {
   font-size: 15px;
   color: #000;
}

/* Gray Background Bar */
.thanhtuu-bar {
   width: 100%;
   height: 2px;
   background-color: #dcdcdc;
   position: relative;
   margin-top: 10px;
}

/* Blue Progress Bar */
.thanhtuu-progress {
   height: 100%;
   background-color: #0068EE;
   position: relative;
   /* Important for absolute positioning children */
   transition: width 6s cubic-bezier(0.22, 1, 0.36, 1);
   min-width: 0;
   /* Ensures 0% still has space to show the text slightly */
}

/* The Diagonal Tick Mark (/) */
.thanhtuu-progress::after {
   content: '';
   position: absolute;
   right: -2px;
   top: -6px;
   width: 1px;
   height: 14px;
   background-color: #0068EE;
   transform: rotate(25deg);
}

/* The Percent Number - Floating at the end */
.thanhtuu-percent {
   position: absolute;
   right: 0;
   /* Aligns text to the right tip of the blue bar */
   top: -40px;
   /* Moves text UP above the bar */
   font-size: 20px;
   color: #000;
   white-space: nowrap;
   /* Optional: Transform to center the text exactly over the tip */
   transform: translateX(50%);
}

/*newsletter*/
.newsletter-wrapper{
    background: #F4F7F9;
    padding: 80px 0px;
    margin-bottom: 65px;
}

.newsletter-wrapper .wrap-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.newsletter-banner{
    width: 40.3846153846%;
    padding-left: 10px;
    position: relative;
}

.newsletter-banner::before {
    content: "";
    position: absolute;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    border: 1px solid var(--color-main);
    border-radius: 1000px 1000px 0px 0px;
    top: 0;
    left: 0;
}

.newsletter-banner img {
    border-radius: 1000px 1000px 0px 0px;
    position: relative;
    z-index: 2;
}
.newsletter-form{}
.newsletter-slogan{
    font-size: 25px;
    font-weight: 600;
    color: #8E8E8E;
}
.newsletter-title{
    font-size: 55px;
    font-weight: bold;
    color: #033E8A;
    background: url(../images/dknt-deco.png) no-repeat bottom;
    padding-bottom: 25px;
    margin-bottom: 45px;
}


.newsletter-form{
    width: 56.9230769231%;
}
.newsletter-form form{}

.newsletter-input {
   height: 45px;
   border-bottom: 1px #DFE2E3 solid;
   margin-bottom: 24px;
}

.newsletter-textarea {
    border-bottom: 1px #DFE2E3 solid;
    height: 70px;
    margin-bottom: 20px;
}
.newsletter-input *{
   height: 100% !important;
}
.newsletter-input input {}

.newsletter-input input.fullname{
   background: url(../images/dk-fullname.png) no-repeat 95%;
}
.newsletter-input input.address{
   background: url(../images/dk-address.png) no-repeat 95%;
}
.newsletter-input input.email{
   background: url(../images/dk-mail.png) no-repeat 95%;
}
.newsletter-input input.phone{
   background: url(../images/dk-phone.png) no-repeat 95%;
}
.newsletter-textarea textarea.content{
   background: url(../images/dk-content.png) no-repeat 97% 15%;
}

.newsletter-textarea {}
.newsletter-textarea textarea {
    height: 100% !important;
}
.newsletter-notify{
    font-size: 13px;
    font-style: italic;
    color: #676767;
    margin-bottom: 20px;
}
.newsletter-button {
   width: fit-content;
   border-radius: 1000px;
   text-align: center;
   display: flex;
   flex-wrap: wrap;
   align-items: center;
   background: #033E8A;
   padding: 4px;
}

.newsletter-button img {
    width: 42px;
}
.newsletter-button input {
   border: 0;
   font-size: 13px;
   color: #fff;
   text-transform: uppercase;
   padding: 0 20px 0px 43px;
}

.newsletter-input label,
.newsletter-textarea label{
    font-size: 14px;
    color: #434343;
    padding-left: 0;
    padding-top: 0;
}

.newsletter-input label span, .newsletter-textarea label span {
    color: var(--color-main);
}

.newsletter-input input:focus,
.newsletter-textarea textarea:focus {
    box-shadow: unset;
}
.newsletter-input input ,
.newsletter-textarea textarea
{
   border: 0;
   border-radius: 0;
}


/*cnntHot*/
.cnntHot-wrapper{
    margin-bottom: 80px;
}
.cnntHot-wrapper .wrap-content{}
.cnntHot-swiper{}
.cnntHot-pagination{}
.cnntHot-card{
    display: flex;
    flex-direction: column;
    gap: 15px;
    align-items: flex-start;
}
.cnntHot-pic{
    position: relative;
}
.cnntHot-pic a{}
.cnntHot-pic  a:nth-child(1) img {
    -webkit-mask-image: url(../images/tt-mask.png);
    mask-image: url(../images/tt-mask.png);
    mask-repeat: no-repeat;
    mask-size: 100%;
}
.cnntHot-btn{
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 2;
}
.cnntHot-date{
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 13px;
    color: var(--color-main);
    border: 2px solid var(--color-main);
    padding: 6px 10px;
    border-radius: 5px;
}
.cnntHot-name{
    margin-bottom: 0;
}
.cnntHot-name a{
    font-size: 18px;
    font-weight: 500;
    color: var(--color-main);
    line-height: normal;
    -webkit-line-clamp: 1;
}
.cnntHot-desc{
    font-size: 13px;
    line-height: 30px;
}

.video_doitac-bg{
   background: #F4F7F9;
   padding: 65px 0px 80px 0px;
}
/*video*/
.video-wrapper{
    margin-bottom: 40px;
}

.video-wrapper .title-main {
    padding: 0;
    background: none;
    margin-bottom: 20px;
}
.video-wrapper .wrap-content{
    max-width: 100%;
}
.video-padd{
    position: relative;
}
.video-padd nav{
   
}
.video-padd .dg-prev {
    position: absolute;
    top: 50%;
    left: 30px;
    transform: translateY(-50%);
}

.video-padd .dg-next {
    position: absolute;
    top: 50%;
    right: 30px;
    transform: translateY(-50%);
    cursor:pointer;
    z-index: 3;
}
.dg-container .video-pic img{
    object-fit: cover;
}
.video-prev{}
.video-next{}

/*doitac*/
.doitac-wrapper{
}
.doitac-wrapper .wrap-content{
    max-width: 100%;
}
.doitac-swiper{
    position: relative;
    padding: 0 35px;
}
.doitac-pagination{
    margin-top: 40px;
}

.doitac-pagination span {
    width: 10px !important;
    height: 10px !important;
    border-radius: 50% !important;
}
.doitac-pagination span:not(.swiper-pagination-bullet-active){
   opacity: 1 !important;
   background: transparent;
   border: 1px #C8C8C8 solid !important;
}
.doitac-next{
      position: absolute;
      right: 0;
      top: calc(50% - 25px);
      transform: translateY(-50%);
}
.doitac-prev{
    position: absolute;
    left: 0;
    top: calc(50% - 25px);
    transform: translateY(-50%);
}
/*Trang trong*/
/*theLightHouse*/
.theLightHouse-banner{}
.theLightHouse-wrapper{
    padding: 80px 0px;
    background: #F4F7F9;
}
.theLightHouse-wrapper .wrap-content{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px;
    align-items: center;
}
.theLightHouse-box{
    width: 35%;
}
.theLightHouse-title{}
.theLightHouse-name{
    font-size: 50px;
    font-weight: 500;
    color: var(--color-main);
    text-transform: uppercase;
}
.theLightHouse-desc{
    margin-bottom: 25px;
}
.theLightHouse-btn{
   display: inline-flex !important;
   align-items: center;
   border: 1px #252525 solid;
   padding: 2px;
   border-radius: 100px;
}

.theLightHouse-btn span {flex: 1;font-size: 13px;color: #252525;padding: 0 25px;}
.theLightHouse-pic{
    flex: 1;
    display: block;
}

.solieu-wrapper {
    background: url(../images/solieu-bg.png) no-repeat;
    background-size: cover;
    padding: 100px 0px 70px 0px;
    color: #fff;
}

.solieu-grid {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 40px;
    text-align: center;
}

.solieu-circle {
    position: relative;
    width: 160px;
    height: 160px;
    margin: 0 auto 20px;
}

.solieu-svg {
    width: 100%;
    height: 100%;
    transform: rotate(-90deg);
}

.solieu-bg {
    fill: none;
    stroke: rgba(255,255,255,0.2);
    stroke-width: 3;
}

.solieu-progress {
    fill: none;
    stroke: #D9D9D9;
    stroke-width: 3;
    stroke-linecap: round;
    stroke-dasharray: 327;
    stroke-dashoffset: 327;
    transition: stroke-dashoffset 1.5s ease;
}

.solieu-solieu {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 36px;
    font-weight: 400;
}

.solieu-name {
    font-size: 18px;
    font-weight: 400;
    margin-bottom: 8px;
    text-transform: uppercase;
    -webkit-line-clamp: 1;
}

.solieu-desc {
    font-size: 15px;
    line-height: 25px;
}

/*tamnhin*/
.tamnhin-wrapper{
    margin: 70px 0px 80px 0px;
}
.tamnhin-wrapper .wrap-content{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.tamnhin-banner{
   width: 51.1538461538%;
}
.tamnhin-items{
    width: 46.1538461538%;
    max-height: 350px;
    overflow: hidden;
    overflow-y: auto;
    padding-right: 20px;
}

.tamnhin-item {margin-bottom: 30px;}

.tamnhin-item.active .tamnhin-name span, .tamnhin-name:hover span {
    color: var(--color-main);
}

.tamnhin-name {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    gap: 30px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #D9D9D9;
}
.tamnhin-name span{
   flex: 1;
   font-size: 25px;
   color: #000;
   font-weight: 400;
   text-transform: uppercase;
   line-height: 30px;
   -webkit-line-clamp: 1;
}
.tamnhin-btn {
    width: 30px;
}
.tamnhin-btn img{
    transition: transform 0.3s ease;
   
}
.tamnhin-desc {
    display: none;
    font-size: 15px;
    line-height: 30px;
    color: #555;
}

.tamnhin-item.active .tamnhin-btn img {
    transform: rotate(45deg);
}

/*solieu2*/
.solieu2-wrapper{
    background: url(../images/solieu2-bg.png) no-repeat;
    background-size: cover;
    padding: 130px 0px;
}
.solieu2-wrapper .wrap-content{}
.solieu2-grid{
    display: grid;
    grid-template-columns: repeat(4,1fr);
    gap: 10px;
}
.solieu2-item{
    text-align: center;
    color: #fff;
}
.solieu2-solieu{
    margin-bottom: 12px;
}
.solieu2-count{
    font-size: 90px;
    font-weight: 100;
    line-height: normal;
}
.solieu2-name{
    font-size: 18px;
    font-weight: 400;
}

/*feedback*/
.feedback-wrapper{
    margin: 70px 0px;
}
.feedback-wrapper .wrap-content{
    max-width: 1355px;
}
.feedback-swiper{position: relative;padding: 0 30px;}
.feedback-prev{
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.feedback-next{
   position: absolute;
   right: 0;
   top: 50%;
   transform: translateY(-50%);
}
.feedback-pagination{}
.feedback-card{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.feedback-pic{
    width: 345px;
}
.feedback-info{
    width: 310px;
    margin-left: -25px;
    position: relative;
    z-index: 2;
    background: #F4F7F9;
    padding: 34px 25px;
    text-align: center;
}
.feedback-content{
    color: #383838;
    line-height: 30px;
    margin-bottom: 15px;
}
.feedback-name{
    font-size: 16px;
    color: #383838;
    font-weight: 500;
}
.feedback-desc{
    font-size: 13px;
    color: #7D7D7D;
    -webkit-line-clamp: 1;
}
.theLightHouse2_loicamon-gioithieu-bg{
    background: #F4F7F9;
    padding: 80px 0px;
}
/*theLightHouse2*/
.theLightHouse2-wrapper{
    margin-bottom: 70px;
}
.theLightHouse2-wrapper .wrap-content{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.theLightHouse2-box{
    width: 37.3076923077%;
    text-align: center;
}
.theLightHouse2-name{
    font-size: 22px;
    font-weight: 400;
    color: var(--color-main);
    text-transform: uppercase;
    line-height: 35px;
}
.theLightHouse2-desc{
    margin-bottom: 25px;
}
.theLightHouse2-signature{
    font-size: 40px;
    font-family: 'SpanishSignature';
    color: var(--color-main);
    line-height: normal;
}
.theLightHouse2-pic{
    width: 59.2307692308%;
}

/*loicamon*/
.loicamon-wrapper{
    margin-bottom: 80px;
}
.loicamon-wrapper .wrap-content{
    max-width: 860px;
    text-align: center;
}
.loicamon-name{
    font-size: 35px;
}
.loicamon-desc{}

.news-column{
   column-count: 3;
   gap: 10px;
}

.news-column .box-album {
    margin-bottom: 10px;
}