:root {
	--primary-color: #003a76;
	--secondary-color: #0082cb;
	--text-color: #003358;
	--dark: #121214;
	--green: #89d113;
	--gradient: linear-gradient(0deg, rgba(20, 99, 184, 1) 0%, rgba(0, 58, 118, 1) 100%);
}
.html5vid video{ width: 100%;}
.background-colored {
	background-color: var(--primary-color);
}

body .body-inner {
	overflow: hidden;
}

@media (min-width: 1200px) {

	.container,
	.container-lg,
	.container-md,
	.container-sm,
	.container-xl {
		max-width: 75%;
	}
}

section {
	padding: 30px 0;
}

.flickity-page-dots {
	bottom: -15px;
}

#header .header-inner #logo a>img,
#footer .logo-footer {
	filter: brightness(0) invert(1);
}

#header.header-sticky.sticky-active .header-inner {
	background-color: var(--primary-color);
}

#page-title[data-bg-parallax],
[data-bg-parallax] {
	background-color: transpa rent;
}

html {
	scroll-behavior: smooth;
}

.text-color {
	color: var(--primary-color);
}

body,
p,
h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
#mainMenu nav>ul>li>a,
#footer,
button.btn,
.btn:not(.close):not(.mfp-close),
a.btn:not([href]):not([tabindex]),
.article-name span,
#footer p {
	/* font-family: "Prompt", sans-serif; */
	font-family: "Montserrat", "Noto Sans Thai", sans-serif;
	letter-spacing: 0;
	line-height: 1.5;
	color: #000000;
}

body,
p,
address {
	font-size: 16px;
	font-weight: 400;
}

.font-fx,
.font-custom {
	font-family: "STIX Two Text", "Noto Sans Thai", sans-serif !important;
}

.italic {
	font-style: italic;
}

.w100,
.w-100 {
	width: 100%;
}

.w80 {
	width: 80%;
}

.w70 {
	width: 70%;
}

a {
	color: var(--primary-color);
}

a:not(.btn):hover,
a:not(.btn-view):hover,
a:not(.btn):not(.badge):hover,
a:not(.btn):not(.badge):focus,
a:not(.btn):not(.badge):active {
	text-decoration: underline;
	color: var(--primary-color);
}

button.btn,
.btn:not(.close):not(.mfp-close),
a.btn:not([href]):not([tabindex]) {
	color: #ffffff;
	border: none;
	line-height: 42px;
	border-radius: 50px;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.5px;
	text-decoration: none;
	outline: none;
	padding: 0 30px;
	background: var(--primary-color);
}

button.btn.btn-outline,
.btn:not(.close):not(.mfp-close).btn-outline,
a.btn:not([href]):not([tabindex]).btn-outline {
	border-color: #333;
	color: #333;
	background: transparent;
}

button.btn.btn-outline:hover,
button.btn.btn-outline:focus,
button.btn.btn-outline:active,
button.btn.btn-outline.active,
.btn:not(.close):not(.mfp-close).btn-outline:hover,
.btn:not(.close):not(.mfp-close).btn-outline:focus,
.btn:not(.close):not(.mfp-close).btn-outline:active,
.btn:not(.close):not(.mfp-close).btn-outline.active,
a.btn:not([href]):not([tabindex]).btn-outline:hover,
a.btn:not([href]):not([tabindex]).btn-outline:focus,
a.btn:not([href]):not([tabindex]).btn-outline:active,
a.btn:not([href]):not([tabindex]).btn-outline.active {
	background: var(--primary-color);
	border-color: var(--primary-color);
	color: #fff;
}

#header.header-modern:not(.header-active) .header-inner,
#header.header-modern:not(.header-active) #header-wrap {
	border-radius: 16px;
}

button.btn.btn-primary:hover,
button.btn.btn-primary:focus,
button.btn.btn-primary:not(:disabled):not(.disabled):active,
button.btn.btn-primary:not(:disabled):not(.disabled).active,
.btn:not(.close):not(.mfp-close).btn-primary:hover,
.btn:not(.close):not(.mfp-close).btn-primary:focus,
.btn:not(.close):not(.mfp-close).btn-primary:not(:disabled):not(.disabled):active,
.btn:not(.close):not(.mfp-close).btn-primary:not(:disabled):not(.disabled).active,
a.btn:not([href]):not([tabindex]).btn-primary:hover,
a.btn:not([href]):not([tabindex]).btn-primary:focus,
a.btn:not([href]):not([tabindex]).btn-primary:not(:disabled):not(.disabled):active,
a.btn:not([href]):not([tabindex]).btn-primary:not(:disabled):not(.disabled).active {
	background: var(--primary-color);
	color: #333;
}

button.btn:hover,
button.btn:focus,
button.btn:not(:disabled):not(.disabled):active,
button.btn:not(:disabled):not(.disabled).active,
.btn:not(.close):not(.mfp-close):hover,
.btn:not(.close):not(.mfp-close):focus,
.btn:not(.close):not(.mfp-close):not(:disabled):not(.disabled):active,
.btn:not(.close):not(.mfp-close):not(:disabled):not(.disabled).active,
a.btn:not([href]):not([tabindex]):hover,
a.btn:not([href]):not([tabindex]):focus,
a.btn:not([href]):not([tabindex]):not(:disabled):not(.disabled):active,
a.btn:not([href]):not([tabindex]):not(:disabled):not(.disabled).active {
	background: #072983;
	color: #fff;
	border-color: transparent;
	text-decoration: none;
	box-shadow: 0 10px 10px rgba(95, 141, 235, 1);
}

#header {
	border-top: 5px solid var(--primary-color);
}

.headbar {
	position: relative;
}

.headbar .btn {
	position: absolute !important;
	right: 15px;
	top: 10px;
}

.header-extras>ul>li {
	margin-left: 5px;
}

.header-extras>ul>li.header-link {
	margin-left: 18px;
}

