@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+Thai:wght@300;400;600&display=swap');

body {
	font-family: 'Noto Sans Thai', sans-serif;
	font-weight: 400;
	font-size: 16px;
	color: #595757;
	line-height: 1.8;
	letter-spacing: 0.05px;
	background-image: url('../images/bg.jpg');
}

article {
	background: url('../images/bg-curve.png') no-repeat bottom right;
	background-size: 100%;
	min-height: 500px;
}

strong {
	font-weight: 600;
}

/* Link */
a {
	color: #ea7704;
	text-decoration: none;
}
a:hover {
	color: #595757;
}

/* Footer */
footer {
	color: #fff;
	font-size: 0.8rem;
	text-align: center;
	background-color: #595757;
	padding: 1rem 0;
	line-height: 1.4;
}
footer a {
	color: #fff;
	font-weight: 600;
}
footer a:hover {
	color: #ea7704;
}

/* Heading */
.heading {
	text-align: center;
	margin-bottom: 1.5rem;
}
.heading span {
	font-weight: 600;
	color: #ea7704;
}
h1 {
	font-size: 2.4rem;
}
h2 {
	font-size: 2.2rem;
}
h3 {
	font-size: 2rem;
}
h4 {
	font-size: 1.8rem;
}
h5 {
	font-size: 1.4rem;
}
h6 {
	font-size: 1.2rem;
}

/* Form */
input:focus, 
textarea:focus,
select:focus {
	border-color: rgba(234, 119, 4, 0.4) !important;
	box-shadow: 0 1px 1px rgba(234, 119, 4, 0.1) inset, 0 0 4px rgba(234, 119, 4, 0.2) !important;
	outline: 0 none !important;
} 
.form-control {
	border-radius: 0.69rem;
}
.form-group {
    margin-bottom: 0.5rem;
}
.g-recaptcha > div {
    border-radius: 0.69rem;
    margin: 1rem 0 1.5rem 0;
}

/* Button */
.btn:focus, 
.btn:active:focus, 
.btn.active:focus,
button {
	outline: none !important;
	box-shadow: none !important;
}
.btn {
	text-transform: uppercase;
	border-radius: 0.69rem;
	padding: 0.5rem 1rem;
	-webkit-transition: transform 0.36s;
  	transition: transform 0.36s;
}
.btn-sm {
	font-size: 0.8rem;
	padding: 0.3rem 0.75rem 0.2rem 0.75rem;
}
.btn-primary {
	background-color: #ea7704;
	border-color: #ea7704;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
	background-color: #595757 !important;
	border-color: #595757 !important;
}
.btn-secondary {
	background-color: #595757;
	border-color: #595757;
}
.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
	background-color: #ea7704 !important;
	border-color: #ea7704 !important;
}

/* Content */
.content img {
	max-width: 100% !important;
}


/* Youtube */
.youtube-wrapper {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	margin-bottom: 20px;
}
.youtube-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Carousel */
.owl-carousel .owl-nav button.owl-next, 
.owl-carousel .owl-nav button.owl-prev {
	position: absolute;
	top: 50%;
	margin-top: -4rem;
	font-size: 3.8rem;
	color: #ea7704;
}
.owl-carousel .owl-nav button.owl-next:hover, 
.owl-carousel .owl-nav button.owl-prev:hover {
	color: #595757;
}
.owl-carousel .owl-nav button.owl-next {
	right: -1.5rem;
}
.owl-carousel .owl-nav button.owl-prev {
	left: -1.75rem;
}
.owl-carousel .owl-dots {
	margin-top: 1rem;
	text-align: center;
}
.owl-carousel .owl-dot {
	border: 1px solid #595757 !important;
	width: 0.75rem;
	height: 0.75rem;
	margin: 0 0.5rem;
	border-radius: 100%;
}
.owl-carousel .owl-dot.active {
	background-color: #595757 !important;
	border-color: #595757 !important;
}

/* Jumbotron */
.jumbotron img {
	width: 140%;
	max-width: 140%;
	margin-left: -20%;
}
.jumbotron-inside {
	background: url('../images/bg-jumbotron.jpg') no-repeat center center;
	padding: 2.8rem 0;
}
.jumbotron-inside .heading {
	color: #fff;
	font-size: 2.8rem;
	font-weight: 300;
	margin-bottom: 0;
}
.jumbotron-inside .heading span {
	color: #ffe144;
}

