.submenu-col li a,
.submenu-right li a {
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
  white-space: nowrap;
}
#review_form .stars a:before,
.img-lightbox,
.prod-gallery__img {
  inset: 0;
}
#order_review,
#payment,
.extra-grid .product,
.sc-wa-input,
.shop-container,
.shop-sidebar,
.single-product .buybox .cart .quantity input.qty,
.sticky-contact,
.woocommerce-checkout .col2-set,
form.woocommerce-checkout {
  box-sizing: border-box;
}
.main-nav .menu,
.top-nav ul {
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.about-section,
.site-footer,
body {
  font-family: sans-serif;
}
.sc-wa-send:hover,
.sticky-contact .sc-row--wa:hover {
  filter: brightness(0.95);
}
body {
  background: #f9f9f9;
  color: #222;
  margin: 0;
}
.container {
  margin: 0 auto;
  max-width: 1200px;
  padding: 20px;
}
.site-footer,
.site-header {
  background: #333;
  color: #fff;
  padding: 20px 0;
  text-align: center;
}
.product,
.widget {
  background: #fff;
  border: 1px solid #ddd;
  padding: 15px;
}
.footer-column a,
.site-footer a,
.site-header a {
  color: #fff;
  text-decoration: none;
}
.main-nav .menu {
  display: flex;
  justify-content: center;
}
.shop-products {
  display: grid;
  flex: 1;
  gap: 30px;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
}
.category-nav,
.header-grid,
.search-bar,
.top-nav,
.top-nav ul {
  display: flex;
}
.product {
  transition: box-shadow 0.2s;
}
.product:hover {
  box-shadow: 0 0 10px #0000001a;
}
.widget {
  margin-bottom: 20px;
}
h1,
h2,
h3 {
  margin-top: 0;
}
.topbar {
  background: #e9e9e9;
  font-size: 20px;
}
.top-nav {
  align-items: center;
  justify-content: space-between;
}
.top-nav a {
  color: #555;
  text-decoration: none;
}
.top-nav .phone {
  color: #b3003c;
  font-weight: 700;
}
.main-header {
  background: #fff;
  border-bottom: 1px solid #e0e0e0;
  padding: 20px 0;
}
.header-grid {
  align-items: center;
  flex-wrap: wrap;
  gap: 30px;
  justify-content: space-between;
}
.logo img {
  height: 130px;
}
.search-bar {
  flex: 1;
  gap: 10px;
  max-width: 600px;
}
.search-bar input {
  border: 1px solid #ccc;
  flex: 1;
  padding: 10px;
}
.search-bar select {
  background: #fff;
  border: 1px solid #ccc;
  padding: 10px;
}
.search-bar button {
  background: #b3003c;
  border: none;
  color: #fff;
  cursor: pointer;
  padding: 10px 20px;
}
.header-icons a,
.menu-item > a {
  color: #333;
  text-decoration: none;
  white-space: nowrap;
}
.header-icons {
  align-items: center;
  display: flex;
  font-size: 14px;
  gap: 15px;
}
.category-menu-wrapper {
  border-bottom: 1px solid #e0e0e0;
  padding: 12px 0;
}
.category-menu-scroll {
  margin: 0 auto;
  max-width: 1200px;
  overflow: visible;
}
.category-nav {
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  list-style: none;
  margin: 0;
  padding: 0 15px;
}
.menu-item {
  flex: 0 1 auto;
}
.menu-item > a {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  display: inline-block;
  font-size: clamp(14px, 1.5vw, 15px);
  font-weight: 600;
  padding: 8px clamp(10px, 2vw, 16px);
  transition: 0.25s;
}
.menu-item:hover > a,
.woocommerce-account .woocommerce-MyAccount-navigation li a:hover,
.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,
.woocommerce-pagination ul.page-numbers li .current {
  background: #a80036;
  border-color: #a80036;
  color: #fff;
}
.extra-slider,
.has-sub,
.myCustomSwiper,
.search-bar {
  position: relative;
}
.about-section .container,
.footer-container {
  margin: 0 auto;
  max-width: 1200px;
}
@media (min-width: 1300px) {
  .category-nav {
    flex-wrap: nowrap;
    justify-content: center;
  }
}
.site-footer {
  background: #9b0028;
  color: #fff;
  padding: 50px 20px;
}
.footer-container {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
  justify-content: space-between;
}
.footer-container a,
.footer-container a:focus,
.footer-container a:hover {
  text-decoration: none !important;
}
.footer-column {
  flex: 1 1 180px;
  min-width: 160px;
}
.footer-column h4 {
  font-size: 14px;
  font-weight: 700;
  margin-bottom: 15px;
  text-transform: uppercase;
}
.footer-column ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.footer-column ul li {
  font-size: 14px;
  margin-bottom: 10px;
}
.footer-column a:hover {
  text-decoration: underline;
}
.footer-socials a {
  color: #fff;
  font-size: 18px;
  margin-right: 10px;
}
.about-section h2,
.shop-title {
  font-size: 28px;
  font-weight: 700;
}
.footer-column img {
  height: auto;
  margin-top: 10px;
  max-width: 100%;
}
.about-section {
  background: #fff;
  color: #222;
  padding: 60px 20px;
}
.about-section h2 {
  color: #9b0028;
  margin-bottom: 20px;
}
.about-section p {
  font-size: 16px;
  line-height: 1.7;
}
.myCustomSwiper {
  background: 0 0;
  height: 67vh;
  margin: 0 auto;
  min-height: 320px;
  overflow: hidden;
  width: min(1200px, 90%);
}
.myCustomSwiper .swiper-wrapper {
  display: flex;
  height: 100%;
  width: 100%;
  will-change: transform;
}
.myCustomSwiper .swiper-slide {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 100%;
  justify-content: center;
  width: 100%;
}
.myCustomSwiper .swiper-slide img {
  display: block;
  height: auto;
  max-height: 100%;
  max-width: 100%;
  object-fit: contain;
  width: auto;
}
.myCustomSwiper .swiper-button-next,
.myCustomSwiper .swiper-button-prev {
  background: #0000001a;
  border-radius: 50%;
  color: #000;
  cursor: pointer;
  display: grid;
  height: 40px;
  place-items: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  user-select: none;
  width: 40px;
  z-index: 10;
}
.myCustomSwiper .swiper-button-prev {
  left: 10px;
}
.myCustomSwiper .swiper-button-next {
  right: 10px;
}
.swiper-button-next:after,
.swiper-button-prev:after {
  color: #000;
  font-family: Arial, sans-serif;
  font-size: 30px;
  font-weight: 700;
}
.swiper-button-prev:after {
  content: "‹";
}
.swiper-button-next:after {
  content: "›";
}
.myCustomSwiper .swiper-pagination {
  bottom: 10px;
  display: flex;
  gap: 8px;
  justify-content: center;
  left: 0;
  position: absolute;
  right: 0;
  z-index: 10;
}
.myCustomSwiper .swiper-pagination-bullet {
  background: #00000033;
  border-radius: 999px;
  height: 8px;
  opacity: 1;
  transition: transform 0.2s, background 0.2s;
  width: 8px;
}
.myCustomSwiper .swiper-pagination-bullet-active {
  background: #000;
  transform: scale(1.2);
}
@media (max-width: 900px) {
  .myCustomSwiper {
    height: 60vh;
    width: 100%;
  }
}
.shop-main {
  background: #fff;
  padding: 40px 0;
}
.shop-title {
  color: #333;
  margin-bottom: 30px;
  text-align: center;
}
.product-right,
td.product-total {
  text-align: right;
}
.product-row {
  align-items: center;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  display: flex;
  gap: 20px;
  margin-bottom: 30px;
  padding: 20px;
}
.product-left img {
  display: block;
  height: auto;
  max-height: 120px;
  max-width: 120px;
  object-fit: contain;
  width: auto;
}
.product-middle {
  flex: 1;
}
.extra-grid .price,
.product-title,
.woocommerce-cart .cart_totals .order-total .woocommerce-Price-amount,
.woocommerce-checkout-review-order-table tfoot th,
.woocommerce-pagination ul.page-numbers li .next,
.woocommerce-pagination ul.page-numbers li .prev,
td.product-name {
  font-weight: 700;
}
.product-meta {
  color: #666;
  font-size: 13px;
  margin-bottom: 5px;
}
/* wspólne style dla wszystkich */
.product-stock {
    font-size: 13px;
    margin-top: 5px;
}

/* produkty dostępne – zielone */
.product-stock:not(.out-of-stock) {
    color: green;
}

/* produkty niedostępne – czerwone */
.product-stock.out-of-stock {
    color: #d40000;
}

.product-right {
  min-width: 220px;
}
.product-conversion {
  color: #333;
  font-size: 13px;
  margin-bottom: 10px;
}
.product-row .button {
  background: #b3003c;
  border: none;
  border-radius: 4px;
  color: #fff;
  cursor: pointer;
  font-size: 14px;
  padding: 10px 16px;
  text-transform: uppercase;
}
.product-row .button:hover {
  background: #900030;
}
.shop-sidebar {
  background: #f8f6f6;
  border: none;
  border-radius: 4px;
  margin-bottom: 30px;
  max-width: 360px;
  min-width: 280px;
  overflow: visible;
  padding: 20px;

  top: 96px;
  width: 30%;
  z-index: 3;
}
.shop-sidebar .product-categories,
.shop-sidebar .widget_product_categories {
  max-height: calc(100vh - 112px);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  padding-bottom: 10px;
  position: relative;
  z-index: 2;
}
.shop-sidebar .sidebar-shortcode {
  position: static !important;
  z-index: 1;
}
.admin-bar .shop-sidebar .product-categories,
.admin-bar .shop-sidebar .widget_product_categories {
  max-height: calc(100vh - 144px);
}
.content-area,
.shop-layout,
.shop-sidebar-wrapper {
  overflow: visible !important;
}
@media (max-width: 991px) {
  .shop-sidebar {
    position: static;
    width: 100%;
  }
  .shop-sidebar .product-categories,
  .shop-sidebar .widget_product_categories {
    max-height: none;
    overflow: visible;
  }
}
.cart-drawer,
.cart-overlay {
  height: 100%;
  position: fixed;
  top: 0;
}
.shop-sidebar h3 {
  color: #333;
  font-size: 16px;
  font-weight: 700;
  margin-bottom: 15px;
}

.shop-wrapper {
  gap: 40px;
}
.shop-container,
.shop-wrapper {
  align-items: flex-start;
  display: flex;
}
.shop-container {
  gap: 30px;
  max-width: 2000px;
  padding: 40px;
  width: 100%;
}
.shop-container .woocommerce-breadcrumb,
.woocommerce-checkout-review-order-table thead,
.woocommerce-form-coupon-toggle {
  display: none;
}
.shop-content {
  width: 70%;
}
.woocommerce-ordering {
  display: inline-block;
}
.product-page {
  align-items: flex-start;
  display: grid;
  gap: 40px;
  grid-template-columns: 1fr 1fr;
  margin: 40px 0;
}
.single-product-main {
  margin-bottom: 100px;
  margin-top: 100px;
}
.product-image-section {
  align-items: center;
  display: flex;
  justify-content: center;
}
.product-image-section,
.product-img-wrapper {
  margin: 0 auto;
  max-width: 720px;
}
.product-img-wrapper {
  align-items: center;
  display: flex;
  justify-content: center;
  max-height: min(60vh, 560px);
  overflow: hidden;
}
.product-image-section img,
.product-img-wrapper img,
.woocommerce-product-gallery__image img,
.woocommerce-product-gallery__wrapper img,
img[height],
img[width] {
  display: block;
  height: auto !important;
  max-height: 100% !important;
  max-width: 100% !important;
  object-fit: contain !important;
  width: auto !important;
}
.archive .product-price,
.woocommerce-page .product-price {
  color: #000;
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 10px;
  padding-bottom: 20px;
}
.single_add_to_cart_button {
  background: #b40030;
  border: none;
  color: #fff;
  cursor: pointer;
  margin-top: 10px;
  padding: 10px 20px;
  text-decoration: none;
}
.product-tabs-section {
  margin-top: 60px;
}
.product-breadcrumbs {
  color: #666;
  font-size: 14px;
}
.product-breadcrumbs a {
  color: #b40030;
  text-decoration: none;
}
a {
  color: inherit;
}
a,
a:hover {
  text-decoration: none;
}
a:hover {
  color: #000;
}
.product-content-wrapper {
  margin: 0 auto;
  max-width: 1280px;
  width: 80%;
}
.woocommerce-tabs {
  margin-top: 40px;
}
.woocommerce-tabs .wc-tabs {
  border-bottom: 2px solid #ddd;
  display: flex;
  gap: 20px;
  list-style: none;
  margin-bottom: 20px;
  padding-left: 0;
}
#review_form .comment-form-rating label,
.extra-grid.products,
.woocommerce-mini-cart__buttons .button,
.woocommerce-pagination ul.page-numbers li,
.woocommerce-tabs .wc-tabs li {
  margin: 0;
}
.woocommerce-tabs .wc-tabs li a {
  border-bottom: 3px solid transparent;
  color: #444;
  display: block;
  font-weight: 700;
  padding: 10px 16px;
  text-decoration: none;
}
.woocommerce-tabs .wc-tabs li a:hover,
.woocommerce-tabs .wc-tabs li.active a {
  border-bottom-color: #b40030;
  color: #b40030;
}
.cart-overlay {
  background: #00000080;
  left: 0;
  opacity: 0;
  transition: 0.3s;
  visibility: hidden;
  width: 100%;
  z-index: 999;
}
.cart-drawer {
  background: #fff;
  box-shadow: -2px 0 10px #0003;
  display: flex;
  flex-direction: column;
  max-width: 400px;
  right: -100%;
  transition: right 0.3s;
  width: 30%;
  z-index: 1000;
}
.cart-drawer-header {
  align-items: center;
  border-bottom: 1px solid #ddd;
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
  padding: 16px;
}
.cart-drawer-content {
  flex: 1;
  overflow-y: auto;
  padding: 16px;
}
.cart-close {
  background: 0 0;
  border: none;
  cursor: pointer;
  font-size: 24px;
}
.cart-drawer.active,
.cart-overlay.active {
  opacity: 1;
  visibility: visible;
}
.cart-drawer.active {
  right: 0;
}
.cart-drawer .button,
.cart-drawer a.button {
  background-color: #a3002a;
  border: none;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-weight: 700;
  margin: 10px 5px 0 0;
  padding: 10px 20px;
  text-align: center;
  text-decoration: none;
  transition: background-color 0.3s;
}
.cart-drawer .button:hover,
.cart-drawer a.button:hover {
  background-color: #7e0021;
  color: #fff;
}
.cart-drawer-footer {
  border-top: 1px solid #eee;
  padding: 16px;
  text-align: right;
}
img.attachment-woocommerce_thumbnail {
  height: 150px !important;
  object-fit: contain;
  width: 150px !important;
}
.woocommerce-mini-cart-item {
  align-items: center;
  border-bottom: 1px solid #ddd;
  column-gap: 12px;
  display: grid;
  grid-template-columns: auto 100px auto;
  grid-template-rows: auto auto;
  list-style: none;
  margin-bottom: 20px;
  padding-bottom: 12px;
  row-gap: 4px;
}
.woocommerce-mini-cart-item img {
  border-radius: 4px;
  grid-column: 2;
  grid-row: 1;
  height: auto;
  max-width: 100px;
  object-fit: contain;
  padding-bottom: 20px;
  width: 100%;
}
.woocommerce-mini-cart-item .remove {
  color: #a3002a;
  font-size: 18px;
  font-weight: 700;
  grid-column: 1;
  grid-row: 1;
  text-decoration: none;
}
.sticky-contact .sc-close:hover,
.woocommerce-mini-cart-item .remove:hover {
  color: #000;
}
.woocommerce-mini-cart-item .quantity {
  color: #444;
  font-size: 15px;
  grid-column: 3;
  grid-row: 1;
  white-space: nowrap;
}
.woocommerce-mini-cart-item .woocommerce-Price-amount {
  color: #000;
  font-weight: 700;
  margin-left: 5px;
}
.woocommerce-mini-cart-item > a:not(.remove):nth-of-type(2) {
  grid-column: 1 / span 3;
  grid-row: 2;
  line-height: 1.4;
  word-break: break-word;
}
.cart-container {
  margin: 0 auto;
  max-width: 1200px;
  padding: 40px 0;
  width: 80%;
}
#review_form select#rating,
#reviews .comment_container .avatar,
.cart-collaterals,
.extra-products li.product .onsale,
.woocommerce .coupon,
.woocommerce-cart .actions .button,
.woocommerce-message {
  display: none !important;
}
.woocommerce-cart input.qty {
  text-align: center;
  width: 60px;
}
.woocommerce td.product-price,
.woocommerce td.product-subtotal {
  color: #111;
  font-size: 16px;
  font-weight: 700;
}
.site-content .cart-page {
  margin-top: 50px;
}
.cart-page-layout {
  align-items: flex-start;
  display: flex;
  gap: 4rem;
  margin: 0 auto;
  max-width: 1500px;
  min-height: 700px;
  padding: 2rem 1rem;
}
.woocommerce-cart .cart_totals .order-total {
  align-items: baseline;
  display: flex;
  gap: 10px;
}
.woocommerce-cart .cart_totals .order-total td,
.woocommerce-cart .cart_totals .order-total th {
  display: block;
  margin: 0;
  padding: 0;
}
.wc-proceed-to-checkout {
  margin-top: 10px;
}
.cart-products {
  flex: 1 1 68%;
  min-width: 400px;
}
.woocommerce-cart-form table.shop_table {
  background: 0 0;
  border: none;
  border-collapse: collapse;
  font-size: 16px;
  width: 100%;
}
.woocommerce-cart-form table.shop_table tr {
  border-bottom: 1px solid #eee;
}
.woocommerce-cart-form table.shop_table td,
.woocommerce-cart-form table.shop_table th {
  border: none;
  padding: 1rem 0.75rem;
  text-align: left;
  vertical-align: middle;
}
.woocommerce td.product-name {
  color: #333;
  font-weight: 500;
}
.woocommerce-cart-form .product-thumbnail img {
  border-radius: 6px;
  height: auto;
  width: 60px;
}
.cart-page .woocommerce a.remove {
  background-image: url('data:image/svg+xml;utf8,<svg fill="black" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 6h18v2H3V6zm2 3h14l-1.5 12h-11L5 9zm5 2v8h2v-8H10zm4 0v8h2v-8h-2z"/></svg>');
  background-repeat: no-repeat;
  background-size: cover;
  display: inline-block;
  font-size: 0;
  height: 24px;
  width: 24px;
}
.cart-summary {
  background-color: #fff;
  border-radius: 8px;
  box-shadow: 0 2px 12px #0000000d;
  display: flex;
  flex: 1 1 30%;
  flex-direction: column;
  font-size: 1rem;
  gap: 1rem;
  line-height: 2;
  min-width: 300px;
  padding: 2rem;
}
.cart-summary .shop_table {
  border: none;
  width: 100%;
}
.cart-summary .shop_table td,
.cart-summary .shop_table th {
  font-weight: 500;
  padding: 0.25rem 0;
  text-align: left;
}
.cart-summary .shop_table td {
  color: #111;
  font-weight: 700;
}
.cart-summary .order-total strong {
  display: inline-block;
  font-weight: 700;
  margin-top: 0.5rem;
}
.cart-summary .button {
  margin-top: 1rem;
  text-align: center;
  width: 100%;
}
.woocommerce .button,
.woocommerce-page .button {
  background-color: #a80036;
  border: none;
  border-radius: 6px;
  color: #fff !important;
  cursor: pointer;
  font-weight: 700;
  padding: 12px 20px;
  text-transform: uppercase;
  transition: background-color 0.2s;
}
.woocommerce .quantity {
  align-items: center;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  display: flex;
  overflow: hidden;
  width: fit-content;
}
.woocommerce .quantity input.qty {
  appearance: textfield;
  background-color: #fff;
  border: none;
  color: #000;
  font-size: 16px;
  height: 40px;
  text-align: center;
  width: 50px;
}
.single-product .buybox .cart input.qty,
.woocommerce .quantity input.qty[type="number"] {
  -moz-appearance: textfield;
}
.woocommerce .quantity .minus,
.woocommerce .quantity .plus {
  align-items: center;
  background-color: #fff;
  border: none;
  color: #000;
  cursor: pointer;
  display: flex;
  font-size: 20px;
  font-weight: 700;
  height: 40px;
  justify-content: center;
  user-select: none;
  width: 40px;
}
.woocommerce .quantity input.qty::-webkit-inner-spin-button,
.woocommerce .quantity input.qty::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
:root {
  --primary-color: #a80036;
  --primary-color-light: #a8003630;
  --background-color: #fff;
  --text-color: #333;
}
form.woocommerce-checkout {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
@media (min-width: 980px) {
  .woocommerce-checkout .order-right {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    justify-content: flex-start;
  }
  .woocommerce-checkout .order-right > * {
    flex-shrink: 0;
  }
  .woocommerce-checkout .form-row.place-order {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
  .woocommerce-checkout #payment {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
  }
  .woocommerce-checkout .wc_payment_methods,
  .woocommerce-checkout .woocommerce-info {
    margin-bottom: 0 !important;
  }
}
#order_review,
#payment,
.woocommerce-checkout .col2-set {
  background: #fff;
  border-radius: 1em;
  box-shadow: 0 0.5em 2em #0000000d;
  padding: 2rem;
}
.woocommerce form .form-row {
  margin-bottom: 1.5rem;
}
.woocommerce form .form-row label {
  color: var(--text-color);
  display: block;
  font-size: 12px;
  font-weight: 600;
  margin-bottom: 0.5em;
  text-transform: uppercase;
}
input[type="email"],
input[type="password"],
input[type="tel"],
input[type="text"],
select,
textarea {
  background: #fff;
  border: 1px solid #d9d9d9;
  border-radius: 6px;
  color: #111;
  font-size: 14px;
  height: 3em;
  padding: 0 1em;
  width: 100%;
}
input:focus,
select:focus,
textarea:focus {
  border-color: var(--primary-color);
  outline: 0;
}
.select2-selection {
  border-color: #d9d9d9 !important;
  border-radius: 6px !important;
  height: 3em !important;
}
.select2-selection__rendered {
  line-height: 3em !important;
  padding-left: 1em !important;
}
.woocommerce-checkout-review-order-table {
  border: none;
  color: var(--text-color);
  font-size: 14px;
  width: 100%;
}
.woocommerce-checkout-review-order-table tbody {
  display: table-row-group;
}
tr.cart_item:nth-child(odd) {
  background: #f7f8fa;
}
tr.cart_item:nth-child(2n) {
  background: #fff;
}
.woocommerce-checkout .order-total {
  background: var(--primary-color-light);
  color: var(--primary-color);
}
#place_order {
  background-color: var(--primary-color);
  border: none;
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  font-weight: 700;
  padding: 1em;
  text-transform: uppercase;
  transition: background-color 0.3s;
  width: 100%;
}
#place_order:hover {
  background-color: #8a002c;
  color: #fff;
}
.woocommerce-error,
.woocommerce-info,
.woocommerce-message {
  background: var(--background-color);
  border: none;
  border-radius: 6px;
  color: var(--text-color);
  padding: 1em;
}
#payment {
  background: var(--background-color);
  border-radius: 6px;
}
#payment .payment_box {
  background: #fff;
  border-radius: 6px;
  margin-top: 1em;
  padding: 1em;
}
form.checkout_coupon {
  background: #fff;
  border-radius: 6px;
  margin-top: 2em;
  padding: 2em;
}
form.woocommerce-checkout {
  margin: 0 auto;
  max-width: 1200px;
  padding: 2rem 0;
  width: 80%;
}
@media (max-width: 979px) {
  form.woocommerce-checkout {
    padding: 1rem;
    width: 100%;
  }
}
.cart-page .product-price {
  font-size: 16px;
}
.subcategory-row {
  display: flex;
  gap: 20px;
  margin-bottom: 40px;
  overflow-x: auto;
  padding: 20px 0;
  scrollbar-width: thin;
}
.subcategory-inline-tile,
.subcategory-tile {
  padding: 15px;
  text-align: center;
  text-decoration: none;
  transition: box-shadow 0.2s;
}
.subcategory-row::-webkit-scrollbar {
  height: 8px;
}
.subcategory-row::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border-radius: 4px;
}
.subcategory-tile {
  background: #fefefe;
  border: 1px solid #eee;
  border-radius: 8px;
  color: #000;
  flex: 0 0 auto;
  min-width: 180px;
  width: 180px;
}
.subcategory-tile:hover {
  box-shadow: 0 4px 12px #00000012;
}
.subcategory-tile img {
  height: 100px;
  margin-bottom: 10px;
  object-fit: contain;
  width: 100%;
}
.subcategory-tile h3 {
  font-size: 14px;
  font-weight: 600;
  margin: 0 0 5px;
}
.subcategory-tile .count {
  color: #666;
  font-size: 12px;
}
.subcategory-inline-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  margin-bottom: 30px;
}
.subcategory-inline-tile {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
  color: inherit;
  flex: 0 1 180px;
}
.subcategory-inline-tile:hover {
  box-shadow: 0 4px 10px #0000000d;
}
.subcategory-inline-tile img {
  margin-bottom: 10px;
  max-height: 120px;
  object-fit: contain;
  width: 100%;
}
.subcategory-inline-tile h3 {
  font-size: 14px;
  font-weight: 700;
  margin: 0 0 5px;
}
.subcategory-inline-tile span {
  color: #666;
  font-size: 13px;
}
.woocommerce-pagination ul.page-numbers {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0;
}
.woocommerce-pagination ul.page-numbers li a,
.woocommerce-pagination ul.page-numbers li span {
  border: 1px solid #ddd;
  border-radius: 4px;
  color: #222;
  display: inline-block;
  font-weight: 600;
  padding: 8px 14px;
  text-decoration: none;
  transition: 0.2s;
}
.woocommerce-pagination ul.page-numbers li a:hover {
  background: #fff;
  border-color: #ccc;
  color: #000;
}
.woocommerce-pagination {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}
.cart-drawer .woocommerce-mini-cart-item .quantity {
  background: 0 0;
  border: none !important;
  box-shadow: none;
  padding: 0;
}
.woocommerce-mini-cart__buttons,
.woocommerce-mini-cart__total {
  display: flex;
  gap: 10px;
  justify-content: center;
}
.search-suggest {
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 8px;
  box-shadow: 0 6px 20px rgba(0, 0, 0, 0.06);
  left: 0;
  max-height: 380px;
  overflow: auto;
  padding: 6px 0;
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 2000;
}
.search-suggest .item {
  align-items: center;
  color: #222;
  display: grid;
  gap: 10px;
  grid-template-columns: 48px 1fr auto;
  padding: 8px 12px;
  text-decoration: none;
}
.search-suggest .item:hover,
.search-suggest .item[aria-selected="true"] {
  background: #f7f7f7;
}
.search-suggest .thumb img {
  border-radius: 4px;
  height: 48px;
  object-fit: contain;
  width: 48px;
}
.card,
.product-card {
  border: 1px solid #eee;
}
.search-suggest .title {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
}
.search-suggest .price {
  font-size: 13px;
  white-space: nowrap;
}
.home-section {
  background: #fff;
  padding: 50px 0;
}
.home-section:not(:first-of-type) {
  border-top: 1px solid #eee;
}
.home-section__head {
  align-items: baseline;
  display: flex;
  gap: 20px;
  justify-content: space-between;
  margin-bottom: 20px;
}
.home-section__title {
  color: #333;
  font-size: 24px;
  font-weight: 800;
  margin: 0;
}
.home-section__more {
  color: #a80036;
  font-weight: 700;
  text-decoration: none;
}
.home-section__more:hover {
  color: #7e0021;
}
.home-products-grid {
  display: grid;
  gap: 24px;
  grid-auto-rows: 1fr;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
}
.product-card {
  background: #fff;
  border-radius: 8px;
  padding: 14px;
  transition: box-shadow 0.2s, transform 0.2s;
}
.product-card:hover {
  box-shadow: 0 8px 24px #00000012;
  transform: translateY(-2px);
}
.product-card__thumb {
  aspect-ratio: 1/1;
  background: #fafafa;
  border-radius: 6px;
  display: block;
  margin-bottom: 10px;
  overflow: hidden;
  width: 100%;
}
.product-card__thumb img {
  height: 100%;
  object-fit: contain;
  width: 100%;
}
.product-card__title {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.35;
  margin: 6px 0 8px;
  min-height: 2.7em;
}
.product-card__price {
  color: #111;
  font-size: 16px;
  font-weight: 800;
  margin-bottom: 10px;
}
.product-card__cta .button {
  background: #a80036;
  border: none;
  border-radius: 6px;
  color: #fff !important;
  cursor: pointer;
  font-weight: 800;
  padding: 10px 14px;
  text-transform: uppercase;
  transition: background 0.2s;
  width: 100%;
}
.about-cta .button:hover,
.product-card__cta .button:hover {
  background: #8a002c;
}
@media (max-width: 600px) {
  .myCustomSwiper {
    height: 50vh;
  }
  .myCustomSwiper .swiper-button-next,
  .myCustomSwiper .swiper-button-prev {
    height: 34px;
    width: 34px;
  }
  .woocommerce-mini-cart-item {
    grid-template-columns: auto 80px auto;
  }
  .home-section__title {
    font-size: 20px;
  }
}
.home-products-grid .product-card {
  display: flex;
  flex-direction: column;
}
.cart-toggle,
.cart-toggle .cart-icon {
  display: inline-flex;
}
.home-products-grid .product-card__cta {
  margin-top: auto;
}
.home-products-grid .product-card__cta .add_to_cart_button,
.home-products-grid .product-card__cta .added_to_cart,
.home-products-grid .product-card__cta .button {
  border-radius: 6px;
  display: block !important;
  line-height: 1.2 !important;
  min-height: 20px;
  text-align: center;
  width: 100% !important;
}
.home-main-title {
  color: #9b0028;
  font-size: 36px;
  font-weight: 800;
  margin: 10px 0 0;
  text-align: center;
}
.cart--ghost,
.cart-toggle .cart-count {
  background: #fff;
  color: var(--primary-color);
}
.cart-toggle {
  --btn-bg: var(--primary-color);
  --btn-fg: #fff;
  --btn-br: 10px;
  align-items: center;
  border: 1px solid transparent;
  border-radius: var(--btn-br);
  cursor: pointer;
  font-size: 15px;
  gap: 10px;
  line-height: 1;
  padding: 10px 16px;
  position: relative;
  transition: transform 0.15s, background 0.2s, border-color 0.2s, color 0.2s;
}
.cart-toggle .cart-label {
  letter-spacing: 0.2px;
}
.cart-toggle .cart-count {
  border-radius: 9px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
  font-size: 12px;
  font-weight: 600;
  height: 18px;
  line-height: 18px;
  min-width: 18px;
  padding: 0 4px;
  position: absolute;
  right: -6px;
  text-align: center;
  top: -6px;
}
.cart--ghost {
  border-color: #e7e7e7;
}
.cart--ghost:hover {
  border-color: #d5d5d5;
  transform: translateY(-1px);
}
@media (max-width: 640px) {
  .cart-toggle {
    font-size: 14px;
    padding: 9px 14px;
  }
  .cart-toggle .cart-count {
    right: -5px;
    top: -5px;
  }
}
.about-hero {
  background: #fff;
  padding: 50px 0 20px;
}
.about-hero h1 {
  color: #9b0028;
  font-size: 36px;
  font-weight: 800;
  margin: 0 0 12px;
}
.about-hero .lead {
  color: #333;
  font-size: 17px;
  line-height: 1.8;
  max-width: 900px;
}
.about-split {
  background: #fff;
  padding: 20px 0 60px;
}
.about-box,
.card {
  background: #fff;
  padding: 18px;
}
.about-split__grid {
  align-items: start;
  display: grid;
  gap: 40px;
  grid-template-columns: 1.6fr 1fr;
}
@media (max-width: 980px) {
  .about-split__grid {
    grid-template-columns: 1fr;
  }
}
.about-cards {
  display: grid;
  gap: 18px;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  margin-top: 16px;
}
.card {
  border-radius: 12px;
  box-shadow: 0 4px 14px #0000000a;
}
.card h3 {
  color: #111;
  font-size: 16px;
  font-weight: 800;
  margin: 0 0 8px;
}
.card p {
  color: #444;
  font-size: 14.5px;
  line-height: 1.65;
  margin: 0;
}
.about-aside {
  display: grid;
  gap: 16px;
}
.about-box {
  border: 1px solid #eee;
  border-radius: 12px;
}
.about-box h3 {
  color: #111;
  font-size: 15px;
  font-weight: 800;
  margin: 0 0 6px;
}
.about-box p {
  color: #444;
  line-height: 1.65;
  margin: 0;
}
.about-cta {
  background: #f7f3ee;
  border-top: 1px solid #eee;
  padding: 50px 0;
}
.about-cta__wrap {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  justify-content: space-between;
}
.about-cta h2 {
  font-weight: 800;
  margin: 0 0 6px;
}
.about-cta p {
  color: #444;
  margin: 0;
}
.about-cta .button {
  background: var(--primary-color);
  border-radius: 10px;
  color: #fff !important;
  display: inline-block;
  font-weight: 800;
  padding: 12px 18px;
  text-decoration: none;
}
.button--light {
  background: #fff !important;
  border: 1px solid #e7e7e7;
  color: var(--primary-color) !important;
}
.privacy-hero,
.returns-hero,
.terms-hero {
  background: #fff;
  border-bottom: 1px solid #eee;
  padding: 50px 0 20px;
}
.privacy-hero h1,
.returns-hero h1 {
  color: #9b0028;
  font-size: 32px;
  font-weight: 800;
}
.privacy-content,
.returns-content,
.terms-content {
  background: #fff;
  padding: 20px 0 50px;
}
.privacy-text h2 {
  color: #222;
  font-size: 24px;
  font-weight: 700;
  margin-top: 30px;
}
.privacy-text h3 {
  color: #333;
  font-size: 18px;
  font-weight: 700;
  margin-top: 20px;
}
.privacy-text p,
.returns-text p {
  line-height: 1.7;
  margin-bottom: 15px;
}
.privacy-text ul {
  list-style: disc;
  margin-bottom: 15px;
  padding-left: 20px;
}
.privacy-text li {
  margin-bottom: 6px;
}
.returns-text h2 {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 15px;
}
.returns-text ol {
  margin-bottom: 20px;
  padding-left: 20px;
}
.returns-text ul {
  list-style: disc;
  margin-bottom: 10px;
  padding-left: 20px;
}
.returns-text li {
  margin-bottom: 8px;
}
.terms-hero h1 {
  color: #9b0028;
  font-size: 32px;
  font-weight: 800;
  margin: 0;
}
.terms-text h2 {
  color: #222;
  font-size: 24px;
  font-weight: 800;
  margin: 30px 0 12px;
}
.terms-text p {
  color: #444;
  line-height: 1.75;
  margin: 0 0 12px;
}
.terms-text ol {
  margin: 0 0 16px;
  padding-left: 20px;
}
.terms-text ul {
  list-style: disc;
  margin: 6px 0 12px;
  padding-left: 20px;
}
.terms-text li {
  margin: 6px 0;
}
.sticky-contact {
  background: #8d0620;
  border-radius: 12px;
  bottom: 85px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
  color: #fff;
  display: flex;
  flex-direction: column;
  gap: 8px;
  gap: 6px;
  padding: 12px 14px;
  position: fixed;
  right: 15px;
  z-index: 9999;
}
.sticky-contact h4 {
  font-size: 18px;
  font-weight: 800;
  line-height: 1.2;
  margin: 0 0 4px;
}
.sticky-contact a.sc-row,
.sticky-contact button.sc-wa-toggle {
  align-items: center;
  background: 0 0;
  border: 0;
  color: #fff;
  cursor: pointer;
  display: flex;
  font-weight: 700;
  gap: 8px;
  padding: 6px 4px;
  text-align: left;
  text-decoration: none;
  width: 100%;
}
.sticky-contact a.sc-row:hover,
.sticky-contact button.sc-wa-toggle:hover {
  opacity: 0.9;
}
.sticky-contact svg {
  fill: currentColor;
  flex: 0 0 auto;
}
.sticky-contact .sc-close {
  background: 0 0;
  border: none;
  color: #fff;
  cursor: pointer;
  font-size: 22px;
  line-height: 1;
  position: absolute;
  right: 8px;
  top: 8px;
  transition: color 0.2s;
}
.sc-wa-panel {
  background: hsla(0, 0%, 100%, 0.08);
  border-radius: 10px;
  margin-top: 6px;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  padding: 8px;
  transform: translateY(-4px);
  transition: max-height 0.3s, opacity 0.2s, transform 0.2s;
}
.sc-wa-input,
.sc-wa-send {
  padding: 10px 12px;
  width: 100%;
}
.sc-wa-panel.open,
.sc-wa-panel[aria-hidden="false"] {
  max-height: 280px;
  opacity: 1;
  transform: translateY(0);
}
.sc-wa-input {
  border: 0;
  border-radius: 8px;
  color: #222;
  font: inherit;
  min-height: 80px;
  resize: vertical;
}
.sc-wa-send {
  background: #25d366;
  border: 0;
  border-radius: 8px;
  color: #3f3f3f;
  cursor: pointer;
  font-weight: 800;
  margin-top: 8px;
}
.sc-wa-note {
  display: block;
  margin-top: 6px;
  opacity: 0.8;
}
.sticky-contact a[href^="tel"] img.emoji {
  filter: invert(1) brightness(2) saturate(0);
}
.sticky-contact a[href^="mailto"] img.emoji {
  filter: none;
}
.sticky-contact .sc-row--wa {
  align-items: center;
  background: #25d366;
  border-radius: 8px;
  color: #0b141a;
  display: flex;
  gap: 8px;
  padding: 6px 10px;
  text-decoration: none;
}
.sticky-contact .icon-wa {
  flex: 0 0 20px;
  height: 20px;
  line-height: 0;
  width: 20px;
}
.sticky-contact .icon-wa svg {
  display: block;
  height: 100%;
  width: 100%;
  fill: currentColor;
}
.sticky-contact .sc-row--wa img,
.sticky-contact .sc-row--wa svg {
  filter: none !important;
}
.contact-grid {
  align-items: start;
  display: grid;
  gap: 40px;
  grid-template-columns: 1fr 1fr;
  margin: 0 auto;
  max-width: 1000px;
}
.contact-details p {
  line-height: 1.6;
  margin: 0 0 12px;
}
.contact-card {
  background: #fff;
  border-radius: 8px;
  padding: 0;
}
.contact-form .field {
  margin-bottom: 14px;
}
.contact-form input,
.contact-form textarea {
  border: 1px solid #ddd;
  border-radius: 6px;
  font: inherit;
  padding: 10px;
  width: 100%;
}
.contact-form button {
  background: #a80036;
  border: 1px solid #a80036;
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  font-weight: 600;
  padding: 10px 16px;
  width: 100%;
}
.notice {
  border-radius: 6px;
  margin-bottom: 16px;
  padding: 12px 16px;
}
.notice-success {
  background: #e9f9ef;
  border: 1px solid #b7e4c7;
}
.notice-error {
  background: #ffecec;
  border: 1px solid #ffb3b3;
}
.hidden {
  height: 1px;
  left: -9999px;
  overflow: hidden;
  position: absolute;
  top: auto;
  width: 1px;
}
.woocommerce-account .woocommerce-MyAccount-navigation {
  margin: 24px auto 0;
  max-width: 1100px;
  padding: 0 16px;
}
.woocommerce-account .woocommerce-MyAccount-navigation ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0 0 20px;
  padding: 0;
}
.woocommerce-account .woocommerce-MyAccount-navigation li a {
  border: 1px solid #ddd;
  border-radius: 6px;
  color: #222;
  display: block;
  padding: 8px 12px;
  text-decoration: none;
  transition: background 0.2s, color 0.2s, border-color 0.2s;
}
.woocommerce-account .woocommerce-MyAccount-content {
  margin: 0 auto 40px;
  max-width: 1100px;
  padding: 0 16px;
}
.woocommerce-account .woocommerce-Addresses {
  display: grid;
  gap: 24px;
  grid-template-columns: 1fr 1fr;
}
.woocommerce-account .woocommerce-Address {
  background: #fff;
  border: 1px solid #e7e7e7;
  border-radius: 10px;
  padding: 18px 18px 16px;
}
.woocommerce-account .woocommerce-Address .woocommerce-Address-title {
  align-items: center;
  display: flex;
  justify-content: space-between;
  margin: 0 0 10px;
}
.woocommerce-account .woocommerce-Address .woocommerce-Address-title h3 {
  font-size: 22px;
  line-height: 1.2;
  margin: 0;
}
.woocommerce-account .woocommerce-Address .edit {
  border: 1px solid #a80036;
  border-radius: 6px;
  color: #a80036;
  font-size: 14px;
  padding: 6px 10px;
  text-decoration: none;
  transition: 0.2s;
}
.woocommerce-account .woocommerce-Address .edit:hover {
  background: #a80036;
  color: #fff;
}
.woocommerce-account .woocommerce-Address address {
  color: #333;
  font-style: normal;
  line-height: 1.65;
  margin: 0;
}
.woocommerce-account .woocommerce-Address em {
  color: #777;
}
.woocommerce-account .woocommerce-error,
.woocommerce-account .woocommerce-message,
.woocommerce-account .woocommerce-notices-wrapper {
  margin: 0 0 16px;
}
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message {
  background: #f5fbf0;
  border: 1px solid #dfe9d8;
  border-radius: 8px;
  padding: 10px 12px;
}
.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button {
  background: #a80036;
  border: 1px solid #a80036;
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  padding: 8px 14px;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s;
}
.woocommerce .button:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover {
  background: #8d002e;
  border-color: #8d002e;
}
.site-content {
  min-height: 500px;
}
@media (max-width: 900px) {
  .contact-grid,
  .woocommerce-account .woocommerce-Addresses {
    grid-template-columns: 1fr;
  }
  .woocommerce-account .woocommerce-MyAccount-navigation ul {
    gap: 6px;
  }
  .home-products-grid {
    justify-content: center;
  }
  .home-products-grid img {
    display: block;
    height: auto;
    margin: 0 auto;
    max-width: 100%;
  }
  .home-products-grid .product-card {
    max-width: 300px;
    width: 100%;
  }
}
@media (max-width: 768px) {
  .menu-item > a,
  .submenu-col li a,
  .submenu-right li a {
    padding: 8px 12px;
  }
  .menu-item > a,
  .site-footer,
  .site-footer .footer-column a,
  .site-footer .footer-column li {
    font-size: 14px;
  }
  .submenu,
  .submenu-right {
    box-shadow: none;
    padding: 0;
    position: static;
  }
  .shop-container {
    flex-direction: column;
  }
  .cart-drawer,
  .shop-content,
  .shop-sidebar {
    width: 100%;
  }
  .product-page {
    grid-template-columns: 1fr;
  }
  .home-main-title {
    font-size: 28px;
    margin: 20px 0 0;
  }
  .terms-hero h1 {
    font-size: 26px;
  }
  .terms-text h2 {
    font-size: 20px;
  }
  .product-card {
    margin: 0 auto;
    max-width: 360px;
    width: 100%;
  }
  .product-card .product-thumb {
    align-items: center;
    aspect-ratio: 1/1;
    display: flex;
    justify-content: center;
    overflow: hidden;
    position: relative;
    width: 100%;
  }
  .product-card .product-thumb img {
    display: block;
    height: 100%;
    object-fit: contain;
    width: 100%;
  }
  .home-products-grid a.product-card__thumb {
    align-items: center;
    aspect-ratio: 1/1;
    display: flex;
    justify-content: center;
    overflow: hidden;
    width: 100%;
  }
  .product-tabs-section .tabs,
  .woocommerce table.shop_table,
  .woocommerce-MyAccount-navigation ul {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .home-products-grid a.product-card__thumb img {
    display: block;
    height: 100% !important;
    max-height: none !important;
    max-width: none !important;
    object-fit: contain;
    width: 100% !important;
  }
  .about-section h2 {
    font-size: 20px;
    line-height: 1.3;
  }
  .about-section h3 {
    font-size: 16px;
    line-height: 1.3;
  }
  .about-section p {
    font-size: 14px;
    line-height: 1.5;
  }
  .site-footer {
    padding: 24px 16px;
  }
  .site-footer .footer-container {
    align-items: start;
    display: grid;
    gap: 20px;
    grid-template-columns: repeat(2, 1fr);
    justify-items: center;
    text-align: center;
  }
  .site-footer .footer-column {
    max-width: 420px;
    width: 100%;
  }
  .site-footer .footer-column h4 {
    font-size: 16px;
    letter-spacing: 0.06em;
    margin: 0 0 10px;
    text-transform: uppercase;
  }
  .site-footer .footer-column ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .site-footer .footer-column ul li {
    line-height: 1.5;
    margin: 8px 0;
  }
  .site-footer .footer-column a {
    display: inline-block;
    padding: 6px 4px;
    text-decoration: none;
  }
  .site-footer .footer-column + .footer-column {
    border-top: 1px solid hsla(0, 0%, 100%, 0.15);
    padding-top: 20px;
  }
  .site-footer .footer-container > :first-child {
    margin-top: 0 !important;
  }
  .site-footer .footer-column:first-child,
  .site-footer .footer-column:nth-child(2) {
    grid-column: auto;
  }
  .site-footer .footer-column:nth-child(3) {
    grid-column: 1/-1;
  }
  .single-product-main .product-page {
    display: block;
    gap: 0;
  }
  .single-product-main {
    margin-top: 0;
  }
  .product-breadcrumbs {
    font-size: 12px;
    line-height: 1.4;
    margin: 8px 0 12px;
    overflow-wrap: anywhere;
  }
  .product-image-section {
    margin: 0 -8px 12px;
    padding: 0 8px;
  }
  .product-image-section img {
    border-radius: 6px;
    display: block;
    height: auto;
    width: 100%;
  }
  .product-info-section {
    padding: 0 8px 16px;
  }
  .product-info-section .product_title,
  .product-info-section h1 {
    font-size: 20px;
    line-height: 1.3;
    margin: 10px 0 6px;
  }
  .product-info-section .price,
  .product-info-section .price .amount {
    display: block;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.1;
    margin: 8px 0 12px;
  }
  .product-info-section form.cart {
    align-items: center;
    display: grid;
    grid-template-columns: 1fr;
    row-gap: 10px;
  }
  .product-info-section .quantity {
    align-items: center;
    display: inline-flex;
    gap: 10px;
  }
  .cart-page .quantity input.qty,
  .product-info-section .quantity input[type="number"] {
    font-size: 16px;
    height: 40px;
    text-align: center;
    width: 64px;
  }
  .cart-page .quantity .minus,
  .cart-page .quantity .plus,
  .cart-page .quantity button,
  .product-info-section .quantity .qty-button,
  .product-info-section .quantity button {
    height: 40px;
    line-height: 40px;
    width: 40px;
  }
  .product-info-section .single_add_to_cart_button {
    border-radius: 8px;
    font-size: 15px;
    font-weight: 700;
    height: 48px;
    width: 100%;
  }
  .product-info-section .product_meta {
    font-size: 13px;
    line-height: 1.5;
    margin-top: 6px;
  }
  .product-tabs-section {
    margin: 16px 0 24px;
    padding: 0 8px;
  }
  .product-tabs-section .tabs {
    display: flex;
    gap: 8px;
    margin-bottom: 10px;
    scrollbar-width: thin;
  }
  .product-tabs-section .tabs li a {
    display: inline-block;
    font-size: 14px;
    padding: 10px 12px;
    white-space: nowrap;
  }
  .product-tabs-section .panel,
  .woocommerce-MyAccount-content {
    font-size: 14px;
    line-height: 1.6;
  }
  .cart-page .shop_table {
    border: none;
    display: block;
  }
  #order_review .woocommerce-checkout-review-order-table thead,
  .cart-page .product-thumbnail,
  .cart-page .shop_table thead,
  .shop-sidebar,
  .woocommerce-account
    .woocommerce-MyAccount-content
    .woocommerce-orders-table
    thead {
    display: none;
  }
  #order_review .woocommerce-checkout-review-order-table tbody,
  #order_review .woocommerce-checkout-review-order-table tfoot,
  .cart-page .shop_table tbody,
  .woocommerce-account
    .woocommerce-MyAccount-content
    .woocommerce-orders-table
    tbody {
    display: block;
  }
  .cart-page .shop_table tr.cart_item {
    background: #f7f8fa;
    border-radius: 10px;
    display: block;
    margin: 12px 0;
    padding: 14px;
  }
  .cart-page .shop_table td {
    border: none;
    display: block;
    padding: 6px 0;
  }
  .cart-page .product-name {
    align-items: center;
    display: grid;
    gap: 10px;
    grid-template-columns: 64px 1fr;
  }
  .cart-page .product-name img {
    background: #fff;
    border-radius: 6px;
    height: 64px;
    object-fit: contain;
    width: 64px;
  }
  .cart-page .product-name a {
    font-weight: 600;
    line-height: 1.3;
    text-decoration: none;
  }
  .cart-page .product-price,
  .cart-page .product-quantity,
  .cart-page .product-subtotal {
    align-items: center;
    display: flex;
    font-size: 15px;
    justify-content: space-between;
  }
  .cart-page .product-price:before {
    content: "Cena";
  }
  .cart-page .product-quantity:before {
    content: "Ilość";
  }
  .cart-page .product-subtotal:before {
    content: "Kwota";
  }
  .cart-page .product-price:before,
  .cart-page .product-quantity:before,
  .cart-page .product-subtotal:before {
    margin-right: 12px;
    opacity: 0.7;
  }
  .cart-page .quantity {
    align-items: center;
    display: inline-flex;
    gap: 8px;
  }
  .cart-page .cart_item {
    position: relative;
  }
  .cart-page .product-remove {
    padding: 0;
    position: absolute;
    right: 12px;
    top: 12px;
  }
  .cart-page .product-remove a {
    display: inline-block;
    font-size: 20px;
  }
  .cart-page .actions {
    border: none;
    display: grid;
    gap: 10px;
    padding: 0;
  }
  .cart-page .actions .coupon {
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr auto;
  }
  .cart-page .actions .coupon input {
    height: 44px;
  }
  .cart-page .actions .button,
  .cart-page .wc-proceed-to-checkout .checkout-button,
  .wc-proceed-to-checkout .checkout-button {
    border-radius: 8px;
    font-weight: 700;
    height: 48px;
    width: 100%;
  }
  .cart-page .wc-proceed-to-checkout {
    padding: 10px 0;
  }
  .cart-page-layout {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
  .cart-products {
    order: 1;
    width: 100%;
  }
  .cart-collaterals {
    display: block;
    float: none;
    margin: 8px 0 16px;
    order: 2;
    position: static;
    width: 100%;
  }
  .cart_totals {
    border-radius: 10px;
    box-sizing: border-box;
    margin: 0;
    max-width: none;
    padding: 16px;
    width: 100%;
  }
  .cart-page {
    overflow: visible;
  }
  .site-content .container {
    margin: 24px auto !important;
    padding: 0 12px !important;
  }
  .site-content .container h1 {
    font-size: 24px;
    line-height: 1.2;
    margin: 0 0 12px;
  }
  .woocommerce-MyAccount-navigation ul {
    display: flex;
    gap: 8px;
    list-style: none;
    margin: 8px 0 14px;
    padding: 0;
    scroll-snap-type: x mandatory;
    white-space: nowrap;
  }
  .woocommerce-MyAccount-navigation li {
    flex: 0 0 auto;
    margin: 0;
    scroll-snap-align: start;
  }
  .woocommerce-MyAccount-navigation li a {
    border: 1px solid #e6e6e6;
    border-radius: 999px;
    display: block;
    font-size: 14px;
    line-height: 1.2;
    padding: 10px 14px;
    text-decoration: none;
  }
  .woocommerce-MyAccount-navigation .is-active a {
    font-weight: 700;
  }
  .woocommerce-MyAccount-content h2,
  .woocommerce-MyAccount-content h3 {
    font-size: 18px;
    line-height: 1.3;
    margin: 10px 0;
  }
  .woocommerce table.shop_table {
    display: block;
    width: 100%;
  }
  .woocommerce table.shop_table td,
  .woocommerce table.shop_table th {
    font-size: 14px;
    padding: 10px 8px;
    white-space: nowrap;
  }
  .woocommerce form .form-row {
    display: block;
    margin: 0 0 12px;
    width: 100%;
  }
  .woocommerce form .form-row-first,
  .woocommerce form .form-row-last {
    float: none;
    width: 100%;
  }
  .woocommerce form .input-text,
  .woocommerce form select,
  .woocommerce form textarea {
    font-size: 16px;
    height: 44px;
    width: 100%;
  }
  .woocommerce form textarea {
    height: auto;
    min-height: 96px;
  }
  .woocommerce-account
    .woocommerce-MyAccount-content
    .woocommerce-orders-table {
    border: none;
    display: block;
    width: 100%;
  }
  .woocommerce-account
    .woocommerce-MyAccount-content
    .woocommerce-orders-table
    tr {
    background: #f7f8fa;
    border-radius: 10px;
    display: block;
    margin: 12px 0;
    padding: 12px 14px;
  }
  .woocommerce-account
    .woocommerce-MyAccount-content
    .woocommerce-orders-table
    td {
    align-items: center;
    border: none;
    display: flex;
    justify-content: space-between;
    padding: 8px 0;
    white-space: normal;
  }
  .woocommerce-account
    .woocommerce-MyAccount-content
    .woocommerce-orders-table
    td:before {
    content: attr(data-title);
    margin-right: 12px;
    opacity: 0.7;
  }
  .woocommerce-orders-table__cell-order-number:before {
    content: "Zamówienie";
  }
  .woocommerce-orders-table__cell-order-date:before {
    content: "Data";
  }
  .woocommerce-orders-table__cell-order-status:before {
    content: "Status";
  }
  .woocommerce-orders-table__cell-order-total:before {
    content: "Razem";
  }
  .woocommerce-orders-table__cell-order-actions:before {
    content: "Akcje";
  }
  .woocommerce-orders-table__cell-order-number a {
    font-weight: 700;
    text-decoration: none;
  }
  .category-menu-wrapper .submenu,
  .category-menu-wrapper .submenu-right,
  .topbar {
    display: none !important;
  }
  .main-header .header-grid {
    align-items: center;
    display: flex;
    justify-content: center;
  }
  .main-header .logo {
    text-align: center;
  }
  .main-header .logo img {
    display: block;
    height: auto;
    margin: 0 auto;
    max-width: 80%;
  }
  .main-header .header-grid .header-icons {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    justify-content: flex-start;
    padding: 0 8px;
  }
  .main-header .header-grid .header-icons > * {
    flex: 0 1 auto;
    min-width: 0;
    white-space: nowrap;
  }
  .cat-burger {
    align-items: center;
    background: #b3003c;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    flex: 0 1 auto;
    font-weight: 700;
    gap: 8px;
    line-height: 1;
    padding: 8px 12px;
    user-select: none;
  }
  .cat-burger:hover {
    background: #980033;
  }
  .cat-burger:active {
    background: #82002b;
  }
  .cat-burger .burger-icon {
    color: #fff;
    height: 20px;
    width: 20px;
  }
  .cat-burger-text {
    color: #fff;
    font-size: 14px;
  }
  .cat-toggle {
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    clip: rect(0 0 0 0);
    border: 0;
    clip-path: inset(50%);
    white-space: nowrap;
  }
  .category-menu-wrapper {
    background: #fff;
    display: flex;
    flex-direction: column;
    inset: 0;
    position: fixed;
    transform: translateX(-100%);
    transition: transform 0.3s;
    z-index: 10000;
  }
  .cat-toggle:checked ~ #category-drawer {
    transform: translateX(0);
  }
  .category-menu-wrapper .category-header {
    align-items: center;
    background: #fff;
    border-bottom: 1px solid #eee;
    display: flex;
    justify-content: space-between;
    padding: 14px 18px;
  }
  .category-menu-wrapper .category-header h2 {
    color: #b3003c;
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.3px;
    margin: 0;
  }
  .category-menu-wrapper .category-header .cat-close {
    border-radius: 50%;
    color: #b3003c;
    cursor: pointer;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    padding: 6px 10px;
    position: static !important;
    transition: background 0.2s, color 0.2s;
  }
  .category-menu-wrapper .category-header .cat-close:hover {
    background: #fce6ee;
    color: #82002b;
  }
  .category-menu-scroll {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    flex: 1;
    padding: 0 !important;
  }
  .category-menu-wrapper .category-menu-scroll ul.category-nav {
    display: block !important;
    gap: 0 !important;
    column-gap: 0 !important;
    grid-template-columns: none !important;
    list-style: none !important;
    margin: 0 !important;
    padding: 0 !important;
    row-gap: 0 !important;
  }
  .category-menu-wrapper .category-menu-scroll ul.category-nav > li {
    background: 0 0 !important;
    border: none !important;
    border-bottom: 1px solid #eee !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .category-menu-wrapper .category-menu-scroll ul.category-nav > li > a {
    align-items: center !important;
    background: #fff !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
    color: #3a3a3a !important;
    display: flex !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    justify-content: space-between !important;
    padding: 14px 16px !important;
    text-align: left !important;
    text-decoration: none !important;
    width: 100% !important;
  }
  .category-menu-wrapper .category-menu-scroll ul.category-nav > li > a:after {
    color: #b3003c;
    content: "\2192";
    flex: 0 0 auto;
    font-size: 18px;
    line-height: 1;
    margin-left: 12px;
  }
  .category-menu-wrapper .category-menu-scroll ul.category-nav > li > a:hover {
    background: #fafafa !important;
    color: #111 !important;
  }
  #order_review .woocommerce-checkout-review-order-table {
    border: none;
    display: block;
    min-width: 0;
    width: 100%;
  }
  #order_review .woocommerce-checkout-review-order-table tr {
    align-items: start;
    border-bottom: 1px solid #ececec;
    column-gap: 12px;
    display: grid;
    grid-template-columns: 1fr auto;
    padding: 10px 12px;
  }
  #order_review .woocommerce-checkout-review-order-table tr:last-child {
    border-bottom: 0;
  }
  #order_review .woocommerce-checkout-review-order-table td,
  #order_review .woocommerce-checkout-review-order-table th {
    background: 0 0;
    border: 0;
    max-width: 100%;
    overflow-wrap: anywhere;
    padding: 0;
    text-align: left;
    white-space: normal;
    word-break: break-word;
  }
  #order_review
    .woocommerce-checkout-review-order-table
    .cart_item
    .product-name {
    grid-column: 1/2;
  }
  #order_review
    .woocommerce-checkout-review-order-table
    .cart_item
    .product-total {
    grid-column: 2/3;
    text-align: right;
    white-space: nowrap;
  }
  #order_review .woocommerce-checkout-review-order-table .cart-subtotal th,
  #order_review .woocommerce-checkout-review-order-table .order-total th {
    font-weight: 600;
  }
  #order_review .woocommerce-checkout-review-order-table .cart-subtotal td,
  #order_review .woocommerce-checkout-review-order-table .order-total td {
    text-align: right;
    white-space: nowrap;
  }
  #order_review
    .woocommerce-checkout-review-order-table
    .woocommerce-shipping-totals {
    grid-template-columns: 1fr;
    row-gap: 6px;
  }
  #order_review
    .woocommerce-checkout-review-order-table
    .woocommerce-shipping-totals
    th {
    margin: 0 0 6px;
  }
  #order_review
    .woocommerce-checkout-review-order-table
    .woocommerce-shipping-totals
    td {
    grid-column: 1/-1;
    text-align: left;
  }
  #order_review
    .woocommerce-checkout-review-order-table
    .woocommerce-shipping-methods {
    display: grid;
    gap: 6px;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  #order_review .woocommerce-checkout-review-order-table .order-total {
    background: 0 0 !important;
  }
  #order_review .woocommerce-checkout-review-order-table .order-total th {
    font-weight: 800;
  }
  #order_review .woocommerce-checkout-review-order-table .order-total td {
    font-weight: 800;
    text-align: right;
    white-space: nowrap;
  }
  .subcategory-inline-row {
    display: grid !important;
    gap: 12px;
    grid-template-columns: repeat(2, 1fr);
  }
  .subcategory-inline-row .subcategory-inline-tile {
    align-items: center;
    background: #fff;
    border: 1px solid #e9e9e9;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 92px;
    padding: 14px 12px;
    text-align: center;
    text-decoration: none;
  }
  .subcategory-inline-row .subcategory-inline-tile h3 {
    font-size: 16px;
    line-height: 1.2;
    margin: 0 0 6px;
  }
  .subcategory-inline-row .subcategory-inline-tile span {
    color: #666;
    font-size: 12px;
    margin: 0;
  }
  .shop-sorting {
    justify-content: center;
  }
  .product-grid .product-row {
    align-items: stretch;
    background: #fff;
    border: 1px solid #eee;
    border-radius: 8px;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 16px;
    padding: 12px;
  }
  .product-grid .product-left img {
    display: block;
    height: auto;
    margin: 0 auto 8px;
    max-width: 100%;
  }
  .product-grid .product-middle {
    text-align: left;
  }
  .product-grid .product-right {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
  }
  .product-grid .product-price {
    font-size: 18px;
    font-weight: 600;
  }
  .product-grid .product-right .button {
    text-align: center;
    width: 100%;
  }
  .shop-main {
    padding: 0 !important;
  }
}
#reviews .woocommerce-review__author,
.prod-brand__name,
.prod-rating__add {
  font-weight: 600;
}
.buybox,
.extra-grid .product,
.prod-gallery__stage {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
}
@media (max-width: 360px) {
  .cat-burger,
  .header-icons .cart-toggle {
    padding: 6px 10px;
  }
  .cat-burger .burger-icon {
    height: 18px;
    width: 18px;
  }
  .cat-burger-text,
  .header-icons > a {
    font-size: 13px;
  }
}
@media (min-width: 700px) {
  .cat-burger,
  .cat-toggle,
  .category-header {
    display: none !important;
  }
}
@media (max-width: 700px) {
  .category-header {
    align-items: center;
    display: flex;
  }
  .cat-burger,
  .cat-toggle {
    align-items: center;
    display: inline-flex;
  }
}
.product-content-wrapper {
  padding: 12px 0 24px;
}
.product-breadcrumbs {
  margin-bottom: 12px;
}
.product-page.grid-2cols {
  align-items: start;
  display: grid;
  gap: 24px;
  grid-template-columns: minmax(300px, 1fr) minmax(420px, 1.2fr);
}
.product-title {
  font-size: 28px;
  line-height: 1.25;
  margin: 0 0 6px;
}
.prod-meta-under-title {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0.25rem 0 0.75rem;
}
.prod-brand__logo {
  display: block;
  max-height: 48px;
  width: auto;
}
.prod-meta__rating-row {
  width: 100%;
}
.prod-rating {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}
.prod-rating__label {
  color: #333;
  font-weight: 600;
}
.prod-rating__stars .star-rating {
  margin: 0;
  transform: translateY(1px);
}
.prod-rating__right {
  align-items: center;
  display: flex;
  font-size: 0.95rem;
  gap: 8px;
  margin-left: auto;
}
.prod-rating__count {
  opacity: 0.9;
  text-decoration: none;
}
.extra-products .extra-title-link:hover,
.prod-rating__add,
.prod-rating__count:hover {
  text-decoration: underline;
}
.prod-rating__no {
  opacity: 0.7;
}
.buybox {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
  margin: 10px 0 16px;
  padding: 16px;
}
.buybox__price .price {
  display: block;
  font-size: 28px;
  font-weight: 800;
  margin-bottom: 12px;
}
.buybox .cart {
  align-items: center;
  display: flex;
  gap: 10px;
  margin-bottom: 8px;
}
.buybox .meta-row {
  font-size: 0.95rem;
  opacity: 0.9;
}
.product-meta-blocks {
  border-top: 1px solid #eee;
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding-top: 12px;
}
.meta-row {
  align-items: baseline;
  display: flex;
  gap: 6px;
}
.meta-label {
  color: #666;
  min-width: 160px;
}
.meta-value {
  color: #111;
}
.availability-row {
  align-items: center;
  background: #f3fbf6;
  border: 1px solid #e6f5ea;
  border-radius: 8px;
  display: flex;
  gap: 10px;
  padding: 12px;
}
.availability-row .availability-icon {
  background: #28a745;
  border-radius: 50%;
  display: inline-block;
  height: 20px;
  position: relative;
  width: 20px;
}
.availability-row .availability-icon:after {
  border-color: transparent #fff #fff transparent;
  border-style: solid;
  border-width: 2px;
  content: "";
  inset: 5px 6px 7px 6px;
  position: absolute;
  transform: rotate(45deg);
}
.availability-row.is-unavailable {
  background: #fff6f6;
  border-color: #fde2e2;
}
.availability-row.is-unavailable .availability-icon {
  background: #d33;
}
.availability-row.is-unavailable .availability-icon:after {
  background: #fff;
  content: "";
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  width: 12px;
}
.availability-row.is-unavailable .availability-icon:before {
  background: #fff;
  content: "";
  height: 2px;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  width: 12px;
}
.prod-gallery__stage {
  aspect-ratio: 1/1;
  background: #fff;
  border-radius: 8px;
  max-height: 560px;
  overflow: hidden;
  position: relative;
}
.prod-gallery__img {
  display: block;
  height: 100%;
  object-fit: contain;
  position: absolute;
  width: 100%;
}
.prod-gallery__nav {
  align-items: center;
  background: hsla(0, 0%, 100%, 0.85);
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 999px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
  cursor: pointer;
  display: flex;
  font-size: 22px;
  height: 38px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 38px;
}
.prod-gallery__nav--prev {
  left: 8px;
}
.prod-gallery__nav--next {
  right: 8px;
}
.extra-products .onsale,
.img-lightbox[hidden],
.prod-gallery__nav.is-hidden {
  display: none;
}
.prod-gallery__thumbs {
  display: flex;
  gap: 10px;
  margin-top: 10px;
  overflow: auto;
  padding-bottom: 2px;
  scrollbar-width: thin;
}
.prod-thumb__btn {
  background: 0 0;
  border: 0;
  border-radius: 8px;
  cursor: pointer;
  line-height: 0;
  padding: 0;
}
.prod-gallery__thumbs img {
  border: 2px solid transparent;
  border-radius: 8px;
  display: block;
  height: 80px;
  object-fit: cover;
  width: 80px;
}
.prod-gallery__thumbs img.is-active {
  border-color: #cc0a3b;
  box-shadow: 0 0 0 2px rgba(204, 10, 59, 0.15);
}
.product-tabs-section .woocommerce-tabs {
  margin-top: 18px;
}
.buybox .cart {
  --ctrl-h: 46px;
  align-items: stretch;
}
.buybox .quantity input.qty {
  border-radius: 8px;
  height: var(--ctrl-h);
  padding: 0 12px;
  text-align: center;
  width: 70px;
}
.buybox .single_add_to_cart_button,
.single-product form.cart .single_add_to_cart_button {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  height: var(--ctrl-h);
  justify-content: center;
  padding: 0 18px;
}
.img-lightbox {
  align-items: center;
  background: rgba(0, 0, 0, 0.9);
  cursor: zoom-out;
  display: flex;
  justify-content: center;
  position: fixed;
  z-index: 9999;
}
.img-lightbox img {
  cursor: grab;
  max-height: 95vh;
  max-width: 95vw;
  transition: transform 60ms linear;
  user-select: none;
}
.img-lightbox img:active {
  cursor: grabbing;
}
.prod-rating__summary {
  font-size: 0.95rem;
  margin-left: 8px;
  opacity: 0.9;
  white-space: nowrap;
}
@media (max-width: 480px) {
  .prod-gallery__thumbs img {
    height: 60px;
    width: 60px;
  }
  .prod-rating__summary {
    white-space: normal;
  }
}
#reviews .woocommerce-Reviews-title {
  font-size: 22px;
  line-height: 1.25;
  margin: 0 0 16px;
}
#reviews ol.commentlist {
  list-style: none;
  margin: 16px 0 20px;
  padding: 0;
}
#reviews ol.commentlist > li {
  border-bottom: 1px solid #eee;
  padding: 16px 0;
}
#reviews .woocommerce-review__published-date {
  color: #666;
  font-size: 0.95rem;
  margin-left: 6px;
}
.star-rating.star-rating--custom {
  display: inline-block;
  font-size: 18px;
  letter-spacing: 2px;
  line-height: 1;
  margin: 4px 0 6px;
  position: relative;
}
.star-rating.star-rating--custom:before {
  color: #d7d7d7;
  content: "★★★★★";
  font-size: 28px;
}
.star-rating.star-rating--custom > span {
  height: 100%;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 0;
}
.star-rating.star-rating--custom > span:before {
  color: #f5b301;
  content: "★★★★★";
  font-size: 28px;
  left: 0;
  position: absolute;
  top: 0;
}
#review_form .stars a:before {
  color: #d7d7d7;
  content: "★";
  font-size: 28px;
  line-height: 1;
  position: absolute;
  text-indent: 0;
  transition: color 0.12s linear;
}
#review_form .stars:hover a:before {
  color: #d7d7d7;
}
#review_form textarea#comment {
  min-height: 120px;
  width: 100%;
}
#review_form .form-submit .submit {
  background: #cc0a3b;
  border: 0;
  border-radius: 8px;
  color: #fff;
  cursor: pointer;
  margin-top: 10px;
  padding: 10px 16px;
  transition: background 0.15s, transform 20ms;
}
#reviews .comment_container .comment-text {
  margin: 0 !important;
}
#review_form .stars {
  gap: 6px;
  position: relative;
}
#review_form .form-submit .submit:hover {
  background: #a40a31;
}
#review_form .form-submit .submit:active {
  transform: translateY(1px);
}
#review_form .comment-form-rating {
  align-items: center;
  display: flex;
  gap: 12px;
  margin: 8px 0 10px;
}
#review_form .stars {
  display: inline-flex;
  font-size: 0;
  gap: 8px;
  line-height: 1;
}
#review_form .stars a {
  align-items: center;
  color: transparent;
  cursor: pointer;
  display: inline-block;
  display: inline-flex;
  font-size: 0 !important;
  height: 24px;
  justify-content: center;
  line-height: 0;
  overflow: hidden;
  position: relative;
  text-decoration: none;
  text-indent: -9999px;
  width: 24px;
}
#review_form .stars a.active:before,
#review_form .stars a.selected:before,
#review_form .stars a:hover:before {
  color: #f5b301;
}
.availability-banner {
  margin-top: 6px;
}
.availability-banner img {
  border-radius: 8px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
  display: block;
  height: auto;
  width: 100%;
}
.single-product form.cart {
  --ctrl-h: 46px;
  align-items: stretch;
  display: flex;
  gap: 10px;
}
.single-product form.cart .quantity {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  height: var(--ctrl-h);
  overflow: hidden;
}
.single-product form.cart .quantity input.qty {
  height: var(--ctrl-h);
  padding: 0 12px;
}
.single-product .buybox .cart .quantity .minus,
.single-product .buybox .cart .quantity .plus,
.single-product form.cart .quantity .minus,
.single-product form.cart .quantity .plus {
  height: var(--ctrl-h);
  line-height: var(--ctrl-h);
}
.single-product .buybox .cart {
  --ctrl-h: 46px;
  align-items: center;
  display: flex;
  gap: 10px;
}
.single-product .buybox .cart .quantity,
.single-product .buybox .cart .single_add_to_cart_button {
  align-items: center;
  border-radius: 8px;
  display: inline-flex;
  height: var(--ctrl-h);
  vertical-align: middle;
}
.single-product .buybox .cart .quantity {
  overflow: hidden;
}
.single-product .buybox .cart .quantity input.qty {
  font-size: 16px;
  height: var(--ctrl-h);
  line-height: var(--ctrl-h);
  padding: 0 12px;
}
.single-product .buybox .cart .single_add_to_cart_button {
  justify-content: center;
  padding: 0 18px;
}
.single-product .buybox .cart input.qty::-webkit-inner-spin-button,
.single-product .buybox .cart input.qty::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.extra-products + .extra-products {
  margin-top: 20px;
}
.extra-grid {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  list-style: none;
  margin: 0;
  padding: 0;
}
.extra-products {
  margin-top: 28px;
}
.extra-products .extra-title-link {
  color: inherit;
  text-decoration: none;
}
.extra-slider__viewport {
  overflow: hidden;
}
.extra-slider__track {
  display: flex;
  gap: 16px;
  padding: 2px 0;
  transition: transform 0.35s;
  will-change: transform;
}
.extra-nav {
  align-items: center;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 999px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  cursor: pointer;
  display: flex;
  font-size: 22px;
  height: 36px;
  justify-content: center;
  line-height: 1;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 36px;
}
.extra-nav.prev {
  left: -6px;
}
.extra-nav.next {
  right: -6px;
}
.extra-nav[disabled],
.extra-products .extra-nav[disabled] {
  cursor: default;
  opacity: 0.4;
}
.extra-grid .product {
  flex: 0 0 calc(25% - 12px);
  max-width: calc(25% - 12px);
}
.extra-grid .product a img {
  aspect-ratio: 1/1;
  background: #fff;
  border-radius: 8px;
  display: block;
  object-fit: contain;
  width: 100%;
}
.extra-grid .woocommerce-loop-product__title {
  font-size: 16px;
  height: auto;
  line-height: 1.35;
  margin: 8px 0 6px;
}
.extra-grid .product {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 10px;
  padding: 10px;
}
.extra-grid .button {
  border-radius: 8px;
}
.extra-products .extra-slider__track.products {
  display: flex !important;
  flex-wrap: nowrap !important;
  gap: 16px;
  list-style: none;
  margin: 0 !important;
  padding: 0 !important;
}
.extra-products .extra-slider__track.products li.product {
  display: flex;
  flex-direction: column;
  float: none !important;
  margin: 0 !important;
  width: auto !important;
}
.extra-products .woocommerce-LoopProduct-link {
  display: block;
  text-align: left;
}
.extra-products .woocommerce-LoopProduct-link img,
.extra-products li.product .product-left a,
.extra-products li.product .product-left img {
  aspect-ratio: 1/1;
  background: #fff;
  border-radius: 8px;
  display: block;
  object-fit: contain;
  width: 100%;
}
.extra-products .woocommerce-loop-product__title {
  font-size: 16px !important;
  font-weight: 700;
  height: auto;
  line-height: 1.35;
  margin: 8px 0 6px;
}
.extra-products .price {
  font-size: 16px;
  font-weight: 700;
  margin-top: auto;
  position: static !important;
}
.extra-products .button {
  border-radius: 8px;
  margin-top: 8px;
  position: static !important;
  width: 100%;
}
.extra-products .extra-nav {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 22px;
  justify-content: center;
  line-height: 1;
}
.extra-products .extra-header {
  align-items: flex-end;
  display: flex;
  justify-content: space-between;
  margin-bottom: 12px;
}
.extra-products .extra-title {
  font-size: 22px !important;
  font-weight: 700;
  margin: 0;
}
.extra-products .extra-slider__track.products li.product {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 10px;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  box-sizing: border-box;
  display: flex !important;
  flex-direction: column !important;
  padding: 10px;
}
.extra-products li.product .product-left {
  margin: 0 0 8px;
}
.extra-products li.product .product-middle .product-title,
.extra-products li.product .product-middle .product-title a {
  color: inherit !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  margin: 8px 0 6px !important;
  text-decoration: none !important;
}
.extra-products li.product .price,
.extra-products li.product .product-price {
  font-size: 16px !important;
  font-weight: 700 !important;
  margin-top: auto !important;
  position: static !important;
}
.extra-products .extra-slider {
  padding: 0 28px;
  position: relative;
}
.extra-products .extra-nav {
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 999px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
  height: 36px;
  position: absolute;
  top: 40%;
  transform: translateY(-50%);
  width: 36px;
  z-index: 3;
}
.extra-products .extra-nav.prev {
  left: -20px;
}
.extra-products .extra-nav.next {
  right: -20px;
}
@media (max-width: 992px) {
  .product-page.grid-2cols {
    grid-template-columns: 1fr;
  }
  .extra-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .extra-grid .product {
    flex-basis: calc(50% - 8px);
    max-width: calc(50% - 8px);
  }
  .extra-products .extra-slider {
    padding: 0 22px;
  }
  .extra-products .extra-nav.prev {
    left: -16px;
  }
  .extra-products .extra-nav.next {
    right: -16px;
  }
}
@media (max-width: 520px) {
  .extra-grid {
    grid-template-columns: 1fr;
  }
  .extra-grid .product {
    flex-basis: 100%;
    max-width: 100%;
  }
  .extra-products .extra-slider {
    padding: 0 18px;
  }
  .extra-products .extra-nav.prev {
    left: -12px;
  }
  .extra-products .extra-nav.next {
    right: -12px;
  }
}
.extra-products li.product .add_to_cart_button,
.extra-products li.product .button {
  align-items: center !important;
  border-radius: 8px !important;
  display: inline-flex !important;
  justify-content: center !important;
  margin: 10px auto 12px !important;
  min-width: 70%;
  position: static !important;
  width: auto !important;
}
form.cart .quantity .minus,
form.cart .quantity .plus {
  align-items: center;
  display: flex;
  height: 100% !important;
  justify-content: center;
  width: var(--cart-h);
}
form.cart .single_add_to_cart_button {
  align-items: center;
  display: inline-flex;
  flex: 1 1 auto;
  height: var(--cart-h);
  justify-content: center;
  margin: 0;
  white-space: nowrap;
}
@media (max-width: 768px) {
  .prod-brand__logo {
    max-height: 40px;
  }
  form.cart {
    align-items: stretch;
    display: flex;
    gap: 12px;
  }
  form.cart .quantity {
    align-items: center;
    border: 1px solid #ccc;
    border-radius: 10px;
    display: flex;
    flex: 0 0 auto;
    height: var(--q-h);
    min-width: max-content;
    min-width: calc(var(--q-h) * 2 + 64px);
    overflow: visible;
  }
}
[hidden] {
  display: none !important;
}
.sc-toggle {
  align-items: center;
  border: 0;
  border-radius: 50%;
  bottom: 90px;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
  color: #fff;
  cursor: pointer;
  display: inline-flex;
  height: 48px;
  justify-content: center;
  position: fixed;
  right: 16px;
  width: 48px;
  z-index: 10000;
}
.sc-toggle,
.sc-toggle:hover {
  background: #a40a31;
}
.shop-toolbar {
  gap: 12px;
justify-content: center;
  margin-bottom: 16px;
}
.filters-toggle,
.shop-toolbar {
  align-items: center;
  display: flex;
}
.filters-toggle {
  background: #a40a31;
  border: 1px solid #ddd;
  border-radius: 6px;
  box-sizing: border-box;
  color: #fff;
  cursor: pointer;
  justify-content: center;
  padding-bottom: 14px;
  padding-top: 14px;
  vertical-align: middle;
  width: 60px;
}
.filters-toggle:hover {
  background: #f5f5f5;
  color: #000;
}
.filters-offcanvas {
  display: none;
  inset: 0;
  position: fixed;
  z-index: 10000;
}
.filters-offcanvas.is-open {
  display: block;
}
.filters-offcanvas__overlay {
  background: rgba(0, 0, 0, 0.45);
  inset: 0;
  position: absolute;
}
.filters-offcanvas__panel {
  background: #fff;
  box-shadow: -8px 0 24px rgba(0, 0, 0, 0.2);
  display: flex;
  flex-direction: column;
  height: 100%;
  max-width: none;
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX(100%);
  transition: transform 0.25s ease;
  width: 100%;
}
@media (min-width: 992px) {
  .filters-offcanvas__panel {
    max-width: 520px;
    width: 30vw;
  }
}
.filters-offcanvas.is-open .filters-offcanvas__panel {
  transform: translateX(0);
}
.filters-offcanvas__header {
  align-items: center;
  border-bottom: 1px solid #eee;
  display: flex;
  justify-content: space-between;
  padding: 30px 16px 14px;
}
.filters-close {
  background: none;
  border: 0;
  cursor: pointer;
  font-size: 28px;
  line-height: 1;
}
.filters-offcanvas__content {
  height: 100%;
  overflow: auto;
  padding: 16px;
}
.shop-container {
  align-items: start;
  display: grid;
  gap: 24px;
  grid-template-columns: 280px 1fr;
}
.shop-content {
  justify-self: center;
  max-width: 1100px;
  width: 100%;
}
.shop-toolbar .woocommerce-ordering {
  align-items: center;
  display: flex;
  margin: 0 !important;
  padding: 0;
}
.shop-toolbar .woocommerce-ordering select {
  box-sizing: border-box;
  height: 40px;
  line-height: 40px;
  margin: 0;
  padding: 0 14px;
}
.shop-toolbar > * {
  align-self: center;
}
@media (max-width: 992px) {
  .shop-container {
    grid-template-columns: 1fr;
  }
  .shop-sidebar {
    display: none;
  }
  .shop-content {
    justify-self: stretch;
    max-width: none;
  }
}
.home .product-card {
  align-items: stretch;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  padding: 14px;
}
.home .product-card__cta {
  display: flex;
  justify-content: center;
  margin-top: auto;
  padding: 0;
  width: 100%;
}
.home .product-card__cta .button {
  background: #a80036;
  border-radius: 6px;
  box-sizing: border-box;
  color: #fff !important;
  max-width: 100%;
  text-align: center;
  width: 100%;
}
.home .product-card__cta .button:hover {
  background: #8a002c;
}
.submenu {
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.08);
  box-sizing: border-box;
  display: none;
  left: 50%;
  max-height: calc(100vh - 32px);
  max-width: min(960px, calc(100vw - 24px));
  overflow: auto;
  padding: 20px 30px;
  position: absolute;
  top: 100%;
  transform: translateX(-50%);
  z-index: 1000;
}
.has-sub:hover > .submenu-right,
.menu-item:hover > .submenu,
.submenu-col {
  display: block;
}
.submenu-col {
  column-count: 2;
  column-gap: 40px;
}
.submenu-col ul {
  break-inside: avoid;
  list-style: none;
  margin: 0;
  padding: 0;
}
.submenu-col li {
  margin-bottom: 10px;
}
.submenu-col li a {
  border-radius: 4px;
  color: #444;
  display: block;
  padding: 8px 12px;
  transition: 0.2s;
  white-space: nowrap;
}
.submenu-col li a:hover {
  background: #f7f7f7;
  color: #a80036;
}
.submenu-right {
  background: #fff;
  border-radius: 6px;
  box-shadow: 2px 2px 8px rgba(0, 0, 0, 0.06);
  display: none;
  left: 100%;
  max-width: min(320px, calc(100vw - 32px));
  min-width: 240px;
  overflow: auto;
  padding: 10px 0;
  position: absolute;
  top: 0;
  z-index: 1001;
}
.submenu-col > .has-sub:nth-last-child(-n + 3) > .submenu-right {
  box-shadow: -2px 2px 8px rgba(0, 0, 0, 0.06);
  left: auto;
  right: 100%;
}
.submenu-right li a {
  color: #333;
  display: block;
  font-size: 14px;
  padding: 10px 16px;
}
.submenu-right li a:hover {
  background: #f7f7f7;
  color: #a80036;
}
@media (max-width: 991px) {
  .submenu {
    border-radius: 0;
    box-shadow: none;
    max-width: 100%;
    padding: 10px 0;
    position: static;
    transform: none;
    width: 100%;
  }
  .submenu-col {
    column-count: 1;
    column-gap: 0;
  }
  .submenu-right {
    border-radius: 0;
    box-shadow: none;
    max-width: 100%;
    width: 100%;
  }
  .has-sub:hover > .submenu-right,
  .menu-item:hover > .submenu,
  .submenu-right {
    position: static;
  }
}
.menu-item {
  position: relative;
  z-index: 10;
}