.flickity-button {
	border-radius: 50%;
}

.flickity-button:hover {
	background: var(--gradient);
}

.form-group label:not(.error) {
	font-size: 16px;
	letter-spacing: 0;
	font-weight: 500;
	margin-bottom: 4px;
}

.btn-circle {
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 50%;
	text-align: center;
	padding: 0;
	display: inline-block;
	color: #fff;
	background: var(--gradient);
}

.btn-circle.btn-expand img {
	width: 14px;
	height: auto;
}

#search {
	background: rgba(31, 68, 80, 0.88);
	backdrop-filter: blur(2px);
}

#search .search-form .form-control {
	color: #fff;
	text-align: center;
}

#search .search-form .text-muted {
	color: rgba(255, 255, 255, 0.62) !important;
	opacity: 1;
}

#search .btn-search-close {
	background: var(--secondary-color);
	color: var(--primary-color)
}

.header-contact {
	margin-right: 20px;
}

.header-contact ul.list-contact li {
	display: inline-block;
}

.header-contact ul.list-contact li span {
	display: none;
}

ul.list-contact li i {
	margin-right: 1px !important;
}

ul.list-contact li a:hover i {
	color: var(--secondary-color);
	background: var(--primary-color);
}

.header-extras>ul>li>a:not(.btn) i,
.header-extras>ul>li .topbar-dropdown>.title i,
.header-language i {
	font-size: 18px;
}

.header-extras>ul>li .p-dropdown a>span {
	top: -13px;
}

.img-flags {
	width: 20px;
}

.p-dropdown .p-dropdown-content,
.p-dropdown ul.p-dropdown-content {
	padding: 5px;
}

#side-shortcut {
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	height: -webkit-fit-content;
	z-index: 200000 !important;
	padding: 10px 7px;
	background: rgba(219, 219, 219, 0.4);
	border-radius: 0 2em 2em 0;
	backdrop-filter: blur(10px);
}

#side-shortcut a.btn {
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-size: 20px;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	background: #799e8c;
	border: none;
	border-radius: 50%;
	position: relative;
	padding: 0 !important;
	margin: 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.46);
	background: unset;
	border-bottom: unset;
}

#side-shortcut a.btn i {
	margin: 0 !important;
	padding: 0pz !important;
}

#side-shortcut a.btn:after {
	display: none;
}

#side-shortcut span,
#side-shortcut strong {
	font-weight: normal;
	background: inherit;
	color: #fff;
	line-height: 40px;
	position: absolute;
	left: 0;
	text-align: center;
	text-transform: capitalize;
	top: 0;
	transition: all 0.2s ease-in-out 0s;
	white-space: nowrap;
	width: auto;
	opacity: 0;
	border-radius: 50px;
	font-size: 14px;
	padding: 0 15px;
	padding-left: 50px;
}

#side-shortcut a.btn:hover {
	background: var(--seconadary-color);
	transform: translate(0);
}

#side-shortcut>div[class*="shortcut-"]:hover a.btn {
	box-shadow: -2px 0 11px rgba(0, 0, 0, 0.43);
}

#side-shortcut .shortcut-call {
	background: #3bc413;
}

.shortcut-line {
	background: #38cd01;
	border-radius: 10px 0px 0px;
}

.shortcut-facebook {
	background: #0766ff;
}

.shortcut-youtube {
	background: #ec0f0f;
}

.shortcut-wechat {
	background: #00c173;
}

.shortcut-mobile {
	background: #1dac12;
}

.shortcut-call {
	background: var(--secondary-color);
}

.shortcut-email {
	background: #ee0707;
	border-radius: 0px 0px 0px 10px;
	border: unset !important;
}

.shortcut-wechat span {
	border-radius: 10px !important;
	padding-bottom: 10px !important;
}

img.qr-short {
	width: 90px;
}

#side-shortcut>[class*="shortcut-"] {
	position: relative;
	border-bottom: unset;
	border-radius: 100px;
	margin: 5px 0;
}

#side-shortcut>[class*="shortcut-"]:hover span,
#side-shortcut>[class*="shortcut-"]:hover strong {
	opacity: 1;
}

.shortcut-instagram {
	background: url(http://jittaka.shopup2.com/sites/18602/files/u/social/instagram-bg.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.shortcut-instagram .social-icon {
	width: 20px;
	filter: brightness(0) invert(1);
}

.shortcut-line .social-icon {
	width: 35px;
}

.shortcut-tiktok {
	background: #000;
}

.shortcut-tiktok .social-icon {
	width: 27px;
}

.shortcut-linktr {
	background: var(--primary-color);
}

.shortcut-linktr .social-icon {
	width: 20px;
}

/* search */
#btn-shopping,
#btn-search {
	margin-top: 17px;
}

#btn-shopping,
#btn-search,
.search-btn {
	border: 1px solid rgba(0, 0, 0, 0.3);
	width: 42px;
	height: 42px;
	align-content: center;
	border-radius: 50%;
	line-height: 40px;
	padding: 0;
	text-align: center;
	box-shadow: 0 -2px 2px rgba(25, 25, 25, 0.34) inset;
}

#btn-shopping i,
#btn-search i,
.search-btn i {
	line-height: inherit !important;
}

/* #btn-shopping:hover,
#btn-search:hover,
.search-btn:hover{
background: #871927;
box-shadow: -1px 6px 9px rgba(79, 38, 38, 0.6) inset;
} */

.search-wrapper {
	width: 42px;
	height: 42px;
	display: flex;
	border-radius: 4rem;

	align-items: center;
	justify-content: center;
	border: 1px solid #ddd;
	overflow: hidden;
	transition: 400ms ease-in-out;
	position: relative;
	margin-top: 16px;
}

.search-wrapper.active {
	width: 300px;
}

.search-wrapper input {
	background: #fff;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin-left: 40px;
	margin-right: 2px;
	outline: none;
	border: none;
	font-size: 500;
	font-size: 1.2rem;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}

