/* Fonts */
@font-face {
	font-family: 'SVN-Poppins';
	src: url('../fonts/SVN-Poppins-Light.woff');
	font-display: swap;
	font-weight: 300;
}
@font-face {
	font-family: 'SVN-Poppins';
	src: url('../fonts/SVN-Poppins Regular.woff');
	font-display: swap;
	font-weight: 400;
}
@font-face {
	font-family: 'SVN-Poppins';
	src: url('../fonts/SVN-Poppins Medium.woff');
	font-display: swap;
	font-weight: 500;
}
@font-face {
	font-family: 'SVN-Poppins';
	src: url('../fonts/SVN-Poppins SemiBold.woff');
	font-display: swap;
	font-weight: 600;
}
@font-face {
	font-family: 'SVN-Poppins';
	src: url('../fonts/SVN-Poppins Bold.woff');
	font-display: swap;
	font-weight: 700;
}
@font-face {
	font-family: 'SVN-Poppins';
	src: url('../fonts/SVN-Poppins ExtraBold.woff');
	font-display: swap;
	font-weight: 800;
}
@font-face {
	font-family: 'SVN-Poppins';
	src: url('../fonts/SVN-Poppins-Black.woff');
	font-display: swap;
	font-weight: 900;
}
:root {
	--color-main: #0661AA;
	--color-social: #2557ae;
	--color-hover: #D61414;
	--color-text: #333;
	--border-color: #f3f4f6;
	--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
	--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, 0.05), 0 10px 10px -5px rgba(0, 0, 0, 0.02);
	--brand-primary: #0661AA;
	--brand-gradient: linear-gradient(135deg, #0661AA 0%, #1e3a8a 100%);
}

body {
	font-size: 14px;font-family: 'SVN-Poppins';font-weight: 400;
	line-height: 1.5;
}
body::-webkit-scrollbar-track
{
	-webkit-box-shadow: inset 0 0 6px rgba(0,0,0,0.3);
	background-color: #F5F5F5;
	/* border-radius: 10px; */
}

body::-webkit-scrollbar
{
	width: 8px;
	background-color: #F5F5F5;
}

body::-webkit-scrollbar-thumb
{
	border-radius: 10px;
	background-image: -webkit-gradient(linear,
									   left bottom,
									   left top,
									   color-stop(0.44, rgb(133, 167, 235)),
									   color-stop(0.72, rgb(79, 138, 211)),
									   color-stop(0.86, rgb(4, 46, 170)));
}
.max-width,
.wrap-content {
	width: calc(100% - 20px);
	max-width: 1300px;
	margin: auto;
}
.h-100{
	height: 100%;
}
.mw-700 {
	max-width: 700px;
}
img {
	max-width: 100%;display: inline-block;
}

* {
	box-sizing: border-box;
}
.content-main table{
	border-collapse: inherit !important;
  all: revert-layer;
}
.content-main table thead, .content-main table tbody, .content-main table tfoot,.content-main table tr,.content-main table td,.content-main table th{
    border-width: unset;border-collapse: inherit !important;
  all: revert-layer;
}
input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
input[type="number"] {
  -moz-appearance: textfield;
}
a {
	text-decoration: none;
}
.padding-top-bottom{
	padding: 60px 0;
}
.he-first {
    max-height: 300px;
    overflow: hidden;
    position: relative;
}

.he-first:before {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100px;
    background: linear-gradient(to top, #ffffff, transparent);
    content: '';
}
.he-first.heigt-auto {
    max-height:unset;
}
.he-first.heigt-auto:before{display: none;}
.social-plugin {
	display: flex;
	margin-top: 10px;
}
.scale-img {
	overflow: hidden;
	display: block;
}
.scale-img img, .scale-img picture {
	transition: all 0.5s;
}

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

.hover-img {
	position: relative;
	overflow: hidden;
	display: block;
}
.hover_sang2 {
  position: relative;
  overflow: hidden;
}

.hover_sang2:before {
  position: absolute;
  top: 0;
  left: -85%;
  z-index: 10;
  display: block;
  content: '';
  width: 50%;
  height: 100%;
  background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .3) 100%);
  -webkit-transform: skewX(-25deg);
  transform: skewX(-25deg);
}

