@media(max-width: 1659px) {
	.container {
		max-width: 1320px;
	}

	:root {
		--font140: 100px;
		--font80: 64px;
		--font56: 42px;
		--font48: 40px;
		--font32: 24px;
		--font24: 20px;
		--font20: 18px;
		--font18: 16px;
		--font16: 14px;
	}

	.herobanner {
		height: 90vh;
		min-height: 720px;
		max-height: 900px;
	}

	.herobanner .item .img {
		max-width: 480px;
		left: calc(50% - 23%);
		top: calc(50% - 22%);
	}

	.herobanner .item .txt {
		padding-right: 3%;
	}

	.item_services .item .icon {
		width: 35%;
		margin-top: -75px;
	}

	.item_services .item .icon img {
		width: 55%;
	}

	.subscribe .form input {
		width: 320px;
		height: 48px;
	}

	.social a {
		width: 48px;
	}

	.btn {
		--size: 48px;
	}

	.hero-page {
		padding-top: 200px;
		border-radius: 0 0 160px 0;
	}

	.hero-page .txt-title {
		margin-top: 8px;
	}

	.info_contact_inner .item {
		padding: 32px 16px;
	}
}

@media(max-width: 1439px) {
	.container {
		max-width: 1140px;
	}

	:root {
		--font140: 90px;
		--font80: 56px;
		--font56: 40px;
		--font48: 38px;
	}

	.herobanner {
		height: 85vh;
		min-height: 600px;
		max-height: 700px;
	}

	.herobanner:before {
		border-radius: 0 0 80px 0;
	}

	.herobanner .item .img {
		max-width: 400px;
	}

	.herobanner .item .txt {
		padding-left: 14%;
		padding-right: 1%;
	}

	.item_services .item .icon {
		margin-top: -64px;
	}

	.social {
		gap: 8px;
	}

	.social a {
		width: 40px;
	}

	.social a svg {
		width: 24px;
	}

	.btn {
		--size: 40px;
	}

	.subscribe {
		gap: 24px;
	}

	.subscribe .form input {
		width: 250px;
		height: 40px;
	}

	.btn.btn-subscribe {
		padding: 0 32px;
	}

	.recommended {
		padding: 100px 0;
	}

	.item_services .item svg {
		width: 32px;
	}

	.category_inner {
		gap: 8px;
	}

	.category_inner .item {
		padding: 4px;
	}

	.hero-page {
		padding-top: 180px;
		border-radius: 0 0 120px 0;
	}

	.txthead p {
		padding: 0 12%;
	}

	/* .service_content_inner {margin-top: -80px;} */
	.hero-page .txt {
		padding-bottom: 3.5%;
	}

	.pb-9 {
		padding-bottom: 24px !important;
	}

	.pt-9 {
		padding-top: 24px !important;
	}

	.category h2 {
		margin-top: 24px;
		margin-bottom: 24px;
	}

	.items_products {
		margin-bottom: 48px;
	}

	.txtresult {
		margin-top: 24px;
	}

	.product_detail_inner {
		margin-top: 32px;
	}

	.info_contact_inner .item {
		grid-template-columns: 30% 65%;
		padding: 32px 16px;
		gap: 5%;
	}
	.info_contact_inner .item .img {
		padding-left: 5%;
	}

	.contact_inner .form {
		padding: 40px;
	}

}

@media(max-width: 1199px) {
	.container {
		max-width: 1000px;
	}

	:root {
		--font140: 80px;
		--font80: 50px;
		--font56: 38px;
		--font48: 36px;
		--font32: 22px;
		--font24: 18px;
		--font20: 16px;
		--font18: 14px;
		--font16: 12px;
	}

	.herobanner {
		min-height: 550px;
	}

	.herobanner .item .img {
		max-width: 360px;
		left: calc(50% - 21%);
	}

	.herobanner .item .txt {
		padding: 0%;
		flex: 0 0 40%;
		padding-left: 8%;
	}

	.herobanner .item .txtmain {
		padding-top: 0;
		margin-top: -8%;
		flex: 0 0 60%;
	}

	.item_services .item .icon {
		width: 40%;
	}

	.item_services {
		gap: 3%;
	}

	.item_services .item .txt p {
		-webkit-line-clamp: 5;
	}

	.recommended {
		padding: 75px 0;
	}

	.service_content_inner .row .img img {
		border-radius: 24px;
	}

	.service_content_inner .row .txt {
		padding: 1.5% 2%;
	}

	.product_detail_inner {
		margin-top: 16px;
	}

	.product_detail_inner .col .txt {
		padding: 0 2% 0 4%;
	}

	.info_contact_inner .item {
		padding: 24px 12px;
		border-radius: 24px;
	}

	.contact_inner .form {padding: 32px;}
	

}