.category-list,
.category-list li,
.category-list ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.category-list li {
  color: #222;
  font-size: 18px;
  font-weight: 500;
  margin: 6px 0;
  position: relative;
}
.category-list li .item-row {
  align-items: center;
  display: flex;
  gap: 6px;
}
.category-list a {
  color: #222;
  font-weight: 700;
  text-decoration: none;
  transition: color 0.2s;
}
.children a {
  font-weight: 300;
}
.category-list a:hover {
  color: #b3003c;
}
.category-list .count {
  color: #888;
  font-size: 13px;
  margin-left: 6px;
}
.category-list .current-cat > .item-row > a {
  color: #7a0028;
  font-weight: 700;
}
.category-list .toggle {
  background-color: transparent;
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  border: none;
  cursor: pointer;
  display: inline-block;
  flex-shrink: 0;
  height: 18px;
  margin-left: 2px;
  width: 18px;
}
.category-list .has-children.toggle-injected > .item-row > .toggle {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='%23b3003c' viewBox='0 0 24 24'><circle cx='12' cy='12' r='10' fill='none' stroke='%23b3003c' stroke-width='2'/><line x1='12' y1='8' x2='12' y2='16' stroke='%23b3003c' stroke-width='2'/><line x1='8' y1='12' x2='16' y2='12' stroke='%23b3003c' stroke-width='2'/></svg>");
}
.category-list .has-children.open > .item-row > .toggle {
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' fill='%23b3003c' viewBox='0 0 24 24'><circle cx='12' cy='12' r='10' fill='%23b3003c'/><line x1='8' y1='12' x2='16' y2='12' stroke='%23fff' stroke-width='2'/></svg>");
}
.category-list .children {
  display: none;
  margin-left: 10px;
  margin-top: 4px;
}
.category-list li:not(.has-children) > .item-row:before {
  content: "";
  display: inline-block;
  height: 18px;
  margin-left: 2px;
  width: 18px;
}
.category-list .cat-item > .children { display: none; }
.category-list .cat-item.open > .children { display: block; }
.woocommerce-MyAccount-content table.woocommerce-orders-table {
  width: 100%;
  border-collapse: separate !important;
  border-spacing: 0 10px !important;  /* odstęp pionowy między wierszami */
}