.search-btn {
	background: var(--primary-color);
	display: flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	margin-left: auto;
	z-index: 1;
	color: #fff;
}

.search-btn i {
	color: inherit !important;
}

.header-social {
	border-right: 1px solid rgba(255, 255, 255, 0.17);
	float: left;
	padding-right: 10px;
	margin-right: 10px;
	line-height: 80px;
	vertical-align: middle;
	align-content: center;
	margin-top: 15px;
}

/* menu */
#mainMenu nav>ul>li>a {
	font-size: 16px;
	font-weight: 600;
	padding: 0 10px;
	letter-spacing: 0;
}

#mainMenu nav>ul>li>a,
.header-extras>ul>li a,
.header-extras>ul>li a i,
.header-extras>ul>li .p-dropdown a>span {
	color: #fff;
}

#mainMenu nav>ul>li .dropdown-menu {
	min-width: 420px;
}

#mainMenu nav>ul>li.hover-active>a,
#mainMenu nav>ul>li.hover-active>span,
#mainMenu nav>ul>li.current>a,
#mainMenu nav>ul>li.current>span,
#mainMenu nav>ul>li:hover>a,
#mainMenu nav>ul>li:hover>span,
#mainMenu nav>ul>li:focus>a,
#mainMenu nav>ul>li:focus>span {
	color: var(--secondary-color);
}

#mainMenu nav>ul>li {
	display: inline-block;
	float: none;
	margin: 0;
}

#mainMenu nav>ul>li .dropdown-menu li {
	line-height: 40px;
	font-size: 1em;
}

#mainMenu nav>ul>li .dropdown-menu li a {
	color: #333;
	display: inline-block;
	width: 100%;
}

#mainMenu nav>ul>li .dropdown-menu>li.current>a,
#mainMenu nav>ul>li .dropdown-menu>li.current>span,
#mainMenu nav>ul>li .dropdown-menu>li:hover>a,
#mainMenu nav>ul>li .dropdown-menu>li:hover>span,
#mainMenu nav>ul>li .dropdown-menu>li:focus>a,
#mainMenu nav>ul>li .dropdown-menu>li:focus>span,
#mainMenu nav>ul>li .dropdown-menu>li:active>a,
#mainMenu nav>ul>li .dropdown-menu>li:active>span,
#mainMenu nav>ul>li .dropdown-menu>li.hover-active>a,
#mainMenu nav>ul>li .dropdown-menu>li.hover-active>span {
	color: var(--primary-color);
}

#mainMenu nav>ul>li>a {
	padding: 10px 15px;
	border-radius: 50px;
}

#mainMenu nav>ul>li>a:hover {
	background: var(--primary-color);
	color: #fff;
	text-decoration: none;
}

#mainMenu nav>ul>li .dropdown-menu li:hover {
	background: #f2f2f2;
}

/* Text scroll animation for long menu items */
#mainMenu nav>ul>li>a.long-text {
	position: relative;
	overflow: hidden;
}

#mainMenu nav>ul>li>a.long-text::before {
	content: attr(data-text);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	padding: inherit;
	background: inherit;
	color: inherit;
	transform: translateX(0);
	transition: transform 0s;
	white-space: nowrap;
}

#mainMenu nav>ul>li>a.long-text:hover::before {
	animation: textScroll 4s ease-in-out infinite;
}

@keyframes textScroll {
	0% {
		transform: translateX(0);
	}

	15% {
		transform: translateX(0);
	}

	85% {
		transform: translateX(calc(-100% + 150px));
	}

	100% {
		transform: translateX(calc(-100% + 150px));
	}
}

/* Responsive adjustments for menu text */
@media (max-width: 768px) {
	#mainMenu nav>ul>li>a {
		max-width: 120px;
		font-size: 14px;
	}

	#mainMenu nav>ul>li>a.long-text:hover::before {
		animation-duration: 3s;
	}
}

@media (max-width: 576px) {
	#mainMenu nav>ul>li>a {
		max-width: 100px;
		font-size: 13px;
		padding: 8px 12px;
	}

	#mainMenu nav>ul>li>a.long-text:hover::before {
		animation-duration: 2.5s;
	}
}

.inspiro-slider .slide .slide-captions {
	width: 50%;
	max-width: 555px;
	float: right;
	right: 50%;
	position: absolute;
	left: 7%;
	margin: auto;
	top: 0;
	bottom: 0;
	margin: auto;
	align-content: center;
}

/* banner */
.banner-logo {
	width: 300px !important;
	height: auto !important;
	position: absolute;
	left: 0;
	right: 0;
	top: 40px;
	z-index: 2;
	margin: 0 auto;
	filter: brightness(0) invert(1);
}

#slider {
	position: relative;
}

#slider::before,
.subpage-banner::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 200px;
	left: 0;
	top: 0;
	background: #000;
	z-index: 2;
	pointer-events: none;
	background: #002859;
	background: linear-gradient(to top, rgba(0, 40, 89, 0), rgba(20, 64, 111, 0.24) 39.08%, rgba(8, 50, 90, 1));

}

.inspiro-slider .slide .slide-captions>p,
.inspiro-slider .slide .slide-captions h1 {
	text-shadow: 0 1px 4px rgba(0, 0, 0, 0.65);
	color: #fff;
}

.inspiro-slider .slide .slide-captions h1 {
	font-weight: 500;
	font-size: 2em;
	letter-spacing: 0;
	line-height: 1;
}

.inspiro-slider .slide .slide-captions h1 span {
	font-family: "STIX Two Text", "Noto Sans Thai", sans-serif !important;
	display: block;
	font-size: 2em;
	margin-bottom: 10px;
	letter-spacing: 5px;
	text-shadow: 0 0 10px rgba(255, 255, 255, 0.42);
}

.inspiro-slider .slide .slide-captions>p {
	font-size: 1.7em;
	color: #fff;
	margin-bottom: 20px;
}

