.elementor-kit-63{--e-global-color-primary:#000000;--e-global-color-secondary:#084B83;--e-global-color-text:#272727;--e-global-color-accent:#F0F6F6;--e-global-color-ec73b47:#FF66B3;--e-global-color-e54bd8b:#084B83;--e-global-color-b91a356:#42BFDD;--e-global-color-eb0afb6:#F0F6F6;--e-global-color-2af592f:#BBE6E4;--e-global-typography-primary-font-family:"Lora";--e-global-typography-secondary-font-family:"Lora";--e-global-typography-text-font-family:"Sora";--e-global-typography-text-font-weight:300;--e-global-typography-accent-font-family:"Sora";font-family:"Lora", Sans-serif;}.elementor-kit-63 button,.elementor-kit-63 input[type="button"],.elementor-kit-63 input[type="submit"],.elementor-kit-63 .elementor-button{background-color:var( --e-global-color-accent );font-weight:500;line-height:42px;color:var( --e-global-color-secondary );border-radius:5px 5px 5px 5px;padding:0px 25px 0px 25px;}.elementor-kit-63 button:hover,.elementor-kit-63 button:focus,.elementor-kit-63 input[type="button"]:hover,.elementor-kit-63 input[type="button"]:focus,.elementor-kit-63 input[type="submit"]:hover,.elementor-kit-63 input[type="submit"]:focus,.elementor-kit-63 .elementor-button:hover,.elementor-kit-63 .elementor-button:focus{background-color:var( --e-global-color-e54bd8b );color:var( --e-global-color-accent );}.elementor-kit-63 e-page-transition{background-color:#FFBC7D;}.elementor-kit-63 h1{font-style:italic;}.elementor-kit-63 h2{font-family:"Lora", Sans-serif;font-style:italic;}.elementor-kit-63 h3{font-style:italic;}.elementor-kit-63 h4{font-style:italic;}.elementor-kit-63 h5{font-style:italic;}.elementor-kit-63 h6{font-style:italic;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1280px;}.e-con{--container-max-width:1280px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1366px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:90%;}.e-con{--container-max-width:90%;}}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:80%;}.e-con{--container-max-width:80%;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:90%;}.e-con{--container-max-width:90%;}}/* Start custom CSS *//* FONT CLAMP -- Min Width 400p -- Max Width 1200px */

/* Set the root font size to 100% to be better for Web Accessibility*/
html {font-size: 100%; overflow-x: hidden;}
body {overflow-x: hidden;}


/* Add a title to the css id of a container such as 'hero' and then  use #hero to only target that container.
#hero h1 {font-size: clamp(2rem, 1.25rem + 3vw, 3.5rem);
font-weight: 800;}

#hero h2 {font-size: clamp(2rem, 1.25rem + 3vw, 3.5rem);
font-weight: 800;}

#hero p {font-size: clamp(2rem, 1.25rem + 3vw, 3.5rem);
font-weight: 800;}
*/

.h1-heading-h2 h1{
    font-size: clamp(2rem, 1.25rem + 3vw, 3.5rem);
    font-weight: 600;
}

.h2-heading-h5 h2{
    font-size: clamp(1.25rem, 0.875rem + 1.5vw, 2rem);
    font-weight: 500; 
}

.h2-heading-h3 h2{font-size: clamp(1.75rem, 1.125rem + 2.5vw, 3rem);
font-weight: 500;}

.h2-heading-h6 h2{font-size: clamp(1rem, 0.75rem + 1vw, 1.5rem);
font-weight: 400;} /* 16px to 28px */

.h2-heading-h4 h2{
    font-size: clamp(1.5rem, 1rem + 2vw, 2.5rem);
    font-weight: 500;
}

.h3-heading-h5 h3 {font-size: clamp(1.25rem, 0.875rem + 1.5vw, 2rem);
font-weight: 400;} /* 20px to 32px */

.h3-heading-h6 h3 {font-size: clamp(1rem, 0.75rem + 1vw, 1.5rem); font-weight: 500;}

.h4-heading-h6 h4 {font-size: clamp(1rem, 0.75rem + 1vw, 1.5rem);
font-weight: 400;} /* 16px to 28px */


h1 {font-size: clamp(2.5rem, 1.75rem + 3vw, 4rem);
font-weight: 700;} /* 40px to 64px */

h2 {font-size: clamp(2rem, 1.25rem + 3vw, 3.5rem);
font-weight: 600;} /* 32px to 56px */

h3 {font-size: clamp(1.75rem, 1.125rem + 2.5vw, 3rem);
font-weight: 500;} /* 28px to 48px */

h4 {font-size: clamp(1.5rem, 1rem + 2vw, 2.5rem);
font-weight: 400;} /* 24px to 40px */

h5 {font-size: clamp(1.25rem, 0.875rem + 1.5vw, 2rem);
font-weight: 400;} /* 20px to 32px */

h6 {font-size: clamp(1rem, 0.75rem + 1vw, 1.5rem);
font-weight: 400;} /* 16px to 28px */

.elementor-icon-box-title {font-size: 1.125rem; font-weight: 500;}

body {font-size: 1rem; font-weight: 300;}

p {font-size: 1rem; font-weight: 300;}

.shop-category p {font-size: clamp(1rem, 0.75rem + 1vw, 1.250rem);
font-weight: 400;}

.category-count {
    color: #F0F6F6;
}

.blue {
    color: #084B83;
}

.scrollToTopBtn {
    border: none;
	width: 50px;
	height: 50px;
    font-size: 30px !important;
	padding: 0 !important;
	overflow: hidden;
	position: fixed;
	bottom: 30px;
	right: 30px;
	z-index: 1000;
	opacity: 0;
	transform: translateY(100px);
	transition: all 0.5s ease;
	box-shadow: rgb(0 0 0 / 20%) 0px 0px 20px 1px;
}

.showBtn {
	opacity: 1;
	transform: translateY(0);
}

.scrollToTopBtn::before {
	content: '';
	display: block;
	position: absolute;
    top: 0;
	bottom: 0;
	left: -30%;
	right: 0;
	width: 0;
	height: 106%;
	background: var(--e-global-color-aa2b83f);
	transform: skew(45deg);
	transition: all 0.4s ease-in-out;
	z-index: -1;
}

.scrollToTopBtn:hover::before {
	width: 100%;
	transform: skew(0deg);
	left: 0;
}				

.overflow {
    overflow: hidden;
}

.elementor-widget-image {
    position: relative;
    overflow: hidden;
}

.elementor-widget-button .elementor-button {
    position: relative;
    display: inline-block;
    overflow: hidden;
    transition: all 0.6s ease-in-out;
    z-index: 1;
}

.elementor-widget-button .elementor-button:hover::before {
    width: 100%;
    transform: skew(0deg);
    left: 0;
}

.elementor-widget-button .elementor-button::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -15%;
    right: 0;
    width: 0;
    height: 106%;
    background: var(--e-global-color-aa2b83f);
    transform: skew(45deg);
    transition: all 0.4s ease-in-out;
    z-index: -1;
}