/* Pojedynczy wiersz */
.woocommerce-MyAccount-content table.woocommerce-orders-table tr {
  background: #fff;
  border: 1px solid #eee;
  border-radius: 8px;
  overflow: hidden;
}

/* Komórki tabeli */
.woocommerce-MyAccount-content table.woocommerce-orders-table td,
.woocommerce-MyAccount-content table.woocommerce-orders-table th {
  padding: 14px 18px !important;
  vertical-align: middle !important;
}

/* Przycisk "ZOBACZ" */
.woocommerce-MyAccount-content a.button {
  background: #b31b1b !important;
  color: #fff !important;
  padding: 10px 18px !important;
  border-radius: 6px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px;
  transition: background 0.2s ease;
}

.woocommerce-MyAccount-content a.button:hover {
  background: #941616 !important;
}

/* Drobne odstępy po prawej stronie tabeli */
.woocommerce-MyAccount-content {
  margin-bottom: 40px !important;
}

/* Dodatkowo odstępy między kolumnami (np. status, data itd.) */
.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-date,
.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-status,
.woocommerce-MyAccount-content .woocommerce-orders-table__cell-order-total {
  padding-right: 25px !important;
}




/* —— kolory/zmienne ————————————————————————— */
.woocommerce-account { --acc:#b3003c; --ring:#eee; --txt:#222; --muted:#6b7280; }

/* —— LISTA ZAMÓWIEŃ /my-account/orders/ ———————————— */
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  color: var(--txt);
  font-size: 16px;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table thead th {
  text-align: left;
  font-weight: 700;
  background: #fafafa;
  border: 1px solid var(--ring);
  border-bottom: 0;
  padding: 12px 14px;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr {
  border: 1px solid var(--ring);
  border-top: 0;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody td {
  padding: 12px 14px;
  vertical-align: middle;
  background: #fff;
}

.woocommerce-account .woocommerce-orders-table__cell-order-number a {
  font-weight: 700;
  color: var(--acc);
  text-decoration: none;
}
.woocommerce-account .woocommerce-orders-table__cell-order-number a:hover { text-decoration: underline; }

/* status jako badge */
.woocommerce-account .woocommerce-orders-table__cell-order-status mark,
.woocommerce-account .order-status {
  display: inline-block;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 13px;
  line-height: 1;
  background: #f3f4f6;
  color: #111827;
  border: 1px solid #e5e7eb;
}
.woocommerce-account .status-processing { background:#fff7ed; color:#9a3412; border-color:#fed7aa; }
.woocommerce-account .status-on-hold   { background:#fefce8; color:#854d0e; border-color:#fde68a; }
.woocommerce-account .status-completed { background:#ecfdf5; color:#065f46; border-color:#a7f3d0; }
.woocommerce-account .status-pending   { background:#f1f5f9; color:#334155; border-color:#e2e8f0; }
.woocommerce-account .status-cancelled { background:#fef2f2; color:#991b1b; border-color:#fecaca; }
.woocommerce-account .status-refunded  { background:#eff6ff; color:#1e40af; border-color:#bfdbfe; }
.woocommerce-account .status-failed    { background:#fef2f2; color:#991b1b; border-color:#fecaca; }

/* liczby wyrównane do prawej */
.woocommerce-account .woocommerce-orders-table__cell-order-total,
.woocommerce-account .woocommerce-orders-table__cell-order-actions {
  text-align: right;
}

/* przyciski akcji (Płać, Anuluj, Podejrzyj) */
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button,
.woocommerce-account .woocommerce-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .4rem;
  padding: 8px 12px;
  border-radius: 6px;
  border: 1px solid var(--acc);
  background: var(--acc);
  color: #fff;
  text-decoration: none;
  font-weight: 700;
  line-height: 1.2;
  transition: transform .06s ease, background .15s ease, color .15s ease;
}
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button:hover,
.woocommerce-account .woocommerce-button:hover { filter: brightness(0.95); }
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button.alt {
  background: #fff; color: var(--acc);
}
.woocommerce-account .woocommerce-orders-table__cell-order-actions .button + .button { margin-left: 8px; }

/* paginacja */
.woocommerce-account .woocommerce-pagination {
  display: flex; gap: 6px; margin-top: 16px;
}
.woocommerce-account .woocommerce-pagination .page-numbers > li { list-style: none; }
.woocommerce-account .woocommerce-pagination a,
.woocommerce-account .woocommerce-pagination span {
  display: inline-flex; align-items:center; justify-content:center;
  width: 36px; height: 36px; border:1px solid var(--ring);
  border-radius: 6px; text-decoration:none; color:#374151; background:#fff;
}
.woocommerce-account .woocommerce-pagination .current {
  background: var(--acc); color:#fff; border-color: var(--acc);
}

/* pusty stan */
.woocommerce-account .woocommerce-info,
.woocommerce-account .woocommerce-message {
  border: 1px solid var(--ring);
  background: #fafafa;
  padding: 16px;
  border-radius: 8px;
}

/* —— WIDOK POJEDYNCZEGO ZAMÓWIENIA ——————————————— */
.woocommerce-account .woocommerce-order details,
.woocommerce-account .woocommerce-order { color: var(--txt); }

.woocommerce-account .woocommerce-order-overview,
.woocommerce-account .woocommerce-customer-details {
  border: 1px solid var(--ring);
  background: #fff;
  padding: 16px;
  border-radius: 8px;
  margin: 14px 0;
}

.woocommerce-account .woocommerce-table--order-details {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  margin-top: 14px;
  border: 1px solid var(--ring);
}
.woocommerce-account .woocommerce-table--order-details th {
  background:#fafafa; text-align:left; padding:12px 14px; border-bottom:1px solid var(--ring);
}
.woocommerce-account .woocommerce-table--order-details td {
  background:#fff; padding:12px 14px; border-top:1px solid var(--ring);
}

/* jeszcze ładniejszy „Zamów ponownie” */
.woocommerce-account .order-again .button { margin-top: 8px; }

/* —— RESPONSYWNOŚĆ: tabela → „karty” ———————————— */
@media (max-width: 760px) {
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table thead { display: none; }
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody tr {
    display: block;
    margin-bottom: 12px;
    border-radius: 10px;
    overflow: hidden;
  }
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody td {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    border: 0;
    border-top: 1px solid var(--ring);
    padding: 10px 14px;
  }
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody td:first-child {
    border-top: 0;
  }
  /* Woo dodaje data-title na komórki – pokażmy etykiety */
  .woocommerce-account .woocommerce-MyAccount-content .woocommerce-orders-table tbody td:before {
    content: attr(data-title);
    color: var(--muted);
    font-weight: 600;
  }
  .woocommerce-account .woocommerce-orders-table__cell-order-actions {
    text-align: left;
    flex-wrap: wrap;
    gap: 8px;
  }
}






/* ——— Zmienne / kolory ——— */
.woocommerce-order { --acc:#b3003c; --ring:#e6e6e6; --txt:#222; --muted:#6b7280; }

/* ——— Nagłówek „Dziękujemy” ——— */
.woocommerce-order .woocommerce-thankyou-order-received,
.woocommerce-order .woocommerce-notice--success {
  position: relative;
  padding: 16px 16px 16px 52px;
  background: #fff6f9;
  border: 1px solid #ffd6e2;
  color: var(--txt);
  border-radius: 10px;
  font-size: 20px;
  font-weight: 800;
  margin: 10px 0 18px;
}
.woocommerce-order .woocommerce-thankyou-order-received::before,
.woocommerce-order .woocommerce-notice--success::before{
  content:"";
  position:absolute; left:16px; top:50%; transform:translateY(-50%);
  width:24px; height:24px; border-radius:50%;
  background: var(--acc);
  -webkit-mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M9.55 17.6 4.9 13l1.7-1.7 2.95 2.95L17.4 6.4l1.7 1.7z'/></svg>") center/16px 16px no-repeat;
  mask: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path fill='%23000' d='M9.55 17.6 4.9 13l1.7-1.7 2.95 2.95L17.4 6.4l1.7 1.7z'/></svg>") center/16px 16px no-repeat;
}

/* ——— Siatka z podsumowaniem (nr, data, e-mail, suma, metoda) ——— */
.woocommerce-order .woocommerce-order-overview {
  list-style: none; margin: 0 0 18px; padding: 0;
  display: grid; gap: 12px;
  grid-template-columns: repeat(auto-fit, minmax(220px,1fr));
}
.woocommerce-order .woocommerce-order-overview li {
  background:#fff; border:1px solid var(--ring); border-radius:10px;
  padding: 12px 14px;
}
.woocommerce-order .woocommerce-order-overview li > strong {
  display:block; font-size:12px; color:var(--muted);
  text-transform:uppercase; letter-spacing:.02em; margin-bottom:6px;
}
.woocommerce-order .woocommerce-order-overview li > span,
.woocommerce-order .woocommerce-order-overview li > mark,
.woocommerce-order .woocommerce-order-overview li > time,
.woocommerce-order .woocommerce-order-overview li > a {
  display:block; color:var(--txt); font-weight:800; font-size:16px;
}

/* ——— Tabela produktów ——— */
.woocommerce-order .woocommerce-table--order-details{
  width:100%; border-collapse:separate; border-spacing:0; margin-top: 8px;
  border:1px solid var(--ring); border-radius:10px; overflow:hidden;
}
.woocommerce-order .woocommerce-table--order-details th{
  background:#fafafa; text-align:left; padding:12px 14px; border-bottom:1px solid var(--ring);
}
.woocommerce-order .woocommerce-table--order-details td{
  background:#fff; padding:12px 14px; border-top:1px solid var(--ring);
}
.woocommerce-order .woocommerce-table--order-details tfoot th{
  font-weight:700; color:#111827;
}

/* ——— Adresy klienta ——— */
.woocommerce-order .woocommerce-customer-details{
  display:grid; gap:16px; margin-top:18px;
  grid-template-columns: 1fr 1fr;
}
.woocommerce-order .woocommerce-column__title{
  font-size:18px; font-weight:800; margin:0 0 8px;
}
.woocommerce-order .woocommerce-column{
  background:#fff; border:1px solid var(--ring); border-radius:10px; padding:16px;
}
@media (max-width: 860px){
  .woocommerce-order .woocommerce-customer-details{ grid-template-columns:1fr; }
}

/* ——— Przyciski / linki ——— */
.woocommerce-order .button, .woocommerce-order .woocommerce-button{
  display:inline-flex; align-items:center; justify-content:center;
  gap:.4rem; padding:10px 14px; border-radius:8px;
  border:1px solid var(--acc); background:var(--acc); color:#fff;
  text-decoration:none; font-weight:800; line-height:1.2;
  transition:filter .15s ease;
}
.woocommerce-order .button:hover, .woocommerce-order .woocommerce-button:hover{ filter:brightness(.95); }

/* ——— Sekcje info (np. darmowa wysyłka itp.) ——— */
.woocommerce-order .woocommerce-info,
.woocommerce-order .woocommerce-message{
  border:1px solid var(--ring); background:#fafafa;
  padding:14px; border-radius:10px; margin: 12px 0;
}
/* ——— GŁÓWNY KONTENER STRONY „Dziękujemy” ——— */
body.woocommerce-order-received .woocommerce {
  max-width: 1100px;           /* szerokość treści */
  margin-inline: auto;         /* wyśrodkowanie */
  padding-inline: 16px;        /* bezpieczne marginesy na mobile */
}

/* elementy, które mają wyglądać „kompaktowo” (trochę węższe) */
body.woocommerce-order-received .woocommerce-order .woocommerce-thankyou-order-received,
body.woocommerce-order-received .woocommerce-order .woocommerce-notice--success,
body.woocommerce-order-received .woocommerce-order .woocommerce-order-overview,
body.woocommerce-order-received .woocommerce-order .woocommerce-customer-details {
  max-width: 980px;
  margin-inline: auto;
}

/* upewnij się, że stół produktów nie wyjeżdża poza kontener */
body.woocommerce-order-received .woocommerce-order .woocommerce-table--order-details {
  width: 100%;
  margin-inline: auto;
}
.header-icons { display:flex; align-items:center; gap:10px; }
.header-icons .icon-link{
  --size: 36px;
  width: var(--size); height: var(--size);
  display:inline-flex; align-items:center; justify-content:center;
  border:1px solid #e6e6e6; border-radius: 999px;
  background:#fff; color:#7a0028; text-decoration:none;
  transition: transform .06s ease, filter .15s ease, border-color .15s ease;
}
.header-icons .icon-link:hover{ filter: brightness(0.95); border-color:#d9d9d9; }
.header-icons .icon-link:active{ transform: translateY(1px); }
.header-icons .icon-link svg{ display:block; }

.header-icons .logout { color:#b3003c; }
.header-icons .login  { color:#7a0028; }

/* ukryty, ale dostępny tekst */
.sr-only{
  position:absolute !important; width:1px; height:1px; padding:0; margin:-1px;
  overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;
}




:root{
  --brand:#b3003c;
  --brand-2:#d81b5d;
  --chip-bg:#fff;
  --chip-border:#e5e7eb;
  --panel-bg:#fff;
}

.mega-catnav{
  position:relative;
  z-index:500;
  background:#fafafa;
  border-top:1px solid #eee;
  border-bottom:1px solid #eee;
}

.mega-catnav__inner{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:.5rem;
  padding:.5rem 0;
}

.mega-catnav__shortcuts{
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.5rem;
  margin:0;
  padding:0;
  list-style:none;
}

.mega-catnav__trigger,
.mega-catnav__shortcut a{
  display:block;
  padding:.6rem .95rem;
  border:1px solid var(--chip-border);
  border-radius:999px;
  background:var(--chip-bg);
  font-size:17px;
  font-weight:700;
  line-height:1;
  white-space:nowrap;
  text-decoration:none;
  transition:background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease, transform .18s ease;
  cursor:pointer;
}

.mega-catnav__trigger:hover,
.mega-catnav__shortcut a:hover{
  color:#fff;
  border-color:var(--brand);
  background-image:linear-gradient(135deg, var(--brand), var(--brand-2));
  box-shadow:0 6px 16px rgba(179,0,60,.18);
  transform:translateY(-1px);
}

.mega-catnav__trigger:focus-visible,
.mega-catnav__shortcut a:focus-visible{
  outline:0;
  box-shadow:0 0 0 3px rgba(179,0,60,.25);
}

/* aktywny element (tylko bieżący) */
.mega-catnav__trigger.is-active,
.mega-catnav__shortcut a.is-active{
  color:#fff;
  border-color:var(--brand);
  background-image:linear-gradient(135deg, var(--brand), var(--brand-2));
  box-shadow:0 6px 16px rgba(179,0,60,.18);
}

/* gdy panel otwarty, ale trigger NIE jest aktywny – ma wyglądać normalnie */
.mega-catnav__trigger[aria-expanded="true"]:not(.is-active){
  color:inherit;
  border-color:var(--chip-border);
  background:var(--chip-bg);
  box-shadow:none;
  transform:none;
}


.mega-catpanel{
  position:absolute;
  left:0;
  right:0;
  top:calc(100% - 1px);
  z-index:501;
  background:var(--panel-bg);
  border-top:1px solid #eee;
  border-bottom:1px solid #eee;
  box-shadow:0 12px 24px rgba(0,0,0,.06);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease, visibility .16s ease;
}

.mega-catpanel.is-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.mega-catpanel .container{
  padding:1rem 0 1.25rem;
}

.mega-catpanel__grid{
  display:grid;
  gap:14px 16px;
  grid-template-columns:repeat(auto-fit, minmax(200px,1fr));
}

.mega-catpanel__tile{
  display:flex;
  align-items:center;
  gap:.65rem;
  padding:.8rem .95rem;
  border:1px solid #f0f0f0;
  border-radius:12px;
  background:#fafafa;
  text-decoration:none;
  transition:background .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease, color .18s ease;
}

.mega-catpanel__tile:hover,
.mega-catpanel__tile:focus-visible{
  border-color:var(--brand);
  color:#111;
  background-image:linear-gradient(135deg, #fff, rgba(179,0,60,.06));
  box-shadow:0 4px 12px rgba(0,0,0,.08);
  transform:translateY(-1px);
}

.mega-catpanel__thumb img{
  width:48px;
  height:48px;
  object-fit:cover;
  border-radius:10px;
}

.mega-catpanel__name{
  font-weight:700;
  font-size:16px;
  color:#222;
}

.mega-catoverlay{
  position:fixed;
  inset:0;
  z-index:500;
  background:rgba(0,0,0,.45);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .16s ease, visibility .16s ease;
}

.mega-catoverlay.is-visible{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}

.mega-catpanel__close{
  position:fixed;
  right:12px;
  top:12px;
  z-index:502;
  width:40px;
  height:40px;
  border-radius:999px;
  border:0;
  cursor:pointer;
  background:linear-gradient(135deg, var(--brand), var(--brand-2));
  color:#fff;
  font-size:24px;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 6px 16px rgba(179,0,60,.22);
}

html.mega-lock, body.mega-lock{
  overflow:hidden;
  height:100%;
}

@media (max-width:960px){
  .mega-catnav__shortcuts{ display:none; }
  .mega-catnav__inner{ gap:.5rem; }
  .mega-catnav__trigger{
    width:min(100%,640px);
    text-align:center;
    color:#fff;
    border-color:var(--brand);
    background-image:linear-gradient(135deg, var(--brand), var(--brand-2));
    box-shadow:0 6px 16px rgba(179,0,60,.18);
  }
  .mega-catnav__trigger::before{
    content:"≡";
    font-weight:700;
    margin-right:.5rem;
    font-size:18px;
    vertical-align:middle;
  }
  .mega-catpanel{
    position:fixed;
    left:0;
    right:0;
    top:0;
    bottom:0;
    z-index:501;
    max-height:none;
    height:100dvh;
    overflow:auto;
    border:0;
    box-shadow:0 10px 24px rgba(0,0,0,.18);
  }
  .mega-catpanel .container{ padding:1rem; }
  .mega-catpanel__grid{
    grid-template-columns:repeat(auto-fit, minmax(160px,1fr));
    gap:12px;
    padding-top:40px;
  }
}
/* domyślnie X ukryty */
.mega-catpanel__close{ display:none; }

/* tylko mobile pokazujemy X */
@media (max-width:960px){
  .mega-catpanel__close{ display:flex; }
}
@media (max-width:960px){
  .mega-catnav__trigger{
    display:inline-flex;               /* wyrównanie ikony i tekstu */
    align-items:center;
    justify-content:center;
    gap:.5rem;                         /* odstęp ikona–tekst */
    text-align:center;                 /* nic nie przeszkadza flexowi */
  }
  .mega-catnav__trigger::before{
    content:"";
    display:inline-block;
    width:18px;                        /* szerokość ikonki */
    height:2px;                        /* grubość paska */
    background:currentColor;           /* kolor = kolor tekstu (#fff) */
    border-radius:2px;
    box-shadow:
      0 6px 0 currentColor,            /* 3 paski */
      0 -6px 0 currentColor;
  }
}
/* twarda blokada tła */
html.is-locked,
body.is-locked{
  position:fixed;
  width:100%;
  height:100%;
  overflow:hidden;
}

/* panel przewijalny, bez scroll chainingu */
.mega-catpanel{
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
}

/* overlay nie przepuszcza gestów dotyku */
.mega-catoverlay.is-visible{ touch-action:none; }
.mega-catpanel__contents{ width:100%; }
.mega-catpanel__content{ display:none; }
.mega-catpanel__content.is-active{ display:block; }













:root{
  --brand:#b3003c;
  --brand-2:#d81b5d;
  --ui-bg:#ffffff;
  --ui-muted:#f5f5f5;
  --border:#e6e6e6;
  --text:#222;
  --text-muted:#666;
}

.bs24-filters{
  box-sizing:border-box;
  max-width:100%;
  width:100%;
  background:#fafafa;
  border:1px solid var(--border);
  border-radius:12px;
  padding:16px;
  overflow:hidden;
}

.bs24-filters *{ box-sizing:border-box; }

/* Sekcje */
.bs24-group{ margin:0 0 18px; }
.bs24-group:last-child{ margin-bottom:0; }
.bs24-group h4{
  margin:0 0 10px;
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.02em;
  font-weight:700;
  color:var(--text);
}

/* Lista marek */
.bs24-brands{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(220px,1fr));
  gap:8px;
  max-height:320px;
  overflow:auto;
  padding:10px;
  background:var(--ui-bg);
  border:1px solid var(--border);
  border-radius:10px;
}

.bs24-brands label{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
  padding:10px 12px;
  background:#fff;
  border:1px solid var(--border);
  border-radius:999px;
  color:var(--text);
  cursor:pointer;
  transition:box-shadow .18s ease, border-color .18s ease, transform .18s ease, background .18s ease;
}

.bs24-brands label:hover{
  border-color:var(--brand);
  background:linear-gradient(135deg,#fff,rgba(179,0,60,.06));
  box-shadow:0 4px 10px rgba(0,0,0,.06);
  transform:translateY(-1px);
}

.bs24-brands input[type="checkbox"]{
  flex:0 0 auto;
  width:16px;
  height:16px;
  accent-color:var(--brand);
}

.bs24-brands label span{
  flex:1 1 auto;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.bs24-brands label small{
  flex:0 0 auto;
  color:var(--text-muted);
}

/* Zakres ceny */
.bs24-range{ padding:10px 0 0; }
#bs24_price_slider{
  max-width:100%;
  margin:12px 6px 0;
}

/* noUiSlider – wygląd zgodny z brandem */
.noUi-target{
  border:none;
  border-radius:999px;
  background:#ddd;
  box-shadow:none;
  height:4px;
}
.noUi-connect{ background:linear-gradient(135deg,var(--brand),var(--brand-2)); }
.noUi-horizontal .noUi-handle{
  width:18px;
  height:18px;
  top:-7px;
  border-radius:50%;
  border:2px solid #fff;
  background:linear-gradient(135deg,var(--brand),var(--brand-2));
  box-shadow:0 2px 6px rgba(0,0,0,.15);
  cursor:grab;
}
.noUi-horizontal .noUi-handle:active{ cursor:grabbing; }
.noUi-handle:before,
.noUi-handle:after{ display:none; }

/* Pola liczby pod suwakiem */
.bs24-range-labels{
  display:flex;
  gap:10px;
  justify-content:space-between;
  align-items:center;
  margin:12px 0 0;
  width:100%;
}

.bs24-price-input{
  width:120px;
  max-width:calc(50% - 5px);
  padding:8px 12px;
  border:1px solid var(--border);
  border-radius:10px;
  background:#fff;
  color:var(--text);
  font-size:14px;
  text-align:center;
  transition:box-shadow .18s ease, border-color .18s ease;
}
.bs24-price-input:focus{
  outline:0;
  border-color:var(--brand);
  box-shadow:0 0 0 3px rgba(179,0,60,.18);
}

/* Akcje */
.bs24-actions{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-start;
  margin-top:16px;
  padding-top:12px;
  border-top:1px solid var(--border);
}

.bs24-apply,
.bs24-reset{
  appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.4rem;
  padding:.6rem 1rem;
  border-radius:999px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
  border:1px solid transparent;
  white-space:nowrap;
}

.bs24-apply{
  color:#fff;
  background:linear-gradient(135deg,var(--brand),var(--brand-2));
  box-shadow:0 6px 14px rgba(179,0,60,.18);
  border-color:var(--brand);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}
.bs24-apply:hover{ transform:translateY(-1px); filter:saturate(1.05); }

.bs24-reset{
  color:var(--text);
  background:#fff;
  border-color:var(--border);
  transition:border-color .18s ease, background .18s ease, transform .18s ease;
}
.bs24-reset:hover{
  border-color:var(--brand);
  background:linear-gradient(135deg,#fff,rgba(179,0,60,.06));
  transform:translateY(-1px);
}

/* Zapobieganie przewijaniu w poziomie */
.bs24-filters,
.bs24-filters *{
  max-width:100%;
  overflow-wrap:break-word;
}

/* Responsywność */
@media (max-width: 1024px){
  .bs24-brands{ grid-template-columns:repeat(auto-fill, minmax(180px,1fr)); }
}
@media (max-width: 768px){
  .bs24-filters{ padding:14px; border-radius:10px; }
  .bs24-brands{
    max-height:260px;
    grid-template-columns:1fr;
    padding:8px;
  }
  .bs24-range-labels{
    flex-wrap:wrap;
    gap:8px;
  }
  .bs24-price-input{
    width:100%;
    max-width:100%;
  }
  .bs24-actions{
    flex-wrap:wrap;
    justify-content:stretch;
  }
  .bs24-apply,
  .bs24-reset{
    width:100%;
  }
}

/* Drobne dopieszczenie scrollbarów (tylko w kontenerze marek) */
.bs24-brands{
  scrollbar-color: rgba(179,0,60,.6) rgba(0,0,0,.06);
  scrollbar-width: thin;
}
.bs24-brands::-webkit-scrollbar{ height:8px; width:8px; }
.bs24-brands::-webkit-scrollbar-thumb{ background:rgba(179,0,60,.6); border-radius:999px; }
.bs24-brands::-webkit-scrollbar-track{ background:rgba(0,0,0,.06); border-radius:999px; }







/* =========================================
   WooCommerce – karty płatności w 2 kolumnach
   ========================================= */

#payment.woocommerce-checkout-payment {
    --payment-accent: #b0003c;      /* kolor aktywnej metody */
    --payment-border: #dde1ea;
    --payment-bg: #ffffff;
    --payment-card-bg: #f9fafc;
}

/* dwie kolumny jak w Autopay */
#payment .wc_payment_methods {
    list-style: none;
    margin: 0 0 1.5rem;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

/* całe <li> to karta */
#payment .wc_payment_method {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 10px;
    border: 1px solid var(--payment-border);
    background: var(--payment-card-bg);
    box-shadow: 0 2px 8px rgba(0,0,0,0.03);
    min-height: 86px;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}

/* hover */
#payment .wc_payment_method:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(0,0,0,0.06);
}

/* aktywna karta */
#payment .wc_payment_method:has(input:checked) {
    border-color: var(--payment-accent);
    box-shadow: 0 6px 18px rgba(176,0,60,0.18);
    background: #fff;
}

/* wyłączamy domyślne style */
#payment .wc_payment_method label,
#payment .wc_payment_method .payment_box {
    border: 0;
    background: transparent;
    box-shadow: none;
    margin: 0;
    padding: 0;
}

/* ukryte natywne radio */
#payment .wc_payment_method input.input-radio {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* górny wiersz – logo + tekst + pseudo-radio */
#payment .wc_payment_method label {
    display: flex;
    align-items: center;
    gap: 0.9rem;
    padding: 0.75rem 1rem 0.75rem 2.6rem; /* miejsce na kółko */
    font-weight: 500;
    cursor: pointer;
}

/* logo z bramki (img lub .payment-methods--logos z WCPay) */
#payment .wc_payment_method label img,
#payment .wc_payment_method label .payment-methods--logos {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    max-height: 30px;
}
#payment .wc_payment_method label img {
    width: auto;
}

/* tekst metody – niech zajmuje resztę szerokości */
#payment .wc_payment_method label span,
#payment .wc_payment_method label strong {
    font-weight: 600;
}

/* custom radio po lewej stronie nazwy */
#payment .wc_payment_method label::before,
#payment .wc_payment_method label::after {
    content: "";
    position: absolute;
    left: 0.9rem;
    top: 50%;
    transform: translateY(-50%);
    border-radius: 50%;
}

#payment .wc_payment_method label::before {
    width: 18px;
    height: 18px;
    border: 2px solid var(--payment-border);
    background: #fff;
}

#payment .wc_payment_method label::after {
    width: 10px;
    height: 10px;
    background: var(--payment-accent);
    transform: translateY(-50%) scale(0);
    opacity: 0;
    transition: transform 0.2s ease, opacity 0.2s ease;
}

/* zaznaczone radio */
#payment .wc_payment_method input:checked + label::before {
    border-color: var(--payment-accent);
}
#payment .wc_payment_method input:checked + label::after {
    transform: translateY(-50%) scale(1);
    opacity: 1;
}

/* box z dodatkowymi opcjami (np. formularz karty, lista banków) */
#payment .wc_payment_method .payment_box {
    margin: 0 1rem 0.9rem 2.6rem; /* wyrównanie z tekstem, nie z kółkiem */
    padding-top: 0.3rem;
    font-size: 0.9rem;
    line-height: 1.5;
}