.inspiro-slider .slide .slide-captions h1:before {
	position: absolute;
	content: "";
	width: 122px;
	height: 120px;
	left: 0;
	top: -120px;
	right: 0;
	margin: auto;
	/* background: url(../images/logo-sign.png) no-repeat; */
	background-size: 80%;
	background-position: center;
	filter: brightness(0) invert(1);
}

.inspiro-slider .slide .slide-captions .text-link img {
	display: block;
	margin: 0 auto;
	margin-bottom: 5px;
	height: 40px;
}

.inspiro-slider .slide .slide-captions .text-link {
	position: absolute;
	bottom: -240px;
	left: 0;
	right: 0;
	margin: auto;
	color: #fff;
}

/* body.sh_index{
background: url(../images/back-body.jpg);
background-size: 100%;
background-position: center;
background-repeat: no-repeat;
background-attachment: fixed;
} */
.bg-collaboration,
.sect-partner {
	background: url(../images/back-body.jpg);
	background-size: 100%;
	background-position: center;
	background-repeat: no-repeat;
	/* background-attachment: fixed; */
}

.sect-category,
.sect-contact-links {
	background: transparent;
}

.sect-category {
	padding-bottom: 0;
}

/* about */
.sect-about {
	background-image: url(../images/bg-1.jpg);
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
}

.sect-about .col-images img {
	transition: all .3s ease-in-out;
}

.sect-about .col-images img:hover {
	transform: scale(1.1);
}

/* html */
.sect-html {
	background: #053972;
	padding: 0;
}

.sect-html .container {
	padding: 0 5%;
	padding-right: 10%;
}

.sect-html .cleft {
	padding-right: 20px;
}

.sect-html .cleft .htitle {
	line-height: 1.3;
	padding: 20px 0;
	font-size: 2.6em;
	padding-top: 34px;
}

.sect-html .cleft .htitle span {
	display: block;
	margin-left: 8%;
}

.sect-html .cright img {
	height: 180px;
	width: auto !important;
}

.sect-service-2 {
	padding: 120px 0 0 0;
	background: url(../images/back-service.jpg) no-repeat center 10%;
	background-size: 100%;
	background-attachment: fixed;
}

.group-service {
	background: rgba(255, 255, 255, 0.53);
}

.group-count {
	padding: 60px 0;
}

.counter.large,
.counter.large>span {
	margin: 0;
	line-height: 1.2;
}

.counter-item p {
	font-size: 20px;
}

.counter,
.counter-item p {
	color: #fff !important;
	text-shadow: 2px 2px 6px #141414;
	font-weight: 600;
	backdrop-filter: blur(3px);
}

.sect-products {
	background-image: url(../images/back-product.jpg);
	background-size: cover;
	background-position: center top;
	background-repeat: no-repeat;
	background-attachment: fixed;
}

.sect-project {
	background-image: url(../images/bg-ab.png);
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
}

.sect-count {
	background: var(--primary-color) url(../images/bg-counter.png);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.sect-contact {
	background: #002859;
	background: linear-gradient(to top, rgba(0, 40, 89, 1), rgba(20, 64, 111, 1) 21.43%, rgba(30, 75, 122, 0.64) 57.14%,
			rgba(41, 88, 133, 0.36) 81.09%, rgba(40, 85, 126, 0));
}

/* service */
.service-wrap,
.list-item-5 {
	width: 100%;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-gap: 15px;
}

.srv-item {
	position: relative;
	aspect-ratio: 1/2;
}

ul.service-wrap li:nth-child(even) .srv-image {
	position: absolute;
	bottom: 0;
	width: 100%;

}

.srv-item .srv-image {
	position: relative;
	overflow: hidden;
}

.srv-item .srv-image img {
	width: 100%;
	transition: all .3s ease-in-out;
}

.srv-item .srv-desc {
	background: var(--gradient);
	padding: 20px;
	text-align: center;
	aspect-ratio: 1;
	align-content: center;
	color: #fff;
}

.srv-item .htitle {
	font-size: 1.25em;
	color: inherit;
	transition: all .3s ease-in-out;
}

.srv-item:hover .srv-image img,
.srv-item:hover .htitle {
	transform: scale(1.1);
}

/* contac */
.sect-contact {
	background: #002a5a;
	padding: 60px 0 80px 0;
}

.sect-contact .col-contact {
	position: relative;
}

.sect-contact .col-contact img.img-qrcode {
	position: absolute;
	right: 15px;
	top: 0;
	height: 89%;
	border-radius: 12px;
}

ul.list-contact li {
	margin-bottom: 0;
}

ul.widget-links li {
	display: block;
}

/* footer */
#footer {
	background: #e7e7e7;
	padding: 0;
	border-top: 1px solid rgba(0, 0, 0, 0.05);
}

#footer {
	background: #070f29;
}

#footer,
#footer p,
#footer a,
#footer a:not(.btn):not(:hover) {
	color: #ddd;
}

#footer h4,
#footer strong,
#footer .name-th {
	color: #fff !important;
}

#footer a:hover {
	color: #348de8 !important;
}

.ft-top-inner {
	margin: 0;
	background: #e9bf1c;
	border-radius: 30px;
	width: 100%;
	color: #000;
	position: relative;
	top: -120px;
	z-index: 3;
	margin-bottom: -80px;
	padding: 30px;
	align-content: center;
}

#footer .ft-top-inner h4,
#footer .ft-top-inner p {
	color: inherit !important;
	margin: 0;
}

#footer .ft-top-inner h4 {
	margin-bottom: 0;
	font-size: 1.5em;
}

.ft-top-inner .rgh {
	text-align: right;
	align-content: center;
}

#footer .footer-content {
	position: relative;
	padding: 0;
}

#footer .logo-footer {
	height: 100px;
	margin-right: 20px;
	margin-left: -15px;
}