.img-animation,
figure.img-animation {
    position: relative;
    overflow: hidden;
    border-radius: 20px;
}

.img-animation:after,
figure.img-animation:after {
    content: "";
    position: absolute;
    width: 200%;
    height: 0%;
    left: 50%;
    top: 50%;
    background-color: rgba(255, 255, 255, .3);
    transform: translate(-50%, -50%) rotate(-45deg);
    z-index: 1;
}

.img-animation:hover:after,
figure.img-animation:hover:after {
    height: 250%;
    transition: all 600ms linear !important;
    background-color: transparent;
}

.shop-category {
    position: relative;
    overflow: hidden; /* żeby efekt nie wychodził poza obszar */
}

/* Efekt shine */
.shop-category::after {
    content: "";
    position: absolute;
    width: 200%;
    height: 0%;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
    background-color: rgba(255, 255, 255, .3);
    z-index: 1; /* poniżej tekstu */
}

/* Hover – uruchamiamy efekt */
.shop-category:hover::after {
    height: 250%;
    transition: all 600ms linear !important;
    background-color: transparent;
}

/* Tekst i treści w środku ponad efektem */
.shop-category * {
    position: relative;
    z-index: 2;
}


.elementor-icon {
    transform: rotate(0deg);
}

.elementor-widget-icon-box:not(.no-effect) .elementor-icon::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    background: var(--e-global-color-aa2b83f);
    border-radius: 8px;
    width: 100%;
    height: 100%;
    transform: scale(0);
    transition: all 0.4s ease-in-out;
    z-index: -1;
}