/* żeby pierwszy element w boxie nie był przyklejony do labela */
#payment .wc_payment_method .payment_box > *:first-child {
    margin-top: 0.2rem;
}

/* =========================================
   RWD – na telefonie jedna kolumna
   ========================================= */

@media (max-width: 900px) {
    #payment .wc_payment_methods {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 600px) {
    #payment .wc_payment_method {
        border-radius: 8px;
    }

    #payment .wc_payment_method label {
        padding: 0.7rem 0.85rem 0.7rem 2.4rem;
        font-size: 0.95rem;
        flex-wrap: wrap;
    }

    #payment .wc_payment_method label img,
    #payment .wc_payment_method label .payment-methods--logos {
        max-height: 24px;
    }

    #payment .wc_payment_method .payment_box {
        margin: 0 0.85rem 0.8rem 2.4rem;
        font-size: 0.9rem;
    }
}
/* =========================================
   FIX: P24 BLIK – normalny tekst w opisie
   ========================================= */

/* kontener z checkboxem – zamiast flexa zwykły blok */
#payment .p24-payment-container.p24-virtual-payment .woocommerce-input-wrapper {
    display: block !important;
    justify-content: flex-start !important;
}

/* sam label z oświadczeniem */
#payment .p24-payment-container.p24-virtual-payment .woocommerce-input-wrapper label.checkbox {
    display: inline-flex;            /* checkbox + tekst obok siebie */
    align-items: flex-start;
    gap: 0.45rem;
    font-size: 0.9rem;
    line-height: 1.4;
    white-space: normal;
    text-align: left;
}