/* Alert */
.alert {
	border-radius: 0.69rem;
	margin-bottom: 2rem;
}
.alert button {
	display: none;
}
.alert-success {
    color: #fff;
    background-color: #ea7704;
    border-color: #ea7704;
}
.alert-success strong {
	color: #fff;
}
.alert-danger {
    color: #f00;
    background-color: #fae3e5;
    border-color: #f00;
}
.alert-danger strong {
	color: #f00;
}

/* Utilities */
.space {
    padding-top: 3rem;
    padding-bottom: 3rem;
}
.space-top {
    padding-top: 3rem;
}
.space-bottom {
    padding-bottom: 3rem;
}
.space-mini {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}
.space-mini-top {
	padding-top: 1.5rem;
}
.space-mini-bottom {
	padding-bottom: 1.5rem;
}

/* Background */
.bg {
	background: url('../images/bg-about.jpg') top center;
	/* background-size: 100%; */
}
.bg-blue {
	background-color: #045a98;
}
.bg-green {
	background-color: #245d30;
}
.bg-orange {
	background-color: #ea7704;
}
.bg-red {
	background-color: #be2030;
}
.bg-purple {
	background-color: #404192;
}

/* Text */
.text-blue {
	color: #045a98;
}
.text-green {
	color: #245d30;
}
.text-orange {
	color: #ea7704;
}
.text-red {
	color: #be2030;
}
.text-purple {
	color: #404192;
}

/* Box */
.box {
	position: relative;
	border-radius: 0.69rem;
	background-color: #fff;
	box-shadow: 2px 2px 10px #ccc;
	padding: 1rem;
	height: 100%;
	display: block;
}
.box p {
	margin-bottom: 0;
	line-height: 1.4;
	font-size: 0.9rem;
}

/* Detail */
.detail h1,
.detail h2,
.detail h3 {
	line-height: 1;
	margin-bottom: 1rem;
}
.detail h1 {
	color: #ea7704;
	font-size: 2.2rem;
}
.detail h2 {
	font-weight: 600;
	font-size: 1.8rem;
}
.detail h3 {
	font-weight: 600;
	font-size: 1.6rem;
}
.detail p,
.detail ul,
.detail ol {
	line-height: 1.8;
	margin-bottom: 1.25rem;
}
.detail table {
	margin-bottom: 1.25rem;
	width: 100%;
}
.detail table  td {
	background: transparent !important;
	padding: 0.5rem;
	line-height: 1.4;
}
.detail table.table-bordered td {
	border: 1px solid #595757 !important;
}
.detail p:last-child,
.detail ul:last-child,
.detail ol:last-child,
.detail table:last-child {
	margin-bottom: 0;
}

/* Topbar */
.topbar {
	background-color: #ea7704;
	font-size: 0.8rem;
	color: #fff;
}
.topbar a {
	color: #fff;
}
.topbar a:hover {
	color: #ffe144;
}
.topbar form {
	position: relative;
	width: 100%;
	margin-top: 0.25rem;
	margin-bottom: 0.75rem;
}
.topbar .form-control {
	border: 0;	
}
.topbar form button {
	position: absolute;
	right: 0.5rem;
	top: 0.25rem;
	color: #ea7704;
	padding: 0;
	border: 0;
}
.topbar form button:hover,
.topbar form button:focus
.topbar form button:active {
	color: #595757 !important;
}
.topbar form input {
	font-size: 0.8rem;
}
.topbar form input::placeholder { 
	color: #999;
}
.nav-lang {
	margin: 0.5rem 0;
}
.nav-lang a {
	margin-right: 0.25rem;
}
.nav-lang a img {
	margin-right: 0.25rem;
}
.nav-social a {
	display: inline-block;
	padding: 0 0.25rem;
	margin: 0.2rem 0 0.2rem 0.5rem;
	font-size: 1.1rem;
}

/* Navbar */
.navbar {
	background-image: url('../images/bg.jpg');
	box-shadow: 0 3px 5px rgba(60, 60, 60, 0.2);
}
.shrink .navbar-brand img {
	width: 150px;
}
.navbar-brand {
	padding: 0;
}
.navbar-brand img {
	width: 180px;
	margin: 0.25rem 0;
	-webkit-transition: all 0.36s;
  	transition: all 0.36s;
}
.navbar-nav {
	margin-top: 0.5rem;
}
.nav-item .nav-link:hover,
.nav-item.active .nav-link {
	color: #fff;
	background-color: #ea7704;
} 
.nav-item .nav-link {
	font-size: 0.9rem;
	color: #595757;
	line-height: 1.2;
	letter-spacing: 0.5px;
	text-transform: uppercase;
	padding: 0.5rem 1.25rem 0.4rem 1.25rem !important;
	margin: 0.5rem 0.5rem 0 0.5rem;
	border-radius: 0.69rem;
}
.nav-item:last-child .nav-link {
	margin-right: 0;
}
.navbar-toggler {
	border: none;
}