@media(max-width: 991px) {
	:root {
		--font48: 30px;
	}

	.container {
		max-width: 750px;
	}

	.herobanner {
		height: auto;
		min-height: auto;
		max-height: initial;
	}

	.herobanner:before {
		width: 100%;
		height: 62%;
		border-radius: 0 0 48px 0;
	}

	.herobanner .item {
		flex-direction: column;
		padding-top: 40%;
	}

	.herobanner .item .img {
		position: relative;
		top: 0;
		left: 0;
		margin-top: -32%;
		max-width: 55%;
		align-self: flex-end;
	}

	.herobanner .item .txtmain {
		padding-top: 0;
		flex: 0 0 auto;
		width: 60%;
		align-self: flex-start;
	}

	.herobanner .item .txt {
		padding-left: 0;
		padding-right: 0;
		padding-top: 0;
		margin-top: -12%;
		width: 55%;
		align-self: flex-start;
		flex: 0 0 45%;
	}

	.btn.btn-herobanner {
		margin-top: 24px !important;
	}

	.herobanner .swiper-slide {
		padding-bottom: 4%;
	}

	.txthead p {
		padding: 0 2%;
	}

	.item_services {
		gap: 1.5%;
	}

	.product_highlight .txt {
		padding: 12% 0% 12% 0%;
		margin-left: -8%;
	}

	.product_highlight .img {
		padding-left: 0;
		padding-right: 15%;
		margin-top: -16%;
		margin-left: -8%;
	}

	.pad_section {
		padding: 16% 0;
	}

	.txthead p {
		padding: 0 16%;
	}

	.item_services .item {
		--size: 16px;
	}

	.item_services .item .icon {
		margin-top: -48px;
	}

	.product_highlight {
		margin-top: 5%;
	}

	.items .item .img {
		padding: 8%;
	}

	.items .item .txt {
		padding-bottom: 8px;
	}

	.items .item .txt h2 {
		margin-bottom: 4px;
	}

	.subscribe {
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
	}

	.newletter {
		padding: 5% 0;
	}

	.newletter_inner {
		align-items: flex-end;
	}

	.hero-page {

		padding-top: 140px;
		border-radius: 0 0 80px 0;
	}

	.hero-page .txt {
		padding-bottom: 4%;
	}

	.service_content_inner .row {
		margin-bottom: 32px;
	}

	.service_content_inner .row .img {
		padding: 2.5%;
	}

	.service_content_inner .row .img img {
		border-radius: 16px;
	}

	.category_inner {
		grid-template-columns: repeat(4, 1fr);
	}
	

	.product_detail_inner .col .txt {
		padding-top: 0;
		padding-bottom: 0;
	}

	.product_detail_inner .col {
		align-items: flex-start;
	}

	.map {height: 400px;}

	.contact_inner {
		grid-template-columns: repeat(1,1fr);
	}
	.info_contact {padding-top: 16px; padding-bottom: 60px;}
	.info_contact_inner .item {
		display: flex;
		flex-direction: column;
		text-align: center;
		justify-content: flex-start;
		align-items: center;
		gap:0;
	}
	.info_contact_inner .item .img {
		padding: 0;
		width: 50%;
		margin:0 auto;
	}
	.info_contact_inner .item .txt {
		height: 100%;
		margin-top: 16px;
	}


	.contact_inner {border-radius: 24px;}

}

