/* GYLS Living Woo — shop / PDP / cart (mustard system) */

.woocommerce .gyls-product-card--ref,
.gyls-product-card--ref,
.gyls-bestsellers .gyls-product-card--ref,
ul.products li.product.gyls-product-card--ref {
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  background: var(--gyls-white) !important;
  border: 1px solid var(--gyls-line) !important;
  border-radius: var(--gyls-radius) !important;
  overflow: hidden !important;
  box-shadow: none !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  list-style: none !important;
}

.gyls-product-card--ref .gyls-product-card__media-wrap {
  position: relative;
  background: var(--gyls-cream);
  flex: 0 0 auto;
  overflow: hidden;
}
.gyls-product-card--ref .gyls-product-card__media {
  display: block;
  aspect-ratio: 1 / 1;
  padding: 3px !important;
  margin: 0 !important;
  overflow: hidden;
  background: #ebe6df;
}
.gyls-product-card--ref .gyls-product-card__media img,
.gyls-product-card--ref .gyls-product-card__media .attachment-woocommerce_thumbnail,
.woocommerce ul.products li.product.gyls-product-card--ref img {
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  border-radius: 0.45rem;
}

.gyls-product-card__ulje {
  position: absolute;
  z-index: 3;
  top: 0.65rem;
  left: 0.65rem;
  min-height: 1.45rem;
  padding: 0.2rem 0.55rem;
  border-radius: 999px;
  background: var(--gyls-mustard);
  color: var(--gyls-charcoal);
  font-size: 0.62rem;
  font-weight: 800;
  letter-spacing: 0.06em;
  display: inline-flex;
  align-items: center;
}
.gyls-product-card__variants {
  position: absolute;
  z-index: 3;
  left: 0.65rem;
  bottom: 0.65rem;
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  min-height: 1.35rem;
  padding: 0.15rem 0.45rem;
  border-radius: 999px;
  background: rgba(255,255,255,0.95);
  border: 1px solid var(--gyls-line);
  font-size: 0.7rem;
  font-weight: 700;
}
.gyls-product-card__dot {
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 999px;
  background: var(--gyls-beige);
  display: inline-block;
}

.gyls-product-card--ref .gyls-product-card__body {
  display: grid;
  grid-template-rows: minmax(2.6em, auto) 3.2rem;
  gap: 0.3rem;
  padding: 0.75rem 0.85rem 0.95rem;
  background: var(--gyls-white);
  flex: 0 0 auto;
}
.gyls-product-card--ref .gyls-product-card__title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  line-clamp: 2;
  overflow: hidden;
  height: auto;
  min-height: 2.6em;
  font-size: 0.78rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: var(--gyls-charcoal);
  margin: 0;
}
.gyls-product-card__pricing {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  height: 3.2rem;
  overflow: hidden;
}
.gyls-product-card__was {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  min-height: 1.15rem;
  height: 1.15rem;
}
.gyls-product-card__was.is-empty .gyls-product-card__regular--spacer { visibility: hidden; }
.gyls-product-card__regular,
.gyls-product-card__regular del {
  font-size: 0.7rem;
  color: var(--gyls-muted);
  text-decoration: line-through;
}
.gyls-product-card__pct {
  display: inline-flex;
  align-items: center;
  min-height: 1.15rem;
  padding: 0 0.35rem;
  border-radius: 0.35rem;
  background: var(--gyls-mustard);
  color: var(--gyls-charcoal);
  font-size: 0.62rem;
  font-weight: 800;
}
.gyls-product-card__price {
  font-size: 1rem;
  font-weight: 800;
  color: var(--gyls-charcoal) !important;
  line-height: 1.4;
  margin: 0;
}

/* Shop archive */
.gyls-shop--cards {
  padding: 1rem 0 4.5rem;
  background: var(--gyls-ivory);
}
.gyls-shop-cards__crumbs {
  font-size: 0.8rem;
  color: var(--gyls-muted);
  margin: 0 0 0.35rem;
}
.gyls-shop-cards__crumbs a { color: var(--gyls-muted); }
.gyls-shop-cards__title {
  font-size: clamp(1.55rem, 3vw, 2rem);
  margin: 0 0 0.85rem;
}
.gyls-shop-controls,
.gyls-shop-cards__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.65rem;
  margin: 0 0 1rem;
  position: sticky;
  /* Flush under sticky header — JS sets --gyls-sticky-top from measured header height */
  top: var(--gyls-sticky-top, var(--gyls-header-h));
  z-index: 40;
  padding: 0.55rem 0;
  background: var(--gyls-ivory);
  border-bottom: 1px solid transparent;
  box-shadow: none;
}
.gyls-shop-controls.is-stuck,
.gyls-shop-cards__toolbar.is-stuck {
  border-bottom-color: var(--gyls-line);
  padding-top: 0.4rem;
  padding-bottom: 0.4rem;
  margin-bottom: 0.75rem;
}
.gyls-shop-controls__filter {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  min-height: 2.45rem;
  padding: 0 0.95rem;
  border-radius: var(--gyls-radius-sm);
  border: 1px solid var(--gyls-charcoal);
  background: var(--gyls-charcoal);
  font-family: var(--gyls-font);
  font-weight: 700;
  font-size: 0.84rem;
  letter-spacing: 0.01em;
  cursor: pointer;
  color: #fff;
}
.gyls-shop-controls__filter .gyls-icon {
  width: 1rem;
  height: 1rem;
  color: var(--gyls-mustard);
}
.gyls-shop-controls__filter:hover {
  background: #1f1f1c;
}
.gyls-shop-controls__sort {
  position: relative;
  display: inline-flex;
  align-items: center;
  min-height: 2.45rem;
  padding: 0 0.85rem;
  border: 1px solid var(--gyls-line);
  border-radius: var(--gyls-radius-sm);
  background: var(--gyls-white);
}
.gyls-shop-controls__sort select {
  appearance: none;
  border: 0;
  background: transparent;
  font-family: var(--gyls-font);
  font-weight: 600;
  font-size: 0.84rem;
  color: var(--gyls-charcoal);
  padding-right: 1.15rem;
  min-height: 2.45rem;
  cursor: pointer;
}
.gyls-shop-controls__chevron {
  position: absolute;
  right: 0.7rem;
  pointer-events: none;
  color: var(--gyls-mustard-deep);
  font-size: 0.7rem;
}
.gyls-shop-controls__sort-label,
.gyls-shop-sticky__count,
.gyls-shop-cards__head-actions { display: none; }

.gyls-shop--cards ul.products,
.woocommerce .gyls-shop--cards ul.products,
.woocommerce.gyls-woocommerce .gyls-shop--cards ul.products.columns-4 {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.15rem !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
}
.gyls-shop--cards ul.products::before,
.gyls-shop--cards ul.products::after { display: none !important; content: none !important; }

@media (max-width: 1100px) {
  .gyls-shop--cards ul.products,
  .woocommerce .gyls-shop--cards ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 768px) {
  .gyls-shop-cards__crumbs { display: none; }
  .gyls-shop--cards ul.products,
  .woocommerce .gyls-shop--cards ul.products,
  .woocommerce.gyls-woocommerce .gyls-shop--cards ul.products.columns-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0.85rem 0.7rem !important;
  }
  .gyls-product-card--ref .gyls-product-card__title { font-size: 0.7rem; }
  .gyls-product-card--ref .gyls-product-card__price { font-size: 0.92rem; }
}


/* Shop layout: gallery first; filters as overlay drawer */
.gyls-shop-cards {
  display: block !important;
}
.gyls-shop-cards__sidebar {
  position: static;
}
.gyls-filters-drawer__backdrop {
  display: none;
}
.gyls-filters-drawer__panel {
  display: none;
}
.gyls-shop-cards__sidebar.is-open .gyls-filters-drawer__backdrop {
  display: block;
  position: fixed;
  inset: 0;
  background: rgba(18,18,18,0.45);
  z-index: 120;
}
.gyls-shop-cards__sidebar.is-open .gyls-filters-drawer__panel {
  display: block;
  position: fixed;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 121;
  max-height: min(82vh, 36rem);
  overflow: auto;
  background: #fff;
  border-radius: 1rem 1rem 0 0;
  padding: 1.15rem 1.15rem 1.5rem;
  box-shadow: 0 -12px 40px rgba(18,18,18,0.18);
}
@media (min-width: 1100px) {
  .gyls-container.gyls-shop-cards {
    display: grid !important;
    grid-template-columns: 14.25rem minmax(0, 1fr);
    gap: 1.5rem;
    align-items: start;
  }
  .gyls-filters-drawer__backdrop { display: none !important; }
  .gyls-filters-drawer__panel,
  .gyls-shop-cards__sidebar.is-open .gyls-filters-drawer__panel {
    display: block;
    position: sticky;
    top: calc(var(--gyls-sticky-top, var(--gyls-header-h)) + 0.75rem);
    max-height: calc(100vh - var(--gyls-sticky-top, var(--gyls-header-h)) - 1.5rem);
    overflow: auto;
    border: 1px solid var(--gyls-line);
    border-radius: 0.65rem;
    padding: 0.85rem 0.8rem 0.95rem;
    background: #fff;
    box-shadow: none;
    left: auto; right: auto; bottom: auto;
  }
  .gyls-shop-cards__close-filters { display: none; }
  .gyls-shop-controls__filter { display: none; }
  .gyls-filters-drawer__head {
    display: none;
  }
}

/* ——— Clean compact filters ——— */
.gyls-filter-block {
  margin: 0 0 0.85rem;
  padding: 0 0 0.85rem;
  border-bottom: 1px solid var(--gyls-line);
}
.gyls-filter-block:last-of-type {
  border-bottom: 0;
  margin-bottom: 0.55rem;
  padding-bottom: 0.35rem;
}
.gyls-filter-block__title,
.gyls-shop-cards__side-head strong {
  display: block;
  margin: 0 0 0.45rem;
  font-family: var(--gyls-font);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--gyls-muted);
}

.gyls-shop-cats {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.2rem;
}
.gyls-shop-cats__item {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 1.95rem;
  margin: 0;
  padding: 0.3rem 0.55rem;
  border: 1px solid transparent;
  border-radius: 0.4rem;
  background: transparent;
  color: var(--gyls-charcoal);
  font-family: var(--gyls-font);
  font-size: 0.82rem;
  font-weight: 600;
  line-height: 1.25;
  text-align: left;
  cursor: pointer;
}
.gyls-shop-cats__item:hover {
  background: var(--gyls-ivory);
  border-color: var(--gyls-line);
}
.gyls-shop-cats__item.is-active {
  background: rgba(232, 160, 30, 0.14);
  border-color: var(--gyls-mustard);
  color: var(--gyls-charcoal);
  font-weight: 700;
}

