body{
  font-family: 'Poppins', 'Kanit', sans-serif !important;
  font-weight: 100;
  font-size: 16px !important;
}
.font-Inter {
  font-family: 'Inter', 'Kanit', sans-serif !important;
}
@media (min-width: 1500px) {
  body{
    font-size: 18px !important;
  }
}
:root{
  --primary: #B28E5E;
  --hov-primary: #d3ab76;
  --soft-primary: #d4f6ea;
  --light: #f5fcff;
  --dark: #000000;
  --secondary: #424242;
  --bgColorPrimaryr: #1e8e85;
  --border_radius: 20px;
}
body .btn {
  font-size: 16px;
}
body .form-control {
  font-size: 16px;
}
body .btn.disabled ,
body .btn:disabled {
  opacity: .4;
}
body .text-muted {
  color: #646464 !important;
}
body .btn-outline-secondary {
  border-color: #D0D5DD;
  background-color: rgb(255 255 255 / 54%);
}
body .btn-outline-secondary:hover>img {
  filter: invert(1) brightness(2);
}
.btn.btn-outline-dark.text-dark:hover {
  color: #fff !important;
}
.btn.btn-outline-light.text-white:hover {
  color: #000 !important;
}
body hr {
  border-color: rgba(199, 199, 199, 0.5) !important;
}
#empty {
  display: flex;
}
div+#empty {
  display: none;
}
.strikeOut {
  position: relative;
}
.strikeOut::after {
  content: "";
  border-top: 1px solid #c40823;
  position: absolute;
  left: 0px;
  top: 50%;
  width: 100%;
}
.first-child-border > [class*="border"]:first-child {
  border: 0px !important;
}
.card ,
.list-group ,
.input-group-text ,
.modal-content {
  border-radius: var(--border_radius);
}
.rounded {
  border-radius: var(--border_radius) !important;
}
.card-header:first-child {
  border-radius: calc(var(--border_radius) - 1px) calc(var(--border_radius) - 1px) 0 0;
}
.input-group .input-group-prepend+.form-control {
  border-top-right-radius: var(--border_radius);
  border-bottom-right-radius: var(--border_radius);
}
table.table.aiz-table .btn ,
table.table.aiz-table .badge {
  border-radius: 20px;
}
table.table.aiz-table .badge {
  padding-left: 10px;
  padding-right: 10px;
}
.btn-eye-slash {
	position: relative;
	cursor: pointer;
}
	.btn-eye-slash i::after {
    content: "\f06e";
    color: #bfbfbf;
    font: normal normal normal 21px/1 FontAwesome;
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
	}
	.btn-eye-slash i.active::after {
    content: "\f070";
	}
	
img {
  max-width: 100%;
  object-fit: cover;
}
body div#cart_items .badge:not(:empty) {
  font-size: 21px;
  margin-left: 15px;
}
  body div#cart_items .badge:not(:empty)::before ,
  body div#cart_items .badge:not(:empty)::after {
    content: "\28";
    font-family: monospace;
    margin-right: -1px;
  }
  body div#cart_items .badge:not(:empty)::after {
    content: "\29";
    margin-left: -1px;
  }
  
select {
  padding-right: 30px !important;
  background: #fff url(../images/icon-select.png) no-repeat calc(100% - 10px) center;
  -webkit-appearance: none;
  -webkit-border-radius: 2px;
  -webkit-padding-end: 30px;
  -webkit-padding-start: 9px;
  -webkit-user-select: none;
  -moz-appearance: none;
  -moz-padding-end: 30px;
  -moz-padding-start: 9px;
  -moz-user-select: none;
}
select.aiz-selectpicker+button.btn.dropdown-toggle {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}
.btn-style {
  background-color: rgb(243 243 243 / 45%);
  border: 1px solid rgb(255 255 255 / 44%);
}
.btn-style:hover ,
.btn-style.active {
  background-color: var(--soft-primary) !important;
}
div#cart_items.dropdown-toggle::after {
  display: none;
}
#cart_items:not([data-cart="0"]) #list_cart {
  display: block;
}
#list_cart {
  display: none;
}
#cart_items:not([data-cart="0"]) #list_cart+div {
  display: none;
}
body .aiz-table td ,
body .aiz-table th {
  padding: 10px 5px;
  font-size: 14px;
  font-weight: normal;
}
.img-fit-contain {
  max-height: 100%;
  object-fit: contain;
}

input[type=checkbox] ,
input[type=radio] {
  width: 17px;
  height: 17px;
  vertical-align: sub;
  filter: opacity(0.5) hue-rotate(185deg);
}
input[type=checkbox]+label.form-check-label ,
input[type=radio]+label.form-check-label {
  margin-left: 7px;
}
.box-btnchecked input:checked+label.btn.btn-style {
  background-color: var(--primary);
  color: #000;
}
.img {
	overflow: hidden;
	position: relative;
}
	.img img {
		display: block;
		width: 100%;
		transition: transform .8s ease;
	}
	.img:hover img {
		transform: scale(1.1);
	}
	.img .src-img {
    background: rgba(59, 120, 132, 0.08) no-repeat center;
    background-size: cover;
    transition: transform .8s ease;
	}
	.img:hover .src-img {
		transform: scale(1.1);
	}
  
#map{
  width: 100%;
  height: 250px;
}
 
#navbarNav {
  position: fixed !important;
  left: -400px !important;
  top: 0px !important;
  height: 100vh;
  transform: none !important;
  border: 0;
  padding: 15px;
  width: 300px;
  transition: .3s ease-in-out;
  display: block !important;
  background-color: #fffdf3;
  -webkit-box-shadow: 0 0 50px 0 rgb(82 63 105 / 15%);
  box-shadow: 0 0 50px 0 rgb(82 63 105 / 15%);
  z-index: 1034;
}
#navbarNav> div {
  overflow-y: auto;
  max-height: calc(100vh - 30px);
}
.sticky-top {
  position: sticky;
  position: -o-sticky;
  position: -moz-sticky;
  position: -webkit-sticky;
  top: 0px;
  z-index: 1030;
  background-color: #fff;
}
a.link-style {
  font-weight: 300;
  margin-top: 12px;
  display: inline-block;
  position: relative;
}
  a.link-style::before {
    content: "";
    position: absolute;
    width: calc(100% - 40px);
    border-top: 1px solid #000;
    bottom: 5px;
  }
  a.link-style::after {
    content: "";
    background: var(--primary) url(../images/icon-more.png) no-repeat center center;
    background-size: 40%;
    width: 31px;
    aspect-ratio: 1;
    border-radius: 50%;
    transition: .5s;
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
    transition: .5s;
  }
  a.link-style:hover::after {
    transform: rotate(45deg);
  }
 
