:root{
	--primary-color: #00578f;
	--secondary-color: #0096ae;
	--gradient: linear-gradient(18deg, rgba(4, 58, 112, 1) 0%, rgba(0, 87, 143, 1) 41%, rgba(0, 150, 174, 1) 100%);
	}
	
	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]),
	#footer p{
	/* font-family: "Lato", "Noto Sans Thai", serif; */
	font-family: "Outfit", "Noto Sans Thai", sans-serif;
	letter-spacing: 0;
	line-height: 1.5;
	/* color: #836136;*/
	}
	body, p{
	font-size: 18px;
	color: #57656e;
	}
	.w100, .w-100{ width:100%; }
	.italic{ font-style:italic; }
	.text-color{ color:var(--primary-color) !important; }
	h2{ line-height: 1.3;}
	
	a{color: var(--primary-color); }
	a:not(.btn):not(.badge):hover, a:not(.btn):not(.badge):focus, a:not(.btn):not(.badge):active{
	text-decoration: underline;
	color: #0099d6;
	}
	
	.headbar small{
	font-size: 1em;
	text-transform: uppercase;
	letter-spacing: 1px;
	}
	.headbar .htitle,
	.htitle{
		font-size: 2.25em;
	letter-spacing: 0px;
	line-height: 1.2;
	}
	.counter.large, .counter.large > span{
	font-size: 50px !important;
	font-weight: 500;
	color: #3e6aed;
	}
	.counter.large{
	margin-bottom: 0;
	line-height: 1;
	margin-bottom: 9px;
	}
	.text-gradient{
	background: #4489C9;
	/* background: linear-gradient(20deg, rgba(68, 137, 201, 1) 35%, rgba(131, 183, 229, 1) 100%); */
	background: var(--gradient);
	-webkit-background-clip: text;
	background-clip: text;
	background-size: 100% 1.2222222222em;
	-webkit-text-fill-color: #0000;
	}
	
	button.btn, .btn:not(.close):not(.mfp-close), a.btn:not([href]):not([tabindex]){
	color: #fff !important;
	background: var(--gradient);
	border: none;
	line-height: 40px;
	border-radius: 50px;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.5px;
	text-decoration: none;
	outline: none;
	padding: 0 25px;
	}
	button.btn.btn-primary, .btn:not(.close):not(.mfp-close).btn-primary, a.btn:not([href]):not([tabindex]).btn-primary{
	background: var(--gradient);
	border: none;
	}
	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: #fff !important;
	opacity: 1;
	}
	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: var(--primary-color);
	}
	
	.flickity-button:hover{ background-color: var(--primary-color); }
	.form-group label:not(.error){
	font-size: 14px;
	letter-spacing: .04em;
	font-weight: 500;
	margin-bottom: 4px;
	color: var(--primary-color);
	}
	.btn-circle{
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 50%;
	text-align: center;
	padding: 0;
	display: inline-block;
	background: rgba(0, 0, 0, 0.4);
	}
	.btn-circle.btn-expand img{
	width:14px;
	height: auto;
	}
	#search .search-form .form-control{
	border-bottom: 1px solid rgba(207, 207, 207, 0.23);
	}
	
	/* TOPBAR */
	#topbar a:hover{ color:var(--primary-color); }
	.topbar-right{ text-align: right; padding-top: 20px;}
	.topbar-right > div{
	display: inline-flex;
	margin-left: 15px;
	}
	#topbar{
		display: inline-block;
		width: 100%;
		line-height: 40px;
		background: #ffffff;
	}
	.topbar-left a{
	margin-right: 15px;
	font-size: 13px;
	}
	.topbar-right .inner{
	display: inline-block;
	float: right;
	}
	.topbar-dropdown.language .title{padding-right: 0;}
	
	.topbar-left ul li{
	display: inline-block;
	color: #fff;
	border-left: 1px solid rgba(255, 255, 255, 0.19);
	padding-left: 15px;
	}
	.topbar-left ul li:first-child{
	border: none;
	padding-left: 0;
	}
	ul.list-phone a{
	color: #d4d4d4 !important;
	font-size: 22px;
	font-weight: 500;
	}
	ul.list-phone li i.circle{
	width: 30px;
	height: 30px;
	line-height: 30px !important;
	background-color: rgba(1, 0, 19, 0.21);
	color: #ffffff;
	border-radius: 50%;
	text-align: center;
	}
	#topbar a{ color:#fff; }
	#topbar ul{ margin-bottom:0; }
	.topbar-left a:hover{ text-decoration:underline; }
	#topbar, #topbar a{ font-size:14px; }
	#topbar .social-icons{ height: auto;}
	.topbar-right .list-phone{ display: block;}
	.topbar-right .list-phone li{
		display: inline-block;
		margin: 0 6px;
	}
	
	
	.top-language span{
	margin-right: 5px;
	font-size: 14px;
	color: #fff;
	}
	.top-language ul{ margin: 0; float: left;}
	.top-language ul li{
	margin-left: 5px;
	line-height: 80px;
	}
	.top-language a{
	display: inline-block;
	border: 2px solid transparent;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	top: 5px;
	position: relative;
	margin: 0 1px;
	line-height: 40px;
	}
	.top-language ul li.active > a{
	border: 2px solid var(--primary-color);
	color: var(--primary-color);
	background-color: #e6e6e6;
	}
	.top-language img{
	height: 100%;
	float: left;
	transition: all .2s ease-in-out;
	}
	.top-language .list-lang:not(.active) img{
	opacity: 0.5;
	padding: 5%;
	}
	
	.topbar-search{
	display: inline-block;
	margin-right: 10px;
	}
	.topbar-search input{
		width: 240px;
		min-height: initial !important;
		height: 27px;
		border-radius: 3px;
		border: 1px solid rgba(0, 0, 0, 0.09);
		background-color: #f2f2f2;
		box-shadow: none;
		color: #fff;
	}
	.top-contact{
	border-left: 1px solid rgba(148, 146, 146, 0.59);
	display: inline-block;
	margin-left: 15px;
	padding-left: 15px;
	line-height: 1;
	}
	.header-extras > ul > li{ margin-left: 10px; }
	#topbar .topbar-right .social-icons li a{
	width: 30px;
	height: 30px;
	line-height: 30px !important;
	background: var(--gradient);
	color: #ffffff;
	border-radius: 50%;
	text-align: center;
	}
	#topbar .topbar-right .social-icons li{
	margin-left: 5px;
	margin-top: 4px;
	}
	
	#search{
	width: 100%;
	float: right;
	left: initial;
	right: 0;
	height: 300px;
	background: #fff;
	}
	body.search-open #search{
	width: 100%;
	margin: auto;
	left: 0;
	right: 0;
	top: 0px;
	border-radius: 200px;
	box-shadow: 0 0 20px rgba(0, 0, 0, 0.26);
	height: 120px;
	max-width: 1140px;
	}
	
	#header,
	.header-extras{
		height: 60px;
		line-height: 60px;
	}
	
	/* LOGO */
	#header .header-inner #logo{}
	#header .header-inner #logo a > img{ height:80px; }
	
	#search{
	background: rgba(0, 0, 0, 0.82);
	backdrop-filter: blur(2px);
	height: 30%;
	}
	#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: rgba(255, 255, 255, 0.23);
	color: #fff !important;
	border-radius: 50%;
	}
	
	.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: #ffffff;
	background: #000;
	}
	.header-extras > ul > li > a:not(.btn) i,
	.header-extras > ul > li .topbar-dropdown > .title i,
	.header-language i{
	font-size: 18px;
	color: var(--primary-color);
	}
	.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; }
	img.line-star{ height: 20px; margin: 10px 0; }
	
	.decor-1{
	position: absolute;
	right: 10px;
	top: 27%;
	}
	.decor-1 img{ width:150px; }
	.decor-2{
	position: absolute;
	left: -3%;
	top: 60%;
	}
	.decor-2 img{ width:240px; }
	
	/* head height */
	#header .header-inner{
	height: initial;
	padding: 0 40px;
	}
	.slogan{
	display: inline-block;
	margin-left: 10px;
	height: 70px;
	align-content: center;
	float: left;
	}
	.slogan h2{
	font-size: 23px;
	letter-spacing: 0;
	margin: 0;
	line-height: 1.2;
	}
	.slogan p{
	color: #000;
	font-size: 12px;
	margin: 0;
	}
	
	button.btn.btn-outline, .btn:not(.close):not(.mfp-close).btn-outline, a.btn:not([href]):not([tabindex]).btn-outline{
		background-color: var(--primary-color);
		border-color: var(--primary-color);
		color: var(--primary-color) !important;
	}
	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(--gradient) !important;
		border-color: var(--primary-color) !important;
		color: #fff !important;
	}
	
	/* shortcut */
	#side-shortcut {
		position: fixed;
		top: 0;
		bottom: 0;
		right: 20px;
		margin: auto;
		height: -webkit-fit-content;
		z-index: 200;
		padding: 10px;
		background: rgba(91, 84, 84, 0.06);
		border-radius: 50px;
		backdrop-filter: blur(20px);
		border: 1px solid rgba(255, 255, 255, 0.21);
	}
	#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;
	min-width: initial;
	}
	#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: 500;
	background: inherit;
	color: #fff;
	text-shadow: 0 0 2px rgba(0, 0, 0, 0.5);
	line-height: 40px;
	position: absolute;
	right: 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-right: 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: #35b107;border-radius: 10px 0px 0px;}
	.shortcut-facebook {background: #0766ff;}
	.shortcut-youtube {background: #ec0f0f;}
	.shortcut-wechat {background: #00c173;}
	.shortcut-mobile{ background: #1dac12; }
	.shortcut-linkedin{background: #0b66c2;}
	.shortcut-call {background: var(--secondary-color);}
	.shortcut-email {
	background: #5c6d81;
	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; }
	
	
	.topbar-logo img{
		height: 80px;
		padding: 10px 0;
	}
	
	/* menu */
	#mainMenu.menu-left nav{ margin-left: 0;}
	#mainMenu nav > ul > li{ margin-left:0; }
	#mainMenu nav > ul > li > a{
	position: relative;
	font-size: 15px;
	padding: 0 10px;
	letter-spacing: 0;
	font-weight: 600;
	color: #5b5e6f;
	}
	/* #mainMenu nav > ul > li > a:after{
	position: absolute;
	content: "";
	width: 1px;
	height: 82%;
	right: 0;
	top: 0;
	background: rgba(0, 0, 0, 0.24);
	transform: skew(-15deg);
	} */
	#mainMenu nav > ul > li:last-child > a:after{
	display: none;
	}
	#mainMenu nav > ul > li{
	display: inline-block;
	float: none;
	}
	#mainMenu nav > ul > li > a
	#mainMenu nav > ul li,
	#mainMenu nav > ul > li .dropdown-menu a,
	.header-extras > ul > li a,
	.header-extras > ul > li i{
	color: #231f20 !Important;
	}
	#mainMenu nav > ul > li .dropdown-menu a{
	width: 100%;
	display: inline-block;
	}
	#mainMenu nav > ul li, #mainMenu nav > ul > li .dropdown-submenu{ line-height:40px; }
	#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,
	#mainMenu nav > ul > li .dropdown-menu a:hover,
	.header-extras > ul > li a:hover,
	.header-extras > ul > li a:hover i{
	color: var(--primary-color) !important;
	}
	
	.text-bg{
	padding-left: 0;
	position: relative;
	z-index: 1;
	background-image: linear-gradient(42deg, rgba(0, 144, 210, 1), rgb(43, 174, 235) 34.45%, rgba(79, 199, 255, 1) 44.96%,
	rgba(0, 144, 210, 1) 74%, rgba(0, 144, 210, 1));
	background-size: 150%;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	filter: drop-shadow(0 0 1px rgba(255, 200, 0, .3));
	animation: MoveBackgroundPosition 6s ease-in-out infinite;
	}
	@keyframes MoveBackgroundPosition {
	0% { background-position: 0% 50%}
	50% { background-position: 100% 50%}
	100% { background-position: 0% 50%}
	}
	
	/* banner */
	.hero-banner.carousel{
	opacity: 1;
	visibility: visible;
	position: relative;
	overflow: hidden;
	}
	.hero-banner__viewport{
	overflow: hidden;
	width: 100%;
	}
	.hero-banner__track{
	display: flex;
	width: 100%;
	transition: transform 0.55s ease;
	will-change: transform;
	}
	.hero-banner .slide{
	position: relative;
	flex: 0 0 100%;
	width: 100%;
	min-width: 100%;
	}
	.hero-banner .slide > a{
	display: block;
	}
	.hero-banner .slide img{
	display: block;
	width: 100%;
	height: auto;
	}
	.hero-banner .container{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	align-self: center;
	align-content: center;
	z-index: 2;
	pointer-events: none;
	}
	.hero-banner .slide-captions a,
	.hero-banner .slide-captions .btn{
	pointer-events: auto;
	}
	.hero-banner__btn{
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		z-index: 3;
		width: 44px;
		height: 44px;
		border: 0;
		border-radius: 50%;
		background: rgba(0,0,0,0.45);
		color: #fff;
		font-size: 28px;
		line-height: 51px;
		cursor: pointer;
		display: flex;
		align-items: end;
		justify-content: center;
		transition: background 0.2s ease;
	}
	.hero-banner__btn:hover,
	.hero-banner__btn:focus{
	background: rgba(0,0,0,0.7);
	outline: none;
	}
	.hero-banner__btn--prev{ left: 16px; }
	.hero-banner__btn--next{ right: 16px; }
	.hero-banner__dots{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 18px;
	z-index: 3;
	display: flex;
	justify-content: center;
	gap: 8px;
	}
	.hero-banner__dot{
	width: 10px;
	height: 10px;
	padding: 0;
	border: 0;
	border-radius: 50%;
	background: rgba(255,255,255,0.45);
	cursor: pointer;
	}
	.hero-banner__dot.is-active,
	.hero-banner__dot:hover{
	background: #fff;
	}
	
	/* about page */
	.page-hero{
	position: relative;
	min-height: 280px;
	display: flex;
	align-items: flex-end;
	background-image: var(--page-hero-bg);
	background-size: cover;
	background-position: center;
	padding: 72px 0 48px;
	}
	.page-hero__shade{
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(0,0,0,0.62) 0%, rgba(0,0,0,0.28) 70%, rgba(0,0,0,0.15) 100%);
	}
	.page-hero__inner{
	position: relative;
	z-index: 1;
	color: #fff;
	}
	.page-hero__crumb{
	font-size: 13px;
	margin-bottom: 12px;
	opacity: 0.9;
	}
	.page-hero__crumb a{
	color: #fff;
	text-decoration: none;
	}
	.page-hero__crumb a:hover{
	text-decoration: underline;
	}
	.page-hero__crumb-sep{
	margin: 0 8px;
	opacity: 0.7;
	}
	.page-hero__title{
	font-size: clamp(32px, 4vw, 48px);
	font-weight: 800;
	margin: 0 0 10px;
	letter-spacing: -0.02em;
	color: #fff;
	}
	.page-hero__subtitle{
	font-size: 16px;
	line-height: 1.6;
	margin: 0;
	max-width: 560px;
	opacity: 0.95;
	color: #fff;
	}
	
	.sect-about-page{
	padding: 70px 0 40px;
	background: #fff;
	}
	.about-company__visual{
	margin-bottom: 28px;
	}
	.about-company__img{
	width: 100%;
	height: auto;
	display: block;
	border-radius: 12px;
	object-fit: cover;
	min-height: 280px;
	}
	.about-company__kicker{
	font-size: 13px;
	font-weight: 700;
	color: #777;
	letter-spacing: 0.04em;
	margin: 0 0 8px;
	}
	.about-company__title{
	font-size: clamp(26px, 3vw, 36px);
	font-weight: 800;
	color: #111;
	margin: 0 0 14px;
	position: relative;
	padding-bottom: 14px;
	}
	.about-company__title::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 48px;
	height: 3px;
	background: #d9232e;
	border-radius: 2px;
	}
	.about-company__lead{
	font-size: 17px;
	font-weight: 600;
	color: #333;
	line-height: 1.6;
	margin-bottom: 16px;
	}
	.about-company__content p{
	font-size: 15px;
	line-height: 1.8;
	color: #444;
	margin-bottom: 14px;
	}
	.about-company__stats{
	display: flex;
	flex-wrap: wrap;
	gap: 14px;
	margin-top: 28px;
	}
	.about-company__stat{
	min-width: 110px;
	padding: 14px 16px;
	background: #f5f5f5;
	border-radius: 10px;
	}
	.about-company__stat strong{
	display: block;
	font-size: 24px;
	font-weight: 800;
	color: #111;
	line-height: 1.2;
	}
	.about-company__stat span{
	font-size: 13px;
	color: #666;
	}
	
	.sect-factories{
	padding: 40px 0 80px;
	background: #f8f8f8;
	}
	.factories-head{
	margin-bottom: 36px;
	max-width: 640px;
	}
	.factories-kicker{
	font-size: 13px;
	font-weight: 700;
	color: #777;
	margin: 0 0 8px;
	}
	.factories-title{
	font-size: clamp(24px, 2.8vw, 34px);
	font-weight: 800;
	color: #111;
	margin: 0 0 12px;
	position: relative;
	padding-bottom: 14px;
	}
	.factories-title::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 48px;
	height: 3px;
	background: #d9232e;
	border-radius: 2px;
	}
	.factories-lead{
	font-size: 15px;
	color: #555;
	margin: 0;
	line-height: 1.6;
	}
	.factories-list{
	display: flex;
	flex-direction: column;
	gap: 28px;
	}
	.factory-card{
	display: grid;
	grid-template-columns: 1fr;
	gap: 0;
	background: #fff;
	border-radius: 14px;
	overflow: hidden;
	border: 1px solid #ebebeb;
	scroll-margin-top: 100px;
	}
	@media (min-width: 992px){
	.factory-card{
	grid-template-columns: 1.05fr 1fr;
	}
	.factory-card--reverse .factory-card__media{
	order: 2;
	}
	.factory-card--reverse .factory-card__body{
	order: 1;
	}
	}
	.factory-card__media{
	min-height: 240px;
	background: #eee;
	}
	.factory-card__media img{
	width: 100%;
	height: 100%;
	min-height: 240px;
	object-fit: cover;
	display: block;
	}
	.factory-card__body{
	padding: 28px 24px 26px;
	}
	.factory-card__tag{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 700;
	color: #5c5348;
	background: #ececec;
	margin-bottom: 12px;
	}
	.factory-card__title{
	font-size: 22px;
	font-weight: 800;
	color: #111;
	margin: 0 0 8px;
	line-height: 1.35;
	}
	.factory-card__role{
	font-size: 14px;
	font-weight: 600;
	color: #666;
	margin: 0 0 14px;
	}
	.factory-card__body > p{
	font-size: 15px;
	line-height: 1.75;
	color: #444;
	margin-bottom: 18px;
	}
	.factory-card__info{
	list-style: none;
	padding: 0;
	margin: 0 0 18px;
	}
	.factory-card__info li{
	display: grid;
	grid-template-columns: 90px 1fr;
	gap: 10px;
	padding: 10px 0;
	border-top: 1px solid #eee;
	font-size: 14px;
	line-height: 1.55;
	}
	.factory-card__info li:last-child{
	border-bottom: 1px solid #eee;
	}
	.factory-card__info strong{
	color: #222;
	}
	.factory-card__info a{
	color: #1e3a5f;
	}
	.factory-card__map{
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid #e5e5e5;
	}
	.factory-card__map iframe{
	display: block;
	width: 100%;
	height: 220px;
	border: 0;
	}
	.slide-captions{ text-align: right;}
	@keyframes meshGradient {
	0% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
	100% { background-position: 0% 50%; }
	}
	
	@keyframes shine {
	to { background-position: 200% center; }
	}
	@keyframes zscaling {
	0% { transform: scale(1);}
	100% { transform: scale(1.25);}
	}
	.slide-captions h4,
	.slide-captions h5{
	color: #fff;
	text-shadow: 0 2px 3px rgba(0, 0, 0, 0.81);
	}
	.slide-captions h4{
		font-size: 3em;
		font-weight: 600;
		margin-bottom: 0;
		letter-spacing: 3px;
		line-height: 1.25;
	}
	.slide-captions h5{
		line-height: 1.5;
		font-size: 25px;
		font-weight: 500 !important;
	}
	.slide-captions h5 span{
		font-size: 29px;
		font-weight: 500 !important;
	}
	
	.banner-logo{
	width: 80px !important;
	height: auto !important;
	position: absolute;
	left: 0;
	right: 0;
	top: 16%;
	z-index: 2;
	margin: 0 auto;
	}
	.inspiro-slider .slide .slide-captions > p{
	margin-bottom: 20px;
	}
	.slide-captions .project-name{
	padding-bottom: 0px;
	}
	.slide-captions .project-name small{
	left: 0;
	right: 0;
	margin: 0 auto;
	font-size: 23px;
	display: block;
	font-weight: 400;
	}
	#slider [data-bg-image]::before{ opacity:0; }
	.inspiro-slider .slide .slide-captions{
	width: 60%;
	left: -17%;
	}
	.inspiro-slider .slide .slide-captions h1{
	font-size: 4em;
	line-height: 1.2;
	margin-bottom: 20px !important;
	}
	.inspiro-slider .slide .slide-captions h1 span{
	display: block;
	font-size: 25px;
	}
	.inspiro-slider .slide .slide-captions > p{
	font-size: 20px;
	}
	.inspiro-slider .slide .slide-captions > p,
	.inspiro-slider .slide .slide-captions h1{
	text-shadow: 0 0 9px rgba(0, 0, 0, 0.15);
	}
	.flickity-button{ border-radius:0; }
	
	.limit1, .limit2, .limit3, .limit4, .limit5{
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
	display: -webkit-box;
	}
	.limit1{-webkit-line-clamp: 1;}
	.limit2{-webkit-line-clamp: 2;}
	.limit3{-webkit-line-clamp: 3;}
	.limit4{-webkit-line-clamp: 4;}
	.limit5{-webkit-line-clamp: 5;}
	.icon-arrow-right{
	width: 20px !important;
	height: auto;
	}
	
	.btn-more-arrow{ width:40px !important; }
	.btn-more-arrow span{
	margin-right: 5px;
	opacity: 0;
	display: none;
	transition: all .3s ease-in-out;
	}
	.btn-more-arrow img{}
	.btn-more-arrow:hover span{
	opacity:1;
	width: auto;
	display: inline-block;
	}
	.btn-more-arrow:hover{
	width: auto;
	}
	
	/* sercice */
	.blog-service .service-icon{
	width: 60px !important;
	height: auto;
	margin-bottom: 20px;
	}
	.sect-service{
	overflow: initial;
	z-index: 2;
	background: #EEE;
	background: linear-gradient(to top right, rgba(255, 255, 255, 1) 59.24%, rgba(238, 242, 255, 1));
	}
	.slide-service{
	position: relative;
	top: -80px;
	margin-bottom: -80px;
	}
	.blog-service{
	background: #fefefe;
	padding: 40px;
	box-shadow: 0 0 1px #bebebe inset;
	}
	.blog-desc{
	font-size: 14px;
	color: #888;
	margin: 15px 0;
	}
	
	/* service */
	.sect-service .headbar{
	float:right;
	position: absolute;
	left: 38%;
	right: 0;
	margin: auto;
	top: 43%;
	}
	.sect-service .headbar .btn{
	position: relative !Important;
	margin-top: 20px;
	}
	.sect-service .service-list-content{
	float:left;
	text-align: center;
	position: relative;
	left: -14%;
	max-width: 80%;
	top: 60px;
	}
	.sect-service .service-list-content [class*="slc-"]{
	width: 400px;
	max-width: initial;
	float: left;
	}
	.sect-service .service-list-content .slc-1{ margin: 0 auto; float: none; }
	.sect-service .service-list-content .slc-2{ float: left;}
	
	.sect-service .service-card-wrap{
	position: relative;
	}
	.sect-service .service-head .h-title{
	font-size: 3em;
	line-height: 1.1;
	color: #1b2240;
	max-width: 560px;
	}
	.sect-service .service-head p{
	color: #677180;
	font-size: 16px;
	line-height: 1.8;
	margin-left: auto;
	}
	.service-card-slider .service-card-item{
	position: relative;
	overflow: hidden;
	border-radius: 5px;
	background: #fff;
	}
	.service-card-slider .service-card-item > a{
	display: block;
	position: relative;
	}
	.service-card-slider .service-card-item img{
	width: 100%;
	height: 320px;
	object-fit: cover;
	}
	.service-card-slider .service-card-title{
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	background: var(--primary-color);
	color: #fff;
	text-align: center;
	font-size: 1.25em;
	font-weight: 600;
	padding: 16px 12px;
	line-height: 1.1;
	}
	.service-card-slider .service-card-item--blue::before{
	content: "";
	position: absolute;
	inset: 0;
	background: rgba(16, 62, 163, 0.88);
	z-index: 1;
	}
	.service-card-slider .service-card-item--blue .service-card-caption{
	position: absolute;
	inset: 0;
	z-index: 2;
	color: #fff;
	text-align: center;
	padding: 40px 22px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	}
	.service-card-slider .service-card-item--blue h5{
	color: #fff;
	font-size: 36px;
	line-height: 1.1;
	margin-bottom: 12px;
	}
	.service-card-slider .service-card-item--blue p{
	color: rgba(255,255,255,0.9);
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 12px;
	}
	.service-card-slider .service-card-item--blue .service-readmore{
	font-size: 16px;
	font-weight: 600;
	}
	@media (max-width: 991px){
	.sect-service .service-card-wrap{ padding: 80px 0 50px; }
	.sect-service .service-head .h-title{ font-size: 34px; margin-bottom: 15px; }
	.sect-service .service-head p{ margin-left: 0; }
	.service-card-slider .service-card-item img{ height: 260px; }
	.service-card-slider .service-card-title{ font-size: 24px; }
	}
	
	/* whyus */
	.sect-whyus{
	background: #f8fbfc;
	}
	ul.list-icon-check li{
	position: relative;
	padding-left: 30px;
	line-height: 1.3;
	margin-bottom: 15px;
	}
	ul.list-icon-check li::before{
	position: absolute;
	content: "";
	width: 20px;
	height: 20px;
	left: 0;
	top: 2px;
	background: url(../images/icon/check.svg) no-repeat center center;
	border-radius: 50%;
	background-size: 100%;
	}
	.alg-center{ align-self: center;}
	.sect-program .cleft .inner{
	max-width: 545px;
	float: right;
	}
	.sect-about{ background: #f9f9f9;}
	.sect-feature{ background: #edf1f2;}
	.feature-item .inner{
		border-radius: 20px;
		border: 1px solid rgba(210, 210, 214, 0.42);
		padding: 20px 0;
		text-align: center;
		background: #fff;
	}
	.feature-item img{ width: 48px; margin-bottom: 20px;}
	
	/* article */
	.sect-article{
	background: #f5f7fb;
	padding: 90px 0;
	}
	.article-slider .article-slide-item{
	background: #fff;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 10px 28px rgba(15, 23, 42, 0.12);
	}
	.article-slider .article-slide-row{
	display: flex;
	align-items: stretch;
	margin-left: 0;
	margin-right: 0;
	}
	.article-slider .article-content-col,
	.article-slider .article-image-col{
	padding-left: 0;
	padding-right: 0;
	}
	.article-slider .article-content{
	height: 100%;
	padding: 55px 50px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	}
	.article-slider .article-tag{
	display: inline-block;
	padding: 6px 14px;
	border-radius: 30px;
	background: rgba(0, 150, 214, 0.12);
	color: #007cb6;
	font-size: 13px;
	font-weight: 700;
	margin-bottom: 18px;
	text-transform: uppercase;
	letter-spacing: 0.04em;
	width: -webkit-fit-content;
	}
	.article-slider .article-title{
	font-size:2em;
	line-height: 1.2;
	color: #1a2340;
	margin-bottom: 18px;
	}
	.article-slider .article-description{
	font-size: 16px;
	line-height: 1.9;
	color: #667085;
	margin-bottom: 28px;
	}
	.article-slider .article-image{
	height: 100%;
	min-height: 420px;
	overflow: hidden;
	}
	.article-slider .article-image img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	}
	
	@media (max-width: 991px){
	.sect-article{ padding: 70px 0; }
	.article-slider .article-content{ padding: 36px 28px; }
	.article-slider .article-title{ font-size: 28px; }
	.article-slider .article-image{ min-height: 280px; }
	}
	
	/* category */
	.sect-product{
	background: linear-gradient(to top, rgba(221, 225, 230, 1), rgba(246, 246, 246, 1) 62.18%);
	/* background: url(../images/bg-04.jpg) no-repeat;
	background-size: 100%;
	background-position: center bottom; */
	}
	.clip-card{
	background: var(--secondary-color);
	padding: 10px;
	border-radius: 18px;
	border: none;
	overflow: hidden;
	}
	.clip-card .card-title h2{
	font-size: 23px;
	margin-top: 10px;
	margin-bottom: 5px;
	color: #fff;
	font-weight: 400;
	line-height: 1;
	text-align: center;
	}
	.clip-card .card-title h2 a{ color: inherit;}
	.clip-card .card-title a.btn-circle{
	position: absolute;
	right: 15px;
	top: 15px;
	width: 40px;
	height: 40px;
	line-height: 40px;
	font-size: 20px;
	background: var(--gradient);
	color: #fff;
	border-radius: 50%;
	text-align: center;
	}
	.card-title{
	padding: 5px 15px;
	margin: 0;
	}
	.clip-card .card-title a i{ color: inherit; }
	.clip-card .card-body{
	padding: 0;
	border-radius: 11px;
	overflow: hidden;
	}
	.clip-card .card-body .desc{
	position: absolute;
	left: 0;
	bottom: 50px;
	padding: 20px;
	color: #fff;
	opacity: 0;
	background: #2a362c;
	transition: all .3s ease-in-out;
	}
	.clip-card:hover .card-body .desc{
	bottom: 55px;
	opacity: 1;
	}
	.clip-card:hover img,
	.product-item:hover img{
	transition: all .4s ease-in-out;
	transform: scale(1.1);
	}
	
	/* cta */
	.sect-cta{
		background: #EEE;
		background: linear-gradient(20deg, rgba(228, 228, 228, 1), rgba(242, 242, 242, 1) 35.71%, rgba(252, 252, 252, 1) 63.87%, rgba(241, 241, 241, 1));
	}
	.decor-quote{ 
		position: relative;
		display: inline-block;
	}
	.decor-quote::before{
		position: absolute;
		content: "";
		width: 50px;
		height: 70px;
		left: -60px;
		top: -20px;
		background: url(../images/icon-quote.png) no-repeat;
		background-position: center;
		background-size: 100%;
	}
	
	/* custommer */
	.sect-customer{
	background: #fff;
	background: url(../images/bg-ab.jpg) no-repeat;
	background-size: cover;
	background-position: center 91%;
	padding: 120px 0;
	}
	.grid.grid-8-columns li{
	width:calc(100%/8);
	padding: 20px;
	}
	.list-customer-logo li{
	width: calc(100%/6);
	float: left;
	color: #505050;
	margin-bottom: 15px;
	padding: 0 10px;
	}
	.customer_boxlogo{
	border: 1px solid #f2f2f2;
	overflow: hidden;
	padding: 10px 0;
	text-align: center;
	background: #fff;
	}
	.list-customer-logo li img{
	/* height:80px; */
	max-width: 100%;
	}
	.tabs .nav-tabs .nav-link{
	font-size: 17px;
	border-radius: 0;
	}
	.tabs .nav-tabs .nav-link.active{
	color: var(--primary-color);
	border-bottom: 2px solid var(--primary-color);
	background: var(--primary-color);
	color: #fff;
	}
	/* .tabs .nav-tabs{
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	}
	.tabs .nav-tabs .nav-item{
	-ms-flex-preferred-size: 0;
	flex-basis: 0;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	text-align: center;
	} */
	
	/* news */
	.news-item .blog-detail{
	position: relative;
	padding: 20px;
	background: rgba(255, 255, 255, 0.67);
	min-height: 170px;
	}
	.news-item .blog-detail .htitle{
	font-size: 1.2em;
	margin: 10px 0;
	}
	.news-item .blog-detail .text-link{
	position: absolute;
	bottom: 20px;
	left: 20px;
	}
	.news-item .blog-detail .date{
	display: -webkit-inline-box;
	border-radius: 50px;
	font-size: 13px;
	}
	.sect-portfolio ,
	.sect-portfolio-2{
	background: var(--gradient);
	}
	.head-bar{
	margin-bottom: 20px;
	text-align: center;
	}
	
	/* clips */
	.box-btn a.play-button{
	width: 60px;
	height: 60px;
	position: absolute;
	top: 40px;
	left: 40px;
	z-index: 3;
	margin: auto;
	text-align: center;
	background: #fff;
	color: #000 !important;
	border: none !important;
	}
	.box-btn a i{ color:#0f6dc4 !important; }
	.grid-item-wrap{ position:relative; }
	.grid-item .desc-box{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	text-align: left;
	padding: 30px 40px;
	z-index: 2;
	color: #fff;
	}
	.grid-item .desc-box .htitle{
	margin: 0;
	font-size: 18px;
	color: #fff;
	}
	.grid-item .desc-box small{ font-size:14px; }
	.clips-item .grid-item-wrap{
	border-radius: 20px;
	overflow: hidden;
	position: relative;
	z-index: 2;
	}
	.grid-item.clips-item .grid-image:after {
	background: rgb(0,153,214);
	background: var(--gradient);
	opacity: 0.5;
	}
	.grid-item.clips-item:hover .grid-image:after{
	background: #000;
	}
	
	/* sect-aboutus */
	.sect-feature{
	background: #fff;
	/* background: url(../images/bg-ab.jpg) no-repeat; */
	background: url(../images/bg-white-abscract.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	}
	.conduct-item{
	padding: 40px;
	padding-top: 80px;
	}
	.conduct-item img{
	width: 120px;
	box-shadow: 0 0 10px color(display-p3 0.332 0.418 0.485 / 0.25);
	border-radius: 50%;
	}
	.conduct-item h5{
	margin: 20px 0;
	font-size: 18px;
	color: var(--primary-color);
	border-bottom: 1px solid #ddd;
	padding-bottom: 20px;
	}
	.conduct-item p{
	font-size: 14px;
	color: #888;
	}
	.conduct-item h5,
	.conduct-item p{
	padding-right: 40px;
	}
	.ctnr-wrap{
	position: relative;
	display: inline-block;
	width: 100%;
	}
	.cuid-box{
	position: absolute;
	content: "";
	width: 300px;
	height: 300px;
	left: 0;
	bottom: 0;
	background: var(--primary-color);
	padding: 80px;
	font-size: 20px;
	color: #000;
	display: grid;
	align-items: center;
	}
	.ctnr-wrap:after{
	position: absolute;
	content: "";
	width: 100px;
	height: 300px;
	left: 0;
	bottom: 0px;
	background: var(--primary-color);
	}
	.ctnr-wrap .ctnr-left,
	.ctnr-wrap .ctnr-right{
	width: 50%;
	display: inline-block;
	float: left;
	}
	.ctnr-wrap .ctnr-right{
	position: absolute;
	right: 0;
	top: 0;
	height: 100%;
	overflow: hidden;
	}
	.about-area{
	position: relative;
	width: 555px;
	float: right;
	padding: 0px 80px 0px 0px;
	background: #fff;
	z-index: 2;
	}
	.about-area .htitle{
	margin-bottom: 50px;
	color: var(--primary-color);
	font-size: 2em;
	}
	
	.headbar .h-title{
	font-size: 2.8em;
	line-height: 1;
	display: -webkit-inline-flex;
	}
	.sect-haft-content{
	background: #f1f1f1;
	}
	
	/* product */
	.product-item.card{
	position: relative;
	overflow: hidden;
	padding: 20px;
	background: #fff;
	border-radius: 10px;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
	}
	.product-image{ position: relative; overflow: hidden;}
	.product-item.card .product-content p{ margin-bottom: 0;}
	
	.social-img-icon{
	width: 42px;
	margin-right: 8px;
	}
	
	/* video */
	.video-list{
	position: relative;
	max-height: 395px;
	overflow: scroll;
	box-shadow: 0 1px 10px #ddd;
	padding: 20px;
	padding-bottom: 0;
	background: #fff;
	}
	.sect-haft-content iframe{ background: #fff;}
	.video-item{
	display: flex;
	gap: 15px;
	margin-bottom: 20px;
	}
	.video-image{ width: 80%;}
	.video-title h2{ font-size: 18px;}
	
	/* partner */
	.partner-title{ text-align: center;}
	.sect-partner{
	padding: 26px 0;
	background: #fff;
	}
	
	.partner-marquee{
	overflow: hidden;
	position: relative;
	width: 100%;
	}
	
	.partner-track{
	display: flex;
	width: max-content;
	gap: 36px;
	align-items: center;
	animation: partner-marquee 28s linear infinite;
	will-change: transform;
	}
	
	.partner-marquee:hover .partner-track{
	animation-play-state: paused;
	}
	
	.partner-item{
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 140px;
	/* opacity: .9; */
	transition: opacity .2s ease;
	}
	
	.partner-item:hover{ opacity: 1; }
	
	.partner-item img{
	height: 54px;
	width: auto;
	object-fit: contain;
	/* filter: grayscale(100%); */
	}
	
	.partner-item:hover img{
	filter: grayscale(0);
	}
	
	@keyframes partner-marquee{
	from { transform: translateX(0); }
	to { transform: translateX(-50%); }
	}
	
	@media (max-width: 767px){
	.partner-track{
	gap: 24px;
	animation-duration: 18s;
	}
	.partner-item img{ height: 42px; }
	}
	
	@media (prefers-reduced-motion: reduce){
	.partner-track{ animation: none; }
	}
	
	/* about */
	.uppercase{ text-transform: uppercase; line-height:1.3; }
	.sect-about .cleft{ padding-right:0; }
	.sect-about .cright{ padding-left:80px; }
	.sect-about .small-img{
	width: 450px;
	position: relative;
	top: -150px;
	left: -37%;
	border: 6px solid #fff;
	margin-bottom: -120px;
	}
	
	/* social */
	footer .social-icons li a{
	background: #ddd;
	width: auto;
	border-radius: 50px !important;
	color: #333;
	}
	footer .social-icons li a{ width: 32px !important; height: 32px !important;}
	footer .social-icons li a i{
	height: 32px;
	width: 32px;
	border-radius: 50%;
	margin-right: 5px;
	background: rgba(0, 0, 0, 0.21);
	float: left;
	line-height: 32px;
	
	}
	.social-icons .social-x a:hover img{ filter: brightness(1) invert(0.5);}
	.social-icons:not(.social-title) li.social-instagram a{
	background-color: transparent;
	background: url('../images/social/instagram-bg.jpg') no-repeat;
	background-size: cover;
	background-position: center;
	}
	.social-icons:not(.social-title) li.social-tiktok a{
	background-color: transparent;
	background: #000 url('../images/social/tiktok-bg.webp') no-repeat;
	background-size: 15px;
	background-position: center;
	}
	.social-icons li.social-tiktok a:hover i{ opacity:0; }
	.image-icon-social{
	height: 13px;
	top: -1px;
	position: relative;
	filter: brightness(0) invert(1);
	}
	.social-icons li.social-linkedin a{background-color:#0b66c2!important;color: #fff !important; }
	.social-icons li.social-linkedin a i{ color: #fff !important; }
	
	.connect-center{
	display: -webkit-flex;
	margin: 0 auto;
	width: -webkit-max-content;
	}
	.connect-center > div{
	display: flex;
	align-items: baseline;
	align-content: center;
	margin: 0 15px;
	}
	.connect-center ul,
	.connect-center ul li{
	margin-top: 0;
	margin-bottom: 0;
	display: contents;
	}
	.connect-center div label{
	margin-right: 10px;
	}
	.connect-center .phone-box ul{ margin-left:15px; }
	
	.sect-news{background: #f1f3f4;}
	.news-item .blog-detail{
	padding: 20px;
	background: rgba(239, 243, 246, 0.85);
	}
	.news-item .blog-detail .htitle{
	font-size: 16px;
	margin: 5px 0;
	}
	
	.sect-contact{
	background: var(--gradient);
	padding-bottom: 0;
	}
	.sect-contact .ctnr-left{
	width: 60%;
	display: inline-block;
	float: left;
	border-radius: 0 80px 0 0;
	position: relative;
	z-index: 2;
	overflow: hidden;
	}
	.sect-contact .ctnr-left iframe{ float:left; }
	.sect-contact .ctnr-right{
	width: 40%;
	display: inline-block;
	}
	.sect-contact .contact-info{ padding: 40px 100px; }
	.sect-contact .contact-info h5,
	.sect-contact .contact-info h4,
	.sect-contact .contact-info strong{
	color: #fff;
	}
	.sect-contact .contact-info,
	.sect-contact .contact-info p{
	color: #f7f7f7;
	}
	
	/* footer */
	/* #footer{ background:#f5f5f5; }
	footer, footer a, footer p{ color:#787676; }
	ul.inline li{ display:inline-block; }
	.list-links{
	margin-bottom: 0;
	margin-left: -5px;
	margin-right: -5px;
	}
	.list-links li{ margin: 0 5px;}
	.copyright-content .col-right{ text-align:right; }
	.img-qrcode{ width:150px; margin:-5px; }
	ul.list-contact li{
	margin-bottom: 7px;
	font-size: 16px;
	font-weight: 500;
	color: var(--primary-color);
	}
	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-family: "Baskervville", serif;
	font-weight: normal;
	font-size: 20px;
	}
	#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 ul.list-contact li i{ background:#7f613b; }
	footer ul.list-contact li a:hover i{ color: #7f613b;}
	#scrollTop:after, #scrollTop:before{
	background: var(--primary-color);
	}
	#footer .col-fll .list-links a{
	font-weight: 600 !important;
	color: #333;
	}
	#footer .col-right .list-links{ float:right; }
	
	.list-contact.social span{ display:none; }
	.list-contact.social li{ display:inline-block; }
	
	.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{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{
	background-color: transparent;
	background: url('../_images/social/instagram-bg.jpg') no-repeat;
	background-size: cover;
	background-position: center;
	}
	.social-icons:not(.social-title) li.social-tiktok a{
	background-color: transparent;
	background: #000 url('../_images/social/tiktok-bg.webp') no-repeat;
	background-size: 15px;
	background-position: center;
	}
	.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-line a{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{ background: #25940f;}
	.social-icons .social-website a{ background: #285fb4;}
	.social-icons .line-oa img{ max-width: 81%; height: auto; }
	
	.social-icons.social-title ul{
	display: inline-block;
	float: left;
	}
	.social-icons.social-title li{
	line-height: 32px;
	margin-bottom: 8px;
	display: -webkit-flex;
	}
	.social-icons.social-title li span{
	margin: 0 2px 0 10px;
	color: #493838;
	font-weight: 500;
	letter-spacing: 0px;
	}
	.social-icons.social-title li a{
	width:auto;
	padding-right: 20px;
	border-radius: 20px;
	background-color: #dfdfdf;
	}
	.social-icons.social-title li a > i{
	width: 32px;
	height: 32px;
	border-radius: 50%;
	text-align: center;
	display: inline-block;
	background: #fff;
	float: left;
	line-height: 32px !Important;
	color: #333;
	}
	.social-icons.social-title li.social-line a > i{background: #03c300;}
	.social-icons.social-title li.social-wechat a > i{ background:#04cb0c; color: #fff;}
	.social-icons.social-title li.social-tiktok a > i{ background:#000; }
	.social-icons.social-title li.social-facebook a > i{ background:#227df5; color: #fff;}
	.social-icons.social-title li a:hover span{ color:#fff; }
	.social-icons.social-title li.social-wechat a:hover{ background-color: #04cb0c;}
	.social-icons.social-title li.social-tiktok a:hover i{ opacity:1; } */
	
	body .body-inner{
	background: url(../images/bg-ab.jpg) no-repeat;
	background-size: 100%;
	background-position: center 38%;
	}
	.sect-news{
	background: url(../images/bg-news.jpg) no-repeat;
	background-size: 100%;
	background-position: center bottom;
	padding-bottom: 160px;
	
	}
	
	/* new */
	.blog-about{
	padding:80px 0;
	padding-bottom: 300px;
	text-align: center;
	background: url(https://de-dbuilder.com/sites/18365/files/u/bg-aoutus.jpg) no-repeat;
	background-size: 100%;
	background-position: center top;
	}
	.blog-about .stitle{ margin-bottom:0; }
	.blog-about .desc{
	max-width: 60%;
	margin: 0 auto;
	font-size: 22px;
	}
	
	.blog-process{
	padding: 40px 0 10px 0;
	background: #f4f4f4;
	}
	.list-process{
	display: inline-block;
	width: 80%;
	margin: auto;
	}
	.process-item{
	padding: 20px;
	width: calc(100% /6);
	float: left;
	text-align: center;
	}
	.process-item .circle{
	width: 120px;
	height: 120px;
	line-height: 120px;
	text-align: center;
	box-shadow: 0 0 10px color(display-p3 0.332 0.418 0.485 / 0.25);
	border-radius: 50%;
	margin: auto;
	background: var(--primary-color);
	transition: all .3s ease-in-out;
	}
	.process-item:hover .circle{
	position: relative;
	z-index: 1;
	background: linear-gradient(70deg, rgba(21, 40, 81, 1), rgb(12, 39, 98) 30.25%, rgba(47, 95, 195, 1) 39.92%, rgb(23, 62,
	145) 51.26%, rgb(16, 44, 101) 60.92%, rgba(21, 40, 81, 1));
	background-size: 150%;
	animation: MoveBackgroundPosition2 1s forwards;
	transform: scale(1.1);
	}
	@keyframes MoveBackgroundPosition2 {
	0% { background-position: 100% 100%}
	100% { background-position: 0% 0% }
	}
	.process-item .circle img{
	width: 64px;
	}
	.process-item h5{
	margin: 10px 0 0 0;
	font-size: 22px;
	color: var(--primary-color);
	}
	.process-item p{
	font-size: 16px;
	color: #575757;
	}
	.process-item h5,
	.process-item p{
	padding-right: 0px;
	}
	
	.blog-link{
	padding: 80px 0 20px 0;
	}
	.blog-contact{
	text-align: center;
	display: inline-block;
	}
	.blog-contact .cleft,
	.blog-contact .cright{
	display: inline-block;
	float: left;
	}
	.blog-contact .btn-circle{
	width: 60px;
	height: 60px;
	line-height: 60px;
	font-size: 32px;
	color: #fff !important;
	background: #47b60a;
	}
	.blog-contact .btn{
	line-height: 60px !important;
	font-size: 24px !important;
	margin-bottom: 0 !important;
	}
	.blog-contact .btn-circle.link-phone{}
	.blog-contact .btn-circle.link-line{}
	.blog-contact .cleft{ margin-right: 40px; }
	.blog-contact .link-box{
	display:flex;
	margin: 10px 0;
	}
	.blog-contact .link-box .btn{
	position: relative;
	min-width:320px;
	margin-right: 12px;
	}
	.blog-contact .link-box .btn:after{
	position: absolute;
	content: "";
	right: -10px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 12px;
	height: 1px;
	border: 1px dashed #b3b3b3;
	}
	
	.blog-portfolio{ padding: 80px 0; }
	.blog-portfolio .cleft {padding-top: 40px;}
	.blog-portfolio .cleft p{ font-size:20px; }
	.blog-portfolio .cright{ margin-bottom:80px; }
	.box-btn a.btn-circle{
	width: 40px;
	height: 40px;
	line-height: 40px;
	border-radius: 50%;
	text-align: center;
	padding: 0;
	display: inline-block;
	background: rgba(255, 255, 255, 1);
	position: absolute;
	top: 15px;
	right: 15px;
	z-index: 2;
	transition: all .2s ease-in-out;
	}
	.btn-circle{ transition: all .2s ease-in-out; }
	.btn-circle:hover{ transform:scale(1.125); }
	.box-btn a i{ color:#0f6dc4 !important; }
	.grid-item-wrap{ position:relative; }
	.grid-item .desc-box{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	text-align: left;
	padding: 20px;
	z-index: 2;
	color: #fff;
	}
	.grid-item.srv-item .desc-box{
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	text-align: left;
	padding: 20px;
	z-index: 2;
	color: #fff;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	text-align: center;
	align-items: center;
	align-content: center;
	font-size: 7em;
	}
	.grid-item.srv-item .desc-box .htitle{
	color: #fff;
	font-size: 36px;
	font-weight: 600;
	letter-spacing: 2px;
	text-shadow: 0 0 13px rgba(31, 25, 25, 0.8);
	line-height: 1;
	}
	.grid-item.srv-item .grid-image img{ transition:all .3s ease-in-out; }
	.grid-item.srv-item:hover .grid-image img{
	transform: scale(1.1);
	}
	.grid-item .desc-box .htitle{
	margin: 0;
	font-size: 18px;
	color: #fff;
	}
	.grid-item .desc-box small{ font-size:14px; }
	.port-item .grid-item-wrap{
	border-radius: 0;
	overflow: hidden;
	position: relative;
	z-index: 2;
	}
	.grid-item.port-item .grid-image:after {
	opacity: 1;
	background: rgb(21,40,81);
	background: linear-gradient(to top, rgba(2, 10, 27, 1), rgba(8, 52, 143, 0.2763480392156863) 40.76%, rgba(0, 0, 0, 0)
	61.34%);
	
	}
	.grid-item.port-item:hover .grid-image:after{
	background: #000;
	}
	.box-bg-animate{
	position: relative;
	z-index: 1;
	background-image: linear-gradient(70deg, rgba(21, 40, 81, 1), rgb(12, 39, 98) 30.25%, rgba(47, 95, 195, 1) 39.92%,
	rgb(23, 62, 145) 51.26%, rgb(16, 44, 101) 60.92%, rgba(21, 40, 81, 1));
	background-size: 200%;
	animation: MoveBackgroundPosition 8s ease-in infinite;
	}
	.text-gold{ color: #c9a24f; }
	/* .text-bg{
	padding-left: 0;
	position: relative;
	z-index: 1;
	background-image: var(--gradient);
	background-size: 150%;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	filter: drop-shadow(0 0 1px rgba(255, 200, 0, .3));
	animation: MoveBackgroundPosition 6s ease-in-out infinite;
	}
	@keyframes MoveBackgroundPosition {
	0% { background-position: 0% 50%}
	50% { background-position: 100% 50%}
	100% { background-position: 0% 50%}
	} */
	
	.grid-item.clips-item .grid-image:after{
	pointer-events: none;
	}
	.grid-item.clips-item .grid-image a{
	display: inline-block;
	z-index: 2;
	}
	.sect-service .container-fluid{
	max-width: 85%;
	}
	.service-card-content{
	text-align: center;
	padding-top: 10px;
	}
	.service-card-content h5{
	font-size: 20px;
	margin-bottom: 0;
	}
	.sect-service-banner .row .col-xs-12{
	padding: 0 5px;
	}
	.sect-service-banner .row .col-xs-12 .grid-item{
	padding-bottom: 10px;
	}
	.sect-service-banner .row .col-xs-12 .grid-item .grid-item-wrap{ border-radius: 7px; }
	
	.grid-item.clips-item.srv-item .grid-image:after{
	background: rgb(0,0,0);
	background: linear-gradient(to top, rgba(0, 0, 0, 0.79) 18.91%, rgba(0, 0, 0, 0) 80%);
	opacity: 0.2;
	}
	.grid-item.clips-item.srv-item:hover .grid-image:after{
	opacity:1;
	background: rgb(0,0,0);
	background: linear-gradient(to top, rgba(0, 0, 0, 0.79) 18.91%, rgba(0, 0, 0, 0.45) 80%);
	}
	
	/* footer */
	#footer{
	background: rgb(204,204,204);
	background: linear-gradient(to top, rgba(203, 203, 203, 1), rgba(246, 246, 246, 1) 62.18%);
	}
	.ft-logo{ height: 80px;}
	ul.inline li{ display:inline-block; }
	.list-links{
	margin-bottom: 0;
	margin-left: -5px;
	margin-right: -5px;
	}
	.list-links li{ margin: 0 5px; line-height: 1.8;}
	.copyright-content .col-right{ text-align:right; }
	.img-qrcode{ width:150px; margin:-5px; }
	ul.list-contact li{
	margin-bottom: 7px;
	font-size: 16px;
	font-weight: 500;
	}
	ul.list-contact li i{
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	border-radius: 50%;
	background: #fff;
	font-size: 14px;
	}
	footer ul.list-contact li i{ margin-right: 7px !important; }
	ul.list-contact li a:hover{
	background: transparent;
	text-decoration: underline;
	}
	#footer .widget .widget-title,
	#footer .widget h4{
	font-weight: normal;
	font-size: 20px;
	}
	#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 ul.list-contact li i{ background: #ddd;}
	#scrollTop:after, #scrollTop:before{
	background: var(--primary-color);
	}
	#footer .col-fll .list-links a{
	font-weight: 600 !important;
	color: #333;
	
	}
	#footer .col-right .list-links{ float:right; }
	
	.list-contact.social span{ display:none; }
	.list-contact.social li{ display:inline-block; }
	.social-icons.social-icons-rounded li a{ color: #fff !important;}
	
	.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{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{
	background-color: transparent;
	background: url('../_images/social/instagram-bg.jpg') no-repeat;
	background-size: cover;
	background-position: center;
	}
	.social-icons:not(.social-title) li.social-tiktok a{
	background-color: transparent;
	background: #000 url('../_images/social/tiktok-bg.webp') no-repeat;
	background-size: 15px;
	background-position: center;
	}
	.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-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{ background: #25940f;}
	.social-icons .social-website a{ background: #285fb4;}
	.social-icons .line-oa img{ max-width: 81%; height: auto; }
	
	footer .social-icons.social-icons-rounded li a:not(:hover){
	background: #f4f4f4;
	color: #535353 !important;
	}
	footer .social-icons li.social-facebook a i{background-color:#227df5!important;color: #fff; }
	footer .social-icons li.social-youtube a i{background-color:#ff0000!important;color: #fff; }
	footer .social-icons li.social-line a i{background-color:#00c300 !important;color: #fff; }
	
	body .body-inner{
	background: url(../images/bg-ab.jpg) no-repeat;
	background-size: 100%;
	background-position: center 38%;
	}
	
	/*footer*/
	#footer a{
	font-weight: 600;
	font-size: 15px;
	color: #585858;
	}
	#footer a:hover{ color:var(--secondary-color); }
	footer h4{
	font-weight: 600;
	color: var(--primary-color);
	}
	footer .col-fll{ margin-top:40px; }
	footer .ft-btm-right{ text-align: right;}
	footer .ft-btm-left p{ font-size:12px; }
	
	footer .ft-btm-left,
	footer .ft-btm-right{
		line-height: 40px;
	}
	
	footer .ft-btm{ margin-top: 40px;}
	footer .ft-btm-left p,
	footer .ft-btm-right a{
	margin-bottom:0;
	display: block;
	clear: both;
	font-size: 14px;
	line-height: 40px !important;
	}
	footer .ft-btm-right a{
		display: inline-block;
		margin: 0 5px;
	}
	footer .ft-social{ margin-bottom: 40px;}
	.social-icons{
	display: inline-block;
	float: left;
	clear: both;
	line-height: initial;
	}
	footer .ft-btm-left ul,
	footer .ft-btm-right .social-icons ul{
	margin-bottom: 20px;
	display: inline-block;
	}
	/*.footer*/
	
	/* subpage */
	.company-info .list-info li{
	line-height: 1.5;
	position: relative;
	padding-left: 70px;
	margin-bottom: 10px;
	}
	.company-info .list-info li strong{
	display: inline-block;
	min-width: 73px;
	position: absolute;
	left: 0;
	}
	
	/* branch reference — directory-style cards (factory / location) */
	.branch-ref__heading{
	font-size: 20px;
	font-weight: 700;
	margin: 0 0 8px;
	color: #222;
	}
	.branch-ref__lead{
	font-size: 15px;
	color: #555;
	margin: 0 0 20px;
	line-height: 1.5;
	}
	.branch-ref__grid{
	display: grid;
	grid-template-columns: 1fr;
	gap: 14px;
	}
	@media (min-width: 768px){
	.branch-ref__grid{
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	}
	}
	.branch-ref-card{
	display: flex;
	align-items: center;
	gap: 14px;
	padding: 14px 16px;
	border: 1px solid #e4e4e4;
	border-radius: 12px;
	background: #fff;
	text-decoration: none;
	color: inherit;
	transition: background 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
	}
	.branch-ref-card:hover,
	.branch-ref-card:focus{
	border-color: #d0d0d0;
	box-shadow: 0 4px 14px rgba(0,0,0,0.06);
	outline: none;
	}
	/* .branch-ref-card--active{
		background: rgba(0, 149, 173, 0.1);
		border-color: #dbe3e9;
	} */
	.branch-ref-card__thumb{
	flex: 0 0 auto;
	width: 104px;
	height: 78px;
	border-radius: 8px;
	overflow: hidden;
	background: #eee;
	}
	.branch-ref-card__thumb img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.35s ease;
	}
	.branch-ref-card:hover .branch-ref-card__thumb img,
	.branch-ref-card:focus .branch-ref-card__thumb img{
	transform: scale(1.05);
	}
	.branch-ref-card__body{
	flex: 1 1 auto;
	min-width: 0;
	display: flex;
	flex-direction: column;
	gap: 6px;
	}
	.branch-ref-card__tag{
	display: inline-flex;
	align-items: center;
	gap: 6px;
	align-self: flex-start;
	padding: 4px 10px;
	border-radius: 999px;
	font-size: 12px;
	font-weight: 600;
	color: #666;
	background: #ececec;
	}
	.branch-ref-card--active .branch-ref-card__tag{
		background: #d7e8f5;
		color: var(--primary-color);
	}
	.branch-ref-card__tag i{
	font-size: 11px;
	opacity: 0.85;
	}
	.branch-ref-card__title{
	font-size: 16px;
	font-weight: 700;
	line-height: 1.35;
	color: var(--primary-color);
	}
	.branch-ref-card--active .branch-ref-card__title{
	text-decoration: underline;
	text-underline-offset: 3px;
	}
	.branch-ref-card__meta{
	font-size: 13px;
	color: #666;
	line-height: 1.4;
	}
	.branch-ref-card__arrow{
	flex: 0 0 auto;
	font-size: 18px;
	font-weight: 300;
	color: #999;
	line-height: 1;
	}
	.branch-ref-card:hover .branch-ref-card__arrow,
	.branch-ref-card:focus .branch-ref-card__arrow{
	color: #333;
	}
	
	/* category section — hero + intro row + image category cards (reference layout) */
	.sect-category{
	
		background: #C9D9E8;
		background: linear-gradient(to top, rgba(201, 217, 232, 1), rgba(255, 255, 255, 1) 54.62%);
	overflow: hidden;
	padding-top: 0;
	
	background: #fff;
	background: url(../images/bg-ab.jpg) no-repeat;
		background-size: 100%;
		background-position: bottom center;
	
	}
	.cat-hero{
	position: relative;
	width: 100%;
	max-height: min(52vw, 420px);
	min-height: 180px;
	overflow: hidden;
	background: #e8e8e8;
	}
	.cat-hero__img{
	width: 100%;
	height: 100%;
	min-height: 180px;
	object-fit: cover;
	object-position: center;
	display: block;
	}
	.cat-intro{
			background: #fff;
		position: relative;
		width: calc(50% + 555px);
		top: -200px;
		margin-bottom: -180px;
		display: inline-block;
	}
	.cat-intro .inner{
		max-width: 1140px;
		float: right;
	}
	.cat-intro-inner{
		display: flex;
		flex-wrap: wrap;
		align-items: flex-end;
		gap: 20px 28px;
		padding: 80px;
		padding-left: 30px;
	}
	.cat-intro-head{
	flex: 1 1 220px;
	max-width: 440px;
	}
	.cat-kicker{
	font-size: 13px;
	letter-spacing: 0.04em;
	color: #777;
	margin: 0 0 10px;
	font-weight: 600;
	}
	.cat-title{
	font-size: clamp(22px, 2.6vw, 32px);
	font-weight: 800;
	line-height: 1.35;
	color: #111;
	margin: 0;
	padding-bottom: 14px;
	position: relative;
	letter-spacing: -0.02em;
	}
	.cat-title::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 52px;
	height: 3px;
	background: var(--secondary-color);
	border-radius: 2px;
	}
	.cat-intro-copy{
	flex: 2 1 260px;
	font-size: 15px;
	line-height: 1.75;
	color: #444;
	}
	.cat-intro-copy p{
	margin: 0;
	}
	
	.cat-cards .container-fluid{
	padding: 0;
	}
	.cat-cards-grid{
	display: grid;
	grid-template-columns: 1fr;
	gap: 12px;
	}
	@media (min-width: 576px){
	.cat-cards-grid{
	grid-template-columns: 1fr 1fr;
	}
	}
	@media (min-width: 992px){
	.cat-cards-grid{
	grid-template-columns: repeat(3, 1fr);
	gap: 14px;
	}
	}
	.cat-card{
	position: relative;
	display: block;
	min-height: 220px;
	border-radius: 14px;
	overflow: hidden;
	text-decoration: none;
	color: #fff !important;
	box-shadow: 0 4px 18px rgba(0,0,0,0.08);
	transition: transform 0.25s ease, box-shadow 0.25s ease;
	}
	@media (min-width: 992px){
	.cat-card{
	min-height: 260px;
	}
	}
	.cat-card:hover,
	.cat-card:focus{
	transform: translateY(-3px);
	box-shadow: 0 10px 28px rgba(0,0,0,0.14);
	text-decoration: none;
	color: #fff !important;
	outline: none;
	}
	.cat-card__media{
	position: absolute;
	inset: 0;
	background-image: var(--cat-card-bg);
	background-size: cover;
	background-position: center;
	transition: transform 0.45s ease;
	}
	.cat-card:hover .cat-card__media,
	.cat-card:focus .cat-card__media{
	transform: scale(1.05);
	}
	.cat-card__shade{
	position: absolute;
	inset: 0;
	pointer-events: none;
	background: linear-gradient(to top, rgba(0,0,0,0.72) 0%, rgba(0,0,0,0.25) 45%, rgba(0,0,0,0.05) 100%);
	}
	.cat-card__title{
	position: absolute;
	left: 18px;
	right: 56px;
	bottom: 18px;
	z-index: 1;
	font-size: 18px;
	font-weight: 600;
	line-height: 1.35;
	text-shadow: 0 1px 3px rgba(0,0,0,0.35);
	}
	.cat-card__go{
	position: absolute;
	right: 14px;
	bottom: 14px;
	z-index: 2;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #1a8cff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 14px;
	color: #fff;
	box-shadow: 0 2px 8px rgba(0,0,0,0.2);
	transition: background 0.2s ease, transform 0.2s ease;
	}
	.cat-card:hover .cat-card__go,
	.cat-card:focus .cat-card__go{
	background: var(--gradient);
	transform: scale(1.06);
	}
	
	/* article slide — section title + counter / arrows + Flickity cards (reference layout) */
	.sect-article{
	background: #fff;
	background: url(../images/bg-white-abscract.jpg) no-repeat;
		background-size: 100%;
		background-position: bottom center;
	}
	.article-slide-head{
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: 20px 24px;
	margin-bottom: 36px;
	}
	.article-slide-title{
	font-size: clamp(22px, 2.4vw, 30px);
	font-weight: 800;
	color: #111;
	margin: 0;
	padding-bottom: 14px;
	position: relative;
	letter-spacing: -0.02em;
	}
	.article-slide-title::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 48px;
	height: 3px;
	background: #d9232e;
	border-radius: 2px;
	}
	.article-slide-nav{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 10px 12px;
	}
	.article-slide-count{
	font-size: 14px;
	color: #888;
	font-weight: 600;
	letter-spacing: 0.02em;
	margin-right: 4px;
	}
	.article-slide-arrow{
	width: 44px;
	height: 44px;
	padding: 0;
	border: 1px solid #c8c8c8;
	border-radius: 50%;
	background: #fff;
	color: #333;
	font-size: 16px;
	line-height: 1;
	cursor: pointer;
	transition: border-color 0.2s ease, background 0.2s ease, color 0.2s ease;
	}
	.article-slide-arrow:hover,
	.article-slide-arrow:focus{
	border-color: #999;
	background: #f7f7f7;
	outline: none;
	}
	.article-slide-carousel-outer{
	padding-left: 15px;
	padding-right: 0;
	}
	@media (min-width: 1200px){
	.article-slide-carousel-outer{
	padding-left: calc((100vw - 1140px) / 2 + 15px);
	}
	}
	.article-slide-carousel{
	margin-bottom: 0;
	}
	.article-slide-carousel .article-slide-card{
	height: 100%;
	}
	.article-slide-card__link{
	display: block;
	text-decoration: none;
	color: inherit;
	height: 100%;
	transition: opacity 0.2s ease;
	}
	.article-slide-card__link:hover,
	.article-slide-card__link:focus{
	text-decoration: none;
	color: inherit;
	opacity: 0.92;
	outline: none;
	}
	.article-slide-card__link:hover .article-slide-card__title,
	.article-slide-card__link:focus .article-slide-card__title{
	text-decoration: underline;
	text-underline-offset: 3px;
	}
	.article-slide-card__img{
	border-radius: 10px;
	overflow: hidden;
	background: #eee;
	aspect-ratio: 4 / 3;
	}
	.article-slide-card__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	}
	.article-slide-card__body{
	padding: 14px 4px 0 2px;
	}
	.article-slide-card__meta{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	margin-bottom: 10px;
	}
	.article-slide-card__date{
	font-size: 13px;
	color: #999;
	font-weight: 500;
	}
	.article-slide-card__tag{
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: 0.02em;
	color: #fff;
	background: #6eb3f7;
	line-height: 1.4;
	}
	.article-slide-card__title{
	font-size: 16px;
	font-weight: 800;
	line-height: 1.45;
	color: #111;
	margin: 0 0 10px;
	}
	.article-slide-card__loc{
	font-size: 13px;
	color: #777;
	margin: 0;
	display: flex;
	align-items: center;
	gap: 6px;
	}
	.article-slide-card__loc i{
	font-size: 12px;
	color: #aaa;
	}
	
	/* branch all */
	.branch-item .branch-info{
	padding: 0 15px;
	}
	.branch-item .branch-img{
	position: relative;
	max-height: 150px;
	overflow: hidden;
	}
	.branch-item.oversea .branch-img{
	max-height: inherit;
	}
	.branch-item .branch-info h4{
	font-size: 17px;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
	display: -webkit-box;
	}
	.branch-item .branch-img img{ transition: all 0.3s ease-in-out;}
	.branch-item .branch-img:hover img{ transform: scale(1.1); }
	
	/* article page */
	.article-info{ padding: 10px 20px;}
	.article-card .article-title{
	font-size: 22px;
	text-overflow: ellipsis;
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	overflow: hidden;
	display: -webkit-box;
	}
	.article-card .article-description{
	text-overflow: ellipsis;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	display: -webkit-box;
	}
	.course-time{
	display: flex;
	justify-content: space-between;
	padding: 7px 0;
	}
	.course-time p{ margin-bottom: 0;}
	
	/* footer redesign */
	#footer{
	background: #26292f;
	}
	#footer .footer-viewer-bar{
	background: #f2f2f2;
	border-top: 1px solid #d7d7d7;
	border-bottom: 1px solid #d7d7d7;
	padding: 16px 0;
	}
	#footer .viewer-count-wrap{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	flex-wrap: wrap;
	}
	#footer .viewer-label{
	font-size: 20px;
	font-weight: 700;
	color: #222;
	}
	#footer .viewer-digits{
	display: inline-flex;
	gap: 4px;
	}
	#footer .viewer-digits span{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 26px;
	height: 26px;
	padding: 0 4px;
	border-radius: 2px;
	background: #111;
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1;
	}
	#footer .footer-main{
		padding: 60px 0 42px;
		background: #d9d9d9;
		background: linear-gradient(0deg, rgba(217, 217, 217, 1) 0%, rgba(239, 239, 239, 1) 100%);
		border-top: 2px solid #d5d5d5;
	}
	#footer .footer-main h4{
		color: #242424;
	font-size: 20px;
	margin-bottom: 16px;
	}
	#footer .footer-menu{
	list-style: disc;
	padding-left: 18px;
	margin: 0;
	}
	#footer .footer-menu li{
	margin-bottom: 8px;
	line-height: 1.4;
	}
	#footer .footer-menu li::marker{
	color: #3d3d3d;
	}
	#footer .footer-menu a{
	color: #f0f0f0;
	font-size: 15px;
	font-weight: 500;
	}
	#footer .footer-menu a:hover{
	color: var(--secondary-color);
	text-decoration: underline;
	}
	
	#footer .footer-contact-box .contact-item{
	display: flex;
	gap: 12px;
	align-items: flex-start;
	}
	#footer .footer-contact-box .contact-item + .contact-item{
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid rgba(230, 230, 230, 0.24);
	}
	#footer .footer-contact-box img{
	width: 56px;
	height: 56px;
	object-fit: cover;
	border-radius: 50%;
	border: 1px solid #ddd;
	}
	#footer .footer-contact-box h5{
	font-size: 16px;
	line-height: 1.3;
	margin: 0 0 4px;
	}
	#footer .footer-contact-box p{
		font-size: 15px;
		line-height: 1.4;
		margin-bottom: 8px;
	}
	
	#footer,
	#footer p,
	#footer a:not(.btn):not(:hover){
		color: #3d3d3d;
	}
	
	/* footer h5{ color: #fff;} */
	footer .footer-qr{ margin-top: 40px;}
	footer .footer-qr-item{
	display: inline-block;
	float: left;
	text-align: center;
	}
	footer .footer-qr-item + .footer-qr-item{ margin-left: 20px;}
	footer .footer-qr-item img{ width: 140px; margin-bottom: 5px;}
	
	@media (max-width: 991px){
	#footer .footer-main{
	padding: 28px 0 34px;
	}
	#footer .footer-main [class*="col-"]{
	margin-bottom: 20px;
	}
	#footer .viewer-label{
	font-size: 17px;
	}
	}
	
	/* product search (subpage) */
	.product-search{
	font-family: "Noto Sans Thai", "Outfit", sans-serif;
	}
	.product-search__inner{
	background: linear-gradient(145deg, #f6f8fb 0%, #eef2f7 100%);
	border: 1px solid rgba(15, 23, 42, 0.06);
	border-radius: 16px;
	padding: 22px 24px 24px;
	box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04), 0 12px 32px -8px rgba(15, 23, 42, 0.08);
	}
	.product-search__label{
	margin: 0 0 14px;
	font-size: 15px;
	font-weight: 600;
	color: #0f172a;
	letter-spacing: 0.01em;
	}
	.product-search__label-en{
	font-weight: 500;
	font-size: 13px;
	color: #64748b;
	margin-left: 6px;
	}
	.product-search__form{
	margin: 0;
	}
	.product-search__field{
	display: flex;
	align-items: stretch;
	position: relative;
	background: #fff;
	border-radius: 12px;
	border: 1px solid #e2e8f0;
	box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04);
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
	}
	.product-search__field:focus-within{
	border-color: #94a3b8;
	box-shadow: inset 0 1px 2px rgba(15, 23, 42, 0.04), 0 0 0 3px rgba(59, 130, 246, 0.15);
	}
	.product-search__icon{
	position: absolute;
	left: 16px;
	top: 50%;
	transform: translateY(-50%);
	color: #94a3b8;
	font-size: 15px;
	pointer-events: none;
	}
	.product-search__input{
	flex: 1 1 auto;
	min-width: 0;
	border: 0;
	background: transparent;
	padding: 14px 120px 14px 44px;
	font-size: 15px;
	color: #0f172a;
	border-radius: 12px 0 0 12px;
	outline: none;
	}
	.product-search__input::placeholder{
	color: #94a3b8;
	}
	.product-search__submit{
	flex: 0 0 auto;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0 20px;
	border: 0;
	border-radius: 0 11px 11px 0;
	background: #0f172a;
	color: #fff;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.2s ease, transform 0.15s ease;
	}
	.product-search__submit:hover{
	background: #1e293b;
	}
	.product-search__submit:active{
	transform: scale(0.98);
	}
	.product-search__submit .fa-arrow-right{
	font-size: 12px;
	opacity: 0.9;
	}
	@media (max-width: 575px){
	.product-search__inner{
	padding: 18px 16px 16px;
	}
	.product-search__field{
	flex-wrap: wrap;
	border-radius: 12px;
	}
	.product-search__input{
	width: 100%;
	padding: 14px 16px 14px 42px;
	border-radius: 12px 12px 0 0;
	}
	.product-search__submit{
	width: 100%;
	border-radius: 0 0 11px 11px;
	padding: 12px 16px;
	}
	}
	
	
	#footer .footer-main{
		background: #2a2d34;
	}
	#footer .footer-main h4{ color: #fff;}
	#footer, #footer p, #footer a:not(.btn):not(:hover), #footer .footer-contact-box h5,
	#footer .footer-menu li::marker{
		color: #ddd;
	}
	/* shared inner pages */
	.sect-page-intro{
	padding: 56px 0 20px;
	background: #fff;
	}
	.sect-page-content{
	padding: 10px 0 72px;
	background: #fff;
	}
	.page-kicker{
	font-size: 13px;
	font-weight: 700;
	color: #777;
	letter-spacing: 0.04em;
	margin: 0 0 8px;
	}
	.page-section-title{
	font-size: clamp(24px, 2.8vw, 34px);
	font-weight: 800;
	color: #111;
	margin: 0 0 12px;
	position: relative;
	padding-bottom: 14px;
	}
	.page-section-title::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 48px;
	height: 3px;
	background: #d9232e;
	border-radius: 2px;
	}
	.page-section-lead{
	font-size: 15px;
	line-height: 1.75;
	color: #555;
	margin: 0;
	max-width: 820px;
	}
	
	/* product category cards */
	.product-cat-grid{
	display: grid;
	grid-template-columns: 1fr;
	gap: 16px;
	}
	@media (min-width: 768px){
	.product-cat-grid{ grid-template-columns: 1fr 1fr; }
	}
	@media (min-width: 992px){
	.product-cat-grid{ grid-template-columns: repeat(3, 1fr); }
	}
	.product-cat-card{
	position: relative;
	display: block;
	min-height: 240px;
	border-radius: 14px;
	overflow: hidden;
	text-decoration: none;
	color: #fff !important;
	box-shadow: 0 4px 18px rgba(0,0,0,0.08);
	}
	.product-cat-card__media{
	position: absolute;
	inset: 0;
	background-image: var(--cat-card-bg);
	background-size: cover;
	background-position: center;
	transition: transform 0.45s ease;
	}
	.product-cat-card:hover .product-cat-card__media{
	transform: scale(1.05);
	}
	.product-cat-card__shade{
	position: absolute;
	inset: 0;
	background: linear-gradient(to top, rgba(0,0,0,0.78) 0%, rgba(0,0,0,0.25) 55%, rgba(0,0,0,0.08) 100%);
	}
	.product-cat-card__body{
	position: absolute;
	left: 18px;
	right: 56px;
	bottom: 18px;
	z-index: 1;
	}
	.product-cat-card__title{
	display: block;
	font-size: 18px;
	font-weight: 800;
	margin-bottom: 6px;
	}
	.product-cat-card__summary{
	display: block;
	font-size: 13px;
	line-height: 1.5;
	opacity: 0.92;
	}
	.product-cat-card__go{
	position: absolute;
	right: 14px;
	bottom: 14px;
	z-index: 2;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background: #1a8cff;
	display: flex;
	align-items: center;
	justify-content: center;
	}
	
	/* product cards */
	.product-grid{
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
	}
	@media (min-width: 768px){
	.product-grid{ grid-template-columns: 1fr 1fr; }
	}
	@media (min-width: 992px){
	.product-grid{ grid-template-columns: repeat(3, 1fr); }
	}
	.product-card{
	display: flex;
	flex-direction: column;
	border: 1px solid #ebebeb;
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	text-decoration: none;
	color: inherit;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
	}
	.product-card:hover{
	box-shadow: 0 10px 24px rgba(0,0,0,0.08);
	transform: translateY(-2px);
	text-decoration: none;
	color: inherit;
	}
	.product-card__img{
	display: block;
	aspect-ratio: 4 / 3;
	overflow: hidden;
	background: #eee;
	}
	.product-card__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	}
	.product-card__body{
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px 16px 18px;
	flex: 1;
	}
	.product-card__tag{
	align-self: flex-start;
	font-size: 11px;
	font-weight: 700;
	padding: 3px 10px;
	border-radius: 999px;
	background: #ececec;
	color: #555;
	}
	.product-card__title{
	font-size: 17px;
	font-weight: 800;
	margin: 0;
	line-height: 1.35;
	color: #111;
	}
	.product-card__summary{
	font-size: 14px;
	line-height: 1.55;
	color: #555;
	margin: 0;
	flex: 1;
	}
	.product-card__more{
	font-size: 13px;
	font-weight: 700;
	color: #1e3a5f;
	}
	
	/* product detail */
	.sect-product-detail{
	padding: 56px 0 80px;
	background: #fff;
	}
	.product-detail__media{
	border-radius: 14px;
	overflow: hidden;
	background: #eee;
	margin-bottom: 24px;
	}
	.product-detail__media img{
	width: 100%;
	height: auto;
	display: block;
	}
	.product-detail__name{
	font-size: clamp(24px, 3vw, 34px);
	font-weight: 800;
	margin: 0 0 12px;
	color: #111;
	}
	.product-detail__summary{
	font-size: 16px;
	font-weight: 600;
	color: #333;
	margin-bottom: 14px;
	}
	.product-detail__desc{
	font-size: 15px;
	line-height: 1.8;
	color: #444;
	margin-bottom: 20px;
	}
	.product-detail__features-title{
	font-size: 16px;
	font-weight: 800;
	margin: 0 0 10px;
	}
	.product-detail__features{
	padding-left: 18px;
	margin: 0 0 24px;
	}
	.product-detail__features li{
	margin-bottom: 8px;
	line-height: 1.25;
	font-size: 15px;
	}
	.product-detail__actions{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	}
	.btn-outline{
	background: transparent !important;
	border: 1px solid #ccc;
	color: #222 !important;
	}
	.product-detail__moredetail p{ font-size: 16px;}
	ul.list-col3 li{
		width: calc(100%/3);
		display: inline-block;
		float: left;
		margin-bottom: 8px;
		padding-right: 20px;
	}
	ul.list-col3 li:nth-child(3n){ padding-right: 0;}
	ul.list-col3 li:nth-child(3n+1){ clear: left;}
	.text-color{ color: var(--primary-color);}
	.clear{ clear: both;}
	
	/* news */
	.news-grid{
	display: grid;
	grid-template-columns: 1fr;
	gap: 18px;
	}
	@media (min-width: 768px){
	.news-grid{ grid-template-columns: 1fr 1fr; }
	}
	@media (min-width: 992px){
	.news-grid{ grid-template-columns: repeat(3, 1fr); }
	}
	.news-card{
	display: flex;
	flex-direction: column;
	border: 1px solid #ebebeb;
	border-radius: 14px;
	overflow: hidden;
	background: #fff;
	text-decoration: none;
	color: inherit;
	transition: box-shadow 0.2s ease, transform 0.2s ease;
	}
	.news-card:hover{
	box-shadow: 0 10px 24px rgba(0,0,0,0.08);
	transform: translateY(-2px);
	text-decoration: none;
	color: inherit;
	}
	.news-card__img{
	display: block;
	aspect-ratio: 16 / 10;
	overflow: hidden;
	background: #eee;
	}
	.news-card__img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	}
	.news-card__body{
	padding: 16px;
	display: flex;
	flex-direction: column;
	gap: 8px;
	}
	.news-card__meta{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 8px 12px;
	}
	.news-card__date{
	font-size: 13px;
	color: #999;
	}
	.news-card__tag{
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	background: #6eb3f7;
	}
	.news-card__title{
	font-size: 16px;
	font-weight: 800;
	line-height: 1.45;
	margin: 0;
	color: #111;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	}
	.news-card__excerpt{
	font-size: 14px;
	line-height: 1.55;
	color: #555;
	margin: 0;
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
	}
	
	.sect-news-detail{
	padding: 56px 0 80px;
	background: #fff;
	}
	.news-detail{
	max-width: 860px;
	margin: 0 auto;
	}
	.news-detail__meta{
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin-bottom: 14px;
	}
	.news-detail__date{
	font-size: 14px;
	color: #888;
	}
	.news-detail__tag{
	display: inline-block;
	padding: 3px 10px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	color: #fff;
	background: #6eb3f7;
	}
	.news-detail__title{
	font-size: clamp(24px, 3vw, 36px);
	font-weight: 800;
	line-height: 1.35;
	margin: 0 0 22px;
	color: #111;
	}
	.news-detail__media{
	border-radius: 14px;
	overflow: hidden;
	margin-bottom: 24px;
	background: #eee;
	}
	.news-detail__media img{
	width: 100%;
	height: auto;
	display: block;
	}
	.news-detail__content p{
	font-size: 16px;
	line-height: 1.85;
	color: #333;
	margin-bottom: 16px;
	}
	
	/* contact */
	.sect-contact{
	padding: 56px 0 80px;
	background: #fff;
	}
	.contact-top{
	margin-bottom: 48px;
	}
	.contact-info-list{
	list-style: none;
	padding: 0;
	margin: 0 0 20px;
	}
	.contact-info-list li{
	display: grid;
	grid-template-columns: 90px 1fr;
	gap: 10px;
	padding: 12px 0;
	border-top: 1px solid #eee;
	font-size: 14px;
	line-height: 1.55;
	}
	.contact-info-list li:last-child{
	border-bottom: 1px solid #eee;
	}
	.contact-info-list strong{ color: #222; }
	.contact-info-list a{ color: #1e3a5f; }
	.contact-map{
	border-radius: 12px;
	overflow: hidden;
	border: 1px solid #e5e5e5;
	}
	.contact-map iframe{
	display: block;
	width: 100%;
	height: 260px;
	border: 0;
	}
	.contact-factory{
	padding-top: 28px;
	border-top: 1px solid #eee;
	}
	.contact-form{
	background: #f7f7f7;
	border-radius: 14px;
	padding: 24px;
	}
	.contact-form__row{
	margin-bottom: 16px;
	}
	.contact-form__row label{
	display: block;
	font-size: 14px;
	font-weight: 700;
	margin-bottom: 6px;
	color: #222;
	}
	.contact-form__row label span{
	color: #d9232e;
	}
	.contact-form__row input,
	.contact-form__row select,
	.contact-form__row textarea{
	width: 100%;
	border: 1px solid #ddd;
	border-radius: 8px;
	padding: 11px 12px;
	font-size: 14px;
	background: #fff;
	}
	.contact-form__row textarea{ resize: vertical; }
	.contact-form__grid{
	display: grid;
	grid-template-columns: 1fr;
	gap: 0 14px;
	}
	@media (min-width: 768px){
	.contact-form__grid{ grid-template-columns: 1fr 1fr; }
	}
	.contact-form__submit{
	margin-top: 4px;
	}
	.contact-form__success{
	margin: 14px 0 0;
	padding: 12px 14px;
	border-radius: 8px;
	background: #e8f6ee;
	color: #146c43;
	font-size: 14px;
	}
	
	/* privacy */
	.sect-privacy{
	padding: 56px 0 80px;
	background: #fff;
	}
	.privacy-doc{
	max-width: 860px;
	margin: 0 auto;
	}
	.privacy-doc__title{
	font-size: clamp(26px, 3vw, 36px);
	font-weight: 800;
	margin: 0 0 8px;
	}
	.privacy-doc__updated{
	font-size: 14px;
	color: #777;
	margin-bottom: 28px;
	}
	.privacy-doc__section{
	margin-bottom: 24px;
	padding: 0;
	}
	.privacy-doc__section h2{
	font-size: 18px;
	font-weight: 800;
	margin: 0 0 10px;
	}
	.privacy-doc__section p{
	font-size: 15px;
	line-height: 1.8;
	color: #444;
	margin-bottom: 10px;
	}
	
	/* products all page — category sections */
	.product-jump{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-top: 22px;
	}
	.product-jump__item{
	display: inline-flex;
	align-items: center;
	padding: 8px 12px;
	border-radius: 999px;
	border: 1px solid #ddd;
	background: #fff;
	color: #333;
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	}
	.product-jump__item:hover{
	border-color: #1e3a5f;
	color: #1e3a5f;
	text-decoration: none;
	}
	.sect-products-all{
	padding-top: 0;
	}
	.product-sections{
	display: flex;
	flex-direction: column;
	gap: 48px;
	}
	.product-section{
	scroll-margin-top: 110px;
	padding-bottom: 8px;
	border-bottom: 1px solid #eee;
	}
	.product-section:last-child{
	border-bottom: 0;
	}
	.product-section__head{
	margin-bottom: 20px;
	max-width: 820px;
	}
	.product-section__kicker{
	font-size: 12px;
	font-weight: 700;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: #888;
	margin: 0 0 6px;
	}
	.product-section__title{
	font-size: clamp(22px, 2.6vw, 30px);
	font-weight: 800;
	color: #111;
	margin: 0 0 10px;
	position: relative;
	padding-bottom: 12px;
	}
	.product-section__title::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 44px;
	height: 3px;
	background: #d9232e;
	border-radius: 2px;
	}
	.product-section__lead{
	font-size: 15px;
	line-height: 1.7;
	color: #555;
	margin: 0;
	}
	