/* wyrównanie checkboxa do pierwszej linii tekstu */
#payment .p24-payment-container.p24-virtual-payment .woocommerce-input-wrapper label.checkbox input[type="checkbox"] {
    margin-top: 0.1rem;
}

/* lekkie odsunięcie całego bloku od krawędzi karty */
#payment .wc_payment_method .payment_box .p24-payment-container.p24-virtual-payment {
    padding: 0.25rem 0 0.25rem 0;
}
/* =========================================
   FIX: Przelewy24 BLIK – opis oświadczenia
   ========================================= */

/* kontener z checkboxem – zamiast flexa zwykły blok */
#payment .p24-payment-container.p24-virtual-payment .woocommerce-input-wrapper {
    display: block !important;
    justify-content: flex-start !important;
}

/* sam label z oświadczeniem */
#payment .p24-payment-container.p24-virtual-payment .woocommerce-input-wrapper label.checkbox {
    display: inline-flex !important;   /* checkbox + tekst w jednym wierszu */
    align-items: flex-start;
    gap: 0.45rem;
    font-size: 0.9rem;
    line-height: 1.4;
    white-space: normal;
    text-align: left;
    word-spacing: normal;
}

/* wyrównanie checkboxa do pierwszej linii tekstu */
#payment .p24-payment-container.p24-virtual-payment
.woocommerce-input-wrapper label.checkbox input[type="checkbox"] {
    margin-top: 0.1rem;
}
/* =========================================
   HARD FIX: Przelewy24 BLIK – opis oświadczenia
   ========================================= */