body {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}
header .dropdown-item {
  background-color: #f3f3f3;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  color: #000;
}
div#navbarMain li.nav-item.active::after {
  content: "";
  width: 100%;
  border-bottom: 4px solid var(--primary);
  position: absolute;
  bottom: -15px;
}
div#navbarMain li.nav-item a.nav-link {
  padding-left: 15px;
  padding-right: 15px;
}
div#navbarMain li.nav-item:not(.active) a.nav-link:not(:hover) {
  color: #fff;
}
div#navbarMain li.nav-item.active a.nav-link {
  opacity: 1 !important;
}
@media (min-width: 1500px) {
  div#navbarMain li.nav-item a.nav-link {
    padding-right: 13px;
    padding-left: 13px;
  }
}

header {
  position: sticky;
  position: -o-sticky;
  position: -moz-sticky;
  position: -webkit-sticky;
  top: 0px;
  z-index: 1033;
  background-color: #ffffff;
  transition: top .3s;
}
  header .navbar-toggler-icon {
    background: none;
    position: relative;
    width: 32px;
  }
		header .navbar-toggler-icon:before {
      height: 3px;
      width: 32px;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: var(--primary);
      transition: transform ease .5s;
      content: '';
      display: block;
      margin: auto;
		}
		header button[aria-expanded="true"] .navbar-toggler-icon:before {
      transition: transform .5s ease .5s;
      opacity: 1;
      transform: rotate(-40deg);
		}
		header .navbar-toggler-icon:after {
      height: 3px;
      width: 32px;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      background: var(--primary);
      box-shadow: 0 8px 0 var(--primary), 0 -8px 0 var(--primary);
      transition: transform ease .5s,box-shadow .5s ease .5s;
      content: '';
      display: block;
      margin: auto;
		}
		header button[aria-expanded="true"] .navbar-toggler-icon:after {
      transition: transform .5s ease .5s,box-shadow ease .5s;
      box-shadow: 0 0 0;
      transform: rotate(40deg);
		}
    header div#navbarMain .dropdown-toggle::after {
      border: 0;
      content: "\f107";
      font-family: "Line Awesome Free";
      font-weight: 900;
      font-size: 57%;
    }
    header div#navbarMain #cart_items {
      
    }
      header div#navbarMain #cart_items .dropdown-menu.dropdown-menu-right.dropdown-menu-xl {
        min-width: 430px;
        border-radius: var(--border_radius);
        margin-top: 9px !important;
      }
        header div#navbarMain #cart_items .box-cart {

        }
          header div#navbarMain #cart_items .b-cart {
            padding: 0px 13px 13px 13px;
          }
            div#navbarMain #cart_items .btn-group.quantity .btn {
              height: 30px;
            }
            div#navbarMain #cart_items .btn-group.quantity .btn.btn-plus:after {
              height: 10px !important;
            }
            div#navbarMain #cart_items .btn-group.quantity .btn.btn-plus:before ,
            div#navbarMain #cart_items .btn-group.quantity .btn.btn-delete:before {
              width: 10px !important;
            }
            div#navbarMain #cart_items .btn-group.quantity button.btn {
              width: 0px !important;
            }
            header div#navbarMain #cart_items .b-cart table {
              max-width: 100%;
            }
              header div#navbarMain #cart_items .b-cart thead {
                position: sticky;
                top: -1px;
                background: #fff;
                z-index: 1;
              }
                header div#navbarMain #cart_items .b-cart table thead th {
                  padding-top: 0px;
                }

              header div#navbarMain #cart_items .b-cart table td {
                padding: 3px;
              }
                header div#navbarMain #cart_items .b-cart table img.img-product {
                  width: 71px;
                  margin-right: 10px;
                }


body header .container {
  max-width: 1500px;
}
@media (max-width: 1440px) {
  body header .container {
    max-width: 1345px;
  }
}
html body {
  --container: 100%;
}
  body .container {
    max-width: var(--container);
  }
  @media only screen and (min-width: 576px) {
    html body {
    --container: 540px;
    }
  }
  @media only screen and (min-width: 768px) {
    html body {
    --container: 720px;
    }
  }
  @media only screen and (min-width: 992px) {
    html body {
    --container: 960px;
    }
  }
  @media only screen and (min-width: 1300px) {
    html body {
    --container: 1300px;
    }
  }
  @media only screen and (min-width: 1550px) {
    html body {
    --container: 1500px;
    }
  }
		
.b-sticky {
  position: sticky;
  position: -o-sticky;
  position: -moz-sticky;
  position: -webkit-sticky;
  top: 70px;
  transition: top .5s;
}
 
body .h6 ,
body h6 {
  font-size: 1em;
}
  
body .card {
  box-shadow: none;
}
	
a.btn-line {
  background-color: #0cc42f;
}
	a.btn-line img {
    width: 21px !important;
    margin: 0px !important;
    margin-right: 4px !important;
	}
	
div#Tax-invoice .form-group label {
  font-size: 16px;
  padding-right: 0px;
}

.pagination .page-item {
  margin: 0px;
}
	.pagination .page-link {
    color: #565656;
    border-radius: var(--border_radius) !important;
    margin: 0px 3px;
    font-size: 16px;
    background-color: #d4d4d4;
	}
  .pagination .page-link[rel="prev"] {
    background-color: #f4f3ee;
    color: #a8a6a4;
  }
  .pagination .page-link[rel="next"] {
    background-color: var(--primary);
    color: #241e04;
  }
		.pagination .page-item.active .page-link {
      background-color: #000;
      color: #fff;
		}
		.pagination .page-item.disabled .page-link {
      border-radius: 0px !important;
      border: 1px solid #dee2e6;
      opacity: 0.5;
		}
			.pagination .page-item .page-link[href="javascript:void(0)"] {
        cursor: default !important;
        color: #565656;
        background-color: transparent;
        border-color: transparent;
      }

  .cookie-con-head {
    position: fixed;
    z-index: 1033;
    padding: 20px;
    padding-right: 43px;
    background-color: #000000;
    bottom: 0px;
    left: 50%;
    transform: translate(-50%, 100%);
    width: calc(100% - 20px);
    box-sizing: border-box;
    max-width: 1080px;
    border: 3px solid rgb(255 255 255 / 48%);
    border-bottom: transparent;
    border-radius: var(--border_radius) var(--border_radius) 0 0;
  }
  .cookie-con-head.show {
    transform: translate(-50%,0%);
    transition: transform .5s;
  }
    .cookie-con-head .clostcookie {
      width: 30px;
      height: 30px;
      line-height: 28px;
      text-align: center;
      right: 0px;
      top: 0px;
      cursor: pointer;
      position: absolute;
      color: #fff;
    }
    .cookie-con-head .inner-cookie {
      position: relative;
      padding-right: 135px;
      color: #fff;
    }
    .cookie-con-head .inner-cookie a {
      padding: 0px 5px;
      text-decoration: underline !important;
    }
  @media (max-width: 1112px) {
    .cookie-con-head .inner-cookie {
      padding-right: 0px;
      text-align: left;
    }
  }