#footer .name-th {
	font-size: 24px;
	font-weight: 600;
	margin: 0;
	/* color: var(--primary-color); */
}

#footer address {
	font-style: normal;
	line-height: 1.8;
	margin-bottom: 20px;
}

#footer .list-contact li {
	margin-bottom: 0px;
}

#footer .list-contact li i {
	width: 35px;
	height: 35px;
	line-height: 35px;
	background: var(--primary-color);
	color: #fff;
	border-radius: 50%;
	text-align: center;
	margin-right: 10px;
	transition: all 0.3s ease;
}

#footer .social-icons {
	margin-top: 20px;
}

#footer .social-icons li {
	margin-right: 10px;
}

#footer .social-icons li a {
	width: 40px;
	height: 40px;
	line-height: 40px;
	background: var(--primary-color);
	color: #fff;
	border-radius: 50%;
	text-align: center;
	transition: all 0.3s ease;
}

#footer .social-icons li a:hover {
	background: var(--hover-color);
	transform: translateY(-3px);
}

#footer .list-links li {
	margin: 0 15px;
	float: left;
}

#footer .list-links li:first-child {
	margin-left: 0;
}

#footer .list-links li a {
	font-weight: 500;
	color: #666;
	transition: all 0.3s ease;
}

#footer .col-links ul {
	display: inline-block;
	float: right;
}

#footer .list-links li a:hover {
	color: var(--secondary-color);
}

#footer .copyright {
	font-size: 14px;
	margin: 0;
	line-height: 32px;
}

#footer {
	padding: 50px 0 0px;
}

#footer .logo-footer {
	margin-right: 0;
	margin-bottom: 15px;
}

#footer .list-links li {
	margin: 5px 10px;
}

footer ul.list-contact li {
	margin-bottom: 7px;
	font-size: 16px;
	font-weight: 500;
}

footer ul.list-contact li i {
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	border-radius: 50%;
	background: #fff;
	color: var(--primary-color);
	font-size: 14px;
}

footer ul.list-contact li i {
	margin-right: 7px !important;
}

/*ul.list-contact li a{ color:#fff !important; }*/
ul.list-contact li a:hover {
	color: #000 !important;
	background: transparent;
	text-decoration: underline;
}

#footer .widget .widget-title,
#footer .widget h4 {
	font-weight: normal;
	font-size: 16px;
}

#footer .copyright-content {
	background: transparent;
}

#footer .copyright-content {
	font-size: 15px;
}

footer .col-qr {
	text-align: right;
}

footer .col-qr .widget {
	display: inline-block;
	text-align: left;
}

footer .cright .inner {
	display: inline-block;
	float: left;
	margin-left: 40px;
}

footer .cright .social-icons {
	clear: both;
}

/* footer ul.list-contact {
display: inline-block;
float: left;
} */
.clear {
	clear: both;
	display: block;
}

.img-qrcode {
	float: right;
}

footer .ft-connect .widget {
	text-align: center;
	display: inline-block;
	float: right;
	/* background: rgba(255, 255, 255, 0.53);*/
	border-radius: 20px;
	backdrop-filter: blur(6px);
}

footer .ft-connect .widget h4 {
	text-transform: none;
}

footer .ft-connect .widget a:hover {
	color: #fff;
}

footer .ft-connect img {
	border-radius: 13px;
}

footer ul.list-contact li i {
	background: var(--primary-color);
	color: #fff;
}

footer ul.list-contact li a:hover i {
	background: var(--hover-color);
	color: #fff;
}

#scrollTop:after,
#scrollTop:before {
	background: var(--primary-color);
}

#footer .col-fll .list-links a {
	font-weight: 600 !important;
}

#footer .col-right .list-links {
	float: right;
}

.list-contact.social span {
	display: none;
}

.list-contact.social li {
	display: inline-block;
}

.bg-color-box {
	background: #91c53f;
	color: #fff;
	padding: 20px;
}

#header.header-sticky.sticky-active .header-inner,
#header.header-sticky.sticky-active #header-wrap {
	border-radius: 0;
}

.social-icons li.social-facebook a:hover {
	background-color: #227df5 !important;
	color: #fff;
}

.social-icons li.social-youtube a:hover {
	background-color: #ff0000 !important;
	color: #fff;
}

.social-icons li.social-line a:hover {
	background-color: #00c300 !important;
	color: #fff;
}

.social-icons li.social-x a {
	background-color: #000;
	color: #fff;
}

.social-icons li.social-x a:hover img,
.social-icons li.social-line a:hover img {
	filter: brightness(0) invert(1);
}

.social-icons li.social-tiktok a:hover {
	background-color: #000 !important;
	color: #fff;
}

.social-icons li.social-linkedin a:hover {
	background-color: #0b66c2 !important;
	color: #fff;
}

.social-icons.social-icons-colored .social-whatsapp a,
.social-icons.social-icons-colored-hover .social-whatsapp a:hover {
	background-color: #24d366 !important;
	color: #fff;
}

.social-icons.social-icons-colored-hover li a:not(:hover) .image-icon-social {
	filter: none;
}

.social-icons.social-icons-colored-hover li.social-x a:not(:hover),
.social-icons.social-icons-colored-hover li.social-tiktok a:not(:hover) {
	background: transparent;
	color: #000;
}

.social-icons.social-icons-colored-hover li a:not(:hover) .image-icon-social {
	filter: brightness(0) invert(1);
}

.social-icons.light li a:not(:hover) .image-icon-social {
	filter: brightness(0) invert(1);
}

.social-icons:not(.social-title) li.social-instagram a,
.social-icons:not(.social-title) li.social-instagram a:hover {
	background-color: transparent;
	background: url('../images/social/instagram-bg.jpg') no-repeat !important;
	background-size: cover !important;
	background-position: center !important;
}

/* .social-icons:not(.social-title) li.social-tiktok a, */
.social-icons:not(.social-title) li.social-tiktok a:hover {
	background-color: transparent;
	background: #000 url('../images/social/tiktok-bg.webp') no-repeat !important;
	background-size: 15px !important;
	background-position: center !important;
}