/* kontener z checkboxem – zwykły blok */
#payment .p24-payment-container.p24-virtual-payment span.woocommerce-input-wrapper {
    display: block !important;
}

/* label z oświadczeniem */
#payment .p24-payment-container.p24-virtual-payment
span.woocommerce-input-wrapper > label.checkbox {
    display: flex !important;          /* input + tekst obok siebie */
    flex-wrap: wrap !important;        /* wielolinijkowy tekst */
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 0.4rem !important;

    font-size: 0.9rem !important;
    line-height: 1.4 !important;
    text-align: left !important;
    white-space: normal !important;
    word-spacing: normal !important;
}

/* sam checkbox – mały margines od tekstu */
#payment .p24-payment-container.p24-virtual-payment
span.woocommerce-input-wrapper > label.checkbox > input[type="checkbox"] {
    flex: 0 0 auto;
    margin-top: 0.15rem;
}
/* =========================================
   WooCommerce – blok "Twoje zamówienie"
   ========================================= */

#order_review {
    --order-accent: #b0003c;    /* ten sam kolor co przycisk */
    --order-border: #ececf2;
    --order-bg: #ffffff;
    --order-bg-alt: #faf9fc;
}

/* nagłówek */
#order_review_heading {
    font-size: 1.35rem;
    font-weight: 600;
    margin-bottom: 0.9rem;
    letter-spacing: 0.01em;
}