.cookie-con-head .inner-cookie .button-submit {
  position: absolute;
  right: 0px;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
}
.cookie-con-head .inner-cookie .button-submit a {
  color: #fff;
}
@media (max-width: 1112px) {
  .cookie-con-head .inner-cookie .button-submit {
    position: relative;
    margin-top: 10px;
    transform: none;
    margin-left: 5px;
  }
}
.cookie-con-head .inner-cookie .button-submit:hover {
  opacity: 0.6;
}

.aiz-table.footable > tbody > tr+tr.footable-empty ,
.list-group li.list-group-item+li.footable-empty {
  display: none;
}
.list-group li.footable-empty {
  text-align: center;
  display: block;
  padding: 37px;
}
  .list-group li.footable-empty:before {
    content: "\f119";
    font-family: "FontAwesome";
    font-size: 60px;
    opacity: 0.5;
    display: block;
  }

li.list-group-item {
  background-color: transparent;
  border: 0px;
  padding-top: 25px;
  padding-bottom: 25px;
}
  li.list-group-item img {
    margin-right: 20px;
    background: #fff;
    aspect-ratio: 1;
    border: 1px solid #BFBFBF;
    width: 150px;
    object-fit: contain;
  }
 
.owl-nav {
	position: absolute;
	top: 50%;
	left: 0px;
	width: 100%;
	height: 0px;
	transform: translateY(-50%);
}
	.owl-nav button {
		display: flex;
		align-items: center;
		transform: translateY(-50%);
		position: absolute;
		transition: opacity .5s;
		opacity: 0.4;
    background-color: var(--primary);
    color: #fff;
    padding: 7px;
    border-radius: .25rem;
    border: 0px;
	}
	.owl-nav button.disabled {
		opacity: 0;
  }
	.owl-nav button:not(.disabled):hover {
		opacity: 1;
	}
		.owl-prev {
			float: left;
			left: 0px
		}
		.owl-next {
			float: right;
			right: 0px;
		}
		.owl-nav img {
			display: block;
      width: 40px;
      height: 40px;
      padding: 8px 3px 8px 8px;
      filter: grayscale(1);
      object-fit: contain;
      transition: .5s;
      box-sizing: border-box;
      background-color: rgba(0, 0, 0, 0.4);
      border-radius: 50%;
		}
			.owl-nav .owl-prev img {
				transform: rotate(180deg);
			}
			.owl-nav .owl-next img {
        margin-left: auto;
			}
			
.owl-dots {
	margin: 5px auto;
	position: absolute;
	bottom: 0px;
	left: 50%;
	transform: translate(-50%, -50%);
}
	.owl-dot {
    margin: 2px 5px;
    border-radius: 50%;
    background-color: #b8b7b4;
    transition: .5s;
    border: 0px;
    aspect-ratio: 1;
    padding: 5px;
  }
		.owl-dot.active {
      background-color: var(--primary);
		}

.o-prev ,
.o-next {
  display: inline-block;
  position: absolute;
  top: 50%;
  cursor: pointer;
  z-index: 1;
  padding: 2px 3px;
}
.o-prev {
	left: 1%;
}	
.o-next {
  transform: translateY(-50%);
  right: 1%;
}
@media only screen and (min-width: 1400px) {
	.o-prev {
		left: 4%;
	}
	.o-next {
    right: 4%;
	}
}
.arrow-default {

}
  .arrow-default .o-next ,
	.arrow-default .o-prev {
		position: initial;
		border: 0px;
		border-radius: 50%;
		aspect-ratio: 1;
		width: 40px;
		}
  .arrow-default .o-prev {
    background-color: #D9D9D9;
    color: #9F9F9F;
	}
	.arrow-default .o-next {
    margin-left: 20px;
    transform: none;
    color: #ffffff;
	}
    .arrow-default .o-next i ,
    .arrow-default .o-prev i {
      font-size: 28px;
      line-height: 32px;
      vertical-align: middle;
      text-align: center;
      margin-left: 4px;
    }
    .arrow-default .o-prev i {
      margin-right: 4px;
    }
	
.text-line1 ,
.text-line2 ,
.text-line3 ,
.text-line4 ,
.text-line5 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  word-break: break-all;
  white-space: pre-wrap;
}
.text-line1 {
  -webkit-line-clamp: 1;
}
.text-line2 {
  -webkit-line-clamp: 2;
}
.text-line3 {
  -webkit-line-clamp: 3;
}
.text-line4 {
  -webkit-line-clamp: 4;
}
.text-line5 {
  -webkit-line-clamp: 5;
}

.banner {
  padding: 0;
  margin: 0 auto;
  width: 100%;
  overflow: hidden;
}
  .banner .gallery-wrap {
    display: flex;
    flex-direction: row;
    width: 100%;
  }
  .banner .gallery-wrap .item {
    flex: 1;
    height: 100%;
    transition: all 1.2s ease;
    position: relative;
    transition-delay: 0.1s;
    overflow: hidden;
    display: block;
    height: calc(100vh - 70px) !important;
  }
  .banner .gallery-wrap .item:hover {
    flex: 3;
    opacity: 1 !important;
  }
    .banner .item img {
      object-fit: cover;
      height: 100%;
      width: 100%;
    }
  
  .banner .text-box {
    position: absolute;
    bottom: -80px;
    left: 30px;
    width: 400px;
    transition: 1s;
    transition-delay: 0.2s;
    z-index: 99;
  }
  .banner .item:hover .text-box {
    opacity: 1;
    bottom: 40px;
  }
    .banner .item .text-box h1 {
      font-size: 2em;
      text-transform: capitalize;
      line-height: 1;
    }
    .banner .item .text-box .details {
      opacity: 0;
      transition: 1s;
      transition-delay: 0.2s;
    }
    .banner .item:hover .text-box .details {
      opacity: 1;
    }
      .banner .text-box .details h1::before {
        content: "";
        width: 37px;
        display: inline-block;
        border-bottom: 3px solid #fff;
        vertical-align: middle;
        margin-right: 10px;
      }
      .banner .text-box .details p {
        height: 75px;
        overflow: hidden;
      }
  
  .banner * {
    color: #fff;
  }
    .banner .item::after {
      content: "";
      position: absolute;
      width: 100vw;
      height: 100%;
      z-index: 9;
      pointer-events: none;
      left: 0;
      top: 0;
      opacity: 1;
      transition: 0.5s ease;
      background: linear-gradient(
        17deg,
        rgba(0, 0, 0, 0.6937149859943977) 0%,
        rgba(0, 0, 0, 0.41360294117647056) 14%,
        rgba(0, 0, 0, 0.09427521008403361) 39%,
        rgba(0, 0, 0, 0) 45%
      );
    }
    .banner .item:hover::after {
      opacity: 0.5;
    }
    .banner .btmline::after {
      opacity: 0;
      transition: 0.5s ease;
    }
    .banner .item:hover .btmline::after {
      opacity: 1;
    }
  
  .banner-pointer {
    display: block;
    position: absolute;
    z-index: 9;
    top: 0;
    left: 0;
    height: calc(100vh - 70px) !important;
    width: 100%;
  }
  .banner-pointer:hover {
    display: block;
    opacity: 1 !important;
  }
    @media (min-width: 1500px) {
      .banner .gallery-wrap .item {
        height: 95vh;
      }
    }
    @media (max-width: 1100px) {
      .banner .gallery-wrap .item {
        height: 100vh;
        max-height: -webkit-fill-available;
        max-height: -moz-available;
        max-height: stretch;
      }
    }
    @media (max-width: 1026px) {
      .banner .text-box {
        left: 20px;
        max-width: 400px;
        width: 90%;
      }
      .banner .text-box .details p {
        margin-bottom: 20px;
      }
      .banner .text-box,
      .banner .item:hover .text-box {
        bottom: 50px !important;
      }
      .banner .gallery-wrap .item {
        height: calc(100vh - 60px) !important;
      }
      .banner-pointer {
        height: calc(100vh - 60px) !important;
      }
      .banner .text-box .details p {
        height: auto;
      }
      .banner .item .text-box .details {
        opacity: 1;
      }
    }

  .banner .owl-dots {
    left: 20px;
    transform: none;
    bottom: 10px;
  }