.gyls-filter-slider {
  display: grid;
  gap: 0.35rem;
}
.gyls-filter-slider input[type="range"] {
  width: 100%;
  height: 1.35rem;
  margin: 0;
  accent-color: var(--gyls-mustard);
  cursor: pointer;
}
.gyls-filter-slider input[type="range"]::-webkit-slider-runnable-track {
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--gyls-mustard) 0%, var(--gyls-mustard) var(--gyls-range-pct, 100%), #ebe6df var(--gyls-range-pct, 100%));
}
.gyls-filter-slider input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 14px;
  height: 14px;
  margin-top: -5px;
  border-radius: 50%;
  background: var(--gyls-mustard);
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px var(--gyls-mustard-deep);
}
.gyls-filter-slider input[type="range"]::-moz-range-track {
  height: 4px;
  border-radius: 999px;
  background: #ebe6df;
}
.gyls-filter-slider input[type="range"]::-moz-range-progress {
  height: 4px;
  border-radius: 999px;
  background: var(--gyls-mustard);
}
.gyls-filter-slider input[type="range"]::-moz-range-thumb {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--gyls-mustard);
  border: 2px solid #fff;
  box-shadow: 0 0 0 1px var(--gyls-mustard-deep);
}
.gyls-filter-slider__labels {
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
  font-size: 0.72rem;
  font-weight: 600;
  color: var(--gyls-muted);
}

.gyls-filter-swatches {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.3rem 0.4rem;
}
.gyls-filter-swatch {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  min-height: 1.7rem;
  margin: 0;
  padding: 0.15rem 0.2rem;
  cursor: pointer;
  border-radius: 0.35rem;
}
.gyls-filter-swatch:hover { background: var(--gyls-ivory); }
.gyls-filter-swatch input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.gyls-filter-swatch__chip {
  width: 1.05rem;
  height: 1.05rem;
  border-radius: 0.28rem;
  border: 1px solid rgba(18, 18, 18, 0.18);
  flex: 0 0 auto;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.35);
}
.gyls-filter-swatch__label {
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--gyls-ink);
  line-height: 1.2;
}
.gyls-filter-swatch input:checked + .gyls-filter-swatch__chip,
.gyls-filter-swatch.is-active .gyls-filter-swatch__chip {
  outline: 2px solid var(--gyls-mustard);
  outline-offset: 1px;
  border-color: var(--gyls-mustard-deep);
}

.gyls-filter-checks {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.2rem;
}
.gyls-filter-check {
  display: grid;
  grid-template-columns: 1rem 1fr;
  align-items: start;
  gap: 0.45rem;
  min-height: 1.7rem;
  margin: 0;
  padding: 0.2rem 0.15rem;
  cursor: pointer;
  border-radius: 0.35rem;
}
.gyls-filter-check:hover { background: var(--gyls-ivory); }
.gyls-filter-check input {
  width: 0.9rem;
  height: 0.9rem;
  margin: 0.15rem 0 0;
  accent-color: var(--gyls-mustard);
  flex: 0 0 auto;
}
.gyls-filter-check span {
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--gyls-ink);
  line-height: 1.3;
}

.gyls-filters-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.4rem;
  margin-top: 0.35rem;
  padding-top: 0.65rem;
  border-top: 1px solid var(--gyls-line);
}
.gyls-filters-actions .gyls-btn {
  min-height: 2.15rem;
  padding: 0.35rem 0.55rem;
  font-size: 0.8rem;
  font-weight: 700;
  width: 100%;
}
.gyls-filters-actions__apply {
  background: var(--gyls-mustard) !important;
  color: var(--gyls-charcoal) !important;
  border-color: var(--gyls-mustard-deep) !important;
}
.gyls-filters-actions__clear {
  background: #fff !important;
  color: var(--gyls-charcoal) !important;
  border: 1px solid var(--gyls-line) !important;
}
.gyls-filters-actions__clear:hover {
  border-color: var(--gyls-mustard) !important;
}