.elementor-icon-box-wrapper:hover .elementor-icon::before {
    transform: scale(1);
}

#menuhopin {
    position: fixed;
    top: -200px; /* ukryty nad ekranem – dopasuj do wysokości nagłówka */
    width: 100%;
    background-color: #fff;
    -webkit-transition: top 0.34s ease;
    transition: top 0.34s ease;
    -webkit-box-shadow: 0px 15px 17px -24px rgba(39, 39, 39, 1);
    -moz-box-shadow: 0px 15px 17px -24px rgba(39, 39, 39, 1);
    box-shadow: 0px 15px 17px -24px rgba(39, 39, 39, 1);
    overflow: visible;          /* na wszelki wypadek */
    z-index: 9999;              /* żeby był nad resztą strony */
}

#menuhopin.headershow {
    top: 0;                     /* pokazany na górze */
}

#menuhopin_mobile{
    position: fixed;
    top: -200px; /* ukryty nad ekranem – dopasuj do wysokości nagłówka */
    width: 100%;
    background-color: #fff;
    -webkit-transition: top 0.34s ease;
    transition: top 0.34s ease;
    -webkit-box-shadow: 0px 15px 17px -24px rgba(39, 39, 39, 1);
    -moz-box-shadow: 0px 15px 17px -24px rgba(39, 39, 39, 1);
    box-shadow: 0px 15px 17px -24px rgba(39, 39, 39, 1);
    overflow: visible;          /* na wszelki wypadek */
    z-index: 9999;              /* żeby był nad resztą strony */
}

#menuhopin_mobile.headershow {
    top: 0;                     /* pokazany na górze */
}



.ct-related-section:not(:has(.ct-related-grid .product)){
  display:none !important;
}

.sc-legal-text {
    margin-top: 20px;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
}



/*************************************/
/***** WOO COMMERCE ******************/
/*************************************/

td.product-subtotal {
    width: 15%;
}


.btn-dostepne-od-reki .amount {
    font-size: 1.250rem;
}

/* Stara cena (w del) */
.price del .woocommerce-Price-amount.amount {
    font-size: 1rem;

}

/* Nowa cena (w ins) */
.price ins .woocommerce-Price-amount.amount {
    font-size: 1.250rem;
    color: #FF66B3 !important;
}

.e-filter-item[data-filter="bez-kategorii"] {
    display: none !important;
}

.dostawa-i-zwroty,
.opcje-platnosci {
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
}

.cena_produktu .price {
    color: #272727 !important;
    font-size: clamp(1rem, 0.75rem + 1vw, 1.5rem) !important;
    font-weight: 600 !important;
}

p.stock.in-stock {
    color: #272727 !important;
    font-size: 1rem !important;
    font-weight: 400 !important;
    font-family: var(--e-global-typography-text-font-family);
}


/* Label "Cena:" przed ceną wariantu */
.single-product .single_variation_wrap .woocommerce-variation-price .price::before {
    content: "Cena: ";
    margin-right: 0.25rem;
    font-weight: 400;
}

/* TABELA WARIANTÓW (Kolor, Kolor paska) */
.woocommerce div.product form.cart table.variations {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0 6px; /* odstęp między wierszami */
    margin-bottom: 15px;
}

/* Każdy wiersz jako jasna „belka” */
.woocommerce div.product form.cart table.variations tr,
.woocommerce div.product form.cart table.variations th,
.woocommerce div.product form.cart table.variations td {
    background-color: #f7f7f7;
}