.quote-block {
  border-left: 2px solid #333;
  margin: 20px auto;
}
  .quote-block blockquote {
    margin: 15px;
    font-weight: 500;
    color: var(--secondary);
  }
  .quote-block cite {
    margin: 15px;
    display: block;
    font-style: normal;
  }

.box-gallery {
  width: calc(100% + calc(calc(100vw - var(--container)) / 2));
  max-width: 100vw;
}
  .box-gallery img {
    width: 100%;
    aspect-ratio: 1;
    background-color: #fff;
  }
    
.box-slide {
 
}
  .box-slide .owl-carousel .owl-stage {
    display: flex;
    flex-flow: wrap;
  }
    .box-slide .item {

    }
      .box-slide .item:has(img:nth-child(2)) {
        display: contents;
      }
  
.front-header-search {
  position: absolute;
  visibility: hidden;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 70px;
  right: 0;
  left: 0;
  opacity: 0;
  transition: all 0.3s;
  -webkit-transition: all 0.3s;
  width: 100vw !important;
  height: 100vh !important;
  display: flex;
  background-color: rgb(0 0 0 / 60%) !important;
  flex-direction: column;
  transform: none !important;
}
.front-header-search.active {
  opacity: 1;
  visibility: visible;
}
  .front-header-search form {
    padding: 17px;
    background-color: rgb(255 255 255 / 40%);
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    backdrop-filter: blur(5px);
  }
  .front-header-search .box-shadow {
    position: absolute;
    inset: 0;
    z-index: -1;
  }
@media only screen and (min-width: 1025px) {
  .front-header-search form {
    max-width: none !important;
    padding: 5px 7px;
    margin-right: 0px;
    /* transform: translateY(-210%); */
    transition: .5s;
  }
  .front-header-search form .input-group.bg-light.rounded-right {
    width: 800px;
    margin:  auto;
  }
  .front-header-search.active form {
    transform: translateY(0%);
  }
}

.number-outline {
  font-family: 'Inter', 'Kanit', sans-serif !important;
  font-size: 7rem;
  font-weight: bold;
  color: transparent;
  -webkit-text-stroke: 2px var(--primary);
  text-stroke: 2px var(--primary);
  letter-spacing: 3px;
  color: var(--bgColor);
}
  .number-outline::after {
    content: "+";
    font-family: monospace;
  }

