@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Comfortaa:wght@300;400;500;600;700&family=Quicksand:wght@300;400;500;600;700&display=swap");
/* ======================== */
/* ROOT VARIABLES */
/* ======================== */
:root {
  --skin-layout-title-font: "Quicksand", sans-serif;
  --skin-layout-text-font: "Comfortaa", sans-serif;
  --skin-layout-special-font: "Quicksand", sans-serif;
  --skin-layout-bg-color: #ffffff;
  --skin-layout-text-color: #1C1917;
  --skin-layout-title-color: #1C1917;
  --skin-layout-color-brand: #EF9B2C;
  --skin-layout-color-text-default: #1C1C1C;
  --skin-layout-color-text-sub2: #999EA8;
  --skin-layout-color-text-sub: #B1B7C3;
  --skin-layout-color-text-remove: #ea0202;
  --skin-layout-color-text-error: #ea0202;
  --skin-layout-btn-color-bg-primary: #292524;
  --skin-layout-btn-color-text-primary: #fff;
  --skin-layout-btn-color-bg-secondary: #EF9B2C;
  --skin-layout-btn-color-text-secondary: #292524;
  --skin-layout-btn-border-radius: 19px;
  --skin-layout-input-color-bg: #fff;
  --skin-layout-input-color-text: #171722;
  --skin-layout-input-color-border: #B1B7C3;
  --skin-layout-border-color: #B1B7C3;
  --skin-layout-border-radius: 10px;
  --skin-layout-font-size-header: 20px;
  --skin-layout-font-size-heading: 14px;
  --skin-layout-font-size-text: 13px;
  --skin-layout-font-size-sub-text: 12px;
  --skin-space-unit: 16px;
  --skin-space-20: calc(var(--skin-space-unit)*1.25);
  --skin-space-24: calc(var(--skin-space-unit)*1.5);
  --skin-space-30: calc(var(--skin-space-unit)*1.875);
  --skin-space-36: calc(var(--skin-space-unit)*2.25);
  --skin-space-40: calc(var(--skin-space-unit)*2.5);
  --skin-space-50: calc(var(--skin-space-unit)*3.125);
  --skin-space-60: calc(var(--skin-space-unit)*3.75);
  --skin-space-72: calc(var(--skin-space-unit)*4.5);
  --skin-space-80: calc(var(--skin-space-unit)*5);
  --skin-space-100: calc(var(--skin-space-unit)*6.25);
  --skin-layout-notification-success-bg-color: #d4edda;
  --skin-layout-notification-success-text-color: #155724;
  --skin-layout-notification-success-border-color: #c3e6cb;
  --skin-layout-notification-error-bg-color: #f8d7da;
  --skin-layout-notification-error-text-color: #721c24;
  --skin-layout-notification-error-border-color: #f5c6cb;
  --skin-layout-notification-warning-bg-color: #fff3cd;
  --skin-layout-notification-warning-text-color: #856404;
  --skin-layout-notification-warning-border-color: #ffeeba;
  --skin-layout-notification-info-bg-color: #121F36;
  --skin-layout-notification-info-text-color: #ffffff;
  --skin-layout-notification-info-border-color: #bee5eb;
  --skin-layout-notification-neutral-bg-color: #FFFFFF;
  --skin-layout-notification-neutral-text-color: #383d41;
  --skin-layout-notification-neutral-border-color: #d6d8db;
  --skin-layout-notification-toast-bg-color: #333333;
  --skin-layout-notification-toast-text-color: #ffffff;
  --skin-layout-notification-toast-border-color: #434343;
  --spacing-small: 5px;
  --spacing: 10px;
  --row-gap: 10px;
  --col-gap: 10px; }

html {
  -webkit-overflow-scrolling: touch;
  -webkit-text-size-adjust: none;
  -ms-text-size-adjust: 100%;
  line-height: 1.5;
  font-size: 1rem; }

body, html {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
  position: relative; }

body {
  background-color: #fff;
  color: var(--skin-layout-text-color);
  font-family: var(--skin-layout-text-font);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5; }
  @media (min-width: 1024px) {
    body {
      font-size: 1rem; } }

* {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

:after, :before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box; }

/* 1.1 - HTML5 Elements */
article, aside, details, figcaption, figure, dialog, footer, header, hgroup, menu, nav, section {
  display: block; }

/* 1.2 - Typography */
h1, h2, h3, h4, h5, h6 {
  color: var(--skin-layout-title-color);
  font-family: var(--skin-layout-title-font);
  margin: 0 0 10px 0;
  font-weight: 700;
  line-height: 1.3; }

h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: var(--skin-layout-title-color); }

/* 1.3 - Links  */
a {
  color: var(--skin-layout-text-color);
  text-decoration: none;
  outline: none;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out; }
  a:hover, a:focus {
    color: var(--skin-layout-text-color);
    text-decoration: none;
    outline: none; }
  a:active {
    outline: none; }

.a-link {
  text-decoration: underline !important; }

strong {
  font-weight: 700; }

em {
  font-style: italic; }

/* 1.4 - Lists */
ul, ol {
  padding: 0;
  margin: 0;
  list-style-type: none; }

.typeList-style * {
  max-width: 100% !important; }

.typeList-style ul {
  list-style: initial;
  padding-left: 20px; }

.typeList-style ol {
  list-style-type: decimal;
  padding-left: 20px; }

.typeList-style ul ul {
  list-style-type: circle; }

.typeList-style ul ul ul {
  list-style-type: square; }

.typeList-style ul li, .typeList-style ol li {
  margin: 5px 0; }

.content-style-list {
  line-height: 1.2; }
  .content-style-list h3:not(.product-loop--name), .content-style-list h3:not(.product-loop--name) * {
    font-size: 20px !important;
    margin: 0 !important; }
  .content-style-list a[href]:not(.product-loop--link), .content-style-list a[href]:not(.product-loop--link) * {
    color: #007bff; }
  .content-style-list th {
    font-weight: bold;
    text-align: center; }
  .content-style-list caption {
    text-align: center; }
  .content-style-list h1 {
    font-size: 2em;
    margin: .67em 0; }
  .content-style-list h2 {
    font-size: 1.5em;
    margin: .75em 0; }
  .content-style-list h3 {
    font-size: 1.17em;
    margin: .83em 0; }
  .content-style-list h4, .content-style-list p,
  .content-style-list blockquote, .content-style-list ul,
  .content-style-list fieldset, .content-style-list form,
  .content-style-list ol, .content-style-list dl, .content-style-list dir,
  .content-style-list menu {
    margin: 0 0 1.12em; }
  .content-style-list p:last-child {
    margin: 0; }
  .content-style-list h5 {
    font-size: .83em;
    margin: 1.5em 0; }
  .content-style-list h6 {
    font-size: .75em;
    margin: 1.67em 0; }
  .content-style-list h1, .content-style-list h2, .content-style-list h3, .content-style-list h4,
  .content-style-list h5, .content-style-list h6, .content-style-list b,
  .content-style-list strong {
    font-weight: bold; }
  .content-style-list blockquote {
    display: block;
    margin-block-start: 1em;
    margin-block-end: 1em;
    margin-inline-start: 40px;
    margin-inline-end: 40px;
    font-style: italic;
    padding: 2px 0;
    border-style: solid;
    border-color: #ccc;
    border-width: 0;
    padding-left: 20px;
    padding-right: 8px;
    border-left-width: 5px; }
  .content-style-list i, .content-style-list cite, .content-style-list em,
  .content-style-list var, .content-style-list address {
    font-style: italic; }
  .content-style-list pre, .content-style-list tt, .content-style-list code,
  .content-style-list kbd, .content-style-list samp {
    font-family: monospace; }
  .content-style-list pre {
    white-space: pre; }
  .content-style-list big {
    font-size: 1.17em; }
  .content-style-list small, .content-style-list sub, .content-style-list sup {
    font-size: .83em; }
  .content-style-list sub {
    vertical-align: sub; }
  .content-style-list sup {
    vertical-align: super; }
  .content-style-list table {
    border-spacing: 2px; }
  .content-style-list thead, .content-style-list tbody,
  .content-style-list tfoot {
    vertical-align: middle; }
  .content-style-list td, .content-style-list th, .content-style-list tr {
    vertical-align: inherit; }
  .content-style-list s, .content-style-list strike, .content-style-list del {
    text-decoration: line-through; }
  .content-style-list hr {
    border: 1px inset; }
  .content-style-list ol, .content-style-list ul, .content-style-list dir,
  .content-style-list menu, .content-style-list dd {
    margin-left: 40px; }
  .content-style-list ol {
    list-style-type: decimal; }
  .content-style-list ul {
    list-style-type: disc; }
  .content-style-list ol ul, .content-style-list ul ol,
  .content-style-list ul ul, .content-style-list ol ol {
    margin-top: 0;
    margin-bottom: 0; }
  .content-style-list figure {
    margin: 1em 40px; }

/* 1.5 - form */
input[type='text'], input[type='email'], input[type='tel'], input[type='password'], .input {
  -moz-appearance: none;
  /* Firefox */
  -webkit-appearance: none;
  /* Safari and Chrome */
  appearance: none; }

input[type=date].form-control, input[type=time].form-control, input[type=datetime-local].form-control, input[type=month].form-control {
  -moz-appearance: none;
  appearance: none; }

input[placeholder] {
  text-overflow: ellipsis; }

input:required {
  box-shadow: none; }

textarea {
  resize: none; }

button {
  outline: none !important; }

.form-control {
  -ms-flex: 0 0 auto !important;
  flex: 0 0 auto !important;
  display: block;
  width: 100%;
  height: 45px;
  padding: 6px 0;
  font-size: 12px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--skin-layout-input-color-text);
  background: var(--skin-layout-input-color-bg);
  background-clip: padding-box;
  border: none;
  border-bottom: 1px solid #000;
  border-radius: 0px !important;
  transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
  /*
	&.is-invalid, &:invalid {
	border-color: #d91f46;
	padding-right: calc(1.5em + 0.75rem) !important;
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23d91f46' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23d91f46' stroke='none'/%3e%3c/svg%3e");
	background-repeat: no-repeat;
	background-position: right calc(0.375em + 0.1875rem) center;
	background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
	&:focus {
	border-color: #d91f46!important;
	box-shadow: 0 0 0 .2rem rgba(217,31,70,.25);
	}
		&~.invalid-feedback {display: block;}
	}
	&:autofill, &:valid  {background: #F9FAFB;}
	*/ }
  .form-control::-ms-expand {
    background-color: transparent;
    border: 0; }
  .form-control:focus {
    color: #27251f;
    background-color: #fff;
    border-color: #27251f;
    outline: 0;
    box-shadow: none; }
  .form-control:-ms-input-placeholder {
    color: #949494;
    opacity: 1; }
  .form-control::placeholder {
    color: #949494;
    opacity: 1; }
  .form-control:disabled, .form-control[readonly] {
    background-color: #e9ecef;
    opacity: 1; }
  .form-control.warming {
    border-bottom: 1px solid red; }
  @media (min-width: 992px) {
    .form-control {
      font-size: 14px; } }