/* Lewa kolumna – etykieta atrybutu */
.woocommerce div.product form.cart table.variations th.label {
    padding: 10px 18px;
    font-weight: 600;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    width: 25%;
    text-align: left;
    vertical-align: middle;
    white-space: nowrap;
}

/* Prawa kolumna – swatche */
.woocommerce div.product form.cart table.variations td.value {
    padding: 8px 18px;
    vertical-align: middle;
}

/* -----------------------------------------------------------------
   SWATCHE KOLORÓW (Variation Swatches for WooCommerce / podobne)
------------------------------------------------------------------*/

/* Wrapper na swatche jako flex – ładne ułożenie w rzędzie */
.woocommerce div.product form.cart .variable-items-wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Pojedynczy swatch – bazowy wygląd */
.woocommerce div.product form.cart .variable-items-wrapper .variable-item .variable-item-span,
.woocommerce div.product form.cart .variable-items-wrapper .variable-item span.variable-item-span {
    width: 26px;
    height: 26px;
    border-radius: 999px;
    border: 2px solid #ddd;
    box-shadow: 0 0 0 0 transparent;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
}

/* Hover – delikatna poświata */
.woocommerce div.product form.cart .variable-items-wrapper .variable-item:hover .variable-item-span {
    box-shadow: 0 0 0 3px rgba(8, 75, 131, 0.15);
    transform: translateY(-1px);
}

/* Zaznaczony swatch – kolor brandowy + mintowa otoczka */
.woocommerce div.product form.cart .variable-items-wrapper .variable-item.selected .variable-item-span,
.woocommerce div.product form.cart .variable-items-wrapper .variable-item.selected span.variable-item-span {
    border-color: #084B83;
    box-shadow: 0 0 0 3px #bbe6e4;
}

/* Jeśli plugin dodaje obramowanie na <li> – czyścimy */
.woocommerce div.product form.cart .variable-items-wrapper .variable-item {
    border: none;
    background: transparent;
}

/* Na mobile troszkę mniej paddingu */
@media (max-width: 768px) {
    .woocommerce div.product form.cart table.variations th.label,
    .woocommerce div.product form.cart table.variations td.value {
        padding: 8px 12px;
    }
}

a.reset_variations {
    float: right;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    color: #FF66B3;
    position: absolute;
    right: 0;
    bottom: 0px;
}


/* Cały blok z ceną i przyciskiem wariantu */
.single-product div.product .single_variation_wrap {
    margin-top: 1.5rem;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
}

/* Opis wariantu (jeśli używasz) */
.single-product div.product .single_variation_wrap .woocommerce-variation-description {
    margin-bottom: 0.75rem;
    font-size: 0.95rem;
    color: #555;
}

/* Cena wariantu */
.single-product div.product .single_variation_wrap .woocommerce-variation-price .price {
    color: #272727 !important;
    font-size: clamp(1rem, 0.75rem + 1vw, 1.5rem) !important;
    font-weight: 600 !important;
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
    margin-bottom: 0; /* na wszelki wypadek */
}


/* Usuń underline z przecenionej ceny */
.produkt_cena .price del,
.produkt_cena .price del *,
.price del,
.price del * {
    text-decoration: none !important;
}

/* Dodaj poprawne skreślenie */
.produkt_cena .price del .woocommerce-Price-amount.amount,
.price del .woocommerce-Price-amount.amount {
    text-decoration: line-through !important;
    text-decoration-thickness: 2px !important;
}



/* Odstęp pod ceną (przed przyciskiem / ilością) */
.single-product div.product .single_variation_wrap .woocommerce-variation-price {
    margin-bottom: 1rem;
}

/* Układ ilość + przycisk w jednym rzędzie z odstępem */
.single-product div.product .single_variation_wrap .e-atc-qty-button-holder {
    display: flex;
    align-items: center;
    gap: 12px;             /* odstęp między ilością a przyciskiem */
}

/* Ilość – trochę dopieszczona typografia */
.single-product div.product .single_variation_wrap .quantity .qty {
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
}