/*.social-icons li.social-tiktok a:hover i{ opacity:0; }*/
.image-icon-social {
	height: 13px;
	top: -1px;
	position: relative;
	filter: brightness(0) invert(1);
}

footer .social-icons li.social-line a:hover .image-icon-social {
	filter: brightness(0) invert(1);
}

.social-x a:hover {
	color: #0766c2;
}

footer .social-icons li.social-instagram a:hover {
	color: #fff;
}

.social-icons li:hover img {
	-webkit-animation: toTopFromBottom 0.3s forwards;
	animation: toTopFromBottom 0.3s forwards;
}

.social-icons img {
	height: 16px;
}

.social-icons.social-icons-colored .social-gmail a,
.social-icons.social-icons-colored-hover .social-gmail a:hover {
	background-color: #ffffff;
	box-shadow: 0 0 2px rgba(0, 0, 0, 0.34) inset;
}

.social-icons li.social-mail a:hover {
	background-color: #ee0707 !important;
	color: #fff;
}

.social-icons li.social-line a:hover {
	background-color: #00c300 !important;
	color: #fff;
}

.social-icons li.social-linemyshop a {
	background-color: #00c300 !important;
	color: #fff;
}

.social-icons li.social-linemyshop a img.image-icon-social {
	filter: none;
}

.social-icons .social-phone a:hover {
	background-color: #25940f !important;
}

.social-icons .social-website a {
	background: #285fb4;
}

.social-icons .line-oa img {
	max-width: 81%;
	height: auto;
}

.social-shopee a,
.social-shopee a:hover {
	background: #ee4d2d !important;
}

.social-shopee a img {
	filter: brightness(0) invert(1);
}

img.social-img-lazada {
	height: 23px;
}

.social-lazada a:hover {
	background: url(../images/social/social-lazada.png) no-repeat !important;
	background-size: 40px !important;
	background-position: center;
}

.social-img-icon a:hover img {
	opacity: 0 !important;
}

/* Flip Card Styles */
.flip-card {
	position: relative;
	background-color: transparent;
	width: 100%;
	/* height: 320px; */
	perspective: 1000px;
	margin: 0 auto;
	margin-bottom: 30px;
}

.flip-card-inner {
	position: relative;
	width: 100%;
	height: 100%;
	transition: transform 0.6s cubic-bezier(.4, 2, .6, 1);
	transform-style: preserve-3d;
}

.flip-card:hover .flip-card-inner {
	transform: rotateY(180deg);
}

.flip-card-front,
.flip-card-back {
	width: 100%;
	height: 100%;
	backface-visibility: hidden;
	overflow: hidden;
	box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
}

.flip-card-back {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.flip-card-front {
	background: #fff;
	z-index: 2;
}

.flip-card-front img {
	width: 100%;
}

.flip-card-front .product-title {
	color: var(--primary-color);
	margin: 0;
	padding: 0 20px;
	text-align: center;
	font-size: 15px;
	position: absolute;
	bottom: 0;
	left: 0;
	background: rgba(0, 58, 119, 0.54);
	color: #fff;
	width: 100%;
	padding: 10px;
}

.flip-card-back {
	background: var(--primary-color);
	color: #fff;
	transform: rotateY(180deg);
	z-index: 3;
	padding: 24px;
	text-align: center;
}

.flip-card-back .product-title {
	font-size: 1.1em;
	margin-bottom: 12px;
	color: inherit;
}

.flip-card-back .product-desc {
	font-size: 1em;
	line-height: 1.5;
	color: inherit;
}

.flip-card-back .text-link {
	color: inherit;
}

.flip-card-back .text-link:hover {
	color: #28e3fa !important;
}

/* Product Card Styles */
.product-item {
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
	overflow: hidden;
	transition: all 0.3s ease;
	margin: 10px;
	position: relative;
}

.product-item:hover {
	transform: translateY(-8px);
	box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
}

.product-image {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1;
	background: #f8f9fa;
}

.product-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.3s ease;
}

.product-item:hover .product-image img {
	transform: scale(1.05);
}

.product-overlay {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(34, 63, 154, 0.9);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 15px;
	opacity: 0;
	transition: opacity 0.3s ease;
}

.product-item:hover .product-overlay {
	opacity: 1;
}

.btn-quick-view,
.btn-wishlist {
	width: 45px;
	height: 45px;
	border-radius: 50%;
	background: #fff;
	color: var(--primary-color);
	display: flex;
	align-items: center;
	justify-content: center;
	text-decoration: none;
	transition: all 0.3s ease;
	transform: translateY(20px);
	opacity: 0;
}

.product-item:hover .btn-quick-view,
.product-item:hover .btn-wishlist {
	transform: translateY(0);
	opacity: 1;
}

.btn-quick-view:hover,
.btn-wishlist:hover {
	background: var(--secondary-color);
	color: #fff;
	transform: scale(1.1);
}

.btn-quick-view {
	transition-delay: 0.1s;
}

.btn-wishlist {
	transition-delay: 0.2s;
}

.product-badge {
	position: absolute;
	top: 15px;
	left: 15px;
	z-index: 2;
}

.badge-new,
.badge-sale,
.badge-hot {
	padding: 6px 12px;
	border-radius: 20px;
	font-size: 12px;
	font-weight: 600;
	text-transform: uppercase;
	letter-spacing: 0.5px;
}

.badge-new {
	background: #28a745;
	color: #fff;
}

.badge-sale {
	background: #dc3545;
	color: #fff;
}

.badge-hot {
	background: #ffc107;
	color: #000;
}

.product-info {
	padding: 20px;
}

.product-title {
	margin: 0 0 8px 0;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
}

.product-title a {
	color: var(--primary-color);
	text-decoration: none;
	transition: color 0.3s ease;
}

