@font-face {
   font-family: 'Inter Regular';
   src: url('/fonts/Inter-Regular.ttf');
}

@font-face {
   font-family: 'Inter Medium';
   src: url('/fonts/Inter-Medium.ttf');
}

@font-face {
   font-family: 'Inter Bold';
   src: url('/fonts/Inter-Bold.ttf');
}

@font-face {
   font-family: 'Inter SemiBold';
   src: url('/fonts/Inter-SemiBold.ttf');
}

@font-face {
   font-family: 'Inter Black';
   src: url('/fonts/Inter-Black.ttf');
}

@font-face {
   font-family: 'Mazzard Bold';
   src: url('/fonts/MazzardSoftM-Bold.otf');
}

* {
   font-size: 15px;
   margin: 0;
   padding: 0;
   box-sizing: border-box;
   font-family: 'Inter Regular', 'Segoe UI', Verdana, sans-serif;
}

body {
   --app-primary: #000CFF;
   --app-accent: #183153;
   --app-light: #FFFFFF;
   --app-orange: #FF6000;
   --app-grey: #C4C4C4;
   --app-sale: #FF2300;
   --app-yellow: #FFBF2A;
   --app-sky: #009FFF;
   --app-unavailable: #707070;
   --app-moss: #3C9C49;

   /* background-color: #F8FAFC !important; */
}

/* Utilities */
.container-base {
   margin-inline: auto;
   padding-inline: 0.5rem;
   width: 100%;
}

.-fs-1 {
   font-size: 0.85rem;
}

.-fs-2 {
   font-size: 0.75rem;
}

.-fs-3 {
   font-size: 0.67rem;
}

.-fs-4 {
   font-size: 0.5rem;
}

.-fs-5 {
   font-size: 0.33rem;
}

.-fs-6 {
   font-size: 0.25rem;
}

.w-fit {
   width: fit-content;
}

.overflow-x-hidden {
   overflow-x: hidden;
}

.fw-inter-regular {
   font-family: 'Inter Regular', 'Segoe UI', Verdana, sans-serif;
   font-weight: 500;
}

.fw-inter-bold {
   font-family: 'Inter Bold', 'Segoe UI', Verdana, sans-serif;
   font-weight: 700;
}

.fw-inter-semibold {
   font-family: 'Inter SemiBold', 'Segoe UI', Verdana, sans-serif;
   font-weight: 600;
}

.fw-inter-black {
   font-family: 'Inter Black', 'Segoe UI', Verdana, sans-serif;
   font-weight: 900;
}

.fw-mazzard-bold {
   font-family: 'Mazzard Bold', 'Inter Bold', 'Segoe UI', Verdana, sans-serif;
   font-weight: 700;
}

.text-app-primary {
   color: var(--app-primary) !important;
}

.text-hover-app-primary:hover {
   color: var(--app-primary) !important;
}

.bg-app-primary {
   background-color: var(--app-primary);
}

.border-app-primary {
   border-color: var(--app-primary) !important;
}

.bg-hover-app-primary:hover {
   background-color: var(--app-primary) !important;
}

.placeholder-app-primary::placeholder {
   color: var(--app-primary) !important;
}

.text-app-accent {
   color: var(--app-accent);
}

.text-hover-app-accent:hover {
   color: var(--app-accent) !important;
}

.bg-app-accent {
   background-color: var(--app-accent);
}

.border-app-accent {
   border-color: var(--app-accent) !important;
}

.placeholder-app-accent::placeholder {
   color: var(--app-accent) !important;
}

.text-app-light {
   color: var(--app-light);
}

.text-hover-app-light:hover {
   color: var(--app-light) !important;
}

.bg-app-light {
   background-color: var(--app-light);
}

.border-app-light {
   border-color: var(--app-light) !important;
}

.bg-hover-app-light:hover {
   background-color: var(--app-light) !important;
}

.placeholder-app-light::placeholder {
   color: var(--app-light) !important;
}

.text-app-grey {
   color: var(--app-grey);
}

.bg-app-grey {
   background-color: var(--app-grey) !important;
}

.bg-app-slider {
   background-color: #DCE3EB !important;
}