/* Search Bar */
.search-bar {
	margin-bottom: 1rem;
}
.search-bar em {	
	color: #ea7704;
}
.search-bar span {
	float: right;
	font-size: 0.8rem;
}

/* Category List */
.category-list h5 {
	text-transform: uppercase;
	text-align: left;
	margin: 0.5rem 0.5rem 1.25rem 0.5rem;
}
.category-list ul {
	width: 90%;
	margin: 0;
	padding: 0;
	list-style: none;
}
.category-list li {
	border-radius: 0.69rem !important;
	overflow: hidden;
}
.category-list a {
	position: relative;
	display: block;
	color: #595757;
	padding: 0.5rem 1rem;
	border-bottom: 1px dotted #ccc;
}
.category-list li:hover,
.category-list li.active {
	margin-bottom: 1px;
}
.category-list a:hover,
.category-list li.active a {
	background: #ea7704 url('../images/bg-jumbotron.jpg') no-repeat center right;
	background-size: cover;
	font-weight: 600;
	color: #fff;
	border-bottom: 0;
	transition: all 0.36s;
	-webkit-transition: all 0.36s;
}
.category-list a::after {
	position: absolute;
	right: 1.5rem;
	font-family: 'Font Awesome 6 Free';
	font-weight: 900; 
	content: '\f105';
	color: #fff;
	opacity: 0;
	transition: all 0.36s;
	-webkit-transition: all 0.36s;
}
.category-list a:hover::after,
.category-list li.active a::after {
	right: 1rem;
	opacity: 1;
}

/* Quick Contact */
.quick-contact {
	background: url('../images/bg-quick-contact.jpg') no-repeat top right;
	background-size: cover;
	font-size: 0.9rem;
	color: #fff;
}
.quick-contact h5 {
	text-transform: uppercase;
}
.quick-contact h5, 
.quick-contact h6 {
	font-size: 1.2rem;
	font-weight: 600;
	margin-bottom: 0.5rem;
}
.quick-contact p {
	margin-bottom: 0;
	line-height: 1.4;
}
.quick-contact a {
	color: #fff;
}
.quick-contact a:hover {
	color: #595757;
}
.quick-contact i {
	font-size: 1.1rem;
	margin: 0.25rem 0.5rem 0.25rem 0;
	position: relative;
	top: 2px;
}
.quick-contact .social i {
	font-size: 1.3rem;
	margin-right: 1rem;
}


/* Pagination */
.pagination {
	justify-content: center;
	margin: 2rem 0 0 0;
}
.pagination .page-link {
	background-color: transparent;
	border-radius: 0.69rem !important;
	padding: 0.25rem 1rem;
	border: 0;
	color: #595757;
	font-weight: 600;
}
.pagination .page-link:hover {
	color: #ea7704;
}
.pagination .active .page-link {
	color: #fff;
	background-color: #ea7704;
	margin: 0 0.5rem;
}
.pagination .page-link i {
	font-size: 1.4rem;
	position: relative;
	top: 3px;
}
.pagination .page-link:focus, 
.pagination .page-link:active:focus, 
.pagination .active .page-link:focus,
button {
	outline: none !important;
	box-shadow: none !important;
}

/* Home */
.home .about {
	text-align: center;
}
.home .products .box {
	text-align: center;
	min-height: auto;
	padding: 1rem 1rem 2rem 1rem;
}
.home .products .box h3 {
	position: absolute;
	bottom: -1.3rem;
	left: 0;
	margin: 0;
	width: 100%;	
	color: #fff;
	font-weight: 400;
	font-size: 1.2rem;
	text-align: center;
}
.home .products .box h3 span  {
	display: block;
	margin: 0 2.5rem;
	padding: 0.5rem;
	border-radius: 0.69rem;
	background-color: #595757;
}
.home .products .box:hover h3 span {
	background-color: #ea7704;
}

/* Products */
.products .box {
	display: flex;
	flex-direction: column;
	align-content: flex-end;
	text-align: center;
	color: #595757;
	line-height: 1.3;
	min-height: 250px;
	border: 3px solid #fff;
	transition: border 0.36s;
	-webkit-transition: border 0.36s;
}
.products .box:hover {
	border-color: #ea7704;
}
.products .box img {
	margin: auto;
	max-height: 150px;
}
.products .owl-stage {
	padding: 0.5rem 0;
	display: flex;
}
.products .owl-stage .box {
	width: 100%;
	height: 100%;
}