/* Przycisk Dodaj do koszyka – upewniamy się, że używa tego samego fontu */
.single-product div.product .single_variation_wrap .single_add_to_cart_button {
    font-family: var(--e-global-typography-text-font-family), Sans-serif;
}

a.added_to_cart {
    flex-basis: 100% !important;
}

a.added_to_cart {
    display: none !important;
}

/* Ukryj standardowy komunikat WooCommerce "został dodany do koszyka" */
.woocommerce-message,
.woocommerce-notices-wrapper {
    display: none !important;
}

.xoo-cp-notice-box > div {
    background-color: transparent;
    border-radius: 20px;
}

.xoo-cp-btns {
    align-items: center;
}

.xoo-cp-container {
    right: 0px !important;
}

.xoo-cp-variations .variation:first-of-type {
    display: block !important;
}


@media (max-width: 520px) {
    .xoo-cp-container {
        right: 0px !important;
        width: calc(100vw - 45px) !important;
    }
}


.woocommerce-error {
    border: 2px solid #FF66B3;
}

.woocommerce-error, .woocommerce-info, .woocommerce-message {
    border-radius: 20px;
    border: 2px solid #BBE6E4;
    background-color: #F0F6F6;
}

.woocommerce-error::before {
    color: #FF66B3;
}

.elementor-widget-woocommerce-cart .e-cart-section {
    padding: var(--sections-padding, 30px 30px);
}

.woocommerce-Address-title h2,
.woocommerce-order-details__title,
.woocommerce-customer-details .woocommerce-column__title {
    font-size: clamp(1.25rem, 0.875rem + 1.5vw, 2rem);
    font-weight: 400;
    font-style: normal !important;
}

.woocommerce-MyAccount-content-wrapper form h2 {
    font-size: clamp(1.25rem, 0.875rem + 1.5vw, 2rem);
    font-weight: 500;
    font-style: normal;
}

.woocommerce-breadcrumb {
    font-size: inherit !important;
}

.woocommerce .woocommerce-breadcrumb {
    margin: 0;
}


a.wc-forward.button {
    color: #fff !important;
    padding: 10px 20px !important;
    border-radius: 20px;
    background-color: #084B83 !important;
    font-family: var(--e-global-typography-text-font-family);
    font-weight: 300;
    font-size: 0.875rem;
}

a.wc-forward.button:hover {
    color: #fff !important;
    padding: 10px 20px !important;
    border-radius: 20px;
    background-color: #42BFDD !important;
    font-family: var(--e-global-typography-text-font-family);
    font-weight: 300;
    font-size: 0.875rem;
}

a.elementor-lost-password {
    font-family: var(--e-global-typography-text-font-family);
}

.e-my-account-tab h2 {
    display: none;
}


.woocommerce-Address address {
    font-style: normal;
}


.woocommerce-cart-form__cart-item .variation {
        font-size: 0.750rem;
}

dl.variation dd p {
    font-size: 0.750rem;
}


.elementor-menu-cart__footer-buttons #wyczysc_minicart.elementor-button {
    border: none !important;
    box-shadow: none !important;
}

#wyczysc {
    font-weight: 400;
}

/* EasyPack – "Wybierz punkt odbioru" dopasowany do stylu przycisków Elementora */
#easypack_show_geowidget,
#easypack_show_geowidget.easypack_show_geowidget {
    /* zachowanie jak przycisk */
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;          /* jak przyciski na checkout */
    max-width: none !important;

    /* reset "dziwnych" styli wtyczki */
    margin: 0 0 12px 0 !important;
    box-shadow: none !important;
    text-align: center !important;
    line-height: 1.2 !important;

    /* ujednolicenie z buttonami strony */
    padding: 14px 18px !important;
    border: none !important;
    border-radius: var(--e-global-border-radius, 6px) !important;

    /* kolory – domyślnie jak przyciski (przejmą z motywu/Elementora) */
    background: #5bc0de !important;
    color: var(--e-global-color-ffffff, #fff) !important;

    font: inherit !important;
    font-weight: 600 !important;
    cursor: pointer !important;
    transition: all .2s ease !important;
}