@media (max-width: 1099px) {
  .gyls-shop-cards__sidebar.is-open .gyls-filters-drawer__panel {
    padding: 1rem 1rem 1.25rem;
  }
  .gyls-filters-drawer__head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.65rem;
  }
  .gyls-filters-drawer__head strong {
    font-size: 0.95rem;
    letter-spacing: -0.01em;
    text-transform: none;
    color: var(--gyls-charcoal);
  }
  .gyls-filter-swatches {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* PDP — main row (gallery+summary) separate from tabs so sticky can't overlap */
.gyls-pdp-product,
.woocommerce div.product.gyls-pdp-product {
  display: block;
  padding: 1.5rem 0 3rem;
  width: var(--gyls-container);
  margin-inline: auto;
}
.gyls-pdp__main {
  display: grid;
  grid-template-columns: 1.05fr 0.95fr;
  gap: 2rem;
  align-items: start;
}
.gyls-pdp__gallery {
  background: var(--gyls-cream);
  border-radius: var(--gyls-radius);
  overflow: hidden;
  padding: 1rem;
}
.gyls-pdp__gallery .woocommerce-product-gallery__image img,
.gyls-pdp__gallery img {
  width: 100%;
  height: auto;
  object-fit: contain;
  object-position: center;
}
.gyls-pdp__gallery .woocommerce-product-gallery__image {
  overflow: hidden;
}
.gyls-pdp__gallery .woocommerce-product-gallery__image a {
  display: block;
}

.gyls-pdp__summary .product_title {
  font-size: clamp(1.5rem, 3vw, 2rem);
  margin: 0 0 0.75rem;
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.2;
  color: var(--gyls-charcoal);
}
.gyls-pdp__summary .price {
  font-size: 1.45rem;
  font-weight: 800;
  color: var(--gyls-charcoal) !important;
  margin: 0 0 1rem;
}
.gyls-pdp__summary .price del {
  color: var(--gyls-muted);
  font-size: 1rem;
  font-weight: 500;
}
.gyls-pdp__summary .single_add_to_cart_button,
.woocommerce .gyls-pdp__summary button.single_add_to_cart_button {
  background: var(--gyls-mustard) !important;
  color: var(--gyls-charcoal) !important;
  border: 1px solid var(--gyls-mustard-deep) !important;
  border-radius: var(--gyls-radius-sm) !important;
  font-weight: 700 !important;
  min-height: 3rem !important;
  padding: 0.75rem 1.25rem !important;
}
.gyls-pdp__summary .single_add_to_cart_button:hover {
  background: var(--gyls-mustard-bright) !important;
}
.gyls-pdp__tabs {
  display: block;
  width: 100%;
  margin-top: 1.5rem;
  border-top: 1px solid var(--gyls-line);
  padding-top: 1.5rem;
  position: relative;
  z-index: 1;
  background: var(--gyls-cream, #faf9f6);
}
@media (max-width: 860px) {
  .gyls-pdp-product,
  .woocommerce div.product.gyls-pdp-product {
    padding-top: 0.75rem;
  }
  .gyls-pdp__summary .product_title,
  .woocommerce div.product.gyls-pdp-product .product_title {
    font-size: clamp(1.35rem, 5.5vw, 1.65rem) !important;
    margin: 0.15rem 0 0.65rem !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em;
  }
  .gyls-pdp__main {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
}

/* Cart / checkout polish */
.woocommerce-cart .woocommerce,
.woocommerce-checkout .woocommerce {
  width: var(--gyls-container);
  margin: 1.5rem auto 3rem;
}
.woocommerce-cart table.cart,
.woocommerce-checkout #order_review {
  background: var(--gyls-white);
  border: 1px solid var(--gyls-line);
  border-radius: var(--gyls-radius);
  overflow: hidden;
}
.woocommerce .button,
.woocommerce button.button,
.woocommerce a.button,
.woocommerce #respond input#submit {
  background: var(--gyls-mustard) !important;
  color: var(--gyls-charcoal) !important;
  border-radius: var(--gyls-radius-sm) !important;
  font-weight: 700 !important;
  border: 1px solid var(--gyls-mustard-deep) !important;
}
.woocommerce .button.alt,
.woocommerce button.button.alt {
  background: var(--gyls-charcoal) !important;
  color: #fff !important;
  border-color: var(--gyls-charcoal) !important;
}
.woocommerce a.checkout-button.button.alt,
.woocommerce .cart_totals .checkout-button,
.woocommerce .wc-proceed-to-checkout a.checkout-button {
  background: var(--gyls-mustard) !important;
  color: var(--gyls-charcoal) !important;
  border-color: var(--gyls-mustard-deep) !important;
}

/* Related / upsells carousel */
.gyls-related,
.related.products.gyls-related,
.upsells.products.gyls-related {
  margin: 2rem 0 2.75rem;
  max-width: 100%;
  overflow: hidden;
}
.gyls-related__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1rem;
}
.gyls-related__title,
.gyls-related h2 {
  margin: 0 !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-size: clamp(1.25rem, 2.5vw, 1.55rem) !important;
  font-weight: 700 !important;
  color: #121212 !important;
}
.gyls-related__controls {
  display: inline-flex;
  gap: 0.4rem;
}
.gyls-related__nav {
  width: 2.5rem;
  height: 2.5rem;
  min-width: 40px;
  min-height: 40px;
  border-radius: 999px;
  border: 1px solid var(--gyls-line, #ebe6df);
  background: #fff;
  color: #121212;
  font-size: 1.35rem;
  line-height: 1;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  transition: background .15s ease, border-color .15s ease, color .15s ease;
}
.gyls-related__nav:hover:not(:disabled) {
  border-color: #e8a01e;
  color: #c48912;
  background: #fff8ea;
}
.gyls-related__nav:disabled {
  opacity: 0.35;
  cursor: default;
}
.gyls-related__viewport {
  overflow: hidden;
  width: 100%;
}
.gyls-related ul.products,
.related.products.gyls-related ul.products,
.upsells.products.gyls-related ul.products,
.woocommerce .gyls-related ul.products {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 0.85rem !important;
  margin: 0 !important;
  padding: 0 0 0.35rem !important;
  list-style: none !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  grid-template-columns: none !important;
}
.gyls-related ul.products::-webkit-scrollbar {
  display: none;
}
.gyls-related ul.products > li.product,
.gyls-related ul.products > .gyls-product-card {
  flex: 0 0 calc((100% - 0.85rem) / 2) !important;
  width: calc((100% - 0.85rem) / 2) !important;
  max-width: calc((100% - 0.85rem) / 2) !important;
  margin: 0 !important;
  scroll-snap-align: start;
  float: none !important;
}
@media (min-width: 700px) {
  .gyls-related ul.products > li.product,
  .gyls-related ul.products > .gyls-product-card {
    flex-basis: calc((100% - 1.7rem) / 3) !important;
    width: calc((100% - 1.7rem) / 3) !important;
    max-width: calc((100% - 1.7rem) / 3) !important;
  }
}
@media (min-width: 1024px) {
  .gyls-related ul.products > li.product,
  .gyls-related ul.products > .gyls-product-card {
    flex-basis: calc((100% - 2.55rem) / 4) !important;
    width: calc((100% - 2.55rem) / 4) !important;
    max-width: calc((100% - 2.55rem) / 4) !important;
  }
}
.gyls-related.is-static .gyls-related__controls,
.gyls-related.is-static .gyls-related__dots {
  display: none !important;
}
.gyls-related__dots {
  display: flex;
  justify-content: center;
  gap: 0.4rem;
  margin-top: 0.85rem;
}
.gyls-related__dot {
  width: 0.5rem;
  height: 0.5rem;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: #d8d2c8;
  cursor: pointer;
}
.gyls-related__dot.is-active {
  background: #e8a01e;
  width: 1.15rem;
}
@media (max-width: 699px) {
  .gyls-related__controls {
    display: none; /* swipe on mobile; dots remain */
  }
  .gyls-related__nav {
    min-width: 44px;
    min-height: 44px;
  }
}


/* PDP ATC — mustard, beat Woo defaults */
.woocommerce div.product.gyls-pdp-product form.cart .single_add_to_cart_button:not(.gyls-btn--cart-outline),
.woocommerce div.product form.cart button.single_add_to_cart_button:not(.gyls-btn--cart-outline),
.woocommerce .gyls-pdp__summary .single_add_to_cart_button.button.alt:not(.gyls-btn--cart-outline),
body.woocommerce .single_add_to_cart_button:not(.gyls-btn--cart-outline),
body.single-product .single_add_to_cart_button:not(.gyls-btn--cart-outline) {
  background: #e8a01e !important;
  background-color: #e8a01e !important;
  color: #121212 !important;
  border: 1px solid #c48912 !important;
  border-radius: 0.5rem !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
  min-height: 2.75rem !important;
  padding: 0 1.1rem !important;
  box-shadow: none !important;
}
body.woocommerce .single_add_to_cart_button:hover,
.woocommerce div.product form.cart .single_add_to_cart_button:hover {
  background: #ffb400 !important;
  background-color: #ffb400 !important;
  color: #121212 !important;
}


/* =========================================================
   2.1.0 — Compact ATC + premium cart/checkout/thank-you
   ========================================================= */

/* PDP form: qty + compact mustard button in one row */
.woocommerce div.product form.cart,
.gyls-pdp__summary form.cart {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.65rem !important;
  margin: 1rem 0 1.15rem !important;
}
.woocommerce div.product form.cart .quantity,
.gyls-pdp__summary form.cart .quantity {
  margin: 0 !important;
  float: none !important;
}
.woocommerce div.product form.cart .quantity .qty,
.gyls-pdp__summary form.cart .qty {
  width: 3.5rem !important;
  min-height: 2.65rem !important;
  height: 2.65rem !important;
  border: 1px solid var(--gyls-line) !important;
  border-radius: 0.5rem !important;
  text-align: center !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 600 !important;
  background: #fff !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button:not(.gyls-btn--cart-outline),
.woocommerce div.product.gyls-pdp-product form.cart .single_add_to_cart_button:not(.gyls-btn--cart-outline),
.woocommerce .gyls-pdp__summary .single_add_to_cart_button.button.alt:not(.gyls-btn--cart-outline),
body.single-product .single_add_to_cart_button:not(.gyls-btn--cart-outline),
body.woocommerce .single_add_to_cart_button:not(.gyls-btn--cart-outline) {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.45rem !important;
  width: auto !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 2.65rem !important;
  min-height: 2.65rem !important;
  max-height: 2.65rem !important;
  padding: 0 1.1rem !important;
  margin: 0 !important;
  line-height: 1 !important;
  font-size: 0.92rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  background: #e8a01e !important;
  color: #121212 !important;
  border: 1px solid #c48912 !important;
  border-radius: 0.5rem !important;
  box-shadow: none !important;
  float: none !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button .gyls-icon,
.woocommerce div.product form.cart .single_add_to_cart_button .gyls-icon svg,
body.single-product .single_add_to_cart_button .gyls-icon,
body.single-product .single_add_to_cart_button svg {
  width: 1.05rem !important;
  height: 1.05rem !important;
  min-width: 1.05rem !important;
  min-height: 1.05rem !important;
  max-width: 1.05rem !important;
  max-height: 1.05rem !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button span {
  line-height: 1 !important;
}
@media (max-width: 480px) {
  .woocommerce div.product form.cart .single_add_to_cart_button {
    flex: 1 1 auto !important;
    min-height: 2.75rem !important;
    height: 2.75rem !important;
    max-height: 2.75rem !important;
    font-size: 0.88rem !important;
    padding: 0 0.9rem !important;
  }
}

/* WhatsApp under ATC — not giant */
.gyls-pdp-extras .gyls-btn--whatsapp,
.gyls-pdp__summary .gyls-btn--whatsapp {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.45rem !important;
  min-height: 2.5rem !important;
  height: auto !important;
  padding: 0.55rem 1rem !important;
  font-size: 0.88rem !important;
  width: auto !important;
  max-width: 100% !important;
}
.gyls-pdp-extras .gyls-btn--whatsapp .gyls-icon,
.gyls-pdp-extras .gyls-btn--whatsapp svg {
  width: 1.05rem !important;
  height: 1.05rem !important;
}

/* ——— Cart ——— */
body.woocommerce-cart,
body.woocommerce-checkout,
body.woocommerce-order-received {
  background: #faf9f6 !important;
}
body.woocommerce-cart .gyls-woo-wrap,
body.woocommerce-checkout .gyls-woo-wrap,
body.woocommerce-order-received .gyls-woo-wrap {
  padding-top: 0.5rem;
  padding-bottom: 3rem;
}
body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce {
  width: min(1120px, calc(100% - 2rem)) !important;
  margin: 0.5rem auto 0 !important;
  font-family: Manrope, system-ui, sans-serif !important;
  color: #252522 !important;
}
body.woocommerce-cart h1,
body.woocommerce-checkout h1,
.woocommerce-order-received h1 {
  font-family: Manrope, system-ui, sans-serif !important;
  font-size: clamp(1.55rem, 3vw, 2rem) !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  color: #121212 !important;
  margin: 0 0 1.25rem !important;
}

.woocommerce-cart table.shop_table,
.woocommerce-checkout table.shop_table {
  border: 1px solid #ebe6df !important;
  border-radius: 0.85rem !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  background: #fff !important;
}
.woocommerce-cart table.shop_table th,
.woocommerce-checkout table.shop_table th,
html body .woocommerce table.cart th {
  background: #f5f1ea !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-transform: uppercase !important;
  color: #6b675f !important;
  padding: 0.55rem 0.75rem !important;
  border: 0 !important;
}
.woocommerce-cart table.shop_table td,
.woocommerce-checkout table.shop_table td,
html body .woocommerce table.cart td {
  padding: 0.65rem 0.75rem !important;
  border-top: 1px solid #ebe6df !important;
  border-color: #ebe6df !important;
  vertical-align: middle !important;
}
/* Compact cart — do NOT require body.woocommerce-cart (nginx stubs omit it) */
html body .woocommerce table.cart.shop_table,
html body table.shop_table.cart {
  table-layout: fixed !important;
  width: 100% !important;
}
html body .woocommerce table.cart .product-remove { width: 2.5rem !important; }
html body .woocommerce table.cart .product-thumbnail { width: 5.5rem !important; }
html body .woocommerce table.cart .product-name { width: auto !important; }
html body .woocommerce table.cart .product-price,
html body .woocommerce table.cart .product-quantity,
html body .woocommerce table.cart .product-subtotal {
  width: 7.5rem !important;
  text-align: right !important;
}
html body .woocommerce table.cart th.product-price,
html body .woocommerce table.cart th.product-quantity,
html body .woocommerce table.cart th.product-subtotal,
html body .woocommerce table.cart th.product-name {
  text-align: inherit;
}
html body .woocommerce table.cart th.product-price,
html body .woocommerce table.cart th.product-quantity,
html body .woocommerce table.cart th.product-subtotal {
  text-align: right !important;
}
html body .woocommerce table.cart td.product-thumbnail,
html body .woocommerce table.cart .product-thumbnail a {
  width: 5.5rem !important;
  max-width: 5.5rem !important;
  vertical-align: middle !important;
}
html body .woocommerce table.cart .product-thumbnail img,
html body .woocommerce table.cart td.product-thumbnail img,
html body .woocommerce-cart-form .product-thumbnail img,
html body .cart_item .product-thumbnail img {
  width: 72px !important;
  max-width: 72px !important;
  height: 72px !important;
  max-height: 72px !important;
  object-fit: cover !important;
  border-radius: 0.45rem !important;
  background: #f5f1ea !important;
  display: block !important;
  margin: 0 !important;
}
html body .woocommerce table.cart .product-name a,
html body .cart_item .product-name a {
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  color: #121212 !important;
  line-height: 1.35 !important;
}
html body .woocommerce table.cart .product-remove a {
  color: #c44536 !important;
  font-size: 1.15rem !important;
}
html body .woocommerce table.cart .quantity .qty {
  width: 3.1rem !important;
  min-height: 2.25rem !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.4rem !important;
  text-align: center !important;
  font-family: Manrope, system-ui, sans-serif !important;
}
html body .woocommerce table.cart .actions {
  background: #fff !important;
  padding: 0.85rem 1rem !important;
}
html body .woocommerce table.cart .coupon {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 0.45rem !important;
  float: none !important;
}
html body .woocommerce table.cart .coupon input.input-text {
  min-height: 2.35rem !important;
  width: 11rem !important;
  max-width: 100% !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.45rem !important;
  padding: 0 0.7rem !important;
  font-size: 0.86rem !important;
}
html body .woocommerce table.cart .coupon .button,
html body .woocommerce table.cart .actions > .button {
  min-height: 2.35rem !important;
  padding: 0.4rem 0.9rem !important;
  font-size: 0.82rem !important;
}
html body .cart_totals,
html body .cart-collaterals .cart_totals {
  background: #fff !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.75rem !important;
  padding: 1rem 1.1rem 1.15rem !important;
  margin-top: 1rem !important;
  max-width: 24rem;
  margin-left: auto;
}
html body .cart_totals h2 {
  font-size: 1rem !important;
  margin: 0 0 0.7rem !important;
  font-family: Manrope, system-ui, sans-serif !important;
}
html body .cart_totals table {
  border: 0 !important;
  background: transparent !important;
}
html body .cart_totals .checkout-button,
html body a.checkout-button.button.alt,
html body .wc-proceed-to-checkout a.checkout-button {
  display: flex !important;
  width: 100% !important;
  justify-content: center !important;
  align-items: center !important;
  min-height: 2.65rem !important;
  max-height: 2.85rem !important;
  background: #e8a01e !important;
  background-color: #e8a01e !important;
  color: #121212 !important;
  border: 1px solid #c48912 !important;
  border-radius: 0.5rem !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  font-family: Manrope, system-ui, sans-serif !important;
  margin-top: 0.75rem !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
@media (max-width: 768px) {
  /* Mobile Shporta — stacked product cards (not a broken wide table) */
  html body .woocommerce table.cart.shop_table,
  html body table.shop_table.cart,
  html body .woocommerce-cart-form table.shop_table {
    display: block !important;
    width: 100% !important;
    table-layout: auto !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  html body .woocommerce table.cart thead {
    display: none !important;
  }
  html body .woocommerce table.cart tbody,
  html body .woocommerce table.cart tfoot {
    display: block !important;
    width: 100% !important;
  }
  html body .woocommerce table.cart tr.cart_item {
    display: grid !important;
    grid-template-columns: 4.25rem minmax(0, 1fr) auto 2.75rem !important;
    grid-template-areas:
      "thumb name name remove"
      "thumb price price price"
      "thumb qty subtotal subtotal" !important;
    column-gap: 0.75rem !important;
    row-gap: 0.25rem !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 0 0.75rem !important;
    padding: 0.85rem !important;
    background: #fff !important;
    border: 1px solid #ebe6df !important;
    border-radius: 0.75rem !important;
    box-shadow: none !important;
  }
  html body .woocommerce table.cart tr.cart_item td {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    border: 0 !important;
    padding: 0 !important;
    text-align: left !important;
    background: transparent !important;
  }
  html body .woocommerce table.cart tr.cart_item td::before {
    display: none !important;
    content: none !important;
  }
  html body .woocommerce table.cart tr.cart_item td.product-thumbnail {
    grid-area: thumb !important;
    align-self: start !important;
  }
  html body .woocommerce table.cart tr.cart_item td.product-name {
    grid-area: name !important;
    align-self: start !important;
    padding-top: 0.15rem !important;
  }
  html body .woocommerce table.cart tr.cart_item td.product-remove {
    grid-area: remove !important;
    justify-self: end !important;
    align-self: start !important;
  }
  html body .woocommerce table.cart tr.cart_item td.product-price {
    grid-area: price !important;
  }
  html body .woocommerce table.cart tr.cart_item td.product-quantity {
    grid-area: qty !important;
    margin-top: 0.2rem !important;
  }
  html body .woocommerce table.cart tr.cart_item td.product-subtotal {
    grid-area: subtotal !important;
    justify-self: end !important;
    text-align: right !important;
    font-weight: 700 !important;
    font-size: 0.95rem !important;
    color: #121212 !important;
    margin-top: 0.2rem !important;
  }
  html body .woocommerce table.cart .product-thumbnail a {
    display: block !important;
    width: 4.25rem !important;
    max-width: 4.25rem !important;
  }
  html body .woocommerce table.cart .product-thumbnail img,
  html body .cart_item .product-thumbnail img {
    width: 4.25rem !important;
    max-width: 4.25rem !important;
    height: 4.25rem !important;
    max-height: 4.25rem !important;
    object-fit: cover !important;
    border-radius: 0.45rem !important;
  }
  html body .woocommerce table.cart .product-name a {
    font-size: 0.9rem !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden !important;
  }
  html body .woocommerce table.cart .product-price {
    font-size: 0.86rem !important;
    color: #5a574f !important;
  }
  html body .woocommerce table.cart .product-price del {
    opacity: 0.65;
    margin-right: 0.25rem;
  }
  html body .woocommerce table.cart .product-remove a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 2.75rem !important;
    height: 2.75rem !important;
    min-width: 44px !important;
    min-height: 44px !important;
    font-size: 1.35rem !important;
    line-height: 1 !important;
    color: #c44536 !important;
    border-radius: 0.45rem !important;
  }
  html body .woocommerce table.cart .quantity .qty {
    width: 3.25rem !important;
    min-height: 2.5rem !important;
    height: 2.5rem !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
  }
  html body .woocommerce table.cart tr:not(.cart_item) {
    display: block !important;
    width: 100% !important;
  }
  html body .woocommerce table.cart td.actions {
    display: block !important;
    width: 100% !important;
    margin-top: 0.15rem !important;
    padding: 0.85rem !important;
    background: #fff !important;
    border: 1px solid #ebe6df !important;
    border-radius: 0.75rem !important;
  }
  html body .woocommerce table.cart .coupon {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    float: none !important;
    gap: 0.5rem !important;
    margin: 0 0 0.55rem !important;
  }
  html body .woocommerce table.cart .coupon .screen-reader-text,
  html body .woocommerce table.cart .coupon label {
    position: static !important;
    width: auto !important;
    height: auto !important;
    clip: auto !important;
    margin: 0 0 0.15rem !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    color: #5a574f !important;
  }
  html body .woocommerce table.cart .coupon input.input-text {
    width: 100% !important;
    min-height: 2.75rem !important;
  }
  html body .woocommerce table.cart .coupon .button,
  html body .woocommerce table.cart .actions > .button {
    width: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
    float: none !important;
    background: #e8a01e !important;
    background-color: #e8a01e !important;
    color: #121212 !important;
    border: 1px solid #c48912 !important;
    border-radius: 0.5rem !important;
    font-weight: 700 !important;
    font-family: Manrope, system-ui, sans-serif !important;
  }
  html body .woocommerce table.cart .actions > .button {
    background: #fff !important;
    background-color: #fff !important;
    border-color: #ebe6df !important;
    color: #121212 !important;
  }
  html body .cart-collaterals,
  html body .woocommerce .cart-collaterals {
    width: 100% !important;
    float: none !important;
    margin-top: 0.85rem !important;
  }
  html body .cart_totals,
  html body .cart-collaterals .cart_totals {
    max-width: none !important;
    width: 100% !important;
    margin-left: 0 !important;
    margin-top: 0 !important;
  }
  html body .cart_totals .checkout-button,
  html body a.checkout-button,
  html body a.checkout-button.button.alt {
    width: 100% !important;
    min-height: 48px !important;
    max-height: none !important;
    font-size: 0.95rem !important;
  }
  html body .woocommerce .return-to-shop .button,
  html body .wc-empty-cart-message + .return-to-shop .button,
  html body .cart-empty + p .button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 0 1.1rem !important;
    background: #e8a01e !important;
    color: #121212 !important;
    border: 1px solid #c48912 !important;
    border-radius: 0.5rem !important;
    font-weight: 700 !important;
  }
}
.woocommerce .cart-empty.woocommerce-info,
.woocommerce .wc-empty-cart-message .cart-empty,
.woocommerce-info.cart-empty {
  background: #fff !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.85rem !important;
  color: #252522 !important;
  padding: 1.15rem 1.2rem !important;
  font-family: Manrope, system-ui, sans-serif !important;
}
.woocommerce .cart-empty.woocommerce-info::before,
.woocommerce-info.cart-empty::before {
  display: none !important;
}
.woocommerce .return-to-shop {
  margin-top: 0.85rem !important;
}

/* ——— Checkout ——— */
.woocommerce-checkout .woocommerce {
  display: block !important;
}
.woocommerce-checkout .col2-set {
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr;
  gap: 1.5rem !important;
  width: 100% !important;
  float: none !important;
}
.woocommerce-checkout .col2-set .col-1,
.woocommerce-checkout .col2-set .col-2 {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
}
@media (max-width: 900px) {
  .woocommerce-checkout .col2-set {
    grid-template-columns: 1fr !important;
  }
}
.woocommerce-checkout #customer_details,
.woocommerce-checkout #order_review,
.woocommerce-checkout #order_review_heading {
  background: #fff !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.85rem !important;
}
.woocommerce-checkout #customer_details {
  padding: 1.25rem 1.35rem 1.5rem !important;
}
.woocommerce-checkout #order_review_heading {
  margin: 0 0 0.75rem !important;
  padding: 1rem 1.25rem 0.25rem !important;
  border-bottom: 0 !important;
  font-size: 1.1rem !important;
  background: transparent !important;
  border: 0 !important;
}
.woocommerce-checkout #order_review {
  padding: 0.5rem 1.25rem 1.35rem !important;
}
.woocommerce-checkout .woocommerce-billing-fields h3,
.woocommerce-checkout .woocommerce-additional-fields h3,
.woocommerce-checkout #order_review_heading {
  font-family: Manrope, system-ui, sans-serif !important;
  font-size: 1.15rem !important;
  font-weight: 700 !important;
  color: #121212 !important;
}
.woocommerce-checkout .form-row {
  margin-bottom: 0.85rem !important;
  padding: 0 !important;
}
.woocommerce-checkout .form-row label {
  font-size: 0.82rem !important;
  font-weight: 600 !important;
  color: #6b675f !important;
  margin-bottom: 0.3rem !important;
}
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .select2-container .select2-selection--single {
  min-height: 2.65rem !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.5rem !important;
  padding: 0.55rem 0.8rem !important;
  background: #faf9f6 !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-size: 0.95rem !important;
  color: #121212 !important;
  box-shadow: none !important;
}
.woocommerce-checkout .form-row textarea {
  min-height: 5.5rem !important;
}
.woocommerce-checkout #payment {
  background: #faf9f6 !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.75rem !important;
  padding: 1rem !important;
}
.woocommerce-checkout #payment ul.payment_methods {
  border: 0 !important;
  padding: 0 !important;
}
.woocommerce-checkout #payment .payment_method_cod label {
  font-weight: 700 !important;
}
.woocommerce-checkout #place_order {
  display: flex !important;
  width: 100% !important;
  justify-content: center !important;
  align-items: center !important;
  min-height: 2.95rem !important;
  max-height: 2.95rem !important;
  margin-top: 0.85rem !important;
  background: #e8a01e !important;
  color: #121212 !important;
  border: 1px solid #c48912 !important;
  border-radius: 0.55rem !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  float: none !important;
}
.woocommerce-checkout #place_order:hover {
  background: #ffb400 !important;
}