/* Product */
.product .photo {
	margin-bottom: 2rem;
}
.product .photo .box {
	height: auto;
}
.product .photo .expand {
	padding: 1.5rem 1rem;
	text-align: center;
}
.product .photo .expand .owl-stage {
	display: flex;
	align-items: center;
	justify-content: center;
}
.product .photo .expand img {
	margin: auto;
	width: auto;
	max-height: 600px;
}
.product .photo .thumbs {
	margin-top: 1rem;
	margin-left: 0.25rem;
}
.product .photo .thumbs .owl-stage {
	min-width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.product .photo .thumbs .box {
	cursor: pointer;
	width: 100px;
	height: 100px;
	padding: 0.25rem;
	margin-top: 0.25rem;
	margin-bottom: 0.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 2px solid #fff;
	transition: border 0.36s;
	-webkit-transition: border 0.36s;
}
.product .photo .thumbs .box img {
	max-height: 100%;
	max-width: 100%;
	width: auto;
}
.product .photo .thumbs .box:hover {
	border-color: #ea7704;
}


/* Service */
.service .box {
	padding-top: 9rem;
	padding-bottom: 1.5rem;
}
.service .box h4 {
	font-size: 1.2rem;
	font-weight: 600;
}
.service .box-head {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	padding: 1.5rem 1rem 1rem 1rem;
	color: #fff;
	font-size: 6rem;
	font-weight: 300;
	line-height: 0.9;
	text-align: center;
	border-radius: 0.69rem  0.69rem 0 0;
}

/* Gallery */
/* .gallery .box {
	padding: 0.5rem;
}
.gallery .box img {
	border-radius: calc(0.69rem - 0.25rem);
}
.gallery .box strong {
	position: absolute;
	bottom: -1rem;
	left: 0;
	margin: 0;
	width: 100%;	
	color: #fff;
	font-weight: 400;
	line-height: 1.2;
	text-align: center;
}
.gallery .box strong span {
	display: block;
	margin: 0 0.75rem;
	padding: 0.5rem 0.25rem;
	border-radius: 0.69rem;
	background-color: #ea7704;
}
.gallery .box:hover strong span {
	background-color: #595757;
} */
a.gallery {
	display: block;
	overflow: hidden;
	border: 3px solid #fff;
	border-radius: 0.69rem;
	box-shadow: 2px 2px 10px #ccc;
}
a.gallery:hover {
	border-color: #ea7704;
}
a.gallery img {
	-webkit-transition: transform 0.36s;
	transition: transform 0.36s;
}
a.gallery:hover img {
	transform: scale(1.1);
}

/* News */
.news .box {
	padding: 1.25rem;
	border: 3px solid #fff;
}
.news .box:hover {
	border-color: #ea7704;
}
.news .box img {
	margin-bottom: 1rem;
	border-radius: calc(0.69rem - 0.25rem);
}
.news .box strong {
	color: #ea7704;
	font-size: 1.3rem;
	line-height: 1.2;
}
.news .box p {
	line-height: 1.8;
	margin-top: 0.5rem;
	margin-bottom: 1rem;
}

/* About */
.about .quote {
	background: url('../images/bg-quote.jpg') no-repeat bottom right;
	text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
}
.about .quote h2 {
	color: #fff;
	font-weight: 300;
	font-size: 3.2rem;
	line-height: 1;
	margin: 2rem 0 1rem 0;
}
.about .quote h3 {
	color: #ea7704;
	font-weight: 600;
	font-size: 3rem;
	line-height: 1;
	text-transform: uppercase;
	margin-bottom: 7rem;
}

/* Contact */
.contact .gmap {
	margin-bottom: 1rem;
	box-shadow: 2px 2px 10px #ccc;
}
.contact address h4 {
	margin: 0.5rem 0;
	color: #ea7704;
	font-weight: 600;
	text-transform: uppercase;
}
.contact address p {
	margin-bottom: 0.25rem;
}
.contact address a {
	color: #595757;
}
.contact address a:hover {
	color: #ea7704;
}
.contact .social i {
	font-size: 1.4rem;
	margin: 0 1.4rem 0 0.1rem;
}

/* Extra small devices (none) */
@media (min-width: 480px) {
	.nav-lang a {
		margin-right: 1rem;
	}
	.nav-social a {
		margin: 0.2rem 0 0.2rem 1rem;
	}
}

/* Small devices (sm) */
@media (min-width: 576px) {
}

/* Medium devices (md) */
@media (min-width: 768px) {
	.space {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
	.space-top {
		padding-top: 4rem;
	}
	.space-bottom {
		padding-bottom: 4rem;
	}
	.space-mini {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
	.space-mini-top {
		padding-top: 2rem;
	}
	.space-mini-bottom {
		padding-bottom: 2rem;
	}
	.topbar form {
		width: auto;
		margin: 0;
	}
	.topbar form input {
		margin: 0.25rem 0 0.25rem 1rem;
	}
	.topbar form button {
		right: -0.5rem;
		top: 0.5rem;
	}
	.nav-social a {
		margin: 0.25rem 1rem 0.2rem 0;
	}
	.home .products .box h3 span  {
		margin: 0 2rem;
	}
	.about .quote h2 {
		color: #595757;
	}
}

/* Large devices (lg) */
@media (min-width: 992px) {
	.navbar {
		box-shadow: none;
		background: url('../images/bg-navbar.jpg') top center;
		background-size: 100%;
	}
	.navbar-nav,
	.nav-item .nav-link {
		margin-top: 0;
	}
	.nav-item .nav-link {
		padding: 0.5rem 0.75rem 0.4rem 0.75rem !important;
	}
	.jumbotron img {
		width: 100%;
		max-width: 100%;
		margin-left: 0;
	}
	.home .products .box img {
		max-height: 140px;
	}
	.home .products .box h3 {
		font-size: 1.1rem;
	}
	.home .products .box h3 span {
		margin: 0 2rem;
	}
	.about .quote h2 {
		margin: 4rem 0 1rem 0;
	}
}

/* Extra large devices (xl) */
@media (min-width: 1200px) {
	body {
		line-height: 2;
		letter-spacing: 0.25px;
	}
	.heading {
		margin-bottom: 2rem;
	}
	h1 {
		font-size: 3rem;
	}
	h2 {
		font-size: 2.6rem;
	}
	h3 {
		font-size: 2.2rem;
	}
	h4 {
		font-size: 1.6rem;
	}
	h5 {
		font-size: 1.4rem;
	}
	h6 {
		font-size: 1.2rem;
	}
	footer {
		padding: 2rem 0;
		line-height: 1;
	}
	.space {
		padding-top: 6rem;
		padding-bottom: 6rem;
	}
	.space-top {
		padding-top: 6rem;
	}
	.space-bottom {
		padding-bottom: 6rem;
	}
	.space-mini {
		padding-top: 3rem;
		padding-bottom: 3rem;
	}
	.space-mini-top {
		padding-top: 3rem;
	}
	.space-mini-bottom {
		padding-bottom: 3rem;
	}
	.detail h1 {
		font-size: 2.2rem;
		margin-bottom: 1.5rem;
	}
	.topbar form input {
		margin: 0.3rem 0 0.25rem 1rem;
	}
	/* .nav-social a {
		margin: 0.2rem 1rem 0.2rem 0;
	} */
	.navbar-brand img {
		width: 220px;
	}
	.nav-item .nav-link {
		padding: 0.5rem 1.25rem 0.4rem 1.25rem !important;
	}
	.jumbotron-inside {
		padding: 4rem 0;
	}
	.jumbotron-inside .heading {
		font-size: 3.6rem;
	}
	.quick-contact {
		background-size: 100%;
		margin-top: -1px;
	}
	.home .products .box {
		padding: 1rem 0.5rem 2rem 0.5rem;
	}
	.home .products .box img {
		max-height: 100%;
	}
	.news .box img {
		margin-bottom: 0;
		margin-right: 1.75rem;
	}
	.news .box p {
		margin-top: 0.25rem;
	}
}

/* Extra extra large devices (xxl) */
@media (min-width: 1400px) {
	.shrink.navbar {
		box-shadow: 0 3px 5px rgba(60, 60, 60, 0.2);
	}	
	.gallery .box strong span {
		margin: 0 2.5rem;
	}
}

/* Full HD devices  */
@media (min-width: 1900px) {
	.bg,
	.jumbotron-inside,
	.about .quote {
		background-size: 100%;
	}
	.about .quote {
		background-position: bottom right;
	}
}

/* 2K devices */
@media (min-width: 2500px) {
	.home .contact {
		padding-top: 0;
	}
	.home .contact address {
		color: #595757;
	}
	.home .contact a {
		color: #595757;
	}
	.home .contact a:hover {
		color: #fff;
	}
}