.custom-search {
  position: relative;
  max-width: 400px;
  z-index: 98;
  margin: 0 auto;
  min-width: 300px;
}
.custom-search input {width: 100%; padding:13px !important; font-size:16px !important;}
.custom-search button#custom-search-submit {width: 30px; height: 30px; position: absolute; right: 6px; top: 50%; transform: translateY(-50%); border:0; background:transparent; cursor:pointer;}
.custom-search button#custom-search-submit svg {margin-top:2px;}


#custom-search-results p {margin-bottom: 0; color: #111111;}
#custom-search-results {
  position: absolute;
  top: calc(100% - 12px);
  left: 0;
  right: 0;
  background: #fff;
  max-height: 80vh;
  overflow-y: auto;
  z-index: 99;
  border-radius: 0 0 5px 5px;
    padding:15px 15px 0 15px;
}

.search-section-title {
    font-size: 12px;
	text-transform:uppercase;
	font-weight:600;
    line-height: 110%;
    text-align: left;
    padding: 7px 0;
    position: relative;
    border-bottom: 1px solid #dfdfdf;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    resize: vertical;
    width: 100%;
    transition: none !important;
	color:#555555;
}

.search-section ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.search-section li {
  display: flex;
  align-items: center;
  padding: 5px 0;
}

.search-section li a {
  display: flex;
  align-items: center;
  width: 100%;
  text-decoration: none;
  color: #333;
  line-height:1.1;
  padding:5px 0;
}
.search-section li a:before {display:none;}
.search-section li a:hover {text-decoration:underline;}
.search-section li a mark {background:none; font-weight:bold;}

.search-section li a.active,
.search-section li a:focus {
  background: #f0f0f0;
  outline: none;
}

.search-section img {
  width: 50px;
  height: 50px;
  object-fit:cover;
  margin-right: 8px;
  background: #fff;
    border-radius: 3px;
}

.search-footer {
  border-top: 1px solid #eee;
  padding: 5px 15px;
  text-align: center;
  background: #f9f9f9;
  position: sticky;
  bottom: 0;
  margin: 0 -15px;
}

.icon-search {
  position: absolute;
  top: 50%;
  right: 40px;
  transform: translateY(-50%);
}

.button-popular {display: block; border: 2px solid #555; color: #222; border-radius: 4px; padding: 14px 12px; line-height: 1; margin-top: 10px; text-align:center;}
.button-popular:hover {border-color:var(--brown); color:var(--brown);}

#custom-search-spinner {
  display: none;
  animation: spin 1s linear infinite;
  position: absolute; right: 29px; top: 22px; line-height:1;
      background: #ffffff;
    z-index: 2; padding-right: 2px; width: 16px;
    height: 16px;
}

#custom-search-spinner:before {position:absolute; background:#ffffff; top:-4px; bottom:-4px; left:-4px; right:-4px; content:""; z-index:-1;}

@keyframes spin {
  0% { transform: rotate(0deg);}
  100% { transform: rotate(360deg);}
}

mark {
  background: yellow;
}

.search-overlay {
  display: none;
  position: fixed;
  top:0; left:0;
  width:100%; height:100%;
  background: rgba(0,0,0,0.2);
  z-index: 97; /* poniżej input i dropdown */
}
.search-overlay.darker {background: rgba(0,0,0,0.8);}

#custom-search-clear {
  display: none;
  position: absolute;
  top: calc(50% - 4px);
  right: 30px;
  transform: translateY(-50%);
  background: transparent;
  border: none;
  font-size: 23px;
  cursor: pointer;
}

.custom-search-ico {width:18px; height:18px;}

#search-mobile-button, #search-mobile-close {display:none;}

@media screen and (max-width: 991px) {
	#search-mobile-button {display:block; position: absolute; right: 115px; top: 6px;}
	#custom-search-results {max-height: 70vh; padding: 15px 15px 0 15px;}
	.custom-search {margin-top:20px;}
	
	#search-mobile-close {
	  background: transparent;
	  border: none;
	  font-size: 45px;
	  cursor: pointer;
	  color:#ffffff;
	  z-index: 98;
	}
	
	nav .search-section ul li a {font-weight:400;}
	
	.button-popular {padding:16px 12px;}

}

.search-footer {padding-bottom:15px;}

.custom-search.is-open #custom-search-input {border-bottom-left-radius: 0 !important; border-bottom-right-radius: 0 !important;}
#custom-search-results {border: 1px solid var(--light-grey-3) !important; border-top:0 !important;}
.custom-search.is-open #custom-search-results {border:1px solid #000000 !important; border-top:0 !important; border-top-left-radius: 0 !important; border-top-right-radius: 0 !important;}

/* Move to other files */
.prima_lowest_price_single {order:2;}
.prima_lowest_price_loop b, .prima_lowest_price_loop span, .prima_lowest_price_loop bdi {font-size:14px !important;}

@media screen and (max-width: 991px) {
    body.home .woocommerce ul.products[class*=columns-] li.product {display:grid;}
	body.home .woocommerce ul.products[class*=columns-] li.product a.add_to_cart_button {order:10; margin-left:auto; margin-right:auto;}
}

input[type="radio"], input[type="checkbox"] {
  padding: 0 !important;
  height: auto !important;
  border-radius: 50% !important;
  -webkit-appearance: radio !important;
}

@media screen and (min-width: 992px) {
    .woocommerce ul.products.columns-3 li.product {
        width: 32% !important;
        margin-right: 2% !important;
		padding-top: 0 !important;
    }

    /* Co trzeci element – ostatni w rzędzie – bez marginesu */
    .woocommerce:not(.custom_bestsellers) ul.products.columns-3 li.product:nth-child(3n) {
        margin-right: 0 !important;
    }

    .woocommerce ul.products[class*=columns-] li.product:hover {
        top:0 !important;
		border-radius: 8px;
		box-shadow: 0px 0px 32px rgba(66, 68, 90, 0.3) !important;
		/* box-shadow: 0px 0px 30px -11px rgba(66, 68, 90, 0.3) !important; */
    }
	.woocommerce ul.products[class*=columns-] li.product h2.woocommerce-loop-product__title {
		padding-bottom:0 !important;
		margin-bottom:8px !important;
	}
}

/* @media screen and (min-width: 992px) { */
    .woocommerce ul.products[class*=columns-] li.product img {
        width: 100% !important;
		border-radius: 8px !important;
		margin-bottom:16px !important;
		transition:all 0.4s;
    }
	
    .woocommerce ul.products[class*=columns-] li.product:hover img {
		border-radius: 8px 8px 0px 0px !important;
    }
/* } */

.shop-archive ul.products[class*=columns-] li.product {
    padding-bottom:70px !important;
}

.shop-archive ul.products li.product a.button {
	bottom:24px !important;
}

@media screen and (max-width: 600px) {
	.site-main .woocommerce-pagination:first-of-type {display:none;}
}