/* Hover jak na stronie */
#easypack_show_geowidget:hover,
#easypack_show_geowidget.easypack_show_geowidget:hover {
    filter: brightness(0.95) !important;
}

/* Jeśli w komórce tabeli robi się wąsko, to wymuś pełną szerokość */
.woocommerce-checkout-review-order-table #easypack_show_geowidget {
    width: 100% !important;
}


.elementor-widget-woocommerce-checkout-page 
.woocommerce 
.woocommerce-checkout-review-order-table 
.cart_item td.product-name {
	max-width: none !important;
}

/* Checkout – EasyPack (Paczkomat) styling pod motyw/Elementor */
.e-checkout__order_review tr.easypack-parcel-machine td.easypack-parcel-machine-select{
  padding-top: 10px !important;
}

/* Przycisk "Wybierz punkt odbioru" – jak buttony na stronie */
.e-checkout__order_review #easypack_show_geowidget{
  border: none !important;
  border-radius: 14px !important;
  box-shadow: none !important;
  padding: 16px 18px !important;

  background: #58c0da !important;
  color: #fff !important;

  font-weight: 700 !important;
  letter-spacing: 0.2px;
  transition: filter .2s ease, transform .06s ease !important;
}
.e-checkout__order_review #easypack_show_geowidget:hover{
  filter: brightness(.96) !important;
}
.e-checkout__order_review #easypack_show_geowidget:active{
  transform: translateY(1px);
}

/* Box "Wybrany punkt odbioru" – reset brzydkich styli wtyczki */
.e-checkout__order_review #selected-parcel-machine{
  border: 1px solid rgba(0,0,0,.08) !important;
  background: rgba(255,255,255,.65) !important;
  border-radius: 16px !important;

  padding: 14px 16px !important;
  margin-top: 12px !important;

  box-shadow: none !important;
  min-width: 0 !important;
}

/* usuń zielone tła / dziwne wstawki (wtyczka czasem daje inline) */
.e-checkout__order_review #selected-parcel-machine *{
  background: transparent !important;
  box-shadow: none !important;
}

/* Nagłówek "Wybrany punkt odbioru" */
.e-checkout__order_review #selected-parcel-machine .easypack-visible-point-header{
  display: block;
  font-style: normal !important;
  font-weight: 800 !important;
  margin-bottom: 8px !important;
  opacity: .9;
}

/* Opis punktu – czytelny, jak normalny tekst */
.e-checkout__order_review #selected-parcel-machine #selected-parcel-machine-id,
.e-checkout__order_review #selected-parcel-machine .easypack-visible-point-description{
  display: block;
  font-weight: 600;
  line-height: 1.35;
  opacity: .9;
}

/* Opcjonalnie: mniejszy tekst dodatkowych linii (jeśli wtyczka dorzuca) */
.e-checkout__order_review #selected-parcel-machine p,
.e-checkout__order_review #selected-parcel-machine small{
  margin: 0;
  opacity: .85;
}


/* SHIPPING METHODS – wygląd jak na checkout */
.woocommerce ul#shipping_method {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    display: grid !important;
    gap: 10px !important;
    width: 100% !important;
}

.woocommerce ul#shipping_method li {
    width: 100% !important;
    margin: 0 !important;
    padding: 12px 12px !important;
    border: 1px solid rgba(0, 0, 0, .10) !important;
    border-radius: 12px !important;
    background: rgba(255, 255, 255, .75) !important;
    display: grid !important;
    grid-template-columns: 18px 1fr auto !important;
    align-items: center !important;
    gap: 10px !important;
}

.woocommerce ul#shipping_method li label {
    display: flex;
    align-items: center;
    gap: 10px;

    font-weight: 600;
    cursor: pointer;
}

/* radio */
.woocommerce ul#shipping_method li input[type="radio"] {
    margin-right: 8px;
    transform: scale(1.1);
}

/* logo + info */
.woocommerce ul#shipping_method .inpost_pl-shipping-method-meta-wrap {
    display: flex;
    align-items: center;
    gap: 10px;
}