/* karta z podsumowaniem */
#order_review {
    background: var(--order-bg);
    border-radius: 18px;
    box-shadow: 0 12px 30px rgba(0,0,0,0.06);
    padding: 1.4rem 1.6rem 1.2rem;
    margin-bottom: 1.8rem;
}

/* sama tabela */
#order_review .shop_table.woocommerce-checkout-review-order-table {
    width: 100%;
    margin: 0;
    border-collapse: separate;
    border-spacing: 0;
    background: transparent;
}

/* komórki */
#order_review .shop_table th,
#order_review .shop_table td {
    padding: 0.6rem 0.2rem;
    border: none;
    font-size: 0.95rem;
}

/* nagłówki kolumn */
#order_review .shop_table thead th {
    text-transform: uppercase;
    font-size: 0.8rem;
    letter-spacing: 0.06em;
    color: #777;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--order-border);
}

/* wiersze tabeli (produkty, suma, wysyłka) */
#order_review .shop_table tbody tr,
#order_review .shop_table tfoot tr {
    border-bottom: 1px solid var(--order-border);
}

/* trochę większy odstęp pod ostatnim wierszem przed "Łącznie" */
#order_review .shop_table tfoot tr:last-child {
    border-bottom: none;
}

/* nazwa produktu */
#order_review .shop_table .product-name {
    font-weight: 500;
}