.product-title a:hover {
	color: var(--secondary-color);
	text-decoration: none;
}

.product-category {
	color: #6c757d;
	font-size: 14px;
	margin-bottom: 10px;
	font-weight: 500;
}

.product-rating {
	display: flex;
	align-items: center;
	gap: 5px;
	margin-bottom: 12px;
}

.product-rating i {
	color: #ffc107;
	font-size: 14px;
}

.rating-count {
	color: #6c757d;
	font-size: 13px;
	margin-left: 5px;
}

.product-price {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 15px;
}

.price-current {
	font-size: 18px;
	font-weight: 700;
	color: var(--primary-color);
}

.price-old {
	font-size: 14px;
	color: #6c757d;
	text-decoration: line-through;
}

.product-actions {
	text-align: center;
}

.btn-sm {
	padding: 8px 20px;
	font-size: 14px;
	line-height: 1.5;
	border-radius: 25px;
	background: var(--primary-color);
	color: #fff;
	text-decoration: none;
	transition: all 0.3s ease;
	display: inline-block;
}

.btn-sm:hover {
	background: var(--secondary-color);
	color: #000;
	transform: translateY(-2px);
	box-shadow: 0 5px 15px rgba(255, 203, 5, 0.3);
}

/* Responsive Design */
@media (max-width: 1200px) {
	.carousel[data-items="5"] {
		--items: 4;
	}
}

@media (max-width: 992px) {
	.carousel[data-items="5"] {
		--items: 3;
	}

	.product-info {
		padding: 15px;
	}

	.product-title {
		font-size: 15px;
	}

	.price-current {
		font-size: 16px;
	}
}

@media (max-width: 768px) {
	.carousel[data-items="5"] {
		--items: 2;
	}

	.product-item {
		margin: 8px;
	}

	.product-info {
		padding: 12px;
	}

	.product-title {
		font-size: 14px;
	}

	.price-current {
		font-size: 15px;
	}

	.btn-sm {
		padding: 6px 16px;
		font-size: 13px;
	}
}

@media (max-width: 576px) {
	.carousel[data-items="5"] {
		--items: 1;
	}

	.product-item {
		margin: 5px;
	}

	.product-overlay {
		gap: 10px;
	}

	.btn-quick-view,
	.btn-wishlist {
		width: 40px;
		height: 40px;
	}
}

/* Carousel Navigation */
.carousel .flickity-prev-next-button {
	background: var(--primary-color);
	color: #fff;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	transition: all 0.3s ease;
}

.carousel .flickity-prev-next-button:hover {
	background: var(--secondary-color);
	color: #000;
	transform: scale(1.1);
}

.carousel .flickity-prev-next-button.previous {
	left: -20px;
}

.carousel .flickity-prev-next-button.next {
	right: -20px;
}