.woocommerce ul#shipping_method .inpost_pl-shipping-method-logo img {
    height: 22px;
    width: auto;
}

.woocommerce ul#shipping_method #inpost_pl_delivery_terms {
    font-size: 13px;
    opacity: .8;
}

p.woocommerce-shipping-destination {
    padding: 15px 0;
}




.inpost_pl-shipping-method-meta-wrap {
    flex-direction: column;
}

span#inpost_pl_delivery_terms, span#inpost_pl_block_delivery_terms {
    font-size: 0.7rem !important;
    border: 0 !important;
    border-radius: 0 !important;

}


.elementor-widget-woocommerce-checkout-page .woocommerce-checkout #payment .payment_methods li {
    line-height: 35px !important;
}












/* SWATCHES */
/* =========================================================
   Extra swatches – match WCBoost Variation Swatches
   (Drugi kolor / Kolor paska / Elementy metalowe)
   ========================================================= */

/* spacing for extra "variations-like" tables */
table.variations.ct-variations-extra,
table.variations.ct-variations-second {
  margin-top: 10px;
}

/* required asterisk */
.ct-required {
  color: #d63638;
}

/* container */
.ct-extra-swatches,
.ct-second-color-swatches {
  display: flex;
  flex-wrap: wrap;
  gap: var(--wcboost-swatches-item-gap, 10px);
  align-items: center;
}

/* each swatch */
.ct-swatch{
  position: relative;
  cursor: pointer;

  width: var(--wcboost-swatches-item-width, 32px);
  height: var(--wcboost-swatches-item-height, 32px);
  padding: var(--wcboost-swatches-item-padding, 0);

  display: inline-flex;
  align-items: center;
  justify-content: center;

  line-height: 1.1;
  text-align: center;
  white-space: nowrap;
  margin: 0;

  border-radius: 50%;

  box-shadow: 0 0 0 1px var(--wcboost-swatches-color-border, rgba(0,0,0,.15));
  transition: 0.3s;
}