.text-head {
  color: var(--primary);
}
.text-head.text-white {
  color: #fff;
}
  .text-head::before {
    content: "";
    background: linear-gradient(to right, var(--primary) 50%, transparent 50%);
    width: 25px;
    height: 23px;
    display: inline-block;
    vertical-align: middle;
    border-radius: 50%;
    margin-top: -3px;
    margin-right: -4px;
  }
  .text-head.text-white::before {
    background: linear-gradient(to right, #ffffff 50%, transparent 50%);
  }

ul.box-list-icon {
  list-style: none;
  padding: 0px;
  margin: 0px;
}
  ul.box-list-icon li {
    position: relative;
    padding-left: 50px;
    margin-bottom: 40px;
  }
  ul.box-list-icon li:last-child {
    margin-bottom: 0px;
  }
    ul.box-list-icon li img.list-icon {
      width: 22px;
      position: absolute;
      left: 0px;
      top: 4px;
    }
    ul.box-list-icon li:last-child p {
      margin-bottom: 0px;
    }

.box-List .item {
  padding: 20px;
  background: #fff;
  border-radius: var(--border_radius);
  border-bottom-right-radius: 85px;
  position: relative;
}
  .box-List .item > a {
    position: relative;
    color: #000;
  }
    .box-List .item > a::after {
      content: "";
      background: var(--primary) url(../images/icon-more.png) no-repeat center center;
      background-size: 40%;
      width: 60px;
      position: absolute;
      aspect-ratio: 1;
      border-radius: 50%;
      right: -34px;
      bottom: -20px;
      transition: .5s;
    }
    .box-List .item:hover > a::after {
      transform: rotate(45deg);
      filter: grayscale(1);
    }
    .box-List .item > a .box-text {
      padding-right: 28px;
    }

  .box-List .item .img {
    border-radius: var(--border_radius);
    margin-bottom: 15px;
    position: relative;
  }
  .box-List .item .img::after {
    content: "";
    background-color: var(--primary);
    inset: 0;
    position: absolute;
    opacity: 0;
    transition: all .2s;
    transform: scale(0.9);
    border-radius: var(--border_radius);
  }
    .box-List .item:hover .img::after {
      opacity: .8;
      transform: scale(1);
    }

section.box-services {
  background-color: #E3E3E3;
}
  .box-services .list-services {
    padding: 50px 0px;
    position: relative;
  }
  .box-services .list-services:nth-child(even) {
    background-color: #B8B8B8;
  }
  .box-services .list-services::before {
    content: "";
    background: url(../images/bg-services2.png) no-repeat left calc(100% + 20px);
    background-size: auto 110%;
    position: absolute;
    inset: 0px;
    pointer-events: none;
    z-index: 1;
    height: 100%;
  }
  .box-services .list-services:nth-child(4n+2)::before {
    background: url(../images/bg-services3.png) no-repeat right top;
    background-size: 48% auto;
  }
  .box-services .list-services:nth-child(4n+3)::before {
    background: url(../images/bg-services4.png) no-repeat left top;
    background-size: auto 90%;
    z-index: auto;
  }
  .box-services .list-services:nth-child(4n+4)::before {
    background: url(../images/bg-services5.png) no-repeat 15% bottom;
    background-size: auto calc(100% - 11px);
    top: auto;
  }
    .box-services .list-services:nth-child(even) [data-aos=fade-left] {
      transform: translate3d(-100px, 0, 0);
    }
    .box-services .list-services:nth-child(even) [data-aos^=fade][data-aos^=fade].aos-animate {
      transform: translateZ(0);
    }
    .box-services .head-services {
      color: #fff;
      font-size: 6rem !important;
      width: min-content;
      height: 109px;
    }
    @media only screen and (min-width: 768px) and (max-width: 1024px) {
      .box-services .head-services {
        font-size: 4rem !important;
        height: 73px;
      }
      /* แนวตั้ง */
      @media only screen and (orientation: portrait) {
        .box-services .list-services::before {
          top: auto;
        }
        .box-services .list-services::before {
          z-index: 1;
        }
      }
    }
    @media only screen and (min-width: 320px) and (max-width: 767px) {
      .box-services .head-services {
        font-size: 30px !important;
        height: auto;
        color: #000;
        width: auto;
        z-index: 1;
        position: relative;
      }
      .box-services .list-services:nth-child(4n+2)::before {
        top: auto;
        background-size: 90% auto;
      }
      .box-services .list-services::before {
        z-index: 1;
      }
      .box-services .list-services::before {
        top: auto;
      }
    }

    .box-services .list-services div:has(> .head-services) > *:not(.head-services) {
      position: relative;
      z-index: 1;
    }
    .box-services .list-services img.img-container2 {
      z-index: 1;
      position: relative;
    }
  @media only screen and (min-width: 1000px) {
    .box-services .list-services:nth-child(odd) .row > div {
      padding-right: 50px;
    }
    .box-services .list-services:nth-child(even) .row > div {
      order: initial;
      padding-left: 50px;
    }
    .box-services .list-services img.img-container2 {
      aspect-ratio: 800 / 500;
    }
    .box-services .list-services:nth-child(even) img.img-container2 {
      margin-left: calc(calc(calc(-100vw + var(--container)) / 2));
      border-radius: var(--border_radius) !important;
      border-top-left-radius: 0px !important;
      border-bottom-left-radius: 0px !important;
    }
    img.img-container2 {
      margin-bottom: -133px;
      width: calc(100% + calc(calc(100vw - var(--container)) / 2));
      max-width: 100vw;
      border-top-right-radius: 0px !important;
      border-bottom-right-radius: 0px !important;
      aspect-ratio: 800 / 500;
    }
  }

section.box-Whatwedo {
  --bgColor: #F2F2F2;
  margin: 0px !important;
  background: var(--bgColor) url(../images/bg-Whatwedo.png) no-repeat 9vw bottom;
  background-size: 700px;
}
  .box-Whatwedo .Whatwedo-text {
    z-index: 2;padding-bottom: 10%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
    .box-Whatwedo .Whatwedo-text::after {
      content: "";
      position: absolute;
      right: 0px;
      top: 0px;
      height: 100%;
      width: calc(100% + calc(100vw - var(--container)) / 2);
      z-index: -1;
      background: var(--bgColor) url(../images/bg-Whatwedo.png) no-repeat 9vw calc(100% + 3rem);
      background-size: 700px;
    }

  .box-Whatwedo .owl-carousel.box-List {
    width: calc(100% + calc(calc(100vw - var(--container)) / 2) - 10%);
  }
  .box-Whatwedo .owl-carousel .owl-stage-outer {
    overflow: visible;
  }

body section.bg-page {
  background-color: #F5F5F5;
  background-image: url(../images/bg-page-l.png), url(../images/bg-page-r.png);
  background-position-x: left, right;
  background-position-y: 20%, calc(100% - 20px);
  background-size: 300px auto, 400px auto;
  background-repeat: no-repeat;
}

section.box-quotation {
  background-position-x: left, calc(100% + 122px) !important;
  background-position-y: -180px, calc(100% + 200px) !important;
}

section.box-succeed {
  background-color: #FAF9F8;
  background-image: url(../images/bg-succeed.png),url(../images/bg-page-l.png), url(../images/bg-succeed.png), url(../images/bg-page-r.png);
  background-position-x: center,left,center, calc(100% + 260px);
  background-position-y: center,calc(100% + 290px),center, -75px;
  background-size: 1335px auto,300px auto, 380px auto, 400px auto;
  background-repeat: no-repeat;
}
div#content:has(section.box-succeed)+section.box-Request {
  background-color: #FAF9F8;
  padding-top: 0px !important;
}

section.box-cart {
  background-color: #EBEBEB;
  background-image: url(../images/bg-cart-l.png), url(../images/bg-cart-r.png);
  background-position-x: left, right;
  background-position-y: top, bottom;
  background-size: 380px auto, 320px auto;
  background-repeat: no-repeat;
}
div#content:has(section.box-cart)+section.box-Request {
  background-color: #EBEBEB;
}
  .box-cart table {
    width: 100%;
  }
    .box-cart table th {
      padding: 15px 0px;
    }
    .box-cart table th:nth-child(1) {
      /* width: 90%; */
    }
      .box-cart table img.img-product {
        margin-right: 21px;
        background: #fff;
        aspect-ratio: 1;
        border: 1px solid #BFBFBF;
        width: 150px;
        object-fit: contain;
        margin-top: auto;
        margin-bottom: auto;
        border-radius: 10px;
      }

section.box-banner-head {
  height: 450px;
  background: no-repeat center center;
  background-size: cover;
  display: flex;
  flex-direction: column;
  padding: 5vw 0px;
  box-sizing: border-box;
  justify-content: end;
}
  section.box-banner-head h1 {
    color: #fff;
    font-size: 90px;
  }

.box-list-nav {
  position: sticky;
  top: 45px;
  z-index: 9;
  background: #f5f5f5;
  margin-bottom: -22px;
  padding-top: 25px;
}
  .box-list-nav .--list-nav {
    overflow: auto;
    padding: 5px;
  }
    .box-list-nav .--list-nav > .d-flex {
      min-width: max-content;
      justify-content: center;
      font-weight: 300;
    }
      .box-list-nav .--list-nav a {
        
      }
      .box-list-nav .--list-nav a:hover {
        opacity: 0.8;
      }
      .box-list-nav .--list-nav a.active {
        color: #000;
      }