.text-app-orange {
   color: var(--app-orange);
}

.bg-app-orange {
   background-color: var(--app-orange) !important;
}

.border-app-orange {
   border-color: var(--app-orange) !important;
}

.text-app-sky {
   color: var(--app-sky);
}

.bg-app-sky {
   background-color: var(--app-sky) !important;
}

.text-app-sale {
   color: var(--app-sale);
}

.bg-app-sale {
   background-color: var(--app-sale) !important;
}

.text-app-unavailable {
   color: var(--app-unavailable);
}

.bg-app-unavailable {
   background-color: var(--app-unavailable) !important;
}

.border-app-unavailable {
   border-color: var(--app-unavailable) !important;
}

.text-app-yellow {
   color: var(--app-yellow);
}

.bg-app-yellow {
   background-color: var(--app-yellow) !important;
}

.text-app-moss {
   color: var(--app-moss);
}

.bg-app-moss {
   background-color: var(--app-moss) !important;
}

.bg-focus-transparent:hover {
   background-color: transparent !important;
}

.object-cover {
   object-fit: cover;
}

.object-contain {
   object-fit: contain;
}

.object-center {
   object-position: center;
}

.flex-basis-10 {
   flex-basis: 10% !important;
}

.flex-basis-20 {
   flex-basis: 20% !important;
}

.flex-basis-25 {
   flex-basis: 25% !important
}

.flex-basis-33 {
   flex-basis: 33.33% !important
}

.flex-basis-50 {
   flex-basis: 50% !important
}

.flex-basis-67 {
   flex-basis: 67.67% !important
}

.flex-basis-75 {
   flex-basis: 75% !important
}

.flex-basis-80 {
   flex-basis: 80% !important
}

.flex-basis-100 {
   flex-basis: 100% !important
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
   .flex-basis-md-10 {
      flex-basis: 10% !important;
   }
   
   .flex-basis-md-20 {
      flex-basis: 20% !important;
   }
   
   .flex-basis-md-25 {
      flex-basis: 25% !important
   }
   
   .flex-basis-md-33 {
      flex-basis: 33.33% !important
   }
   
   .flex-basis-md-50 {
      flex-basis: 50% !important
   }
   
   .flex-basis-md-67 {
      flex-basis: 67.67% !important
   }
   
   .flex-basis-md-75 {
      flex-basis: 75% !important
   }
   
   .flex-basis-md-80 {
      flex-basis: 80% !important
   }
   
   .flex-basis-md-100 {
      flex-basis: 100% !important
   }
}

@media only screen and (min-width: 992px) {
   .flex-basis-lg-10 {
      flex-basis: 10% !important;
   }
   
   .flex-basis-lg-20 {
      flex-basis: 20% !important;
   }
   
   .flex-basis-lg-25 {
      flex-basis: 25% !important
   }
   
   .flex-basis-lg-33 {
      flex-basis: 33.33% !important
   }
   
   .flex-basis-lg-50 {
      flex-basis: 50% !important
   }
   
   .flex-basis-lg-67 {
      flex-basis: 67.67% !important
   }
   
   .flex-basis-lg-75 {
      flex-basis: 75% !important
   }
   
   .flex-basis-lg-80 {
      flex-basis: 80% !important
   }
   
   .flex-basis-lg-100 {
      flex-basis: 100% !important
   }
}

.transition-base {
   transition: all;
   transition-timing-function: ease-in-out;
   transition-duration: 0.33s;
}

.border-dashed {
   border-style: dashed !important;
}

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

.biline-clamp {
   line-height: 1.15em;
   max-height: 2.3em;
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 2;
   overflow: hidden;
}

.triline-clamp {
   line-height: 1.15em;
   max-height: 3.45em;
   display: -webkit-box;
   -webkit-box-orient: vertical;
   -webkit-line-clamp: 3;
   overflow: hidden;
}

#header-wrapper {
   /* position: sticky;
   top: 0;
   inset-inline: 0; */
   width: 100%;
   height: fit-content;
   z-index: 1000;
}

#promotional {
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   column-gap: 1rem;
   background-color: var(--app-primary);
   width: 100%;
   height: fit-content;
}