/* Loading Animation */
.product-item {
	animation: fadeInUp 0.6s ease forwards;
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(30px);
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/* Stagger animation for multiple items */
.product-item:nth-child(1) {
	animation-delay: 0.1s;
}

.product-item:nth-child(2) {
	animation-delay: 0.2s;
}

.product-item:nth-child(3) {
	animation-delay: 0.3s;
}

.product-item:nth-child(4) {
	animation-delay: 0.4s;
}

.product-item:nth-child(5) {
	animation-delay: 0.5s;
}

/* partner logo */
.slider {
	height: 75pt;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
	cursor: default;
	user-select: none;
	touch-action: none;
}

/*.slider:before {
left: 0;
top: 0;
}
.slider:after,
.slider:before {
background: linear-gradient(
to right,
#efeef2 0%,
hsla(0, 0%, 100%, 0) 100%
);
content: "";
height: 75pt;
position: absolute;
width: 200px;
z-index: 2;
}
.slider:after {
right: 0;
top: 0;
transform: rotateZ(180deg);
}
.slider:after,
.slider:before {
background: linear-gradient(to right, #ffffff, hsla(0, 0%, 100%, 0));
content: "";
height: 75pt;
position: absolute;
width: 200px;
z-index: 2;
}
*/
.slider .slide-track-1 {
	animation: scroll-l 30s linear infinite;
	display: flex;
	width: 3500px;
}

.slider .slide-track-2 {
	animation: scroll-r 30s linear infinite;
	display: flex;
	width: 3500px;
}

.slider .slide {
	height: 75pt;
	width: 250px;
	display: flex;
	align-items: center;
	text-align: center;
}

.slider .slide img {
	width: 180px;
	padding: 0 25px;
	vertical-align: middle;
	margin: 0 auto;
	display: inline-block;
	max-width: 100%;
	height: auto;
	width: auto;
	max-height: 100%;
}

@keyframes scroll-l {
	0% {
		transform: translateX(0);
	}

	100% {
		transform: translateX(calc(-250px * 7));
	}
}

@keyframes scroll-r {
	100% {
		transform: translateX(0);
	}

	0% {
		transform: translateX(calc(-250px * 7));
	}
}

/* project reference */
.project-item {
	background: #fff;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
	overflow: hidden;
	transition: all 0.3s ease;
	position: relative;
	border-radius: 60px;
	box-shadow: -3px 9px 18px rgba(19, 19, 19, 0.83);
	margin: 0 10px;
}

.sect-project-reference .project-item img {
	border-radius: 33px;
}

.sect-project-reference .project-item {
	padding: 40px;
	background: #ffffff;
	background: linear-gradient(320deg, rgba(255, 255, 255, 1) 39.5%, rgb(214, 214, 214) 55.46%, rgba(205, 205, 205, 1) 66.81%, rgb(255, 255, 255) 74.37%);
	border: 4px solid #c3bfbf;
}

/* .project-item:hover::before{
position: absolute;
content: "";
width: 100%;
height: 100%;
z-index: 1;
background: #002859;
background: linear-gradient(to top, rgba(0, 40, 89, 1), rgba(20, 64, 111, 1) 31.09%, rgba(41, 88, 134, 0.75) 51.68%,
rgba(255, 255, 255, 0.4) 85.29%);
opacity: 0.8;
pointer-events: none;
} */
.sect-project-reference .project-item:hover {
	transform: translateY(-10px);
	background: var(--primary-color);
	border-color: var(--primary-color);
}

.project-item:hover a,
.project-item:hover p,
.project-item:hover .project-info .project-title a {
	color: #fff !important;
}

.project-item .project-info {
	padding: 15px;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 2;
	transition: all 0.3s ease;
}

.project-item .project-info .project-title a {
	font-size: 15px;
	line-height: 1.5;
	color: #fff;
	opacity: 0;
	display: inline-block;
}

.project-item:hover .project-info .project-title a {
	opacity: 1;
}

.col-banner-hr .project-item.horizontal {
	height: 100%;
}

.col-banner-hr .project-item.horizontal img {
	height: 100%;
	width: auto;
	left: 50%;
	transform: translate(-50%, 0);
	position: absolute;
}

/* footer */
footer .widget-links {
	column-count: 2;
}

.cert-logo {
	height: 50px;
	margin-bottom: 10px;
	margin-left: 20px;
}

.certiicate-wrap {
	text-align: right;
}

.engine_by_shopup_bottom {
	background: #050b20;
	color: #fff;
}

/* subpage */
/* body.sh_subpage #mainMenu nav>ul>li>a,
body.sh_subpage .header-extras>ul>li a,
body.sh_subpage .header-extras>ul>li a i,
body.sh_subpage .header-extras>ul>li .p-dropdown a>span {
	color: var(--primary-color);
}

body.sh_subpage #mainMenu nav>ul>li>a:hover,
body.sh_subpage .header-social a:hover i {
	color: #fff !important;
}

body.sh_subpage .header-search a:hover {
	color: var(--primary-color);
}

body.sh_subpage .header-search a:hover {
	background-color: var(--primary-color);
	color: #fff;
}

body.sh_subpage .header-search a:hover i {
	color: inherit;
} */

.ul-list-product>li {
	width: calc(100% / 5);
	float: left;
	display: inline-block;
}

.tabs .nav-tabs .nav-link.active {
	color: var(--secondary-color);
	border-bottom: 2px solid var(--secondary-color);
}

.main-image-container img {
	width: 100%;
}

.counter.large,
.counter.large>span {
	font-size: 60px !important;
	line-height: 1;
}

.fix-sub {
	font-size: 20px;
	vertical-align: top;
	top: 12px;
	position: relative;
}

ul.list-service-icon {
	width: 100%;
}

ul.list-service-icon li {
	position: relative;
	width: calc(100% / 5);
	display: inline-block;
	float: left;
	text-align: center;
}

ul.list-service-icon li::before {
	position: absolute;
	content: "";
	width: 60px;
	height: 60px;
	right: -31px;
	top: 0;
	bottom: 32px;
	margin: auto;
	background: url(../images/arrows.png) no-repeat center center;
	background-size: 100% 100%;
}

ul.list-service-icon li:last-child::before {
	display: none;
}

.service-item .htitle {
	margin: 20px 0 0 0;
	line-height: 1.3;
	color: var(--text-color);
	text-shadow: 0 1px 2px rgba(51, 51, 51, 0.38);
}

.service-item .service-image {
	width: 150px;
	height: 150px;
	line-height: 150px;
	text-align: center;
	border-radius: 50%;
	background: #133560;
	background: linear-gradient(90deg, rgba(19, 53, 96, 1) 0%, rgba(57, 128, 193, 1) 100%);
	float: none;
	margin: auto;
	transition: all .3s ease-in-out;
}

.service-item:hover .service-image {
	transform: scale(1.1);
}

.service-item:hover .htitle {
	color: #0557a3;
}

.contact-item a {
	display: flex;
	padding: 15px 20px;
	background: #dddddd;
	color: #fff;
	text-decoration: none;
	border-radius: 6px;
	font-weight: 500;
	transition: all 0.3s ease;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	border: none;
	cursor: pointer;
}

.contact-item.ct-2 a {
	display: inline-block;
}

.contact-item a:hover {
	/* background: linear-gradient(90deg, rgba(57, 128, 193, 1) 0%, rgba(19, 53, 96, 1) 100%); */
	transform: translateY(-2px);
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.contact-item a:active {
	transform: translateY(0);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.contact-item a .htitle {
	margin: 10px 0;
	vertical-align: middle;
	align-content: center;
}

.contact-item.ct-2 {
	margin-top: -40px;
}

.sect-contact-links .row {
	width: 80%;
	margin: auto;
}

.sect-project-reference .project-item .project-info {
	position: relative;
	text-align: center;
}

.project-item .project-info .project-title {
	margin-bottom: 0;
}

.project-item .project-info .project-title a {
	color: #333;
	opacity: 1;
	font-size: 1.5em;
	line-height: 1.5;
	margin: 0;
}

.sect-project-reference {
	background: #002a5a;
	background: url(../images/back-ref.jpg) no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
}

/* category new*/
.grid-item .project-info {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 10px;
	background: rgba(0, 58, 119, 0.63);
	width: 100%;
	z-index: 2;
}

.grid-item .project-info p {
	margin: 0;
	color: #fff;
}

.portfolio-item .portfolio-description a:hover i,
.portfolio-item .grid-description a:hover i,
.portfolio-item .portfolio-links a:hover i,
.grid-item .portfolio-description a:hover i,
.grid-item .grid-description a:hover i,
.grid-item .portfolio-links a:hover i {
	background-color: var(--secondary-color);
	border: 1px solid var(--secondary-color);
}

#sh_index_z1_header_5_banner {
	top: -80px;
	margin-bottom: -80px;
	position: relative;
}

.subpage-banner{
	top: -80px;
	margin-bottom: -80px;
	position: relative;
}