/* =========================================================
   KK SHOP / CART / CHECKOUT STYLES
   Organized by page/component. Keep this file loaded only on Woo pages.
========================================================= */

/* =========================================================
   GLOBAL SETTINGS
========================================================= */

:root{
  --kk-font: "aktiv-grotesk", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;

  --kk-radius: 16px;
  --kk-gap: 12px;

  --kk-border: rgba(0,0,0,.10);
  --kk-border-strong: rgba(0,0,0,.16);

  --kk-text: rgba(0,0,0,.92);
  --kk-muted: rgba(0,0,0,.62);

  --kk-card: rgba(255,255,255,.96);
  --kk-card-tint: rgba(255,255,255,.96);

  --kk-price: rgb(12, 13, 14);
  --kk-price-discount: rgb(225, 74, 92);

  --kk-badge-sale:    #00a046;
  --kk-badge-popular: #ef262c;
  --kk-badge-new:     #ff5c00;
  --kk-badge-limited: rgb(175, 115, 55);
}

.post-type-archive-product .wp-block-query-title,
.post-type-archive-product .woocommerce-products-header__title{
    display:none;
}

body.post-type-archive-product,
body.tax-product_cat,
body.tax-product_tag{
  font-family: var(--kk-font);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

.wc-block-breadcrumbs,
.wc-block-product-results-count,
.wc-block-catalog-sorting{
  display: none !important;
}

.wp-block-query-title{
  font-family: var(--kk-font) !important;
  font-size: clamp(26px, 2.4vw, 40px) !important;
  line-height: 1.08 !important;
  margin: 10px 0 18px !important;
  letter-spacing: -0.02em;
  color: var(--kk-text) !important;
}

body.post-type-archive-product main,
body.tax-product_cat main,
body.tax-product_tag main{
  background: linear-gradient(180deg, rgba(250,250,252,.80), rgba(255,255,255,0)) !important;
}

/* =========================================================
   SHOP ARCHIVE: GRID AND PRODUCT CARDS
========================================================= */

ul.wc-block-product-template,
ul.wc-block-product-template__responsive{
  display: grid !important;
  gap: var(--kk-gap) !important;
  padding: 0 !important;
  margin: 18px 0 0 !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

@media (min-width: 1200px){
  ul.wc-block-product-template,
  ul.wc-block-product-template__responsive{
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 768px){
  ul.wc-block-product-template,
  ul.wc-block-product-template__responsive{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 420px){
  ul.wc-block-product-template,
  ul.wc-block-product-template__responsive{
    grid-template-columns: 1fr !important;
  }
}

li.wc-block-product{
  list-style: none !important;
  margin: 0 !important;
  position: relative !important;
  padding: 0 0 84px !important;

  border: 1px solid var(--kk-border) !important;
  border-radius: var(--kk-radius) !important;
  overflow: hidden !important;
  background: var(--kk-card-tint) !important;

  display: block !important;
  isolation: isolate;
  cursor: pointer;

  transition:
    border-color .2s ease,
    background .2s ease,
    box-shadow .22s ease,
    transform .22s ease;
}

li.wc-block-product::after{
  content: "";
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 70px;
  height: 1px;
  background: rgba(15,17,21,.08);
  pointer-events: none;
}

li.wc-block-product:hover{
  border-color: var(--kk-border-strong) !important;
  background: var(--kk-card) !important;
  box-shadow:
    0 2px 2px rgba(0,0,0,.03),
    0 18px 40px rgba(0,0,0,.07) !important;
  transform: translateY(-2px);
}

li.wc-block-product > *{
  position: relative;
  z-index: 1;
}

li.wc-block-product .wc-block-components-product-image{
  padding: 12px !important;
  background: radial-gradient(circle at top, rgba(0,0,0,.025), transparent 55%) !important;
  position: relative !important;
}

@media (min-width: 1200px){
  li.wc-block-product .wc-block-components-product-image{
    padding: 10px !important;
  }
}

li.wc-block-product .wc-block-components-product-image a{
  position: relative !important;
  display: block !important;
  border-radius: 12px;
  overflow: hidden;
  cursor: pointer;
}

li.wc-block-product .wc-block-components-product-image img{
  width: 100% !important;
  height: 232px !important;
  object-fit: contain !important;
  display: block !important;
  margin: 0 !important;
  border-radius: 10px !important;

  transform: scale(1.02);
  transition: transform .25s ease;
  filter: saturate(1.02) contrast(1.02);
}

li.wc-block-product:hover .wc-block-components-product-image img{
  transform: scale(1.03);
}

@media (max-width: 768px){
  li.wc-block-product .wc-block-components-product-image img{
    height: auto !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: contain !important;
    transform: none !important;
  }
}

@media (min-width: 1200px){
  li.wc-block-product .wc-block-components-product-image img{
    height: 210px !important;
  }
}

li.wc-block-product h2.wp-block-post-title{
  margin: 0 !important;
  padding: 16px 14px 0 !important;
  text-align: left !important;
  line-height: 1.25 !important;
}

li.wc-block-product h2.wp-block-post-title a{
  font-family: var(--kk-font) !important;
  text-decoration: none !important;
  color: var(--kk-text) !important;
  font-size: 16px !important;
  line-height: 1.22 !important;
  font-weight: 550 !important;
  letter-spacing: -0.015em;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(2 * 1.22em);
  cursor: pointer;
}

li.wc-block-product .kk-card-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 10px 14px 0 !important;
}

li.wc-block-product .kk-card-meta__item{
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 3px 9px;
  border-radius: 999px;
  font-size: 12px;
  line-height: 1.2;
  font-weight: 500;
  white-space: nowrap;
  color: rgba(0,0,0,.62);
  background: rgba(0,0,0,.05);
}

li.wc-block-product .kk-card-meta__cat{
  color: #8a5a11;
  background: rgba(229,162,34,.08);
}

li.wc-block-product .kk-card-meta__condition{
  color: rgba(0,0,0,.60);
  background: rgba(0,0,0,.06);
}

li.wc-block-product .kk-card-meta__stock{
  position: relative;
  padding-left: 18px;
}

li.wc-block-product .kk-card-meta__stock::before{
  content: "";
  position: absolute;
  left: 8px;
  top: 50%;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  transform: translateY(-50%);
}

li.wc-block-product .kk-card-meta__stock.is-instock{
  color: #156f48;
  background: rgba(34,160,110,.10);
}

li.wc-block-product .kk-card-meta__stock.is-instock::before{
  background: #22a06e;
}

li.wc-block-product .kk-card-meta__stock.is-order{
  color: rgba(0,0,0,.58);
  background: rgba(0,0,0,.07);
}

li.wc-block-product .kk-card-meta__stock.is-order::before{
  background: rgba(0,0,0,.34);
}

li.wc-block-product .kk-card-meta__stock.is-no-price, .single-product .related.products ul.products li.product .kk-related-meta__item.is-no-price{
  color: #8a5a11;
  background: rgba(229,162,34,.10);
}

li.wc-block-product .kk-card-meta__stock.is-no-price::before, .single-product .related.products ul.products li.product .kk-related-meta__item.is-no-price::before{
  background: #d29a22;
}

li.wc-block-product .wp-block-woocommerce-product-price{
  position: absolute !important;
  left: 14px !important;
  right: 68px !important;
  bottom: 14px !important;

  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  align-self: auto !important;
}

li.wc-block-product .wc-block-components-product-price{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 2px !important;

  font-family: var(--kk-font) !important;
  font-weight: 700 !important;
  font-size: 20px !important;
  letter-spacing: -0.01em !important;
  color: var(--kk-price) !important;
}

li.wc-block-product .wc-block-components-product-price del{
  order: 0;
  color: rgba(0,0,0,.45) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.1 !important;
  text-decoration-thickness: 1px;
}

li.wc-block-product .wc-block-components-product-price ins{
  order: 1;
  text-decoration: none !important;
}

li.wc-block-product .wc-block-components-product-price ins .woocommerce-Price-amount{
  color: var(--kk-price-discount) !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
}

li.wc-block-product .wp-block-woocommerce-product-button{
  position: absolute !important;
  right: 14px !important;
  bottom: 14px !important;

  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  align-self: auto !important;
}

li.wc-block-product .wc-block-components-product-button__button{
  width: 42px !important;
  height: 42px !important;
  padding: 0 !important;

  border-radius: 10px !important;
  border: 1px solid #e5e5e5 !important;
  background: rgb(66 161 117 / 6%) !important;
  box-shadow: none !important;
  transform: none !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  transition:
    background .18s ease,
    border-color .18s ease,
    transform .14s ease,
    box-shadow .18s ease !important;
}

li.wc-block-product:hover .wc-block-components-product-button__button{
  background: rgba(66,161,117,.14) !important;
  border-color: rgba(15,17,21,.16) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.08) !important;
  transform: translateY(-1px) !important;
}

li.wc-block-product button.wc-block-components-product-button__button::before{
  content: "";
  width: 18px;
  height: 18px;
  background: rgba(0,0,0,.78);
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M6 8h6l6.4 30.6c.4 2 2.2 3.4 4.2 3.4h26.8c2 0 3.7-1.3 4.2-3.2L56 18H16' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='26' cy='54' r='4'/%3E%3Ccircle cx='46' cy='54' r='4'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M6 8h6l6.4 30.6c.4 2 2.2 3.4 4.2 3.4h26.8c2 0 3.7-1.3 4.2-3.2L56 18H16' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='26' cy='54' r='4'/%3E%3Ccircle cx='46' cy='54' r='4'/%3E%3C/svg%3E") center/contain no-repeat;
}

li.wc-block-product button.wc-block-components-product-button__button.kk-in-cart::before{
  background: rgb(34,160,110) !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.2 16.6 4.9 12.3l1.4-1.4 2.9 2.9 7.4-7.4 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.2 16.6 4.9 12.3l1.4-1.4 2.9 2.9 7.4-7.4 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
}

li.wc-block-product a.wc-block-components-product-button__button::before{
  content: "" !important;
  width: 18px !important;
  height: 18px !important;
  background: rgb(57 151 94 / 80%) !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5c-7 0-10 7-10 7s3 7 10 7 10-7 10-7-3-7-10-7Zm0 12c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5Zm0-8a3 3 0 1 0 0 6 3 3 0 0 0 0-6Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5c-7 0-10 7-10 7s3 7 10 7 10-7 10-7-3-7-10-7Zm0 12c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5Zm0-8a3 3 0 1 0 0 6 3 3 0 0 0 0-6Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

li.wc-block-product a.wc-block-components-product-button__button.kk-in-cart::before{
  background: rgb(34,160,110) !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.2 16.6 4.9 12.3l1.4-1.4 2.9 2.9 7.4-7.4 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.2 16.6 4.9 12.3l1.4-1.4 2.9 2.9 7.4-7.4 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
}

li.wc-block-product .wc-block-components-product-image a .kk-badges{
  position: absolute;
  top: 8px;
  left: 8px;
  right: 8px;
  z-index: 3;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: flex-start;
}

li.wc-block-product .kk-badge{
  position: static !important;
  margin: 0 !important;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: -0.01em;
  padding: 6px 12px;
  border-radius: 999px;
  white-space: nowrap;
  color: #fff !important;
  backdrop-filter: blur(6px);
  line-height: normal;
}

.kk-badge--sale{ background: var(--kk-badge-sale) !important; }
.kk-badge--popular{ background: var(--kk-badge-popular) !important; }
.kk-badge--new{ background: var(--kk-badge-new) !important; }
.kk-badge--limited{ background: var(--kk-badge-limited) !important; }

.wc-block-components-product-sale-badge.alignright.wc-block-components-product-sale-badge--align-right {
    display: none !important;
}

body.post-type-archive-product
li.wc-block-product
:where(a, button):focus:not(:focus-visible){
  outline: none !important;
  box-shadow: none !important;
}

body.post-type-archive-product
li.wc-block-product
:where(a, button):focus-visible{
  outline: 2px solid rgba(0,0,0,.25);
  outline-offset: 2px;
}

body.post-type-archive-product li.wc-block-product a.added_to_cart.wc_forward,
body.tax-product_cat li.wc-block-product a.added_to_cart.wc_forward,
body.tax-product_tag li.wc-block-product a.added_to_cart.wc_forward{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.post-type-archive-product li.wc-block-product .wc-block-components-product-button > span[data-wp-bind--hidden*="displayViewCart"],
body.tax-product_cat li.wc-block-product .wc-block-components-product-button > span[data-wp-bind--hidden*="displayViewCart"],
body.tax-product_tag li.wc-block-product .wc-block-components-product-button > span[data-wp-bind--hidden*="displayViewCart"]{
  display: none !important;
}

body.post-type-archive-product li.wc-block-product .wc-block-components-product-button__button > span,
body.tax-product_cat li.wc-block-product .wc-block-components-product-button__button > span,
body.tax-product_tag li.wc-block-product .wc-block-components-product-button__button > span{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.post-type-archive-product li.wc-block-product .wc-block-components-product-button__button,
body.tax-product_cat li.wc-block-product .wc-block-components-product-button__button,
body.tax-product_tag li.wc-block-product .wc-block-components-product-button__button{
  margin-bottom: 0 !important;
}

/* =========================================================
   SHOP ARCHIVE: CARD REFINEMENTS, TRUST BAR AND TOAST
========================================================= */

li.wc-block-product{
  position: relative !important;
  box-shadow:
    0 1px 1px rgba(0,0,0,.02),
    0 10px 24px rgba(0,0,0,.04) !important;
  isolation: isolate;
}

li.wc-block-product::after{
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.34), rgba(255,255,255,0) 32%);
  opacity: .65;
  z-index: 0;
}

li.wc-block-product > *{
  position: relative;
  z-index: 1;
}

li.wc-block-product:hover{
  box-shadow:
    0 2px 2px rgba(0,0,0,.03),
    0 18px 40px rgba(0,0,0,.07) !important;
}

li.wc-block-product .wc-block-components-product-image{
  background:
    radial-gradient(circle at top, rgba(0,0,0,.025), transparent 55%) !important;
}

li.wc-block-product .wc-block-components-product-image a{
  border-radius: 12px;
  overflow: hidden;
}

li.wc-block-product h2.wp-block-post-title{
  padding: 16px 14px 0 !important;
}

li.wc-block-product h2.wp-block-post-title a{
  font-size: 16px !important;
  font-weight: 550 !important;
  line-height: 1.24 !important;
}

li.wc-block-product .kk-card-meta{
  grid-column: 1 / -1 !important;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 9px 14px 0 !important;
}

li.wc-block-product .kk-card-meta__item{
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  line-height: 1;
  font-weight: 600;
  letter-spacing: .01em;
  white-space: nowrap;
}

li.wc-block-product .kk-card-meta__cat{
  color: rgba(0,0,0,.62);
  background: rgba(0,0,0,.045);
}

li.wc-block-product .kk-card-meta__stock{
  position: relative;
  padding-left: 22px;
}

li.wc-block-product .kk-card-meta__stock::before{
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  transform: translateY(-50%);
}

li.wc-block-product .kk-card-meta__stock.is-instock{
  color: #156f48;
  background: rgba(34,160,110,.09);
}

li.wc-block-product .kk-card-meta__stock.is-instock::before{
  background: #22a06e;
}

li.wc-block-product .kk-card-meta__stock.is-order{
  color: #9a5a12;
  background: rgba(201,135,44,.12);
}

li.wc-block-product .kk-card-meta__stock.is-order::before{
  background: #c9872c;
}

li.wc-block-product .wp-block-woocommerce-product-price{
  padding-top: 12px !important;
  padding-bottom: 16px !important;
}

li.wc-block-product .wp-block-woocommerce-product-button{
  padding-top: 12px !important;
  padding-bottom: 16px !important;
}

li.wc-block-product .wc-block-components-product-button__button{
  transition:
    background .18s ease,
    border-color .18s ease,
    transform .14s ease,
    box-shadow .18s ease !important;
}

li.wc-block-product:hover .wc-block-components-product-button__button{
  box-shadow: 0 8px 16px rgba(0,0,0,.06) !important;
}

li.wc-block-product .wc-block-components-product-button__button:active{
  transform: scale(.96) !important;
}

li.wc-block-product .wc-block-components-product-button__button.kk-in-cart{
  border-color: rgba(34,160,110,.30) !important;
  background: rgba(34,160,110,.10) !important;
  /*box-shadow: 0 8px 18px rgba(34,160,110,.10) !important;*/
}

.kk-shop-trustbar{
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 4px 0 18px;
}

.kk-shop-trustbar__item{
  border: 1px solid rgba(0,0,0,.08);
  background: linear-gradient(180deg, rgba(255,255,255,.96), rgba(250,250,250,.96));
  border-radius: 14px;
  padding: 12px 14px;
  min-height: 58px;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.kk-shop-trustbar__title{
  font-size: 13px;
  font-weight: 650;
  color: rgba(0,0,0,.88);
  line-height: 1.2;
}

.kk-shop-trustbar__text{
  margin-top: 3px;
  font-size: 12px;
  color: rgba(0,0,0,.60);
  line-height: 1.35;
}

@media (max-width: 768px){
  .kk-shop-trustbar{
    grid-template-columns: 1fr;
  }
}

.kk-shop-toast{
  position: fixed;
  right: 18px;
  bottom: 18px;
  z-index: 9999;

  display: inline-flex;
  align-items: center;
  gap: 10px;

  min-height: 46px;
  padding: 0 14px;

  border-radius: 999px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(20,20,20,.94);
  color: #fff;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .01em;

  box-shadow: 0 14px 34px rgba(0,0,0,.20);

  opacity: 0;
  transform: translateY(10px) scale(.98);
  pointer-events: none;
  transition:
    opacity .18s ease,
    transform .18s ease,
    right .22s ease,
    bottom .22s ease;
}

.kk-shop-toast.is-visible{
  opacity: 1;
  transform: translateY(0) scale(1);
}

.kk-shop-toast__icon{
  width: 18px;
  height: 18px;
  border-radius: 999px;
  background: rgba(34,160,110,.18);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
}

.wc-block-mini-cart__button.kk-mini-cart-pulse{
  animation: kkMiniCartPulse .5s ease;
}

@keyframes kkMiniCartPulse{
  0%   { transform: scale(1); }
  40%  { transform: scale(1.08); }
  100% { transform: scale(1); }
}

/* =========================================================
   SHOP ARCHIVE: BANNER, FILTERS AND TOOLTIPS
========================================================= */

.kk-shop-banner{
  position: relative;
  width: 100%;
  margin: 20px 0 28px;
  border-radius: 16px;
  overflow: hidden;
  isolation: isolate;
}

.kk-shop-banner > img{
  display: block;
  width: 100%;
  height: clamp(220px, 32vw, 340px);
  object-fit: cover;
}

.kk-shop-banner__overlay{
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.58) 0%, rgba(0,0,0,.34) 38%, rgba(0,0,0,.10) 72%, rgba(0,0,0,.02) 100%),
    linear-gradient(180deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,.28) 100%);
}

.kk-shop-banner__content{
  position: absolute;
  z-index: 2;
  left: clamp(18px, 4vw, 40px);
  bottom: clamp(18px, 4vw, 34px);
  max-width: min(600px, calc(100% - 32px));
  color: #fff;
}

.kk-shop-banner__eyebrow{
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 12px;
  margin: 0 0 10px;
  border-radius: 999px;
  background: rgba(255,255,255,.16);
  backdrop-filter: blur(6px);
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .04em;
  text-transform: uppercase;
}

.kk-shop-banner__content h2{
  margin: 0 0 8px;
  font-size: clamp(28px, 4vw, 42px);
  line-height: 1.02;
  letter-spacing: -0.03em;
  color: #fff;
}

.kk-shop-banner__content p{
  margin: 0;
  max-width: 46ch;
  font-size: clamp(14px, 1.5vw, 17px);
  line-height: 1.45;
  color: rgba(255,255,255,.92);
}

@media (max-width: 768px){
  .kk-shop-banner > img{
    height: 220px;
  }

  .kk-shop-banner__overlay{
    background:
      linear-gradient(180deg, rgba(0,0,0,.22) 0%, rgba(0,0,0,.58) 100%);
  }

  .kk-shop-banner__content{
    max-width: calc(100% - 24px);
    left: 16px;
    right: 16px;
    bottom: 16px;
  }

  .kk-shop-banner__content h2{
    font-size: 28px;
  }
}

.kk-shop-filters-wrap{
  margin: 0 0 22px;
}

.kk-shop-filters{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.kk-shop-filters--child{
  margin-top: 10px;
}

.kk-shop-child-group{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
}

.kk-shop-filter{
  appearance: none;
  border: 1px solid rgba(0,0,0,.10);
  background: #f5f5f5;
  color: rgba(0,0,0,.82);
  border-radius: 999px;
  padding: 10px 15px;
  font: inherit;
  font-size: 14px;
  line-height: 1;
  cursor: pointer;
  transition: background .18s ease, color .18s ease, border-color .18s ease, transform .12s ease;
}

.kk-shop-filter:hover{
  background: #111;
  color: #fff;
  border-color: #111;
}

.kk-shop-filter:active{
  transform: scale(.98);
}

.kk-shop-filter.is-active{
  background: #111;
  color: #fff;
  border-color: #111;
}

.kk-shop-filter--child{
  background: #fff;
}

li.wc-block-product.is-filter-hidden{
  display: none !important;
}

@media (max-width: 768px){
  .kk-shop-filters{
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding-bottom: 4px;
  }

  .kk-shop-filters::-webkit-scrollbar{
    display: none;
  }

  .kk-shop-filter{
    flex: 0 0 auto;
    white-space: nowrap;
  }

  .kk-shop-child-group{
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }

  .kk-shop-child-group::-webkit-scrollbar{
    display: none;
  }
}

.kk-shop-filter--child{
  background:#fff;
  border-color:#ddd;
  font-size:13px;
}
.kk-shop-filters--child{
  margin-top:10px;
}

.kk-shop-child-group[hidden]{
  display:none;
}

li.wc-block-product .kk-card-meta__condition{
  color: rgba(0, 0, 0, .62);
  background: rgba(0, 0, 0, .045);
}

li.wc-block-product .kk-card-meta__condition{
  position: relative;
  cursor: help;
}

@media (hover:hover) and (pointer:fine){
  li.wc-block-product .kk-card-meta__condition[data-tooltip]::after{
    content: attr(data-tooltip);
    position: absolute;
    left: 50%;
    bottom: calc(100% + 8px);
    transform: translateX(-50%) translateY(4px);
    opacity: 0;
    pointer-events: none;
    white-space: nowrap;
    z-index: 20;

    background: rgba(17,17,17,.96);
    color: #fff;
    padding: 7px 10px;
    border-radius: 8px;
    font-size: 12px;
    line-height: 1.2;
    font-weight: 500;
    box-shadow: 0 10px 24px rgba(0,0,0,.18);
    transition: opacity .18s ease, transform .18s ease;
  }

  li.wc-block-product .kk-card-meta__condition[data-tooltip]::before{
    content: "";
    position: absolute;
    left: 50%;
    bottom: calc(100% + 3px);
    transform: translateX(-50%) translateY(4px);
    opacity: 0;
    pointer-events: none;
    z-index: 19;

    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid rgba(17,17,17,.96);
    transition: opacity .18s ease, transform .18s ease;
  }

  li.wc-block-product .kk-card-meta__condition[data-tooltip]:hover::after,
  li.wc-block-product .kk-card-meta__condition[data-tooltip]:hover::before{
    opacity: 1;
    transform: translateX(-50%) translateY(0);
  }
}

/* =========================================================
   SINGLE PRODUCT: RELATED PRODUCTS CARDS
========================================================= */

.single-product .related.products{
  margin-top: 80px;
}

.single-product .related.products > h2{
  margin: 0 0 16px !important;
  font-size: clamp(24px, 3vw, 32px) !important;
  line-height: 1.08 !important;
  letter-spacing: -0.025em;
  color: var(--kk-text, #0f1115) !important;
}

.single-product .related.products ul.products{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  padding: 0 !important;
  margin: 0 !important;
  list-style: none !important;
}

@media (max-width: 1024px){
  .single-product .related.products ul.products{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 767px){
  .single-product .related.products ul.products{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px !important;
  }
}

@media (max-width: 480px){
  .single-product .related.products ul.products{
    grid-template-columns: 1fr !important;
  }
}

.single-product .related.products ul.products li.product{
  position: relative !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 0 84px !important;

  border: 1px solid rgba(15,17,21,.08) !important;
  border-radius: 20px !important;
  overflow: hidden !important;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,249,249,.98)) !important;
  box-shadow: 0 10px 28px rgba(0,0,0,.04) !important;

  transition:
    transform .22s ease,
    box-shadow .22s ease,
    border-color .22s ease,
    background .22s ease;
}

.single-product .related.products ul.products li.product:hover{
  transform: translateY(-3px) !important;
  border-color: rgba(15,17,21,.14) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.08) !important;
  background: linear-gradient(180deg, rgba(255,255,255,1), rgba(249,250,250,1)) !important;
}

.single-product .related.products ul.products li.product::after{
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 72px;
  height: 1px;
  background: rgba(15,17,21,.08);
  pointer-events: none;
}

.single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link{
  display: block !important;
  color: var(--kk-text, #0f1115) !important;
  text-decoration: none !important;
  padding: 0 !important;
}

.single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link img{
  width: calc(100% - 24px) !important;
  height: clamp(190px, 22vw, 240px) !important;
  margin: 12px !important;
  display: block !important;
  object-fit: contain !important;

  border-radius: 14px !important;

  background: radial-gradient(circle at top, rgba(0, 0, 0, .025), transparent 55%) !important;

  transform: scale(1.01);
  transition: transform .28s ease, filter .28s ease;
  filter: saturate(1.02) contrast(1.01);
}

.single-product .related.products ul.products li.product:hover a.woocommerce-LoopProduct-link img{
  transform: scale(1.03);
}

@media (max-width: 767px){
  .single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link img{
    height: auto !important;
    aspect-ratio: 1 / 1;
    transform: none !important;
  }
}

.single-product .related.products ul.products li.product .onsale,
.single-product .related.products ul.products li.product .kk-related-badge{
  position: absolute !important;
  top: 14px !important;
  left: 14px !important;
  z-index: 5 !important;

  display: inline-flex !important;
  align-items: center !important;
  min-height: 20px !important;
  padding: 5px 11px !important;

  border: 0 !important;
  border-radius: 999px !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.10) !important;

  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

.single-product .related.products ul.products li.product .onsale{
  background: #ef262c !important;
  color: #fff !important;
}

.single-product .related.products ul.products li.product .kk-related-badge{
  color: #fff !important;
}

.single-product .related.products ul.products li.product .kk-related-badge--new{
  background: #ff5c00 !important;
}

.single-product .related.products ul.products li.product .kk-related-badge--popular{
  background: #ef262c !important;
}

.single-product .related.products ul.products li.product .kk-related-badge--limited{
  background: rgb(175, 115, 55) !important;
}

.single-product .related.products ul.products li.product .onsale + .kk-related-badge{
  top: 48px !important;
}

.single-product .related.products ul.products li.product .woocommerce-loop-product__title{
  margin: 0 !important;
  padding: 6px 16px 0 !important;
  color: var(--kk-text, #0f1115) !important;

  font-size: 18px !important;
  line-height: 1.22 !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  min-height: calc(2 * 1.22em);
}

.single-product .related.products ul.products li.product .kk-related-meta{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  padding: 10px 16px 0;
}

.single-product .related.products ul.products li.product .kk-related-meta__item{
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 500;
  line-height: normal;
  color: rgba(0,0,0,.62);
  background: rgba(0,0,0,.05);
}

.single-product .related.products ul.products li.product .kk-related-meta__item--cat{

}

.single-product .related.products ul.products li.product .kk-related-meta__item--condition{
  color: rgba(0,0,0,.60);
  background: rgba(0,0,0,.06);
}

.single-product .related.products ul.products li.product .kk-related-meta__item--stock{
  position: relative;
  padding-left: 18px;
}

.single-product .related.products ul.products li.product .kk-related-meta__item--stock::before{
  content: "";
  position: absolute;
  left: 8px;
  top: 50%;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  transform: translateY(-50%);
}

.single-product .related.products ul.products li.product .kk-related-meta__item--stock.is-instock{
  color: #156f48;
  background: rgba(34,160,110,.10);
}

.single-product .related.products ul.products li.product .kk-related-meta__item--stock.is-instock::before{
  background: #22a06e;
}

.single-product .related.products ul.products li.product .kk-related-meta__item--stock.is-order{
  color: rgba(0,0,0,.58);
  background: rgba(0,0,0,.07);
}

.single-product .related.products ul.products li.product .kk-related-meta__item--stock.is-order::before{
  background: rgba(0,0,0,.34);
}

.single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link .price{
  position: absolute !important;
  left: 16px !important;
  right: 70px !important;
  bottom: 16px !important;

  margin: 0 !important;
  padding: 0 !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  gap: 2px !important;

  color: var(--kk-text, #0f1115) !important;
  font-size: 19px !important;
  font-weight: 700 !important;

  letter-spacing: -0.02em !important;
}

.single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link .price del{
  color: rgba(0,0,0,.42) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  line-height: 1.1 !important;
  text-decoration-thickness: 1px;
}

.single-product .related.products ul.products li.product a.woocommerce-LoopProduct-link .price ins{
  text-decoration: none !important;
  color: inherit !important;
}

.single-product .related.products ul.products li.product > a.add_to_cart_button,
.single-product .related.products ul.products li.product > a.product_type_simple,
.single-product .related.products ul.products li.product > a.product_type_variable,
.single-product .related.products ul.products li.product > a.product_type_grouped,
.single-product .related.products ul.products li.product > a.product_type_external{
  position: absolute !important;
  right: 16px !important;
  bottom: 16px !important;

  width: 46px !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 14px !important;
  border: 1px solid rgba(15,17,21,.08) !important;
  background: rgba(66,161,117,.08) !important;
  box-shadow: 0 6px 16px rgba(0,0,0,.05) !important;

  text-decoration: none !important;
  font-size: 0 !important;
  line-height: 0 !important;

  transition:
    background .18s ease,
    border-color .18s ease,
    transform .18s ease,
    box-shadow .18s ease;
}

.single-product .related.products ul.products li.product > a.add_to_cart_button::before,
.single-product .related.products ul.products li.product > a.product_type_simple::before,
.single-product .related.products ul.products li.product > a.product_type_variable::before,
.single-product .related.products ul.products li.product > a.product_type_grouped::before,
.single-product .related.products ul.products li.product > a.product_type_external::before{
  content: "";
  width: 18px;
  height: 18px;
  background: rgba(0,0,0,.78);

  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M6 8h6l6.4 30.6c.4 2 2.2 3.4 4.2 3.4h26.8c2 0 3.7-1.3 4.2-3.2L56 18H16' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='26' cy='54' r='4'/%3E%3Ccircle cx='46' cy='54' r='4'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath d='M6 8h6l6.4 30.6c.4 2 2.2 3.4 4.2 3.4h26.8c2 0 3.7-1.3 4.2-3.2L56 18H16' fill='none' stroke='black' stroke-width='4' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='26' cy='54' r='4'/%3E%3Ccircle cx='46' cy='54' r='4'/%3E%3C/svg%3E") center/contain no-repeat;
}

.single-product .related.products ul.products li.product > a.button.product_type_simple:not(.ajax_add_to_cart)::before,
.single-product .related.products ul.products li.product > a.button.product_type_variable:not(.ajax_add_to_cart)::before,
.single-product .related.products ul.products li.product > a.button.product_type_grouped:not(.ajax_add_to_cart)::before,
.single-product .related.products ul.products li.product > a.button.product_type_external:not(.ajax_add_to_cart)::before{
  background: rgb(57 151 94 / 82%) !important;

  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5c-7 0-10 7-10 7s3 7 10 7 10-7 10-7-3-7-10-7Zm0 12c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5Zm0-8a3 3 0 1 0 0 6 3 3 0 0 0 0-6Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5c-7 0-10 7-10 7s3 7 10 7 10-7 10-7-3-7-10-7Zm0 12c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5Zm0-8a3 3 0 1 0 0 6 3 3 0 0 0 0-6Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

.single-product .related.products ul.products li.product > a.kk-in-cart::before{
  background: rgb(34,160,110) !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.2 16.6 4.9 12.3l1.4-1.4 2.9 2.9 7.4-7.4 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.2 16.6 4.9 12.3l1.4-1.4 2.9 2.9 7.4-7.4 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
}

.single-product .related.products ul.products li.product:hover > a.add_to_cart_button,
.single-product .related.products ul.products li.product:hover > a.product_type_simple,
.single-product .related.products ul.products li.product:hover > a.product_type_variable,
.single-product .related.products ul.products li.product:hover > a.product_type_grouped,
.single-product .related.products ul.products li.product:hover > a.product_type_external{
  background: rgba(66,161,117,.14) !important;
  border-color: rgba(15,17,21,.16) !important;
  box-shadow: 0 10px 22px rgba(0,0,0,.08) !important;
  transform: translateY(-1px) !important;
}

.single-product .related.products ul.products li.product a.added_to_cart.wc_forward{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.added_to_cart.wc-forward {
    display: none !important;
}

/* =========================================================
   CART PAGE
========================================================= */

body.woocommerce-cart main,
body.woocommerce-cart .wp-site-blocks{
  background:
    linear-gradient(180deg, rgba(248,249,249,.92), rgba(255,255,255,0) 38%),
    #fff;
}

body.woocommerce-cart .wp-block-woocommerce-cart{
  max-width: 1180px;
  margin: 0 auto;
  padding: clamp(18px, 3vw, 34px);
}

body.woocommerce-cart .wp-block-post-title,
body.woocommerce-cart .entry-title{
  margin: 0 0 22px !important;
  font-size: clamp(30px, 4vw, 46px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.03em;
  color: rgba(0,0,0,.92) !important;
}

body.woocommerce-cart .wc-block-cart{
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: 34px;
  align-items: start;
}

@media (max-width: 980px){
  body.woocommerce-cart .wc-block-cart{
    grid-template-columns: 1fr;
    gap: 22px;
  }
}

body.woocommerce-cart .wc-block-cart__main{
  min-width: 0;
  width: 100%;
}

body.woocommerce-cart .wc-block-cart__sidebar{
  position: sticky;
  top: 24px;
  width: 100%;

  padding: 22px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 22px;
  background: rgba(255,255,255,.96);
  box-shadow:
    0 1px 2px rgba(0,0,0,.02),
    0 18px 34px rgba(0,0,0,.04);
}

@media (max-width: 980px){
  body.woocommerce-cart .wc-block-cart__sidebar{
    position: static;
  }
}

body.woocommerce-cart .wc-block-cart-items{
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
}

body.woocommerce-cart .wc-block-cart-items thead{
  display: none !important;
}

body.woocommerce-cart .wc-block-cart-items__row{
  position: relative !important;
  display: grid !important;
  grid-template-columns: 104px minmax(0, 1fr) auto !important;
  gap: 18px !important;
  align-items: start !important;

  padding: 18px 0 !important;
  margin: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  background: transparent !important;
}

/*body.woocommerce-cart .wc-block-cart-items__row:first-child{
  padding-top: 4px !important;
}*/

body.woocommerce-cart .wc-block-cart-items__row > td{
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

@media (max-width: 700px){
  body.woocommerce-cart .wc-block-cart-items__row{
    grid-template-columns: 88px minmax(0,1fr) !important;
    gap: 14px !important;
    padding: 16px 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total{
    grid-column: 2;
    justify-content: flex-start !important;
    margin-top: 10px !important;
  }
}

body.woocommerce-cart .wc-block-cart-item__image{
  width: 104px !important;
  min-width: 104px !important;
}

body.woocommerce-cart .wc-block-cart-item__image > a{
  display: block !important;
  width: 104px !important;
  height: 104px !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  background: #f7f7f7 !important;
}

body.woocommerce-cart .wc-block-cart-item__image img{
  width: 104px !important;
  height: 104px !important;
  display: block !important;
  object-fit: contain !important;
  background: #f7f7f7 !important;
}

@media (max-width: 700px){
  body.woocommerce-cart .wc-block-cart-item__image,
  body.woocommerce-cart .wc-block-cart-item__image > a,
  body.woocommerce-cart .wc-block-cart-item__image img{
    width: 88px !important;
    height: 88px !important;
    min-width: 88px !important;
  }
}

body.woocommerce-cart .wc-block-cart-item__product{
  min-width: 0 !important;
}

body.woocommerce-cart .wc-block-components-product-name{
  display: block !important;
  margin: 0 0 8px !important;
  text-decoration: none !important;
  color: rgba(0,0,0,.92) !important;
  font-size: 18px !important;
  line-height: 1.22 !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em;
}

body.woocommerce-cart .wc-block-components-product-name:hover{
  color: rgba(0,0,0,.68) !important;
}

body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-details,
body.woocommerce-cart .wc-block-components-product-details__name,
body.woocommerce-cart .wc-block-components-product-details__value{
  color: rgba(0,0,0,.54) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

body.woocommerce-cart .wc-block-components-product-badge,
body.woocommerce-cart .wc-block-components-sale-badge{
  border: 0 !important;
  border-radius: 999px !important;
  padding: 5px 10px !important;

  font-size: 11px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

body.woocommerce-cart .wc-block-cart-item__quantity{
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
  margin-top: 14px !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  min-width: 108px !important;
  height: 42px !important;

  border: 1px solid rgba(0,0,0,.11) !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector::before,
body.woocommerce-cart .wc-block-components-quantity-selector::after{
  display: none !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button{
  width: 32px !important;
  min-width: 32px !important;
  height: 40px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(0,0,0,.55) !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button:hover{
  background: rgba(0,0,0,.035) !important;
  color: rgba(0,0,0,.88) !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector__input{
  width: 32px !important;
  min-width: 32px !important;
  height: 40px !important;
  border: 0 !important;
  background: transparent !important;
  text-align: center !important;
  color: rgba(0,0,0,.92) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  box-shadow: none !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link,
body.woocommerce-cart button.wc-block-cart-item__remove-link{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 34px !important;
  min-width: 34px !important;
  height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;

  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 999px !important;
  background: transparent !important;
  color: transparent !important;
  font-size: 0 !important;
  text-decoration: none !important;
  box-shadow: none !important;

  transition:
    background .18s ease,
    border-color .18s ease,
    transform .14s ease !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link::before,
body.woocommerce-cart button.wc-block-cart-item__remove-link::before{
  content: "";
  width: 14px;
  height: 14px;
  display: block;
  background: rgba(0,0,0,.55);

  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2H4V5h4l1-2Zm-1 6h2v9H8V9Zm6 0h2v9h-2V9ZM6 7h12l-1 12a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L6 7Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2H4V5h4l1-2Zm-1 6h2v9H8V9Zm6 0h2v9h-2V9ZM6 7h12l-1 12a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L6 7Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.woocommerce-cart button.wc-block-cart-item__remove-link:hover{
  background: rgba(220,38,38,.05) !important;
  border-color: rgba(220,38,38,.16) !important;
  transform: translateY(-1px);
}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover::before,
body.woocommerce-cart button.wc-block-cart-item__remove-link:hover::before{
  background: rgba(160,28,28,.76);
}

body.woocommerce-cart .wc-block-cart-item__total{
  min-width: 110px !important;
  display: flex !important;
  align-items: flex-start !important;
  justify-content: flex-end !important;
  text-align: right !important;
  padding-top: 2px !important;
}

body.woocommerce-cart .wc-block-cart-item__prices,
body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper,
body.woocommerce-cart .wc-block-cart-item__total .price{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 4px !important;
  margin: 0 !important;
}

body.woocommerce-cart .wc-block-formatted-money-amount,
body.woocommerce-cart .wc-block-components-product-price__value{
  color: rgba(0,0,0,.92) !important;
  font-size: 17px !important;
  line-height: 1.1 !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em;
}

body.woocommerce-cart .wc-block-components-text-input input,
body.woocommerce-cart .wc-block-components-form-token-field input{
  min-height: 46px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.woocommerce-cart .wc-block-components-text-input input:focus,
body.woocommerce-cart .wc-block-components-form-token-field input:focus{
  border-color: rgba(31,61,43,.34) !important;
  box-shadow: 0 0 0 3px rgba(31,61,43,.08) !important;
}

body.woocommerce-cart .wc-block-cart__sidebar > * + *{
  margin-top: 14px !important;
}

body.woocommerce-cart .wc-block-cart__totals-title{
  margin: 0 0 10px !important;
  font-size: 24px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em;
  color: rgba(0,0,0,.92) !important;
}

body.woocommerce-cart .wc-block-components-totals-wrapper{
  border: 0 !important;
}

body.woocommerce-cart .wc-block-components-totals-item,
body.woocommerce-cart .wc-block-components-totals-footer-item{
  margin: 0 !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

body.woocommerce-cart .wc-block-components-totals-item__label,
body.woocommerce-cart .wc-block-components-totals-footer-item__label{
  color: rgba(0,0,0,.56) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.woocommerce-cart .wc-block-components-totals-item__value,
body.woocommerce-cart .wc-block-components-totals-footer-item__value{
  color: rgba(0,0,0,.90) !important;
  font-size: 15px !important;
  font-weight: 650 !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item{
  padding-top: 16px !important;
  border-bottom: 0 !important;
}

body.woocommerce-cart .wc-block-components-totals-footer-item .wc-block-formatted-money-amount{
  font-size: 23px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em;
}

body.woocommerce-cart .wc-block-cart__submit-container{
  margin-top: 18px !important;
}

body.woocommerce-cart .wc-block-cart__submit-container .wc-block-components-button,
body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button{
  min-height: 52px !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: linear-gradient(180deg, #2a5a3f, #1f3d2b) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  letter-spacing: .01em !important;
  box-shadow: 0 12px 24px rgba(31,61,43,.14) !important;
  transition:
    transform .18s ease,
    filter .18s ease,
    box-shadow .18s ease !important;
}

body.woocommerce-cart .wc-block-cart__submit-container .wc-block-components-button:hover,
body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
  box-shadow: 0 16px 28px rgba(31,61,43,.20) !important;
}

body.woocommerce-cart .wc-block-components-button:not(.wc-block-cart__submit-button):not(.is-primary){
  min-height: 44px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  background: #fff !important;
  color: rgba(0,0,0,.86) !important;
  box-shadow: none !important;
}

body.woocommerce-cart .wc-block-cart__empty-cart,
body.woocommerce-cart .wc-block-cart__empty-cart-wrapper{
  max-width: 860px;
  margin: 0 auto;
  padding: 10px 0 0;
}

body.woocommerce-cart .wc-block-cart__empty-cart__title,
body.woocommerce-cart .is-large.wc-block-cart__empty-cart__title{
  margin-bottom: 10px !important;
  font-size: clamp(30px, 4vw, 44px) !important;
  line-height: 1.05 !important;
  letter-spacing: -0.03em;
  color: rgba(0,0,0,.92) !important;
}

body.woocommerce-cart .wc-block-cart__empty-cart__description,
body.woocommerce-cart .wc-block-cart__empty-cart p{
  color: rgba(0,0,0,.58) !important;
  font-size: 16px !important;
  line-height: 1.6 !important;
}

body.woocommerce-cart .wc-block-cart__empty-cart .wc-block-components-button,
body.woocommerce-cart .wc-block-cart__empty-cart a.wc-block-components-button{
  min-height: 48px !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: #111 !important;
  color: #fff !important;
  padding: 0 20px !important;
}

@media (max-width: 700px){
  body.woocommerce-cart .wp-block-woocommerce-cart{
    padding: 16px;
  }

  body.woocommerce-cart .wc-block-cart__sidebar{
    padding: 18px;
    border-radius: 18px;
  }

  body.woocommerce-cart .wc-block-components-product-name{
    font-size: 16px !important;
  }
}

table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices, body.woocommerce-cart .wc-block-components-product-metadata{
	display: none !important;
}

body.woocommerce-cart .wc-block-components-sale-badge{
  display: inline-flex !important;
  align-items: end;
  gap: 6px;

  margin-top: 6px !important;

  border: 0 !important;
  border-radius: 999px !important;

  padding: 4px 10px !important;

  background: rgba(34,160,110,.10) !important;
  color: #156f48 !important;

  font-size: 12px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}

body.woocommerce-cart .wc-block-components-sale-badge .wc-block-formatted-money-amount{
  color: #156f48 !important;
  font-weight: 700 !important;
  font-size: 12px !important;
}

body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 4px !important;
}

body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-sale-badge{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;

  font-size: 0 !important;
  line-height: 1 !important;
  color: transparent !important;
  min-height: auto !important;

  display: none !important;
}

body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-sale-badge .wc-block-formatted-money-amount{
  display: inline !important;
  font-size: 14px !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  color: #d13434 !important;
}

body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-sale-badge .wc-block-formatted-money-amount::before{
  content: "-" !important;
}

body.woocommerce-cart .wc-block-cart-items__row{
  position: relative !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link,
body.woocommerce-cart button.wc-block-cart-item__remove-link{
  position: absolute !important;
  right: 0 !important;
  bottom: 14px !important;

  width: 32px !important;
  height: 32px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border-radius: 999px !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  background: rgba(255,255,255,.9) !important;

  transition:
    transform .14s ease,
    background .18s ease,
    border-color .18s ease !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.woocommerce-cart button.wc-block-cart-item__remove-link:hover{
  background: none !important;
  border-color: rgba(220,38,38,.18) !important;
  transform: translateY(-1px);
}

body.woocommerce-cart .wc-block-cart-items__row{
  position: relative !important;
  padding-bottom: 40px !important;
}

body.woocommerce-cart .wc-block-cart-item__quantity{
  position: absolute !important;
  left: 122px !important;
  bottom: 10px !important;
  margin: 0 !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link,
body.woocommerce-cart button.wc-block-cart-item__remove-link{
  position: absolute !important;
  right: 0 !important;
  bottom: 20px !important;
}

@media (max-width: 700px){
  body.woocommerce-cart .wc-block-cart-items__row{
    padding-bottom: 42px !important;
  }

  body.woocommerce-cart .wc-block-cart-item__quantity{
    left: 102px !important;
    bottom: 8px !important;
  }

  body.woocommerce-cart .wc-block-cart-item__remove-link,
  body.woocommerce-cart button.wc-block-cart-item__remove-link{
    bottom: 8px !important;
  }
}

@media (hover:hover) and (pointer:fine){

  body.woocommerce-cart .wc-block-cart-item__remove-link[data-tooltip]::after,
  body.woocommerce-cart button.wc-block-cart-item__remove-link[data-tooltip]::after{
    content: attr(data-tooltip);
    position: absolute;
    right: 0;
    bottom: calc(100% + 10px);

    opacity: 0;
    transform: translateY(4px);
    pointer-events: none;
    z-index: 30;

    background: rgba(17,17,17,.96);
    color: #fff;
    padding: 6px 9px;
    border-radius: 8px;

    font-size: 12px;
    line-height: 1.2;
    font-weight: 500;
    white-space: nowrap;

    box-shadow: 0 10px 24px rgba(0,0,0,.18);
    transition: opacity .18s ease, transform .18s ease;
  }

  body.woocommerce-cart .wc-block-cart-item__remove-link[data-tooltip]:hover::after,
  body.woocommerce-cart button.wc-block-cart-item__remove-link[data-tooltip]:hover::after{
    opacity: 1;
    transform: translateY(0);
  }
}

/* =========================================================
   CHECKOUT PAGE
========================================================= */

body.woocommerce-checkout .wp-block-woocommerce-checkout{
  max-width: 1180px;
  margin: 0 auto;
  padding: clamp(18px, 3vw, 34px);
}

.wp-block-woocommerce-checkout-order-summary-block{
	border: none !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout{
  align-items: flex-start;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main{
  box-sizing: border-box;
  width: 65% !important;
  margin: 0 !important;
  padding-right: 28px !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar{
  box-sizing: border-box;
  width: 35% !important;
}

@media (max-width: 980px){
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar-layout .wc-block-components-main,
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar{
    width: 100% !important;
  }
}

body.woocommerce-checkout .wp-block-post-title,
body.woocommerce-checkout .entry-title{
  margin: 0 0 22px !important;
  font-size: clamp(30px, 4vw, 46px) !important;
  line-height: 1.04 !important;
  letter-spacing: -0.03em;
  color: rgba(0,0,0,.92) !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__main{
  min-width: 0;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar{
  position: sticky;
  top: 24px;

  padding: 22px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 22px;
  background: rgba(255,255,255,.96);
  box-shadow:
    0 1px 2px rgba(0,0,0,.02),
    0 18px 34px rgba(0,0,0,.04);
}

@media (max-width: 980px){
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar{
    position: static;
  }
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step{
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow:
    0 1px 2px rgba(0,0,0,.02),
    0 12px 26px rgba(0,0,0,.03) !important;
  overflow: hidden !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step + .wc-block-components-checkout-step{
  margin-top: 16px !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading{
  margin: 0 !important;
  padding: 18px 20px !important;
  border-bottom: 1px solid rgba(0,0,0,.06) !important;
  background: transparent !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__title{
  font-size: 22px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em;
  font-weight: 600 !important;
  color: rgba(0,0,0,.92) !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__container,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__content{
  padding: 18px 20px 20px !important;
  background: transparent !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input input,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input select,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input textarea,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-select select,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input{
  min-height: 48px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  background: #fff !important;
  color: rgba(0,0,0,.92) !important;
  box-shadow: none !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input textarea{
  min-height: 120px !important;
  padding-top: 14px !important;
  border-radius: 16px !important;
  resize: vertical;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input input:focus,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input select:focus,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input textarea:focus,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-select select:focus,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-combobox .components-combobox-control__input:focus{
  border-color: rgba(31,61,43,.34) !important;
  box-shadow: 0 0 0 3px rgba(31,61,43,.08) !important;
  outline: none !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-text-input label,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-select label,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkbox label{
  color: rgba(0,0,0,.62) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout input::placeholder,
body.woocommerce-checkout .wp-block-woocommerce-checkout textarea::placeholder{
  color: rgba(0,0,0,.36) !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-radio-control__option,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-radio-control-accordion-option{
  border-color: rgba(0,0,0,.08) !important;
  border-radius: 16px !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-radio-control__option-layout{
  padding: 14px 16px !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-title{
  margin: 0 0 12px !important;
  padding: 0 0 14px !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
  background: transparent !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-title__text{
  font-size: 24px !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em;
  font-weight: 600 !important;
  color: rgba(0,0,0,.92) !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-order-summary-item{
  padding: 14px 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-order-summary-item__image{
  width: 64px !important;
  min-width: 64px !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-order-summary-item__image img{
  width: 64px !important;
  height: 64px !important;
  object-fit: contain !important;
  border-radius: 12px !important;
  background: #f7f7f7 !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-product-name{
  color: rgba(0,0,0,.92) !important;
  font-size: 15px !important;
  line-height: 1.24 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-product-metadata,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-order-summary-item__quantity{
  color: rgba(0,0,0,.54) !important;
  font-size: 13px !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-item,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-footer-item{
  margin: 0 !important;
  padding: 12px 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-item__label,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-footer-item__label{
  color: rgba(0,0,0,.56) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-item__value,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-footer-item__value{
  color: rgba(0,0,0,.90) !important;
  font-size: 15px !important;
  font-weight: 650 !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-footer-item{
  padding-top: 16px !important;
  border-bottom: 0 !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar .wc-block-components-totals-footer-item .wc-block-formatted-money-amount{
  font-size: 23px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-button:not(.wc-block-components-checkout-place-order-button){
  min-height: 44px !important;
  border-radius: 999px !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  background: #fff !important;
  color: rgba(0,0,0,.86) !important;
  box-shadow: none !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-button.wp-element-button.contained{
  min-height: 54px !important;
  border-radius: 999px !important;
  border: 0 !important;
  background: linear-gradient(180deg, #2a5a3f, #1f3d2b) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  letter-spacing: .01em !important;
  box-shadow: 0 12px 24px rgba(31,61,43,.14) !important;
  transition:
    transform .18s ease,
    filter .18s ease,
    box-shadow .18s ease !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-place-order-button:hover,
body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-button.wp-element-button.contained:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
  box-shadow: 0 16px 28px rgba(31,61,43,.20) !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-notice-banner{
  border-radius: 16px !important;
  border: 1px solid rgba(0,0,0,.08) !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 8px 20px rgba(0,0,0,.03) !important;
}

@media (max-width: 700px){
  body.woocommerce-checkout .wp-block-woocommerce-checkout{
    padding: 16px;
  }

  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-checkout__sidebar{
    padding: 18px;
    border-radius: 18px;
  }

  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step{
    border-radius: 18px !important;
  }

  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__heading,
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__container,
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__content{
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-checkout-step__title{
    font-size: 20px !important;
  }
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item{
  display: grid !important;
  grid-template-columns: 48px minmax(0, 1fr) auto !important;
  grid-template-areas:
    "image desc total"
    "image desc qty" !important;
  column-gap: 12px !important;
  row-gap: 4px !important;
  align-items: start !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__image{
  display: contents !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__image img{
  grid-area: image !important;
  width: 48px !important;
  height: 48px !important;
  object-fit: contain !important;
  border-radius: 10px !important;
  background: #f7f7f7 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__description{
  grid-area: desc !important;
  min-width: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__total-price{
  grid-area: total !important;
  justify-self: end !important;
  text-align: right !important;
  margin: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__quantity{
  grid-area: qty !important;
  position: static !important;
  inset: auto !important;
  justify-self: end !important;

  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  text-align: right !important;
  transform: none;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__quantity > span[aria-hidden="true"]{
  font-size: 13px !important;
  line-height: 1.2 !important;
  font-weight: 500 !important;
  color: rgba(0,0,0,.56) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__quantity > span[aria-hidden="true"]::before{
  content: "x ";
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__quantity .screen-reader-text{
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar-layout .wc-block-components-main{
  width: 60% !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar{
  width: 40% !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__image{
  width: 64px !important;
  min-width: 64px !important;
}

body.woocommerce-checkout
.wc-block-components-order-summary
.wc-block-components-order-summary-item__image > img{
  width: 64px !important;
  max-width: 64px !important;
  height: 64px !important;

  object-fit: contain !important;
  border-radius: 12px !important;
  background: #f7f7f7 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary__content
.wc-block-components-order-summary-item:last-child{
  border-bottom: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-checkout__actions_row{
  margin-top: 26px !important;
  padding: 20px 0 0 !important;
  border-top: 1px solid rgba(0,0,0,.08) !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-checkout-return-to-cart-button{
  color: rgba(0,0,0,.52) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-checkout-return-to-cart-button svg{
  width: 17px !important;
  height: 17px !important;
  margin-right: 6px !important;
  vertical-align: -3px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-checkout-return-to-cart-button:hover{
  color: rgba(0,0,0,.86) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-checkout-place-order-button{
  min-width: 220px !important;
  min-height: 56px !important;
  padding: 0 34px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar{
  background: #fff !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.045) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item{
  border-bottom: 0 !important;
  padding: 12px 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary__content{
  padding-bottom: 18px !important;
  margin-bottom: 14px !important;
  border-bottom: 1px solid rgba(0,0,0,.075) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-coupon{
  border-bottom: 0 !important;
  padding: 12px 0 16px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-item,
body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-footer-item{
  border-bottom: 0 !important;
  padding: 10px 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-item__label{
  color: rgba(0,0,0,.52) !important;
  font-weight: 500 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-item__value{
  color: rgba(0,0,0,.86) !important;
  font-weight: 650 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-footer-item{
  margin-top: 20px !important;
  padding-top: 20px !important;
  border-top: 1px solid rgba(0,0,0,.09) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-footer-item__label{
  color: rgba(0,0,0,.62) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-footer-item .wc-block-formatted-money-amount{
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 750 !important;
  letter-spacing: -0.035em !important;
  color: rgba(0,0,0,.94) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-footer-item-tax{
  margin-top: 4px !important;
  color: rgba(0,0,0,.55) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-order-summary,
body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-order-summary__content,
body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-order-summary-item,
body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-wrapper,
body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-item,
body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-footer-item{
  border: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-order-summary-item{
  padding: 13px 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-order-summary__content{
  padding-bottom: 18px !important;
  margin-bottom: 18px !important;
  border-bottom: 1px solid rgba(0,0,0,.075) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-coupon{
  padding: 12px 0 16px !important;
  margin: 0 !important;
  border: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-item{
  padding: 10px 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-footer-item{
  margin-top: 12px !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(0,0,0,.09) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-footer-item
.wc-block-formatted-money-amount{
  font-size: 28px !important;
  line-height: 1 !important;
  font-weight: 750 !important;
  letter-spacing: -0.035em !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-footer-item-tax{
  color: rgba(0,0,0,.55) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wp-block-woocommerce-checkout-order-summary-coupon-form-block{
  padding: 0 0 18px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.075) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wp-block-woocommerce-checkout-order-summary-coupon-form-block
.wc-block-components-totals-coupon{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wp-block-woocommerce-checkout-order-summary-coupon-form-block
.wc-block-components-panel__button{
  position: relative !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;

  width: 100% !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 0 0 0 34px !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: #1f5b3a !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  line-height: 1.2 !important;
  text-align: left !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wp-block-woocommerce-checkout-order-summary-coupon-form-block
.wc-block-components-panel__button::before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;

  width: 22px;
  height: 22px;

  transform: translateY(-50%);
  background: #1f5b3a;

  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3.4 13.4A2 2 0 0 1 2.8 12V4.8a2 2 0 0 1 2-2H12a2 2 0 0 1 1.4.6l7.2 7.2a2 2 0 0 1 0 2.8Z'/%3E%3Cpath d='M7.5 7.5h.01'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20.6 13.4 13.4 20.6a2 2 0 0 1-2.8 0L3.4 13.4A2 2 0 0 1 2.8 12V4.8a2 2 0 0 1 2-2H12a2 2 0 0 1 1.4.6l7.2 7.2a2 2 0 0 1 0 2.8Z'/%3E%3Cpath d='M7.5 7.5h.01'/%3E%3C/svg%3E") center/contain no-repeat;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wp-block-woocommerce-checkout-order-summary-coupon-form-block
.wc-block-components-panel__button-icon{
  order: 2 !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 0 0 auto !important;
  color: rgba(0,0,0,.82) !important;
  fill: currentColor !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wp-block-woocommerce-checkout-order-summary-coupon-form-block
.wc-block-components-panel__button:hover{
  color: #16472d !important;
  cursor: pointer;
}

.wc-block-components-totals-wrapper {
    padding: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wp-block-woocommerce-checkout-order-summary-coupon-form-block{
  border-bottom: 0 !important;
}
.wp-block-woocommerce-checkout-order-summary-totals-block {
    border-top: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-order-summary-item__individual-prices{
  display: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-product-metadata{
  display: none !important;
}

body.woocommerce-checkout .wp-block-woocommerce-checkout.wc-block-checkout{
  --kk-checkout-green: #1f6b48;
  --kk-checkout-green-soft: rgba(31,107,72,.10);
  --kk-checkout-border: rgba(0,0,0,.075);
  --kk-checkout-text: rgba(0,0,0,.92);
  --kk-checkout-muted: rgba(0,0,0,.58);
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__form{
  counter-reset: kk-checkout-step;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
:is(
  #contact-fields,
  #shipping-fields,
  #shipping-option,
  #payment-method
).wc-block-components-checkout-step{
  counter-increment: kk-checkout-step;

  margin: 0 0 16px !important;
  padding: 0 !important;

  border: 1px solid var(--kk-checkout-border) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.035) !important;
  overflow: hidden !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
:is(#contact-fields,#shipping-fields,#shipping-option,#payment-method)
.wc-block-components-checkout-step__heading{
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;

  margin: 0 !important;
  padding: 22px 24px 18px !important;

  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
:is(#contact-fields,#shipping-fields,#shipping-option,#payment-method)
.wc-block-components-checkout-step__heading::before{
  content: counter(kk-checkout-step);

  width: 32px;
  height: 32px;
  min-width: 32px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  background: var(--kk-checkout-green-soft);
  color: var(--kk-checkout-green);

  font-size: 16px;
  font-weight: 700;
  line-height: 1;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkout-step__title{
  margin: 0 !important;
  padding: 0 !important;

  font-family: var(--kk-font, inherit) !important;
  font-size: 22px !important;
  line-height: 1.15 !important;
  font-weight: 650 !important;
  letter-spacing: -0.025em !important;
  color: var(--kk-checkout-text) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkout-step__content{
  padding: 8px 24px 24px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-text-input input,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-blocks-components-select__select{
  min-height: 56px !important;
  border-radius: 15px !important;
  border: 1px solid rgba(0,0,0,.12) !important;
  background: #fff !important;
  color: var(--kk-checkout-text) !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-text-input input:focus,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-blocks-components-select__select:focus{
  border-color: rgba(31,107,72,.42) !important;
  box-shadow: 0 0 0 3px rgba(31,107,72,.10) !important;
  outline: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-address-card{
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;

  min-height: 72px !important;
  padding: 16px 18px !important;

  border: 1px solid rgba(0,0,0,.09) !important;
  border-radius: 15px !important;
  background: rgba(250,250,250,.72) !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-address-card::before{
  content: "";

  width: 38px;
  height: 38px;
  min-width: 38px;

  border-radius: 999px;
  background: var(--kk-checkout-green-soft);

  -webkit-mask: none;
          mask: none;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-address-card address{
  flex: 1;
  margin: 0 !important;
  font-style: normal !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-address-card__address-section--primary{
  display: block;
  margin-bottom: 4px;
  color: var(--kk-checkout-text);
  font-weight: 650;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-address-card__address-section--secondary{
  color: var(--kk-checkout-muted);
  font-size: 14px;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-address-card__edit{
  color: var(--kk-checkout-green) !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  text-decoration: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkbox{
  margin-top: 14px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkbox__input{
  accent-color: var(--kk-checkout-green);
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkbox__label{
  color: rgba(0,0,0,.68) !important;
  font-size: 14px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control{
  border: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__option,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control-accordion-option{
  margin: 0 0 12px !important;
  border: 1px solid rgba(0,0,0,.085) !important;
  border-radius: 16px !important;
  background: #fff !important;
  overflow: hidden !important;
  box-shadow: none !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__option:last-child,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control-accordion-option:last-child{
  margin-bottom: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__option-layout{

  padding: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__option-checked,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__option--checked-option-highlighted,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control-accordion-option--checked-option-highlighted{
  border-color: rgba(31,107,72,.58) !important;
  background: rgba(31,107,72,.025) !important;
  box-shadow: 0 8px 18px rgba(31,107,72,.08) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__input{
  accent-color: var(--kk-checkout-green);
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__label{
  font-size: 15px !important;
  font-weight: 650 !important;
  color: rgba(0,0,0,.88) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__secondary-label{
  margin-left: auto !important;
  font-size: 15px !important;
  font-weight: 650 !important;
  color: rgba(0,0,0,.9) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control-accordion-content{
  padding: 0 22px 18px 52px !important;
  color: rgba(0,0,0,.58) !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#wc-block-checkout__order-notes,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__order-notes{
  margin-top: 16px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__terms{
  margin-top: 16px !important;
  padding: 16px 18px !important;

  border: 1px solid rgba(0,0,0,.075) !important;
  border-radius: 15px !important;
  background: rgba(31,107,72,.035) !important;

  color: rgba(0,0,0,.62) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__actions_row{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;

  margin-top: 20px !important;
  padding-top: 18px !important;
  border-top: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkout-return-to-cart-button{
  position: static !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;

  padding: 0 !important;
  margin: 0 !important;

  color: var(--kk-checkout-green) !important;
  font-size: 14px !important;
  font-weight: 650 !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkout-return-to-cart-button svg{
  position: static !important;
  width: 18px !important;
  height: 18px !important;
  margin: 0 !important;
  fill: currentColor !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkout-place-order-button{
  width: min(280px, 46%) !important;
  min-height: 58px !important;
  padding: 0 34px !important;

  border: 0 !important;
  border-radius: 12px !important;
  background: var(--kk-checkout-green) !important;
  color: #fff !important;

  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: .01em !important;

  box-shadow: 0 14px 26px rgba(31,107,72,.16) !important;
  transition: transform .18s ease, filter .18s ease, box-shadow .18s ease !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkout-place-order-button:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
  box-shadow: 0 18px 30px rgba(31,107,72,.22) !important;
}

@media (max-width: 700px){
  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-checkout__main
  .wc-block-checkout__actions_row{
    flex-direction: column-reverse !important;
    align-items: stretch !important;
  }

  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-checkout__main
  .wc-block-components-checkout-place-order-button{
    width: 100% !important;
  }

  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-checkout__main
  .wc-block-components-checkout-return-to-cart-button{
    justify-content: center !important;
  }
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-address-card::before{
  content: "";
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  border-radius: 999px !important;
  background-color: rgba(31,107,72,.10) !important;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%231f6b48' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='12' cy='8' r='3.2'/%3E%3Cpath d='M5.8 19c.7-3.4 3-5.2 6.2-5.2s5.5 1.8 6.2 5.2'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 19px 19px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__option-layout::before{
  content: "";
  width: 38px;
  height: 38px;
  min-width: 38px;
  margin-right: 16px;

  border-radius: 999px;
  background-color: rgba(31,107,72,.10);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px 20px;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__option:first-of-type
.wc-block-components-radio-control__option-layout::before{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%231f6b48' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10.5h16v9H4z'/%3E%3Cpath d='M3 10.5l2-5h14l2 5'/%3E%3Cpath d='M8 19.5v-5h8v5'/%3E%3Cpath d='M9 5.5v5M15 5.5v5'/%3E%3C/svg%3E");
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__option:nth-of-type(2)
.wc-block-components-radio-control__option-layout::before{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%231f6b48' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 7h11v9H3z'/%3E%3Cpath d='M14 10h4l3 3v3h-7z'/%3E%3Ccircle cx='7' cy='18' r='1.8'/%3E%3Ccircle cx='18' cy='18' r='1.8'/%3E%3Cpath d='M5 11h5'/%3E%3C/svg%3E");
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option-layout::before{
  content: "";
  width: 38px;
  height: 38px;
  min-width: 38px;
  margin-right: 16px;

  border-radius: 999px;
  background-color: rgba(31,107,72,.10);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 20px 20px;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option:first-of-type
.wc-block-components-radio-control__option-layout::before{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%231f6b48' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 10h16'/%3E%3Cpath d='M5 10l7-5 7 5'/%3E%3Cpath d='M6 10v8M10 10v8M14 10v8M18 10v8'/%3E%3Cpath d='M4 18h16'/%3E%3C/svg%3E");
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option:nth-of-type(2)
.wc-block-components-radio-control__option-layout::before{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' fill='none' stroke='%231f6b48' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='7' width='16' height='10' rx='2'/%3E%3Ccircle cx='12' cy='12' r='2.2'/%3E%3Cpath d='M7 10v4M17 10v4'/%3E%3C/svg%3E");
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__option-layout,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option-layout{
  display: grid !important;
  grid-template-columns: 38px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 16px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__option-layout::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option-layout::before{
  grid-column: 1 !important;
  grid-row: 1 !important;
  margin-right: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__label-group,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__label-group{
  grid-column: 2 !important;
  grid-row: 1 !important;

  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  width: 100% !important;
  min-width: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__option,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option{
  display: flex !important;
  align-items: center !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-shipping-rates-control__package
.wc-block-components-radio-control
.wc-block-components-radio-control__input,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control
.wc-block-components-radio-control__input{
  top: 50% !important;
  transform: translateY(-50%) !important;
  margin-top: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__actions_row
.wc-block-components-checkout-return-to-cart-button svg{
  transform: none !important;
  top: auto !important;
  position: static !important;
  margin: 0 !important;
  vertical-align: middle !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control::after,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-shipping-rates-control__package::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-shipping-rates-control__package::after,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control::after{
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-shipping-rates-control__package,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control{
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__option::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#shipping-option
.wc-block-components-radio-control__option::after,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option::after,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option::after{
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option{
  border: 1px solid rgba(0,0,0,.085) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option--checked-option-highlighted{
  border-color: rgba(0,0,0,.085) !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option-checked{
  border: 1px solid rgba(31,107,72,.58) !important;
  border-radius: 16px !important;
  background: rgba(31,107,72,.035) !important;
  box-shadow: 0 8px 18px rgba(31,107,72,.08) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-content{
  padding: 14px 22px 18px 76px !important;
  margin: 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: rgba(0,0,0,.58) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option--checked-option-highlighted
.wc-block-components-radio-control__option{
  margin: 0 !important;
  background: rgb(255 255 255 / 0%) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__order-notes{
  margin-top: 18px !important;
  padding: 0 !important;

  border: 1px solid rgba(0,0,0,.075) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.025) !important;
  overflow: hidden !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__order-notes
.wc-block-components-checkout-step__content{
  padding: 14px 18px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__add-note
.wc-block-components-checkbox{
  margin: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__terms{
  margin-top: 18px !important;
  padding: 16px 18px !important;

  border: 1px solid rgba(31,107,72,.13) !important;
  border-radius: 16px !important;
  background: rgba(31,107,72,.035) !important;
  box-shadow: none !important;

  color: rgba(0,0,0,.64) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__actions_row{
  margin-top: 28px !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkout-place-order-button{
  width: min(280px, 46%) !important;
  min-height: 58px !important;
  border-radius: 12px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option{
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option--checked-option-highlighted{
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option{
  border-radius: 16px !important;
  margin: 0 0 10px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-content{
  margin: 6px 0 12px 64px !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: rgba(0,0,0,.58) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

body.woocommerce-checkout
#payment-method
.wc-block-components-radio-control{
  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.04) !important;
  overflow: hidden !important;
}

body.woocommerce-checkout
#payment-method
.wc-block-components-radio-control-accordion-option{
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
#payment-method
.wc-block-components-radio-control__option{
  border: 0 !important;
  border-radius: 0 !important;
  margin: 0 !important;
}

body.woocommerce-checkout
#payment-method
.wc-block-components-radio-control-accordion-option:not(:last-child){
  border-bottom: 1px solid rgba(0,0,0,.08);
}

body.woocommerce-checkout
#payment-method
.wc-block-components-radio-control__option-checked{
  background: rgba(31,107,72,.06) !important;
}

body.woocommerce-checkout
#payment-method
.wc-block-components-radio-control-accordion-content{
  margin: 6px 0 14px 64px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: rgba(0,0,0,.58) !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method{
  margin-bottom: 0 !important;
  border-radius: 22px 22px 0 0 !important;
  border-bottom: 0 !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.035) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-checkout-step__content{
  padding-bottom: 18px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control{
  border: 1px solid rgba(0,0,0,.085) !important;
  border-radius: 16px !important;
  background: #fff !important;
  overflow: hidden !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option{
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option{
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option +
.wc-block-components-radio-control-accordion-option{
  border-top: 1px solid rgba(0,0,0,.07) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option-checked,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-option--checked-option-highlighted{
  border: 0 !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control__option-layout{

  padding: 16px 18px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method
.wc-block-components-radio-control-accordion-content{
  margin: -20px 0 14px 120px !important;
  padding: 0 22px 0 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: rgba(0,0,0,.55) !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#order-notes{
  margin: 0 !important;
  padding: 0 24px 0 !important;

  border-left: 1px solid rgba(0,0,0,.06) !important;
  border-right: 1px solid rgba(0,0,0,.06) !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;

  background: #fff !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.035) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#order-notes
.wc-block-components-checkout-step__content{
  padding: 0 0 16px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#order-notes
.wc-block-checkout__add-note{
  padding: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#order-notes
.wc-block-components-checkbox{
  margin: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__terms{
  margin: 0 !important;
  padding: 0 24px 20px !important;

  border-left: 1px solid rgba(0,0,0,.06) !important;
  border-right: 1px solid rgba(0,0,0,.06) !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;

  background: #fff !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.035) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__terms
.wc-block-components-checkbox__label{
  display: block !important;
  padding: 16px 18px 16px 58px !important;

  border: 1px solid rgba(31,107,72,.13) !important;
  border-radius: 15px !important;
  background: rgba(31,107,72,.035) !important;

  color: rgba(0,0,0,.64) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__terms{
  position: relative !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__terms::before{
  content: "";
  position: absolute;
  left: 44px;
  top: 16px;

  width: 26px;
  height: 26px;

  background: #1f6b48;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2 20 5v6c0 5-3.4 9.7-8 11-4.6-1.3-8-6-8-11V5l8-3Zm0 3.2L6 7.4V11c0 3.8 2.4 7.3 6 8.6 3.6-1.3 6-4.8 6-8.6V7.4l-6-2.2Zm3.7 5.1 1.4 1.4-5.7 5.7-3.2-3.2 1.4-1.4 1.8 1.8 4.3-4.3Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2 20 5v6c0 5-3.4 9.7-8 11-4.6-1.3-8-6-8-11V5l8-3Zm0 3.2L6 7.4V11c0 3.8 2.4 7.3 6 8.6 3.6-1.3 6-4.8 6-8.6V7.4l-6-2.2Zm3.7 5.1 1.4 1.4-5.7 5.7-3.2-3.2 1.4-1.4 1.8 1.8 4.3-4.3Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__actions{
  margin: 0 !important;
  padding: 0 24px 24px !important;

  border-left: 1px solid rgba(0,0,0,.06) !important;
  border-right: 1px solid rgba(0,0,0,.06) !important;
  border-bottom: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 0 0 22px 22px !important;

  background: #fff !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.035) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__actions_row{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkout-place-order-button{
  width: 280px !important;
  min-height: 58px !important;
  border-radius: 12px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#payment-method.wc-block-components-checkout-step{
  margin-bottom: 0 !important;
  border-bottom: 0 !important;
  border-radius: 22px 22px 0 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#order-notes.wc-block-components-checkout-step{
  margin: 0 !important;
  padding: 0 34px 16px !important;

  border-left: 1px solid var(--kk-checkout-border) !important;
  border-right: 1px solid var(--kk-checkout-border) !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;

  background: #fff !important;
  box-shadow: none !important;
  overflow: visible !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
#order-notes
.wc-block-components-checkout-step__content{
  padding: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__terms{
  margin: 0 !important;
  padding: 0 24px 20px !important;

  border-left: 1px solid var(--kk-checkout-border) !important;
  border-right: 1px solid var(--kk-checkout-border) !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  border-radius: 0 !important;

  background: #fff !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__actions{
  margin: 0 0 16px !important;
  padding: 0 24px 24px !important;

  border-left: 1px solid var(--kk-checkout-border) !important;
  border-right: 1px solid var(--kk-checkout-border) !important;
  border-bottom: 1px solid var(--kk-checkout-border) !important;
  border-radius: 0 0 22px 22px !important;

  background: #fff !important;
  box-shadow: 0 10px 26px rgba(0,0,0,.035) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-checkout__actions_row{
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control__option::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control__option::after,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control-accordion-option::before,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control-accordion-option::after{
  content: none !important;
  display: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control__option,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control__option-checked,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control-accordion-option,
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control-accordion-option--checked-option-highlighted{
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#payment-method
.wc-block-components-radio-control-accordion-option
+ .wc-block-components-radio-control-accordion-option{
  border-top: 1px solid rgba(0,0,0,.075) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout{
  --kk-checkout-green: #1f6b48;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
input[type="checkbox"],
body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
input[type="radio"]{
  accent-color: var(--kk-checkout-green) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkbox__input:checked{
  background-color: var(--kk-checkout-green) !important;
  border-color: var(--kk-checkout-green) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-checkbox__input:checked
+ .wc-block-components-checkbox__mark{
  fill: #fff !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__input:checked{
  border-color: var(--kk-checkout-green) !important;
  background-color: var(--kk-checkout-green) !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
.wc-block-checkout__main
.wc-block-components-radio-control__input:checked::before{
  background: #fff !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#contact
.wc-block-components-address-form__email{
  position: relative !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#contact
.wc-block-components-address-form__email input{
  padding-right: 46px !important;
}

body.woocommerce-checkout
.wp-block-woocommerce-checkout.wc-block-checkout
#contact
.wc-block-components-address-form__email:has(input[type="email"]:valid)::after{
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  pointer-events: none;

  background: #1f6b48;
  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.3 6.3 9 17.6l-5.3-5.3 1.4-1.4L9 14.8l9.9-9.9 1.4 1.4Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.3 6.3 9 17.6l-5.3-5.3 1.4-1.4L9 14.8l9.9-9.9 1.4 1.4Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

.wc-block-components-form .wc-block-components-text-input label, .wc-block-components-text-input label {
    top: 28px;
}

.wc-block-components-checkout-order-summary__title{
  padding-bottom: 14px !important;
  margin-bottom: 18px !important;
  border-bottom: 1px solid rgba(0,0,0,.08) !important;
}

.wc-block-components-checkout-order-summary__title-text{
  font-size: 18px !important;
  font-weight: 650 !important;
  letter-spacing: -0.01em;
}

.wc-block-components-checkout-order-summary__title-price{
  font-size: 16px !important;
  font-weight: 600 !important;
  color: rgba(0,0,0,.7) !important;
}

@media (max-width: 980px){

  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-components-sidebar-layout{
    display: block !important;
  }

  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-components-main,
  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-checkout__main,
  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-components-sidebar,
  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-checkout__sidebar{
    width: 100% !important;
    max-width: 100% !important;
    flex-basis: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout{
    padding-left: 16px !important;
    padding-right: 16px !important;
	width: auto;
  }
}

body.woocommerce-checkout, body.woocommerce-cart{
  --wp--style--root--padding-left: 0px;
  --wp--style--root--padding-right: 0px;
}

/* =========================================================
   GLOBAL WOO OVERRIDES AND MOBILE CLEANUP
========================================================= */

@media (max-width: 700px){

  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-totals-footer-item{
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
  }
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-order-summary__content {
    padding-bottom: 18px !important;
    margin-bottom: 0 !important;
    border-bottom: 0 !important;

  }
  .wp-block-woocommerce-checkout-order-summary-block .checkout-order-summary-block-fill {
    border: 0 !important;
    border-radius: 0 !important;
  }
  .wp-block-woocommerce-checkout-order-summary-block.checkout-order-summary-block-fill-wrapper .wc-block-components-order-summary {
    padding: 0 !important;
  }
  body.woocommerce-checkout .wp-block-woocommerce-checkout .wc-block-components-sidebar {
    display: none !important;
  }
  body.woocommerce-cart .wp-block-woocommerce-cart {
    width: auto !important;
  }
  
  body.woocommerce-checkout
  .wp-block-woocommerce-checkout.wc-block-checkout
  .wc-block-checkout__main
  #payment-method
  .wc-block-components-radio-control-accordion-content{
    margin: -20px 0 14px 65px !important;
  }
}

/* =========================================================
   CART PAGE — CHECKOUT-STYLE PREMIUM OVERRIDE
   Paste at the END of shop.css
========================================================= */

body.woocommerce-cart{
  --kk-cart-green: #1f6b48;
  --kk-cart-green-dark: #155437;
  --kk-cart-green-soft: rgba(31,107,72,.09);
  --kk-cart-border: rgba(0,0,0,.075);
  --kk-cart-muted: rgba(0,0,0,.56);
  --kk-cart-text: rgba(0,0,0,.92);
}

/* Page shell */
body.woocommerce-cart main,
body.woocommerce-cart .wp-site-blocks{
  background:
    linear-gradient(180deg, rgba(248,249,249,.95), rgba(255,255,255,0) 42%),
    #fff !important;
}

body.woocommerce-cart .wp-block-woocommerce-cart{
  max-width: 1240px;
  margin: 0 auto;
  padding: clamp(18px, 3vw, 42px) !important;
}

/* Title */
body.woocommerce-cart .wp-block-post-title,
body.woocommerce-cart .entry-title{
  margin: 0 !important;
  /*font-size: clamp(38px, 5vw, 58px) !important;*/
  line-height: .95 !important;
  /*letter-spacing: -0.045em !important;*/
  color: var(--kk-cart-text) !important;
}

/* Layout */
body.woocommerce-cart .wc-block-cart{
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 370px !important;
  gap: 32px !important;
  align-items: start !important;
}

body.woocommerce-cart .wc-block-cart__main{
  min-width: 0 !important;
}

/* Items card */
body.woocommerce-cart .wc-block-cart-items{
  width: 100% !important;
  margin: 0 !important;
  border: 1px solid var(--kk-cart-border) !important;
  border-radius: 22px !important;
  background: #fff !important;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: hidden !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.035) !important;
}

body.woocommerce-cart .wc-block-cart-items thead{
  display: none !important;
}

/* Product rows */
body.woocommerce-cart .wc-block-cart-items__row{
  position: relative !important;
  display: grid !important;
  grid-template-columns: 112px minmax(0, 1fr) 140px 132px 42px !important;
  gap: 22px !important;
  align-items: center !important;

  min-height: 128px !important;
  padding: 20px 20px !important;
  margin: 0 !important;

  border: 0 !important;
  border-bottom: 1px solid rgba(0,0,0,.065) !important;
  background: #fff !important;
}

body.woocommerce-cart .wc-block-cart-items__row:last-child{
  border-bottom: 0 !important;
}

body.woocommerce-cart .wc-block-cart-items__row > td{
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

/* Image */
body.woocommerce-cart .wc-block-cart-item__image{
  width: 112px !important;
  min-width: 112px !important;
}

body.woocommerce-cart .wc-block-cart-item__image > a,
body.woocommerce-cart .wc-block-cart-item__image img{
  width: 112px !important;
  height: 96px !important;
  display: block !important;
  border-radius: 16px !important;
  object-fit: contain !important;
  background: #f7f7f7 !important;
  overflow: hidden !important;
}

/* Product info */
body.woocommerce-cart .wc-block-cart-item__product{
  min-width: 0 !important;
}

body.woocommerce-cart .wc-block-components-product-name{
  display: block !important;
  max-width: 44ch !important;
  margin: 0 0 10px !important;

  color: var(--kk-cart-text) !important;
  font-size: 17px !important;
  line-height: 1.22 !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  text-decoration: none !important;
}

body.woocommerce-cart .wc-block-components-product-name:hover{
  color: rgba(0,0,0,.68) !important;
}

/* Hide noisy meta */
body.woocommerce-cart .wc-block-components-product-metadata,
body.woocommerce-cart .wc-block-components-product-details,
body.woocommerce-cart .wc-block-cart-item__prices{
  display: none !important;
}

/* Sale badge under product title */
body.woocommerce-cart .wc-block-components-sale-badge{
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  gap: 6px !important;

  margin: 0 !important;
  padding: 5px 10px !important;

  border: 0 !important;
  border-radius: 999px !important;
  background: var(--kk-cart-green-soft) !important;
  color: var(--kk-cart-green) !important;

  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 750 !important;
  letter-spacing: .015em !important;
  text-transform: uppercase !important;
}

body.woocommerce-cart .wc-block-components-sale-badge .wc-block-formatted-money-amount{
  color: var(--kk-cart-green) !important;
  font-size: 11px !important;
  font-weight: 750 !important;
}

/* Quantity center column */
body.woocommerce-cart .wc-block-cart-item__quantity{
  position: static !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  margin: 0 !important;
  grid-column: auto !important;
}

/* Quantity pill */
body.woocommerce-cart .wc-block-components-quantity-selector{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 112px !important;
  min-width: 112px !important;
  height: 42px !important;

  border: 1px solid rgba(0,0,0,.10) !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.025) !important;
  overflow: hidden !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector::before,
body.woocommerce-cart .wc-block-components-quantity-selector::after{
  display: none !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button{
  width: 34px !important;
  min-width: 34px !important;
  height: 40px !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: rgba(0,0,0,.46) !important;
  font-size: 17px !important;
  line-height: 1 !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector__button:hover{
  background: rgba(31,107,72,.055) !important;
  color: var(--kk-cart-green) !important;
}

body.woocommerce-cart .wc-block-components-quantity-selector__input{
  width: 34px !important;
  min-width: 34px !important;
  height: 40px !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;

  color: var(--kk-cart-text) !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  text-align: center !important;
}

/* Price */
body.woocommerce-cart .wc-block-cart-item__total{
  min-width: 0 !important;
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  text-align: right !important;
  padding: 0 !important;
}

body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper,
body.woocommerce-cart .wc-block-cart-item__total .price{
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 4px !important;
  margin: 0 !important;
}

body.woocommerce-cart .wc-block-cart-item__total .wc-block-formatted-money-amount,
body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price__value{
  color: var(--kk-cart-text) !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 750 !important;
  letter-spacing: -0.02em !important;
}

/* Hide duplicate total discount badge */
body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper .wc-block-components-sale-badge{
  display: none !important;
}

/* Remove button */
body.woocommerce-cart .wc-block-cart-item__remove-link,
body.woocommerce-cart button.wc-block-cart-item__remove-link{
  position: static !important;

  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  padding: 0 !important;
  margin: 0 !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  border: 1px solid rgba(0,0,0,.08) !important;
  border-radius: 999px !important;
  background: #fff !important;
  box-shadow: 0 2px 8px rgba(0,0,0,.025) !important;

  font-size: 0 !important;
  color: rgba(0,0,0,.55) !important;
  text-decoration: none !important;

  transition: background .18s ease, border-color .18s ease, transform .14s ease !important;
}

body.woocommerce-cart .wc-block-cart-item__remove-link::before,
body.woocommerce-cart button.wc-block-cart-item__remove-link::before{
  content: "";
  width: 15px !important;
  height: 15px !important;
  display: block !important;
  background: rgba(0,0,0,.55) !important;

  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2H4V5h4l1-2Zm-1 6h2v9H8V9Zm6 0h2v9h-2V9ZM6 7h12l-1 12a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L6 7Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9 3h6l1 2h4v2H4V5h4l1-2Zm-1 6h2v9H8V9Zm6 0h2v9h-2V9ZM6 7h12l-1 12a2 2 0 0 1-2 2H9a2 2 0 0 1-2-2L6 7Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover,
body.woocommerce-cart button.wc-block-cart-item__remove-link:hover{
  background: rgba(220,38,38,.05) !important;
  border-color: rgba(220,38,38,.18) !important;
  transform: translateY(-1px);
}

body.woocommerce-cart .wc-block-cart-item__remove-link:hover::before,
body.woocommerce-cart button.wc-block-cart-item__remove-link:hover::before{
  background: rgba(160,28,28,.78) !important;
}

/* Sidebar card */
body.woocommerce-cart .wc-block-cart__sidebar{
  position: sticky !important;
  top: 24px !important;

  width: 100% !important;
  padding: 24px !important;

  border: 1px solid rgba(0,0,0,.065) !important;
  border-radius: 24px !important;
  background: #fff !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.055) !important;
}

body.woocommerce-cart .wc-block-cart__totals-title{
  margin: 0 0 20px !important;
  color: var(--kk-cart-text) !important;
  font-size: 25px !important;
  line-height: 1.1 !important;
  font-weight: 750 !important;
  letter-spacing: -0.03em !important;
  text-transform: none !important;
}

/* Totals clean */
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-wrapper,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item,
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item{
  border: 0 !important;
  box-shadow: none !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item{
  padding: 10px 0 !important;
  margin: 0 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-coupon{
  padding: 0 0 16px !important;
  margin: 0 0 12px !important;
  border-bottom: 1px solid rgba(0,0,0,.075) !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-panel__button{
  padding: 0 !important;
  color: rgba(0,0,0,.72) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__label{
  color: var(--kk-cart-muted) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-item__value{
  color: var(--kk-cart-text) !important;
  font-size: 15px !important;
  font-weight: 750 !important;
}

/* Total area */
body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item{
  margin-top: 12px !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(0,0,0,.09) !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item__label{
  color: var(--kk-cart-muted) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item .wc-block-formatted-money-amount{
  color: var(--kk-cart-text) !important;
  font-size: 30px !important;
  line-height: 1 !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
}

body.woocommerce-cart .wc-block-cart__sidebar .wc-block-components-totals-footer-item-tax{
  margin-top: 5px !important;
  color: rgba(0,0,0,.58) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
}

/* Checkout CTA */
body.woocommerce-cart .wc-block-cart__submit-container{
  margin-top: 20px !important;
}

body.woocommerce-cart .wc-block-cart__submit-container .wc-block-components-button,
body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button{
  min-height: 56px !important;
  width: 100% !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, var(--kk-cart-green), var(--kk-cart-green-dark)) !important;
  color: #fff !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  letter-spacing: .005em !important;
  box-shadow: 0 14px 28px rgba(31,107,72,.16) !important;
}

body.woocommerce-cart .wc-block-cart__submit-container .wc-block-components-button:hover,
body.woocommerce-cart .wc-block-components-button.wc-block-cart__submit-button:hover{
  transform: translateY(-1px);
  filter: brightness(1.03);
  box-shadow: 0 18px 32px rgba(31,107,72,.22) !important;
}



/* Mobile */
@media (max-width: 980px){
  body.woocommerce-cart .wc-block-cart{
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar{
    position: static !important;
  }
}

@media (max-width: 760px){
  body.woocommerce-cart .wp-block-woocommerce-cart{
    padding: 14px !important;
  }

  body.woocommerce-cart .wc-block-cart-items{
    border-radius: 18px !important;
  }

  body.woocommerce-cart .wc-block-cart-items__row{
    grid-template-columns: 86px minmax(0,1fr) auto !important;
    grid-template-areas:
      "image product price"
      "image qty remove" !important;
    gap: 10px 14px !important;
    min-height: 124px !important;
    padding: 16px !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image{
    grid-area: image !important;
    width: 86px !important;
    min-width: 86px !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image > a,
  body.woocommerce-cart .wc-block-cart-item__image img{
    width: 86px !important;
    height: 86px !important;
  }

  body.woocommerce-cart .wc-block-cart-item__product{
    grid-area: product !important;
  }

  body.woocommerce-cart .wc-block-components-product-name{
    font-size: 15px !important;
    margin-bottom: 8px !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total{
    grid-area: price !important;
    justify-content: flex-end !important;
    align-items: start !important;
    margin: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__quantity{
    grid-area: qty !important;
    justify-content: flex-start !important;
  }

  body.woocommerce-cart .wc-block-cart-item__remove-link,
  body.woocommerce-cart button.wc-block-cart-item__remove-link{
    grid-area: remove !important;
    justify-self: end !important;
    align-self: center !important;
  }

  body.woocommerce-cart .wc-block-cart__sidebar{
    padding: 20px 18px !important;
    border-radius: 20px !important;
  }
}


/* =========================================================
   CART PAGE — fix product row layout to match mockup
========================================================= */

body.woocommerce-cart .wc-block-cart-items__row{
  display: grid !important;
  grid-template-columns: 112px minmax(240px, 1fr) 132px 140px 42px !important;
  gap: 22px !important;
  align-items: center !important;

  min-height: 132px !important;
  padding: 20px !important;
}

/* td wrapperid lasevad sisemistel elementidel gridis osaleda */
body.woocommerce-cart .wc-block-cart-item__product,
body.woocommerce-cart .wc-block-cart-item__total,
body.woocommerce-cart .wc-block-cart-item__wrap{
  display: contents !important;
}

/* image */
body.woocommerce-cart .wc-block-cart-item__image{
  grid-column: 1 !important;
  width: 112px !important;
  min-width: 112px !important;
}

/* title + badge ala */
body.woocommerce-cart .wc-block-components-product-name{
  grid-column: 2 !important;
  align-self: end !important;
  margin: 0 0 8px !important;
}

/* sale badge title all */
body.woocommerce-cart .wc-block-cart-item__wrap > .wc-block-components-sale-badge{
  grid-column: 2 !important;
  align-self: start !important;
  width: fit-content !important;
}

/* quantity keskele */
body.woocommerce-cart .wc-block-cart-item__quantity{
  grid-column: 3 !important;
  position: static !important;
  align-self: center !important;
  justify-self: center !important;
  margin: 0 !important;
}

/* hind paremale */
body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper{
  grid-column: 4 !important;
  align-self: center !important;
  justify-self: end !important;
  margin: 0 !important;
}

/* remove nupp kõige paremas veerus */
body.woocommerce-cart .kk-mini-cart__total-row{
  grid-column: 5 !important;
  align-self: center !important;
  justify-self: end !important;

  position: static !important;
  right: auto !important;
  bottom: auto !important;
  margin: 0 !important;
}

/* remove button reset */
body.woocommerce-cart .wc-block-cart-item__remove-link,
body.woocommerce-cart button.wc-block-cart-item__remove-link{
  position: static !important;
  right: auto !important;
  bottom: auto !important;
}

/* peida ebavajalik sisu */
body.woocommerce-cart .wc-block-cart-item__prices,
body.woocommerce-cart .wc-block-components-product-metadata{
  display: none !important;
}

/* mobile layout */
@media (max-width: 760px){
  body.woocommerce-cart .wc-block-cart-items__row{
    grid-template-columns: 86px minmax(0, 1fr) auto !important;
    grid-template-areas:
      "image title price"
      "image badge price"
      "image qty remove" !important;
    gap: 8px 14px !important;
    padding: 16px !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image{
    grid-area: image !important;
  }

  body.woocommerce-cart .wc-block-components-product-name{
    grid-area: title !important;
  }

  body.woocommerce-cart .wc-block-cart-item__wrap > .wc-block-components-sale-badge{
    grid-area: badge !important;
  }

  body.woocommerce-cart .wc-block-cart-item__quantity{
    grid-area: qty !important;
    justify-self: start !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper{
    grid-area: price !important;
  }

  body.woocommerce-cart .kk-mini-cart__total-row{
    grid-area: remove !important;
  }
}

/* =========================================================
   CART — final row grid layout fix
========================================================= */

body.woocommerce-cart .wc-block-cart-items,
body.woocommerce-cart .wc-block-cart-items tbody{
  display: block !important;
  width: 100% !important;
}

body.woocommerce-cart .wc-block-cart-items__row{
  display: grid !important;
  grid-template-columns: 112px minmax(0, 1fr) 120px 140px 40px !important;
  grid-template-rows: auto auto !important;
  column-gap: 22px !important;
  row-gap: 6px !important;
  align-items: center !important;

  min-height: 132px !important;
  padding: 20px !important;
}

/* lase td wrapperitest läbi */
body.woocommerce-cart .wc-block-cart-items__row > td,
body.woocommerce-cart .wc-block-cart-item__wrap{
  display: contents !important;
}

/* IMAGE */
body.woocommerce-cart .wc-block-cart-item__image > a{
  grid-column: 1 !important;
  grid-row: 1 / 3 !important;
  align-self: center !important;

  width: 112px !important;
  height: 96px !important;
}

body.woocommerce-cart .wc-block-cart-item__image img{
  width: 112px !important;
  height: 96px !important;
  object-fit: contain !important;
  border-radius: 16px !important;
  background: #f7f7f7 !important;
}

/* TITLE */
body.woocommerce-cart .wc-block-components-product-name{
  grid-column: 2 !important;
  grid-row: 1 !important;
  align-self: end !important;

  margin: 0 !important;
}

/* Kui sooduse badge puudub, pane pealkiri vertikaalselt keskele */
body.woocommerce-cart .wc-block-cart-items__row:not(:has(.wc-block-cart-item__wrap > .wc-block-components-sale-badge))
.wc-block-components-product-name{
  grid-row: 1 / 3 !important;
  align-self: center !important;
}

/* BADGE title all */
body.woocommerce-cart .wc-block-cart-item__wrap > .wc-block-components-sale-badge{
  grid-column: 2 !important;
  grid-row: 2 !important;
  align-self: start !important;

  width: fit-content !important;
  margin: 0 !important;
}

/* QUANTITY */
body.woocommerce-cart .wc-block-cart-item__quantity{
  grid-column: 3 !important;
  grid-row: 1 / 3 !important;

  position: static !important;
  align-self: center !important;
  justify-self: center !important;

  margin: 0 !important;
}

/* PRICE */
body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper{
  grid-column: 4 !important;
  grid-row: 1 / 3 !important;

  align-self: center !important;
  justify-self: end !important;

  margin: 0 !important;
}

/* REMOVE */
body.woocommerce-cart .kk-mini-cart__total-row{
  grid-column: 5 !important;
  grid-row: 1 / 3 !important;

  position: static !important;
  align-self: center !important;
  justify-self: end !important;

  margin: 0 !important;
}

/* remove button reset */
body.woocommerce-cart .wc-block-cart-item__remove-link,
body.woocommerce-cart button.wc-block-cart-item__remove-link{
  position: static !important;
  right: auto !important;
  bottom: auto !important;
}

/* hide noise */
body.woocommerce-cart .wc-block-cart-item__prices,
body.woocommerce-cart .wc-block-components-product-metadata{
  display: none !important;
}

/* =========================================================
   CART — mobile layout fix
========================================================= */

@media (max-width: 760px){

  body.woocommerce-cart .wc-block-cart-items__row{
    display: grid !important;
    grid-template-columns: 92px minmax(0, 1fr) !important;
    grid-template-areas:
      "image title"
      "image badge"
      "image price"
      "image actions" !important;

    column-gap: 14px !important;
    row-gap: 8px !important;

    min-height: auto !important;
    padding: 16px !important;
    align-items: center !important;
  }

  body.woocommerce-cart .wc-block-cart-items__row > td,
  body.woocommerce-cart .wc-block-cart-item__wrap{
    display: contents !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image,
  body.woocommerce-cart .wc-block-cart-item__image > a{
    grid-area: image !important;
    align-self: center !important;
    width: 92px !important;
    min-width: 92px !important;
    height: 92px !important;
  }

  body.woocommerce-cart .wc-block-cart-item__image img{
    width: 92px !important;
    height: 92px !important;
    object-fit: contain !important;
    border-radius: 14px !important;
  }

  body.woocommerce-cart .wc-block-components-product-name{
    grid-area: title !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;

    font-size: 15px !important;
    line-height: 1.22 !important;
    font-weight: 700 !important;

    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }

  body.woocommerce-cart .wc-block-cart-item__wrap > .wc-block-components-sale-badge{
    grid-area: badge !important;
    width: fit-content !important;
    margin: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total-price-and-sale-badge-wrapper{
    grid-area: price !important;
    justify-self: start !important;
    align-self: center !important;
    margin: 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__quantity{
    grid-area: actions !important;
    justify-self: start !important;
    align-self: center !important;

    position: static !important;
    left: auto !important;
    bottom: auto !important;
    margin: 4px 0 0 !important;
  }

  body.woocommerce-cart .kk-mini-cart__total-row{
    grid-area: actions !important;
    justify-self: end !important;
    align-self: center !important;

    position: static !important;
    right: auto !important;
    bottom: auto !important;
    margin: 4px 0 0 !important;
  }

  body.woocommerce-cart .wc-block-cart-item__remove-link,
  body.woocommerce-cart button.wc-block-cart-item__remove-link{
    position: static !important;
    right: auto !important;
    bottom: auto !important;
  }

  body.woocommerce-cart .wc-block-cart-item__total .wc-block-formatted-money-amount,
  body.woocommerce-cart .wc-block-cart-item__total .wc-block-components-product-price__value{
    font-size: 16px !important;
  }
}

/* =========================================================
   CART MOBILE — price spacing fix
========================================================= */

@media (max-width: 760px){

  body.woocommerce-cart
  .wc-block-cart-item__total-price-and-sale-badge-wrapper{
    margin-top: 4px !important;
    margin-bottom: 6px !important;
  }

  body.woocommerce-cart
  .wc-block-cart-item__total
  .wc-block-formatted-money-amount,
  body.woocommerce-cart
  .wc-block-cart-item__total
  .wc-block-components-product-price__value{
    font-size: 16px !important;
    font-weight: 750 !important;
    letter-spacing: -0.01em;
  }

}


/*************************************************/

body.woocommerce-cart .wp-block-woocommerce-cart-order-summary-totals-block {
  border-top: 0 !important;
  padding-bottom: 0 !important;
}

body.woocommerce-cart .wc-block-cart .wp-block-woocommerce-cart-order-summary-block {
    border-bottom:  0 !important;
}

/* =========================================================
   CART / CHECKOUT — tax amount override only
========================================================= */

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__description
.wc-block-components-totals-footer-item-tax-value,
body.woocommerce-cart
.wc-block-cart__sidebar
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__description
.wc-block-components-totals-footer-item-tax-value{
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  color: rgba(0,0,0,.68) !important;
}

/* Tax tekstirea enda suurus */
body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-sidebar
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__description,
body.woocommerce-cart
.wc-block-cart__sidebar
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__description{
  margin-top: 14px !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  color: rgba(0,0,0,.55) !important;
}

/* =========================================================
   CHECKOUT / CART — tax amount must stay small
========================================================= */

body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__description
.wc-block-components-totals-footer-item-tax
.wc-block-components-totals-footer-item-tax-value,
body.woocommerce-cart
.wp-block-woocommerce-cart
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__description
.wc-block-components-totals-footer-item-tax
.wc-block-components-totals-footer-item-tax-value{
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  color: rgba(0,0,0,.68) !important;
}

/* tax text row */
body.woocommerce-checkout
.wp-block-woocommerce-checkout
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__description
.wc-block-components-totals-footer-item-tax,
body.woocommerce-cart
.wp-block-woocommerce-cart
.wc-block-components-totals-footer-item
.wc-block-components-totals-item__description
.wc-block-components-totals-footer-item-tax{
  margin: 14px 0 0 !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  color: rgba(0,0,0,.55) !important;
}


/* =========================================================
   ORDER CONFIRMATION — clean premium style
========================================================= */

body.woocommerce-order-received{
  --kk-confirm-green: #1f6b48;
  --kk-confirm-green-dark: #155437;
  --kk-confirm-soft: rgba(31,107,72,.08);
  --kk-confirm-border: rgba(0,0,0,.075);
  --kk-confirm-text: rgba(0,0,0,.92);
  --kk-confirm-muted: rgba(0,0,0,.58);
}

body.woocommerce-order-received main{
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: clamp(18px, 3vw, 42px) !important;
}

/* Hero/status */
body.woocommerce-order-received .wc-block-order-confirmation-status{
  position: relative;
  margin: 0 0 22px !important;
  padding: 34px 34px 32px 92px !important;

  border: 1px solid rgba(31,107,72,.14) !important;
  border-radius: 24px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,251,249,.98)) !important;
  box-shadow: 0 16px 38px rgba(0,0,0,.045) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-status::before{
  content: "";
  position: absolute;
  left: 34px;
  top: 34px;

  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: var(--kk-confirm-soft);

  -webkit-mask: none;
          mask: none;
}

body.woocommerce-order-received .wc-block-order-confirmation-status::after{
  content: "";
  position: absolute;
  left: 45px;
  top: 45px;

  width: 20px;
  height: 20px;
  background: var(--kk-confirm-green);

  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.2 16.6 4.9 12.3l1.4-1.4 2.9 2.9 8.5-8.5 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M9.2 16.6 4.9 12.3l1.4-1.4 2.9 2.9 8.5-8.5 1.4 1.4z'/%3E%3C/svg%3E") center/contain no-repeat;
}

body.woocommerce-order-received .wc-block-order-confirmation-status h1{
  margin: 0 0 8px !important;
  color: var(--kk-confirm-text) !important;
  font-size: clamp(30px, 4vw, 44px) !important;
  line-height: 1.02 !important;
  font-weight: 750 !important;
  letter-spacing: -0.04em !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-status p{
  margin: 0 !important;
  max-width: 60ch;
  color: var(--kk-confirm-muted) !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

/* Summary chips */
body.woocommerce-order-received .wc-block-order-confirmation-summary{
  margin: 0 0 22px !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px !important;

  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item{
  margin: 0 !important;
  padding: 14px 16px !important;

  border: 1px solid var(--kk-confirm-border) !important;
  border-radius: 16px !important;
  background: #fff !important;
  box-shadow: 0 8px 22px rgba(0,0,0,.025) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__key{
  display: block !important;
  margin: 0 0 5px !important;
  color: var(--kk-confirm-muted) !important;
  font-size: 12px !important;
  font-weight: 600 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__value{
  display: block !important;
  color: var(--kk-confirm-text) !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  overflow-wrap: anywhere;
}

/* Shared section cards */
body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-additional-information{
  margin: 0 0 22px !important;
  padding: 24px !important;

  border: 1px solid var(--kk-confirm-border) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.035) !important;
}

/* Section headings */
body.woocommerce-order-received .wp-block-heading,
body.woocommerce-order-received .wc-bacs-bank-details-heading{
  margin: 0 0 18px !important;
  color: var(--kk-confirm-text) !important;
  font-size: 22px !important;
  line-height: 1.12 !important;
  font-weight: 750 !important;
  letter-spacing: -0.025em !important;
}

/* Order details table */
body.woocommerce-order-received .wc-block-order-confirmation-totals__table{
  width: 100% !important;
  margin: 0 !important;
  border: 0 !important;
  border-collapse: collapse !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table thead{
  display: none !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tr{
  border-bottom: 1px solid rgba(0,0,0,.07) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tbody tr:last-child{
  border-bottom: 1px solid rgba(0,0,0,.09) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table th,
body.woocommerce-order-received .wc-block-order-confirmation-totals__table td{
  padding: 14px 0 !important;
  border: 0 !important;
  background: transparent !important;
  vertical-align: top !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__product a{
  color: var(--kk-confirm-text) !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}

body.woocommerce-order-received .product-quantity{
  margin-left: 6px;
  color: var(--kk-confirm-muted) !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__total{
  text-align: right !important;
  color: var(--kk-confirm-text) !important;
  font-weight: 750 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child{
  border-bottom: 0 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child th,
body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child td{
  padding-top: 20px !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child .amount{
  font-size: 24px !important;
  font-weight: 800 !important;
  letter-spacing: -0.03em !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child .includes_tax .amount{
  font-size: 12.5px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
}

body.woocommerce-order-received .includes_tax{
  display: block !important;
  margin-top: 5px !important;
  color: var(--kk-confirm-muted) !important;
  font-size: 12.5px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

body.woocommerce-order-received .includes_tax .amount{
  font-size: 12.5px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
}

/* Address columns */
body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper{
  gap: 22px !important;
  margin-bottom: 0 !important;
}

body.woocommerce-order-received address{
  margin: 0 !important;
  color: var(--kk-confirm-muted) !important;
  font-style: normal !important;
  font-size: 15px !important;
  line-height: 1.6 !important;
}

/* Bank details */
body.woocommerce-order-received .wc-block-order-confirmation-additional-information{
  border-color: rgba(31,107,72,.13) !important;
  background: linear-gradient(180deg, rgba(247,251,249,.92), #fff) !important;
}

body.woocommerce-order-received .wc-bacs-bank-details-account-name{
  margin: 0 0 12px !important;
  color: var(--kk-confirm-text) !important;
  font-size: 16px !important;
  font-weight: 750 !important;
}

body.woocommerce-order-received .wc-bacs-bank-details{
  display: grid;
  gap: 10px;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-order-received .wc-bacs-bank-details li{
  padding: 12px 14px !important;
  border: 1px solid rgba(0,0,0,.06) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: var(--kk-confirm-muted) !important;
  font-size: 14px !important;
}

body.woocommerce-order-received .wc-bacs-bank-details strong{
  color: var(--kk-confirm-text) !important;
  font-weight: 750 !important;
}

/* Mobile */
@media (max-width: 800px){
  body.woocommerce-order-received main{
    padding: 16px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-status{
    padding: 28px 22px 24px 74px !important;
    border-radius: 20px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-status::before{
    left: 22px;
    top: 28px;
    width: 38px;
    height: 38px;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-status::after{
    left: 32px;
    top: 38px;
    width: 18px;
    height: 18px;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-summary-list{
    grid-template-columns: 1fr 1fr !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item:nth-last-child(2){
    grid-column: 1 / -1;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper,
  body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper,
  body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper,
  body.woocommerce-order-received .wc-block-order-confirmation-additional-information{
    padding: 20px !important;
    border-radius: 20px !important;
  }
}

@media (max-width: 520px){
  body.woocommerce-order-received .wc-block-order-confirmation-summary-list{
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-totals__product a{
    font-size: 15px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-totals__table th,
  body.woocommerce-order-received .wc-block-order-confirmation-totals__table td{
    padding: 12px 0 !important;
  }
}

/* =========================================================
   ORDER CONFIRMATION — mockup correction override
   Paste at END of shop.css
========================================================= */

body.woocommerce-order-received{
  --kk-confirm-green: #0f7a4a;
  --kk-confirm-green-dark: #075d38;
  --kk-confirm-soft: rgba(15,122,74,.085);
  --kk-confirm-border: rgba(0,0,0,.075);
  --kk-confirm-text: rgba(0,0,0,.93);
  --kk-confirm-muted: rgba(0,0,0,.58);
}

/* page width + spacing */
body.woocommerce-order-received main#wp--skip-link--target{
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding: clamp(22px, 4vw, 56px) clamp(18px, 4vw, 42px) !important;
}

/* HERO — larger like mockup */
body.woocommerce-order-received .wc-block-order-confirmation-status{
  min-height: 190px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;

  margin: 0 0 34px !important;
  padding: 42px 48px 42px 210px !important;

  border: 1px solid rgba(15,122,74,.16) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 80% 10%, rgba(15,122,74,.055), transparent 38%),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,252,250,.98)) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.045) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-status::before{
  left: 58px !important;
  top: 50% !important;
  width: 112px !important;
  height: 112px !important;
  transform: translateY(-50%) !important;
  background: var(--kk-confirm-soft) !important;
  border-radius: 999px !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-status::after{
  left: 92px !important;
  top: 50% !important;
  width: 44px !important;
  height: 44px !important;
  transform: translateY(-50%) !important;
  background: var(--kk-confirm-green) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-status h1{
  margin: 0 0 12px !important;
  font-size: clamp(42px, 5vw, 58px) !important;
  line-height: .98 !important;
  font-weight: 760 !important;
  letter-spacing: -0.055em !important;
  color: var(--kk-confirm-text) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-status p{
  margin: 0 !important;
  color: var(--kk-confirm-muted) !important;
  font-size: 17px !important;
  line-height: 1.55 !important;
}

/* SUMMARY CARDS — more premium spacing */
body.woocommerce-order-received .wc-block-order-confirmation-summary{
  margin: 0 0 34px !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0,1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item{
  /*min-height: 100px !important;*/
  padding: 30px 24px 24px !important;

  border: 1px solid var(--kk-confirm-border) !important;
  border-radius: 18px !important;
  background: #fff !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.035) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__key{
  display: block !important;
  margin: 0 0 12px !important;
  color: var(--kk-confirm-muted) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__value{
  display: block !important;
  color: var(--kk-confirm-text) !important;
  font-size: 18px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
  letter-spacing: -0.015em !important;
}

/* MAIN CARDS */
body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper,
body.woocommerce-order-received .wc-block-order-confirmation-additional-information{
  padding: 34px !important;
  border: 1px solid var(--kk-confirm-border) !important;
  border-radius: 22px !important;
  background: #fff !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.035) !important;
}

body.woocommerce-order-received .wp-block-heading,
body.woocommerce-order-received .wc-bacs-bank-details-heading{
  margin: 0 0 28px !important;
  font-size: 28px !important;
  line-height: 1.08 !important;
  font-weight: 750 !important;
  letter-spacing: -0.035em !important;
  color: var(--kk-confirm-text) !important;
}

/* ORDER DETAILS — cleaner table */
body.woocommerce-order-received .wc-block-order-confirmation-totals__table{
  border: 0 !important;
  border-collapse: collapse !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table thead{
  display: table-header-group !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table thead th{
  padding: 0 0 16px !important;
  color: var(--kk-confirm-muted) !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  border-bottom: 1px solid rgba(0,0,0,.09) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table th,
body.woocommerce-order-received .wc-block-order-confirmation-totals__table td{
  padding: 22px 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tbody tr,
body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr{
  border-bottom: 1px solid rgba(0,0,0,.075) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__product a{
  color: var(--kk-confirm-text) !important;
  font-size: 17px !important;
  line-height: 1.25 !important;
  font-weight: 740 !important;
  text-decoration: none !important;
}

body.woocommerce-order-received .product-quantity{
  display: block !important;
  margin: 7px 0 0 !important;
  color: var(--kk-confirm-muted) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__total{
  text-align: right !important;
  color: var(--kk-confirm-text) !important;
  font-size: 17px !important;
  font-weight: 650 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child{
  border-bottom: 0 !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child th,
body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child td{
  padding-top: 26px !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-totals__table tfoot tr:last-child .amount{
  font-size: 34px !important;
  line-height: 1 !important;
  font-weight: 820 !important;
  letter-spacing: -0.045em !important;
}

body.woocommerce-order-received .includes_tax{
  display: block !important;
  margin-top: 8px !important;
  color: var(--kk-confirm-muted) !important;
  font-size: 13px !important;
  line-height: 1.35 !important;
  font-weight: 500 !important;
}

body.woocommerce-order-received .includes_tax .amount{
  font-size: 13px !important;
  font-weight: 650 !important;
  letter-spacing: 0 !important;
}

/* ADDRESS CARDS */
body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper{
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 22px !important;
  margin: 0 0 28px !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper .wp-block-column{
  width: 100% !important;
  flex-basis: auto !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-shipping-address,
body.woocommerce-order-received .wc-block-order-confirmation-billing-address{
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}

body.woocommerce-order-received address{
  margin: 0 !important;
  color: var(--kk-confirm-text) !important;
  font-style: normal !important;
  font-size: 16px !important;
  line-height: 1.65 !important;
}

/* BANK DETAILS — horizontal mockup style */
body.woocommerce-order-received .wc-block-order-confirmation-additional-information{
  position: relative !important;
  padding: 36px 36px 36px 170px !important;
  border-color: rgba(15,122,74,.14) !important;
  background:
    radial-gradient(circle at 10% 15%, rgba(15,122,74,.065), transparent 34%),
    linear-gradient(180deg, rgba(248,252,250,.96), #fff) !important;
}

body.woocommerce-order-received .wc-block-order-confirmation-additional-information::before{
  content: "";
  position: absolute;
  left: 42px;
  top: 50%;
  width: 92px;
  height: 92px;
  border-radius: 999px;
  transform: translateY(-50%);
  background: var(--kk-confirm-soft);
}

body.woocommerce-order-received .wc-block-order-confirmation-additional-information::after{
  content: "";
  position: absolute;
  left: 70px;
  top: 50%;
  width: 36px;
  height: 36px;
  transform: translateY(-50%);
  background: var(--kk-confirm-green);

  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 21h18v-2H3v2Zm2-4h2V9H5v8Zm4 0h2V9H9v8Zm4 0h2V9h-2v8Zm4 0h2V9h-2v8ZM2 7h20L12 2 2 7Zm4.5-1.5L12 3l5.5 2.5h-11Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 21h18v-2H3v2Zm2-4h2V9H5v8Zm4 0h2V9H9v8Zm4 0h2V9h-2v8Zm4 0h2V9h-2v8ZM2 7h20L12 2 2 7Zm4.5-1.5L12 3l5.5 2.5h-11Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

body.woocommerce-order-received .wc-bacs-bank-details-heading{
  margin-bottom: 12px !important;
}

body.woocommerce-order-received .wc-bacs-bank-details-account-name{
  margin: 0 0 26px !important;
  color: var(--kk-confirm-green-dark) !important;
  font-size: 18px !important;
  font-weight: 750 !important;
}

body.woocommerce-order-received .wc-bacs-bank-details{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0,1fr)) !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-order-received .wc-bacs-bank-details li{
  padding: 0 28px !important;
  border: 0 !important;
  border-left: 1px solid rgba(0,0,0,.10) !important;
  border-radius: 0 !important;
  background: transparent !important;

  color: var(--kk-confirm-muted) !important;
  font-size: 14px !important;
  line-height: 1.45 !important;
}

body.woocommerce-order-received .wc-bacs-bank-details li:first-child{
  padding-left: 0 !important;
  border-left: 0 !important;
}

body.woocommerce-order-received .wc-bacs-bank-details strong{
  display: block !important;
  margin-top: 7px !important;
  color: var(--kk-confirm-text) !important;
  font-size: 16px !important;
  font-weight: 750 !important;
}

/* Mobile */
@media (max-width: 800px){
  body.woocommerce-order-received main#wp--skip-link--target{
    padding: 16px !important;
  }
  
  body.woocommerce-order-received .wc-bacs-bank-details li:first-child {
    padding-left: 12px !important;
    border-left: 1px solid rgba(0, 0, 0, .07) !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-status{
    min-height: auto !important;
    padding: 28px 22px 26px 82px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-status::before{
    left: 22px !important;
    width: 44px !important;
    height: 44px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-status::after{
    left: 34px !important;
    width: 20px !important;
    height: 20px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-status h1{
    font-size: 32px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-summary-list{
    grid-template-columns: 1fr 1fr !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item{
    min-height: auto !important;
	width: auto !important;
    padding: 18px !important;
  }
  
  body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__value{
	font-weight: 600 !important;
    font-size: 16px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-address-wrapper{
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-totals-wrapper,
  body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper,
  body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper,
  body.woocommerce-order-received .wc-block-order-confirmation-additional-information{
    padding: 22px !important;
    border-radius: 20px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-additional-information{
    padding-left: 22px !important;
  }

  body.woocommerce-order-received .wc-block-order-confirmation-additional-information::before,
  body.woocommerce-order-received .wc-block-order-confirmation-additional-information::after{
    display: none !important;
  }

  body.woocommerce-order-received .wc-bacs-bank-details{
    grid-template-columns: 1fr !important;
    gap: 12px !important;
  }

  body.woocommerce-order-received .wc-bacs-bank-details li{
    padding: 12px 14px !important;
    border: 1px solid rgba(0,0,0,.07) !important;
    border-radius: 14px !important;
    background: #fff !important;
  }
  
  .wc-block-order-confirmation-summary-list {
    display: flex;
    flex-direction: column;
  }

  /* eelviimane (Email) → viimane */
  .wc-block-order-confirmation-summary-list-item:nth-last-child(2) {
    order: 5;
  }

  /* viimane (Payment) → eelviimane */
  .wc-block-order-confirmation-summary-list-item:last-child {
    order: 4;
  }
}

/* =========================================================
   ORDER CONFIRMATION — missing icons + product thumbnails
========================================================= */

/* summary card icons */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item{
  position: relative !important;
  padding-top: 74px !important;
}

body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item::before{
  content: "" !important;
  position: absolute !important;
  left: 22px !important;
  top: 22px !important;

  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;

  background-color: rgba(31,107,72,.10) !important;
}

body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item::after{
  content: "" !important;
  position: absolute !important;
  left: 31px !important;
  top: 31px !important;

  width: 16px !important;
  height: 16px !important;
  background: #1f6b48 !important;

  -webkit-mask-position: center !important;
  -webkit-mask-repeat: no-repeat !important;
  -webkit-mask-size: contain !important;
          mask-position: center !important;
          mask-repeat: no-repeat !important;
          mask-size: contain !important;
}

/* Order # */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(1)::after{
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 2h9l5 5v15H6V2Zm8 1.8V8h4.2L14 3.8ZM8 12h8v2H8v-2Zm0 4h8v2H8v-2Z'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M6 2h9l5 5v15H6V2Zm8 1.8V8h4.2L14 3.8ZM8 12h8v2H8v-2Zm0 4h8v2H8v-2Z'/%3E%3C/svg%3E");
}

/* Date */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(2)::after{
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 2h2v3h6V2h2v3h3v17H4V5h3V2Zm11 8H6v10h12V10Z'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 2h2v3h6V2h2v3h3v17H4V5h3V2Zm11 8H6v10h12V10Z'/%3E%3C/svg%3E");
}

/* Total */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(3)::after{
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 6h18v12H3V6Zm2 3v6h14V9H5Zm7 1a2 2 0 1 1 0 4 2 2 0 0 1 0-4Z'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 6h18v12H3V6Zm2 3v6h14V9H5Zm7 1a2 2 0 1 1 0 4 2 2 0 0 1 0-4Z'/%3E%3C/svg%3E");
}

/* Email */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(4)::after{
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 5h18v14H3V5Zm2 3.2V17h14V8.2l-7 5-7-5Zm1.2-1.2 5.8 4.1L17.8 7H6.2Z'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 5h18v14H3V5Zm2 3.2V17h14V8.2l-7 5-7-5Zm1.2-1.2 5.8 4.1L17.8 7H6.2Z'/%3E%3C/svg%3E");
}

/* Payment */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(5)::after{
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 6h18v12H3V6Zm2 2v2h14V8H5Zm0 5v3h14v-3H5Z'/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3 6h18v12H3V6Zm2 2v2h14V8H5Zm0 5v3h14v-3H5Z'/%3E%3C/svg%3E");
}

/* address icons */
body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper{
  position: relative !important;
  padding-left: 82px !important;
}

body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper::before,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper::before{
  content: "" !important;
  position: absolute !important;
  left: 28px !important;
  top: 32px !important;

  width: 36px !important;
  height: 36px !important;
  border-radius: 13px !important;

  background: rgba(31,107,72,.10) !important;
}

body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper::after,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper::after{
  content: "" !important;
  position: absolute !important;
  left: 38px !important;
  top: 42px !important;

  width: 16px !important;
  height: 16px !important;
  background: #1f6b48 !important;

  -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E") center/contain no-repeat;
          mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 2a7 7 0 0 0-7 7c0 5.2 7 13 7 13s7-7.8 7-13a7 7 0 0 0-7-7Zm0 9.5A2.5 2.5 0 1 1 12 6a2.5 2.5 0 0 1 0 5.5Z'/%3E%3C/svg%3E") center/contain no-repeat;
}

/* product thumbnails added via functions.php */
body.woocommerce-order-received .kk-confirm-product-line{
  display: inline-flex !important;
  align-items: center !important;
  gap: 16px !important;
}

body.woocommerce-order-received .kk-confirm-product-thumb{
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
  object-fit: contain !important;
  border-radius: 12px !important;
  background: #f7f7f7 !important;
}

body.woocommerce-order-received .kk-confirm-product-name{
  display: inline-flex !important;
  flex-direction: column !important;
  gap: 4px !important;
}

/* mobile */
@media (max-width: 800px){
  body.woocommerce-order-received
  .wc-block-order-confirmation-shipping-wrapper,
  body.woocommerce-order-received
  .wc-block-order-confirmation-billing-wrapper{
    padding-left: 22px !important;
    padding-top: 22px !important;
  }

  body.woocommerce-order-received
  .wc-block-order-confirmation-shipping-wrapper::before,
  body.woocommerce-order-received
  .wc-block-order-confirmation-billing-wrapper::before{
    left: 22px !important;
    top: 22px !important;
  }

  body.woocommerce-order-received
  .wc-block-order-confirmation-shipping-wrapper::after,
  body.woocommerce-order-received
  .wc-block-order-confirmation-billing-wrapper::after{
    left: 32px !important;
    top: 32px !important;
  }
}

/* =========================================================
   ORDER CONFIRMATION — clean line icons like mockup
========================================================= */

/* Summary icon container */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item::before{
  content: "" !important;
  position: absolute !important;
  left: 22px !important;
  top: 22px !important;

  width: 42px !important;
  height: 42px !important;
  border-radius: 14px !important;

  background: rgba(31,107,72,.10) !important;
}

/* Summary icon itself */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item::after{
  content: "" !important;
  position: absolute !important;
  left: 32px !important;
  top: 32px !important;

  width: 22px !important;
  height: 22px !important;

  background-color: transparent !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 22px 22px !important;

  -webkit-mask: none !important;
          mask: none !important;
}

/* Order # */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(1)::after{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%231f6b48' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M7 3h7l4 4v14H7V3Z'/%3E%3Cpath d='M14 3v5h5'/%3E%3Cpath d='M9.5 13h5'/%3E%3Cpath d='M9.5 17h4'/%3E%3C/svg%3E") !important;
}

/* Date */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(2)::after{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%231f6b48' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='4' y='5' width='16' height='15' rx='2.5'/%3E%3Cpath d='M8 3v4'/%3E%3Cpath d='M16 3v4'/%3E%3Cpath d='M4 10h16'/%3E%3C/svg%3E") !important;
}

/* Total */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(3)::after{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%231f6b48' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='3.5' y='6.5' width='17' height='11' rx='2.5'/%3E%3Cpath d='M7 10h4.5'/%3E%3Cpath d='M7 14h2.5'/%3E%3Cpath d='M16.5 12h.01'/%3E%3C/svg%3E") !important;
}

/* Email */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(4)::after{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%231f6b48' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='3.5' y='6' width='17' height='12' rx='2.5'/%3E%3Cpath d='m5 8 7 5 7-5'/%3E%3C/svg%3E") !important;
}

/* Payment */
body.woocommerce-order-received
.wc-block-order-confirmation-summary-list-item:nth-child(5)::after{
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%231f6b48' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Crect x='3.5' y='6.5' width='17' height='11' rx='2.5'/%3E%3Cpath d='M3.5 10h17'/%3E%3Cpath d='M7 14.5h4'/%3E%3C/svg%3E") !important;
}


/* =========================================================
   ADDRESS ICONS — same line icon style
========================================================= */

body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper::before,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper::before{
  content: "" !important;
  position: absolute !important;
  left: 28px !important;
  top: 32px !important;

  width: 42px !important;
  height: 42px !important;
  border-radius: 14px !important;

  background: rgba(31,107,72,.10) !important;
}

body.woocommerce-order-received
.wc-block-order-confirmation-shipping-wrapper::after,
body.woocommerce-order-received
.wc-block-order-confirmation-billing-wrapper::after{
  content: "" !important;
  position: absolute !important;
  left: 38px !important;
  top: 42px !important;

  width: 22px !important;
  height: 22px !important;

  background-color: transparent !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 22px 22px !important;

  -webkit-mask: none !important;
          mask: none !important;

  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' fill='none' stroke='%231f6b48' stroke-width='1.9' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 21s7-6.2 7-12a7 7 0 1 0-14 0c0 5.8 7 12 7 12Z'/%3E%3Ccircle cx='12' cy='9' r='2.5'/%3E%3C/svg%3E") !important;
}

/* =========================================================
   TYPOGRAPHY CLEANUP (ORDER CONFIRMATION)
========================================================= */

/* Pealkirjad */
body.woocommerce-order-received h1,
body.woocommerce-order-received .wp-block-heading{
  font-weight: 720 !important;
  letter-spacing: -0.03em !important;
}

/* Summary values (59, 1080€, jne) */
body.woocommerce-order-received 
.wc-block-order-confirmation-summary-list-item__value{
  font-weight: 650 !important;
  letter-spacing: -0.01em;
}

/* Summary labels (Order #, Date jne) */
body.woocommerce-order-received 
.wc-block-order-confirmation-summary-list-item__key{
  font-weight: 500 !important;
  opacity: .75;
}

/* Tootenimed */
body.woocommerce-order-received 
.wc-block-order-confirmation-totals__product a{
  font-weight: 620 !important;
}

/* Väike meta tekst */
body.woocommerce-order-received 
.includes_tax,
body.woocommerce-order-received small{
  font-weight: 450 !important;
  opacity: .75;
}

/* Suur total */
body.woocommerce-order-received 
tfoot tr:last-child .amount{
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
}

/* =========================================================
   CART — empty cart final clean state
========================================================= */

body.woocommerce-cart .wp-block-woocommerce-empty-cart-block.kk-empty-cart-ready{
  max-width: 820px !important;
  min-height: 520px !important;
  margin: 48px auto 90px !important;
  padding: 74px 34px 68px !important;

  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;

  text-align: center !important;

  border: 1px solid rgba(0,0,0,.075) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 50% 19%, rgba(31,107,72,.045), transparent 22%),
    #fff !important;
  box-shadow: 0 22px 54px rgba(0,0,0,.055) !important;
}

/* Peida Woo default ikoon */
body.woocommerce-cart
.wp-block-woocommerce-empty-cart-block.kk-empty-cart-ready
.wc-block-cart__empty-cart__title::before,
body.woocommerce-cart
.wp-block-woocommerce-empty-cart-block.kk-empty-cart-ready
.wc-block-cart__empty-cart__title::after{
  display: none !important;
  content: none !important;
}

/* Pildi/ikooni konteiner */
body.woocommerce-cart .kk-empty-cart__icon{
  position: relative !important;

  width: 112px !important;
  height: 112px !important;
  margin: 0 auto 36px !important;

  border-radius: 999px !important;
  background:
    radial-gradient(circle at 45% 38%, rgba(255,255,255,.42), transparent 42%),
    rgba(31,107,72,.105) !important;
}

/* SIIN ON PILT */
body.woocommerce-cart .kk-empty-cart__icon::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;

  background: url("/wp-content/themes/YOUR-CHILD-THEME/assets/icons/empty-cart.svg") center/58px no-repeat !important;
}

/* Pealkiri */
body.woocommerce-cart
.wp-block-woocommerce-empty-cart-block.kk-empty-cart-ready
.wc-block-cart__empty-cart__title{
  margin: 0 !important;
  padding-top: 0 !important;

  color: rgba(0,0,0,.94) !important;
  font-size: clamp(38px, 5vw, 56px) !important;
  line-height: 1.03 !important;
  font-weight: 760 !important;
  letter-spacing: -0.055em !important;
  max-width: 760px !important;
}

/* Tekst */
body.woocommerce-cart .kk-empty-cart__text{
  max-width: 540px !important;
  margin: 24px auto 0 !important;

  color: rgba(0,0,0,.58) !important;
  font-size: 18px !important;
  line-height: 1.55 !important;
  font-weight: 400 !important;
}

/* CTA */
body.woocommerce-cart .kk-empty-cart__button{
  min-height: 56px !important;
  margin-top: 32px !important;
  padding: 0 30px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 16px !important;

  border-radius: 18px !important;
  background: linear-gradient(180deg, #1f7a50, #12623d) !important;
  color: #fff !important;
  text-decoration: none !important;

  font-size: 18px !important;
  font-weight: 400 !important;
  box-shadow: 0 16px 30px rgba(31,107,72,.18) !important;
}

body.woocommerce-cart .kk-empty-cart__button span{
  font-size: 20px !important;
  line-height: 1 !important;
}

/* Mobile */
@media (max-width: 700px){
  body.woocommerce-cart .wp-block-woocommerce-empty-cart-block.kk-empty-cart-ready{
    min-height: 400px !important;
    margin: 28px auto 64px !important;
    padding: 52px 22px !important;
    border-radius: 22px !important;
  }

  body.woocommerce-cart .kk-empty-cart__icon{
    width: 88px !important;
    height: 88px !important;
    margin-bottom: 28px !important;
  }

  body.woocommerce-cart .kk-empty-cart__icon::before{
    background-size: 46px !important;
  }

  body.woocommerce-cart
  .wp-block-woocommerce-empty-cart-block.kk-empty-cart-ready
  .wc-block-cart__empty-cart__title{
    font-size: 34px !important;
  }

  body.woocommerce-cart .kk-empty-cart__text{
    font-size: 15px !important;
  }

  body.woocommerce-cart .kk-empty-cart__button{
    width: 100% !important;
    max-width: 320px !important;
    font-size: 16px !important;
  }
}

/* roheline ring tagasi */
body.woocommerce-cart .kk-empty-cart__icon{
  position: relative !important;

  width: 112px !important;
  height: 112px !important;
  margin: 0 auto 36px !important;

  border-radius: 999px !important;
  background:
    radial-gradient(circle at 45% 38%, rgba(255,255,255,.35), transparent 40%),
    rgba(31,107,72,.10) !important;
}

/* ainult korvi ikoon (ilma ringita!) */
body.woocommerce-cart .kk-empty-cart__icon::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;

  background: url("/hanna/wp-content/themes/twentytwentyfour-child/assets/icons/empty-cart.png") center/98px no-repeat !important;
}

/* =========================================================
   CART — align title with cart content
========================================================= */

body.woocommerce-cart .wp-block-post-title,
body.woocommerce-cart .entry-title,
body.woocommerce-cart main > h1,
body.woocommerce-cart main > .wp-block-heading{
  max-width: 1180px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: clamp(18px, 3vw, 34px) !important;
  box-sizing: border-box !important;
}

/* kui pealkirjal on alignwide klass */
body.woocommerce-cart .wp-block-post-title.alignwide,
body.woocommerce-cart .entry-title.alignwide{
  width: 100% !important;
}


/* =========================================================
   MOBILE FILTERS — final UX (fade + arrow + overflow hint)
========================================================= */

@media (max-width: 768px){

  .kk-shop-filters-wrap{
    position: relative;
  }

  .kk-shop-filters{
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 10px !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch;

    scroll-snap-type: x proximity;
    scrollbar-width: none;

    /* 👉 oluline: lase paremale üle ääre */
    padding-right: 0 !important;
    margin-right: -22px !important;
    padding-bottom: 6px !important;
  }

  .kk-shop-filters::-webkit-scrollbar{
    display: none;
  }

  .kk-shop-filter{
    flex: 0 0 auto !important;
    scroll-snap-align: start;
  }
}

/********************************/

@media (max-width: 800px) {
  body.woocommerce-order-received 
  .wp-block-woocommerce-order-confirmation-summary 
  .wc-block-order-confirmation-summary-list-item {
      padding-top: 44px !important;
  }
  
  body.woocommerce-order-received .wc-block-order-confirmation-summary-list-item__key {
    padding-left: 55px;
    padding-bottom: 15px;
    margin-top: -10px !important;
  }
  
  body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper::before, body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper::before,
  body.woocommerce-order-received .wc-block-order-confirmation-shipping-wrapper::after, body.woocommerce-order-received .wc-block-order-confirmation-billing-wrapper::after  {
    display: none !important
  }
}

/***************************************/

.woocommerce .products ul, .woocommerce .shop_product_col ul.products.columns-3 {
    display: none !important;
}
.kk-mini-cart__total-row .wc-block-cart-item__remove-link svg {
    display: none !important;
}

/***************************************/

body.woocommerce-shop .kk-shop-product-col,
body.post-type-archive-product .kk-shop-product-col,
body.tax-product_cat .kk-shop-product-col,
body.tax-product_tag .kk-shop-product-col {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0 15px;
}

body.woocommerce-shop .woocommerce-products-header,
body.post-type-archive-product .woocommerce-products-header {
  width: 100%;
  max-width: none;
}

body.woocommerce-shop .woocommerce-products-header .page-description,
body.post-type-archive-product .woocommerce-products-header .page-description {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 0;
}

body.woocommerce-shop
.wp-block-button.wc-block-components-product-button {
    flex-direction: row !important;
}

/* =========================================================
   RELATED PRODUCTS – FULL WIDTH GRID
========================================================= */

body.single-product section.related.products {
  width: 100%;
  max-width: none;
  clear: both;
  margin-top: 64px;
}

/* Eemalda WooCommerce'i clearfix / float-layout */
body.single-product section.related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 28px !important;

  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product section.related.products ul.products::before,
body.single-product section.related.products ul.products::after {
  display: none !important;
  content: none !important;
}

/* Nulli Traveleri ja WooCommerce'i vanad veerureeglid */
body.single-product section.related.products ul.products li.product {
  float: none !important;
  clear: none !important;

  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  display: flex !important;
  flex-direction: column !important;
}

/* Tootelink täidab kaardi */
body.single-product
section.related.products
ul.products
li.product
> a.woocommerce-loop-product__link {
  display: flex !important;
  flex-direction: column !important;
  flex: 1 1 auto;
  width: 100%;
}

/* Pilt kogu kaardi laiusele */
body.single-product
section.related.products
ul.products
li.product
img {
  display: block;
  width: 100% !important;
  max-width: none !important;
  height: auto !important;
  margin: 0 0 16px !important;
  object-fit: cover;
}

/* Nupp jääb kaardi alla */
body.single-product
section.related.products
ul.products
li.product
> .button {
  width: 100%;
  margin-top: auto !important;
  box-sizing: border-box;
  text-align: center;
}

/* Tahvel */
@media (max-width: 991px) {
  body.single-product section.related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 22px !important;
  }
}

/* Mobiil */
@media (max-width: 575px) {
  body.single-product section.related.products ul.products {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
}


/* =========================================================
   SINGLE PRODUCT – RELATED PRODUCTS FINAL FIX
========================================================= */

body.single-product section.related.products {
  width: 100% !important;
  max-width: none !important;
  clear: both !important;
  margin-top: 56px !important;
}

body.single-product section.related.products > h2 {
  margin: 0 0 4px !important;
  padding: 0 !important;
  font-size: clamp(28px, 3vw, 40px) !important;
  line-height: 1.1 !important;
  font-weight: 600 !important;
  letter-spacing: -0.02em !important;
}

body.single-product section.related.products .kk-section-sub {
  margin: 0 0 24px !important;
  color: #777 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
}

/* GRID */

body.single-product section.related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;

  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.single-product section.related.products ul.products::before,
body.single-product section.related.products ul.products::after {
  content: none !important;
  display: none !important;
}

/* CARD */

body.single-product section.related.products ul.products li.product {
  position: relative !important;

  float: none !important;
  clear: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 0 82px !important;

  display: block !important;

  border: 1px solid #e4e4e4 !important;
  border-radius: 20px !important;
  background: #fff !important;
  overflow: hidden !important;

  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.04) !important;

  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    border-color 0.2s ease !important;
}

body.single-product section.related.products ul.products li.product:hover {
  transform: translateY(-2px) !important;
  border-color: #d7dfdb !important;
  box-shadow: 0 16px 36px rgba(0, 0, 0, 0.07) !important;
}

/* MAIN PRODUCT LINK */

body.single-product
section.related.products
ul.products
li.product
> a.woocommerce-LoopProduct-link,
body.single-product
section.related.products
ul.products
li.product
> a.woocommerce-loop-product__link {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  color: inherit !important;
  text-decoration: none !important;
}

/* IMAGE */

body.single-product
section.related.products
ul.products
li.product
img {
  display: block !important;

  width: calc(100% - 24px) !important;
  max-width: none !important;
  height: 220px !important;

  margin: 12px 12px 0 !important;

  object-fit: contain !important;
  object-position: center !important;

  border-radius: 14px !important;
  background:
    radial-gradient(
      circle at top,
      rgba(0, 0, 0, 0.025),
      transparent 58%
    ) !important;
}

/* TITLE */

body.single-product
section.related.products
ul.products
li.product
.woocommerce-loop-product__title {
  margin: 0 !important;
  padding: 14px 16px 0 !important;

  min-height: 62px !important;

  color: #171717 !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  letter-spacing: -0.01em !important;

  text-align: left !important;
}

/* META TAGS */

body.single-product
section.related.products
ul.products
li.product
.kk-related-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 8px !important;

  margin: 0 !important;

  min-height: 54px !important;
}

body.single-product
section.related.products
ul.products
li.product
.kk-related-meta__item {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;

  min-height: 26px !important;

  border-radius: 999px !important;
  background: #f1f1f1 !important;

  color: #666 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

body.single-product
section.related.products
ul.products
li.product
.kk-related-meta__item--stock {
  background: #e4f5ef !important;
  color: #087a61 !important;
}

body.single-product
section.related.products
ul.products
li.product
.kk-related-meta__item--stock::before {
  content: "" !important;
  display: block !important;

  width: 6px !important;
  height: 6px !important;
  flex: 0 0 6px !important;

  border-radius: 50% !important;
  background: currentColor !important;
}

body.single-product
section.related.products
ul.products
li.product
.kk-related-meta__item--stock.is-no-price {
  background: #fff3df !important;
  color: #b77714 !important;
}

/* BOTTOM DIVIDER */

body.single-product
section.related.products
ul.products
li.product::after {
  content: "" !important;
  position: absolute !important;

  left: 16px !important;
  right: 16px !important;
  bottom: 70px !important;

  height: 1px !important;
  background: #ececec !important;
  pointer-events: none !important;
}

/* PRICE */

body.single-product
section.related.products
ul.products
li.product
.price {
  position: absolute !important;

  left: 16px !important;
  right: 72px !important;
  bottom: 20px !important;

  display: block !important;
  margin: 0 !important;
  padding: 0 !important;

  color: #111 !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  text-align: left !important;
}

body.single-product
section.related.products
ul.products
li.product
.price del {
  margin-right: 5px !important;
  color: #888 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

body.single-product
section.related.products
ul.products
li.product
.price ins {
  color: #111 !important;
  text-decoration: none !important;
}

/* ACTION BUTTON */

body.single-product
section.related.products
ul.products
li.product
> a.button {
  position: absolute !important;

  right: 16px !important;
  bottom: 14px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 48px !important;
  height: 48px !important;
  min-width: 48px !important;
  min-height: 48px !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 1px solid #d5e4df !important;
  border-radius: 14px !important;
  background: #eef8f4 !important;

  color: #173d35 !important;
  font-size: 0 !important;
  line-height: 1 !important;

  box-shadow: none !important;
  transform: none !important;
}

/* CART ICON */

body.single-product
section.related.products
ul.products
li.product
> a.add_to_cart_button::before {
  content: "" !important;
  display: block !important;

  width: 18px !important;
  height: 18px !important;

  background-color: currentColor !important;

  -webkit-mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h2l2.1 10.2a2 2 0 0 0 2 1.6h7.8a2 2 0 0 0 2-1.6L20 8H6' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='10' cy='19' r='1.3' fill='black'/%3E%3Ccircle cx='17' cy='19' r='1.3' fill='black'/%3E%3C/svg%3E")
    center / contain no-repeat !important;

  mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='M3 4h2l2.1 10.2a2 2 0 0 0 2 1.6h7.8a2 2 0 0 0 2-1.6L20 8H6' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='10' cy='19' r='1.3' fill='black'/%3E%3Ccircle cx='17' cy='19' r='1.3' fill='black'/%3E%3C/svg%3E")
    center / contain no-repeat !important;
}

/* VIEW PRODUCT ICON */

body.single-product
section.related.products
ul.products
li.product
> a.button:not(.add_to_cart_button)::before {
  content: "" !important;
  display: block !important;

  width: 18px !important;
  height: 18px !important;

  background-color: currentColor !important;

  -webkit-mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='M2.5 12s3.5-6 9.5-6 9.5 6 9.5 6-3.5 6-9.5 6-9.5-6-9.5-6Z' stroke='black' stroke-width='1.7'/%3E%3Ccircle cx='12' cy='12' r='2.5' stroke='black' stroke-width='1.7'/%3E%3C/svg%3E")
    center / contain no-repeat !important;

  mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='M2.5 12s3.5-6 9.5-6 9.5 6 9.5 6-3.5 6-9.5 6-9.5-6-9.5-6Z' stroke='black' stroke-width='1.7'/%3E%3Ccircle cx='12' cy='12' r='2.5' stroke='black' stroke-width='1.7'/%3E%3C/svg%3E")
    center / contain no-repeat !important;
}

/* ADDED / IN CART ICON */

body.single-product
section.related.products
ul.products
li.product
> a.button.added::before,
body.single-product
section.related.products
ul.products
li.product
> a.button.kk-in-cart::before {
  -webkit-mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='m6.5 12.5 3.2 3.2 7.8-8' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
    center / contain no-repeat !important;

  mask:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24'%3E%3Cpath d='m6.5 12.5 3.2 3.2 7.8-8' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")
    center / contain no-repeat !important;
}

/* HIDE ADDED-TO-CART LINK */

body.single-product
section.related.products
ul.products
li.product
.added_to_cart {
  display: none !important;
}

/* RESPONSIVE */

@media (max-width: 1100px) {
  body.single-product section.related.products ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 820px) {
  body.single-product section.related.products ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body.single-product
  section.related.products
  ul.products
  li.product
  img {
    height: 205px !important;
  }
}

@media (max-width: 560px) {
  body.single-product section.related.products ul.products {
    grid-template-columns: 1fr !important;
  }

  body.single-product
  section.related.products
  ul.products
  li.product
  img {
    height: 230px !important;
  }
}

/* WooCommerce'i vana 48% galerii-laius maha */
body.single-product .kk-product__media .woocommerce-product-gallery,
body.single-product .kk-product__media div.images {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
}

/* Placeholderi vaikimisi raam maha */
body.single-product
.kk-product__media
.woocommerce-product-gallery__image--placeholder {
  border: 0 !important;
}


/* =========================================================
   WOOCOMMERCE SUCCESS NOTICE – MINIMAL OUTDOOR STYLE
========================================================= */

body.single-product .woocommerce-notices-wrapper {
  width: 100%;
  max-width: 1320px;
  margin: 15px auto 0;
  padding: 0;
}

body.single-product .woocommerce-message {
  position: relative;

  display: flex;
  align-items: center;
  gap: 14px;

  min-height: 64px;
  margin: 0 !important;
  padding: 14px 16px 14px 58px !important;

  border: 1px solid rgba(18, 58, 50, 0.12) !important;
  border-left: 1px solid rgba(18, 58, 50, 0.12) !important;
  border-radius: 16px !important;

  background:
    linear-gradient(
      135deg,
      rgba(18, 58, 50, 0.035),
      rgba(255, 255, 255, 0.96)
    ) !important;

  color: #26332f !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  line-height: 1.45 !important;

  box-shadow:
    0 10px 30px rgba(18, 58, 50, 0.045) !important;

  overflow: hidden;
}

/* Eemalda WooCommerce'i vaikimisi roheline ülaserv */
body.single-product .woocommerce-message::before {
  content: "" !important;

  position: absolute !important;
  top: 50% !important;
  left: 16px !important;

  width: 28px !important;
  height: 28px !important;

  border-radius: 50% !important;
  background: rgba(66, 161, 117, 0.11) !important;

  transform: translateY(-50%) !important;
}

/* Minimalistlik linnuke */
body.single-product .woocommerce-message::after {
  content: "" !important;

  position: absolute !important;
  top: 50% !important;
  left: 25px !important;

  width: 10px !important;
  height: 6px !important;

  border-left: 2px solid #2f8f69 !important;
  border-bottom: 2px solid #2f8f69 !important;

  transform:
    translateY(-65%)
    rotate(-45deg) !important;
}

/* Ostukorvi link */
body.single-product
.woocommerce-message
a.button.wc-forward {
  order: 2;

  margin: 0 0 0 auto !important;
  padding: 9px 14px !important;

  min-height: 38px !important;

  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;

  border: 1px solid rgba(18, 58, 50, 0.14) !important;
  border-radius: 10px !important;

  background: rgba(255, 255, 255, 0.72) !important;

  color: #123a32 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none !important;

  box-shadow: none !important;

  transition:
    background 0.18s ease,
    border-color 0.18s ease,
    transform 0.18s ease !important;
}

body.single-product
.woocommerce-message
a.button.wc-forward:hover {
  border-color: rgba(18, 58, 50, 0.24) !important;
  background: #fff !important;
  color: #123a32 !important;
  transform: translateY(-1px) !important;
}

/* Väike nooleikoon */
body.single-product
.woocommerce-message
a.button.wc-forward::after {
  content: "→";
  display: inline-block;
  font-size: 15px;
  font-weight: 400;
  line-height: 1;
}

/* WooCommerce'i üldised pseudoelemendid maha */
body.single-product .woocommerce-message::marker {
  display: none;
}

/* MOBILE */

@media (max-width: 640px) {
  body.single-product .woocommerce-message {
    align-items: flex-start;
    flex-direction: column;
    gap: 12px;

    padding:
      15px
      15px
      15px
      54px !important;
  }

  body.single-product
  .woocommerce-message
  a.button.wc-forward {
    margin: 0 !important;
  }
}

body.single-product .woocommerce-message:focus,
body.single-product .woocommerce-message:focus-visible,
body.single-product .woocommerce-message[tabindex="-1"]:focus {
  outline: none !important;
  box-shadow: 0 10px 30px rgba(18, 58, 50, 0.045) !important;
}


/* =========================================================
   PRODUCT GALLERY THUMBNAILS – FINAL LAYOUT
========================================================= */

/* Pisipiltide loend */
body.single-product
.kk-product__media
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 10px !important;

  width: 100% !important;
  max-width: none !important;

  margin: 12px 0 0 !important;
  padding: 0 !important;

  list-style: none !important;
}

/* Nulli WooCommerce'i/teema float ja protsendilaiused */
body.single-product
.kk-product__media
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs > li {
  float: none !important;
  clear: none !important;

  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;

  margin: 0 !important;
  padding: 0 !important;

  list-style: none !important;
}

/* Eemalda list markerid */
body.single-product
.kk-product__media
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs > li::before,
body.single-product
.kk-product__media
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs > li::after,
body.single-product
.kk-product__media
.woocommerce-product-gallery
.flex-control-nav.flex-control-thumbs > li::marker {
  content: none !important;
  display: none !important;
}

/* Pisipildi nupp/pilt */
body.single-product
.kk-product__media
.woocommerce-product-gallery
.flex-control-thumbs img {
  display: block !important;

  width: 100% !important;
  max-width: none !important;
  height: 76px !important;

  margin: 0 !important;
  padding: 6px !important;

  object-fit: contain !important;
  object-position: center !important;

  border: 1px solid rgba(15, 17, 21, 0.09) !important;
  border-radius: 12px !important;

  background: rgba(255, 255, 255, 0.92) !important;

  opacity: 0.72 !important;
  cursor: pointer !important;

  box-shadow: none !important;

  transition:
    opacity 0.18s ease,
    border-color 0.18s ease,
    background-color 0.18s ease,
    transform 0.18s ease,
    box-shadow 0.18s ease !important;
}

/* Hover */
body.single-product
.kk-product__media
.woocommerce-product-gallery
.flex-control-thumbs img:hover {
  opacity: 1 !important;
  transform: translateY(-1px) !important;

  border-color: rgba(28, 72, 60, 0.22) !important;
  background: #fff !important;
}

/* Aktiivne pisipilt */
body.single-product
.kk-product__media
.woocommerce-product-gallery
.flex-control-thumbs img.flex-active {
  opacity: 1 !important;

  border-color: rgba(28, 72, 60, 0.42) !important;
  background: #fff !important;

  box-shadow:
    0 0 0 2px rgba(28, 72, 60, 0.08),
    0 8px 20px rgba(15, 17, 21, 0.07) !important;
}

/* Tahvel */
@media (max-width: 900px) {
  body.single-product
  .kk-product__media
  .woocommerce-product-gallery
  .flex-control-nav.flex-control-thumbs {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}

/* Mobiil */
@media (max-width: 520px) {
  body.single-product
  .kk-product__media
  .woocommerce-product-gallery
  .flex-control-nav.flex-control-thumbs {
    display: flex !important;
    gap: 8px !important;

    overflow-x: auto !important;
    overflow-y: hidden !important;

    padding-bottom: 5px !important;

    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
  }

  body.single-product
  .kk-product__media
  .woocommerce-product-gallery
  .flex-control-nav.flex-control-thumbs::-webkit-scrollbar {
    display: none;
  }

  body.single-product
  .kk-product__media
  .woocommerce-product-gallery
  .flex-control-nav.flex-control-thumbs > li {
    flex: 0 0 72px !important;
    width: 72px !important;
  }

  body.single-product
  .kk-product__media
  .woocommerce-product-gallery
  .flex-control-thumbs img {
    height: 64px !important;
  }
}