/* Thank you */
.woocommerce-order {
  background: #fff !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.85rem !important;
  padding: 1.5rem !important;
  max-width: 720px;
  margin: 0 auto;
}
.woocommerce-order .woocommerce-thankyou-order-received {
  font-size: 1.25rem !important;
  font-weight: 700 !important;
  color: #121212 !important;
}
.woocommerce-order-overview {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 0.75rem !important;
  list-style: none !important;
  padding: 0 !important;
  margin: 1.25rem 0 !important;
}
.woocommerce-order-overview li {
  background: #faf9f6 !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.65rem !important;
  padding: 0.85rem 1rem !important;
  margin: 0 !important;
}
@media (max-width: 560px) {
  .woocommerce-order-overview { grid-template-columns: 1fr !important; }
}

/* Override generic black alt buttons on checkout place order */
.woocommerce-checkout button.button.alt#place_order {
  background: #e8a01e !important;
  color: #121212 !important;
  border-color: #c48912 !important;
}


/* 2.1.0 nuclear checkout — beat Woo purple/defaults */
body.woocommerce-checkout #place_order.button.alt,
body.woocommerce-checkout button#place_order,
body.woocommerce-checkout #payment #place_order,
body.woocommerce-checkout #payment .place-order button,
html body.woocommerce-checkout .woocommerce button.button.alt#place_order {
  background: #e8a01e !important;
  background-color: #e8a01e !important;
  background-image: none !important;
  color: #121212 !important;
  border: 1px solid #c48912 !important;
  border-radius: 0.55rem !important;
  min-height: 2.95rem !important;
  max-height: 3.25rem !important;
  height: auto !important;
  width: 100% !important;
  float: none !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 1rem !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