/* hide radio */
.ct-swatch input{
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* inner dot */
.ct-dot{
  width: 100%;
  height: 100%;
  border-radius: inherit;
  display: block;
  box-sizing: border-box;
  border: 0;
}

/* hover ring */
.ct-swatch:hover{
  box-shadow:
    0 0 0 2px var(--wcboost-swatches-color-hover-border, var(--wcboost-swatches-color-border, rgba(0,0,0,.25)));
}

/* selected ring */
.ct-swatch:has(input:checked){
  box-shadow:
    0 0 0 2px var(--wcboost-swatches-color-selected-border, #111);
}

/* focus ring */
.ct-swatch:has(input:focus-visible){
  box-shadow:
    0 0 0 3px var(--wcboost-swatches-color-selected-border, #111);
}

/* =========================================================
   Tooltip – WCBoost style (using data-tooltip)
   ========================================================= */

.ct-swatch::after{
  content: attr(data-tooltip);
  text-indent: initial;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.25;
  position: absolute;
  bottom: 100%;
  left: 50%;
  background: var(--wcboost-swatches-color-tooltip, #111);
  z-index: 2;
  color: var(--wcboost-swatches-color-tooltip-text, #fff);
  margin: -10px 0 0 0;
  padding: 7px 15px;
  opacity: 0;
  visibility: hidden;
  user-select: none;
  border-radius: 4px;
  transform: translate(-50%, -10px);
  transition: opacity 0.35s, transform 0.35s;
  white-space: nowrap;
  pointer-events: none;
}

.ct-swatch:hover::after{
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, -18px);
}

/* remove arrow leftovers */
.ct-swatch::before{
  display: none !important;
}

/* error */
.ct-extra-error,
.ct-second-color-error{
  color:#d63638;
  margin-top: 8px;
  font-size: 14px;
  display:none;
}


.payment_box.payment_method_tpaypbl {
    border-radius: 20px !important;
    background-color: #fff !important;
}

.tpay-pbl-container {
    background-color: #fff !important;
    max-width: 750px;
    padding: 15px;
}


.tpay-pbl-container .tpay-pbl .tpay-item>div>div .name {
    display: none !important;
}





/*************************************/
/***** RESPONSYWNOŚĆ ******************/
/*************************************/



/* <= 440px: wszystko w jednej kolumnie */
@media (max-width: 440px) {
  .cats-grid {
    grid-template-columns: 1fr !important;
    grid-auto-rows: auto !important;
    grid-auto-flow: row !important;
    gap: 16px; /* opcjonalnie */
  }

  /* bardzo ważne: zdejmujemy ręczne ustawienia grid (kolumny/wiersze) */
  .cats-grid > * {
    grid-column: 1 / -1 !important;
    grid-row: auto !important;
  }
  
}

@media (max-width: 600px) {

  /* rodzic: kolumna + nie może mieć stałej wysokości */
  .product-horizontal{
    flex-direction: column !important;
    height: auto !important;
    min-height: unset !important;
    overflow: visible !important;
    align-items: stretch !important;
  }

  /* dzieci: 100% szerokości, ale bez wymuszania 100% jako "flex-basis" */
  .product-horizontal > .e-con{
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 auto !important;
  }

  /* obraz: nie rozciągaj na wysokość */
  .product-horizontal img{
    width: 100% !important;
    height: auto !important;
    display: block;
  }
}



/* Upewniamy się, że Image Box ma układ "obraz + treść" w jednej linii */
.imgbox-list .elementor-image-box-wrapper{
  display: flex !important;
  align-items: center;
  gap: 12px;
}

/* Żeby obrazek nie rozpychał się i nie robił dziwnych obliczeń */
.imgbox-list figure.elementor-image-box-img{
  margin: 0 !important;
  flex: 0 0 auto;
}

/* Obrazek dopasowany do pola */
.imgbox-list figure.elementor-image-box-img img{
  width: 100% !important;
  height: auto !important;
  display: block;
}

/* 551–767px: pole obrazka 20% */
@media (max-width: 767px) and (min-width: 551px){
  .imgbox-list figure.elementor-image-box-img{
    width: 20% !important;
  }
}

/* 550px i mniej: pole obrazka 35% */
@media (max-width: 550px){
  .imgbox-list figure.elementor-image-box-img{
    width: 25% !important;
  }
}/* End custom CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Lora';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/11/Lora-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Lora';
	font-style: italic;
	font-weight: normal;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/11/Lora-Italic.ttf') format('truetype');
}
@font-face {
	font-family: 'Lora';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/11/Lora-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'Lora';
	font-style: italic;
	font-weight: 500;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/11/Lora-MediumItalic.ttf') format('truetype');
}
@font-face {
	font-family: 'Lora';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/11/Lora-SemiBold.ttf') format('truetype');
}
@font-face {
	font-family: 'Lora';
	font-style: italic;
	font-weight: 600;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/11/Lora-SemiBoldItalic.ttf') format('truetype');
}
@font-face {
	font-family: 'Lora';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/11/Lora-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'Lora';
	font-style: italic;
	font-weight: 700;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/11/Lora-BoldItalic.ttf') format('truetype');
}
/* End Custom Fonts CSS */
/* Start Custom Fonts CSS */@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: normal;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-Regular.ttf') format('truetype');
}
@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: 100;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-Thin.ttf') format('truetype');
}
@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: 200;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-ExtraLight.ttf') format('truetype');
}
@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: 300;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-Light.ttf') format('truetype');
}
@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: 400;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-Regular-1.ttf') format('truetype');
}
@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: 500;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-Medium.ttf') format('truetype');
}
@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: 600;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-SemiBold.ttf') format('truetype');
}
@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: 700;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-Bold.ttf') format('truetype');
}
@font-face {
	font-family: 'Sora';
	font-style: normal;
	font-weight: 800;
	font-display: auto;
	src: url('https://martaderkacz.pl/wp-content/uploads/2025/12/Sora-ExtraBold.ttf') format('truetype');
}
/* End Custom Fonts CSS */