#promotional * {
   color: var(--app-light);
   text-transform: uppercase;
}

#promotional p {
   text-align: center;
}

#promotional *:first-child {
   display: none;
}

#promotional *:last-child {
   margin-top: 0.75rem;
}

#promotional #shop-now {
   color: var(--app-primary);
   font-family: 'Inter Bold', 'Segoe UI', Verdana, sans-serif;
   font-weight: 700;
   background-color: var(--app-light);
   border: 1px solid var(--app-light);
   border-radius: 2.5px;
   transition: all;
   transform-origin: center;
   transition-duration: 0.33s;
   transition-timing-function: ease-in-out;
}

#promotional #shop-now:hover {
   color: var(--app-light);
   background-color: var(--app-primary);
   border-color: var(--app-light);
}

#navbar {
   background-color: var(--app-light);
   border-bottom: 5px solid var(--app-primary);
}

#navbar > #navbar-sm {
   display: flex;
   justify-content: space-between;
   align-items: center;
   column-gap: 5rem;
}

#navbar > #navbar-sm #company-logo {
   width: 150px;
   height: 30px;
   object-fit: contain;
}

#navbar > #navbar-lg #company-logo {
   width: 300px;
   height: 60px;
   object-fit: contain;
}

.navbar-dropdown-container>.dropdown-item>a:active .navbar-dropdown-container>.dropdown-item{
   background-color: pink!important;
}


.dropdown-item:hover,.dropdown-item:active,.dropdown-item:focus{
   background-color: var(--app-primary)!important;
}

.dropdown-item:hover a,.dropdown-item:active a,.dropdown-item:focus a{
   color:white!important;
}

#navbar > #navbar-lg {
   display: none;
}

#links, #navbar > #navbar-lg #misc {
   background-color: white;
   margin-inline: auto;
   padding-inline: 20%;
   width: 100%;
}

#navbar > #navbar-lg #misc {
   border-bottom: 1px solid var(--app-grey);
}

#navbar > #navbar-lg #misc #socials {
   display: flex;
   align-items: center;
   column-gap: 0.5rem;
}

#navbar > #navbar-lg #misc #socials * {
   color: var(--app-accent);
   font-size: 0.85rem;
   text-decoration: none;
}

#navbar > #navbar-lg #misc #func {
   display: flex;
   justify-content: space-between;
   align-items: center;
   column-gap: 5rem;
   margin-top: 1rem;
}

#navbar > #navbar-lg #misc #func #company-logo {
   width: 300px;
}

#navbar > #navbar-lg #misc #func #search {
   position: relative;
   flex-grow: 1;
}

#navbar > #navbar-lg #misc #func #search #search-bar {
   border: 2px solid var(--app-accent);
   padding-left: 1rem;
   padding-right: 3rem;
}

#navbar > #navbar-lg #misc #func #search #search-bar::placeholder {
   color: var(--app-accent);
}

#navbar > #navbar-lg #misc #func #search #search-btn {
   position: absolute;
   top: 50%;
   right: 0.20rem;
   background-color: transparent;
   border: none;
   border-left: 1px solid var(--app-accent);
   transform: translateY(-50%);
}

#navbar > #navbar-lg #misc #func #notifs {
   display: flex;
   align-items: center;
   column-gap: 1rem;
}

#navbar > #navbar-lg #misc #func #notifs > .notif-btn {
   background-color: transparent;
   border: none;
}

#navbar > #navbar-lg #misc #func #notifs > .notif-btn .notif-badge {
   background-color: var(--app-primary);
}

#links .link-group {
   display: flex;
   justify-content: start;
   align-items: center;
   column-gap: 3rem;
}

#links .link-item {
   color: var(--app-accent);
   text-decoration: none;
   text-transform: uppercase;
   font-family: 'Inter Bold', 'Segoe UI', Verdana, sans-serif;
   font-weight: 700;
}

.link-item-2.active,
#links .link-item.active, .link-item:hover {
   color: var(--app-orange) !important;
}

#links {
   display: none;
}