html body.woocommerce-checkout #customer_details {
  background: #ffffff !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.85rem !important;
  padding: 1.25rem 1.35rem 1.5rem !important;
}
html body.woocommerce-checkout #order_review {
  background: #ffffff !important;
  border: 1px solid #ebe6df !important;
  border-radius: 0.85rem !important;
  padding: 1rem 1.25rem 1.35rem !important;
}
html body.woocommerce-checkout .col2-set {
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  gap: 1.5rem !important;
  float: none !important;
  width: 100% !important;
}
html body.woocommerce-checkout .col2-set::before,
html body.woocommerce-checkout .col2-set::after { display: none !important; content: none !important; }
html body.woocommerce-checkout .col2-set .col-1,
html body.woocommerce-checkout .col2-set .col-2 {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
}
@media (max-width: 900px) {
  html body.woocommerce-checkout .col2-set {
    grid-template-columns: 1fr !important;
  }
}

/* 2.1.1 — kill Woo blue notices / lavender payment / olive sale badge */
html body.woocommerce-checkout .woocommerce-info,
html body.woocommerce-cart .woocommerce-info,
html body.woocommerce-checkout .woocommerce-message,
html body.woocommerce-cart .woocommerce-message,
html body.woocommerce .woocommerce-info {
  background: #fff !important;
  border: 1px solid #ebe6df !important;
  border-top: 3px solid #e8a01e !important;
  color: #121212 !important;
  border-radius: 0.65rem !important;
  box-shadow: none !important;
}
html body.woocommerce-checkout .woocommerce-info::before,
html body.woocommerce-cart .woocommerce-info::before,
html body.woocommerce .woocommerce-info::before,
html body.woocommerce-checkout .woocommerce-message::before {
  color: #e8a01e !important;
}
html body.woocommerce-checkout #payment div.payment_box,
html body.woocommerce-checkout #payment div.payment_box::before {
  background: #fff !important;
  color: #252522 !important;
  border: 1px solid #ebe6df !important;
}
html body.woocommerce-checkout #payment div.payment_box::before {
  border: 0 !important;
  box-shadow: none !important;
}
html body.woocommerce span.onsale,
html body.single-product span.onsale,
.woocommerce span.onsale {
  background: #e8a01e !important;
  background-color: #e8a01e !important;
  color: #121212 !important;
  border: 0 !important;
  text-shadow: none !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
}


/* Mobile QA fixes */
@media (max-width: 960px) {
  .gyls-shop-controls__filter {
    min-height: 44px;
    min-width: 44px;
  }
  .gyls-shop-controls__sort {
    min-height: 44px;
  }
  .gyls-filters-actions .gyls-btn {
    min-height: 44px;
    font-size: 0.84rem;
  }
  .gyls-shop-cats__item {
    min-height: 44px;
  }
  .woocommerce-product-gallery,
  .gyls-pdp__gallery,
  .woocommerce div.product div.images {
    max-width: 100% !important;
    overflow: hidden !important;
  }
  .woocommerce-product-gallery__wrapper,
  .woocommerce-product-gallery__image {
    max-width: 100% !important;
    overflow: hidden !important;
  }
  .woocommerce-product-gallery .zoomImg,
  .woocommerce div.product div.images .zoomImg {
    display: none !important;
    max-width: 0 !important;
    max-height: 0 !important;
  }
  .gyls-pdp-product,
  .woocommerce div.product.gyls-pdp-product {
    width: min(100% - 1.5rem, 1120px) !important;
    padding: 1rem 0 2.25rem !important;
  }
  .gyls-pdp-product .gyls-pdp__main {
    grid-template-columns: 1fr !important;
    gap: 1rem !important;
  }
  .gyls-pdp__gallery { padding: 0.55rem !important; }
  .woocommerce table.cart .product-remove a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 44px !important;
    height: 44px !important;
    font-size: 1.35rem !important;
  }
  html body .woocommerce table.cart .coupon .button,
  html body .woocommerce table.cart .actions > .button,
  html body .cart_totals .checkout-button {
    min-height: 44px !important;
  }
}


/* =========================================================
   2.2.0 — PDP mobile CTA row (qty + ATC + wish + WhatsApp)
   ========================================================= */
.gyls-pdp-wish {
  display: inline-flex;
  flex: 0 0 auto;
  margin: 0;
}
.gyls-pdp-wish .gyls-wishlist-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 2.75rem !important;
  height: 2.75rem !important;
  min-width: 44px !important;
  min-height: 44px !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 1px solid var(--gyls-line, #ebe6df) !important;
  border-radius: 0.5rem !important;
  background: #fff !important;
  color: #121212 !important;
  box-shadow: none !important;
  cursor: pointer;
}
.gyls-pdp-wish .gyls-wishlist-btn.is-active,
.gyls-pdp-wish .gyls-wishlist-btn[aria-pressed="true"] {
  border-color: #e8a01e !important;
  color: #e8a01e !important;
  background: #fff8ea !important;
}
.gyls-pdp-wish .gyls-wishlist-btn .gyls-icon,
.gyls-pdp-wish .gyls-wishlist-btn svg {
  width: 1.15rem !important;
  height: 1.15rem !important;
}
.gyls-pdp-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  width: 100%;
  margin: 0 0 0.85rem;
}
.gyls-pdp-extras {
  margin-top: 0.15rem;
}
.gyls-pdp-trust {
  margin: 0.15rem 0 0;
  padding: 0;
  list-style: none;
  display: grid;
  gap: 0.35rem;
  font-size: 0.86rem;
  color: #5a574f;
}
.gyls-pdp-trust li {
  position: relative;
  padding-left: 1rem;
}
.gyls-pdp-trust li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 999px;
  background: #e8a01e;
}