@media(max-width: 767px) {
	:root {
		--font56: 30px;
		--font48: 26px;
		--font24: 16px;
	}

	.container {
		max-width: 540px;
	}

	.showpc {
		display: none;
	}

	.showmb {
		display: block;
	}


	.item_services {
		grid-template-columns: repeat(1, 1fr);
	}

	.items {
		grid-template-columns: repeat(2, 1fr);
		margin-top: 24px !important;
	}

	.newletter {
		padding: 10% 0;
	}

	.newletter_inner {
		flex-direction: column;
		align-items: center;
	}

	.newletter_inner .col {
		width: 100%;
	}

	.subscribe {
		align-items: center;
		justify-content: center;
	}

	.subscribe .form {
		width: 100%;
		position: relative;
	}

	.subscribe .form input {
		width: 100%;
		margin-right: 0;
		margin-bottom: 12px;
		height: 48px;
		padding-right: 100px;
	}

	.btn.btn-subscribe {
		padding: 0 24px;
	}

	.subscribe .form button {
		position: absolute;
		right: 4px;
		top: 4px;
	}

	.social {
		justify-content: center;
		margin-top: 16px;
	}

	.subscribe .txt {
		text-align: center;
	}

	.product_highlight .group {
		grid-template-columns: repeat(1, 1fr);
	}

	.product_highlight {
		margin-top: 80px;
	}

	.product_highlight .txt {
		margin: 0;
		padding-top: 16px;
	}

	.product_highlight .img {
		margin: -50px auto 0;
		padding: 0;
		width: 60%;
	}

	.recommended {
		padding-top: 45px;
		padding-bottom: 45px;
	}

	.item_services {
		gap: 100px;
		padding-top: 100px;
	}

	.item_services .item {
		max-width: 360px;
		margin: 0 auto;
	}

	.item_services .item .icon {
		margin-top: -70px;
	}

	.txthead p {
		padding: 0 4%;
	}

	.item_services .item .txt {
		padding: 8% 6% 8%;
	}

	.hero-page {
		padding-top: 120px;
		border-radius: 0 0 48px 0;
	}

	.hero-page .txt {
		padding-bottom: 24px;
	}

	.service_content {
		margin-top: -24px;
	}

	.service_content_inner .row,
	.service_content_inner .row:nth-child(even) {
		flex-direction: column;
		margin-bottom: 48px;
	}

	.service_content_inner .row:nth-last-child(1) {
		margin-bottom: 24px;
	}

	.service_content_inner .row .txt ul {
		margin-top: 24px;
	}

	.service_content_inner .row .txt h2 {
		margin: 12px 0
	}

	.service_content_inner .row .txt ul li:before {
		width: 16px;
		height: 16px;
	}

	.service_content_inner .row .txt ul li {
		margin-bottom: 8px;
		padding-left: 24px;
	}

	.category_inner {
		grid-template-columns: repeat(3, 1fr);
	}

	.product_detail_inner {
		padding-bottom: 24px;
	}

	.product_detail_inner .col {
		flex-direction: column;
	}

	.product_detail_inner .col .img {
		border-radius: 16px;
	}

	.product_detail_inner .col .txt {
		margin-top: 24px;
		padding: 0;
	}

	.product_detail_inner .col .txt ul {
		margin-top: 24px;
	}

	.product_detail_inner .col .txt ul li:before {
		width: 16px;
		height: 16px;
	}

	.product_detail_inner .col .txt ul li {
		margin-bottom: 8px;
		padding-left: 24px;
	}

	.btn.btn-contact-us {
		margin-top: 24px !important;
	}

	.hero-page .txt-title.txt-title-detail {
		font-size: 30px;
	}

	.product_detail {
		margin-top: -24px;
	}


	.herobanner .item {
		padding-top: 30%;
	}
	.herobanner .item .img {
		margin: 0 auto;
		max-width: 75%;
	}
	.herobanner .item .txt {margin-top: 0; width: 100%; flex:0 0 auto;}

	.herobanner .item .txtmain {width: 100%;}

	.info_contact_inner {
		grid-template-columns: repeat(1,1fr);
		margin-top: -16px;
	}
	.info_contact_inner .item {
		display: grid;
		grid-template-columns: 40% 60%;
		align-items: center;
	}

	.info_contact_inner .item .txt {
		text-align: left;
		padding-right: 16px;
		margin-top: 0;
		height: auto;
	}

	.info_contact_inner .item .txt h2 {font-size: 18px;}
	.info_contact_inner .item .txt p {margin-top: 8px; font-size: 14px;}

	.contact_inner .txthead h2 {font-size: 20px;}
	.info_contact .txthead h2 {font-size: 34px;}
	.contact_inner .form form textarea {border-radius: 18px;}
	.contact_inner .form {padding: 24px 16px;}
	.contact_inner {border-radius: 18px;}
	.info_contact {padding-top: 12px; padding-bottom: 40px;}
	.contact_inner .form form {margin-top: 12px;}
	.map {height: 240px;}
	.contact_inner .form form textarea {aspect-ratio: 1 / 0.5;}

	.hero-page .txt-title {font-size: 60px;}
	.contact {padding-top: 32px !important;}
	.category {padding-top: 8px !important;}
	.txtresult {margin-top: 12px;}

}

@media(max-width: 575px) {
	.hero-page .txt {
		padding-bottom: 40px;
	}
	.herobanner:before {height: 55%;}
	.herobanner .item {
		padding-top: 24%;
	}
	.herobanner .item .txtmain {font-size: 60px; margin-top: 0;}

	.herobanner .item .txt {padding-top: 24px; padding-bottom: 24px;}

	.info_contact_inner .item .img {
		width: 65%;
	}
}