/**
 * BoostroGO Core — WooCommerce UX
 * ETAP 1.1: stabilna karta produktu dla motywu Blocksy
 *
 * WAŻNE:
 * Nie ustawiamy CSS Grid na zewnętrznym div.product.
 * Blocksy może opakowywać galerię i podsumowanie własnym kontenerem,
 * dlatego układ opiera się na sprawdzonych kolumnach float.
 */

:root{
  --bg-woo-navy: #1C244B;
  --bg-woo-red: #FB0444;
  --bg-woo-ice: #EAF7FB;
  --bg-woo-white: #FFFFFF;
  --bg-woo-text: #17203F;
  --bg-woo-muted: rgba(28, 36, 75, .66);
  --bg-woo-line: rgba(28, 36, 75, .11);
  --bg-woo-shadow: 0 24px 58px rgba(28, 36, 75, .11);
}

/* =========================================================
   TŁO I SZEROKOŚĆ STRONY
========================================================= */

body.single-product{
  background:
    radial-gradient(circle at 4% 8%, rgba(251, 4, 68, .055), transparent 28%),
    radial-gradient(circle at 96% 6%, rgba(87, 190, 220, .10), transparent 30%),
    linear-gradient(180deg, #F8FCFF 0%, #EFF8FC 100%) !important;
}







/* =========================================================
   OKRUSZKI
========================================================= */








/* =========================================================
   NAGŁÓWEK ETAPU ZAKUPOWEGO
========================================================= */

body.single-product .bg-woo-product-stage{
  position: relative !important;
  width: min(100%, 1040px) !important;
  margin: 0 auto 24px !important;
  padding: 0 0 0 2px !important;
  color: var(--bg-woo-navy) !important;
}

body.single-product .bg-woo-product-stage__back{
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  margin: 0 0 13px !important;
  color: var(--bg-woo-navy) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  text-decoration: none !important;
}

body.single-product .bg-woo-product-stage__back:hover{
  color: var(--bg-woo-red) !important;
}

body.single-product .bg-woo-product-stage__kicker{
  display: inline-flex !important;
  align-items: center !important;
  min-height: 28px !important;
  margin: 0 0 10px !important;
  padding: 7px 11px !important;
  border: 1px solid rgba(251, 4, 68, .18) !important;
  border-radius: 999px !important;
  background: rgba(251, 4, 68, .075) !important;
  color: var(--bg-woo-red) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

body.single-product .bg-woo-product-stage h1{
  position: relative !important;
  margin: 0 !important;
  padding: 0 0 15px !important;
  color: var(--bg-woo-navy) !important;
  font-size: clamp(34px, 4.2vw, 52px) !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: -.05em !important;
}

body.single-product .bg-woo-product-stage h1::after{
  content: "" !important;
  position: absolute !important;
  left: 0 !important;
  bottom: 0 !important;
  width: 72px !important;
  height: 4px !important;
  border-radius: 999px !important;
  background: linear-gradient(90deg, var(--bg-woo-red) 0 72%, var(--bg-woo-navy) 72% 100%) !important;
}

body.single-product .bg-woo-product-stage p{
  max-width: 700px !important;
  margin: 12px 0 0 !important;
  color: var(--bg-woo-muted) !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 550 !important;
}

/* =========================================================
   KARTA PRODUKTU — BEZ GRIDU NA div.product
========================================================= */









/* Blocksy czasami dodaje własny wrapper wokół hero produktu. */




/* =========================================================
   GALERIA — LEWA KOLUMNA
========================================================= */













/* =========================================================
   PODSUMOWANIE — PRAWA KOLUMNA
========================================================= */













/* =========================================================
   INFORMACJA O PAKIECIE
========================================================= */

body.single-product .woocommerce div.product .boostrogo-woo-challenge-notice,
.single-product .woocommerce div.product .boostrogo-woo-challenge-notice,
.single-product div.product.product .boostrogo-woo-challenge-notice,
.boostrogo-woo-challenge-notice{
  display: flex !important;
  align-items: flex-start !important;
  gap: 13px !important;

  width: 100% !important;
  max-width: none !important;

  margin: 0 0 18px !important;
  padding: 15px 16px !important;
  clear: both !important;

  border: 1px solid rgba(28, 36, 75, .10) !important;
  border-radius: 18px !important;
  background:
    radial-gradient(circle at 0 0, rgba(251,4,68,.07), transparent 36%),
    linear-gradient(145deg, rgba(234,247,251,.82), rgba(255,255,255,.98)) !important;
  color: var(--bg-woo-navy) !important;
  box-shadow: 0 12px 28px rgba(28, 36, 75, .07) !important;
}

.boostrogo-woo-challenge-notice__icon{
  display: grid !important;
  place-items: center !important;
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  border: 1px solid rgba(251, 4, 68, .12) !important;
  border-radius: 13px !important;
  background: #fff !important;
  color: var(--bg-woo-red) !important;
  box-shadow: 0 9px 20px rgba(28, 36, 75, .07) !important;
}

.boostrogo-woo-challenge-notice__content{
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.boostrogo-woo-challenge-notice__content strong{
  display: block !important;
  margin: 0 0 5px !important;
  color: var(--bg-woo-navy) !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

.boostrogo-woo-challenge-notice__content p{
  margin: 0 !important;
  color: var(--bg-woo-muted) !important;
  font-size: 12.5px !important;
  line-height: 1.55 !important;
  font-weight: 550 !important;
}

.boostrogo-woo-challenge-notice__tag{
  display: inline-flex !important;
  align-items: center !important;
  margin-top: 9px !important;
  padding: 6px 10px !important;
  border: 1px solid rgba(251, 4, 68, .15) !important;
  border-radius: 999px !important;
  background: rgba(251, 4, 68, .065) !important;
  color: var(--bg-woo-red) !important;
  font-size: 10.5px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
}

/* =========================================================
   FORMULARZ ZAKUPU
========================================================= */











body.single-product a.added_to_cart.wc-forward{
  display: none !important;
}

/* =========================================================
   STAN: PRODUKT JEST JUŻ W KOSZYKU
========================================================= */



.bg-woo-cart-confirmation{
  display: none !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 15px !important;

  width: 100% !important;
  margin: 0 !important;
  padding: 14px !important;

  border: 1px solid rgba(251, 4, 68, .20) !important;
  border-radius: 18px !important;
  background:
    linear-gradient(120deg, rgba(255,255,255,.99), rgba(234,247,251,.92) 58%, rgba(255,244,248,.96)) !important;
  box-shadow: 0 13px 28px rgba(28, 36, 75, .08) !important;
}

.bg-woo-cart-confirmation.is-visible,
body.bg-woo-product-in-cart .bg-woo-cart-confirmation{
  display: flex !important;
  animation: bgWooCartReveal .25s ease-out both;
}

.bg-woo-cart-confirmation__copy{
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  min-width: 0 !important;
}

.bg-woo-cart-confirmation__icon{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 13px !important;
  background: var(--bg-woo-red) !important;
  color: #fff !important;
  box-shadow: 0 9px 20px rgba(251, 4, 68, .20) !important;
}

.bg-woo-cart-confirmation__icon svg{
  width: 19px !important;
  height: 19px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2.2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.bg-woo-cart-confirmation__text{
  min-width: 0 !important;
}

.bg-woo-cart-confirmation__text strong{
  display: block !important;
  margin: 0 0 3px !important;
  color: var(--bg-woo-navy) !important;
  font-size: 13.5px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
}

.bg-woo-cart-confirmation__text span{
  display: block !important;
  color: var(--bg-woo-muted) !important;
  font-size: 11.5px !important;
  line-height: 1.4 !important;
  font-weight: 600 !important;
}

.bg-woo-cart-confirmation__button{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  flex: 0 0 auto !important;
  min-height: 42px !important;
  padding: 11px 16px !important;
  border: 1px solid var(--bg-woo-navy) !important;
  border-radius: 999px !important;
  background: var(--bg-woo-navy) !important;
  color: #fff !important;
  font-size: 11.5px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
  text-decoration: none !important;
  box-shadow: none !important;
  transition: background-color .18s ease, border-color .18s ease, transform .18s ease !important;
}

.bg-woo-cart-confirmation__button::after{
  content: "→" !important;
  font-size: 15px !important;
  line-height: 1 !important;
}

.bg-woo-cart-confirmation__button:hover,
.bg-woo-cart-confirmation__button:focus-visible{
  border-color: var(--bg-woo-red) !important;
  background: var(--bg-woo-red) !important;
  color: #fff !important;
  transform: translateY(-1px) !important;
}

@keyframes bgWooCartReveal{
  from{ opacity: 0; transform: translateY(5px); }
  to{ opacity: 1; transform: translateY(0); }
}

/* =========================================================
   META PRODUKTU
========================================================= */



/* =========================================================
   ALERTY WOO NA PRODUKCIE
========================================================= */

body.single-product .woocommerce-message,
body.single-product .woocommerce-info,
body.single-product .woocommerce-error{
  position: relative !important;
  min-height: 52px !important;
  margin: 0 0 16px !important;
  padding: 16px 18px 16px 50px !important;
  border: 1px solid rgba(28, 36, 75, .10) !important;
  border-left-width: 4px !important;
  border-radius: 17px !important;
  background: rgba(255, 255, 255, .94) !important;
  color: var(--bg-woo-navy) !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
  font-weight: 650 !important;
  box-shadow: 0 12px 28px rgba(28, 36, 75, .07) !important;
}

body.single-product .woocommerce-message{ border-left-color: #16A164 !important; }
body.single-product .woocommerce-info{ border-left-color: var(--bg-woo-navy) !important; }
body.single-product .woocommerce-error{ border-left-color: var(--bg-woo-red) !important; }

body.single-product .woocommerce-message::before,
body.single-product .woocommerce-info::before,
body.single-product .woocommerce-error::before{
  top: 17px !important;
  left: 18px !important;
  color: inherit !important;
}

body.single-product .woocommerce-message a,
body.single-product .woocommerce-info a,
body.single-product .woocommerce-error a{
  color: var(--bg-woo-red) !important;
  font-weight: 900 !important;
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 900px){
  

  

  

  

  

  
}

/* =========================================================
   TELEFON
========================================================= */

@media (max-width: 620px){

  body.single-product .bg-woo-product-stage{
    margin-bottom: 18px !important;
    padding-left: 2px !important;
  }

  body.single-product .bg-woo-product-stage__kicker{
    margin-bottom: 8px !important;
    font-size: 9px !important;
  }

  body.single-product .bg-woo-product-stage h1{
    padding-bottom: 13px !important;
    font-size: clamp(31px, 10vw, 40px) !important;
  }

  body.single-product .bg-woo-product-stage p{
    margin-top: 10px !important;
    font-size: 13px !important;
  }

  

  

  

  

  

  

  

  

  .boostrogo-woo-challenge-notice{
    gap: 11px !important;
    padding: 14px !important;
  }

  .bg-woo-cart-confirmation,
.bg-woo-cart-confirmation.is-visible,
body.bg-woo-product-in-cart .bg-woo-cart-confirmation{
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .bg-woo-cart-confirmation__button{
    width: 100% !important;
  }
}

@media (max-width: 390px){
  
}

@media (prefers-reduced-motion: reduce){
  .bg-woo-cart-confirmation.is-visible,
body.bg-woo-product-in-cart .bg-woo-cart-confirmation{
    animation: none !important;
  }

  .bg-woo-cart-confirmation__button{
    transition: none !important;
  }
}
/* =========================================================
   ETAP 2 — WSPÓLNY PROCES ZAKUPOWY
   Koszyk → dane i płatność → gotowe
========================================================= */

body.woocommerce-cart .woocommerce,
body.woocommerce-checkout .woocommerce,
body.woocommerce-order-received .woocommerce{
  width: min(100%, 1180px) !important;
  max-width: 1180px !important;
}

/* Stary komunikat koszykowy nie powinien już istnieć, ale ten
   bezpiecznik usuwa go, jeżeli został jeszcze w cache szablonu. */
body.woocommerce-cart .boostrogo-woo-challenge-notice-cart{
  display: none !important;
}

.bg-woo-flow-back{
  grid-column: 1 / -1 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: fit-content !important;
  margin: 0 0 14px !important;
  padding: 9px 12px !important;
  border: 1px solid rgba(28, 36, 75, .10) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .74) !important;
  color: var(--bg-woo-navy) !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
  text-decoration: none !important;
  box-shadow: 0 8px 20px rgba(28, 36, 75, .05) !important;
}

.bg-woo-flow-back:hover{
  border-color: rgba(251, 4, 68, .22) !important;
  color: var(--bg-woo-red) !important;
}

.bg-woo-purchase-steps{
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 0 24px !important;
  padding: 9px !important;
  border: 1px solid rgba(28, 36, 75, .10) !important;
  border-radius: 22px !important;
  background: rgba(255, 255, 255, .78) !important;
  box-shadow: 0 14px 34px rgba(28, 36, 75, .07) !important;
  backdrop-filter: blur(14px);
}

.bg-woo-purchase-step{
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
  min-width: 0 !important;
  min-height: 62px !important;
  padding: 10px 12px !important;
  border-radius: 16px !important;
  color: rgba(28, 36, 75, .46) !important;
}

.bg-woo-purchase-step.is-active{
  background:
    linear-gradient(135deg, rgba(28, 36, 75, .98), rgba(36, 48, 94, .96)) !important;
  color: #fff !important;
  box-shadow: 0 12px 24px rgba(28, 36, 75, .16) !important;
}

.bg-woo-purchase-step.is-complete{
  background: rgba(234, 247, 251, .78) !important;
  color: var(--bg-woo-navy) !important;
}

.bg-woo-purchase-step__number{
  display: grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  background: rgba(28, 36, 75, .08) !important;
  color: currentColor !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.bg-woo-purchase-step.is-active .bg-woo-purchase-step__number{
  background: var(--bg-woo-red) !important;
  color: #fff !important;
}

.bg-woo-purchase-step.is-complete .bg-woo-purchase-step__number{
  background: #fff !important;
  color: var(--bg-woo-red) !important;
  border: 1px solid rgba(251, 4, 68, .16) !important;
}

.bg-woo-purchase-step__copy{
  display: block !important;
  min-width: 0 !important;
}

.bg-woo-purchase-step__copy strong,
.bg-woo-purchase-step__copy small{
  display: block !important;
}

.bg-woo-purchase-step__copy strong{
  color: currentColor !important;
  font-size: 13px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
}

.bg-woo-purchase-step__copy small{
  margin-top: 4px !important;
  color: currentColor !important;
  opacity: .72 !important;
  font-size: 10px !important;
  line-height: 1.25 !important;
  font-weight: 700 !important;
}

/* =========================================================
   ETAP 2 — KOSZYK
========================================================= */

body.woocommerce-cart .woocommerce{
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 360px !important;
  gap: 24px !important;
  align-items: start !important;
}

body.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper,
body.woocommerce-cart .woocommerce > .woocommerce-message,
body.woocommerce-cart .woocommerce > .woocommerce-info,
body.woocommerce-cart .woocommerce > .woocommerce-error,
body.woocommerce-cart .woocommerce > .bg-woo-flow-back,
body.woocommerce-cart .woocommerce > .bg-woo-purchase-steps,
body.woocommerce-cart .woocommerce > .cart-empty,
body.woocommerce-cart .woocommerce > .return-to-shop{
  grid-column: 1 / -1 !important;
}

/* =========================================================
   KOSZYK — KOMUNIKATY SYSTEMOWE
   Jeden komunikat = jedna informacja. Bez pływających przycisków,
   czarnych ramek i tekstu rozjeżdżającego się po całej szerokości.
========================================================= */

body.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper{
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-cart .woocommerce > .woocommerce-notices-wrapper:empty{
  display: none !important;
}

body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart ul.woocommerce-error{
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;

  width: 100% !important;
  min-height: 66px !important;
  margin: 0 !important;
  padding: 13px 15px !important;

  border: 1px solid rgba(28, 36, 75, .11) !important;
  border-left: 4px solid #14A06F !important;
  border-radius: 18px !important;

  background:
    radial-gradient(circle at 0 0, rgba(20,160,111,.07), transparent 34%),
    rgba(255,255,255,.97) !important;
  color: var(--bg-woo-navy) !important;

  font-size: 13px !important;
  line-height: 1.45 !important;
  font-weight: 650 !important;

  list-style: none !important;
  box-shadow: 0 12px 28px rgba(28, 36, 75, .07) !important;
  overflow: hidden !important;
}

body.woocommerce-cart .woocommerce-info{
  border-left-color: var(--bg-woo-navy) !important;
  background:
    radial-gradient(circle at 0 0, rgba(28,36,75,.06), transparent 34%),
    rgba(255,255,255,.97) !important;
}

body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart ul.woocommerce-error{
  border-left-color: var(--bg-woo-red) !important;
  background:
    radial-gradient(circle at 0 0, rgba(251,4,68,.07), transparent 34%),
    rgba(255,255,255,.97) !important;
}

body.woocommerce-cart .woocommerce-message::before,
body.woocommerce-cart .woocommerce-info::before,
body.woocommerce-cart .woocommerce-error::before,
body.woocommerce-cart ul.woocommerce-error::before{
  display: none !important;
  content: none !important;
}

body.woocommerce-cart ul.woocommerce-error li{
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.woocommerce-cart .woocommerce-message > a.button,
body.woocommerce-cart .woocommerce-info > a.button,
body.woocommerce-cart .woocommerce-error > a.button{
  float: none !important;
  flex: 0 0 auto !important;
  order: 2 !important;
  min-height: 40px !important;
  margin: 0 0 0 auto !important;
  padding: 11px 16px !important;
  white-space: nowrap !important;
  font-size: 11.5px !important;
}

.bg-woo-system-notice{
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  flex: 1 1 auto !important;
  min-width: 0 !important;
}

.bg-woo-system-notice__icon{
  display: grid !important;
  place-items: center !important;
  flex: 0 0 40px !important;
  width: 40px !important;
  height: 40px !important;
  border-radius: 13px !important;
  background: rgba(20, 160, 111, .10) !important;
  color: #0D8A5E !important;
}

.bg-woo-system-notice--changed .bg-woo-system-notice__icon{
  background: rgba(28, 36, 75, .08) !important;
  color: var(--bg-woo-navy) !important;
}

.bg-woo-system-notice__icon svg{
  width: 21px !important;
  height: 21px !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.bg-woo-system-notice__copy{
  display: block !important;
  min-width: 0 !important;
}

.bg-woo-system-notice__copy strong,
.bg-woo-system-notice__copy span{
  display: block !important;
}

.bg-woo-system-notice__copy strong{
  margin: 0 0 3px !important;
  color: var(--bg-woo-navy) !important;
  font-size: 13.5px !important;
  line-height: 1.22 !important;
  font-weight: 900 !important;
}

.bg-woo-system-notice__copy span{
  color: rgba(28, 36, 75, .68) !important;
  font-size: 12px !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
}

body.woocommerce-cart .woocommerce > form.woocommerce-cart-form{
  grid-column: 1 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 20px !important;
  border-radius: 26px !important;
}

body.woocommerce-cart .woocommerce > .cart-collaterals{
  grid-column: 2 !important;
  width: 100% !important;
  margin: 0 !important;
  position: sticky !important;
  top: 26px !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals{
  float: none !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 22px !important;
  border-radius: 26px !important;
}

body.woocommerce-cart .cart_totals h2{
  margin: 0 0 16px !important;
  padding: 0 0 14px !important;
  border-bottom: 1px solid rgba(28, 36, 75, .10) !important;
  font-size: 25px !important;
}

body.woocommerce-cart table.shop_table{
  margin: 0 !important;
}

body.woocommerce-cart table.shop_table thead th{
  padding: 15px 13px !important;
  font-size: 11px !important;
  letter-spacing: .06em !important;
}

body.woocommerce-cart table.shop_table td{
  padding: 15px 13px !important;
}

body.woocommerce-cart table.shop_table td.product-thumbnail{
  width: 92px !important;
}

body.woocommerce-cart table.shop_table .product-thumbnail img{
  width: 76px !important;
  max-width: 76px !important;
  height: 76px !important;
  object-fit: contain !important;
  border-radius: 16px !important;
  padding: 5px !important;
}

body.woocommerce-cart table.shop_table .product-name a{
  font-size: 15px !important;
  line-height: 1.25 !important;
}

.bg-woo-cart-package-meta{
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  margin-top: 7px !important;
}

.bg-woo-cart-package-name{
  display: inline-flex !important;
  align-items: center !important;
  min-height: 26px !important;
  padding: 6px 9px !important;
  border-radius: 999px !important;
  background: rgba(234, 247, 251, .82) !important;
  border: 1px solid rgba(28, 36, 75, .08) !important;
  color: rgba(28, 36, 75, .68) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 700 !important;
}

.bg-woo-cart-package-name strong{
  margin-left: 4px !important;
  color: var(--bg-woo-navy) !important;
  font-weight: 900 !important;
}

.bg-woo-cart-package-change{
  color: var(--bg-woo-red) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

.bg-woo-cart-package-change:hover{
  text-decoration: underline !important;
}

.bg-woo-order-package-name{
  color: rgba(28, 36, 75, .62) !important;
  font-size: 10px !important;
  font-weight: 700 !important;
}

body.woocommerce-cart table.shop_table td.product-price,
body.woocommerce-cart table.shop_table td.product-quantity,
body.woocommerce-cart table.shop_table td.product-subtotal{
  white-space: nowrap !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

body.woocommerce-cart table.cart td.actions{
  padding: 18px 0 0 !important;
  border-top: 1px solid rgba(28, 36, 75, .10) !important;
  background: transparent !important;
}

body.woocommerce-cart table.cart td.actions .coupon{
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) auto !important;
  gap: 10px !important;
  width: min(100%, 430px) !important;
}

body.woocommerce-cart table.cart td.actions .coupon .input-text{
  width: 100% !important;
  min-width: 0 !important;
  min-height: 46px !important;
  padding: 10px 16px !important;
  background: #fff !important;
}

body.woocommerce-cart table.cart td.actions .coupon button.button{
  min-width: 142px !important;
  min-height: 46px !important;
  padding-inline: 18px !important;
  white-space: nowrap !important;
}

body.woocommerce-cart table.cart td.actions > button.button{
  min-height: 46px !important;
  margin-left: auto !important;
  opacity: .82 !important;
}

body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td{
  padding: 13px 0 !important;
  border-top: 1px solid rgba(28, 36, 75, .09) !important;
  font-size: 14px !important;
}

body.woocommerce-cart .cart_totals table.shop_table th{
  width: 52% !important;
  color: rgba(28, 36, 75, .68) !important;
  font-weight: 800 !important;
}

body.woocommerce-cart .cart_totals table.shop_table td{
  text-align: right !important;
  color: var(--bg-woo-navy) !important;
  font-weight: 900 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout{
  padding: 15px 0 0 !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{
  min-height: 56px !important;
  margin: 0 !important;
  background: var(--bg-woo-red) !important;
  font-size: 14px !important;
}

body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{
  background: var(--bg-woo-navy) !important;
}

.bg-woo-cart-summary-note{
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 14px 0 0 !important;
  padding: 13px !important;
  border: 1px solid rgba(28, 36, 75, .09) !important;
  border-radius: 16px !important;
  background: rgba(234, 247, 251, .62) !important;
  color: rgba(28, 36, 75, .70) !important;
  font-size: 11px !important;
  line-height: 1.5 !important;
  font-weight: 650 !important;
}

.bg-woo-cart-summary-note__icon{
  display: grid !important;
  place-items: center !important;
  flex: 0 0 34px !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--bg-woo-red) !important;
}

.bg-woo-cart-summary-note strong{
  display: block !important;
  margin-bottom: 2px !important;
  color: var(--bg-woo-navy) !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

/* =========================================================
   ETAP 2 — CHECKOUT
========================================================= */

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout.woocommerce-checkout{
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 390px !important;
  gap: 24px !important;
  align-items: start !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #customer_details{
  grid-column: 1 !important;
  grid-row: 1 / span 3 !important;
  width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review_heading,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review{
  grid-column: 2 !important;
  width: 100% !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review_heading{
  grid-row: 1 !important;
  margin: 0 !important;
  padding: 0 2px 12px !important;
  font-size: 25px !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review{
  grid-row: 2 !important;
  position: sticky !important;
  top: 24px !important;
  padding: 20px !important;
  border-radius: 26px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields{
  padding: 26px !important;
  border-radius: 26px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3{
  margin: 0 0 20px !important;
  padding: 0 0 14px !important;
  border-bottom: 1px solid rgba(28, 36, 75, .10) !important;
  font-size: 25px !important;
}

body.woocommerce-checkout form .form-row{
  margin-bottom: 15px !important;
}

body.woocommerce-checkout form .form-row label{
  margin-bottom: 6px !important;
  font-size: 11px !important;
  letter-spacing: .01em !important;
}

body.woocommerce-checkout form .form-row input.input-text,
body.woocommerce-checkout form .form-row textarea,
body.woocommerce-checkout form .form-row select,
body.woocommerce-checkout .select2-container .select2-selection--single{
  min-height: 46px !important;
  border-radius: 13px !important;
}

body.woocommerce-checkout #order_review table.shop_table{
  margin: 0 0 15px !important;
}

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  padding: 12px 8px !important;
  font-size: 12px !important;
}

body.woocommerce-checkout #order_review table.shop_table td:last-child,
body.woocommerce-checkout #order_review table.shop_table th:last-child{
  text-align: right !important;
  white-space: nowrap !important;
}

body.woocommerce-checkout .boostrogo-woo-challenge-notice-checkout{
  margin: 15px 0 !important;
  padding: 13px !important;
  border-radius: 16px !important;
  box-shadow: none !important;
}

body.woocommerce-checkout .boostrogo-woo-challenge-notice-checkout .boostrogo-woo-challenge-notice__icon{
  width: 36px !important;
  height: 36px !important;
  border-radius: 12px !important;
}

body.woocommerce-checkout .boostrogo-woo-challenge-notice-checkout .boostrogo-woo-challenge-notice__content strong{
  font-size: 12px !important;
}

body.woocommerce-checkout .boostrogo-woo-challenge-notice-checkout .boostrogo-woo-challenge-notice__content p{
  font-size: 10.5px !important;
  line-height: 1.48 !important;
}

body.woocommerce-checkout #payment{
  margin-top: 14px !important;
  border-radius: 18px !important;
}

body.woocommerce-checkout #payment ul.payment_methods{
  padding: 15px !important;
}

body.woocommerce-checkout #payment .payment_box{
  margin: 12px 0 0 !important;
  padding: 13px !important;
  border-radius: 13px !important;
  background: rgba(255, 255, 255, .76) !important;
  color: rgba(28, 36, 75, .68) !important;
  font-size: 11px !important;
  line-height: 1.5 !important;
}

body.woocommerce-checkout #payment .place-order{
  padding: 15px !important;
}

body.woocommerce-checkout #payment #place_order{
  min-height: 54px !important;
  margin: 0 !important;
  background: var(--bg-woo-red) !important;
  font-size: 14px !important;
}

body.woocommerce-checkout #payment #place_order:hover{
  background: var(--bg-woo-navy) !important;
}

/* =========================================================
   ETAP 2 — POTWIERDZENIE ZAMÓWIENIA
========================================================= */

body.woocommerce-order-received .woocommerce{
  width: min(100%, 940px) !important;
}

body.woocommerce-order-received .woocommerce-order{
  padding: 24px !important;
  border-radius: 28px !important;
}

body.woocommerce-order-received .woocommerce-thankyou-order-received:empty{
  display: none !important;
}

.bg-woo-thankyou-card{
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  gap: 16px !important;
  margin: 0 0 22px !important;
  padding: 20px !important;
  border: 1px solid rgba(28, 36, 75, .10) !important;
  border-radius: 22px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(251, 4, 68, .07), transparent 34%),
    linear-gradient(145deg, #fff, #f7fbfd) !important;
}

.bg-woo-thankyou-card__mark{
  display: grid !important;
  place-items: center !important;
  width: 54px !important;
  height: 54px !important;
  border-radius: 18px !important;
  background: rgba(245, 158, 11, .12) !important;
  color: #B36A00 !important;
}

.bg-woo-thankyou-card--success .bg-woo-thankyou-card__mark{
  background: rgba(34, 197, 94, .12) !important;
  color: #138A47 !important;
}

.bg-woo-thankyou-card--danger .bg-woo-thankyou-card__mark{
  background: rgba(251, 4, 68, .10) !important;
  color: var(--bg-woo-red) !important;
}

.bg-woo-thankyou-card__kicker{
  display: block !important;
  margin-bottom: 5px !important;
  color: var(--bg-woo-red) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .08em !important;
  text-transform: uppercase !important;
}

.bg-woo-thankyou-card h2{
  margin: 0 !important;
  color: var(--bg-woo-navy) !important;
  font-size: clamp(24px, 3vw, 34px) !important;
  line-height: 1.05 !important;
  font-weight: 900 !important;
  letter-spacing: -.04em !important;
}

.bg-woo-thankyou-card p{
  max-width: 680px !important;
  margin: 9px 0 0 !important;
  color: rgba(28, 36, 75, .70) !important;
  font-size: 13px !important;
  line-height: 1.58 !important;
  font-weight: 600 !important;
}

.bg-woo-thankyou-card small{
  display: block !important;
  margin-top: 8px !important;
  color: rgba(28, 36, 75, .58) !important;
  font-size: 11px !important;
}

.bg-woo-thankyou-card__actions{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
  margin-top: 15px !important;
}

.bg-woo-thankyou-card__button{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 11px 16px !important;
  border: 1px solid rgba(28, 36, 75, .14) !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: var(--bg-woo-navy) !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

.bg-woo-thankyou-card__button--primary{
  border-color: var(--bg-woo-navy) !important;
  background: var(--bg-woo-navy) !important;
  color: #fff !important;
}

.bg-woo-thankyou-card__button:hover{
  border-color: var(--bg-woo-red) !important;
  background: var(--bg-woo-red) !important;
  color: #fff !important;
}

body.woocommerce-order-received ul.woocommerce-order-overview{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  border: 1px solid rgba(28, 36, 75, .09) !important;
  border-radius: 18px !important;
  overflow: hidden !important;
}

body.woocommerce-order-received ul.woocommerce-order-overview li{
  float: none !important;
  width: auto !important;
  margin: 0 !important;
  padding: 13px 15px !important;
  border-right: 1px solid rgba(28, 36, 75, .09) !important;
  border-bottom: 1px solid rgba(28, 36, 75, .09) !important;
  color: rgba(28, 36, 75, .60) !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
}

body.woocommerce-order-received ul.woocommerce-order-overview li strong{
  display: block !important;
  margin-top: 4px !important;
  color: var(--bg-woo-navy) !important;
  font-size: 13px !important;
  font-weight: 900 !important;
  text-transform: none !important;
}

body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details{
  margin: 20px 0 0 !important;
  padding: 20px !important;
  border: 1px solid rgba(28, 36, 75, .09) !important;
  border-radius: 20px !important;
  background: rgba(255, 255, 255, .72) !important;
}

body.woocommerce-order-received .woocommerce-order-details h2,
body.woocommerce-order-received .woocommerce-customer-details h2{
  margin: 0 0 14px !important;
  color: var(--bg-woo-navy) !important;
  font-size: 21px !important;
  font-weight: 900 !important;
  letter-spacing: -.03em !important;
}

body.woocommerce-order-received .woocommerce-order-details table{
  margin: 0 !important;
}

/* =========================================================
   ETAP 2 — RESPONSYWNOŚĆ
========================================================= */

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

  body.woocommerce-cart .woocommerce > form.woocommerce-cart-form,
body.woocommerce-cart .woocommerce > .cart-collaterals{
    grid-column: 1 !important;
  }

  body.woocommerce-cart .woocommerce > .cart-collaterals{
    position: static !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout.woocommerce-checkout{
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #customer_details,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review_heading,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review{
    grid-column: 1 !important;
    grid-row: auto !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review{
    position: static !important;
  }
}

@media (max-width: 700px){
  .bg-woo-purchase-steps{
    gap: 7px !important;
    padding: 7px !important;
  }

  .bg-woo-purchase-step{
    gap: 7px !important;
    min-height: 54px !important;
    padding: 8px !important;
  }

  .bg-woo-purchase-step__number{
    flex-basis: 30px !important;
    width: 30px !important;
    height: 30px !important;
    border-radius: 10px !important;
  }

  .bg-woo-purchase-step__copy strong{
    font-size: 11px !important;
  }

  .bg-woo-purchase-step__copy small{
    display: none !important;
  }

  body.woocommerce-cart .woocommerce > form.woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals .cart_totals,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review,
body.woocommerce-order-received .woocommerce-order{
    padding: 16px !important;
    border-radius: 21px !important;
  }

  body.woocommerce-cart table.cart td.actions .coupon{
    grid-template-columns: 1fr !important;
    width: 100% !important;
  }

  body.woocommerce-cart table.cart td.actions .coupon button.button,
body.woocommerce-cart table.cart td.actions > button.button{
    width: 100% !important;
    margin: 0 !important;
  }

  .bg-woo-thankyou-card{
    grid-template-columns: 1fr !important;
    padding: 16px !important;
  }

  .bg-woo-thankyou-card__actions{
    flex-direction: column !important;
  }

  .bg-woo-thankyou-card__button{
    width: 100% !important;
  }

  body.woocommerce-order-received ul.woocommerce-order-overview{
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 430px){
  .bg-woo-purchase-step{
    justify-content: center !important;
  }

  .bg-woo-purchase-step__copy{
    display: none !important;
  }
}

/* =========================================================
   ETAP 3 — ZAWARTOŚĆ PAKIETU NA KARCIE PRODUKTU
   Zamienia surowy krótki opis Woo na czytelną listę korzyści.
========================================================= */



body.single-product .bg-woo-package-contents{
  width: 100% !important;
  margin: 0 !important;
  padding: 15px !important;
  border: 1px solid rgba(28, 36, 75, .10) !important;
  border-radius: 19px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(251, 4, 68, .055), transparent 38%),
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(238,248,251,.82)) !important;
  box-shadow: 0 12px 28px rgba(28, 36, 75, .065) !important;
}

body.single-product .bg-woo-package-contents__head{
  display: grid !important;
  grid-template-columns: 42px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 11px !important;
  margin: 0 0 13px !important;
  padding: 0 0 13px !important;
  border-bottom: 1px solid rgba(28, 36, 75, .09) !important;
}

body.single-product .bg-woo-package-contents__icon{
  display: grid !important;
  place-items: center !important;
  width: 42px !important;
  height: 42px !important;
  border-radius: 14px !important;
  background: var(--bg-woo-navy) !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(28, 36, 75, .15) !important;
}

body.single-product .bg-woo-package-contents__title{
  display: block !important;
  min-width: 0 !important;
}

body.single-product .bg-woo-package-contents__title small,
body.single-product .bg-woo-package-contents__title strong{
  display: block !important;
}

body.single-product .bg-woo-package-contents__title small{
  margin: 0 0 4px !important;
  color: var(--bg-woo-red) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

body.single-product .bg-woo-package-contents__title strong{
  color: var(--bg-woo-navy) !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  font-weight: 900 !important;
}

body.single-product .bg-woo-package-contents__package{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  max-width: 170px !important;
  min-height: 28px !important;
  padding: 7px 10px !important;
  border: 1px solid rgba(251, 4, 68, .16) !important;
  border-radius: 999px !important;
  background: rgba(251, 4, 68, .065) !important;
  color: var(--bg-woo-red) !important;
  font-size: 9.5px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-align: center !important;
}

body.single-product .bg-woo-package-contents__list{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

body.single-product .bg-woo-package-contents__list li{
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  min-width: 0 !important;
  min-height: 39px !important;
  margin: 0 !important;
  padding: 9px 10px !important;
  border: 1px solid rgba(28, 36, 75, .075) !important;
  border-radius: 13px !important;
  background: rgba(255, 255, 255, .80) !important;
  color: var(--bg-woo-navy) !important;
  font-size: 11px !important;
  line-height: 1.35 !important;
  font-weight: 760 !important;
}

body.single-product .bg-woo-package-contents__check{
  display: grid !important;
  place-items: center !important;
  flex: 0 0 23px !important;
  width: 23px !important;
  height: 23px !important;
  border-radius: 999px !important;
  background: rgba(11, 164, 105, .11) !important;
  color: #07945E !important;
}

body.single-product .bg-woo-package-contents__list li > span:last-child{
  min-width: 0 !important;
}

body.single-product .bg-woo-package-contents__visual-note{
  display: flex !important;
  align-items: flex-start !important;
  gap: 8px !important;
  margin: 11px 0 0 !important;
  padding: 10px 2px 0 !important;
  border-top: 1px solid rgba(28, 36, 75, .08) !important;
  color: rgba(28, 36, 75, .55) !important;
}

body.single-product .bg-woo-package-contents__visual-note > span{
  display: grid !important;
  flex: 0 0 18px !important;
  place-items: center !important;
  width: 18px !important;
  height: 18px !important;
  margin-top: 1px !important;
  border: 1px solid rgba(28, 36, 75, .12) !important;
  border-radius: 50% !important;
  color: rgba(28, 36, 75, .65) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 850 !important;
}

body.single-product .bg-woo-package-contents__visual-note p{
  margin: 0 !important;
  color: inherit !important;
  font-size: 11.5px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
}

@media (max-width: 620px){
  body.single-product .bg-woo-package-contents{
    padding: 13px !important;
    border-radius: 17px !important;
  }

  body.single-product .bg-woo-package-contents__head{
    grid-template-columns: 40px minmax(0, 1fr) !important;
  }

  body.single-product .bg-woo-package-contents__package{
    grid-column: 1 / -1 !important;
    justify-self: start !important;
    max-width: 100% !important;
    margin-top: -2px !important;
  }

  body.single-product .bg-woo-package-contents__list{
    grid-template-columns: 1fr !important;
    gap: 7px !important;
  }

  body.single-product .bg-woo-package-contents__list li{
    min-height: 38px !important;
    font-size: 11.5px !important;
  }

  body.single-product .bg-woo-package-contents__visual-note p{
    font-size: 12px !important;
    line-height: 1.5 !important;
  }
}


/* =========================================================
   KOSZYK — KOMUNIKATY NA TELEFONIE
========================================================= */
@media (max-width: 620px){
  body.woocommerce-cart .woocommerce-message,
body.woocommerce-cart .woocommerce-info,
body.woocommerce-cart .woocommerce-error,
body.woocommerce-cart ul.woocommerce-error{
    align-items: flex-start !important;
    min-height: 0 !important;
    padding: 13px !important;
    border-radius: 16px !important;
  }

  body.woocommerce-cart .woocommerce-message > a.button,
body.woocommerce-cart .woocommerce-info > a.button,
body.woocommerce-cart .woocommerce-error > a.button{
    width: 100% !important;
    margin: 10px 0 0 !important;
  }

  .bg-woo-system-notice{
    align-items: flex-start !important;
  }

  .bg-woo-system-notice__icon{
    flex-basis: 36px !important;
    width: 36px !important;
    height: 36px !important;
    border-radius: 12px !important;
  }
}

/* =========================================================
   BOOSTROGO CORE RC61 — SKLEP / PRODUKT / KOSZYK / CHECKOUT
   Spójny UX sklepu w stylu BoostroGO SaaS.
========================================================= */

/* Wspólne tło i szerokość właściwej treści WooCommerce. */
body.woocommerce-shop,
body.post-type-archive-product,
body.single-product,
body.woocommerce-cart,
body.woocommerce-checkout{
  background:
    radial-gradient(circle at 3% 4%, rgba(251, 4, 68, .055), transparent 28%),
    radial-gradient(circle at 96% 7%, rgba(80, 202, 235, .11), transparent 31%),
    linear-gradient(180deg, #f8fbff 0%, #eef8fc 100%) !important;
}

body.woocommerce-shop .site-main > .ct-container,
body.post-type-archive-product .site-main > .ct-container,
body.woocommerce-cart .site-main > .ct-container,
body.woocommerce-checkout .site-main > .ct-container,
body.woocommerce-shop #main > .ct-container,
body.woocommerce-cart #main > .ct-container,
body.woocommerce-checkout #main > .ct-container{
  width: min(1280px, calc(100% - 32px)) !important;
  max-width: 1280px !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

body.woocommerce-shop .hero-section,
body.post-type-archive-product .hero-section,
body.woocommerce-shop .woocommerce-breadcrumb{
  display: none !important;
}

/* =========================================================
   SKLEP — HERO, TOOLBAR I KARTY PRODUKTÓW
========================================================= */
body.woocommerce-shop .site-main,
body.post-type-archive-product .site-main{
  padding-top: 34px !important;
}

body.woocommerce-shop .content-area,
body.post-type-archive-product .content-area{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

body.woocommerce-shop .woocommerce,
body.post-type-archive-product .woocommerce{
  width: min(1220px, calc(100% - 28px)) !important;
  max-width: 1220px !important;
  margin: 0 auto !important;
}

.bg-woo-shop-hero{
  position: relative !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.45fr) minmax(260px, .55fr) !important;
  gap: 24px !important;
  min-height: 300px !important;
  margin: 0 0 24px !important;
  padding: 34px 38px !important;
  overflow: hidden !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 32px !important;
  background:
    radial-gradient(circle at 87% 15%, rgba(251, 4, 68, .34), transparent 31%),
    radial-gradient(circle at 10% 115%, rgba(72, 210, 245, .13), transparent 31%),
    linear-gradient(135deg, #17204a 0%, #29386f 63%, #64245f 100%) !important;
  box-shadow: 0 28px 70px rgba(28, 36, 75, .19) !important;
  color: #fff !important;
  isolation: isolate !important;
}

.bg-woo-shop-hero::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  height: 6px !important;
  background: linear-gradient(90deg, #fb0444 0 34%, rgba(255,255,255,.8) 34% 38%, #29386f 38% 100%) !important;
}

.bg-woo-shop-hero__copy{
  position: relative !important;
  z-index: 3 !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
}

.bg-woo-shop-hero__kicker{
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: fit-content !important;
  color: #ff86a8 !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .11em !important;
  text-transform: uppercase !important;
}

.bg-woo-shop-hero__kicker::before{
  content: "" !important;
  width: 9px !important;
  height: 9px !important;
  border-radius: 999px !important;
  background: #fb0444 !important;
  box-shadow: 0 0 0 6px rgba(251,4,68,.12) !important;
}

.bg-woo-shop-hero h1{
  max-width: 760px !important;
  margin: 15px 0 0 !important;
  color: #fff !important;
  font-size: clamp(42px, 5.4vw, 68px) !important;
  line-height: .92 !important;
  font-weight: 950 !important;
  letter-spacing: -.065em !important;
}

.bg-woo-shop-hero p{
  max-width: 710px !important;
  margin: 17px 0 0 !important;
  color: rgba(255,255,255,.77) !important;
  font-size: 14px !important;
  line-height: 1.62 !important;
  font-weight: 600 !important;
}

.bg-woo-shop-hero__actions{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin-top: 22px !important;
}

.bg-woo-shop-hero__primary,
.bg-woo-shop-hero__secondary{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  min-height: 48px !important;
  padding: 0 20px !important;
  border-radius: 999px !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

.bg-woo-shop-hero__primary{
  background: linear-gradient(135deg, #fb0444, #ff2d65) !important;
  box-shadow: 0 16px 30px rgba(251,4,68,.28) !important;
}

.bg-woo-shop-hero__secondary{
  border: 1px solid rgba(255,255,255,.20) !important;
  background: rgba(255,255,255,.08) !important;
}

.bg-woo-shop-hero__primary:hover,
.bg-woo-shop-hero__secondary:hover{
  color: #fff !important;
  transform: translateY(-1px) !important;
}

.bg-woo-shop-hero__trust{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 22px !important;
}

.bg-woo-shop-hero__trust span{
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  min-height: 32px !important;
  padding: 0 10px !important;
  border: 1px solid rgba(255,255,255,.11) !important;
  border-radius: 999px !important;
  background: rgba(255,255,255,.07) !important;
  color: rgba(255,255,255,.76) !important;
  font-size: 10px !important;
  font-weight: 750 !important;
}

.bg-woo-shop-hero__trust b{
  color: #ff85a8 !important;
  font-size: 9px !important;
  font-weight: 950 !important;
}

.bg-woo-shop-hero__visual{
  position: relative !important;
  z-index: 2 !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: center !important;
  min-width: 0 !important;
}

.bg-woo-shop-hero__visual::before{
  content: "" !important;
  position: absolute !important;
  inset: 7% 4% 5% !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 30px !important;
  background: rgba(255,255,255,.06) !important;
  backdrop-filter: blur(10px) !important;
}

.bg-woo-shop-hero__visual img{
  position: relative !important;
  z-index: 2 !important;
  width: auto !important;
  max-width: 92% !important;
  height: 252px !important;
  object-fit: contain !important;
  object-position: center bottom !important;
  filter: drop-shadow(0 22px 24px rgba(4,8,25,.28)) !important;
}

.bg-woo-shop-hero__mark{
  position: absolute !important;
  right: -2px !important;
  bottom: -28px !important;
  z-index: 1 !important;
  color: rgba(255,255,255,.035) !important;
  font-size: 92px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: -.10em !important;
}

.bg-woo-shop-hero__fallback{
  position: relative !important;
  z-index: 2 !important;
  color: rgba(255,255,255,.14) !important;
  font-size: 100px !important;
  font-weight: 950 !important;
}

.bg-woo-shop-toolbar{
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 13px 14px 13px 16px !important;
  border: 1px solid rgba(28,36,75,.10) !important;
  border-radius: 20px !important;
  background: rgba(255,255,255,.84) !important;
  box-shadow: 0 14px 34px rgba(28,36,75,.07) !important;
}

.bg-woo-shop-toolbar__copy{
  display: flex !important;
  align-items: center !important;
  gap: 11px !important;
}

.bg-woo-shop-toolbar__dot{
  width: 10px !important;
  height: 10px !important;
  border-radius: 999px !important;
  background: #fb0444 !important;
  box-shadow: 0 0 0 6px rgba(251,4,68,.09) !important;
}

.bg-woo-shop-toolbar__copy small,
.bg-woo-shop-toolbar__copy strong{
  display: block !important;
}

.bg-woo-shop-toolbar__copy small{
  margin-bottom: 3px !important;
  color: rgba(28,36,75,.48) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  letter-spacing: .09em !important;
  text-transform: uppercase !important;
}

.bg-woo-shop-toolbar__copy strong{
  color: #1c244b !important;
  font-size: 14px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
}

.bg-woo-shop-toolbar__sorting .woocommerce-ordering{
  float: none !important;
  margin: 0 !important;
}

.bg-woo-shop-toolbar__sorting select{
  min-width: 210px !important;
  min-height: 42px !important;
  padding: 0 38px 0 14px !important;
  border: 1px solid rgba(28,36,75,.11) !important;
  border-radius: 13px !important;
  background-color: #fff !important;
  color: #1c244b !important;
  font-size: 11px !important;
  font-weight: 800 !important;
}

body.woocommerce-shop ul.products,
body.post-type-archive-product ul.products{
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 20px !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.woocommerce-shop ul.products::before,
body.woocommerce-shop ul.products::after,
body.post-type-archive-product ul.products::before,
body.post-type-archive-product ul.products::after{
  display: none !important;
}

body.woocommerce-shop ul.products li.product,
body.post-type-archive-product ul.products li.product{
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  float: none !important;
  width: 100% !important;
  min-width: 0 !important;
  min-height: 510px !important;
  margin: 0 !important;
  padding: 12px 12px 14px !important;
  overflow: hidden !important;
  border: 1px solid rgba(28,36,75,.11) !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(251,4,68,.055), transparent 31%),
    linear-gradient(180deg, #fff, #f7fbfe) !important;
  box-shadow: 0 18px 42px rgba(28,36,75,.09) !important;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease !important;
}

body.woocommerce-shop ul.products li.product::before,
body.post-type-archive-product ul.products li.product::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, #fb0444 0 40%, #1c244b 40% 100%) !important;
}

body.woocommerce-shop ul.products li.product:hover,
body.post-type-archive-product ul.products li.product:hover{
  transform: translateY(-5px) !important;
  border-color: rgba(251,4,68,.20) !important;
  box-shadow: 0 26px 56px rgba(28,36,75,.14) !important;
}

body.woocommerce-shop ul.products li.product .woocommerce-LoopProduct-link,
body.post-type-archive-product ul.products li.product .woocommerce-LoopProduct-link{
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  min-width: 0 !important;
  color: #1c244b !important;
  text-decoration: none !important;
}

body.woocommerce-shop ul.products li.product .ct-media-container,
body.woocommerce-shop ul.products li.product .woocommerce-loop-product__link > img,
body.woocommerce-shop ul.products li.product a > img,
body.post-type-archive-product ul.products li.product .ct-media-container,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__link > img,
body.post-type-archive-product ul.products li.product a > img{
  width: 100% !important;
  height: 230px !important;
  margin: 0 0 13px !important;
  overflow: hidden !important;
  border-radius: 18px !important;
}

body.woocommerce-shop ul.products li.product img,
body.post-type-archive-product ul.products li.product img{
  display: block !important;
  width: 100% !important;
  height: 230px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 18px !important;
  background: #edf4f8 !important;
  object-fit: cover !important;
  object-position: center !important;
  transition: transform .28s ease, filter .28s ease !important;
}

body.woocommerce-shop ul.products li.product:hover img,
body.post-type-archive-product ul.products li.product:hover img{
  transform: scale(1.035) !important;
  filter: saturate(1.04) contrast(1.02) !important;
}

.bg-woo-loop-package{
  display: inline-flex !important;
  align-items: center !important;
  width: fit-content !important;
  min-height: 27px !important;
  margin: 0 2px 9px !important;
  padding: 0 10px !important;
  border: 1px solid rgba(251,4,68,.16) !important;
  border-radius: 999px !important;
  background: rgba(251,4,68,.07) !important;
  color: #fb0444 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .055em !important;
  text-transform: uppercase !important;
}

body.woocommerce-shop ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title{
  min-height: 66px !important;
  margin: 0 2px 8px !important;
  padding: 0 !important;
  color: #1c244b !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 900 !important;
  letter-spacing: -.03em !important;
}

body.woocommerce-shop ul.products li.product .price,
body.post-type-archive-product ul.products li.product .price{
  margin: auto 2px 12px !important;
  color: #1c244b !important;
  font-size: 17px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

body.woocommerce-shop ul.products li.product .product-category,
body.woocommerce-shop ul.products li.product .entry-meta,
body.woocommerce-shop ul.products li.product .star-rating,
body.post-type-archive-product ul.products li.product .product-category,
body.post-type-archive-product ul.products li.product .entry-meta,
body.post-type-archive-product ul.products li.product .star-rating{
  display: none !important;
}

body.woocommerce-shop ul.products li.product .button,
body.post-type-archive-product ul.products li.product .button{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 45px !important;
  margin: 0 !important;
  padding: 0 16px !important;
  border: 0 !important;
  border-radius: 14px !important;
  background: #172252 !important;
  color: #fff !important;
  font-size: 12px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  box-shadow: none !important;
}

body.woocommerce-shop ul.products li.product .button:hover,
body.post-type-archive-product ul.products li.product .button:hover{
  background: #fb0444 !important;
  color: #fff !important;
}

/* =========================================================
   POJEDYNCZY PRODUKT — WIĘKSZY ODDECH I CZYTELNA GRAFIKA
========================================================= */




body.single-product .bg-woo-product-stage{
  width: min(100%, 1120px) !important;
  margin-bottom: 22px !important;
}

body.single-product .bg-woo-product-stage h1{
  font-size: clamp(36px, 4.2vw, 50px) !important;
}













body.single-product .bg-woo-package-contents,
body.single-product .boostrogo-woo-challenge-notice{
  border-radius: 20px !important;
}

/* =========================================================
   KOSZYK — WIĘKSZA SKALA I LEPSZA HIERARCHIA
========================================================= */
body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main{
  padding-top: 34px !important;
}

body.woocommerce-cart .woocommerce{
  width: min(1160px, calc(100% - 28px)) !important;
  max-width: 1160px !important;
  grid-template-columns: minmax(0, 1fr) 380px !important;
  gap: 28px !important;
}

body.woocommerce-cart .woocommerce > form.woocommerce-cart-form{
  padding: 26px !important;
  border: 1px solid rgba(28,36,75,.10) !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.94) !important;
  box-shadow: 0 20px 48px rgba(28,36,75,.09) !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals{
  padding: 23px !important;
  border: 1px solid rgba(28,36,75,.10) !important;
  border-radius: 26px !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 20px 48px rgba(28,36,75,.10) !important;
}

body.woocommerce-cart .cart_totals h2{
  margin: -23px -23px 18px !important;
  padding: 21px 23px !important;
  border-radius: 25px 25px 0 0 !important;
  background: linear-gradient(135deg, #1c244b, #303c79 70%, #5c285c) !important;
  color: #fff !important;
  font-size: 24px !important;
}

body.woocommerce-cart table.shop_table td.product-thumbnail{
  width: 122px !important;
}

body.woocommerce-cart table.shop_table .product-thumbnail img{
  width: 104px !important;
  max-width: 104px !important;
  height: 104px !important;
  padding: 7px !important;
  border: 1px solid rgba(28,36,75,.08) !important;
  border-radius: 18px !important;
  background: #f2f7fa !important;
  object-fit: contain !important;
}

body.woocommerce-cart table.shop_table .product-name a{
  color: #1c244b !important;
  font-size: 17px !important;
  line-height: 1.28 !important;
  font-weight: 900 !important;
}

/* =========================================================
   FINALIZACJA — CZYTELNIEJSZY FORMULARZ I PODSUMOWANIE
========================================================= */
body.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce{
  width: min(1220px, calc(100% - 28px)) !important;
  max-width: 1220px !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout.woocommerce-checkout{
  grid-template-columns: minmax(0, 1fr) 430px !important;
  gap: 30px !important;
}

body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields{
  padding: 30px !important;
  border: 1px solid rgba(28,36,75,.10) !important;
  border-radius: 28px !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 20px 50px rgba(28,36,75,.09) !important;
}

body.woocommerce-checkout .woocommerce-billing-fields h3,
body.woocommerce-checkout .woocommerce-shipping-fields h3,
body.woocommerce-checkout .woocommerce-additional-fields h3{
  font-size: 27px !important;
  line-height: 1.08 !important;
}

body.woocommerce-checkout form .form-row{
  margin-bottom: 17px !important;
}

body.woocommerce-checkout form .form-row label{
  margin-bottom: 7px !important;
  color: #1c244b !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  font-weight: 850 !important;
}

body.woocommerce-checkout form .form-row input.input-text,
body.woocommerce-checkout form .form-row textarea,
body.woocommerce-checkout form .form-row select,
body.woocommerce-checkout .select2-container .select2-selection--single{
  min-height: 50px !important;
  padding: 12px 15px !important;
  border: 1px solid rgba(28,36,75,.14) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #1c244b !important;
  font-size: 14px !important;
}

body.woocommerce-checkout form .form-row input.input-text:focus,
body.woocommerce-checkout form .form-row textarea:focus,
body.woocommerce-checkout .select2-container--focus .select2-selection--single{
  border-color: rgba(251,4,68,.48) !important;
  box-shadow: 0 0 0 4px rgba(251,4,68,.08) !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review_heading{
  margin: 0 !important;
  padding: 22px 24px !important;
  border-radius: 26px 26px 0 0 !important;
  background: linear-gradient(135deg, #1c244b, #303c79 72%, #5c285c) !important;
  color: #fff !important;
  font-size: 25px !important;
  line-height: 1.05 !important;
}

body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review{
  top: 22px !important;
  margin-top: -1px !important;
  padding: 22px !important;
  border: 1px solid rgba(28,36,75,.10) !important;
  border-top: 0 !important;
  border-radius: 0 0 26px 26px !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 22px 54px rgba(28,36,75,.11) !important;
}

body.woocommerce-checkout #order_review table.shop_table th,
body.woocommerce-checkout #order_review table.shop_table td{
  padding: 14px 8px !important;
  font-size: 12.5px !important;
  line-height: 1.42 !important;
}

body.woocommerce-checkout #payment #place_order{
  min-height: 58px !important;
  border-radius: 16px !important;
  font-size: 15px !important;
}

/* =========================================================
   RESPONSYWNOŚĆ RC61
========================================================= */
@media (max-width: 1120px){
  body.woocommerce-shop ul.products,
body.post-type-archive-product ul.products{
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  .bg-woo-shop-hero{
    grid-template-columns: minmax(0, 1.25fr) minmax(220px, .75fr) !important;
  }
}

@media (max-width: 980px){
  .bg-woo-shop-hero{
    grid-template-columns: 1fr !important;
    padding: 30px !important;
  }

  .bg-woo-shop-hero__visual{
    display: none !important;
  }

  

  

  

  body.woocommerce-cart .woocommerce,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout.woocommerce-checkout{
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review_heading{
    border-radius: 24px 24px 0 0 !important;
  }
}

@media (max-width: 700px){
  body.woocommerce-shop .site-main,
body.post-type-archive-product .site-main,
body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main{
    padding-top: 20px !important;
  }

  .bg-woo-shop-hero{
    min-height: 0 !important;
    margin-bottom: 18px !important;
    padding: 25px 21px !important;
    border-radius: 25px !important;
  }

  .bg-woo-shop-hero h1{
    font-size: clamp(36px, 12vw, 50px) !important;
  }

  .bg-woo-shop-hero__trust{
    display: none !important;
  }

  .bg-woo-shop-toolbar{
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .bg-woo-shop-toolbar__sorting select{
    width: 100% !important;
  }

  body.woocommerce-shop ul.products,
body.post-type-archive-product ul.products{
    grid-template-columns: 1fr !important;
    gap: 16px !important;
  }

  body.woocommerce-shop ul.products li.product,
body.post-type-archive-product ul.products li.product{
    min-height: 0 !important;
  }

  body.woocommerce-shop ul.products li.product img,
body.post-type-archive-product ul.products li.product img,
body.woocommerce-shop ul.products li.product .ct-media-container,
body.post-type-archive-product ul.products li.product .ct-media-container{
    height: 240px !important;
  }

  

  

  

  

  body.woocommerce-cart .woocommerce > form.woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals .cart_totals,
body.woocommerce-checkout .woocommerce-billing-fields,
body.woocommerce-checkout .woocommerce-shipping-fields,
body.woocommerce-checkout .woocommerce-additional-fields,
body.woocommerce-checkout:not(.woocommerce-order-received) form.checkout #order_review{
    padding: 18px !important;
    border-radius: 22px !important;
  }

  body.woocommerce-cart .cart_totals h2{
    margin: -18px -18px 16px !important;
    padding: 18px !important;
    border-radius: 21px 21px 0 0 !important;
  }
}

/* Bezpiecznik, gdy motyw ponownie podłączy domyślny licznik lub sortowanie. */
body.woocommerce-shop .woocommerce > .woocommerce-result-count,
body.woocommerce-shop .woocommerce > .woocommerce-ordering,
body.post-type-archive-product .woocommerce > .woocommerce-result-count,
body.post-type-archive-product .woocommerce > .woocommerce-ordering{
  display: none !important;
}

/* =========================================================
   BOOSTROGO CORE RC63 — KATEGORIE SKLEPU / BREADCRUMB / KOSZYK
========================================================= */

/* Szersza informacja o ofercie niezależnej od wyzwań. */
.bg-woo-shop-hero__range{
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  margin-top: 16px !important;
}

.bg-woo-shop-hero__range span{
  display: inline-flex !important;
  align-items: center !important;
  min-height: 30px !important;
  padding: 0 11px !important;
  border: 1px solid rgba(255, 255, 255, .15) !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, .07) !important;
  color: rgba(255, 255, 255, .86) !important;
  font-size: 10px !important;
  line-height: 1 !important;
  font-weight: 820 !important;
}

/* Kategorie są gotowe także na rozbudowę sklepu o samodzielną odzież i dodatki. */
.bg-woo-shop-categories{
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 0 0 18px !important;
  padding: 16px !important;
  border: 1px solid rgba(28, 36, 75, .09) !important;
  border-radius: 24px !important;
  background: rgba(255, 255, 255, .88) !important;
  box-shadow: 0 14px 34px rgba(28, 36, 75, .07) !important;
}

.bg-woo-shop-categories__head{
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  min-width: 0 !important;
  padding: 4px 8px !important;
}

.bg-woo-shop-categories__head span{
  color: #1c244b !important;
  font-size: 15px !important;
  line-height: 1.1 !important;
  font-weight: 950 !important;
}

.bg-woo-shop-categories__head small{
  margin-top: 5px !important;
  color: rgba(28, 36, 75, .58) !important;
  font-size: 10px !important;
  line-height: 1.35 !important;
  font-weight: 680 !important;
}

.bg-woo-shop-categories__list{
  display: grid !important;
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 9px !important;
  min-width: 0 !important;
}

.bg-woo-shop-category{
  display: grid !important;
  grid-template-columns: 34px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 9px !important;
  min-width: 0 !important;
  min-height: 60px !important;
  padding: 9px !important;
  border: 1px solid rgba(28, 36, 75, .08) !important;
  border-radius: 16px !important;
  background: #f8fbfe !important;
  color: #1c244b !important;
  text-decoration: none !important;
  transition: transform .18s ease, border-color .18s ease, background .18s ease !important;
}

.bg-woo-shop-category:hover,
.bg-woo-shop-category.is-active{
  transform: translateY(-1px) !important;
  border-color: rgba(251, 4, 68, .22) !important;
  background: linear-gradient(145deg, #fff, #fff3f7) !important;
}

.bg-woo-shop-category.is-active{
  box-shadow: inset 0 0 0 1px rgba(251, 4, 68, .08) !important;
}

.bg-woo-shop-category.is-coming{
  opacity: .58 !important;
  cursor: default !important;
}

.bg-woo-shop-category__icon{
  display: grid !important;
  place-items: center !important;
  width: 34px !important;
  height: 34px !important;
  border-radius: 11px !important;
  background: #172252 !important;
  color: #fff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
}

.bg-woo-shop-category.is-active .bg-woo-shop-category__icon{
  background: #fb0444 !important;
}

.bg-woo-shop-category__copy{
  display: block !important;
  min-width: 0 !important;
}

.bg-woo-shop-category__copy strong,
.bg-woo-shop-category__copy small{
  display: block !important;
  min-width: 0 !important;
}

.bg-woo-shop-category__copy strong{
  overflow: hidden !important;
  color: #1c244b !important;
  font-size: 10.5px !important;
  line-height: 1.15 !important;
  font-weight: 900 !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.bg-woo-shop-category__copy small{
  display: none !important;
}

.bg-woo-shop-category > b{
  color: rgba(28, 36, 75, .58) !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

/* Blocksy lub wtyczka SEO mogą drukować własną ścieżkę poza breadcrumbem Woo. */
body.single-product .ct-breadcrumbs,
body.single-product .yoast-breadcrumbs,
body.single-product .rank-math-breadcrumb,
body.single-product nav.breadcrumbs,
body.single-product .entry-header .breadcrumbs,
body.single-product .hero-section [class*="breadcrumb"]{
  display: none !important;
}

/* Koszyk zajmuje pełną szerokość właściwej osi BoostroGO. */
body.woocommerce-cart .site-main > .ct-container,
body.woocommerce-cart #main > .ct-container,
body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main article,
body.woocommerce-cart .site-main .entry-content{
  width: min(1360px, calc(100% - 32px)) !important;
  max-width: 1360px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.woocommerce-cart .woocommerce{
  width: 100% !important;
  max-width: none !important;
  grid-template-columns: minmax(0, 1fr) 370px !important;
  gap: 26px !important;
}

body.woocommerce-cart .woocommerce > form.woocommerce-cart-form{
  min-width: 0 !important;
  padding: 28px !important;
}

body.woocommerce-cart table.shop_table{
  width: 100% !important;
  table-layout: auto !important;
}

body.woocommerce-cart table.shop_table th.product-name,
body.woocommerce-cart table.shop_table td.product-name{
  width: auto !important;
  min-width: 300px !important;
}

body.woocommerce-cart table.shop_table th.product-thumbnail,
body.woocommerce-cart table.shop_table td.product-thumbnail{
  width: 132px !important;
}

body.woocommerce-cart table.shop_table th.product-quantity,
body.woocommerce-cart table.shop_table td.product-quantity{
  width: 92px !important;
  white-space: nowrap !important;
}

body.woocommerce-cart table.shop_table th.product-subtotal,
body.woocommerce-cart table.shop_table td.product-subtotal{
  width: 118px !important;
  white-space: nowrap !important;
}

body.woocommerce-cart table.shop_table th.product-remove,
body.woocommerce-cart table.shop_table td.product-remove{
  width: 48px !important;
}

body.woocommerce-cart table.shop_table .product-name a{
  font-size: 18px !important;
  line-height: 1.22 !important;
}

body.woocommerce-cart .cart-collaterals{
  min-width: 0 !important;
}

body.woocommerce-cart .cart-collaterals .cart_totals{
  width: 100% !important;
}

@media (max-width: 1180px){
  .bg-woo-shop-categories{
    grid-template-columns: 1fr !important;
  }

  .bg-woo-shop-categories__list{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }

  body.woocommerce-cart .woocommerce{
    grid-template-columns: minmax(0, 1fr) 330px !important;
  }
}

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

  body.woocommerce-cart .woocommerce > .cart-collaterals{
    position: static !important;
  }
}

@media (max-width: 700px){
  .bg-woo-shop-hero__range{
    gap: 6px !important;
  }

  .bg-woo-shop-categories{
    padding: 13px !important;
    border-radius: 21px !important;
  }

  .bg-woo-shop-categories__list{
    grid-template-columns: 1fr 1fr !important;
  }

  .bg-woo-shop-category{
    grid-template-columns: 32px minmax(0, 1fr) !important;
  }

  .bg-woo-shop-category > b{
    display: none !important;
  }

  body.woocommerce-cart .site-main > .ct-container,
body.woocommerce-cart #main > .ct-container,
body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main article,
body.woocommerce-cart .site-main .entry-content{
    width: min(100%, calc(100% - 20px)) !important;
  }

  body.woocommerce-cart table.shop_table th.product-name,
body.woocommerce-cart table.shop_table td.product-name{
    min-width: 0 !important;
  }
}


/* =========================================================
   BOOSTROGO STORE RC65 — CART ALIGNMENT + PRODUCT AIR + DESCRIPTION
========================================================= */

/* Więcej oddechu pomiędzy galerią a informacjami produktu. */
@media (min-width: 901px){
  

  
}

/* Zakładka opisu staje się pełnoprawną sekcją, a nie surowym tekstem Woo. */








.bg-woo-product-description-card{
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  padding: 0 !important;
  border: 1px solid rgba(28, 36, 75, .10) !important;
  border-radius: 25px !important;
  background:
    radial-gradient(circle at 100% 0%, rgba(251, 4, 68, .055), transparent 34%),
    linear-gradient(145deg, #ffffff, #f7fbfe) !important;
  box-shadow: 0 16px 38px rgba(28, 36, 75, .08) !important;
}

.bg-woo-product-description-card::before{
  content: "" !important;
  position: absolute !important;
  inset: 0 0 auto 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, #1c244b 0 38%, #fb0444 38% 76%, rgba(251,4,68,.18) 76%) !important;
}

.bg-woo-product-description-card__head{
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 84px !important;
  padding: 20px 22px 16px !important;
  border-bottom: 1px solid rgba(28, 36, 75, .09) !important;
}

.bg-woo-product-description-card__icon{
  display: grid !important;
  place-items: center !important;
  flex: 0 0 44px !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 14px !important;
  background: #172252 !important;
  color: #fff !important;
  box-shadow: 0 10px 22px rgba(28, 36, 75, .15) !important;
}

.bg-woo-product-description-card__title{
  display: block !important;
  min-width: 0 !important;
}

.bg-woo-product-description-card__title small,
.bg-woo-product-description-card__title strong{
  display: block !important;
}

.bg-woo-product-description-card__title small{
  margin-bottom: 4px !important;
  color: #fb0444 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: .10em !important;
  text-transform: uppercase !important;
}

.bg-woo-product-description-card__title strong{
  color: #1c244b !important;
  font-size: 22px !important;
  line-height: 1.05 !important;
  font-weight: 950 !important;
  letter-spacing: -.035em !important;
}

.bg-woo-product-description-card__badge{
  display: inline-flex !important;
  align-items: center !important;
  min-height: 29px !important;
  margin-left: auto !important;
  padding: 0 11px !important;
  border: 1px solid rgba(251, 4, 68, .17) !important;
  border-radius: 999px !important;
  background: rgba(251, 4, 68, .07) !important;
  color: #fb0444 !important;
  font-size: 9px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  white-space: nowrap !important;
}

.bg-woo-product-description-card__content{
  padding: 22px !important;
  color: rgba(28, 36, 75, .74) !important;
  font-size: 13px !important;
  line-height: 1.65 !important;
  font-weight: 580 !important;
}

.bg-woo-product-description-card__content > p:first-child{
  margin-top: 0 !important;
  color: #1c244b !important;
  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 700 !important;
}

.bg-woo-product-description-card__content ul{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin: 18px 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.bg-woo-product-description-card__content li{
  position: relative !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 13px 14px 13px 42px !important;
  border: 1px solid rgba(28, 36, 75, .08) !important;
  border-radius: 15px !important;
  background: rgba(255, 255, 255, .86) !important;
  color: #1c244b !important;
  font-size: 12px !important;
  line-height: 1.4 !important;
  font-weight: 750 !important;
}

.bg-woo-product-description-card__content li::before{
  content: "✓" !important;
  position: absolute !important;
  left: 13px !important;
  top: 12px !important;
  display: grid !important;
  place-items: center !important;
  width: 22px !important;
  height: 22px !important;
  border-radius: 999px !important;
  background: rgba(20, 160, 111, .10) !important;
  color: #0d9566 !important;
  font-size: 12px !important;
  font-weight: 950 !important;
}

.bg-woo-product-description-card__content p:last-child{
  margin: 16px 0 0 !important;
}

.bg-woo-product-description-card__content p:last-child a{
  display: inline-flex !important;
  align-items: center !important;
  min-height: 42px !important;
  padding: 0 16px !important;
  border-radius: 999px !important;
  background: #172252 !important;
  color: #fff !important;
  font-size: 11px !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(28, 36, 75, .13) !important;
}

.bg-woo-product-description-card__content p:last-child a::after{
  content: "→" !important;
  margin-left: 8px !important;
}

.bg-woo-product-description-card__content p:last-child a:hover{
  background: #fb0444 !important;
  color: #fff !important;
}

/* Koszyk wyłamuje się z ewentualnego wąskiego kontenera motywu i korzysta z osi sklepu. */
@media (min-width: 981px){
  body.woocommerce-cart .site-main,
body.woocommerce-cart #main,
body.woocommerce-cart .site-main > .ct-container,
body.woocommerce-cart #main > .ct-container,
body.woocommerce-cart .content-area,
body.woocommerce-cart .site-main article,
body.woocommerce-cart .site-main .entry-content{
    overflow: visible !important;
  }

  body.woocommerce-cart .woocommerce{
    position: relative !important;
    left: 50% !important;
    width: min(1280px, calc(100vw - 48px)) !important;
    max-width: none !important;
    margin-right: 0 !important;
    margin-left: 0 !important;
    transform: translateX(-50%) !important;
    grid-template-columns: minmax(0, 1fr) 350px !important;
    gap: 24px !important;
  }

  body.woocommerce-cart .woocommerce > form.woocommerce-cart-form{
    min-width: 0 !important;
    overflow: hidden !important;
  }

  body.woocommerce-cart table.shop_table{
    width: 100% !important;
    table-layout: fixed !important;
  }

  body.woocommerce-cart table.shop_table th.product-thumbnail,
body.woocommerce-cart table.shop_table td.product-thumbnail{
    width: 112px !important;
  }

  body.woocommerce-cart table.shop_table th.product-price,
body.woocommerce-cart table.shop_table td.product-price{
    width: 96px !important;
  }

  body.woocommerce-cart table.shop_table th.product-quantity,
body.woocommerce-cart table.shop_table td.product-quantity{
    width: 72px !important;
  }

  body.woocommerce-cart table.shop_table th.product-subtotal,
body.woocommerce-cart table.shop_table td.product-subtotal{
    width: 96px !important;
  }

  body.woocommerce-cart table.shop_table th.product-remove,
body.woocommerce-cart table.shop_table td.product-remove{
    width: 42px !important;
  }

  body.woocommerce-cart table.shop_table th.product-name,
body.woocommerce-cart table.shop_table td.product-name{
    width: auto !important;
    min-width: 0 !important;
  }

  body.woocommerce-cart table.shop_table .product-name a{
    overflow-wrap: anywhere !important;
  }

  body.woocommerce-cart table.cart td.actions{
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
  }

  body.woocommerce-cart table.cart td.actions .coupon{
    grid-template-columns: minmax(160px, 1fr) auto !important;
    width: min(100%, 520px) !important;
    max-width: 520px !important;
  }

  body.woocommerce-cart table.cart td.actions > button.button{
    margin: 0 !important;
    white-space: nowrap !important;
  }
}

@media (max-width: 980px){
  body.woocommerce-cart .woocommerce{
    left: auto !important;
    width: min(100%, calc(100vw - 24px)) !important;
    margin-right: auto !important;
    margin-left: auto !important;
    transform: none !important;
  }
}

@media (max-width: 700px){
  .bg-woo-product-description-card__head{
    align-items: flex-start !important;
    flex-wrap: wrap !important;
    padding: 18px !important;
  }

  .bg-woo-product-description-card__badge{
    margin-left: 56px !important;
  }

  .bg-woo-product-description-card__content{
    padding: 18px !important;
  }

  .bg-woo-product-description-card__content ul{
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart table.cart td.actions{
    display: grid !important;
    grid-template-columns: 1fr !important;
  }

  body.woocommerce-cart table.cart td.actions .coupon,
body.woocommerce-cart table.cart td.actions > button.button{
    width: 100% !important;
    max-width: none !important;
  }
}

/* =========================================================
   RC115 — TERMIN REALIZACJI W CHECKOUTCIE I ZAMÓWIENIU
========================================================= */

body.woocommerce-checkout .bg-checkout-shipping,
body.woocommerce-order-received .bg-order-shipping,
.woocommerce-account .bg-order-shipping {
  display: grid !important;
  grid-template-columns: 46px minmax(0, 1fr) !important;
  align-items: start !important;
  gap: 13px !important;
  width: 100% !important;
  margin: 16px 0 !important;
  padding: 16px 17px !important;
  border: 1px solid rgba(28, 36, 75, .1) !important;
  border-left: 4px solid #fb1753 !important;
  border-radius: 17px !important;
  background: linear-gradient(135deg, rgba(251, 23, 83, .045), #f8faff) !important;
  box-shadow: 0 12px 30px rgba(28, 36, 75, .06) !important;
  color: #1c244b !important;
}

body.woocommerce-checkout .bg-checkout-shipping__icon,
body.woocommerce-order-received .bg-order-shipping__icon,
.woocommerce-account .bg-order-shipping__icon {
  display: grid !important;
  place-items: center !important;
  width: 44px !important;
  height: 44px !important;
  border-radius: 14px !important;
  background: linear-gradient(145deg, #1c244b, #34417a) !important;
  color: #fff !important;
  font-size: 17px !important;
  font-weight: 950 !important;
}

body.woocommerce-checkout .bg-checkout-shipping__content,
body.woocommerce-order-received .bg-order-shipping__content,
.woocommerce-account .bg-order-shipping__content {
  display: grid !important;
  gap: 5px !important;
  min-width: 0 !important;
}

body.woocommerce-checkout .bg-checkout-shipping strong,
body.woocommerce-order-received .bg-order-shipping strong,
.woocommerce-account .bg-order-shipping strong {
  color: #1c244b !important;
  font-size: 14px !important;
  line-height: 1.3 !important;
  font-weight: 950 !important;
}

body.woocommerce-checkout .bg-checkout-shipping p,
body.woocommerce-checkout .bg-checkout-shipping ul,
body.woocommerce-order-received .bg-order-shipping p,
body.woocommerce-order-received .bg-order-shipping ul,
.woocommerce-account .bg-order-shipping p,
.woocommerce-account .bg-order-shipping ul {
  margin: 0 !important;
  color: #626e89 !important;
  font-size: 12px !important;
  line-height: 1.55 !important;
}

body.woocommerce-checkout .bg-checkout-shipping ul,
body.woocommerce-order-received .bg-order-shipping ul,
.woocommerce-account .bg-order-shipping ul {
  padding-left: 18px !important;
}

body.woocommerce-checkout .bg-checkout-shipping small,
body.woocommerce-order-received .bg-order-shipping small,
.woocommerce-account .bg-order-shipping small {
  color: #8790a6 !important;
  font-size: 10px !important;
  line-height: 1.45 !important;
}

@media (max-width: 620px) {
  body.woocommerce-checkout .bg-checkout-shipping,
  body.woocommerce-order-received .bg-order-shipping,
  .woocommerce-account .bg-order-shipping {
    grid-template-columns: 38px minmax(0, 1fr) !important;
    gap: 10px !important;
    padding: 14px !important;
  }

  body.woocommerce-checkout .bg-checkout-shipping__icon,
  body.woocommerce-order-received .bg-order-shipping__icon,
  .woocommerce-account .bg-order-shipping__icon {
    width: 38px !important;
    height: 38px !important;
  }
}

/* =========================================================
   BOOSTROGO STORE RC134 — SPOKOJNE HERO I MENU KATEGORII SAAS
========================================================= */
.bg-woo-shop-hero{
  grid-template-columns:minmax(0,1.55fr) minmax(240px,.45fr)!important;
  min-height:278px!important;
  padding:38px 42px!important;
}

.bg-woo-shop-hero h1{
  max-width:700px!important;
  font-family:Poppins,"Arial Rounded MT Bold","Trebuchet MS",system-ui,sans-serif!important;
  font-weight:950!important;
  letter-spacing:-.07em!important;
}

.bg-woo-shop-hero__actions{
  margin-top:25px!important;
}

.bg-woo-shop-hero__primary{
  min-height:52px!important;
  padding:0 23px!important;
  border-radius:17px!important;
}

.bg-woo-shop-categories{
  grid-template-columns:230px minmax(0,1fr)!important;
  gap:0!important;
  padding:0!important;
  scroll-margin-top:110px!important;
  overflow:hidden!important;
  border-radius:22px!important;
  background:#fff!important;
}

.bg-woo-shop-categories__head{
  padding:18px 20px!important;
  border-right:1px solid rgba(28,36,75,.09)!important;
  background:linear-gradient(145deg,#f7fbfe,#fff)!important;
}

.bg-woo-shop-categories__head span{
  font-size:17px!important;
  letter-spacing:-.025em!important;
}

.bg-woo-shop-categories__head small{
  margin-top:6px!important;
  font-size:10.5px!important;
}

.bg-woo-shop-categories__head a{
  display:inline-flex!important;
  margin-top:11px!important;
  color:#fb0444!important;
  font-size:10px!important;
  line-height:1.3!important;
  font-weight:900!important;
  text-decoration:none!important;
}

.bg-woo-shop-categories__list{
  display:flex!important;
  align-items:stretch!important;
  gap:0!important;
  min-width:0!important;
}

.bg-woo-shop-category{
  position:relative!important;
  display:flex!important;
  flex:1 1 0!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:9px!important;
  min-height:92px!important;
  padding:17px 14px!important;
  border:0!important;
  border-right:1px solid rgba(28,36,75,.08)!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  transform:none!important;
}

.bg-woo-shop-category:last-child{
  border-right:0!important;
}

.bg-woo-shop-category:after{
  content:""!important;
  position:absolute!important;
  left:14px!important;
  right:14px!important;
  bottom:0!important;
  height:4px!important;
  border-radius:999px 999px 0 0!important;
  background:transparent!important;
}

.bg-woo-shop-category:hover,
.bg-woo-shop-category.is-active{
  background:linear-gradient(180deg,#fff,#f7fbfe)!important;
}

.bg-woo-shop-category:hover:after,
.bg-woo-shop-category.is-active:after{
  background:#fb0444!important;
}

.bg-woo-shop-category__copy strong{
  overflow:visible!important;
  font-size:12px!important;
  line-height:1.22!important;
  white-space:normal!important;
}

.bg-woo-shop-category__copy small{
  display:block!important;
  margin-top:5px!important;
  color:rgba(28,36,75,.54)!important;
  font-size:9px!important;
  line-height:1.35!important;
}

.bg-woo-shop-category> b{
  display:inline-flex!important;
  flex:0 0 auto!important;
  min-width:24px!important;
  min-height:24px!important;
  align-items:center!important;
  justify-content:center!important;
  padding:5px 7px!important;
  border-radius:999px!important;
  background:#eef4f8!important;
  color:#1c244b!important;
}

.bg-woo-shop-category.is-coming> b{
  min-width:0!important;
  background:transparent!important;
  padding:0!important;
  font-size:8px!important;
}

@media(max-width:1180px){
  .bg-woo-shop-categories{grid-template-columns:1fr!important}
  .bg-woo-shop-categories__head{border-right:0!important;border-bottom:1px solid rgba(28,36,75,.09)!important}
}

@media(max-width:780px){
  .bg-woo-shop-hero{grid-template-columns:1fr!important;padding:28px 24px!important}
  .bg-woo-shop-hero__visual{display:none!important}
  .bg-woo-shop-categories__list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .bg-woo-shop-category{min-height:78px!important;border-bottom:1px solid rgba(28,36,75,.08)!important}
}

@media(max-width:520px){
  .bg-woo-shop-hero{padding:25px 19px!important}
  .bg-woo-shop-hero h1{font-size:clamp(38px,12vw,52px)!important}
  .bg-woo-shop-hero__primary{width:100%!important}
  .bg-woo-shop-categories__list{grid-template-columns:1fr!important}
  .bg-woo-shop-category{border-right:0!important}
}


/* =========================================================
   RC23 — CHECKOUT: TERMIN DOSTAWY + PUSTY WRAPPER WYSYŁKI
========================================================= */

/*
 * WooCommerce potrafi wyrenderować pusty .woocommerce-shipping-fields,
 * gdy adres wysyłki nie wymaga osobnej sekcji. Wcześniejszy styl karty
 * nadawał temu pustemu wrapperowi padding, tło i cień. Ukrywamy wyłącznie
 * wrapper, który naprawdę nie zawiera żadnego interaktywnego elementu.
 * Jeżeli pojawi się „Wyślij na inny adres?” albo pola wysyłki, sekcja
 * pozostaje normalnie widoczna i funkcjonalna.
 */
body.woocommerce-checkout:not(.woocommerce-order-received)
.woocommerce-shipping-fields:not(:has(#ship-to-different-address)):not(:has(.shipping_address)):not(:has(input)):not(:has(select)):not(:has(textarea)){
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Checkout ma nadal podawać konkretną datę, ale dopowiadamy krótko i UX-owo,
 * że przesyłka może wyjść wcześniej. Bez ponownego tłumaczenia ekonomii
 * produkcji i bez dokładania „21 dni” obok daty. */
body.woocommerce-checkout .bg-checkout-shipping__early{
  display: block !important;
  margin-top: 7px !important;
  padding: 8px 10px !important;
  border: 1px solid rgba(12, 163, 111, .18) !important;
  border-radius: 11px !important;
  background: rgba(16, 185, 129, .07) !important;
  color: #426c61 !important;
  font-size: 10px !important;
  line-height: 1.45 !important;
  font-weight: 700 !important;
}

body.woocommerce-checkout .bg-checkout-shipping__early b{
  color: #087a56 !important;
  font-weight: 950 !important;
}

@media (max-width: 620px){
  body.woocommerce-checkout .bg-checkout-shipping__early{
    margin-top: 6px !important;
    padding: 7px 9px !important;
    font-size: 9.5px !important;
  }
}


/* =========================================================
   BOOSTROGO COMMERCE RC34 — REGULAMIN SKLEPU / CHECKOUT
========================================================= */
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  margin:14px 0 16px !important;
  padding:15px 16px !important;
  border:1px solid rgba(28,36,75,.12) !important;
  border-radius:16px !important;
  background:linear-gradient(145deg,#fff,#f8fbfd) !important;
  box-shadow:0 10px 26px rgba(28,36,75,.05) !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text{
  margin:0 0 11px !important;
  color:rgba(28,36,75,.62) !important;
  font-size:11px !important;
  line-height:1.55 !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper p.form-row.validate-required{
  margin:0 !important;
  padding:0 !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox{
  display:flex !important;
  align-items:flex-start !important;
  gap:11px !important;
  margin:0 !important;
  color:#1c244b !important;
  font-size:12.5px !important;
  line-height:1.55 !important;
  font-weight:750 !important;
  cursor:pointer !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"]{
  flex:0 0 20px !important;
  width:20px !important;
  height:20px !important;
  margin:1px 0 0 !important;
  accent-color:#ef174b !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text{
  flex:1 1 auto !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper .woocommerce-terms-and-conditions-checkbox-text a{
  color:#ef174b !important;
  font-weight:900 !important;
  text-decoration:underline !important;
  text-decoration-thickness:1px !important;
  text-underline-offset:3px !important;
}

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper abbr.required{
  flex:0 0 auto !important;
  color:#ef174b !important;
  text-decoration:none !important;
}

@media (max-width:640px){
  body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
    padding:14px !important;
  }

  body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label.checkbox{
    font-size:12px !important;
  }
}


/* =========================================================
   BOOSTROGO STORE RC35 — REGULAMIN POD HERO
========================================================= */
.bg-woo-shop-terms{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:14px!important;
  width:100%!important;
  margin:-8px 0 16px!important;
  padding:13px 15px!important;
  border:1px solid rgba(28,36,75,.09)!important;
  border-radius:18px!important;
  background:
    radial-gradient(circle at 96% 0%,rgba(251,4,68,.06),transparent 33%),
    linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,248,251,.94))!important;
  box-shadow:0 12px 28px rgba(28,36,75,.045),inset 0 1px 0 rgba(255,255,255,.95)!important;
}
.bg-woo-shop-terms__icon{
  display:grid!important;
  place-items:center!important;
  width:44px!important;
  height:44px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#1c244b,#303d79)!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:950!important;
}
.bg-woo-shop-terms__copy{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important}
.bg-woo-shop-terms__copy small{
  color:#fb0444!important;
  font-size:9px!important;
  line-height:1!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
}
.bg-woo-shop-terms__copy strong{color:#1c244b!important;font-size:13px!important;line-height:1.2!important;font-weight:950!important}
.bg-woo-shop-terms__copy>span{color:#6b7592!important;font-size:10.5px!important;line-height:1.45!important;font-weight:700!important}
.bg-woo-shop-terms__link{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:40px!important;
  padding:0 14px!important;
  border:1px solid rgba(28,36,75,.12)!important;
  border-radius:12px!important;
  background:#fff!important;
  color:#1c244b!important;
  font-size:10px!important;
  line-height:1!important;
  font-weight:900!important;
  text-decoration:none!important;
  white-space:nowrap!important;
  box-shadow:0 7px 18px rgba(28,36,75,.045)!important;
}
.bg-woo-shop-terms__link:hover{border-color:rgba(251,4,68,.28)!important;color:#fb0444!important;transform:translateY(-1px)!important}
@media(max-width:700px){
  .bg-woo-shop-terms{grid-template-columns:40px minmax(0,1fr)!important;gap:11px!important;margin:-6px 0 14px!important;padding:13px!important}
  .bg-woo-shop-terms__icon{width:40px!important;height:40px!important;border-radius:13px!important}
  .bg-woo-shop-terms__link{grid-column:1/-1!important;width:100%!important;margin-top:2px!important}
}


/* =========================================================
   RC140 — CENA W ZAWARTOŚCI PAKIETU + KOSZYK/VARIATION HOTFIX
========================================================= */

/* Cena jest częścią nagłówka karty pakietu, więc użytkownik widzi ją bez
   szukania osobnego modułu i niezależnie od stylów ceny motywu. */
body.single-product .bg-woo-package-contents__meta{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  min-width:0 !important;
}

body.single-product .bg-woo-package-contents__price{
  display:grid !important;
  align-content:center !important;
  justify-items:end !important;
  min-width:92px !important;
  min-height:44px !important;
  padding:7px 11px !important;
  border:1px solid rgba(251,4,68,.16) !important;
  border-radius:13px !important;
  background:linear-gradient(145deg,rgba(251,4,68,.075),rgba(255,255,255,.92)) !important;
  box-shadow:0 8px 20px rgba(251,4,68,.07) !important;
  white-space:nowrap !important;
}

body.single-product .bg-woo-package-contents__price small,
body.single-product .bg-woo-package-contents__price strong{
  display:block !important;
  margin:0 !important;
}

body.single-product .bg-woo-package-contents__price small{
  color:rgba(28,36,75,.55) !important;
  font-size:8px !important;
  line-height:1 !important;
  font-weight:850 !important;
  letter-spacing:.055em !important;
  text-transform:uppercase !important;
}

body.single-product .bg-woo-package-contents__price strong,
body.single-product .bg-woo-package-contents__price .amount{
  color:var(--bg-woo-red) !important;
  font-size:16px !important;
  line-height:1.15 !important;
  font-weight:950 !important;
  letter-spacing:-.035em !important;
}

/* Zawartość pakietu jest już pokazana nad wariantami. Woo potrafi po wyborze
   rozmiaru wyrenderować tę samą kartę ponownie jako description wariantu. */
body.single-product form.variations_form .single_variation_wrap .bg-woo-package-contents{
  display:none !important;
}

body.single-product form.variations_form .woocommerce-variation-description:empty{
  display:none !important;
  margin:0 !important;
  padding:0 !important;
}

/* Podsumowanie koszyka: adres wysyłki musi zawijać się w obrębie prawej kolumny,
   zamiast wypychać kartę poza ekran na wąskich szerokościach. */
body.woocommerce-cart .cart_totals table.shop_table{
  width:100% !important;
  table-layout:fixed !important;
}

body.woocommerce-cart .cart_totals table.shop_table th,
body.woocommerce-cart .cart_totals table.shop_table td,
body.woocommerce-cart .cart_totals .woocommerce-shipping-totals td,
body.woocommerce-cart .cart_totals .woocommerce-shipping-destination,
body.woocommerce-cart .cart_totals .woocommerce-shipping-destination strong,
body.woocommerce-cart .cart_totals .shipping-calculator-button{
  min-width:0 !important;
  max-width:100% !important;
  white-space:normal !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-destination{
  display:block !important;
  width:100% !important;
  margin:8px 0 2px !important;
  line-height:1.45 !important;
}

body.woocommerce-cart .cart_totals .woocommerce-shipping-destination strong{
  display:inline !important;
}

body.woocommerce-cart .cart_totals .shipping-calculator-button{
  display:inline-block !important;
  margin-top:4px !important;
}

@media (max-width:620px){
  body.single-product .bg-woo-package-contents__head{
    grid-template-columns:40px minmax(0,1fr) !important;
  }

  body.single-product .bg-woo-package-contents__meta{
    grid-column:1/-1 !important;
    width:100% !important;
    justify-content:space-between !important;
    align-items:stretch !important;
    flex-wrap:wrap !important;
  }

  body.single-product .bg-woo-package-contents__package{
    flex:1 1 auto !important;
    grid-column:auto !important;
    justify-self:auto !important;
    max-width:none !important;
    margin-top:0 !important;
  }

  body.single-product .bg-woo-package-contents__price{
    flex:0 0 auto !important;
    min-width:108px !important;
  }

  body.woocommerce-cart .cart_totals table.shop_table th{
    width:40% !important;
    padding-right:10px !important;
  }

  body.woocommerce-cart .cart_totals table.shop_table td{
    width:60% !important;
    padding-left:10px !important;
  }

  body.woocommerce-cart .cart_totals .woocommerce-shipping-destination{
    font-size:12.5px !important;
  }
}
\n\n/* =========================================================\n   BOOSTROGO COMMERCE RC44 — CHECKOUT PAYMENT UX POLISH\n   Delikatnie porządkuje prawą kolumnę finalizacji i usuwa\n   wizualny efekt pustego wrappera nad zgodą regulaminową.\n========================================================= */\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment{\n  position:relative !important;\n  overflow:hidden !important;\n  margin-top:16px !important;\n  border:1px solid rgba(28,36,75,.11) !important;\n  border-radius:20px !important;\n  background:linear-gradient(155deg,rgba(239,248,251,.98),rgba(248,245,250,.98)) !important;\n  box-shadow:0 14px 34px rgba(28,36,75,.07) !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment::before{\n  content:"PŁATNOŚĆ" !important;\n  display:block !important;\n  padding:14px 16px 0 !important;\n  color:#fb0444 !important;\n  font-size:9px !important;\n  line-height:1 !important;\n  font-weight:950 !important;\n  letter-spacing:.09em !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods{\n  margin:0 !important;\n  padding:10px 14px 14px !important;\n  border:0 !important;\n  background:transparent !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods > li.wc_payment_method{\n  margin:0 !important;\n  padding:13px 13px 12px !important;\n  border:1px solid rgba(28,36,75,.09) !important;\n  border-radius:15px !important;\n  background:rgba(255,255,255,.82) !important;\n  box-shadow:0 7px 20px rgba(28,36,75,.035) !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods > li.wc_payment_method + li.wc_payment_method{\n  margin-top:9px !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods > li.wc_payment_method > input[type="radio"]{\n  accent-color:#fb0444 !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods > li.wc_payment_method > label{\n  color:#1c244b !important;\n  font-size:12.5px !important;\n  line-height:1.35 !important;\n  font-weight:900 !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment .payment_box{\n  margin:10px 0 0 !important;\n  padding:12px 13px !important;\n  border:1px solid rgba(28,36,75,.07) !important;\n  border-radius:12px !important;\n  background:#fff !important;\n  color:rgba(28,36,75,.66) !important;\n  box-shadow:none !important;\n  font-size:11.5px !important;\n  line-height:1.55 !important;\n}\n\n/* Nie stylujemy pustego natywnego wrappera Woo jako osobnej białej karty.\n   JS z integracji regulaminu usuwa go także po odświeżeniu checkoutu AJAX. */\nbody.woocommerce-checkout:not(.woocommerce-order-received) .woocommerce-terms-and-conditions-wrapper:not(:has(input[type="checkbox"])):not(:has(a)):not(:has(button)){\n  margin:0 !important;\n  padding:0 !important;\n  border:0 !important;\n  background:transparent !important;\n  box-shadow:none !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment .place-order{\n  margin:0 !important;\n  padding:14px !important;\n  border-top:1px solid rgba(28,36,75,.08) !important;\n  background:rgba(255,255,255,.28) !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment .woocommerce-terms-and-conditions-wrapper:has(input[type="checkbox"]){\n  margin:0 0 12px !important;\n  padding:13px 14px !important;\n  border:1px solid rgba(251,4,68,.12) !important;\n  border-radius:14px !important;\n  background:linear-gradient(145deg,#fff,rgba(255,246,249,.88)) !important;\n  box-shadow:0 7px 20px rgba(28,36,75,.035) !important;\n}\n\nbody.woocommerce-checkout:not(.woocommerce-order-received) #payment #place_order{\n  width:100% !important;\n  min-height:54px !important;\n  border-radius:14px !important;\n  box-shadow:0 10px 24px rgba(28,36,75,.11) !important;\n}\n\n@media (max-width:640px){\n  body.woocommerce-checkout:not(.woocommerce-order-received) #payment::before{\n    padding:13px 13px 0 !important;\n  }\n\n  body.woocommerce-checkout:not(.woocommerce-order-received) #payment ul.payment_methods,\n  body.woocommerce-checkout:not(.woocommerce-order-received) #payment .place-order{\n    padding-left:12px !important;\n    padding-right:12px !important;\n  }\n}\n
/* RC58 — mocniejszy claim na karcie pojedynczego produktu. */
body.single-product .bg-woo-product-stage.is-store p{
  margin-top:14px!important;
  color:#3f4b6b!important;
  font-size:18px!important;
  line-height:1.35!important;
  font-weight:800!important;
  letter-spacing:.005em!important;
}
