.line-clamp-1 {
  display: -webkit-box;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.text-ghost-white {
  color: #f9fbfc !important;
}

.bg-ghost-white {
  background: #f9fbfc !important;
}

.accent-ghost-white {
  accent-color: #f9fbfc;
}

.border-ghost-white {
  border-color: #f9fbfc !important;
}

.text-orange {
  color: #e16d22 !important;
}

.bg-orange {
  background: #e16d22 !important;
}

.accent-orange {
  accent-color: #e16d22;
}

.border-orange {
  border-color: #e16d22 !important;
}

.text-gray {
  color: #5a5958 !important;
}

.bg-gray {
  background: #5a5958 !important;
}

.accent-gray {
  accent-color: #5a5958;
}

.border-gray {
  border-color: #5a5958 !important;
}

.text-light-gray {
  color: rgba(88, 88, 88, 0.25) !important;
}

.bg-light-gray {
  background: rgba(88, 88, 88, 0.25) !important;
}

.accent-light-gray {
  accent-color: rgba(88, 88, 88, 0.25);
}

.border-light-gray {
  border-color: rgba(88, 88, 88, 0.25) !important;
}

.text-silver-gradient {
  color: linear-gradient(180deg, #fff 0%, #e5e5e5 100%) !important;
}

.bg-silver-gradient {
  background: linear-gradient(180deg, #fff 0%, #e5e5e5 100%) !important;
}

.accent-silver-gradient {
  accent-color: linear-gradient(180deg, #fff 0%, #e5e5e5 100%);
}

.border-silver-gradient {
  border-color: linear-gradient(180deg, #fff 0%, #e5e5e5 100%) !important;
}

.bg-black-gradient {
  background: linear-gradient(180deg, rgb(88, 89, 90) 0%, rgb(18, 18, 18) 100%);
}

.bg-orange-gradient {
  background: linear-gradient(180deg, #e2863c 0%, #d74532 100%);
}

.orange-button {
  color: #fff;
  background: linear-gradient(180deg, #e2863c 0%, #d74532 100%);
  padding: 0.5625rem 1.75rem;
  border-radius: 5px;
  text-align: center;
}
.orange-button:hover {
  background: linear-gradient(180deg, rgb(88, 89, 90) 0%, rgb(18, 18, 18) 100%);
}

.black-button {
  color: #fff;
  background: linear-gradient(180deg, rgb(88, 89, 90) 0%, rgb(18, 18, 18) 100%);
  padding: 0.5625rem 1.75rem;
  text-align: center;
  border-radius: 5px;
}
.black-button:hover {
  background: linear-gradient(180deg, #e2863c 0%, #d74532 100%);
}

.gray-button {
  color: #000;
  background: #e2e2e2;
  padding: 0.5625rem 1.75rem;
  text-align: center;
  border-radius: 5px;
}
.gray-button:hover {
  background: linear-gradient(180deg, rgb(88, 89, 90) 0%, rgb(18, 18, 18) 100%);
  color: #fff;
}

@font-face {
  font-family: "Bebas Neue";
  font-weight: 400;
  src: url("../../../fonts/BebasNeue.woff2") format("woff2");
}
@font-face {
  font-family: "Kanit";
  font-weight: 600;
  src: url("../../../fonts/Kanit-SemiBold.woff2") format("woff2");
}
@font-face {
  font-family: "Kanit";
  font-weight: 500;
  src: url("../../../fonts/Kanit-Medium.woff2") format("woff2");
}
@font-face {
  font-family: "Kanit";
  font-weight: 400;
  src: url("../../../fonts/Kanit-Regular.woff2") format("woff2");
}
@font-face {
  font-family: "Kanit";
  font-weight: 300;
  src: url("../../../fonts/Kanit-Light.woff2") format("woff2");
}
* {
  touch-action: manipulation;
  font-family: "Kanit", sans-serif;
  box-sizing: border-box;
  outline: none;
}

.header-path {
  -webkit-clip-path: polygon(25% 0%, 100% 0%, 100% 100%, 0% 100%);
          clip-path: polygon(25% 0%, 100% 0%, 100% 100%, 0% 100%);
}

.header-font {
  font-family: "Bebas Neue", sans-serif !important;
}

body {
  padding-top: 5.25rem;
}
@media (max-width: 1024px) {
  body {
    padding-bottom: 4rem;
  }
}

html {
  font-size: clamp(14px, 1vw, 16px);
  scroll-behavior: smooth;
}

button:disabled {
  opacity: 0.5;
  pointer-events: none;
  filter: grayscale(1);
}

.main-container {
  max-width: 1640px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}

.main-container-sm {
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
}

.aspect-video {
  aspect-ratio: 16/9;
}

.aspect-square {
  aspect-ratio: 1/1;
}

.hide-scroll-bar::-webkit-scrollbar {
  height: 0px;
  width: 0;
}

.product-quantity input[type=number] {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
}
.product-quantity input[type=number]::-webkit-inner-spin-button, .product-quantity input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

nav .nav-submenu-button:hover .nav-submenu {
  visibility: visible;
}
nav .nav-submenu-button:hover > img:not(.user-icon) {
  rotate: 180deg;
}
nav .nav-submenu {
  visibility: hidden;
}
nav .nav-submenu * {
  background: #fff;
}
nav .nav-submenu *:where(a):hover {
  background: #f9fbfc;
  color: #e16d22;
}
nav .nav-menu a,
nav .nav-menu button {
  font-weight: 500;
}
nav .nav-menu .active::before {
  position: absolute;
  content: "";
  bottom: 0;
  width: 100%;
  height: 3px;
  background: #e16d22;
}
nav .nav-menu > a,
nav .nav-menu ~ button {
  position: relative;
  height: 100%;
  display: flex;
  align-items: center;
}
nav .nav-menu > a:hover,
nav .nav-menu ~ button:hover {
  color: #e16d22;
}

.table-wrapper {
  width: 100%;
  overflow-x: scroll;
}
.table-wrapper::-webkit-scrollbar-track {
  background: transparent;
}
.table-wrapper table {
  width: 100%;
  min-width: 1140px;
}
.table-wrapper table tr th {
  padding: 0.8rem;
}
.table-wrapper table tr td {
  padding: 0.8rem;
}

.article-card {
  cursor: pointer;
}
.article-card > img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.article-card .article-name {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 4rem;
  font-size: 1.25rem;
  transition: color 0.25s;
}
.article-card .article-name:hover {
  color: #e16d22;
}
.article-card .article-readmore {
  display: flex;
  align-items: center;
  transition: 0.25s;
  margin-top: 0.75rem;
}
.article-card .article-readmore:hover {
  color: #e16d22;
}
.article-card .article-readmore:hover img {
  transform: translateY(10px);
}
.article-card .article-readmore img {
  transition: 0.25s;
  margin-left: 5px;
  rotate: -90deg;
}

input[type=radio] {
  color: #fff;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border: 1px solid #aaa;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  position: relative;
  top: 0.2rem;
}
input[type=radio]:checked::before {
  background: linear-gradient(180deg, #e2863c 0%, #d74532 100%);
}
input[type=radio]::before {
  content: "";
  position: absolute;
  width: 11px;
  height: 11px;
  top: 50%;
  font-size: 1rem;
  border-radius: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.collapsible ~ .collapsible-content {
  display: none;
}

.collapsible * {
  pointer-events: none;
}

select {
  cursor: pointer;
  width: 100%;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fff;
  border-radius: 5px;
  padding: 0.5rem 0 0.5rem 0.75rem;
  border: 1px solid rgba(88, 88, 88, 0.3);
}

.select {
  width: 100%;
  position: relative;
}
.select > button {
  cursor: pointer;
  width: 100%;
  text-align: left;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: #fff;
  border-radius: 5px;
  padding: 0.5rem 0 0.5rem 0.75rem;
  border: 1px solid rgba(88, 88, 88, 0.3);
}
.select .option {
  box-shadow: rgba(0, 0, 0, 0.1) 0px 4px 12px;
  display: none;
  flex-direction: column;
  position: absolute;
  width: 100%;
  top: 115%;
  max-height: 30vh;
  overflow: scroll;
  background: white;
  z-index: 20;
  border-radius: 5px;
  border: 1px solid rgba(88, 88, 88, 0.3);
}
.select .option::-webkit-scrollbar {
  height: 0px;
  width: 0;
}
.select .option button {
  width: 100%;
  text-align: left;
  padding: 0.25rem 0.8rem;
}
.select .option button:hover {
  background: #eaeaea;
}
.select::before {
  position: absolute;
  content: "";
  width: 20px;
  pointer-events: none;
  height: 20px;
  z-index: 10;
  transform: translate(-50%, -50%);
  content: url("../../../icons/arrow-down.svg");
  top: 50%;
  right: -1%;
}

input[type=text],
input[type=password],
textarea {
  width: 100%;
  border-radius: 5px;
  display: block;
  border: 1px solid rgba(88, 88, 88, 0.3);
  padding: 0.5rem 0.75rem;
  resize: none;
}

input[type=checkbox] {
  color: #fff;
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  border: 1px solid rgba(88, 88, 88, 0.6);
  min-width: 1.125rem;
  min-height: 1.125rem;
  top: 0.225rem;
  position: relative;
}
input[type=checkbox]:checked {
  background: linear-gradient(180deg, #e2863c 0%, #d74532 100%);
  border: none;
}
input[type=checkbox]:checked::before {
  display: block;
}
input[type=checkbox]::before {
  position: absolute;
  content: url("../../../icons/checked.svg");
  line-height: 0;
  width: 70%;
  height: 70%;
  top: 60%;
  left: 50%;
  font-size: 1rem;
  transform: translate(-50%, -50%);
  display: none;
}

.search-input {
  position: relative;
}
.search-input input {
  padding: 0.5rem 2.5rem 0.5rem 0.75rem;
}
.search-input button {
  position: absolute;
  top: 50%;
  top: 50%;
  right: -1%;
  transform: translate(-50%, -50%);
}

.modal {
  position: fixed;
  width: 100%;
  height: 100vh;
  top: 0;
  z-index: 40;
  display: none;
  transform: translateY(120%);
  background: rgba(0, 0, 0, 0.65);
  justify-content: center;
  align-items: center;
}

::-webkit-scrollbar {
  width: 14px;
}

::-webkit-scrollbar-track {
  background: #f1f1f1;
}

::-webkit-scrollbar-thumb {
  background: #888;
}

::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.tire-attribute img {
  width: 2.1875rem;
  height: 2.1875rem;
  margin: 0 auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.tire-attribute p {
  margin-top: 0.25rem;
  line-height: 1.1;
  text-align: center;
}

.product-quantity {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.25rem;
  border-radius: 0.25rem;
  padding: 0 1.5rem;
  border: 1px solid rgb(229, 231, 235);
}
.product-quantity input[type=number] {
  width: 100%;
  text-align: center;
}
.product-quantity button {
  font-size: 1.5rem;
}

.promotion-badge {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.promotion-badge::before {
  position: absolute;
  content: "promotions";
  display: flex;
  padding-bottom: 4px;
  align-items: flex-end;
  justify-content: center;
  rotate: -45deg;
  width: 105px;
  height: 105px;
  top: -52px;
  left: -52px;
  color: #fff;
  font-weight: medium;
  font-size: 0.75rem;
  background: linear-gradient(180deg, #e2863c 0%, #d74532 100%);
}

aside#filter {
  flex: 1;
  position: sticky;
  top: 5.25rem;
  height: 100vh;
}
@media (min-width: 1281px) {
  aside#filter {
    transition: 0;
    transform: translateX(0) !important;
  }
}
@media (max-width: 1280px) {
  aside#filter {
    position: fixed;
    flex: auto;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 40;
    background: rgba(0, 0, 0, 0.6);
    transform: translateX(-120%);
    display: flex;
  }
}
aside#filter .filter-content {
  position: relative;
  overflow-y: scroll;
  padding-bottom: 5rem;
  height: 100vh;
  background: #fff;
}
@media (max-width: 1280px) {
  aside#filter .filter-content {
    padding: 0 1rem 15vh 1rem;
    width: 100%;
    max-width: 20rem;
  }
}

.product-spec-table {
  border: 1px solid #e2e2e2;
  height: -moz-fit-content;
  height: fit-content;
}
.product-spec-table .spec-table-head {
  background: linear-gradient(180deg, rgb(88, 89, 90) 0%, rgb(18, 18, 18) 100%);
  color: #fff;
  font-weight: 500;
  font-size: 1.125rem;
  padding: 0.625rem 1rem;
}
.product-spec-table div {
  padding: 0.5rem 1rem;
}
.product-spec-table div:not(.spec-table-head) {
  display: flex;
  justify-content: space-between;
}
.product-spec-table div:not(.spec-table-head):not(.product-spec-table div:not(.spec-table-head):last-of-type) {
  border-bottom: 1px solid #e2e2e2;
}
.product-spec-table div:not(.spec-table-head):nth-of-type(2n - 1) {
  background: #f4f4f4;
}

.table-wrapper table {
  border: 1px solid #e2e2e2;
}
.table-wrapper table tr th {
  background: linear-gradient(180deg, #e2863c 0%, #d74532 100%);
  color: white;
}
.table-wrapper table tr td {
  text-align: center;
  border: 1px solid #e2e2e2;
}/*# sourceMappingURL=products.css.map */