@media screen and (min-width: 992px) {
   #promotional {
      flex-direction: row;
   }

   #promotional *:first-child {
      display: inline-flex;
   }

   #promotional *:last-child {
      margin-top: 0;
   }

   #links {
      display: flex;
      position: sticky;
      top: 0;
      justify-content: space-between;
      align-items: center;
      background-color: white;
   }

   #navbar > #navbar-sm {
      display: none;
   }

   #navbar > #navbar-lg {
      display: block;
   }

   .container-base {
      margin-inline: auto;
      padding-inline: 20%;
      width: 100%;
   }
}

.select2-container--bootstrap .select2-selection {
   background-color: transparent;
   border: 1px solid #ccc;
   border-radius: 5px;
   color: #555555;
   font-size: 14px;
   outline: 0;
   position: relative;
   z-index: 2;
   width: 100% !important;
 }
 
 select + .select2-container {
   width: 100% !important;
 }
 
 .select2-container--bootstrap .select2-search--dropdown .select2-search__field {
   -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
   background-color: #fff;
   border: 1px solid #ced4da;
   border-radius: 5px;
   color: #555555;
   font-size: 14px;
 }
 
 .select2-container--bootstrap .select2-search__field {
   outline: 0;
 
 }
 
 .select2-container--bootstrap .select2-search__field::-webkit-input-placeholder {
   color: #999;
 }
 
 .select2-container--bootstrap .select2-search__field:-moz-placeholder {
   color: #999;
 }
 
 .select2-container--bootstrap .select2-search__field::-moz-placeholder {
   color: #999;
   opacity: 1;
 }
 
 .select2-container--bootstrap .select2-search__field:-ms-input-placeholder {
   color: #999;
 }
 
 .select2-container--bootstrap .select2-results__option {
   padding: 5px;
 }
 
 .select2-container--bootstrap .select2-results__option[role=group] {
   padding: 0;
 }
 
 .select2-container--bootstrap .select2-results__option[aria-disabled=true] {
   color: #777777;
   cursor: not-allowed;
 }
 
 .select2-container--bootstrap .select2-results__option[aria-selected=true] {
   background-color: #f5f5f5;
   color: #262626;
   
 }
 .select2-results__options {
   max-height: 330px;
   overflow-y: auto;
 }
 
 .select2-container--bootstrap .select2-results__group {
   color: #777777;
   display: block;
   padding: 5px;
   font-size: 12px;
   line-height: 1.42857143;
   white-space: nowrap;
   
 }
 .select2-container--bootstrap .select2-selection--single {
   height: 33.5px;
   line-height: 1.42857143;
   padding: 5px;
 }
   .sidebar-tab:hover,
   .sidebar-tab:focus,
   .sidebar-tab.active {
      outline: 1px solid var(--app-primary) !important;
      border: none;
      border-radius: 0;
      background-color: var(--app-primary);
      color: var(--app-light);
   }

   .offcanvas {
      overflow-y: auto;
   }

   .offcanvas::-webkit-scrollbar {
      width: 5px;
   }

   .offcanvas::-webkit-scrollbar-thumb {
      background: var(--app-primary);
      opacity: 0.75;
      border-radius: 10px;
   }

   .offcanvas::-webkit-scrollbar-thumb:hover {
      background: var(--app-primary);
      opacity: 0.5;
   }


.inc-dec-btn {
   transition: all;
   transition-duration: 300ms;
   transition-timing-function: ease-in-out;
   color: #717D92;
   background-color: #E9E9E9;
   border: none;
   padding-inline: 1.5px;
   padding-block: 0.5px;
}

.inc-dec-btn:hover {
   color: white;
   background-color: #717D92 !important;
}

.inc-dec-btn.inc-btn {
   border-top-right-radius: 2.5px; 
   border-bottom-right-radius: 2.5px;
}

.inc-dec-btn.dec-btn {
   border-top-left-radius: 2.5px;
   border-bottom-left-radius: 2.5px;
}

.inc-dec-qty {
   color: #717D92;
   padding-inline: 1ch;
}

.prod-card-add-cart-btn:disabled {
   background-color: #EBEBE4;
   color: #FFF;
}