.form-check-input.is-invalid ~ .form-check-label {
  color: #d91f46; }

.form-check-input.is-invalid ~ .invalid-feedback {
  display: block; }

.form-group {
  margin-bottom: 20px;
  position: relative; }
  .form-group select.form-control:-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #27251f; }
  .form-group select.form-control:focus::-ms-value {
    color: #27251f;
    background-color: #fff; }
  .form-group select.form-control[size], .form-group select.form-control[multiple] {
    height: auto; }
  .form-group select.form-control.is-invalid {
    padding-right: 3rem !important;
    background-position: right 1.5rem center; }
  .form-group textarea.form-control {
    height: auto; }
    .form-group textarea.form-control.is-invalid {
      padding-right: calc(1.5em + 0.75rem);
      background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem); }
  .form-group .invalid-feedback {
    display: none;
    width: 100%;
    margin-top: .25rem;
    font-size: 0.625rem;
    color: #d91f46; }
  .form-group.input-group {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-align: stretch;
    align-items: stretch;
    width: 100%; }
    .form-group.input-group > label {
      color: #71706c;
      font-size: .625rem;
      height: 1rem;
      left: 1.25rem;
      margin: .375rem 0;
      position: absolute;
      z-index: 5;
      display: none; }
    .form-group.input-group > .form-control,
    .form-group.input-group > .form-control-plaintext,
    .form-group.input-group > .custom-select,
    .form-group.input-group > .custom-file {
      position: relative;
      -ms-flex: 1 1 auto;
      flex: 1 1 auto;
      width: 100%;
      min-width: 0;
      margin-bottom: 0; }
    .form-group.input-group.required .form-control-label::after {
      color: #71706c;
      content: "*";
      padding-left: 2px; }
    .form-group.input-group.required .form-control-label::before {
      content: ""; }
  .form-group.check-group label[for*='radio'] {
    margin-bottom: 0;
    margin: 0 20px 0 4px;
    font-size: 12px; }
  .form-group.check-group input[name="gender"] {
    margin-top: 0;
    vertical-align: top;
    width: 14px;
    height: 14px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    cursor: pointer;
    outline: 0 !important; }
    .form-group.check-group input[name="gender"]:before {
      content: "";
      position: absolute;
      z-index: 1;
      left: -1px;
      right: 0;
      bottom: 0;
      top: 0;
      margin: auto;
      width: 10px;
      height: 10px;
      background: #fff;
      border: 1px solid #fff;
      cursor: pointer;
      border-radius: 50%; }
    .form-group.check-group input[name="gender"]:checked:before {
      background: var(--skin-primary-color-1);
      border-color: var(--skin-primary-color-1); }
    .form-group.check-group input[name="gender"]:after {
      content: "";
      position: absolute;
      left: -1px;
      right: 0;
      bottom: 0;
      top: 0;
      margin: auto;
      width: 14px;
      height: 14px;
      background: #fff;
      border: 1px solid #777777;
      cursor: pointer;
      border-radius: 50%; }
    .form-group.check-group input[name="gender"]:checked:after {
      border-color: var(--skin-primary-color-1); }

.password-mask {
  background-color: #fff;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  height: 40px;
  z-index: 3; }
  .password-mask:focus {
    outline: 0; }
  .password-mask.hide .icon-eye-hide,
  .password-mask.hide .icon--eye-show {
    display: none; }
  .password-mask .icon--eye-hide, .password-mask .icon--eye-show {
    fill: #71706c;
    width: 20px;
    height: 20px; }

.password-forgot {
  font-size: 12px;
  padding-top: 4px;
  display: flex;
  justify-content: flex-end; }
  .password-forgot a {
    text-decoration: underline;
    vertical-align: middle; }

/* 1.6 - Img */
img {
  max-width: 100%;
  -webkit-user-drag: none;
  user-drag: none;
  -webkit-touch-callout: none; }

/* 1.7 - Button */
.btn-link {
  color: var(--skin-layout-color-brand);
  display: inline-flex;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 12px;
  font-weight: 400;
  height: auto;
  padding: 0;
  border: none;
  background: none;
  position: relative;
  -webkit-transition: all .15s ease-in-out;
  transition: all .15s ease-in-out; }
  .btn-link.has-icon {
    gap: 8px;
    align-items: center; }
  .btn-link:hover {
    color: var(--skin-layout-color-brand); }
  @media (min-width: 768px) {
    .btn-link {
      font-size: 14px; } }

.btn {
  height: 40px;
  color: var(--skin-layout-btn-color-text-primary);
  border: 1px solid var(--skin-layout-btn-color-bg-primary);
  background: var(--skin-layout-btn-color-bg-primary);
  border-radius: 2px;
  box-shadow: none !important;
  outline: none !important;
  font-size: 14px;
  font-weight: 500;
  position: relative;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 20px;
  letter-spacing: -0.2px;
  transition: all .4s; }
  .btn.has-svg {
    gap: 8px; }
    .btn.has-svg svg {
      width: 14px;
      height: 14px;
      position: relative;
      z-index: 2; }
  .btn:hover, .btn:focus {
    color: var(--skin-layout-btn-color-text-primary);
    border: 1px solid var(--skin-layout-btn-color-bg-primary);
    background: var(--skin-layout-btn-color-bg-primary); }
  .btn.btn-primary {
    border: 0px solid var(--skin-layout-btn-color-bg-primary); }
    .btn.btn-primary:before {
      content: "";
      position: absolute;
      height: 0px;
      background: linear-gradient(90deg, #2870FA 0%, #FF2C8F 35%, #EEB22A 70%, #11B5A4 100%, #0C0A09 100%);
      z-index: 1;
      bottom: 0;
      width: 100%;
      transition: all 0.4s; }
    .btn.btn-primary:hover {
      color: var(--skin-layout-btn-color-text-primary);
      border: 0px solid var(--skin-layout-btn-color-bg-primary);
      background: var(--skin-layout-btn-color-bg-primary); }
      .btn.btn-primary:hover:before {
        height: 2px; }
  .btn.btn-second {
    border: 1px solid var(--skin-layout-btn-color-bg-secondary);
    color: var(--skin-layout-btn-color-text-secondary);
    background: var(--skin-layout-btn-color-bg-secondary); }
    .btn.btn-second:hover {
      border: 1px solid var(--skin-layout-btn-color-bg-secondary);
      color: #fff; }
  .btn.btn-third {
    border: 1px solid #D1D5DB;
    color: var(--skin-layout-text-color);
    background: #D1D5DB;
    letter-spacing: -0.1px; }
  .btn.outline-1 {
    border: 1px solid #44403C;
    color: #44403C;
    background: transparent; }
    .btn.outline-1:hover {
      color: #fff;
      background: #44403C; }
  .btn.outline-2 {
    border: 1px solid #000000;
    color: #000000;
    background: transparent; }
    .btn.outline-2:hover {
      color: #fff;
      background: #000000; }
  .btn.btn-icon {
    padding: 0;
    width: 26px;
    height: 26px; }
  .btn.btn-full {
    width: 100%;
    display: flex; }
  @media (min-width: 992px) {
    .btn {
      font-size: 18px;
      padding: 10px 20px;
      height: 50px; } }

/* 1.8 - Swiper */
/* Nav Arrow chung cho tất cả slider */
.nav-arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  padding: 4px;
  border-radius: 9999px;
  border: 1px solid #ededed;
  background: none;
  cursor: pointer;
  transition: background 0.2s;
  flex-shrink: 0;
  outline: none !important; }
  .nav-arrow:hover {
    background: #f5f5f5; }
  .nav-arrow.swiper-button-disabled {
    opacity: 0.3;
    pointer-events: none; }

.nav-arrow__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 9999px;
  background: #fff;
  color: #333; }

.swiper-pagination {
  justify-content: center;
  display: flex;
  align-items: center; }
  .swiper-pagination .swiper-pagination-bullet {
    width: 40px;
    height: 16px;
    background: none !important;
    position: relative; }
    .swiper-pagination .swiper-pagination-bullet:before {
      content: "";
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      margin: auto;
      width: 100%;
      height: 1px;
      background: rgba(255, 255, 255, 0.4);
      border-radius: 1px;
      display: block; }
  .swiper-pagination .swiper-pagination-bullet-active:before {
    background: #FFF; }
  @media (min-width: 992px) {
    .swiper-pagination .swiper-pagination-bullet {
      width: 100px; } }

.swiper-style {
  position: relative; }
  .swiper-style .swiper.swiper-navigation-disabled .swiper-button-prev, .swiper-style .swiper.swiper-navigation-disabled .swiper-button-next {
    display: none !important; }
  .swiper-style .swiper-button {
    color: var(--skin-layout-text-color);
    width: 40px;
    height: 40px;
    cursor: pointer;
    color: currentColor; }
    .swiper-style .swiper-button svg {
      width: 100%;
      height: 100%; }
    .swiper-style .swiper-button.swiper-prev {
      left: 0; }
    .swiper-style .swiper-button.swiper-next {
      right: 0; }
    .swiper-style .swiper-button.swiper-button-disabled {
      opacity: 0.5; }
  .swiper-style .swiper-pagination {
    bottom: 25px; }
  .swiper-style .swiper-scrollbar {
    position: relative;
    margin: auto;
    left: 0;
    bottom: 0;
    width: 50%;
    height: 4px;
    z-index: 6;
    border-radius: 100px;
    background: #F0E7D7; }
    .swiper-style .swiper-scrollbar .swiper-scrollbar-drag {
      background: #44403C;
      border-radius: 0; }
  .swiper-style .swiper-navcontrol.st1 {
    display: flex;
    align-items: center;
    gap: 10px;
    position: relative;
    z-index: 4; }
  .swiper-style .swiper-navcontrol.st2 {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    gap: 10px; }
    @media (min-width: 992px) {
      .swiper-style .swiper-navcontrol.st2 {
        margin-top: 0;
        display: block; }
        .swiper-style .swiper-navcontrol.st2 .swiper-button {
          top: 50%;
          transform: translateY(-50%);
          position: absolute;
          z-index: 4; }
        .swiper-style .swiper-navcontrol.st2 .swiper-button.swiper-prev {
          left: 7.5%; }
        .swiper-style .swiper-navcontrol.st2 .swiper-button.swiper-next {
          right: 7.5%; } }
  .swiper-style .swiper-navcontrol.st3 {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    gap: 10px; }
    @media (min-width: 992px) {
      .swiper-style .swiper-navcontrol.st3 {
        margin-top: 0;
        display: block; }
        .swiper-style .swiper-navcontrol.st3 .swiper-button {
          width: 64px;
          height: 64px;
          padding: 20px 12px;
          top: 50%;
          transform: translateY(-50%);
          position: absolute;
          z-index: 4;
          border-radius: 12px 0 0 12px;
          background: #F0E7D7;
          box-shadow: 0 4px 8px -2px rgba(16, 24, 40, 0.1), 0 2px 4px -2px rgba(16, 24, 40, 0.06); }
        .swiper-style .swiper-navcontrol.st3 .swiper-button.swiper-prev {
          left: 0%;
          border-radius: 0 12px 12px 0; }
        .swiper-style .swiper-navcontrol.st3 .swiper-button.swiper-next {
          right: 0%;
          border-radius: 12px 0 0 12px; } }

/* 1.9 - Layout */
.mainBody-theme-container {
  max-width: 1920px;
  margin: auto; }

.col, .col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-auto, .col-lg, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-auto, .col-md, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-auto, .col-sm, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-auto, .col-xl, .col-xl-1, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-auto {
  padding-right: 16px;
  padding-left: 16px; }

.row {
  margin-left: -16px;
  margin-right: -16px; }

.container, .container-fluid {
  padding-left: 16px;
  padding-right: 16px; }

.container {
  max-width: 1440px; }

@media screen and (min-width: 992px) {
  .container.w-8 {
    padding-left: 140px;
    padding-right: 140px;
    max-width: 80%; }
  .container.w-6 {
    max-width: 60%; } }

@media screen and (min-width: 1600px) {
  .container {
    max-width: 1520px; } }

@media screen and (min-width: 1800px) {
  .container, .container-fluid {
    padding-left: 40px;
    padding-right: 40px; }
  .container {
    max-width: 1520px; } }

/* 1.10 - Anmaiton css3 */
@keyframes bounce {
  from {
    transform: translate3d(0, 0, 0); }
  to {
    transform: translate3d(0, 10px, 0); } }

@keyframes sk-rotate {
  100% {
    transform: rotate(360deg); } }

@keyframes sk-bounce {
  0%, 100% {
    transform: scale(0); }
  50% {
    transform: scale(1); } }

@keyframes load {
  0% {
    transform: rotate(0deg); }
  100% {
    transform: rotate(360deg); } }

@keyframes addedToBag {
  0% {
    background-color: #27251f;
    color: #27251f; }
  10% {
    background-color: #27251f;
    color: #fff; }
  90% {
    background-color: #27251f;
    color: #fff; }
  100% {
    background-color: #27251f;
    color: #27251f; } }

@keyframes check {
  0% {
    border-color: #27251f;
    top: .6em; }
  5% {
    border-color: #fff;
    top: .6em; }
  10% {
    border-color: #fff;
    top: 1.1em; }
  12% {
    border-color: #fff;
    top: .8em; }
  15% {
    border-color: #fff;
    top: 1.1em; }
  90% {
    border-color: #fff;
    top: 1.1em; }
  100% {
    border-color: #27251f;
    top: 1.1em; } }

@keyframes loading {
  100% {
    transform: translateX(100%); } }

@keyframes ShoppingBagModal-fadeIn {
  0% {
    opacity: 0;
    height: 0; }
  to {
    opacity: 1;
    height: auto; } }

@keyframes ShoppingBagModal-fadeOut {
  0% {
    opacity: 1;
    height: auto; }
  to {
    opacity: 0;
    height: 0; } }

@keyframes promo-twinkle {
  0%, 100% {
    opacity: 1;
    transform: scale(1); }
  50% {
    opacity: 0.2;
    transform: scale(0.5); } }

@keyframes promo-pulse {
  0%, 100% {
    transform: scale(1); }
  50% {
    transform: scale(1.08); } }

@keyframes promo-color-shift {
  0%, 100% {
    color: #93817c; }
  50% {
    color: #333333; } }

@keyframes promo-star-pop {
  0% {
    opacity: 0;
    transform: scale(0) rotate(0deg); }
  15% {
    opacity: 1;
    transform: scale(1.8) rotate(90deg); }
  30% {
    opacity: 1;
    transform: scale(1.4) rotate(180deg); }
  70% {
    opacity: 1;
    transform: scale(1.4) rotate(180deg); }
  85% {
    opacity: 0.5;
    transform: scale(1) rotate(270deg); }
  100% {
    opacity: 0;
    transform: scale(0) rotate(360deg); } }

/* 1.11 - Tables */
table {
  width: 100%;
  border-spacing: 0; }

table tr td {
  border-top: 1px solid #dddddd; }

table tr td, table tr th {
  padding: 10px;
  text-align: left; }

table tr td:first-child, table tr th:first-child {
  padding-left: 0px; }

table tr td:last-child, table tr th:last-child {
  padding-right: 0px; }

/*-----------------------------------------------*/
/* GENERAL */
/*-----------------------------------------------*/
/* - Loading  */
.mainLoading {
  position: fixed;
  z-index: 1051;
  text-align: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -webkit-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
  opacity: 0;
  visibility: hidden;
  display: none; }
  .mainLoading .underlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: .5;
    background-color: #000; }
  .mainLoading .spinner {
    position: fixed;
    width: 80px;
    height: 80px;
    text-align: center;
    top: 50%;
    left: 50%;
    margin-top: -40px;
    margin-left: -40px;
    animation: sk-rotate 2s infinite linear; }
  .mainLoading .dot1, .mainLoading .dot2 {
    width: 60%;
    height: 60%;
    display: inline-block;
    position: absolute;
    top: 0;
    background-color: #fff;
    border-radius: 100%;
    animation: sk-bounce 2s infinite ease-in-out; }
  .mainLoading .dot2 {
    top: auto;
    bottom: 0;
    animation-delay: -1s; }
  .mainLoading.active {
    opacity: 1;
    visibility: visible;
    display: block; }

.no-img--loading img {
  visibility: hidden;
  opacity: 0; }

.no-img--loading .aspect-ratio {
  position: relative;
  overflow: hidden;
  padding-bottom: 100%;
  background: #f3f3f3; }
  .no-img--loading .aspect-ratio:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);
    transform: translateX(-100%);
    animation: loading 1.5s infinite;
    z-index: 1;
    top: 0; }

.product-loading .product-block {
  background: transparent;
  height: 100%;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease; }

.product-loading .product-image .lazy-img {
  position: relative;
  width: 100%;
  height: 0;
  flex: 0 0 100%;
  -ms-flex: 0 0 100%;
  padding-bottom: calc(5/4 * 100%);
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease;
  background: #f5f5f5; }

.product-loading .product-detail {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  text-align: center;
  background: transparent;
  -webkit-transition: transform 300ms ease;
  -moz-transition: transform 300ms ease;
  -ms-transition: transform 300ms ease;
  -o-transition: transform 300ms ease;
  transition: transform 300ms ease; }

.product-loading .loading-mask .loading-mask--image {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding: 0; }

.product-loading .loading-mask .loading-mask--detail {
  padding: 10px 0; }

.product-loading .loading-mask .loading-mask--detail .mask-line {
  height: 10px;
  width: 100%;
  border-radius: 8px;
  margin: 4px 0;
  background: #f5f5f5; }

.product-loading .loading-mask .loading-mask--detail .mask-line:nth-child(2) {
  width: 80%;
  background: #f5f5f5; }

.product-loading .loading-mask .loading-mask--detail .mask-line:nth-child(3) {
  width: 65%;
  background: #f5f5f5; }

.product-loading .product-loop-load {
  border: 1px solid #eae8e4;
  margin-left: -1px;
  margin-bottom: -1px; }

.product-loading.feature-loop .product-image .lazy-img {
  padding-bottom: calc(3/4 * 100%); }

.cate-loading .cate-block {
  height: 100%;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  justify-content: space-between;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease; }

.cate-loading .loading-mask .loading-mask--icon {
  position: relative;
  overflow: hidden;
  width: 88px;
  padding: 0;
  margin: 0 auto; }
  @media (min-width: 768px) {
    .cate-loading .loading-mask .loading-mask--icon {
      width: 110px; } }

.cate-loading .loading-mask .mask-line.lazy-img {
  position: relative;
  border-radius: 50%;
  background: #f5f5f5;
  width: 100%;
  height: 100%;
  flex: 0 0 100%;
  -ms-flex: 0 0 100%;
  padding-bottom: 100%;
  -webkit-transition: all 500ms ease;
  -moz-transition: all 500ms ease;
  -ms-transition: all 500ms ease;
  -o-transition: all 500ms ease;
  transition: all 500ms ease; }

.cate-loading .loading-mask .loading-mask--title {
  padding: 10px 4px;
  position: relative;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  text-align: center;
  background: #fff;
  -webkit-transition: transform 300ms ease;
  -moz-transition: transform 300ms ease;
  -ms-transition: transform 300ms ease;
  -o-transition: transform 300ms ease;
  transition: transform 300ms ease; }

.cate-loading .loading-mask .loading-mask--title .mask-line {
  height: 8px;
  width: 100%;
  border-radius: 8px;
  margin: 2px 0;
  background: #f5f5f5; }

.cate-loading .loading-mask .loading-mask--title .mask-line:nth-child(2) {
  width: 80%;
  background: #f5f5f5; }

.line-loading .line-block {
  height: 100%;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
  overflow: hidden;
  -webkit-transition: all 400ms ease;
  -moz-transition: all 400ms ease;
  -ms-transition: all 400ms ease;
  -o-transition: all 400ms ease;
  transition: all 400ms ease; }

.line-loading .loading-mask .loading-mask--title {
  padding: 10px 4px;
  position: relative;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  justify-content: center;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  text-align: center;
  background: #fff;
  border: 1px solid #f5f5f5;
  border-radius: 4px;
  height: 94px;
  -webkit-transition: transform 300ms ease;
  -moz-transition: transform 300ms ease;
  -ms-transition: transform 300ms ease;
  -o-transition: transform 300ms ease;
  transition: transform 300ms ease; }

.line-loading .loading-mask .loading-mask--title .mask-line {
  height: 8px;
  border-radius: 8px;
  margin: 2px 0;
  background: #f5f5f5; }

.line-loading .loading-mask .loading-mask--title .mask-line:nth-child(1) {
  width: 100%; }

.line-loading .loading-mask .loading-mask--title .mask-line:nth-child(2) {
  width: 80%; }

.line-loading .loading-mask .loading-mask--title .mask-line:nth-child(3) {
  width: 60%; }

.line-loading .loading-mask .loading-mask--title .mask-line:nth-child(4) {
  width: 40%; }

/* - Breadcrumb  - Pagination  */
.breadcrumb-wrapper {
  background: transparent;
  padding: 0 0px; }
  .breadcrumb-wrapper .breadcrumb-list {
    overflow: hidden; }
  .breadcrumb-wrapper .breadcrumb-list .breadcrumb-arrows {
    font-size: 12px;
    padding: 20px 0;
    background: transparent;
    border-radius: 0;
    margin: 0;
    list-style: none;
    align-items: center; }
  .breadcrumb-wrapper .breadcrumb-list .breadcrumb-arrows > li {
    display: inline-flex; }
  .breadcrumb-wrapper .breadcrumb-list .breadcrumb-arrows > li strong {
    font-weight: 400;
    color: var(--skin-link-color-2); }
  .breadcrumb-wrapper .breadcrumb-list .breadcrumb-arrows > li a {
    color: #71706c; }
  .breadcrumb-wrapper .breadcrumb-list .breadcrumb-arrows > li + li:before {
    content: "";
    margin: auto 12px;
    align-items: center;
    justify-content: center;
    display: inline-flex;
    width: 1px;
    height: 12px;
    background-color: #000; }
  @media (max-width: 767px) {
    .breadcrumb-wrapper .breadcrumb-list .breadcrumb-arrows {
      padding: 7px 0;
      font-size: 12px;
      flex-wrap: nowrap;
      white-space: nowrap;
      overflow: scroll; }
    .breadcrumb-wrapper .breadcrumb-list .breadcrumb-arrows::-webkit-scrollbar {
      display: none; }
    .breadcrumb-wrapper .breadcrumb-list .breadcrumb-arrows {
      -ms-overflow-style: none;
      scrollbar-width: none; } }

.pagination-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px 26px;
  padding: 32px 0 0; }
  .pagination-wrapper .page-node {
    background: transparent;
    color: #000000;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 0;
    text-decoration: none;
    font-size: 20px; }
    .pagination-wrapper .page-node.next, .pagination-wrapper .page-node.prev {
      border: 1px solid #000;
      border-radius: 100%;
      position: relative;
      width: 32px;
      height: 32px;
      padding: 0;
      transition: border-color 100ms linear; }
      .pagination-wrapper .page-node.next svg, .pagination-wrapper .page-node.prev svg {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        transition: transform 100ms linear; }
      .pagination-wrapper .page-node.next:hover, .pagination-wrapper .page-node.prev:hover {
        border: 1px solid #000000; }
        .pagination-wrapper .page-node.next:hover svg, .pagination-wrapper .page-node.prev:hover svg {
          transform: translate(-50%, -50%) scale(1.3); }
    .pagination-wrapper .page-node.prev {
      transform: rotate(180deg); }
    .pagination-wrapper .page-node.current {
      text-decoration: underline;
      text-underline-offset: .15rem;
      width: 32px;
      height: 32px;
      border-radius: 100%;
      border: 1px solid #EF9B2C;
      background: #EF9B2C;
      color: #fff; }
    .pagination-wrapper .page-node:not(.current):hover {
      text-decoration: underline;
      text-underline-offset: .15rem; }
  @media (min-width: 992px) {
    .pagination-wrapper {
      padding: 64px 0 0; } }

/*-----------------------------------------------*/
/* MODAL */
/*-----------------------------------------------*/
.modal {
  background: rgba(0, 1, 2, 0.35); }
  .modal .modal-content {
    border-radius: 8px;
    padding: 0; }
    .modal .modal-content .modal-header {
      border-radius: 0;
      border-bottom: 1px solid #E5E7EB;
      padding: 12px 24px;
      align-items: center;
      position: relative; }
      .modal .modal-content .modal-header h4 {
        font-size: 18px;
        text-transform: uppercase;
        margin-bottom: 0;
        font-weight: 500; }
      .modal .modal-content .modal-header .close {
        opacity: 1;
        outline: none;
        padding: 0;
        margin: auto;
        color: #2D2A2C;
        width: 44px;
        height: 44px;
        z-index: 1;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0; }
        .modal .modal-content .modal-header .close svg {
          width: 16px;
          height: 16px; }
    .modal .modal-content .modal-body {
      padding: 24px; }
    .modal .modal-content .modal-footer {
      padding: 12px 24px;
      gap: 20px;
      border-top: none; }
      .modal .modal-content .modal-footer button {
        margin: 0; }
  @media (min-width: 544px) {
    .modal .modal-dialog {
      max-width: 730px; }
    .modal .modal-sm {
      max-width: 400px; } }
  @media (min-width: 992px) {
    .modal .modal-content .modal-header h4 {
      font-size: 22px; }
    .modal .modal-sm {
      max-width: 500px; } }
  @media (min-width: 1025px) {
    .modal .modal-lg, .modal .modal-xl {
      max-width: 800px; } }
  @media (min-width: 1200px) {
    .modal .modal-xl {
      max-width: 1140px; } }
  .modal.modal-comingsoon .modal-header {
    padding: 0;
    border: none; }
    .modal.modal-comingsoon .modal-header .close {
      margin: 0; }
  .modal.modal-comingsoon .modal-body {
    padding: 40px 24px 24px; }
    .modal.modal-comingsoon .modal-body h4 {
      font-family: var(--skin-layout-special-font);
      font-weight: 300;
      font-style: italic;
      letter-spacing: -1px;
      text-transform: uppercase;
      margin-bottom: 12px;
      text-align: center; }
  .modal.modal-comingsoon .notify {
    background: linear-gradient(135deg, #d4edda 0%, #c3e6cb 100%);
    color: #155724;
    border-left: 4px solid #28a745;
    padding: 10px 20px;
    font-weight: 500;
    text-align: center; }
  @media (min-width: 992px) {
    .modal.modal-comingsoon .modal-body {
      padding: 40px; } }
  .modal.modal-certify .modal-header {
    padding: 0;
    border: none; }
    .modal.modal-certify .modal-header .close {
      margin: 0; }
  .modal.modal-certify .modal-body {
    padding: 40px 24px 24px; }
    .modal.modal-certify .modal-body h4 {
      color: #1C1917;
      font-size: 20px;
      font-weight: 500;
      letter-spacing: -0.2px;
      margin-bottom: 12px;
      text-align: center;
      text-transform: uppercase; }
  @media (min-width: 992px) {
    .modal.modal-certify .modal-body {
      padding: 40px; } }
  .modal.modal-success .modal-content {
    max-width: 500px;
    margin: auto; }
  .modal.modal-success .modal-header {
    border-bottom: none;
    padding: 0; }
    .modal.modal-success .modal-header h4 {
      font-size: 0; }
    .modal.modal-success .modal-header button {
      position: absolute;
      top: 0;
      right: 0;
      padding: 8px;
      z-index: 2; }
  .modal.modal-success .modal-body {
    padding: 24px 16px 24px;
    display: flex;
    flex-direction: column;
    gap: 16px;
    font-size: 14px; }
    .modal.modal-success .modal-body h4 {
      font-size: 24px; }
  .modal.modal-coupon .tab-coupons .tab-item {
    display: none; }
  .modal.modal-coupon .tab-coupons .tab-item.active {
    display: block; }
  .modal.modal-coupon .box-coupon {
    display: flex;
    flex-direction: column; }
    .modal.modal-coupon .box-coupon > div {
      width: 100%;
      padding: 10px 0; }
    .modal.modal-coupon .box-coupon .box-code {
      display: flex;
      align-items: center; }
      .modal.modal-coupon .box-coupon .box-code span:first-child {
        width: 30%; }
      .modal.modal-coupon .box-coupon .box-code span:last-child {
        width: 70%; }
    .modal.modal-coupon .box-coupon .box-expire {
      background: #fafafa;
      display: flex;
      align-items: center; }
      .modal.modal-coupon .box-coupon .box-expire span:first-child {
        width: 30%; }
      .modal.modal-coupon .box-coupon .box-expire span:last-child {
        width: 70%; }
    .modal.modal-coupon .box-coupon .box-detail ul {
      display: flex;
      flex-direction: column;
      gap: 4px;
      font-size: 13px;
      list-style: disc;
      list-style-position: outside;
      padding-left: 10px; }
    .modal.modal-coupon .box-coupon .box-action {
      padding: 10px 0 0 0; }
      .modal.modal-coupon .box-coupon .box-action .btn-copy {
        color: #fff;
        display: flex;
        padding: 2px 14px 2px 14px;
        justify-content: center;
        align-items: center;
        height: 28px;
        width: 100%;
        border-radius: 30px;
        background: var(--skin-layout-color-brand);
        border: 1px solid var(--skin-layout-color-brand); }
  .modal.modal-coupon .modal-content {
    border-radius: 22px; }
  .modal.modal-coupon .modal-header {
    justify-content: center;
    padding: 10px 40px;
    border-bottom: none;
    border-radius: 20px 20px 0 0;
    background: var(--skin-layout-color-brand); }
    .modal.modal-coupon .modal-header h4 {
      color: #fff;
      font-size: 18px;
      margin: 0; }
    .modal.modal-coupon .modal-header button {
      color: #fff; }
  .modal.modal-coupon .modal-body {
    padding: 0 24px 20px; }
  @media (min-width: 992px) {
    .modal.modal-success .modal-dialog {
      margin-left: auto;
      margin-right: auto;
      max-width: 350px; }
    .modal.modal-coupon .modal-dialog {
      margin-left: auto;
      margin-right: auto;
      max-width: 450px; } }

.modal-backdrop.show {
  opacity: 0 !important; }

.swal2-modal {
  font-size: 14px;
  padding: 24px;
  color: #111; }
  .swal2-modal .swal2-title {
    font-size: 18px;
    text-transform: uppercase;
    margin: 20px 0 12px;
    color: #333; }
  .swal2-modal .swal2-text {
    font-size: 14px; }
  .swal2-modal .swal2-actions {
    flex-direction: row-reverse;
    flex-wrap: nowrap;
    margin-top: 24px;
    width: 100%; }
    .swal2-modal .swal2-actions button {
      position: relative;
      padding: 12px 20px;
      margin: 0;
      line-height: normal;
      border: 1px solid transparent;
      border-radius: 4px;
      text-align: center;
      letter-spacing: 1px;
      z-index: 1;
      overflow: hidden;
      box-shadow: none;
      width: 100%;
      outline: none;
      -webkit-transition: color 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86), border 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86);
      transition: color 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86), border 0.45s cubic-bezier(0.785, 0.135, 0.15, 0.86); }
      .swal2-modal .swal2-actions button.swal2-cancel {
        border: 1px solid #ececec;
        background-color: #ececec;
        color: #111111; }
        .swal2-modal .swal2-actions button.swal2-cancel:focus {
          box-shadow: 0 0 0 3px rgba(236, 236, 236, 0.5); }
      .swal2-modal .swal2-actions button.swal2-confirm {
        border: 1px solid #e30019;
        background-color: #e30019;
        color: #fff; }
        .swal2-modal .swal2-actions button.swal2-confirm:focus {
          box-shadow: 0 0 0 3px rgba(227, 0, 25, 0.5); }
      .swal2-modal .swal2-actions button + button {
        margin-right: 8px; }
  .swal2-modal .swal2-html-container {
    margin: 6px 0 8px; }
  .swal2-modal .swal2-icon {
    margin: 0 auto;
    font-size: 12px; }
    .swal2-modal .swal2-icon .swal2-icon-content {
      font-size: 2rem; }
    .swal2-modal .swal2-icon.swal2-success {
      border-color: var(--color-state-success);
      color: var(--color-state-success); }
    .swal2-modal .swal2-icon.swal2-error {
      border-color: var(--color-state-error);
      color: var(--color-state-error); }
    .swal2-modal .swal2-icon.swal2-warning {
      border-color: var(--color-state-warning);
      color: var(--color-state-warning); }
    .swal2-modal .swal2-icon.swal2-info {
      border-color: var(--color-state-info);
      color: var(--color-state-info); }
    .swal2-modal .swal2-icon.swal2-question {
      border-color: var(--color-state-question);
      color: var(--color-state-question); }

/*
.swal2-popup {
	border-radius: 2px;
	color: var(--skin-layout-text-color);
	font-size: 14px;
	.swal2-title {text-transform: uppercase; font-size: 16px; padding: 0;}
	.swal2-icon {
		font-size: 12px;
		&.swal2-warning {border-color: #FF9800;color: #FF9800;}
		&.swal2-error {
			border-color: #d92046; color: #d92046;
			[class^=swal2-x-mark-line] {background-color: #d92046;}
		}
		&.swal2-success {
			color: #4caf50; border-color:#4caf50;
			.swal2-success-ring {border-color: #4caf50;}
			[class^=swal2-success-line]{background-color: #4caf50;}
		}
	}
	.swal2-actions button {
		border-radius: 2px; 
		box-shadow: none!important;
    
		&.swal2-confirm {background-color: var(--skin-bgbtn-color); color:#fff; border: 1px solid var(--skin-bgbtn-color);}
		&.swal2-cancel  {background-color: #fff; color:var(--skin-bgbtn-color); border: 1px solid var(--skin-bgbtn-color);}
    
	}
	@media(min-width: 992px){
		.swal2-title {font-size: 20px;}
	}
}
*/
/*-----------------------------------------------*/
/* HEADER */
/*-----------------------------------------------*/
/*--- Topbar ---*/
/*--- Main ---*/
/*-----------------------------------------------*/
/* FOOTER */
/*-----------------------------------------------*/
/*-----------------------------------------------*/
/* ALL */
/*-----------------------------------------------*/
.aspect-ratio {
  overflow: hidden;
  position: relative;
  padding-bottom: calc(var(--height)/var(--width) * 100%);
  display: block; }
  .aspect-ratio img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; }

/* ── Product card: sold-out badge + hover action buttons ── */
/* ── Quick View Modal ── */
/*-----------------------------------------------*/
/* SIDEBAR */
/*-----------------------------------------------*/
.sidebar-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.4);
  cursor: pointer;
  visibility: hidden;
  opacity: 0;
  transition: all 200ms ease-in-out; }

.sidebar-main {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: -webkit-transform 0.3s, all 0.3s;
  -moz-transition: -moz-transform 0.3s, all 0.3s;
  transition: transform 0.3s, all 0.3s; }
  .sidebar-main .sidebar-wrapper {
    position: fixed;
    top: 0;
    height: 100%;
    width: 100%;
    max-width: 500px;
    z-index: 15;
    opacity: 0;
    visibility: hidden;
    -ms-transition: all .5s;
    -webkit-transition: all .5s;
    transition: all .5s; }
    .sidebar-main .sidebar-wrapper.sidebar-right {
      right: 0;
      -ms-transform: translateX(150%);
      -webkit-transform: translateX(150%);
      transform: translateX(150%); }
    .sidebar-main .sidebar-wrapper.sidebar-left {
      left: 0;
      -ms-transform: translateX(-150%);
      -webkit-transform: translateX(-150%);
      transform: translateX(-150%); }
    .sidebar-main .sidebar-wrapper .sidebar-nav {
      display: flex;
      flex-direction: column;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      background: #ffffff;
      max-width: 500px;
      height: 100%;
      width: 100%;
      z-index: 1; }
    .sidebar-main .sidebar-wrapper .sidebar-head {
      display: flex;
      justify-content: space-between;
      align-items: center;
      padding: 10px 14px;
      position: relative;
      gap: 20px; }
      .sidebar-main .sidebar-wrapper .sidebar-head h4 {
        font-size: 18px;
        font-weight: 400;
        margin-bottom: 0;
        font-family: var(--skin-layout-title-font); }
      .sidebar-main .sidebar-wrapper .sidebar-head button {
        border: none;
        background: transparent;
        width: 40px;
        height: 40px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        outline: none; }
    .sidebar-main .sidebar-wrapper .sidebar-body {
      padding: 0 14px;
      position: relative;
      overflow-y: auto;
      overflow-x: hidden;
      height: 100%;
      margin-right: 2px;
      -webkit-overflow-scrolling: touch;
      -ms-scroll-chaining: none;
      overscroll-behavior: none; }
      .sidebar-main .sidebar-wrapper .sidebar-body::-webkit-scrollbar {
        width: 2px;
        height: 2px; }
      .sidebar-main .sidebar-wrapper .sidebar-body::-webkit-scrollbar-track {
        -webkit-border-radius: 0px;
        border-radius: 0px;
        background: #efefef; }
      .sidebar-main .sidebar-wrapper .sidebar-body::-webkit-scrollbar-thumb {
        -webkit-border-radius: 0;
        border-radius: 0;
        -webkit-box-shadow: inset 0 0 6px rgba(0, 1, 2, 0.35); }
      .sidebar-main .sidebar-wrapper .sidebar-body::-webkit-scrollbar-thumb:window-inactive {
        background: rgba(0, 1, 2, 0.35); }
    .sidebar-main .sidebar-wrapper .sidebar-foot {
      padding: 14px; }
    @media (min-width: 768px) {
      .sidebar-main .sidebar-wrapper .sidebar-head {
        padding: 20px; }
        .sidebar-main .sidebar-wrapper .sidebar-head h4 {
          font-size: 20px; }
      .sidebar-main .sidebar-wrapper .sidebar-body {
        padding: 0 20px; }
      .sidebar-main .sidebar-wrapper .sidebar-foot {
        padding: 20px; } }
  .sidebar-main .sidebar-menu.sidebar-wrapper {
    width: 85%; }
  .sidebar-main .sidebar-menu .sidebar-head {
    justify-content: space-between; }
  .sidebar-main .sidebar-menu .sidebar-logo a {
    display: block; }
  .sidebar-main .sidebar-menu .sidebar-logo a img {
    width: 53%; }
  .sidebar-main .sidebar-menu .menu-mobile--wrap {
    padding: 0 0 40px; }
  .sidebar-main .sidebar-menu .menuList-links {
    display: flex;
    flex-direction: column;
    gap: 0; }
    .sidebar-main .sidebar-menu .menuList-links > li + li {
      border-top: 1px solid #FAF7F2; }
    .sidebar-main .sidebar-menu .menuList-links > li > a {
      padding: 12px 0;
      font-weight: 500;
      color: #1C1917;
      font-size: 16px; }
    .sidebar-main .sidebar-menu .menuList-links li.has-submenu.level0 > ul.submenu-links {
      padding-bottom: 12px;
      padding-top: 0; }
    .sidebar-main .sidebar-menu .menuList-links li.has-submenu.level0 > ul.submenu-links li a {
      padding: 6px 30px 6px 0;
      color: #44403C;
      font-weight: 300;
      font-size: 16px; }
    .sidebar-main .sidebar-menu .menuList-links li.has-submenu.level0 > ul.submenu-links ul.submenu-links {
      padding-left: 14px; }
  .sidebar-main .sidebar-menu .sidebar-body.open-sub {
    overflow: hidden !important; }
    .sidebar-main .sidebar-menu .sidebar-body.open-sub .mobile-menu--wrap .mobile-menu-mega.open {
      visibility: visible;
      height: 100%;
      transform: translateX(0%);
      z-index: 100;
      display: block; }
    .sidebar-main .sidebar-menu .sidebar-body.open-sub .mobile-menu--wrap .mobile-menu-mega-sub.open {
      visibility: visible;
      height: 100%;
      transform: translateX(0%);
      z-index: 100;
      display: block; }
  .sidebar-main .sidebar-cart .sidebar-nav {
    background: #fff;
    border-radius: 16px 0 0 16px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1); }
  .sidebar-main .sidebar-cart .sidebar-head {
    padding: 16px 20px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-bottom: 1px solid #f0e7d7; }
    .sidebar-main .sidebar-cart .sidebar-head h4 {
      font-size: 16px;
      font-weight: 700;
      line-height: 24px;
      letter-spacing: -0.2px;
      font-family: var(--skin-layout-title-font);
      margin: 0;
      color: #333; }
  .sidebar-main .sidebar-cart .sidebar-body {
    padding: 12px; }
    .sidebar-main .sidebar-cart .sidebar-body::-webkit-scrollbar {
      width: 3px; }
    .sidebar-main .sidebar-cart .sidebar-body::-webkit-scrollbar-track {
      background: #f5f5f5;
      border-radius: 100px; }
    .sidebar-main .sidebar-cart .sidebar-body::-webkit-scrollbar-thumb {
      background: #ccc;
      border-radius: 100px; }
    .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .cart-group {
      display: flex;
      flex-direction: column;
      gap: 8px; }
    .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item {
      display: flex;
      gap: 12px;
      align-items: stretch;
      overflow: hidden;
      background: #fff;
      border: 1px solid #ededed;
      border-radius: 12px;
      padding: 8px; }
      .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--left {
        width: 72px;
        min-width: 72px;
        position: relative;
        overflow: hidden;
        background: #faf7f2;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center; }
        .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--left a {
          display: flex;
          align-items: center;
          justify-content: center;
          width: 100%;
          height: 100%; }
        .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--left img {
          width: 100%;
          height: auto;
          object-fit: contain; }
      .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right {
        flex: 1;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 8px; }
        .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-info {
          display: flex;
          flex-direction: column;
          gap: 4px;
          flex: 1;
          min-width: 0; }
        .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-desc {
          display: flex;
          flex-direction: column;
          gap: 6px; }
          .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-desc h3 {
            font-family: var(--skin-layout-text-font);
            font-weight: 500;
            font-size: 13px;
            line-height: 18px;
            letter-spacing: 0;
            margin: 0;
            color: #333;
            font-style: normal;
            text-transform: none; }
          .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-desc h3 a {
            white-space: initial;
            overflow: hidden;
            -webkit-line-clamp: 2;
            -webkit-box-orient: vertical;
            display: -webkit-box; }
          .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-desc .item-variant {
            font-family: var(--skin-layout-text-font);
            font-size: 12px;
            font-weight: 400;
            color: #999;
            margin: 0;
            line-height: 16px; }
            .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-desc .item-variant .item-variant__name {
              font-weight: 500;
              color: #666; }
          .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-desc span.label-gift {
            font-size: 10px;
            display: inline-block;
            padding: 2px 6px;
            border-radius: 4px;
            color: #fff;
            background: #93817c;
            font-weight: 600;
            width: fit-content; }
        .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-price {
          font-family: var(--skin-layout-text-font);
          font-weight: 600;
          font-size: 13px;
          line-height: 18px;
          color: #93817c;
          display: flex;
          align-items: center;
          gap: 6px; }
          .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-price del {
            color: #bbb;
            font-weight: 400;
            font-size: 12px; }
        .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-remove-btn {
          border: none;
          background: none;
          cursor: pointer;
          padding: 0;
          width: 20px;
          height: 20px;
          flex-shrink: 0;
          display: inline-flex;
          align-items: center;
          justify-content: center;
          opacity: 0.4;
          transition: opacity 0.15s; }
          .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-remove-btn:hover {
            opacity: 1; }
          .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .sidebar-cart--right .item-remove-btn svg {
            width: 16px;
            height: 16px; }
      .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .item-qty {
        display: inline-flex;
        align-items: center;
        border: 1px solid #ededed;
        border-radius: 9999px;
        overflow: hidden;
        width: fit-content; }
      .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .item-qty__btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 26px;
        height: 26px;
        background: none;
        border: none;
        cursor: pointer;
        font-size: 14px;
        color: #333;
        transition: background 0.15s; }
        .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .item-qty__btn:hover {
          background: #f5f5f5; }
      .sidebar-main .sidebar-cart .sidebar-body .list-sidebar-cart .sidebar-cart--item .item-qty__val {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 24px;
        font-family: var(--skin-layout-text-font);
        font-size: 13px;
        font-weight: 600;
        color: #333; }
    .sidebar-main .sidebar-cart .sidebar-body.notitem {
      padding: 0; }
      .sidebar-main .sidebar-cart .sidebar-body.notitem .sidebar-cart--empty {
        padding: 24px;
        display: flex;
        align-items: center;
        justify-content: center;
        height: 100%;
        width: 100%;
        color: #999;
        font-size: 14px; }
  .sidebar-main .sidebar-cart .sidebar-foot {
    padding: 16px 20px;
    border-top: 1px solid #f0e7d7; }
    .sidebar-main .sidebar-cart .sidebar-foot .line-total {
      display: flex;
      align-items: center;
      justify-content: space-between;
      font-size: 14px;
      color: #333;
      letter-spacing: -0.2px; }
      .sidebar-main .sidebar-cart .sidebar-foot .line-total .line {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%; }
      .sidebar-main .sidebar-cart .sidebar-foot .line-total .text {
        font-weight: 400;
        line-height: 20px;
        color: #999; }
      .sidebar-main .sidebar-cart .sidebar-foot .line-total .number {
        font-weight: 600;
        line-height: 20px;
        color: #93817c;
        font-size: 16px; }
    .sidebar-main .sidebar-cart .sidebar-foot .line-actions {
      padding-top: 12px;
      display: flex;
      flex-direction: column;
      gap: 8px;
      align-items: center; }
      .sidebar-main .sidebar-cart .sidebar-foot .line-actions .btn {
        width: 100%;
        height: 44px;
        font-size: 14px;
        border-radius: 9999px; }
      .sidebar-main .sidebar-cart .sidebar-foot .line-actions .btn-continue {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
        height: 36px;
        width: 100%;
        border: none;
        background: none;
        cursor: pointer;
        font-family: var(--skin-layout-text-font);
        font-weight: 400;
        font-size: 13px;
        line-height: 18px;
        letter-spacing: -0.2px;
        color: #999; }
        .sidebar-main .sidebar-cart .sidebar-foot .line-actions .btn-continue span {
          text-decoration: underline;
          text-underline-offset: 3px; }
        .sidebar-main .sidebar-cart .sidebar-foot .line-actions .btn-continue svg {
          width: 18px;
          height: 18px; }
        .sidebar-main .sidebar-cart .sidebar-foot .line-actions .btn-continue:hover {
          color: #333; }
  .sidebar-main .sidebar-filter .sidebar-head h4 {
    display: none; }
  .sidebar-main .sidebar-filter .sidebar-head h4.is-active {
    display: block; }
  .sidebar-main .sidebar-filter .layered-filter--group {
    display: flex;
    flex-direction: column;
    gap: 30px; }
  .sidebar-main .sidebar-filter .wrapper-filter .boxscroll-tab {
    display: none; }
  .sidebar-main .sidebar-filter .wrapper-filter .boxscroll-tab.is-active {
    display: block; }
  .sidebar-main .sidebar-quickview {
    max-width: 640px; }
    .sidebar-main .sidebar-quickview .sidebar-nav {
      max-width: 640px; }
    .sidebar-main .sidebar-quickview .sidebar-foot {
      border-top: 1px solid #000000; }
      .sidebar-main .sidebar-quickview .sidebar-foot .line-actions {
        display: flex;
        gap: 10px; }
      .sidebar-main .sidebar-quickview .sidebar-foot .line-actions a {
        width: 100%;
        gap: 10px;
        align-items: center;
        font-weight: 400; }
        .sidebar-main .sidebar-quickview .sidebar-foot .line-actions a.btn {
          color: #fff; }
        .sidebar-main .sidebar-quickview .sidebar-foot .line-actions a.btn-link {
          color: #000;
          text-decoration: underline;
          text-underline-offset: .3rem; }
    .sidebar-main .sidebar-quickview .quickviewdetail-row {
      display: flex;
      justify-content: space-between;
      flex-direction: column;
      gap: 30px; }
      .sidebar-main .sidebar-quickview .quickviewdetail-row .quickviewdetail-left {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%;
        display: flex;
        gap: 10px; }
        .sidebar-main .sidebar-quickview .quickviewdetail-row .quickviewdetail-left .quickviewdetail-gallery {
          -ms-flex: 0 0 50px;
          flex: 0 0 50px;
          max-width: 50px; }
          .sidebar-main .sidebar-quickview .quickviewdetail-row .quickviewdetail-left .quickviewdetail-gallery .qv-slider-gallery {
            height: 100%; }
        .sidebar-main .sidebar-quickview .quickviewdetail-row .quickviewdetail-left .quickviewdetail-mainfeature {
          -ms-flex: 0 0 calc(100% - 60px);
          flex: 0 0 calc(100% - 60px);
          max-width: calc(100% - 60px); }
      .sidebar-main .sidebar-quickview .quickviewdetail-row .quickviewdetail-right {
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
        max-width: 100%; }
    .sidebar-main .sidebar-quickview .quickviewdetail-info {
      position: relative;
      padding-bottom: 36px; }
      .sidebar-main .sidebar-quickview .quickviewdetail-info .detail-wrapper {
        display: flex;
        flex-direction: column; }
      .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--heading {
        margin-bottom: 15px;
        color: #2D2A2C;
        font-size: 18px;
        font-weight: 400;
        letter-spacing: 0.54px; }
      .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--brand {
        color: #EF9B2C;
        font-size: 14px;
        letter-spacing: 0.6px;
        text-transform: uppercase; }
      .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--prices {
        margin-top: 16px; }
        .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--prices .qv-price {
          display: flex;
          align-items: center;
          gap: 16px; }
        .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--prices .price-compare {
          color: #9D9D9D; }
      .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants {
        margin-top: 20px; }
        .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch {
          display: flex;
          flex-direction: column;
          gap: 15px; }
          .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch {
            display: flex;
            flex-direction: column;
            gap: 15px; }
            .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch input {
              display: none; }
            .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-swatch-element.no-img--loading label {
              background: #f6f6f6 !important;
              border: none !important;
              padding: 0 !important; }
            .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-swatch-header > span.title {
              display: flex;
              gap: 8px;
              align-items: center; }
            .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-swatch-header.size {
              display: flex;
              align-items: center;
              justify-content: space-between; }
            .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap {
              align-items: center;
              display: flex;
              flex-wrap: wrap;
              list-style: none;
              gap: 16px;
              justify-content: flex-start; }
              .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap .qv-swatch-element label {
                cursor: pointer;
                margin: 0; }
              .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap .qv-swatch-element label.soldout {
                pointer-events: none; }
              .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--color .qv-swatch-element {
                -ms-flex-align: center;
                align-items: center;
                border-radius: 100%;
                display: -ms-flexbox;
                display: flex;
                height: 30px;
                width: 30px;
                position: relative; }
                .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--color .qv-swatch-element span {
                  height: 22px;
                  width: 22px;
                  border-radius: 100%; }
                .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--color .qv-swatch-element label {
                  position: relative;
                  display: flex;
                  height: 30px;
                  width: 30px;
                  border-radius: 100%;
                  left: 0px;
                  top: 0px;
                  position: absolute;
                  display: flex;
                  overflow: hidden;
                  font-size: 0;
                  padding: 3px;
                  border: 1px solid #CFCFCF;
                  background: rgba(243, 243, 243, 0.5);
                  background-image: none !important; }
                .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--color .qv-swatch-element label.sd {
                  border: 1px solid #000000; }
                .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--color .qv-swatch-element label.unavai {
                  box-shadow: none;
                  overflow: hidden; }
                  .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--color .qv-swatch-element label.unavai:before {
                    content: ' ';
                    display: block;
                    height: 100%;
                    left: 0;
                    margin: 0;
                    position: absolute;
                    top: 0;
                    width: 100%;
                    background: linear-gradient(to top left, transparent calc(50% - 1px), #e5e7eb, transparent calc(50% + 1px)); }
              .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--size .qv-swatch-element {
                height: 38px;
                min-width: 38px; }
                .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--size .qv-swatch-element label {
                  font-size: 10px;
                  display: flex;
                  align-items: center;
                  justify-content: center;
                  width: 100%;
                  height: 100%;
                  padding: 0 4px;
                  border-radius: 0px;
                  background: #fff;
                  border: 1px solid #000;
                  box-shadow: unset;
                  position: relative;
                  overflow: hidden; }
                .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--size .qv-swatch-element:hover label:not(.soldout) {
                  background-color: #000;
                  border-color: #000;
                  color: #fff; }
                .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--size .qv-swatch-element label.sd {
                  background-color: #000;
                  border-color: #000;
                  color: #fff; }
                .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-select-swatch .qv-swatch .qv-select-swap.qv-select-swap--size .qv-swatch-element label.soldout:before {
                  content: ' ';
                  display: block;
                  height: calc(100% - 2px);
                  left: 1px;
                  margin: 0;
                  position: absolute;
                  top: 1px;
                  width: calc(100% - 2px);
                  background: linear-gradient(to top left, transparent calc(50% - 1px), #e5e7eb, transparent calc(50% + 1px)); }
        .sidebar-main .sidebar-quickview .quickviewdetail-info .qv-infos--variants .qv-variant-selector-error {
          color: #F44336;
          font-weight: 500;
          margin-top: 10px;
          font-size: 0.875rem; }
    .sidebar-main .sidebar-quickview .quickviewdetail-gallery {
      position: relative;
      padding: 40px 0; }
      .sidebar-main .sidebar-quickview .quickviewdetail-gallery img {
        width: 100%; }
      .sidebar-main .sidebar-quickview .quickviewdetail-gallery .quickviewdetail-img {
        width: 100%;
        position: relative;
        padding-bottom: calc(3/2 * 100%);
        overflow: hidden;
        display: block;
        border: 1px solid #efefef; }
        .sidebar-main .sidebar-quickview .quickviewdetail-gallery .quickviewdetail-img.current {
          border: 1px solid #000; }
        .sidebar-main .sidebar-quickview .quickviewdetail-gallery .quickviewdetail-img img {
          width: 100%;
          height: 100%;
          position: absolute;
          top: 0;
          left: 0;
          object-fit: cover;
          object-position: bottom; }
      .sidebar-main .sidebar-quickview .quickviewdetail-gallery .swiper-button {
        position: absolute;
        z-index: 1;
        left: 0;
        right: 0;
        width: 100%;
        height: 30px;
        display: flex;
        align-items: center;
        justify-content: center; }
        .sidebar-main .sidebar-quickview .quickviewdetail-gallery .swiper-button svg {
          width: 16px;
          height: 16px; }
        .sidebar-main .sidebar-quickview .quickviewdetail-gallery .swiper-button.swiper-prev {
          top: 0; }
        .sidebar-main .sidebar-quickview .quickviewdetail-gallery .swiper-button.swiper-next {
          bottom: 0; }
        .sidebar-main .sidebar-quickview .quickviewdetail-gallery .swiper-button.swiper-button-disabled {
          opacity: 0.3;
          cursor: default; }
    .sidebar-main .sidebar-quickview .quickviewdetail-mainfeature {
      position: relative;
      padding-bottom: calc(4/3 * 100%);
      overflow: hidden; }
      .sidebar-main .sidebar-quickview .quickviewdetail-mainfeature img {
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        object-fit: cover;
        object-position: bottom; }

/*-----------------------------------------------*/
/* BODY JS */
/*-----------------------------------------------*/
.overlay {
  background: rgba(34, 34, 34, 0.4);
  position: fixed;
  z-index: 14;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  visibility: hidden;
  display: none; }

html.open-sidebar-cart .sidebar-main, body.open-sidebar-cart .sidebar-main {
  opacity: 1;
  visibility: visible; }

html.open-sidebar-cart .sidebar-wrapper.sidebar-cart, body.open-sidebar-cart .sidebar-wrapper.sidebar-cart {
  opacity: 1;
  visibility: visible;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0); }

html.open-sidebar-cart .sidebar-overlay, body.open-sidebar-cart .sidebar-overlay {
  opacity: 1;
  visibility: visible;
  display: block; }

html.open-sidebar-quickview .sidebar-main, body.open-sidebar-quickview .sidebar-main {
  opacity: 1;
  visibility: visible; }

html.open-sidebar-quickview .sidebar-wrapper.sidebar-quickview, body.open-sidebar-quickview .sidebar-wrapper.sidebar-quickview {
  opacity: 1;
  visibility: visible;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0); }

html.open-sidebar-quickview .sidebar-overlay, body.open-sidebar-quickview .sidebar-overlay {
  opacity: 1;
  visibility: visible;
  display: block; }

html.open-menumobile .sidebar-main, body.open-menumobile .sidebar-main {
  opacity: 1;
  visibility: visible; }

html.open-menumobile .sidebar-wrapper.sidebar-menu, body.open-menumobile .sidebar-wrapper.sidebar-menu {
  opacity: 1;
  visibility: visible;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0); }

html.open-menumobile .sidebar-overlay, body.open-menumobile .sidebar-overlay {
  opacity: 1;
  visibility: visible;
  display: block; }

html.open-search .main-header, body.open-search .main-header {
  z-index: 17; }

html.open-search .sidebar-overlay, body.open-search .sidebar-overlay {
  opacity: 1;
  visibility: visible;
  display: block; }

html.open-filtermb .overlay-filter-mb, body.open-filtermb .overlay-filter-mb {
  opacity: 1;
  visibility: visible;
  display: block; }

html.open-sidebar-filter .sidebar-main, body.open-sidebar-filter .sidebar-main {
  opacity: 1;
  visibility: visible; }

html.open-sidebar-filter .sidebar-wrapper.sidebar-filter, body.open-sidebar-filter .sidebar-wrapper.sidebar-filter {
  opacity: 1;
  visibility: visible;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0); }

html.open-sidebar-filter .sidebar-overlay, body.open-sidebar-filter .sidebar-overlay {
  opacity: 1;
  visibility: visible;
  display: block; }

html.open-coupon .sidebar-main, body.open-coupon .sidebar-main {
  opacity: 1;
  visibility: visible; }

html.open-coupon .sidebar-wrapper.sidebar-coupon, body.open-coupon .sidebar-wrapper.sidebar-coupon {
  opacity: 1;
  visibility: visible;
  -ms-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0); }

html.open-coupon .sidebar-overlay, body.open-coupon .sidebar-overlay {
  opacity: 1;
  visibility: visible;
  display: block; }

html.lock-scroll, body.lock-scroll {
  overflow: hidden; }

/*-----------------------------------------------*/
/* TOPBAR */
/*-----------------------------------------------*/
@keyframes topbar-marquee {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-50%); } }

.header-topbar {
  width: 100%;
  overflow: hidden; }
  .header-topbar__track-wrap {
    overflow: hidden;
    width: 100%; }
  .header-topbar__track {
    display: inline-flex;
    align-items: center;
    gap: 64px;
    white-space: nowrap;
    padding: 8px 0;
    /* Animate: -50% vì nội dung được lặp 4 lần (2 set) */
    animation: topbar-marquee 18s linear infinite; }
    .header-topbar__track:hover {
      animation-play-state: paused; }
  .header-topbar__item {
    font-size: 14px;
    font-weight: 500;
    line-height: 20px;
    letter-spacing: 0;
    white-space: nowrap;
    flex-shrink: 0; }
    .header-topbar__item a {
      text-decoration: none; }
      .header-topbar__item a:hover {
        text-decoration: underline; }

/*-----------------------------------------------*/
/* SITE HEADER */
/*-----------------------------------------------*/
.site-header {
  position: sticky;
  top: 0;
  z-index: 100;
  width: 100%;
  background: #fff;
  /* ---- Logo ---- */
  /* ---- Desktop Nav ---- */
  /* Promo wrapper — pixel-perfect theo Figma: 109x16px */
  /* Background blob: hình ảnh brush stroke từ Figma */
  /* Text */
  /* Stars — vị trí pixel-perfect từ Figma */
  /* Promo wrap: nhấp nháy zoom to-nhỏ */
  /* Megamenu */
  /* ---- Right group (actions + hamburger) ---- */
  /* ---- Actions ---- */
  /* ---- Hamburger (mobile only) ---- */
  /* Hide actions on mobile except cart + search */
  /* ---- Search bar ---- */ }
  .site-header:before {
    display: none; }
  .site-header.is-scrolled {
    box-shadow: 0 2px 16px rgba(0, 0, 0, 0.08); }
  .site-header__inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0;
    max-width: 1440px;
    margin: 0 auto;
    padding: 12px 16px; }
    @media (min-width: 992px) {
      .site-header__inner {
        padding: 0 40px;
        justify-content: flex-start; } }
    @media (min-width: 1800px) {
      .site-header__inner {
        padding: 0 80px; } }
  .site-header__logo {
    flex-shrink: 0;
    width: 100px; }
    .site-header__logo a {
      display: block; }
    .site-header__logo img {
      width: 100%;
      height: auto;
      max-width: 100px;
      display: block; }
      @media (max-width: 991px) {
        .site-header__logo img {
          max-width: 70px; } }
    .site-header__logo-text {
      font-size: 18px;
      font-weight: 700;
      color: #93817c;
      white-space: nowrap; }
    @media (min-width: 992px) {
      .site-header__logo {
        width: 331px; } }
  .site-header__nav {
    display: none;
    flex: 1;
    justify-content: center; }
    @media (min-width: 992px) {
      .site-header__nav {
        display: flex; } }
  .site-header__nav-list {
    display: flex;
    align-items: center;
    gap: 32px;
    list-style: none;
    margin: 0;
    padding: 0; }
  .site-header__nav-item {
    position: relative;
    padding: 24px 0px; }
    .site-header__nav-item.has-dropdown:hover .chevron-icon {
      transform: rotate(180deg); }
  .site-header__nav-link {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    font-family: var(--skin-layout-title-font);
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: -0.2px;
    color: #93817c;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    white-space: nowrap;
    transition: color 0.2s;
    position: relative;
    /* Promotion link */ }
    .site-header__nav-link:hover, .site-header__nav-link:focus {
      color: #6b5f5b; }
    .site-header__nav-link .chevron-icon {
      width: 16px;
      height: 16px;
      transition: transform 0.25s ease;
      flex-shrink: 0; }
    .site-header__nav-link.is-promo {
      position: relative;
      padding: 0;
      color: #93817c; }
  .site-header .promo-wrap {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 120px;
    height: 16px; }
  .site-header .promo-blob {
    position: absolute;
    top: 50%;
    left: 0%;
    right: -11%;
    height: 28px;
    transform: translateY(-50%);
    z-index: 0;
    object-fit: contain;
    pointer-events: none; }
  .site-header .promo-text {
    position: relative;
    z-index: 1;
    font-family: var(--skin-layout-title-font);
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: -0.2px;
    color: #93817c;
    white-space: nowrap; }
  .site-header .promo-star {
    position: absolute;
    display: inline-flex;
    z-index: 2;
    line-height: 0;
    /* Star lớn (6px) top-left: left 7.85px, top -4.27px */
    /* Star nhỏ (3px) top-right: right 10.79px, top -2.77px */
    /* Star lớn (6px) bottom-left: left 18.97px, bottom -4.73px */
    /* Star nhỏ (3px) bottom-right: right 4.79px, bottom -6px */ }
    .site-header .promo-star--tl {
      left: 7.85px;
      top: -4.27px; }
    .site-header .promo-star--tr {
      right: 10.79px;
      top: -2.77px; }
    .site-header .promo-star--bl {
      left: 18.97px;
      bottom: -4.73px; }
    .site-header .promo-star--br {
      right: 4.79px;
      bottom: -6px; }
    .site-header .promo-star--lg {
      animation: promo-star-pop 1.8s ease-in-out infinite; }
    .site-header .promo-star--sm {
      animation: promo-star-pop 1.8s ease-in-out 0.4s infinite; }
  .site-header .promo-wrap {
    animation: promo-pulse 3s ease-in-out infinite; }
  .site-header .promo-text {
    animation: promo-color-shift 3s ease-in-out infinite; }
  .site-header__nav-item.has-dropdown {
    position: static; }
  .site-header__right {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-shrink: 0; }
    @media (min-width: 992px) {
      .site-header__right {
        gap: 0; } }
  .site-header__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-shrink: 0;
    justify-content: flex-end; }
    @media (min-width: 992px) {
      .site-header__actions {
        width: 331px; } }
  .site-header__action-btn {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 4px;
    background: transparent;
    border: 1px solid #ededed;
    border-radius: 9999px;
    cursor: pointer;
    transition: background 0.2s, border-color 0.2s;
    text-decoration: none; }
    .site-header__action-btn:hover {
      background: #f5f5f5;
      border-color: #ddd; }
    .site-header__action-btn--cart {
      padding-left: 16px; }
      .site-header__action-btn--cart .action-count {
        font-family: var(--skin-layout-text-font);
        font-size: 14px;
        font-weight: 400;
        line-height: 20px;
        letter-spacing: -0.2px;
        color: #93817C; }
  .site-header .action-icon-wrap {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: #93817C;
    border-radius: 9999px;
    flex-shrink: 0; }
  .site-header__hamburger {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: none;
    border: none;
    cursor: pointer;
    color: #93817c;
    padding: 0; }
    @media (min-width: 992px) {
      .site-header__hamburger {
        display: none; } }
  @media (max-width: 991px) {
    .site-header__actions {
      gap: 8px; }
      .site-header__actions .site-header__action-btn {
        display: none; }
      .site-header__actions .site-header__action-btn--cart {
        display: inline-flex; }
      .site-header__actions .js-open-search {
        display: inline-flex; } }
  .site-header__search {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    transform: translateY(100%);
    background: #fff;
    border-top: 1px solid #f0e7d7;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
    z-index: 99;
    padding: 12px 16px; }
    @media (min-width: 992px) {
      .site-header__search {
        padding: 16px 40px; } }
    @media (min-width: 1800px) {
      .site-header__search {
        padding: 16px 80px; } }
    .site-header__search.is-open {
      display: block; }
  .site-header__search-inner {
    display: flex;
    align-items: center;
    gap: 12px;
    max-width: 1440px;
    margin: 0 auto; }
  .site-header__search-form {
    flex: 1;
    display: flex;
    align-items: center;
    background: #f5f5f5;
    border-radius: 9999px;
    padding: 0 4px 0 20px;
    height: 44px;
    border: 1px solid transparent;
    transition: border-color 0.2s; }
    .site-header__search-form:focus-within {
      border-color: #93817c;
      background: #fff; }
  .site-header__search-input {
    flex: 1;
    border: none;
    background: none;
    outline: none;
    font-family: var(--skin-layout-text-font);
    font-size: 14px;
    color: #333;
    height: 100%; }
    .site-header__search-input::placeholder {
      color: #aaa; }
  .site-header__search-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 9999px;
    background: #93817c;
    border: none;
    cursor: pointer;
    color: #fff;
    flex-shrink: 0;
    transition: background 0.2s; }
    .site-header__search-submit:hover {
      background: #6b5f5b; }
  .site-header__search-close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: none;
    border: none;
    cursor: pointer;
    color: #78716c;
    flex-shrink: 0;
    border-radius: 8px;
    transition: background 0.15s; }
    .site-header__search-close:hover {
      background: #f5f5f5; }

/* ---- Megamenu container (ngoài header) ---- */
.megamenu-container {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 200;
  pointer-events: none; }
  @media (min-width: 992px) {
    .megamenu-container {
      display: block; } }

.site-header__megamenu {
  background: rgba(255, 255, 255, 0.75);
  -webkit-backdrop-filter: blur(16px);
  backdrop-filter: blur(16px);
  border-top: 1px solid rgba(237, 237, 237, 0.3);
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s ease, visibility 0.25s ease; }

.site-header__megamenu.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto; }

.megamenu__inner {
  display: flex;
  gap: 108px;
  align-items: flex-start;
  max-width: 1440px;
  margin: 0 auto;
  padding: 24px 80px; }

.megamenu__left {
  width: 217px;
  flex-shrink: 0; }

.megamenu__list-lv1 {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column; }

.megamenu__link-lv1 {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 0;
  border-bottom: 1px solid #ededed;
  font-family: var(--skin-layout-title-font);
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.2px;
  color: #93817c;
  text-decoration: none;
  transition: color 0.2s; }

.megamenu__link-lv1 span {
  flex: 1; }

.megamenu__link-lv1 svg {
  flex-shrink: 0;
  color: #93817c;
  transition: transform 0.2s; }

.megamenu__link-lv1:hover {
  color: #333; }

.megamenu__link-lv1:hover svg {
  transform: translateX(3px); }

.megamenu__link-lv1.is-hover {
  color: #333;
  background: rgba(147, 129, 124, 0.08);
  margin: 0 -8px;
  padding: 8px 8px;
  border-radius: 6px; }

.megamenu__item-lv1:last-child .megamenu__link-lv1 {
  border-bottom: none; }

.megamenu__right {
  flex: 1;
  position: relative;
  min-height: 200px; }

.megamenu__panel {
  display: none;
  gap: 20px; }

.megamenu__panel.is-active {
  display: flex; }

.megamenu__col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 16px; }

.megamenu__col-title {
  font-family: var(--skin-layout-title-font);
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.2px;
  color: #93817c;
  margin: 0;
  padding: 8px 0;
  border-bottom: 1px solid #ededed; }

.megamenu__col-title a {
  color: inherit;
  text-decoration: none; }

.megamenu__col-title a:hover {
  color: #333; }

.megamenu__list-lv3 {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px; }

.megamenu__link-lv3 {
  font-family: var(--skin-layout-text-font);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #333;
  text-decoration: none;
  transition: color 0.15s; }

.megamenu__link-lv3:hover {
  color: #93817c; }

/*-----------------------------------------------*/
/* MOBILE MENU */
/*-----------------------------------------------*/
.mobile-menu {
  display: none;
  position: fixed;
  inset: 0;
  z-index: 200;
  /* Lv1 submenu */
  /* Lv2 submenu */
  /* Lv3 submenu */
  /* ---- Promo link in mobile menu ---- */ }
  .mobile-menu.is-open {
    display: block; }
  .mobile-menu__overlay {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(2px);
    -webkit-backdrop-filter: blur(2px); }
  .mobile-menu__drawer {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 320px;
    max-width: 85vw;
    background: #fff;
    display: flex;
    flex-direction: column;
    overflow-y: auto;
    transform: translateX(-100%);
    transition: transform 0.3s ease;
    border-radius: 0 16px 16px 0; }
  .mobile-menu.is-open .mobile-menu__drawer {
    transform: translateX(0); }
  .mobile-menu__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 20px 16px;
    border-bottom: 1px solid #f0e7d7; }
  .mobile-menu__logo img {
    width: 80px;
    height: auto; }
  .mobile-menu__logo span {
    font-size: 16px;
    font-weight: 700;
    color: #93817c; }
  .mobile-menu__close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background: none;
    border: none;
    cursor: pointer;
    color: #93817c;
    border-radius: 8px;
    transition: background 0.15s; }
    .mobile-menu__close:hover {
      background: #f5f5f5; }
  .mobile-menu__nav {
    flex: 1;
    padding: 12px 0;
    overflow-y: auto; }
  .mobile-menu__list {
    list-style: none;
    margin: 0;
    padding: 0; }
  .mobile-menu__item {
    border-bottom: 1px solid #f5f5f5; }
  .mobile-menu__link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 14px 20px;
    font-size: 15px;
    font-weight: 600;
    color: #93817c;
    background: none;
    border: none;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s; }
    .mobile-menu__link:hover {
      background: #faf7f2; }
    .mobile-menu__link svg {
      flex-shrink: 0;
      transition: transform 0.25s; }
    .mobile-menu__link[aria-expanded="true"] svg {
      transform: rotate(180deg); }
  .mobile-menu__submenu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: none;
    background: #faf7f2; }
    .mobile-menu__submenu.is-open {
      display: block; }
  .mobile-menu__sublink {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 12px 20px 12px 32px;
    font-size: 14px;
    font-weight: 400;
    color: #78716c;
    text-decoration: none;
    background: none;
    border: none;
    cursor: pointer;
    transition: color 0.15s, background 0.15s; }
    .mobile-menu__sublink:hover {
      color: #93817c;
      background: rgba(240, 231, 215, 0.5); }
    .mobile-menu__sublink svg {
      flex-shrink: 0;
      transition: transform 0.25s; }
    .mobile-menu__sublink[aria-expanded="true"] svg {
      transform: rotate(180deg); }
    .mobile-menu__sublink--viewall {
      font-weight: 600;
      color: #93817c;
      font-size: 13px;
      text-decoration: underline;
      text-underline-offset: 3px; }
    .mobile-menu__sublink--parent {
      font-weight: 500;
      color: #44403c; }
  .mobile-menu__submenu--lv2 {
    background: #f5f0ea; }
    .mobile-menu__submenu--lv2 .mobile-menu__sublink {
      padding-left: 44px;
      font-size: 13px; }
    .mobile-menu__submenu--lv2 .mobile-menu__sublink--viewall {
      padding-left: 44px; }
    .mobile-menu__submenu--lv2 .mobile-menu__sublink--parent {
      padding-left: 44px; }
  .mobile-menu__submenu--lv3 {
    background: #f0ebe5; }
    .mobile-menu__submenu--lv3 .mobile-menu__sublink {
      padding-left: 56px;
      font-size: 13px; }
    .mobile-menu__submenu--lv3 .mobile-menu__sublink--viewall {
      padding-left: 56px; }
    .mobile-menu__submenu--lv3 .mobile-menu__sublink--lv3 {
      padding-left: 56px; }
  .mobile-menu__foot {
    padding: 16px 20px;
    border-top: 1px solid #f0e7d7; }
  .mobile-menu__link--promo {
    justify-content: flex-start; }
    .mobile-menu__link--promo .promo-wrap {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 120px;
      height: 16px;
      animation: promo-pulse 3s ease-in-out infinite; }
    .mobile-menu__link--promo .promo-blob {
      position: absolute;
      top: 50%;
      left: 0%;
      right: -11%;
      height: 28px;
      transform: translateY(-50%);
      z-index: 0;
      object-fit: contain;
      pointer-events: none; }
    .mobile-menu__link--promo .promo-text {
      position: relative;
      z-index: 1;
      font-family: var(--skin-layout-title-font);
      font-size: 15px;
      font-weight: 700;
      line-height: 24px;
      letter-spacing: -0.2px;
      color: #93817c;
      white-space: nowrap;
      animation: promo-color-shift 3s ease-in-out infinite; }
    .mobile-menu__link--promo .promo-star {
      position: absolute;
      display: inline-flex;
      z-index: 2;
      line-height: 0; }
      .mobile-menu__link--promo .promo-star--tl {
        left: 7.85px;
        top: -4.27px; }
      .mobile-menu__link--promo .promo-star--tr {
        right: 10.79px;
        top: -2.77px; }
      .mobile-menu__link--promo .promo-star--bl {
        left: 18.97px;
        bottom: -4.73px; }
      .mobile-menu__link--promo .promo-star--br {
        right: 4.79px;
        bottom: -6px; }
      .mobile-menu__link--promo .promo-star--lg {
        animation: promo-star-pop 1.8s ease-in-out infinite; }
      .mobile-menu__link--promo .promo-star--sm {
        animation: promo-star-pop 1.8s ease-in-out 0.4s infinite; }
  .mobile-menu__account {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 500;
    color: #93817c;
    text-decoration: none; }
    .mobile-menu__account:hover {
      color: #6b5f5b; }

/*-----------------------------------------------*/
/* ADD TO CART TOAST */
/*-----------------------------------------------*/
.atc-toast {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 9999;
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.3s ease, transform 0.3s ease; }
  .atc-toast.is-show {
    opacity: 1;
    transform: translateY(0); }
  .atc-toast__inner {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px 16px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
    border: 1px solid #ededed;
    max-width: 360px; }
  .atc-toast__img {
    width: 60px;
    height: 60px;
    border-radius: 8px;
    object-fit: cover;
    flex-shrink: 0; }
  .atc-toast__info {
    flex: 1;
    min-width: 0; }
  .atc-toast__title {
    font-family: var(--skin-layout-text-font);
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    color: #333;
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis; }
  .atc-toast__msg {
    font-family: var(--skin-layout-text-font);
    font-size: 13px;
    font-weight: 400;
    line-height: 18px;
    color: #22c55e;
    margin: 2px 0 0; }
  .atc-toast__price {
    font-family: var(--skin-layout-text-font);
    font-size: 14px;
    font-weight: 600;
    line-height: 20px;
    color: #93817c;
    margin: 4px 0 0; }
  .atc-toast__close {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: none;
    border: none;
    cursor: pointer;
    color: #999;
    flex-shrink: 0;
    border-radius: 6px;
    transition: background 0.15s; }
    .atc-toast__close:hover {
      background: #f5f5f5; }
  @media (max-width: 767px) {
    .atc-toast {
      bottom: 16px;
      right: 16px;
      left: 16px; }
      .atc-toast__inner {
        max-width: 100%; } }

/* Product loop button loading */
.js-loop-atc.is-loading {
  opacity: 0.6;
  pointer-events: none; }

/*-----------------------------------------------*/
/* SITE FOOTER */
/*-----------------------------------------------*/
.site-footer {
  position: relative;
  overflow: hidden;
  /* Background image */
  /* ---- Top section ---- */
  /* Col 1: Brand */
  /* Col 2: Social */
  /* Col 3: Menus */
  /* ---- Bottom bar ---- */ }
  @media (min-width: 992px) {
    .site-footer {
      padding-top: 300px; } }
  .site-footer__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
    pointer-events: none; }
    .site-footer__bg img {
      position: absolute;
      width: 100%;
      height: 280%;
      top: -60%;
      left: 0;
      object-fit: cover; }
    .site-footer__bg-overlay {
      position: absolute;
      inset: 0;
      background: linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 100%); }
  .site-footer__inner {
    position: relative;
    z-index: 1;
    max-width: 1440px;
    margin: 0 auto;
    padding: 48px 16px 0; }
    @media (min-width: 992px) {
      .site-footer__inner {
        padding: 48px 40px 0; } }
    @media (min-width: 1800px) {
      .site-footer__inner {
        padding: 48px 80px 0; } }
  .site-footer__top {
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding-bottom: 48px;
    border-bottom: 0.5px solid rgba(237, 237, 237, 0.25); }
    @media (min-width: 992px) {
      .site-footer__top {
        flex-direction: row;
        justify-content: space-between;
        align-items: flex-start;
        gap: 40px; } }
  .site-footer__brand {
    display: flex;
    flex-direction: column;
    gap: 16px;
    flex-shrink: 0; }
  .site-footer__tagline {
    font-family: var(--skin-layout-title-font);
    font-size: 24px;
    font-weight: 700;
    line-height: 32px;
    letter-spacing: -0.2px;
    color: #333;
    margin: 0; }
  .site-footer__contact {
    display: flex;
    flex-direction: column;
    gap: 8px; }
  .site-footer__contact-item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-family: var(--skin-layout-text-font);
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: -0.2px;
    color: #333; }
    .site-footer__contact-item svg {
      flex-shrink: 0;
      color: #333; }
    .site-footer__contact-item span {
      word-break: break-word; }
  .site-footer__social-col {
    display: flex;
    flex-direction: column;
    gap: 24px;
    align-items: flex-start; }
    @media (min-width: 992px) {
      .site-footer__social-col {
        align-self: stretch;
        justify-content: center; } }
  .site-footer__social {
    display: flex;
    align-items: center;
    gap: 16px; }
  .site-footer__social-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: #333;
    color: #fff;
    transition: background 0.2s, transform 0.2s;
    flex-shrink: 0; }
    .site-footer__social-btn:hover {
      background: var(--skin-layout-color-brand);
      transform: translateY(-2px); }
    .site-footer__social-btn svg {
      width: 20px;
      height: 20px; }
  .site-footer__certify {
    display: block;
    background: #fff;
    border-radius: 4px;
    padding: 2px;
    line-height: 0; }
    .site-footer__certify img {
      display: block;
      width: 127px;
      height: 40px;
      object-fit: contain; }
  .site-footer__menus {
    display: flex;
    gap: 20px;
    flex-wrap: wrap; }
    @media (min-width: 576px) {
      .site-footer__menus {
        flex-wrap: nowrap; } }
  .site-footer__menu-col {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-width: 140px;
    flex: 1; }
  .site-footer__menu-title {
    font-family: var(--skin-layout-title-font);
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    letter-spacing: -0.2px;
    color: #333;
    margin: 0;
    padding-bottom: 8px;
    border-bottom: 0.5px solid #333; }
  .site-footer__menu-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0; }
  .site-footer__menu-link {
    font-family: var(--skin-layout-text-font);
    font-size: 16px;
    font-weight: 600;
    line-height: 24px;
    letter-spacing: -0.2px;
    color: #333;
    text-decoration: none;
    transition: color 0.2s; }
    .site-footer__menu-link:hover {
      color: var(--skin-layout-color-brand); }
  .site-footer__bottom {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: flex-start;
    padding: 16px 0;
    border-top: 0.5px solid #333; }
    @media (min-width: 768px) {
      .site-footer__bottom {
        flex-direction: row;
        align-items: center;
        justify-content: space-between; } }
  .site-footer__bottom-left {
    display: flex;
    align-items: center;
    gap: 32px;
    flex-wrap: wrap; }
  .site-footer__bottom-logo {
    display: block;
    flex-shrink: 0;
    line-height: 0; }
    .site-footer__bottom-logo img {
      width: auto;
      height: 32px; }
  .site-footer__shop-name {
    font-family: var(--skin-layout-title-font);
    font-size: 16px;
    font-weight: 700;
    color: #333; }
  .site-footer__copyright {
    font-family: var(--skin-layout-text-font);
    font-size: 12px;
    font-weight: 400;
    line-height: 16px;
    color: #333;
    margin: 0; }
  .site-footer__payments {
    display: flex;
    align-items: center;
    gap: 4px;
    flex-wrap: wrap; }
    .site-footer__payments img {
      height: 16px;
      width: auto;
      border-radius: 2px;
      object-fit: cover; }

/* ========================================= */
/* RICH TEXT CONTENT (ul, ol, tables)        */
/* ========================================= */
.page-default__content ul, .page-default__content ol,
.pdp__desc-content ul,
.pdp__desc-content ol,
.cart-page__note ul,
.cart-page__note ol,
.rte ul,
.rte ol,
.main-body .page-content ul,
.main-body .page-content ol {
  padding-left: 24px !important;
  margin: 12px 0 !important;
  list-style-type: none !important; }
  .page-default__content ul li, .page-default__content ol li,
  .pdp__desc-content ul li,
  .pdp__desc-content ol li,
  .cart-page__note ul li,
  .cart-page__note ol li,
  .rte ul li,
  .rte ol li,
  .main-body .page-content ul li,
  .main-body .page-content ol li {
    margin-bottom: 8px;
    line-height: 1.7;
    position: relative; }

.page-default__content ul > li::before,
.pdp__desc-content ul > li::before,
.cart-page__note ul > li::before,
.rte ul > li::before,
.main-body .page-content ul > li::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--skin-layout-color-brand, #EF9B2C);
  display: inline-block;
  position: absolute;
  left: -18px;
  top: 10px; }

.page-default__content ol,
.pdp__desc-content ol,
.cart-page__note ol,
.rte ol,
.main-body .page-content ol {
  list-style-type: decimal !important; }
  .page-default__content ol li::before,
  .pdp__desc-content ol li::before,
  .cart-page__note ol li::before,
  .rte ol li::before,
  .main-body .page-content ol li::before {
    display: none; }
  .page-default__content ol li::marker,
  .pdp__desc-content ol li::marker,
  .cart-page__note ol li::marker,
  .rte ol li::marker,
  .main-body .page-content ol li::marker {
    color: var(--skin-layout-color-brand, #EF9B2C);
    font-weight: 600; }

.page-default__content ul ul > li::before,
.pdp__desc-content ul ul > li::before,
.cart-page__note ul ul > li::before,
.rte ul ul > li::before,
.main-body .page-content ul ul > li::before {
  width: 5px;
  height: 5px;
  background: transparent;
  border: 1px solid var(--skin-layout-color-brand, #EF9B2C); }

/* ========================================= */
/* SHARED SCROLL REVEAL & ANIMATIONS         */
/* ========================================= */
[data-reveal] {
  opacity: 0;
  transition: opacity 0.65s ease, transform 0.65s ease;
  will-change: opacity, transform; }

[data-reveal="fade-up"] {
  transform: translateY(32px); }

[data-reveal="fade-down"] {
  transform: translateY(-24px); }

[data-reveal="fade-left"] {
  transform: translateX(40px); }

[data-reveal="fade-right"] {
  transform: translateX(-40px); }

[data-reveal].is-revealed {
  opacity: 1;
  transform: translate(0, 0); }

/* Parallax bg container */
.js-parallax-bg {
  will-change: transform; }

/* GPU-hint for hover/transition elements */
.swiper-slide {
  will-change: transform; }

.about-collections__card,
.promo-bst-v2__card,
.promo-coupon,
.blog-featured__card-media img,
.about-whyus__photo img,
.about-reviews__img img {
  will-change: transform; }

.hSticky {
  will-change: transform; }

/*-----------------------------------------------*/
/* PRODUCT LOOP CARD                             */
/*-----------------------------------------------*/
.product-loop--wrap {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 10px 10px 16px;
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1.5px solid #fff;
  border-radius: 16px;
  height: 100%;
  transition: box-shadow 0.3s ease, transform 0.3s ease; }
  .product-loop--wrap:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px); }

.product-loop--head {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  flex-shrink: 0; }

.product-loop--img {
  position: relative;
  width: 100%;
  border-radius: 12px;
  overflow: hidden;
  background: #f5f5f5; }

.product-loop--img:before {
  content: '';
  display: block;
  padding-bottom: 100%; }

.product-loop--img picture,
.product-loop--img img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 12px; }

.product-loop--soldout {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 3; }

.product-loop--soldout .title {
  background: #93817c;
  color: #fff;
  font-size: 14px;
  padding: 5px;
  border-radius: 5px; }

.product-loop--buy-overlay {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%) translateY(8px);
  z-index: 3;
  opacity: 0;
  transition: opacity 0.25s ease, transform 0.25s ease;
  white-space: nowrap; }

.product-loop--wrap:hover .product-loop--buy-overlay {
  opacity: 1;
  transform: translateX(-50%) translateY(0); }

.product-loop--btn-buy {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 16px;
  height: 28px;
  background: #fff;
  color: #333;
  border: 1px solid #333;
  border-radius: 9999px;
  font-size: 14px;
  font-weight: 500;
  line-height: 20px;
  cursor: pointer;
  transition: background 0.2s, color 0.2s;
  white-space: nowrap; }

.product-loop--btn-buy:hover:not(.disabled) {
  background: #333;
  color: #fff; }

.product-loop--btn-buy.disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none; }

.product-loop--link {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: block; }

.product-loop--body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
  width: 100%;
  flex: 1; }

.product-loop--detail {
  display: flex;
  flex-direction: column;
  gap: 8px;
  align-items: center;
  width: 100%; }

.product-loop--name {
  margin: 0;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  text-align: center;
  color: #333;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: 40px; }

.product-loop--name a {
  color: inherit; }

.product-loop--name a:hover {
  color: var(--skin-layout-color-brand); }

.product-loop--swatches {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px; }

.product-loop--swatch {
  display: inline-flex;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  overflow: hidden;
  flex-shrink: 0; }

.product-loop--swatch img {
  width: 100%;
  height: 100%;
  object-fit: cover; }

.product-loop--prices {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%; }

.price-current {
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -0.2px;
  color: #93817c;
  text-align: center; }

.price-compare .del {
  font-size: 13px;
  font-weight: 400;
  color: var(--skin-layout-color-text-sub2);
  text-decoration: line-through; }

/* -----------------------------------------------
   PRODUCT LOOP — Context overrides
   Tất cả context-specific overrides tập trung tại đây.
   Chỉ cần sửa file này để áp dụng toàn website.
   ----------------------------------------------- */
/* Shared swiper context: PDP related, PDP recently, home all-products, promo swipers */
.pdp-related__swiper .product-loop--wrap,
.pdp-recently__swiper .product-loop--wrap,
.home-allproducts__swiper .product-loop--wrap,
.promo-flash__swiper .product-loop--wrap,
.promo-group__swiper .product-loop--wrap,
.home-featured__swiper .product-loop--wrap {
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1.5px solid #fff;
  border-radius: 16px;
  padding: 10px 10px 16px;
  display: flex;
  flex-direction: column;
  gap: 16px; }

.pdp-related__swiper .product-loop--head,
.pdp-recently__swiper .product-loop--head,
.home-allproducts__swiper .product-loop--head,
.promo-flash__swiper .product-loop--head,
.promo-group__swiper .product-loop--head,
.home-featured__swiper .product-loop--head {
  border-radius: 12px;
  overflow: hidden; }

.pdp-related__swiper .product-loop--img,
.pdp-recently__swiper .product-loop--img,
.home-allproducts__swiper .product-loop--img,
.promo-flash__swiper .product-loop--img,
.promo-group__swiper .product-loop--img,
.home-featured__swiper .product-loop--img {
  border-radius: 12px; }

.pdp-related__swiper .product-loop--img picture,
.pdp-related__swiper .product-loop--img img,
.pdp-recently__swiper .product-loop--img picture,
.pdp-recently__swiper .product-loop--img img,
.home-allproducts__swiper .product-loop--img picture,
.home-allproducts__swiper .product-loop--img img,
.promo-flash__swiper .product-loop--img picture,
.promo-flash__swiper .product-loop--img img,
.promo-group__swiper .product-loop--img picture,
.promo-group__swiper .product-loop--img img,
.home-featured__swiper .product-loop--img picture,
.home-featured__swiper .product-loop--img img {
  border-radius: 12px; }

.pdp-related__swiper .product-loop--body,
.pdp-recently__swiper .product-loop--body,
.home-allproducts__swiper .product-loop--body,
.promo-flash__swiper .product-loop--body,
.promo-group__swiper .product-loop--body,
.home-featured__swiper .product-loop--body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center; }

.pdp-related__swiper .product-loop--detail,
.pdp-recently__swiper .product-loop--detail,
.home-allproducts__swiper .product-loop--detail,
.promo-flash__swiper .product-loop--detail,
.promo-group__swiper .product-loop--detail,
.home-featured__swiper .product-loop--detail {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px; }

.pdp-related__swiper .product-loop--name,
.pdp-recently__swiper .product-loop--name,
.home-allproducts__swiper .product-loop--name,
.promo-flash__swiper .product-loop--name,
.promo-group__swiper .product-loop--name,
.home-featured__swiper .product-loop--name {
  font-family: var(--skin-layout-text-font);
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  color: #333;
  text-align: center;
  margin: 0;
  min-height: 40px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden; }

.pdp-related__swiper .product-loop--name a,
.pdp-recently__swiper .product-loop--name a,
.home-allproducts__swiper .product-loop--name a,
.promo-flash__swiper .product-loop--name a,
.promo-group__swiper .product-loop--name a,
.home-featured__swiper .product-loop--name a {
  color: #333; }

.pdp-related__swiper .product-loop--swatches,
.pdp-recently__swiper .product-loop--swatches,
.home-allproducts__swiper .product-loop--swatches,
.promo-flash__swiper .product-loop--swatches,
.promo-group__swiper .product-loop--swatches,
.home-featured__swiper .product-loop--swatches {
  justify-content: center; }

.pdp-related__swiper .product-loop--prices,
.pdp-recently__swiper .product-loop--prices,
.home-allproducts__swiper .product-loop--prices,
.promo-flash__swiper .product-loop--prices,
.promo-group__swiper .product-loop--prices,
.home-featured__swiper .product-loop--prices {
  justify-content: center; }

.pdp-related__swiper .price-current span,
.pdp-recently__swiper .price-current span,
.home-allproducts__swiper .price-current span,
.promo-flash__swiper .price-current span,
.promo-group__swiper .price-current span,
.home-featured__swiper .price-current span {
  font-family: var(--skin-layout-text-font);
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -0.2px;
  color: #93817c; }

/* Collection grid context */
.collection-grid .product-tile .product-loop--wrap {
  background: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1.5px solid #fff;
  border-radius: 16px;
  padding: 10px 10px 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  height: 100%; }

.collection-grid .product-tile .product-loop--head {
  border-radius: 12px;
  overflow: hidden; }

.collection-grid .product-tile .product-loop--img {
  border-radius: 12px; }

.collection-grid .product-tile .product-loop--img picture,
.collection-grid .product-tile .product-loop--img img {
  border-radius: 12px; }

.collection-grid .product-tile .product-loop--body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  text-align: center; }

.collection-grid .product-tile .product-loop--detail {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px; }

.collection-grid .product-tile .product-loop--name {
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
  text-align: center;
  min-height: 40px;
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden; }

.collection-grid .product-tile .product-loop--name a {
  color: #333; }

.collection-grid .product-tile .product-loop--swatches {
  justify-content: center; }

.collection-grid .product-tile .product-loop--prices {
  justify-content: center; }

.collection-grid .product-tile .price-current span {
  font-family: var(--skin-layout-text-font);
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -0.2px;
  color: #93817c; }

/*-----------------------------------------------*/
/* BREADCRUMB                                    */
/* Dùng chung toàn website qua breadcrumb.liquid */
/*-----------------------------------------------*/
.collection-breadcrumb {
  background: rgba(255, 255, 255, 0.5); }
  .collection-breadcrumb__inner {
    max-width: 1440px;
    margin: 0 auto;
    padding: 16px 16px; }
    @media (min-width: 992px) {
      .collection-breadcrumb__inner {
        padding: 16px 80px; } }
  .collection-breadcrumb__list {
    display: flex;
    align-items: center;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
    font-family: var(--skin-layout-text-font);
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    letter-spacing: 0;
    white-space: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none; }
    .collection-breadcrumb__list::-webkit-scrollbar {
      display: none; }
    .collection-breadcrumb__list li {
      display: inline-flex;
      align-items: center; }
    .collection-breadcrumb__list li + li:before {
      content: '/';
      display: inline-flex;
      margin-right: 8px;
      color: #333;
      font-weight: 400; }
  .collection-breadcrumb__link {
    color: #333;
    text-decoration: none;
    transition: color 0.15s; }
    .collection-breadcrumb__link--muted {
      color: #bbb; }
    .collection-breadcrumb__link:hover {
      color: #93817c; }
  .collection-breadcrumb__current {
    color: #333; }

/*-----------------------------------------------*/
/* ARTICLE LOOP CARD                             */
/*-----------------------------------------------*/
.article-loop {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 10px 10px 16px;
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.5);
  border: 1px solid #fff;
  text-decoration: none;
  color: #333;
  height: 100%;
  transition: box-shadow 0.2s, transform 0.2s; }
  .article-loop:hover {
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
    color: #333; }

.article-loop__img-wrap {
  border-radius: 12px;
  overflow: hidden;
  aspect-ratio: 305 / 210;
  width: 100%;
  flex-shrink: 0; }
  .article-loop__img-wrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94); }

.article-loop:hover .article-loop__img-wrap img {
  transform: scale(1.04); }

.article-loop__body {
  display: flex;
  flex-direction: column;
  gap: 12px;
  padding: 0 8px;
  flex: 1; }

.article-loop__inner {
  display: flex;
  flex-direction: column;
  gap: 24px;
  height: 100%; }

.article-loop__meta-title {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-height: 92px; }

.article-loop__meta {
  display: flex;
  align-items: center;
  gap: 8px; }

.article-loop__date-line {
  display: block;
  width: 16px;
  height: 2px;
  background: #bac5af;
  flex-shrink: 0; }

.article-loop__date {
  font-family: var(--skin-layout-text-font);
  font-size: 14px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -0.2px;
  color: #bac5af;
  white-space: nowrap; }
  @media (min-width: 992px) {
    .article-loop__date {
      font-size: 16px; } }

.article-loop__title {
  font-family: var(--skin-layout-text-font);
  font-size: 13px;
  font-weight: 700;
  line-height: 20px;
  letter-spacing: 0;
  color: #333;
  margin: 0;
  min-height: 60px;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden; }
  @media (min-width: 992px) {
    .article-loop__title {
      font-size: 14px; } }

.article-loop__readmore {
  font-family: var(--skin-layout-text-font);
  font-size: 13px;
  font-weight: 500;
  line-height: 20px;
  color: #333;
  text-decoration: underline;
  text-align: center;
  margin-top: auto; }
  @media (min-width: 992px) {
    .article-loop__readmore {
      font-size: 14px; } }

/*-----------------------------------------------*/
/* POLICY BAR (home-policy-bar.liquid)           */
/* Load trên toàn website qua general.scss       */
/*-----------------------------------------------*/
.section-policy-bar {
  background: #d5dccf; }

.policy-bar__inner {
  max-width: 1440px;
  margin: 0 auto;
  padding: 16px 16px;
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  align-items: center;
  justify-content: space-between; }

@media (min-width: 768px) {
  .policy-bar__inner {
    flex-wrap: nowrap;
    padding: 16px 80px; } }

.policy-bar__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  padding: 16px 24px;
  text-align: center;
  width: 50%;
  transition: transform 0.3s ease; }

.policy-bar__item:hover {
  transform: translateY(-3px); }

@media (min-width: 768px) {
  .policy-bar__item {
    width: 305px; } }

.policy-bar__icon-wrap {
  display: inline-flex;
  align-items: center;
  padding: 4px;
  border-radius: 9999px;
  border: 1px solid #fff;
  background: rgba(255, 255, 255, 0.3); }

.policy-bar__icon-bg {
  width: 48px;
  height: 48px;
  border-radius: 9999px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #333; }

.policy-bar__icon-bg svg {
  width: 24px;
  height: 24px; }

.policy-bar__text {
  display: flex;
  flex-direction: column;
  gap: 8px;
  color: #333; }

.policy-bar__label {
  font-family: var(--skin-layout-title-font);
  font-size: 16px;
  font-weight: 700;
  line-height: 24px;
  letter-spacing: -0.2px;
  margin: 0; }

.policy-bar__desc {
  font-family: var(--skin-layout-text-font);
  font-size: 12px;
  font-weight: 300;
  line-height: 16px;
  margin: 0; }