section.box-Recommend {
  overflow: hidden;
  background: url(../images/bg-Recommend.png) no-repeat right bottom;
  background-size: 700px;
}
  .box-Recommend .owl-carousel {
    max-width: 1020px;
    margin: auto;
  }
    .box-Recommend .owl-carousel .owl-stage-outer {
      overflow: visible;
    }
      .box-Recommend .item {
        text-align: center;
      }
        .box-Recommend .item .img {

        }
          .box-Recommend .item .img img {
            aspect-ratio: 400 / 600;
            object-fit: contain;
            padding: 7%;
            max-width: 160px;
            margin: auto;
          }
          .box-Recommend .item .img::before {
            content: "";
            width: 160px;
            max-width: 100%;
            aspect-ratio: 1;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            border-radius: 50%;
            border: 30px solid #CFCFCF;
            z-index: -1;
          }

        .box-Recommend .item .box-text {
          margin-top: 20px;
        }

.box-vision {

}
  .box-vision img {
    width: 100%;
    margin-bottom: 50px;
  }
  .box-vision .--text {
    background-color: #424040;
    padding: 20px;
    color: #fff;
    width: 315px;
    position: absolute;
    bottom: 0px;
    right: 20px;
    font-size: 20px;
  }

section.box-Portfolio {
  background-color: #F0F0F0;
  background-image: url(../images/bg-Portfolio1.png), url(../images/bg-Portfolio2.png), url(../images/bg-Portfolio3.png);
  background-position-x: right , left, right;
  background-position-y: top , center, bottom;
  background-size: 300px auto,400px auto,800px auto;
  background-repeat: no-repeat;
}
  .box-Portfolio .card {
    background-color: transparent;
    border: none !important;
  }
    .box-Portfolio .item {
      background: #E1E1E1;
      height: 100%;
    }
      .box-Portfolio .item .img img {
        aspect-ratio: 800/425;
      }
  
section.box-products {
  
}
.box-products .card {
  border: none;
  padding: 10px;
  margin: 0px;
}
  .box-products .item {
    text-align: center;
    border: 1px solid #C4C4C4;
    height: 100%;
  }
    .box-products .item .img {

    }
      .box-products .item .img img {
        aspect-ratio: 1;
        object-fit: contain;
        padding: 40px;
        margin: auto;
        width: 280px;
      }

    .box-products .item .box-text {
      padding-bottom: 30px;
    }

.box-Clients {
  background: no-repeat left bottom;
  background-size: auto 280px;
}
  .box-Clients .owl-carousel .owl-stage {
    margin: auto;
  }
    .box-Clients .item {

    }
      .box-Clients .item img {
        aspect-ratio:300/120;
        object-fit: contain;
        margin: 15px auto;
      }

	.btn-group.quantity {
    border-radius: var(--border_radius);
    max-width: 142px;
	}
		.btn-group.quantity * {
			height: 35px;
		}
		.btn-group.quantity .btn {
      display: inline-block;
      padding: 3px;
      margin-bottom: 0;
      font-size: 14px;
      font-weight: 400;
      line-height: 1.42857143;
      text-align: center;
      white-space: nowrap;
      vertical-align: middle;
      -ms-touch-action: manipulation;
      touch-action: manipulation;
      cursor: pointer;
      -webkit-user-select: none;
      -moz-user-select: none;
      -ms-user-select: none;
      user-select: none;
      background-image: none;
      float: left;
      color: #333;
      height: 39px;
      border: 0px;
    }
		.btn-group.quantity button.btn {
      width: 35px;
      color: #fff;
      background-color: var(--primary);
		}
		.btn-group.quantity button.btn.btn-delete {
      background-color: #434343;
		}
		.btn-group.quantity .btn.btn-plus:after {
      content: "";
      position: absolute;
      top: 50%;
      transform: translate(-50%,-50%);
      height: 14px;
      border-left: 2px solid #ffffff;
		}
		.btn-group.quantity .btn.btn-plus:before ,
		.btn-group.quantity .btn.btn-delete:before {
      content: "";
      position: absolute;
      top: 50%;
      transform: translate(-50%,-50%);
      width: 14px;
      border-top: 2px solid #ffffff;
		}
		.btn-group.quantity .btn.disabled {
      opacity: 0.4;
		}
		.btn-group.quantity input.btn {
			text-align: center;
		}
		.btn-group.quantity>.btn:first-child:not(:last-child) {
      border-radius: var(--border_radius) 0 0 var(--border_radius) !important;
		}
		.btn-group.quantity>.btn.btn-plus {
      border-radius: 0 var(--border_radius) var(--border_radius) 0 !important;
		}
		.btn-group.quantity input.btn {
      padding: 6px 0px;
      width: calc(100% - 68px);
      background-color: #f8f8f8;
		}
	
	.box-showImg {
 	
 }
    .box-showImg .owl-carousel {
      border-radius: var(--border_radius) !important;
      overflow: hidden;
    }
      .box-showImg .owl-stage {
        display: flex;
        justify-content: center;
        align-items: center;
        background-color: #fafafa;
      }
 