/* ilość x1 przy produkcie – delikatniej */
#order_review .shop_table .product-name .product-quantity {
    font-weight: 400;
    color: #888;
    margin-left: 0.25rem;
}

/* kwoty po prawej */
#order_review .shop_table .product-total,
#order_review .shop_table tfoot td {
    text-align: right;
}

/* wiersz "Kwota" + "Wysyłka" – lekko wyszarzone tło */
#order_review .shop_table tfoot .cart-subtotal th,
#order_review .shop_table tfoot .cart-subtotal td,
#order_review .shop_table tfoot .shipping th,
#order_review .shop_table tfoot .shipping td {
    background: var(--order-bg-alt);
}

/* lista metod wysyłki w komórce */
#order_review .shop_table tfoot .shipping td ul#shipping_method {
    list-style: none;
    margin: 0;
    padding: 0;
}
#order_review .shop_table tfoot .shipping td ul#shipping_method li {
    margin: 0.1rem 0;
}

/* wiersz "Łącznie" – wyróżnienie */
#order_review .shop_table tfoot .order-total th,
#order_review .shop_table tfoot .order-total td {
    padding-top: 0.7rem;
    padding-bottom: 0.7rem;
    background: rgba(176, 0, 60, 0.08);
    font-weight: 600;
    border-radius: 0 0 12px 12px;
}
#order_review .shop_table tfoot .order-total th {
    text-transform: uppercase;
    letter-spacing: 0.06em;
    color: var(--order-accent);
}
#order_review .shop_table tfoot .order-total .amount {
    font-size: 1.05rem;
    color: var(--order-accent);
}

/* zaokrąglenia na kartę (góra) */
#order_review .shop_table thead tr:first-child th:first-child {
    border-top-left-radius: 12px;
}
#order_review .shop_table thead tr:first-child th:last-child {
    border-top-right-radius: 12px;
}

.top-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.top-nav ul {
  display: flex;
  gap: 20px;
}

.top-right {
  display: flex;
  align-items: center;
  gap: 15px;
}

.social-links {
  display: flex;
  gap: 8px;
}

.social-link i {
  font-size: 20px;
}



.stock.out-of-stock,
.woocommerce ul.products li.product .out-of-stock {
  color: #d00 !important;  
}






/* Główna sekcja strony Inwentaryzacja */
.inwentaryzacja {
    max-width: 800px;          /* szerokość pudełka */
    margin: 140px auto 80px;   /* odstęp od góry i dołu + wyśrodkowanie */
    padding: 40px 30px;
    text-align: center;
    background: #ffffff;
    border-radius: 8px;
    border: 1px solid #eee;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.06);
}

/* Nagłówek */
.inwentaryzacja h1 {
    font-size: 32px;
    font-weight: 700;
    margin-bottom: 20px;
    color: #222;          /* tu możesz podstawić swój kolor motywu */
}

/* Tekst pod nagłówkiem */
.inwentaryzacja p {
    font-size: 16px;
    line-height: 1.6;
    margin: 0;
    color: #444;
}

/* Trochę oddechu od headera motywu */
.site-main {
    padding-top: 20px;
}

/* Responsywność – mniejsze odstępy na telefonach */
@media (max-width: 767px) {
    .inwentaryzacja {
        margin: 100px 15px 60px;
        padding: 30px 20px;
    }

    .inwentaryzacja h1 {
        font-size: 24px;
    }

    .inwentaryzacja p {
        font-size: 15px;
    }
}






/* =========================================
   CHECKOUT – naprawa tabeli "Twoje zamówienie" + InPost
   ========================================= */

/* 1) TH nie może być centrowane */
body.woocommerce-checkout #order_review .shop_table th{
  text-align:left;
}

/* 2) W stopce zostaw kwoty po prawej, ale NIE wysyłkę */
body.woocommerce-checkout #order_review .shop_table tfoot td{
  text-align:right;
}
body.woocommerce-checkout #order_review .shop_table tfoot .woocommerce-shipping-totals td{
  text-align:left !important; /* tu jest lista metod wysyłki */
}

/* 3) Uporządkowanie listy metod wysyłki (InPost) */
body.woocommerce-checkout #order_review ul#shipping_method{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:10px;
}

body.woocommerce-checkout #order_review ul#shipping_method > li{
  display:flex;
  align-items:center;
  gap:12px;
  padding:10px 12px;
  border:1px solid var(--order-border, #ececf2);
  border-radius:12px;
  background:#fff;
}

/* radio – bez dziwnych marginesów */
body.woocommerce-checkout #order_review ul#shipping_method input[type="radio"]{
  margin:0;
  flex:0 0 auto;
}

/* label ma się łamać i zajmować miejsce */
body.woocommerce-checkout #order_review ul#shipping_method label{
  margin:0;
  flex:1 1 auto;
  white-space:normal;
}

/* kontener InPost (logo/opis) – w jednej linii i ładnie wyrównany */
body.woocommerce-checkout #order_review .inpost_pl-shipping-method-meta-wrap{
  display:inline-flex !important;
  align-items:center;
  gap:8px;
  margin-left:auto; /* meta na prawo, tekst zostaje przy labelu */
}

/* delikatne wyróżnienie zaznaczonej metody (opcjonalnie, nowoczesne przeglądarki) */
body.woocommerce-checkout #order_review ul#shipping_method > li:has(input:checked){
  border-color: var(--order-accent, #b0003c);
  background: rgba(176,0,60,0.04);
  box-shadow: 0 6px 18px rgba(176,0,60,0.12);
}

/* Mobile: pozwól elementom się zawijać */
@media (max-width: 520px){
  body.woocommerce-checkout #order_review ul#shipping_method > li{
    flex-wrap:wrap;
  }
  body.woocommerce-checkout #order_review .inpost_pl-shipping-method-meta-wrap{
    width:100%;
    margin-left:0;
  }
}