/* Unified cart row */
.woocommerce div.product form.cart,
.gyls-pdp__summary form.cart,
body.single-product form.cart {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 0.5rem !important;
  margin: 0.85rem 0 0.65rem !important;
  width: 100% !important;
  max-width: 100% !important;
}
.woocommerce div.product form.cart .quantity,
.gyls-pdp__summary form.cart .quantity {
  flex: 0 0 auto !important;
  margin: 0 !important;
  float: none !important;
}
.woocommerce div.product form.cart .quantity .qty,
.gyls-pdp__summary form.cart .qty,
body.single-product form.cart .qty {
  width: 3.25rem !important;
  min-width: 3.25rem !important;
  height: 2.75rem !important;
  min-height: 44px !important;
  max-height: 2.75rem !important;
  border: 1px solid var(--gyls-line, #ebe6df) !important;
  border-radius: 0.5rem !important;
  text-align: center !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  background: #fff !important;
  color: #121212 !important;
  box-shadow: none !important;
}

.woocommerce div.product form.cart .single_add_to_cart_button,
.woocommerce div.product.gyls-pdp-product form.cart .single_add_to_cart_button,
.woocommerce .gyls-pdp__summary .single_add_to_cart_button.button.alt,
body.single-product .single_add_to_cart_button,
body.woocommerce .single_add_to_cart_button,
body.single-product form.cart .single_add_to_cart_button.button.alt {
  display: inline-flex !important;
  flex: 1 1 auto !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.4rem !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  height: 2.75rem !important;
  min-height: 44px !important;
  max-height: 2.75rem !important;
  padding: 0 0.95rem !important;
  margin: 0 !important;
  line-height: 1 !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  white-space: nowrap !important;
  background: #e8a01e !important;
  background-color: #e8a01e !important;
  background-image: none !important;
  color: #121212 !important;
  border: 1px solid #c48912 !important;
  border-radius: 0.5rem !important;
  box-shadow: none !important;
  text-shadow: none !important;
  float: none !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button:hover,
body.single-product .single_add_to_cart_button:hover {
  background: #ffb400 !important;
  background-color: #ffb400 !important;
  color: #121212 !important;
}
.woocommerce div.product form.cart .single_add_to_cart_button .gyls-icon,
.woocommerce div.product form.cart .single_add_to_cart_button .gyls-icon svg,
body.single-product .single_add_to_cart_button .gyls-icon,
body.single-product .single_add_to_cart_button svg {
  width: 1rem !important;
  height: 1rem !important;
  min-width: 1rem !important;
  min-height: 1rem !important;
  max-width: 1rem !important;
  max-height: 1rem !important;
}

.gyls-pdp-actions .gyls-btn--whatsapp,
.gyls-pdp-extras .gyls-btn--whatsapp,
.gyls-pdp__summary .gyls-btn--whatsapp {
  display: inline-flex !important;
  flex: 1 1 100% !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.45rem !important;
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  height: 2.75rem !important;
  padding: 0 1rem !important;
  margin: 0 !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  border-radius: 0.5rem !important;
  border: 1px solid #1f9e52 !important;
  background: #25d366 !important;
  color: #fff !important;
  box-shadow: none !important;
  white-space: nowrap !important;
}
.gyls-pdp-actions .gyls-btn--whatsapp .gyls-icon,
.gyls-pdp-actions .gyls-btn--whatsapp svg,
.gyls-pdp-extras .gyls-btn--whatsapp .gyls-icon,
.gyls-pdp-extras .gyls-btn--whatsapp svg {
  width: 1.05rem !important;
  height: 1.05rem !important;
}

@media (max-width: 560px) {
  .woocommerce div.product form.cart,
  .gyls-pdp__summary form.cart,
  body.single-product form.cart {
    flex-wrap: nowrap !important;
    gap: 0.45rem !important;
  }
  .woocommerce div.product form.cart .quantity .qty,
  body.single-product form.cart .qty {
    width: 2.9rem !important;
    min-width: 2.9rem !important;
  }
  .woocommerce div.product form.cart .single_add_to_cart_button,
  body.single-product .single_add_to_cart_button {
    font-size: 0.86rem !important;
    padding: 0 0.7rem !important;
  }
  .gyls-pdp-wish .gyls-wishlist-btn {
    width: 2.75rem !important;
    height: 2.75rem !important;
  }
}

/* Product card media — picture fill */
.gyls-product-card__media picture,
.gyls-product-card--ref .gyls-product-card__media picture,
.gyls-product-card--catalog .gyls-product-card__media picture {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
}
.gyls-product-card__media img,
.gyls-product-card--ref .gyls-product-card__media img,
.gyls-product-card--catalog .gyls-product-card__media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
}


/* Mobile photos — PDP gallery + thumbs */
@media (max-width: 860px) {
  .gyls-pdp__gallery {
    padding: 0 !important;
    border-radius: var(--gyls-radius, 0.75rem) !important;
    background: var(--gyls-cream, #ebe6df) !important;
    overflow: hidden !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  .woocommerce div.product div.images,
  .woocommerce-product-gallery,
  .gyls-pdp__gallery .woocommerce-product-gallery {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    float: none !important;
    opacity: 1 !important;
  }
  .woocommerce-product-gallery__wrapper {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
  }
  .woocommerce-product-gallery__image,
  .woocommerce-product-gallery__image--placeholder {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    margin: 0 !important;
    background: var(--gyls-cream, #ebe6df) !important;
  }
  .woocommerce-product-gallery__image a {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
  }
  .woocommerce-product-gallery__image,
  .woocommerce-product-gallery__image--placeholder {
    position: relative !important;
  }
  .woocommerce-product-gallery__image a {
    position: absolute !important;
    inset: 0 !important;
  }
  .woocommerce-product-gallery__image img,
  .woocommerce-product-gallery__image .wp-post-image,
  .gyls-pdp__gallery img,
  .gyls-pdp__gallery .woocommerce-product-gallery__image img {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    object-fit: contain !important;
    object-position: center !important;
  }
  .woocommerce-product-gallery .zoomImg {
    display: none !important;
  }
  .woocommerce-product-gallery__trigger {
    top: 0.65rem !important;
    right: 0.65rem !important;
    z-index: 3 !important;
  }
  .flex-control-nav.flex-control-thumbs,
  ol.flex-control-nav.flex-control-thumbs {
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0.45rem !important;
    margin: 0.55rem 0 0 !important;
    padding: 0 0.55rem 0.55rem !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    list-style: none !important;
  }
  .flex-control-thumbs li {
    flex: 0 0 4rem !important;
    width: 4rem !important;
    height: 4rem !important;
    margin: 0 !important;
    border-radius: 0.45rem !important;
    overflow: hidden !important;
    border: 1px solid var(--gyls-line, #ebe6df) !important;
    background: #fff !important;
  }
  .flex-control-thumbs li img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    opacity: 1 !important;
  }
  .flex-control-thumbs li img.flex-active {
    outline: 2px solid #e8a01e;
    outline-offset: -2px;
  }
}

/* Mobile cart card thumb lock */
@media (max-width: 768px) {
  html body .woocommerce table.cart .product-thumbnail img,
  html body .woocommerce-cart-form .product-thumbnail img,
  html body .cart_item .product-thumbnail img,
  html body .woocommerce table.shop_table.cart td.product-thumbnail img {
    width: 4.25rem !important;
    max-width: 4.25rem !important;
    height: 4.25rem !important;
    max-height: 4.25rem !important;
    object-fit: cover !important;
  }
}


/* Whole-card hit target → PDP */
.gyls-product-card--ref,
.gyls-product-card--catalog,
li.product.gyls-product-card {
  position: relative !important;
  cursor: pointer;
}
.gyls-product-card__hit {
  position: absolute !important;
  inset: 0 !important;
  z-index: 2 !important;
  display: block !important;
  border-radius: inherit;
  text-indent: -9999px;
  overflow: hidden;
}
.gyls-product-card__title {
  position: relative;
  z-index: 1;
  color: inherit;
  text-decoration: none;
  pointer-events: none; /* hit link covers card */
}
.gyls-product-card__media {
  pointer-events: none;
}
.gyls-product-card__actions,
.gyls-product-card__actions a,
.gyls-product-card__actions button,
.gyls-wishlist-btn,
.gyls-product-card__arrow,
.gyls-btn--whatsapp,
a.add_to_cart_button,
button.add_to_cart_button {
  position: relative;
  z-index: 3 !important;
}


/* =========================================================
   2.2.8 — Desktop PDP ATC: full summary width + premium CTA
   ========================================================= */
@media (min-width: 861px) {
  /* Product is a column stack; grid lives only on .gyls-pdp__main */
  .woocommerce div.product.gyls-pdp-product,
  .gyls-pdp-product.product {
    display: block !important;
  }
  .gyls-pdp-product .gyls-pdp__main {
    display: grid !important;
    grid-template-columns: 1.05fr 0.95fr !important;
    gap: 2rem !important;
    align-items: start !important;
  }
  .woocommerce div.product.gyls-pdp-product::after,
  .woocommerce div.product.gyls-pdp-product::before {
    display: none !important;
    content: none !important;
  }
  .woocommerce div.product.gyls-pdp-product div.images,
  .woocommerce div.product.gyls-pdp-product .woocommerce-product-gallery,
  .gyls-pdp-product .gyls-pdp__gallery {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
  }
  .woocommerce div.product.gyls-pdp-product div.summary,
  .woocommerce div.product.gyls-pdp-product .summary.entry-summary,
  .gyls-pdp-product .gyls-pdp__summary {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    clear: none !important;
  }
  .gyls-pdp-product .gyls-pdp__tabs {
    display: block !important;
    width: 100% !important;
    grid-column: auto !important;
  }

  /* Desktop CTA row */
  .woocommerce div.product.gyls-pdp-product form.cart,
  .gyls-pdp__summary form.cart,
  body.single-product form.cart {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: stretch !important;
    gap: 0.65rem !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 1rem 0 0.75rem !important;
  }
  .woocommerce div.product.gyls-pdp-product form.cart .quantity .qty,
  .gyls-pdp__summary form.cart .qty,
  body.single-product form.cart .qty {
    width: 3.5rem !important;
    min-width: 3.5rem !important;
    height: 2.9rem !important;
    min-height: 46px !important;
    max-height: 2.9rem !important;
    font-size: 1rem !important;
  }
  .woocommerce div.product.gyls-pdp-product form.cart .single_add_to_cart_button:not(.gyls-btn--cart-outline),
  .woocommerce div.product.gyls-pdp-product form.cart button.single_add_to_cart_button:not(.gyls-btn--cart-outline),
  .gyls-pdp__summary .single_add_to_cart_button.button.alt:not(.gyls-btn--cart-outline),
  body.single-product .gyls-pdp__summary .single_add_to_cart_button:not(.gyls-btn--cart-outline),
  body.single-product form.cart .single_add_to_cart_button:not(.gyls-btn--cart-outline) {
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 12rem !important;
    height: 2.9rem !important;
    min-height: 46px !important;
    max-height: 2.9rem !important;
    padding: 0 1.35rem !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    font-family: Manrope, system-ui, sans-serif !important;
    letter-spacing: 0 !important;
    text-decoration: none !important;
    text-transform: none !important;
    white-space: nowrap !important;
    background: #e8a01e !important;
    background-color: #e8a01e !important;
    background-image: none !important;
    color: #121212 !important;
    border: 1px solid #c48912 !important;
    border-radius: 0.5rem !important;
    box-shadow: none !important;
    text-shadow: none !important;
    line-height: 1 !important;
  }
  .woocommerce div.product.gyls-pdp-product form.cart .single_add_to_cart_button:hover,
  body.single-product .gyls-pdp__summary .single_add_to_cart_button:hover,
  body.single-product form.cart .single_add_to_cart_button:hover {
    background: #d4920f !important;
    background-color: #d4920f !important;
    border-color: #b87d0c !important;
    color: #121212 !important;
    text-decoration: none !important;
  }
  .woocommerce div.product.gyls-pdp-product form.cart .single_add_to_cart_button:focus,
  body.single-product form.cart .single_add_to_cart_button:focus {
    outline: 2px solid #c48912 !important;
    outline-offset: 2px !important;
    text-decoration: none !important;
  }
  .gyls-pdp-wish .gyls-wishlist-btn {
    width: 2.9rem !important;
    height: 2.9rem !important;
    min-width: 46px !important;
    min-height: 46px !important;
  }
  .gyls-pdp-actions,
  .gyls-pdp-extras .gyls-pdp-actions {
    width: 100% !important;
  }
  .gyls-pdp-actions .gyls-btn--whatsapp,
  .gyls-pdp__summary .gyls-btn--whatsapp,
  .gyls-pdp-extras .gyls-btn--whatsapp {
    width: 100% !important;
    max-width: 100% !important;
    height: 2.9rem !important;
    min-height: 46px !important;
    font-size: 0.95rem !important;
  }
}


/* =========================================================
   2.2.9 — Desktop PDP like reference (mustard GYLS tokens)
   ========================================================= */

/* Shared qty + dual CTA base */
.gyls-qty {
  margin: 0 0 0.85rem;
}
.gyls-qty__label {
  display: block;
  margin: 0 0 0.4rem;
  font-size: 0.82rem;
  font-weight: 700;
  color: #121212;
  font-family: Manrope, system-ui, sans-serif;
}
.gyls-qty__controls {
  display: inline-flex;
  align-items: stretch;
  gap: 0;
  border: 1px solid #ebe6df;
  border-radius: 0.5rem;
  overflow: hidden;
  background: #fff;
}
.gyls-qty__btn {
  width: 2.75rem;
  min-width: 44px;
  min-height: 44px;
  border: 0;
  background: #faf9f6;
  color: #121212;
  font-size: 1.15rem;
  font-weight: 700;
  cursor: pointer;
  line-height: 1;
}
.gyls-qty__btn:hover {
  background: #fff8ea;
  color: #c48912;
}
.gyls-qty .quantity {
  margin: 0 !important;
  float: none !important;
}
.gyls-qty .qty,
.gyls-qty__input {
  width: 3.25rem !important;
  min-width: 3.25rem !important;
  height: 2.75rem !important;
  min-height: 44px !important;
  border: 0 !important;
  border-left: 1px solid #ebe6df !important;
  border-right: 1px solid #ebe6df !important;
  border-radius: 0 !important;
  text-align: center !important;
  font-weight: 700 !important;
  font-family: Manrope, system-ui, sans-serif !important;
  background: #fff !important;
  box-shadow: none !important;
}
.gyls-pdp-cta-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.65rem;
  width: 100%;
  margin: 0 0 0.85rem;
}
.gyls-btn--cart-outline.single_add_to_cart_button,
.gyls-pdp-cart .gyls-btn--cart-outline {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.45rem !important;
  width: 100% !important;
  min-height: 48px !important;
  height: 3rem !important;
  padding: 0 1rem !important;
  margin: 0 !important;
  background: #fff !important;
  background-color: #fff !important;
  background-image: none !important;
  color: #c48912 !important;
  border: 1.5px solid #e8a01e !important;
  border-radius: 0.5rem !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  text-decoration: none !important;
  text-transform: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  white-space: nowrap !important;
  float: none !important;
}
.gyls-btn--cart-outline:hover {
  background: #fff8ea !important;
  color: #a8740a !important;
  border-color: #c48912 !important;
  text-decoration: none !important;
}
.gyls-btn--buy-now {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.4rem !important;
  width: 100% !important;
  min-height: 48px !important;
  height: 3rem !important;
  padding: 0 1rem !important;
  margin: 0 !important;
  background: #e8a01e !important;
  background-color: #e8a01e !important;
  color: #fff !important;
  border: 1.5px solid #c48912 !important;
  border-radius: 0.5rem !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.92rem !important;
  text-decoration: none !important;
  box-shadow: none !important;
  cursor: pointer;
  white-space: nowrap !important;
}
.gyls-btn--buy-now:hover {
  background: #d4920f !important;
  border-color: #b87d0c !important;
  color: #fff !important;
}
.gyls-pdp-price {
  margin: 0.75rem 0 1rem;
}
.gyls-pdp-price__was {
  display: flex;
  align-items: center;
  gap: 0.45rem;
  margin-bottom: 0.25rem;
}
.gyls-pdp-price__was del {
  color: #8a857c;
  font-size: 0.95rem;
  font-weight: 500;
}
.gyls-pdp-price__pct {
  display: inline-flex;
  align-items: center;
  padding: 0.15rem 0.45rem;
  border-radius: 0.35rem;
  background: #e8a01e;
  color: #121212;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.2;
}
.gyls-pdp-price__now {
  font-family: Manrope, system-ui, sans-serif;
  font-size: clamp(1.65rem, 2.4vw, 2.15rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  color: #121212;
  line-height: 1.15;
}
.gyls-pdp-links {
  display: grid;
  gap: 0.55rem;
  margin: 0.25rem 0 1rem;
}
.gyls-pdp-wish-link,
.gyls-pdp-wa-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.45rem;
  width: 100%;
  min-height: 2.5rem;
  padding: 0.35rem 0.5rem;
  border: 0;
  background: transparent;
  color: #121212;
  font-family: Manrope, system-ui, sans-serif;
  font-size: 0.88rem;
  font-weight: 600;
  text-decoration: none;
  cursor: pointer;
}
.gyls-pdp-wish-link:hover,
.gyls-pdp-wa-link:hover {
  color: #c48912;
  text-decoration: none;
}
.gyls-pdp-wish-link .gyls-icon,
.gyls-pdp-wa-link .gyls-icon,
.gyls-pdp-wish-link svg,
.gyls-pdp-wa-link svg {
  width: 1.1rem;
  height: 1.1rem;
  display: block;
}
.gyls-pdp-wish-link.is-active {
  color: #c48912;
}
.gyls-pdp-wa-link {
  color: #1f9e52;
}
.gyls-pdp-wa-link:hover {
  color: #178a45;
}

/* Desktop reference layout — sticky contained to .gyls-pdp__main only */
@media (min-width: 960px) {
  .woocommerce div.product.gyls-pdp-product,
  .gyls-pdp-product.product {
    display: block !important;
    width: min(1040px, calc(100% - 2rem)) !important;
    margin-inline: auto !important;
    padding: 1.25rem 0 2.5rem !important;
  }
  .gyls-pdp-product .gyls-pdp__main {
    display: grid !important;
    grid-template-columns: minmax(0, 420px) minmax(0, 1fr) !important;
    gap: 1.75rem 2rem !important;
    align-items: start !important;
    justify-content: center;
  }
  .gyls-pdp-product .gyls-pdp__gallery,
  .woocommerce div.product.gyls-pdp-product div.images {
    float: none !important;
    width: 100% !important;
    max-width: 420px !important;
    position: sticky;
    top: var(--gyls-sticky-top, 5.5rem);
    z-index: 0;
    align-self: start;
  }
  .gyls-pdp-product .gyls-pdp__summary,
  .woocommerce div.product.gyls-pdp-product div.summary {
    float: none !important;
    width: 100% !important;
    max-width: none !important;
    background: #fff;
    border: 1px solid #ebe6df;
    border-radius: 0.85rem;
    padding: 1.35rem 1.35rem 1.25rem;
    box-shadow: 0 8px 28px rgba(18, 18, 18, 0.05);
    position: sticky;
    top: var(--gyls-sticky-top, 5.5rem);
    z-index: 0;
    align-self: start;
  }
  .gyls-pdp-product .gyls-pdp__tabs {
    display: block !important;
    width: 100% !important;
    margin-top: 2rem !important;
    position: relative;
    z-index: 2;
    background: #faf9f6;
    clear: both;
  }
  .gyls-pdp__summary .product_title {
    font-size: clamp(1.45rem, 2vw, 1.85rem) !important;
    margin: 0 0 0.75rem !important;
    letter-spacing: -0.025em;
  }
  .gyls-pdp__summary .woocommerce-product-details__short-description {
    margin: 0 0 0.85rem;
    color: #5a574f;
    font-size: 0.92rem;
    line-height: 1.5;
  }
  .gyls-pdp__summary .woocommerce-product-details__short-description p {
    margin: 0 0 0.35rem;
  }
  .gyls-pdp-price__now {
    font-size: 2rem;
  }
  .woocommerce div.product.gyls-pdp-product form.cart.gyls-pdp-cart,
  .gyls-pdp__summary form.cart.gyls-pdp-cart,
  body.single-product form.cart.gyls-pdp-cart {
    display: block !important;
    flex-direction: unset !important;
    flex-wrap: unset !important;
    align-items: unset !important;
    gap: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0.85rem 0 0.5rem !important;
  }
  .woocommerce div.product.gyls-pdp-product form.cart.gyls-pdp-cart .single_add_to_cart_button,
  .gyls-pdp__summary form.cart.gyls-pdp-cart .single_add_to_cart_button {
    flex: none !important;
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
  }
  .gyls-pdp-cart .gyls-pdp-wish {
    display: none !important;
  }
  .gyls-qty__controls {
    width: auto;
  }
  .gyls-qty .qty {
    height: 2.9rem !important;
    min-height: 46px !important;
  }
  .gyls-qty__btn {
    min-height: 46px;
    height: 2.9rem;
  }
  .gyls-pdp-cta-row {
    grid-template-columns: 1fr 1fr;
  }
  .gyls-pdp-actions--mobile {
    display: none !important;
  }
  .gyls-pdp-links {
    margin-top: 0.15rem;
  }
  .flex-control-thumbs {
    display: flex !important;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.75rem !important;
    padding: 0 !important;
  }
  .flex-control-thumbs li {
    width: 4.5rem !important;
    height: 4.5rem !important;
    margin: 0 !important;
    border: 1px solid #ebe6df;
    border-radius: 0.45rem;
    overflow: hidden;
  }
  .flex-control-thumbs li img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    opacity: 1 !important;
  }
  .flex-control-thumbs li img.flex-active {
    outline: 2px solid #e8a01e;
    outline-offset: -2px;
  }
  .gyls-pdp__gallery {
    padding: 0 !important;
    background: transparent !important;
  }
  .gyls-pdp-product .woocommerce-product-gallery__image,
  .gyls-pdp__gallery .woocommerce-product-gallery__image {
    position: relative !important;
    aspect-ratio: 1 / 1 !important;
    width: 100% !important;
    max-height: 420px !important;
    height: auto !important;
    border-radius: 0.75rem;
    overflow: hidden !important;
    background: #ebe6df !important;
  }
  .gyls-pdp__gallery .woocommerce-product-gallery__image a {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
  }
  .gyls-pdp-product .woocommerce-product-gallery__image img,
  .gyls-pdp__gallery .woocommerce-product-gallery__image img,
  .gyls-pdp__gallery img.wp-post-image {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    object-fit: contain !important;
    object-position: center !important;
  }
}

/* Hide the basic top “added to cart” banner — drawer replaces it */
.single-product .woocommerce-message,
.woocommerce-message:has(.wc-forward) {
  display: none !important;
}

/* =========================================================
   2.2.12 — Mini cart drawer (right → left)
   ========================================================= */
.gyls-mini-cart {
  position: fixed;
  inset: 0;
  z-index: 10050;
  pointer-events: none;
}
.gyls-mini-cart[hidden] {
  display: none !important;
}
.gyls-mini-cart.is-open {
  pointer-events: auto;
}
.gyls-mini-cart__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  padding: 0;
  margin: 0;
  background: rgba(18, 18, 18, 0.42);
  opacity: 0;
  transition: opacity 0.28s ease;
  cursor: pointer;
}
.gyls-mini-cart.is-open .gyls-mini-cart__backdrop {
  opacity: 1;
}
.gyls-mini-cart__panel {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  flex-direction: column;
  width: min(100vw - 2.5rem, 26.5rem);
  height: 100%;
  background: #fff;
  box-shadow: -12px 0 40px rgba(18, 18, 18, 0.12);
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.22, 1, 0.36, 1);
  font-family: Manrope, system-ui, sans-serif;
}
.gyls-mini-cart.is-open .gyls-mini-cart__panel {
  transform: translateX(0);
}
.gyls-mini-cart__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 1.1rem 1.15rem;
  border-bottom: 1px solid #ebe6df;
}
.gyls-mini-cart__title {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  margin: 0;
  font-size: 1.15rem;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #121212;
}
.gyls-mini-cart__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.45rem;
  height: 1.45rem;
  padding: 0 0.35rem;
  border-radius: 999px;
  background: #e8a01e;
  color: #121212;
  font-size: 0.75rem;
  font-weight: 800;
}
.gyls-mini-cart__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border: 0;
  border-radius: 0.5rem;
  background: #faf9f6;
  color: #121212;
  cursor: pointer;
}
.gyls-mini-cart__close:hover {
  background: #fff8ea;
  color: #c48912;
}
.gyls-mini-cart__body {
  flex: 1 1 auto;
  overflow: auto;
  padding: 0.85rem 1.15rem 1rem;
  -webkit-overflow-scrolling: touch;
}
.gyls-mini-cart__empty {
  display: grid;
  gap: 1rem;
  place-items: start;
  padding: 1.5rem 0;
  color: #5a574f;
}
.gyls-mini-cart__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.85rem;
}
.gyls-mini-cart__item {
  display: grid;
  grid-template-columns: 4.5rem minmax(0, 1fr);
  gap: 0.75rem;
  padding-bottom: 0.85rem;
  border-bottom: 1px solid #ebe6df;
}
.gyls-mini-cart__thumb,
.gyls-mini-cart__thumb a {
  display: block;
  border-radius: 0.45rem;
  overflow: hidden;
  background: #f3efe8;
}
.gyls-mini-cart__thumb img,
.gyls-mini-cart__thumb-img {
  width: 4.5rem !important;
  height: 4.5rem !important;
  object-fit: cover !important;
  display: block;
}
.gyls-mini-cart__meta {
  display: grid;
  gap: 0.3rem;
  align-content: start;
}
.gyls-mini-cart__name {
  font-size: 0.92rem;
  font-weight: 700;
  line-height: 1.3;
  color: #121212;
}
.gyls-mini-cart__name a {
  color: inherit;
  text-decoration: none;
}
.gyls-mini-cart__name a:hover {
  color: #c48912;
}
.gyls-mini-cart__row {
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
  font-size: 0.84rem;
  color: #5a574f;
}
.gyls-mini-cart__price {
  font-weight: 700;
  color: #121212;
}
.gyls-mini-cart__remove {
  justify-self: start;
  margin-top: 0.15rem;
  border: 0;
  padding: 0;
  background: transparent;
  color: #8a857c;
  font-size: 0.78rem;
  font-weight: 600;
  text-decoration: underline;
  cursor: pointer;
}
.gyls-mini-cart__remove:hover {
  color: #c48912;
}
.gyls-mini-cart__footer {
  padding: 1rem 1.15rem 1.25rem;
  border-top: 1px solid #ebe6df;
  background: #faf9f6;
  display: grid;
  gap: 0.55rem;
}
.gyls-mini-cart__subtotal {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 0.25rem;
  font-size: 0.95rem;
  color: #5a574f;
}
.gyls-mini-cart__subtotal strong {
  font-size: 1.15rem;
  font-weight: 800;
  color: #121212;
}
.gyls-mini-cart__checkout,
.gyls-mini-cart__shop,
a.gyls-mini-cart__checkout {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 2.85rem;
  padding: 0.65rem 1rem;
  border-radius: 0.5rem;
  background: #e8a01e !important;
  color: #121212 !important;
  border: 1px solid #c48912 !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  text-decoration: none !important;
  box-shadow: none !important;
}
.gyls-mini-cart__checkout:hover,
.gyls-mini-cart__shop:hover {
  background: #d4920f !important;
  color: #121212 !important;
}
.gyls-mini-cart__continue,
a.gyls-mini-cart__continue {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 2.65rem;
  padding: 0.55rem 1rem;
  border-radius: 0.5rem;
  background: #fff !important;
  color: #121212 !important;
  border: 1.5px solid #ebe6df !important;
  font-family: Manrope, system-ui, sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.9rem !important;
  text-decoration: none !important;
}
.gyls-mini-cart__continue:hover {
  border-color: #e8a01e !important;
  color: #c48912 !important;
}
form.cart.is-adding .single_add_to_cart_button {
  opacity: 0.7;
  pointer-events: none;
}