div#content section.box-grid {
  background-color: #454545;
  background-image: url(../images/bg-grid-l.png), url(../images/bg-grid-r.png);
  background-position-x: left, right;
  background-position-y: bottom, top;
  background-size: auto 400px;
  background-repeat: no-repeat;
}
@media only screen and (min-width: 1000px) {
  .box-grid .col-lg-9 {
    flex: 0 0 78%;
    max-width: 78%;
  }
  .box-grid .col-lg-3 {
    flex: 0 0 22%;
    max-width: 22%;
  }
}
  .box-grid .b-certificate {
    background: #fef2e2 url(../images/bg-aboutus-r.png) no-repeat bottom right;
    background-size: 250px;
  }
   
  .box-grid .grid-container {
    display: grid;
    gap: 20px;
    grid-template-columns: calc(100%/2 - 20px) calc(100%/4 - 10px) calc(100%/4 - 10px);
  }
   .box-grid .grid-item {
      text-align: center;
      padding: 20px;
      display: flex;
      align-items: center;
      justify-content: center;
      aspect-ratio: 1;
      font-weight: bold;
      color: #fff;
      text-shadow: 0 0 4px rgb(0 0 0 / 40%);
      background: #000;
      position: relative;
      overflow: hidden;
      border-radius: var(--border_radius);
      position: relative;
    }
    .box-grid .grid-item::before {
      content: "";
      position: absolute;
      width: 20px;
      top: 30px;
      right: 30px;
      aspect-ratio: 1;
      background: url(../images/icon-more.png) no-repeat center;
      background-size: contain;
      -webkit-transform: scale(0);
      -moz-transform: scale(0);
      -ms-transform: scale(0);
      -o-transform: scale(0);
      transform: scale(0);
      z-index: 1;
      -webkit-transition : all 0.3s ease-out 0s;
      -moz-transition: all 0.3s ease-out 0s;
      -ms-transition: all 0.3s ease-out 0s;
      -o-transition: all 0.3s ease-out 0s;
      transition: all 0.3s ease-out 0s;
    }
      .box-grid .grid-item:hover::before {
        opacity: .8;
        -webkit-transform: scale(1) rotate(0);
        -moz-transform: scale(1) rotate(0);
        -ms-transform: scale(1) rotate(0);
        -o-transform: scale(1) rotate(0);
        transform: scale(1) rotate(0)
      }

    .box-grid .grid-item::after {
      content: "";
      background-color: var(--primary);
      inset: 0;
      position: absolute;
      opacity: 0;
      transition: all .2s;
      transform: scale(0.9);
      border-radius: var(--border_radius);
    }
      .box-grid .grid-item:hover::after {
        opacity: .8;
        transform: scale(1);
      }

   .box-grid .grid-item:not(:nth-child(-n+4)) {
      display: none;
   }
    .box-grid .grid-item:nth-child(1) ,
    .box-grid .grid-item:nth-child(2) {
      grid-row: 1 / span 2;
      aspect-ratio: auto;
    }
    .box-grid .grid-item:nth-child(2) {
      grid-column: 2;
    }
      .box-grid .grid-item > img {
        position: absolute;
        opacity: 1;
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        transition: .5s;
        aspect-ratio: 1;
      }
      .box-grid .grid-item:hover > img {
        opacity: .7;
        transform: scale(1.1);
      }
      .box-grid .grid-item > *:not(img) {
        z-index: 1;
      }
      .box-grid .grid-item:nth-child(1) > h4 ,
      .box-grid .grid-item:nth-child(2) > h4 {
        padding-bottom: 13px;
      }
      .box-grid .grid-item:nth-child(1) > h4 {
        padding-left: 13px;
      }

ul.--column2 {
  column-count: 2;
  word-break: break-word;
  column-gap: 30px;
}

.specs-container {
  column-count: 2;
  column-gap: 0;
  border: 1px solid black;
  max-width: 600px;
  overflow: hidden;
  position: relative;
}
.specs-container::after {
  content: "";
  position: absolute;
  background: #000;
  width: 25%;
  height: 100%;
}
  .specs-table {
    width: 100%;
    font-size: 13px;
  }
    .specs-table td {
      padding: 7px 15px;
      width: 50%;
    }
    .specs-table td:first-child {
      background-color: #000;
      color: #fff;
    }

.box-product-detail {
  background-image: url(../../public/images/bg-product-circle.png), url(../../public/images/bg-product-circle.png);
  background-position-x: 74%, -300px;
  background-position-y: top, bottom;
  background-size: 800px auto, 800px auto;
  background-repeat: no-repeat;
}

.box-detail {
  background-image: url(../images/bg-detail1.png), url(../images/bg-detail2.png), url(../images/bg-detail3.png);
  background-position-x: right, left, right;
  background-position-y: top, 24%, 80%;
  background-size: 400px auto, 600px auto, 480px auto;
  background-repeat: no-repeat;
}
  .box-detail img {
    max-width: 100%;
  }
  .box-detail iframe {
    height: 520px;
  }
  .box-detail .grid-container {
    display: grid;
    grid-gap: 10px;
    padding: 10px;
    text-align: center;
    grid-template-columns: auto auto auto;
  }
  .box-detail .grid-container .grid-item {
    background-color: rgba(255, 255, 255, 0.8);
    overflow: hidden;
  }
    .box-detail .grid-container .grid-item img {
      aspect-ratio: 1;
    }

  .box-detail .box-slide .owl-carousel .owl-stage {
    margin: auto;
  }
  .box-detail a[data-fancybox] {
    border-radius: var(--border_radius);
    overflow: hidden;
    position: relative;
    display: block;
    margin: 40px auto;
  }
  .box-detail a[data-fancybox]::after {
    content: "\f065";
    font-family: 'FontAwesome';
    opacity: 0;
    transition: .5s;
    visibility: hidden;
    position: absolute;
    z-index: 99;
    color: #fff;
    background: rgb(0 0 0 / 14%);
    backdrop-filter: blur(2px);
    inset: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 35px;
  }
  .box-detail a[data-fancybox]:hover::after {
    opacity: 1;
    visibility: visible;
  }
    .box-detail a[data-fancybox] img {
      width: 100%;
      transition: transform .8s ease;
    }
    .box-detail a[data-fancybox]:hover img {
      transform: scale(1.1);
    }
    
.footer-widget {
  margin-top: auto;
}
.footer-widget.bg-dark ,
footer.bg-dark {
  background-color: #000 !important;
  color: #989898;
}
/* ---------------------------------------------------**** Mobile and Tablet ****--------------------------------------------------- */
@media only screen and (min-width: 320px) and (max-width: 1024px) {
  .owl-nav button {
    opacity: 1;
  }
  .front-header-search {
    background-color: #fff !important;
  }
  .number-outline {
    font-size: 84px;
  }
  .box-Whatwedo .owl-carousel.box-List {
    width: auto;
  }
  .box-Whatwedo .owl-carousel .owl-stage-outer {
    overflow: hidden;
  }
  .box-List .item > a::after {
    right: -20px;
    width: 50px;
  }
  .box-Whatwedo .Whatwedo-text::after {
    display: none;
  }
  .box-Recommend .owl-carousel {
    max-width: 400px;
    margin: auto;
  }
  .box-List .item {
    padding: 15px;
  }
  .box-List .item > a::after {
    bottom: -14px;
    right: -14px;
    width: 45px;
  }
  section.box-banner-head {
    height: 300px;
  }
  .box-products .item .img img {
    padding: 20px;
  }
  .box-services .list-services::before {
    max-height: 500px;
  }
  .specs-container ,
  ul.--column2 {
    column-count: auto;
  }
}