.hover_sang2:hover:before {
  transition: 1s;
  left: 100%;
}
.text-split {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: normal;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	-webkit-line-clamp: 3;
}
.p-relative {
	position: relative;
}
.blink{
	animation: blink 1.5s infinite;
}
.delay-1s{
	animation-delay: 1s;
}
/* @keyframe */
@keyframes spin {
	to {
		transform: rotate(360deg);
	}
}
@keyframes blink {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
@keyframes shake-anim {
	0% {
		transform: rotate(0) scale(1) skew(1deg);
	}
	10%,
	30% {
		-moz-transform: rotate(-25deg) scale(1) skew(1deg);
	}
	20%,
	40% {
		-moz-transform: rotate(25deg) scale(1) skew(1deg);
	}
	100%,
	50% {
		-moz-transform: rotate(0) scale(1) skew(1deg);
	}
}
@keyframes rotate {
	from {
		transform: rotate(0);
	}
	to {
		transform: rotate(360deg);
	}
}
@keyframes fadeup {
	from {
		opacity: 0;
		transform: translateX(-20px);
	}
	to {
		opacity: 1;
		transform: translateX(0);
	}
}
@keyframes pulse-animation {
	0% {
		transform: scale3d(1, 1, 1);
		opacity: 0;
	}
	10% {
		transform: scale3d(1.1, 1.1, 1.1);
		opacity: 1;
	}
	100% {
		transform: scale3d(1.6, 1.6, 1.6);
		opacity: 0;
	}
}
@keyframes border-animation {
	0% {
		transform: scale3d(0.6, 0.6, 0.6);
		opacity: 0;
	}
	20% {
		transform: scale3d(1.2, 1.2, 1.2);
		opacity: 1;
	}
	100% {
		transform: scale3d(1.4, 1.4, 1.4);
		opacity: 0;
	}
}
@keyframes spin {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* 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-20{--bs-gutter-x: 20px;}
.gutter-x-5{--bs-gutter-x: 5px;}
/*   Header   */
.header {
	background: #f5f5f5;
	padding:10px 0;
}
.address-header{
	display:flex;gap:5px;align-items:center;
}
.flex-right-header{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 0;
	gap:10px;align-items:center;
}
.flex-right-header li{

}
.flex-right-header li.line-item{
	height:15px;
	width:1px;background:var(--color-text);
}
.flex-right-header li a{
	color:var(--color-text);text-transform:capitalize;
}
.flex-right-header li a.active{
	color:var(--color-main);
}
.flex-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.cart-head {
	position: relative;
	color: #333;
	display: flex;
	align-items: center;
	gap:15px;
}
.cart-head.cart-navigation{
	display: none;
}
.cart-head:hover {
	color: var(--color-hover);
}
.info-text-cart{}
.text-cart{display:block;font-weight: 600;}
.text-cart1{display:block;color:#737373;font-size: 13px;}
.cart-head i {
	font-size: 20px;
}
.cart-head .count-cart {
	position: absolute;
	z-index: 999;
	color: #fff;
	background: var(--color-main);
	border-radius: 50%;
	top:0px;
	left: 15px;
	width: 20px;
	height: 20px;
	text-align: center;
}
.menu-head {
	display: flex;
	gap: 20px;
	justify-content: space-between;
	align-items: center;
}
.menu-head a {
	color: #fff;
}
.menu-head a:hover {
	color: #fed402;
}
.line-head {
	background-color: #72b2fd;
	height: 32px;
	width: 1px;
}

/* slideshow */
.slideshow {
	position: relative;
}
/* Search */
.search {
	width: 100%;
	max-width: 500px;
	background: #F4F4F4;
	position: relative;
	border-radius: 30px;height:42px;
}
.search input {
	width: calc(100% - 45px);
	font-size: 14px;
	color: #333;
	border-radius: 10px;
	border: none;
	background: transparent;
	padding-left:20px;
	height:100%;
}
.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;
}
.search p {
	width: 45px;
	height: 42px;
	cursor: pointer;
	line-height: 42px;
	text-align: center;
	font-size: 16px;
}
.search p 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;
}
.company{
	border-bottom: 1px solid #f1f1f1;
	padding-bottom: 10px;
}
.company p{margin-bottom: 5px;font-size: 13px;}
.company p span{
	color: #007bff;
}
.head-menu{
	display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.head-menu img{
	max-width: 80px;
}


/*   SLider */
.control-owl {
	position: absolute;
	width: 100%;
	z-index: 2;
	left: 0px;
	top: calc(50% - 22.5px);
}
.control-owl button {
	opacity: 0.5;
	top: 0px;
	position: absolute;
	outline: none;
	border: 2px solid #fff;
	padding: 0px;
	margin: 0px;
	display: block;
	cursor: pointer;
	color: #ffffff;
	width: 30px;
	height: 30px;
	border-radius: 50%;
	overflow: hidden;
	text-align: center;
	font-size: 25px;
	margin: 0px;
	background-color: #00a3ff;
	display: flex;
	align-items: center;
	justify-content: center;
}
.control-owl button:hover {
	opacity: 1;
}
.control-owl button.owl-prev {
	left: 20px;
}
.control-owl button.owl-next {
	right: 20px;
}
/* DT */

.item-partner{border:1px solid #f1f1f1;display: block;}
.box-photo-ct {
	border-radius: 20px;
	overflow: hidden;
}
.title-detail {
	position: relative;
	margin: 20px 0px;
}
.title-detail h1 {
	font-size: 20px;
	color: #333;
	font-weight: 700;
	text-align: left;
	text-transform: uppercase;
}
.title-main {
	position: relative;
	text-align: center;
}
.title-main span {
	font-size: 1.5em;
	font-weight: bold;
	text-transform: uppercase;
}
.tt-week {
	font-size: 25px;
	text-align: center;
	margin: 20px 0px;
	color: #fff;
	font-weight: 700;
	text-transform: uppercase;
}
.title-cat-main {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}
.title-cat-main span {
	display: block;
	color: #999;
	background: linear-gradient(64.85deg, #fca600 23.67%, #ffd41d 106.12%);
	background-color: #fff;
	padding: 10px;
	border-radius: 10px;
	cursor: pointer;
}
.title-cat-main span:hover,
.title-cat-main span.active {
	background: linear-gradient(64.85deg, #ffd41d 23.67%, #fca600 106.12%);
	color: #000;
}
/* News */
.grid-tintuc {
	display: -webkit-box;
	display: -moz-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	flex-flow: row wrap;
	-webkit-flex-flow: row wrap;
	justify-content: space-between;
}
.news {
	display: block;
	margin-bottom: 20px;
	display: block;
}
.pic-news {
	border-radius: 10px;
	display: block;
	overflow: hidden;
	position: relative;
}
.pic-news img {
	width: 100%;
}
a.views {
	display: inline-block;
	text-decoration: none;
	margin-top: 10px;
	border: solid 1px #ccc;
	padding: 7px 20px;
	border-radius: 20px;
	color: #000;
	font-size: 16px;
}
a.views:hover {
	border: solid 1px #fed402;
	color: #fed402;
}
.info-news {
}
.info-news h3 {
}
.name-news {
	color: #1b1b1b;
	font-size: 18px;
	line-height: 22px;
	max-height: 40px;
	-webkit-line-clamp: 2 !important;
	font-weight: 400;
}
a.name-news.name1 {
	font-size: 25px;
	line-height: 32px;
	max-height: 64px;
}
.name-news:hover {
	color: #fed402;
}
.time-news {
	color: #fed402;
	margin-bottom: 0px;
	font-size: 12px;
	margin: 7px 0;
	font-style: italic;
	font-weight: 500;
}
.desc-news {
	color: #333333;
	margin: 0px;
}
.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;
}
.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: #fed402;
}
/* Toc */
.box-readmore {
	padding: 8px 15px;
	border: 1px solid #dedede;
	margin-bottom: 2rem;
	border-radius: 5px;
	background-color: #eeeeee;
}

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

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

/* Partner */
.info-partner {
	background: #f8f8f8;
	padding: 15px 0px;
}

/* Footer */

.info-footer .flex-footer {
	display: flex;
	justify-content: space-between;
	gap: 20px;
	color: #333;
	margin-bottom: 30px;
}
.info-footer {
	background: #F7F7F7;
	padding: 50px 0px;
}
.title-footer {
	margin-bottom: 0.75rem;
	font-size: 18px;
	font-weight: 600;
	text-transform: capitalize;
	color: #333;
}
.box-footer:nth-child(1) {
	width: 10%;
}
.box-footer:nth-child(2) {
	width: 22%;
}
.box-footer:nth-child(3) {
	width: 12%;
}
.box-footer:nth-child(4) {
	width: 18%;
}
.box-footer:nth-child(5) {
	width: 20%;
}
.map-footer {
	position: relative;
	width: 100%;
	height: 200px;
}
.map-footer iframe {
	position: absolute;
	width: 100%;
	height: 100%;
}
.footer-powered {
	color: #333333;background:#f5f5f5;
}
.footer-powered .wrap-content{
	padding:20px 0;
	border-top:1px solid #CCCCCC;
}
.flex-powered {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.statistic span {
	position: relative;
	padding: 0px 5px;
}

/* Tags */
.title-tags {
	position: relative;
	font-size: 18px;
	font-weight: 600;
	margin-bottom: 15px;
	color: #333;
}
.flex-tags {
	display: flex;flex-wrap:wrap;
	gap: 10px;
}
.flex-tags a {
	color: #333;
	border-radius: 3px;
	display: inline-flex;
	padding:8px 15px;
	background:#E8E8E8;
	line-height:22px;
	gap: 5px;
}
.flex-tags a:hover {
	background-color: var(--color-main);
	color: #fff;
	opacity: 1;
}
.flex-tags a:hover svg g{stroke:#fff;}
/*   TC   */
.item-criteria a {
	display: flex;
	align-items: center;
	color: #333;
}
.item-criteria a .ds-criteria {
	width: calc(100% - 60px);
	margin-left: 10px;
}
.item-criteria a .ds-criteria h3 {
	-webkit-line-clamp: 2;
	font-size: 16px;
	color: var(--color-main);
}
.item-criteria a .ds-criteria p {
	-webkit-line-clamp: 2;
	margin: 0px;
}

/* About */
.flex-about {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.content-about {
	width: 50%;
}

.photo-about {
	width: 48%;
}
.title-about {
	margin-bottom: 20px;

}
.title-about h3 {
	font-size: 30;
	color: #333;
	text-transform: uppercase;
}
.view-about {
	display: block;
	font-size: 15px;
	text-transform: uppercase;
	margin: 30px 0px 20px;
	color: #333;
	text-align: center;
}
.view-about span {
	position: relative;
	z-index: 1;
}
.view-about span:hover {
	color: #f00;
}
.view-about span:after {
	content: '';
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #c2d2a7;
	position: absolute;
	z-index: -1;
	left: 4%;
	top: 50%;
	transform: translateY(-50%) translateX(-50%);
}

/* Service */
.item-service {
	position: relative;
}
.item-service h3 {
	position: absolute;
	left: 0px;
	right: 0px;
	bottom: 0px;
	color: #fff;
	text-transform: uppercase;
	padding: 10px;
	font-size: 17px;
	margin: 0px;
}
/* Video */
.flex-video {
	display: flex;
	justify-content: space-between;
}
.wr-video {
	width: 49%;
}
.wr-form {
	width: 49%;
}

.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;
}
.item-video:hover span{
	transform: translateX(-50%) translateY(-50%) rotate(360deg);
}
.item-video h3{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);
}
.wrap-product-sale {
	background-color: #ffa09e;
	border-radius: 10px;
	overflow: hidden;
}
.wr-search p {
	font-weight: bold;
	text-transform: uppercase;
}

.product {
	display: block;
	position: relative;
	background: #fff;
	border-radius: 5px;
	text-align: center;
	box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
	margin:4px;
}
.product .pic-product {
	background: #fff;
	margin-bottom: 10px;
	display: block;
	position: relative;
	overflow: hidden;
	border-radius: 5px;
}
.product:hover .pic-product {
}
.product .pic-product img {
	width: 100%;
	-webkit-transform-style: preserve-3d;
	height: 100%;
	object-fit: cover;
	border-radius: 5px;
}
.product .pic-product > a {
	display: flex;
	width: 100%;
	align-items: center;
	justify-content: center;
	text-align: center;
	border-radius: 5px;
}
.first_img {
	position: absolute;
	top: 0;
	transition: all 0.5s ease;
	height: 100%;
}
.product:hover .first_img {
	transform: scale(0);
}
.second_img {
	display: block;
	position: absolute;
	top: 0;
	right: 100%;
	transition: all 0.5s ease;
	height: 100%;
}
.product:hover .second_img {
	right: 0;
	top: 0;
	transition: all 0.5s ease;
}
.product .info-product{
	padding:10px;
}
.product .name-product {
	margin-bottom: 5px;
	font-weight: normal;
}
.product .name-product a {
	font-size: 15px;
	color: #232323;
	font-weight: 600;
}
.product .name-product a:hover {
	color: #ff2e00;
}
.product .name-product .text-split {
	height: 30px;
	-webkit-line-clamp: 1;
	line-height: 30px;
}
.product .price-product {
	margin-bottom: 10px;
	color: #555;
}
.product .price-new {
	font-size: 16px;
	font-weight: 600;
	color: var(--color-hover);
	display: inline-block;
	text-transform: uppercase;
}
.product .price-old {
	padding: 0 10px;
	font-size: 14px;
	text-decoration: line-through;
	display: block;
	color: #333;
	text-transform: uppercase;
}
.product .price-per {
	color: #ff2e00;
	font-size: 13px;
	text-align: center;
	font-weight: 700;
}
.brand-product{
	color:#5C5C5C;
}
.brand-product span{}
.view-buy-product{
	color:#5C5C5C;
}
.view-buy-product span{}
.btn-product-buy{
    margin-top: 20px;
}
.btn-product-buy a.buynow{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:10px;
	padding:10px;
	background:var(--color-main);
	max-width:90%;
	margin:auto;
	border-radius:5px;
	color:#fff;
	text-transform:capitalize;
	font-weight: 600;
	font-size: 15px;
	cursor: pointer;
}
.view-product-home{
	text-align:center;margin-top:30px;
}
.view-product{
	display:inline-flex;gap:10px;align-items:center;justify-content:center;
	border-radius: 42px;
	border: 1px solid var(--color-main, #0661AA);
	background: #FFF;
	box-shadow: 0 2px 2px 0 rgba(0, 52, 93, 0.25);
	padding:10px 20px;text-transform: capitalize;
	font-weight: 600;
	color:var(--color-main);transition:all ease .5s;
}
.view-product:hover{
	letter-spacing:1.5px;
}
.box-cat {
	text-align: center;
}
.box-cat h3 {
	font-size: 14px;
	color: #333;
	margin-top: 10px;
}
.box-cat:hover h3 {
	color: #f00;
}
.cart-product {
	margin: 5px 0 0 0px;
}
.cart-product span {
	cursor: pointer;
	color: #fff;
	text-align: center;
	padding: 0px 5px;
	border-radius: 5px;
	display: inline-block;
	line-height: 34px;
	font-size: 13px;
	font-weight: 700;
}
.cart-add {
	margin-left: 10px;
	background-color: #00a5d9;
	width: 155px;
}
.cart-add:hover {
	background-color: #fed402;
}
.cart-buy {
	background-color: #ff2e00;
	width: 93px;
	height: 33px;
}
.cart-buy:hover {
	background-color: #fed402;
}
.grid-product {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 20px;
}

.grid-product > * {
	max-width: 100%; /* Giới hạn kích thước */
	min-width: 0; /* Ngăn phần tử mở rộng quá mức */
  }
.grid-product .product .product-info {
	margin-top: 10px;
	color: #333;
}
.grid-product .product .product-info h3 {
	font-size: 17px;
	color: #333;
}
.grid-product .product .product-info .price span {
	color: #f00;
}
.grid-product .product .pic-product {
	border: 1px solid #ddd;
}

/* product detail */

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

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

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

.detail-product {
	display: flex;
	justify-content: space-between;
}
.detail-product .left-pro-detail {
	width: 40%;
	border: 1px solid #ddd;
}
.detail-product .right-pro-detail {
	width: 57%;
}
.detail-product .right-pro-detail ul {
	list-style: none;
	padding: 0px;
}
.detail-product .right-pro-detail ul li {
	margin-bottom: 20px;
}
.detail-product .right-pro-detail ul li .title-pro-detail {
	font-size: 18px;
}
.detail-product .right-pro-detail ul li .attr-content-pro-detail {
	display: inline-block;
	margin-bottom: 0px;
}
.attr-content-pro-detail a{
	font-weight:600;color:var(--color-main);text-transform:capitalize;
}
.detail-product .right-pro-detail ul li .attr-content-pro-detail .price-new-pro-detail {
	font-weight: 700;
	font-size: 20px;
	color: #f00;
}
.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;}
/* css block actions  */
.ul-actions {
	display: flex;
	justify-content: center;
	margin: 20px;
	gap: 15px;
	align-items: flex-start;
}
.ul-actions li,
.ul-actions > div {
	list-style-type: none;
	margin: 0;
	padding: 0;
	width: 80px;
	text-align: center;
}
.ul-actions .active .box__tabr,
.ul-actions .box__tabr:hover {
	border-color: #fd6e1d;
}
.ul-actions .box__tabr {
	align-items: center;
	border: 1px solid #e0e0e0;
	border-radius: 2px;
	display: flex;
	justify-content: center;
	min-height: 55px;
	padding: 4px;
	height: 60px;
	width: 80px;
}
.icon-action {
	background-image: url('../images/icon_chitiet@2x-min.png');
	background-repeat: no-repeat;
	display: inline-block;
	height: 30px;
	width: 30px;
	line-height: 30px;
	vertical-align: middle;
	background-size: 300px 180px;
}
.icon-dnb {
	background-position: 0 0;
	height: 28px;
	width: 28px;
}
.icon-tskt {
	background-position: -105px 0;
	height: 30px;
	width: 30px;
}
.icon-ttsp {
	background-position: -140px 0;
	height: 19px;
	width: 23px;
}
.ul-actions p {
	font-size: 14px;
	line-height: 1.3;
	margin-top: 5px;
	white-space: normal;
	color: #000;
}
/* 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%;
}
.contact-text {
    max-width: 800px;
    margin: auto;
    margin-bottom: 50px;
    border-radius: 50px;
    border: solid 1px #e8e8e8;
    padding: 30px 50px;
    color: #7b7b7b;
}
.box-frm {
    position: relative;
}
form.contact-form {
    box-shadow: 5px 30px 40px rgba(0, 0, 0, 0.1),5px 30px 40px rgba(0, 0, 0, 0.1);
    padding: 30px;
    border-radius: 30px;
    max-width: 800px;
    margin: auto;
    margin-bottom: 65px;
    background: #fff;
}
.contact-input input, .contact-input textarea {
    border-radius: 0;
    border-top: none;
    border-left: none;
    border-right: none;
    border-bottom: 1px dotted #045b8a;
}
.btn-send {
    margin: auto;
    /* width: 150px; */
    border-radius: 50px;
    display: block;
    text-transform: uppercase;
    font-weight: 700;
    padding: 10px 25px;
}
/*  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;
}
.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 {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 15px;
}

.item-news {
	--tw-bg-opacity: 1;
	box-shadow: 0 4px 30px rgba(9, 85, 144, 0.15);
	transition-property: all;
	transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
	transition-duration: 500ms;margin:4px;
}

.item-news:hover {
	transform: translateY(-0.25rem);
	box-shadow: 0px 0px 10px rgb(0 0 0 / 19%);
}

.item-news .ds-news {
	width: 100%;
	padding: 15px;
}

.ds-news h3 {
	font-size: 16px;
	margin: 0;
	color: #000;
	font-weight: 500;
	text-transform: uppercase;
	-webkit-line-clamp: 2 !important;
}
h3.ds-name-news{
	margin-bottom:5px;
}
.ds-name-news-link{
	-webkit-line-clamp:2;line-height: 22px;height:44px;font-size: 15px;
	color:#333;font-weight:600;
}
.ds-news .desc {
	color: #5C5C5C;
	line-height: 22px;
}
.line-news{
	margin:15px 0;
	border-top:1px solid #D9D9D9;
}
.item-news:hover h3 {
	color: #f00;
}
.date-news{
	display: flex;
	align-items: center;
	gap: 10px;
	color: #737373;
	font-size: 13px;
	margin-bottom: 10px;
}
.view-news{
	display:flex;align-items:center;justify-content:space-between;font-size: 15px;
	font-weight: 600;color:var(--color-main);
}
.item-news-all a {
	display: flex;
	justify-content: space-between;
}
.item-news-all a .ds-news {
	width: calc(100% - 110px);
}
.item-news-all a .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;
}

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;
}
.attr-pro-detail {
	margin: auto;
	padding: 0;
}
.baonoidung iframe {
	max-width: 100% !important;
}
.baonoidung img {
	height: auto !important;
}
.baonoidung * {
	max-width: 100% !important;
}
.baonoidung table thead, .baonoidung table tbody, .baonoidung table tfoot,.baonoidung table tr,.baonoidung table td,.baonoidung table th{
    border-width: unset;border-collapse: inherit !important;
  all: revert-layer;
}
.baonoidung table {
	display: block;
	overflow-y: auto;border-collapse: inherit !important;
  all: revert-layer;
}
div.desc-pro-detail ul li {
	margin-bottom: 0.75rem;
	list-style-type: circle;
}
div.desc-pro-detail ul li:last-child {
	margin-bottom: 0 !important;
}
div.baonoidung ul li {
	margin-bottom: 0.75rem;
	list-style-type: disc;
}
div.baonoidung ol li {
	margin-bottom: 0.75rem;
	list-style-type: decimal;
}
.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;
}

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


.flex-criteria{
    display: flex;
    justify-content: space-between;
    width: 83.4196891%;
}
.item-criteria{
	display:flex;gap:10px;
	justify-content:space-between;
}
.icon-criteria{
	width:45px;
	height:45px;
	border:1px solid var(--color-main);
	border-radius:45px;
	display:flex;align-items:center;justify-content:center;
}
.info-criteria{
	width:calc(100% - 55px);
}
.name-criteria{
	margin-bottom:0;
	font-size: 13px;
}
.desc-criteria{
	-webkit-line-clamp:1;
	margin-bottom:0;
	text-transform: uppercase;
	font-weight: 600;
}

.section-bannerqc{
	padding: 30px 0;
}

.flex-productone{
	padding:30px;
	border-radius: 10px;
	background: linear-gradient(0deg, #FFF 0%, #0661AA 100%);
	padding-bottom: 60px;
}
.title-productone {
	margin-bottom: 25px;
}
.title-productone__text {
	margin-bottom: 0;display: flex;align-items: center;gap: 10px;color: #fff;
	font-size: 24px;text-transform: capitalize;font-weight: 700;
}
.section-productsale{}
.flex-productsale{
	padding:30px;padding-bottom:60px;
	border-radius: 10px;
	background: linear-gradient(0deg, #FFF 0%, #FFB703 100%);
}
.title-productsale {margin-bottom: 20px;}
.title-productsale__text {margin-bottom: 0;display: flex;align-items: center;gap: 10px;font-size: 24px;font-weight: 700;text-transform: capitalize;color: var(--color-hover);}
.section-productList{
	padding:50px 0;
}
.title-productList {
	padding-bottom:10px;
	border-bottom: 1px dashed var(--color-main, #0661AA);
	margin-bottom:20px;
}
.title-productList__text {margin-bottom: 0;display: flex;gap: 10px;align-items: center;text-transform: uppercase;font-weight: 700;font-size: 24px;color: var(--color-main);}

.section-productBrand{
	background: #F7F7F7;
}
.title-productBrand{
	margin-bottom:20px;text-align:center;
}
.title-productBrand__text{
	margin-bottom:0;font-weight: 600;font-size: 26px;
	color:var(--color-main);
}
.item-proBrand{}
.item-proBrand-pic{
	background:#fff;border-radius: 5px;
}

.section-news{

}
.flex-newsList{
	display:flex;flex-wrap:wrap;justify-content:space-between;
}
.box-newslist{
	width:calc(50% - 15px);
}

.title-newsList{
	margin-bottom:20px;
}
.title-newslist__text{
	margin-bottom:0;
	display: inline-flex;
	padding: 10px 20px;
	border-radius: 20px;
	background: var(--color-main);
	color: #fff;
	text-transform: capitalize;
	font-weight: 600;
	font-size: 20px;
}
.flex-top-footer{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:30px 13%;
	padding-bottom: 30px;
	margin-bottom: 30px;
	border-bottom: 1px solid #ccc;
}
.box-menu-list{

}
.title-menu-list{
	margin-bottom: 5px;
	font-size: 19px;
	font-weight: 600;
	text-transform: capitalize;
}
.menu-list-footer{
	margin-bottom: 0;
	padding-left: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
}
.menu-list-footer li{
	padding:0 5px;
	position:relative;
	line-height: 1;
}
.menu-list-footer li:after{
	content:'';
	position:absolute;
	width:1px;
	height:100%;
	background:#5C5C5C;
	top: 50%;
	right: -5px;
	transform: translateY(-50%);
}
.menu-list-footer li:last-child:after{
	display:none;
}
.menu-list-footer li a{
    display: block;
    line-height: 1;
    text-transform: capitalize;
    color: #5C5C5C;
    font-size: 15px;
}
.menu-list-footer li a:hover{
	color:var(--color-main);
}
.footer-ul{}
.footer-ul li{}
.footer-ul li a{
	color:#5c5c5c;
	text-transform:capitalize;
	line-height:25px;
}
.footer-ul li a:hover{
	color:var(--color-main);
	font-weight:400;
}
.btn-location{
	display:inline-flex;padding:10px 20px;
	background:var(--color-main);border-radius:20px;
	gap:10px;color:#fff;text-transform:capitalize;
	margin-bottom:10px;transition:all ease .5s;
}
.btn-location:hover{
	color:#fff;
	letter-spacing:1.5px;
}
.payment-methods{
	display:flex;align-items:center;gap:10px 15px;flex-wrap:wrap;
}
.payment-methods a{
	cursor:pointer;
}


.qa-container {
	max-width: 800px;
	margin: 2.5rem auto;
}

.header-title {
	text-align: center;
	margin-bottom: 40px;
}

.header-title h1 {
	font-size: 40px;
	font-weight: 800;
	letter-spacing: -0.04em;
	margin: 0;
}

.faq-item {
	background: #fff;
	border: 1px solid var(--border-color);
	border-radius: 20px;
	margin-bottom: 16px;
	transition: border-color 0.3s ease, box-shadow 0.3s ease;
	position: relative;
	backface-visibility: hidden;
	transform: translateZ(0);
}

.faq-item.is-open {
	border-color: transparent;
	box-shadow: var(--shadow-lg);
}

.faq-header {
	padding: 20px 35px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	cursor: pointer;
	outline: none;
}

.faq-question {
	font-size: 20px;
	font-weight: 700;
	margin: 0;
	padding-right: 20px;
	transition: color 0.3s ease;
}

.is-open .faq-question {
	color: var(--brand-primary);
}

.faq-icon {
	width: 40px;
	height: 40px;
	background: #f9fafb;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
	transform: translateZ(0);
	backface-visibility: hidden;
	will-change: transform, background;
	margin-right: -20px;
}

.faq-icon svg {
	width: 20px;
	height: 20px;
	stroke-width: 2.5;
	transition: transform 0.4s ease;
}

.is-open .faq-icon {
	background: var(--brand-primary);
	box-shadow: 0 10px 15px -3px rgba(6, 97, 170, 0.3);
}

.is-open .faq-icon svg {
	transform: rotate(180deg);
	color: #fff;
}

.faq-panel {
	display: none;
	padding: 0 35px 35px 35px;
	overflow: hidden;
}

.faq-content {
	font-size: 17px;
	line-height: 1.8;
	opacity: 0;
	transition: opacity 0.5s ease;
}

.is-open .faq-content {
	opacity: 1;
}

.faq-content p {
	margin: 0 0 15px 0;
}

.faq-content p:last-child {
	margin-bottom: 0;
}