/* =========================================================
   2.2.12 — My Account polish
   ========================================================= */
.woocommerce-account .entry-content,
.woocommerce-account .gyls-content {
  font-family: Manrope, system-ui, sans-serif;
}
.woocommerce-account .entry-title {
  width: min(960px, calc(100% - 2rem));
  margin: 1.25rem auto 0;
  font-family: Manrope, system-ui, sans-serif;
  font-weight: 800;
  letter-spacing: -0.02em;
}
/* Logged-in: nav + content */
.woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
  width: min(960px, calc(100% - 2rem));
  margin: 1.5rem auto 3rem;
  display: grid !important;
  grid-template-columns: 14rem minmax(0, 1fr);
  gap: 1.5rem;
  align-items: start;
}
/* Logged-out: full-width login/register */
.woocommerce-account .woocommerce:not(:has(.woocommerce-MyAccount-navigation)) {
  width: min(880px, calc(100% - 2rem));
  margin: 1.5rem auto 3rem;
  display: block !important;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
  background: #fff;
  border: 1px solid #ebe6df;
  border-radius: 0.85rem;
  padding: 0.65rem;
  box-shadow: 0 8px 24px rgba(18, 18, 18, 0.04);
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 0.2rem;
}
.woocommerce-account .woocommerce-MyAccount-navigation a {
  display: block;
  padding: 0.7rem 0.85rem;
  border-radius: 0.5rem;
  color: #252522;
  text-decoration: none;
  font-weight: 600;
  font-size: 0.92rem;
}
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-account .woocommerce-MyAccount-navigation a:hover {
  background: #fff8ea;
  color: #c48912;
}
.woocommerce-account .woocommerce-MyAccount-content {
  background: #fff;
  border: 1px solid #ebe6df;
  border-radius: 0.85rem;
  padding: 1.35rem 1.4rem;
  box-shadow: 0 8px 24px rgba(18, 18, 18, 0.04);
}
.woocommerce-account .u-columns.col2-set,
.woocommerce-account #customer_login.u-columns {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 1.25rem !important;
  width: 100% !important;
  float: none !important;
  clear: both !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  box-shadow: none !important;
}
/* Woo clearfix pseudos break CSS grid placement */
.woocommerce-account .u-columns::before,
.woocommerce-account .u-columns::after,
.woocommerce-account .col2-set::before,
.woocommerce-account .col2-set::after {
  display: none !important;
  content: none !important;
}
.woocommerce-account .u-column1,
.woocommerce-account .u-column2,
.woocommerce-account .col-1,
.woocommerce-account .col-2 {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  margin: 0 !important;
  display: block !important;
}
.woocommerce-account .woocommerce-form-login,
.woocommerce-account .woocommerce-form-register {
  background: #fff;
  border: 1px solid #ebe6df;
  border-radius: 0.85rem;
  padding: 1.35rem 1.4rem;
  box-shadow: 0 8px 24px rgba(18, 18, 18, 0.04);
}
.woocommerce-account .woocommerce-form-login h2,
.woocommerce-account .woocommerce-form-register h2 {
  margin: 0 0 1rem;
  font-size: 1.25rem;
  font-weight: 800;
  letter-spacing: -0.02em;
}
.woocommerce-account .woocommerce-form .form-row {
  margin: 0 0 0.85rem;
}
.woocommerce-account .woocommerce-form .form-row label {
  font-weight: 600;
  color: #252522;
}
.woocommerce-account .woocommerce-form .form-row input.input-text {
  width: 100%;
  min-height: 2.65rem;
  border: 1px solid #ebe6df;
  border-radius: 0.5rem;
  background: #faf9f6;
  padding: 0.55rem 0.75rem;
  font-family: Manrope, system-ui, sans-serif;
}
.woocommerce-account .woocommerce-form-login__submit,
.woocommerce-account .woocommerce-form-register__submit,
.woocommerce-account button.woocommerce-Button {
  background: #e8a01e !important;
  color: #121212 !important;
  border: 1px solid #c48912 !important;
  border-radius: 0.5rem !important;
  min-height: 2.75rem !important;
  font-weight: 700 !important;
  font-family: Manrope, system-ui, sans-serif !important;
  box-shadow: none !important;
  width: auto !important;
  padding: 0.65rem 1.35rem !important;
}
.gyls-account-hint {
  margin: 0 0 1rem;
  font-size: 0.92rem;
}
.gyls-account-hint a {
  color: #c48912;
  font-weight: 700;
  text-decoration: none;
}
.gyls-account-hint a:hover {
  text-decoration: underline;
}
.gyls-account-wishlist__lead,
.gyls-account-wishlist__note {
  color: #5a574f;
  margin: 0 0 1rem;
}
@media (max-width: 800px) {
  .woocommerce-account .woocommerce:has(.woocommerce-MyAccount-navigation) {
    grid-template-columns: 1fr;
  }
  .woocommerce-account .u-columns {
    grid-template-columns: 1fr !important;
  }
}