/* ---------------------------------------------------**** Tablet ****--------------------------------------------------- */
@media only screen and (min-width: 768px) and (max-width: 1024px) {

  .box-detail a[data-fancybox] {
    margin: 20px auto;
  }
  /* แนวตั้ง */
  @media only screen and (orientation: portrait) {
    header .box-navbar {
      width: 100%;
      display: flex;
      justify-content: inherit;
      z-index: 99;
    }
    header .navbar-collapse {
      position: fixed;
      top: 0px;
      right: 0px;
      height: calc(100vh - 60px) !important;
      background-color: var(--dark);
      margin-top: 60px;
      z-index: 98;
      transition: left 0.5s ease !important;
      width: 350px;
      left: -350px;
    }
    header .navbar-collapse.show,
    header .navbar-collapse.collapsing[style*="height"] {
      left: 0px;
    }
    header .navbar-collapse .navbar-nav {
      height: calc(100vh - 115px);
      overflow-y: auto;
      padding: 5vh 40px;
      width: 100%;
      order: 1;
    }
    header .navbar-collapse + .box-shadow {
      content: "";
      left: 0px;
      top: 0px;
      position: fixed;
      width: 100%;
      height: calc(100vh - 56px) !important;
      background-color: rgb(0 0 0 / 46%);
      margin-top: 56px;
      display: none;
    }
    header .navbar-collapse.show + .box-shadow,
    header .navbar-collapse.collapsing[style*="height"] + .box-shadow {
      display: block;
    }
    .box-list-nav {
      top: 35px;
    }
    div#navbarMain li.nav-item.active::after {
      border-bottom: none;
      border-left: 4px solid var(--primary);
      height: 100%;
      width: auto;
      top: 0px;
      left: -40px;
    }
    body div#cart_items .badge::before,body div#cart_items .badge::after {
      display: none;
    }
    body div#cart_items .badge {
      background: #8a5001;
      width: 20px;
      height: 20px;
      display: flex;
      border-radius: 50%;
      position: absolute;
      top: 3px;
      font-size: 14px;
      right: -9px;
    }
    div#navbarMain .navbar-nav.box-menu+.d-flex {
      background-color: var(--primary);
      padding: .25rem;
      width: 100%;
    }
    .box-grid .grid-container {
      grid-template-columns: calc(100% / 2 - 10px) calc(100% / 2 - 10px);
    }
    .box-grid .grid-item {
      grid-column: auto !important;
      grid-row: auto !important;
      aspect-ratio: 1 !important;
    }
    .b-sticky {
      top: 60px;
    }
    .box-vision .--text {
      position: initial;
      width : 100%;
    }
    .box-vision img {
      margin-bottom: 0px;
      border-bottom-right-radius: 0px !important;
      border-bottom-left-radius: 0px !important;
    }
  }
  /* แนวนอน */
  @media only screen and (orientation: landscape) {
    header .container {
      max-width: 100%;
    }
    header .box-social {
      position: absolute;
      right: 44px;
      top: 100%;
      background-color: var(--dark) !important;
      padding-right: 8px;
      height: 30px;
    }
    .box-grid .grid-item > h2 {
      font-size: 23px;
    }
    .box-Whatwedo .Whatwedo-text {
      padding-bottom: 5%;
    }
  }
}

/* ---------------------------------------------------**** Mobile ****--------------------------------------------------- */
@media only screen and (min-width: 320px) and (max-width: 767px) {
  header .box-navbar {
    width: 100%;
    display: flex;
    justify-content: inherit;
    z-index: 99;
  }
  header .navbar-collapse {
    position: fixed;
    top: 0px;
    right: 0px;
    height: calc(100vh - 60px) !important;
    background-color: var(--dark);
    margin-top: 60px;
    z-index: 98;
    transition: left 0.5s ease !important;
    width: 350px;
    left: -350px;
  }
  header .navbar-collapse.show,
  header .navbar-collapse.collapsing[style*="height"] {
    left: 0px;
  }
  header .navbar-collapse .navbar-nav {
    height: calc(100vh - 115px);
    overflow-y: auto;
    padding: 5vh 40px;
    width: 100%;
    order: 1;
  }
  header .navbar-collapse + .box-shadow {
    content: "";
    left: 0px;
    top: 0px;
    position: fixed;
    width: 100%;
    height: calc(100vh - 67px) !important;
    background-color: rgb(0 0 0 / 46%);
    margin-top: 67px;
    display: none;
  }
  header .navbar-collapse.show + .box-shadow,
  header .navbar-collapse.collapsing[style*="height"] + .box-shadow {
    display: block;
  }
  .box-list-nav {
    top: 35px;
  }
  div#navbarMain li.nav-item.active::after {
    border-bottom: none;
    border-left: 4px solid var(--primary);
    height: 100%;
    width: auto;
    top: 0px;
    left: -40px;
  }
  body div#cart_items .badge::before,body div#cart_items .badge::after {
    display: none;
  }
  body div#cart_items .badge {
    background: #8a5001;
    width: 20px;
    height: 20px;
    display: flex;
    border-radius: 50%;
    position: absolute;
    top: 3px;
    font-size: 14px !important;
    right: -9px;
  }
  div#navbarMain .navbar-nav.box-menu+.d-flex {
    background-color: var(--primary);
    padding: .25rem;
    width: 100%;
  }
  .modal table-responsive {
    min-height: inherit !important;
  }
  header nav.navbar {
    max-height: calc(100vh - 70px);
    overflow: auto;
  }
  html[lang="th"] a[data-flag="th"],
  html[lang="en"] a[data-flag="en"] {
    opacity: 1 !important;
  }
  body h1 {
    font-size: 28px !important;
  }
  body h2 {
    font-size: 24px !important;
  }
  .box-View-More {
    position: absolute;
    bottom: 0px;
    z-index: 2;
  }
  .box-grid .grid-item {
    grid-column: auto !important;
    grid-row: auto !important;
    aspect-ratio: 1 !important;
  }
  section.box-banner-head h1 {
    color: #fff;
    font-size: 50px !important;
  }
  .box-detail a[data-fancybox] {
    margin: 15px auto;
  }
  section.box-banner-head {
    max-height: 50vh;
  }
  li.list-group-item img {
    width: 100px;
  }
  li.list-group-item h3 {
    font-size: 20px;
  }
  .b-sticky {
    top: 60px;
  }
  .box-vision .--text {
    position: initial;
    width : 100%;
  }
  .box-vision img {
    margin-bottom: 0px;
    border-bottom-right-radius: 0px !important;
    border-bottom-left-radius: 0px !important;
  }
  /* แนวตั้ง */
  @media only screen and (orientation: portrait) {
    .img-banner.banner-portrait + .img-banner,
    img.banner-portrait + img {
      display: none !important;
    }
    .img-banner.banner-portrait,
    img.banner-portrait {
      display: block !important;
    }
    .aspect-ratio-mobile-1 {
      aspect-ratio: 3/2;
    }
    .box-grid .grid-container {
      grid-template-columns: 100%;
    }
    .box-Whatwedo .Whatwedo-text {
      padding-bottom: 5%;
    }
    .box-Recommend .owl-carousel {
      max-width: 190px;
    }
    section.box-banner-head {
      max-height: 200px;
    }
  }
  /* แนวนอน */
  @media only screen and (orientation: landscape) {
    .box-grid .grid-container {
      grid-template-columns: 50% 50%;
    }
    .box-grid .grid-item > h2 {
      font-size: 23px;
    }
    .box-Whatwedo .Whatwedo-text {
      padding-bottom: 15%;
    }
  }
}