/* Mobile: keep solid mustard ATC + green WA; dual CTAs stack */
@media (max-width: 959px) {
  .gyls-pdp-product .gyls-pdp__main {
    gap: 1.15rem !important;
  }
  .gyls-pdp__summary .product_title,
  .woocommerce div.product.gyls-pdp-product .summary .product_title {
    font-size: clamp(1.35rem, 5.5vw, 1.65rem) !important;
    margin: 0.2rem 0 0.7rem !important;
    padding: 0;
    line-height: 1.25 !important;
  }
  .gyls-pdp-cta-row {
    grid-template-columns: 1fr;
  }
  .gyls-btn--cart-outline.single_add_to_cart_button,
  .gyls-pdp-cart .gyls-btn--cart-outline {
    background: #e8a01e !important;
    background-color: #e8a01e !important;
    color: #121212 !important;
    border-color: #c48912 !important;
  }
  .gyls-btn--cart-outline:hover {
    background: #ffb400 !important;
    color: #121212 !important;
  }
  .gyls-pdp-links {
    display: none; /* use mobile WA button + compact flow */
  }
  .gyls-pdp-actions--mobile {
    display: block;
  }
  .gyls-pdp-price__now {
    font-size: 1.55rem;
  }
  .gyls-pdp-cart {
    display: block !important;
  }
}


/* Desktop outline ATC must beat earlier mustard !important rules */
@media (min-width: 960px) {
  html body.single-product .gyls-pdp__summary form.cart .single_add_to_cart_button.gyls-btn--cart-outline,
  html body.single-product .woocommerce div.product form.cart .single_add_to_cart_button.gyls-btn--cart-outline,
  html body .woocommerce div.product.gyls-pdp-product form.cart .single_add_to_cart_button.gyls-btn--cart-outline.button.alt {
    background: #fff !important;
    background-color: #fff !important;
    background-image: none !important;
    color: #c48912 !important;
    border: 1.5px solid #e8a01e !important;
  }
  html body.single-product .gyls-pdp__summary form.cart .single_add_to_cart_button.gyls-btn--cart-outline:hover,
  html body .woocommerce div.product.gyls-pdp-product form.cart .single_add_to_cart_button.gyls-btn--cart-outline:hover {
    background: #fff8ea !important;
    background-color: #fff8ea !important;
    color: #a8740a !important;
    border-color: #c48912 !important;
  }
  html body.single-product .gyls-pdp__summary form.cart .single_add_to_cart_button.gyls-btn--cart-outline .gyls-icon,
  html body.single-product .gyls-pdp__summary form.cart .single_add_to_cart_button.gyls-btn--cart-outline svg,
  html body.single-product .gyls-pdp__summary form.cart .single_add_to_cart_button.gyls-btn--cart-outline span {
    color: inherit !important;
    stroke: currentColor !important;
  }
}

/* Shop pagination — SSR + AJAX */
.gyls-shop-pagination {
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
  justify-content: center;
  align-items: center;
  margin-top: var(--gyls-space-5, 1.5rem);
  margin-bottom: var(--gyls-space-4, 1rem);
  padding: 0.25rem 0 0.75rem;
}

.gyls-page-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2.6rem;
  min-height: 2.6rem;
  padding: 0 0.65rem;
  border: 1px solid #e6d9c4;
  border-radius: 8px;
  background: #fff;
  color: #2b2418;
  font-weight: 700;
  font-size: 0.95rem;
  line-height: 1;
  text-decoration: none;
  cursor: pointer;
  transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}

.gyls-page-btn:hover,
.gyls-page-btn:focus-visible {
  border-color: #e8a01e;
  color: #a8740a;
  outline: none;
}

.gyls-page-btn.is-active,
.gyls-page-btn[aria-current="page"] {
  background: #e8a01e;
  border-color: #e8a01e;
  color: #fff;
}

.gyls-page-btn.is-disabled,
.gyls-page-btn:disabled {
  opacity: 0.4;
  pointer-events: none;
  cursor: default;
}

.gyls-page-btn--nav {
  font-size: 1.15rem;
  min-width: 2.75rem;
}

.gyls-page-ellipsis {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.5rem;
  color: #8a7a62;
  font-weight: 700;
  user-select: none;
}

@media (max-width: 640px) {
  .gyls-shop-pagination {
    gap: 0.35rem;
  }
  .gyls-page-btn {
    min-width: 2.4rem;
    min-height: 2.4rem;
  }
}
