/*
Theme Name:  Neve Child
Theme URI:   https://themeisle.com/themes/neve/
Template:    neve
Author:      ThemeIsle
Author URI:  https://themeisle.com
Description: Neve is a super fast, easily customizable, multi-purpose theme. It's perfect for blogs, small business, startups, agencies, firms, e-commerce shops (WooCommerce storefront) as well as personal portfolio sites and most types of projects. A fully AMP optimized and responsive theme, Neve will load in mere seconds and adapt perfectly on any viewing device. While it is lightweight and has a minimalist design, the theme is highly extendable, it has a highly SEO optimized code, resulting in top rankings in Google search results. Neve works perfectly with Gutenberg and the most popular page builders (Elementor, Brizy, Beaver Builder, Visual Composer, SiteOrigin, Divi). Neve is also WooCommerce ready, responsive, RTL & translation ready. Look no further. Neve is the perfect theme for you!
Version:     1.0.0
License:     GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Domain Path: /languages
Text Domain: blackstudio
Tags: blog, custom-logo, e-commerce, rtl-language-support, post-formats, grid-layout, one-column, two-columns, custom-background, custom-colors, custom-header, custom-menu, featured-image-header, featured-images, flexible-header, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, accessibility-ready, wide-blocks, block-styles
*/


/* ************************
GENERAL
************************ */
:root {
  --h1fontsize: 3rem;
  --h2fontsize: 2.5rem;
  --h3fontsize: 2rem;
  --h4fontsize: 1.75rem;
  --h5fontsize: 1.25rem;
  --h6fontsize: 1rem;
  --h1lineheight: 1.2em;
  --h2lineheight: 1.3em;
  --h3lineheight: 1.4em;
  --h4lineheight: 1.4em;
  --h5lineheight: 1.5em;
  --h6lineheight: 1.5em;
  --h1letterspacing: 1px;
  --defaultgap: 30px;
  --sectionpadding: 60px;
  --defaultpadding: 30px;
  --smallpadding: 15px;
  --buttonpadding: 13px 30px;
  --defaultborderradius: 6px;
  --defaultmargintop: 30px;
  --defaultmarginbottom: 30px;
  --border-color-light: #eeeeee;
  --border-color-dark: #dedede;
}


/* ------------------------
TITLES
------------------------ */
.h1-heading-title :is(h1, h2, h3, h4, h5, h6,),
h1,
h1.elementor-heading-title {
  line-height: var(--h1lineheight);
  margin-bottom: 30px;
}
.h2-heading-title :is(h1, h2, h3, h4, h5, h6),
h2,
h2.elementor-heading-title {
  line-height: var(--h2lineheight);
  margin-bottom: 27px;
}
.h3-heading-title :is(h1, h2, h3, h4, h5, h6),
h3,
h3.elementor-heading-title {
  line-height: var(--h3lineheight);
  margin-bottom: 24px;
}
.h4-heading-title :is(h1, h2, h3, h4, h5, h6),
h4,
h4.elementor-heading-title {
  line-height: var(--h4lineheight);
  margin-bottom: 21px;
}
.h5-heading-title :is(h1, h2, h3, h4, h5, h6),
h5,
h5.elementor-heading-title {
  line-height: var(--h5lineheight);
  margin-bottom: 15px;
}
.h6-heading-title :is(h1, h2, h3, h4, h5, h6),
h6,
h6.elementor-heading-title {
  line-height: var(--h6lineheight);
  margin-bottom: 15px;
}

.h1-heading-title :is(h1, h2, h3, h4, h5, h6, span) {
  font-size: var(--h1fontsize)!important;
}
.h2-heading-title :is(h1, h2, h3, h4, h5, h6, span) {
  font-size: var(--h2fontsize)!important;
}
.h3-heading-title :is(h1, h2, h3, h4, h5, h6, span) {
  font-size: var(--h3fontsize)!important;
}
.h4-heading-title :is(h1, h2, h3, h4, h5, h6, span) {
  font-size: var(--h4fontsize)!important;
}
.h5-heading-title :is(h1, h2, h3, h4, h5, h6, span) {
  font-size: var(--h5fontsize)!important;
}
.h6-heading-title :is(h1, h2, h3, h4, h5, h6, span) {
  font-size: var(--h6fontsize)!important;
}
.is-product-title :is(h1, h2, h3, h4, h5, h6, span) {
  font-size: var(--h6fontsize)!important;
  font-weight: bold;
}

.mb-0 :is(h1, h2, h3, h4, h5, h6) {
  margin-bottom: 0 !important;
}

.single-post-container h2 {
  font-size: var(--h3fontsize);
  line-height: var(--h3lineheight);
  margin-bottom: 24px;
}
.single-post-container h3 {
  font-size: var(--h4fontsize);
  line-height: var(--h4lineheight);
  margin-bottom: 21px;
}
.single-post-container h4 {
  font-size: var(--h5fontsize);
  line-height: var(--h5lineheight);
  margin-bottom: 18px;
}
.single-post-container h5 {
  font-size: var(--h6fontsize);
  line-height: var(--h6lineheight);
  margin-bottom: 15px;
}
.single-post-container h6 {
  font-size: var(--h6fontsize);
  line-height: var(--h6lineheight);
  margin-bottom: 15px;
}

h1 mark,
h2 mark,
h3 mark,
h4 mark,
h5 mark,
h6 mark {
  color: var(--nv-secondary-accent);
}

/* ------------------------
TEXT
------------------------ */
p {
  margin-bottom: 15px;
}
.elementor p:last-child {
  margin-bottom: 0px;
}

/* ------------------------
ANCHOR
------------------------ */
a {
  color: var(--e-global-color-nvsecondaryaccent);
  transition: all .4s ease-in-out;
}

/* ------------------------
LIST
------------------------ */
.single-post .nv-content-wrap ul {
  margin: 0 auto;
}
.single-post .nv-content-wrap ul li:first-child {
  margin-top: 0;
}

/* ------------------------
BUTTONS
------------------------ */
.button.button-primary {
  border-color: var(--nv-primary-accent);
}

/* read more */
.read-more-wrapper a.button {
  padding: 10px 30px;
}
.read-more-wrapper a.button span,
.read-more-wrapper a.button {
  font-size: 1rem;
  line-height: 1em;
}

/* ------------------------
FORMS
------------------------ */
[tabindex="-1"]:focus,
input:read-write:focus,
select:focus,
textarea:focus {
  box-shadow: none;
  --formfieldbordercolor: none;
}

/* autofill */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
  background-color: var(--nv-light-bg) !important; /* Dowolny kolor tła */
  -webkit-box-shadow: 0 0 0 1000px var(--nv-light-bg) inset !important;
  -webkit-text-fill-color: #a68750 !important;
  color: var(--nv-primary-accent) !important; /* Dowolny kolor tekstu */
  transition: background-color 5000s ease-in-out 0s; /* Zapobiega zmianie koloru przez przeglądarkę */
}


/* -------------------------
TABLE
------------------------- */
.ud_table {
  overflow: auto;
  width: 100%;
  
}
.ud_table p {
  padding: 0;
  margin: 0;
}
.ud_table th small {
  display: block;
  font-weight: normal;
}

.ud_table table {
  border: 1px solid #191919;
  height: 100%;
  width: 100%;
  table-layout: auto;
  border-collapse: collapse;
  border-spacing: 1px;
  text-align: center;
}

.ud_table th {
  border: 1px solid #191919;
  background-color: #fff;
  color: #191919;
  padding: 5px;
  text-align: center;
  line-height: 1.2em;
}
.ud_table th:first-child {
  text-align: left;
}

.ud_table td {
  border: 1px dashed #191919;
  background-color: #fff;
  color: #191919;
  padding: 5px;
  text-align: center;
}
.ud_table td:first-child {
  text-align: left;
}


/* ************************
PLUGINS
************************ */

/* ------------------------
ELEMENTOR
------------------------ */

/* Global Settings
------------------------ */
.ud-con-normal.e-con.e-con-full,
.ud-con-normal.e-con:not(.e-con-full) > .e-con-inner {
  padding: 60px 15px;
}
.ud-con-small.e-con.e-con-full,
.ud-con-small.e-con:not(.e-con-full) > .e-con-inner {
  padding: 45px 15px;
}
.ud-con-minimal.e-con.e-con-full,
.ud-con-minimal.e-con:not(.e-con-full) > .e-con-inner {
  padding: 15px 15px;
}
.ud-con-product.e-con.e-con-full,
.ud-con-product.e-con:not(.e-con-full) > .e-con-inner {
  padding-left: 0!important;
  padding-right: 0!important;
}
.ud-con-normal.e-con > .e-con-inner {
  gap: 30px;
}
.ud-con-small.e-con > .e-con-inner {
  gap: 30px;
}
.ud-con-minimal.e-con > .e-con-inner {
  gap: 15px;
}

/* Shape divider - Book Enhanced
------------------------ */


/* ========================
COOKIEYES - banner and preference modal in the brand gold color
CookieYes writes colors inline (style="..."), so !important is required.
Neve also styles every <button> (hover/focus background + border),
so the plain-text buttons are reset below.
======================== */
:root {
  --cky-gold: #A8945B;       /* brand gold (same as --primarybtnbg) */
  --cky-gold-hover: #8F7D4D; /* darker gold for hover / pressed state */
  --cky-revisit-bottom: 90px; /* distance of the revisit icon from the bottom (clears the chat button) */
}

/* --- Filled buttons: "Odrzuć wszystkie", "Akceptuj wszystko", "Zapisz moje preferencje" --- */
.cky-btn-accept,
.cky-btn-reject,
.cky-btn-preferences {
  background-color: var(--cky-gold) !important;
  border-color: var(--cky-gold) !important;
  color: #fff !important;
  transition: background-color .2s ease, border-color .2s ease;
}
.cky-btn-accept:hover,
.cky-btn-reject:hover,
.cky-btn-preferences:hover {
  background-color: var(--cky-gold-hover) !important;
  border-color: var(--cky-gold-hover) !important;
  color: #fff !important;
}

/* --- Outline button "Dostosuj": gold text and border, fills with gold on hover --- */
.cky-btn-customize {
  background-color: transparent !important;
  border-color: var(--cky-gold) !important;
  color: var(--cky-gold) !important;
  transition: background-color .2s ease, color .2s ease;
}
.cky-btn-customize:hover {
  background-color: var(--cky-gold) !important;
  border-color: var(--cky-gold) !important;
  color: #fff !important;
}

/* --- Links: "Polityka Prywatności", Google privacy link --- */
.cky-consent-bar a,
.cky-preference-center a,
.cky-policy {
  color: var(--cky-gold) !important;
  transition: color .2s ease;
}
.cky-consent-bar a:hover,
.cky-preference-center a:hover,
.cky-policy:hover {
  color: var(--cky-gold-hover) !important;
  text-decoration: underline;
}

/* --- Plain-text buttons ("Pokaż więcej", category headers, close button):
       remove Neve button hover/focus background and border --- */
.cky-show-desc-btn,
.cky-show-desc-btn:hover,
.cky-show-desc-btn:focus,
.cky-show-desc-btn:active,
.cky-accordion-btn,
.cky-accordion-btn:hover,
.cky-accordion-btn:focus,
.cky-accordion-btn:active,
.cky-btn-close,
.cky-btn-close:hover,
.cky-btn-close:focus,
.cky-btn-close:active {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* "Pokaż więcej": gold link look */
.cky-show-desc-btn {
  padding: 0 !important;
  color: var(--cky-gold) !important;
  transition: color .2s ease;
}
.cky-show-desc-btn:hover {
  color: var(--cky-gold-hover) !important;
  text-decoration: underline;
}

/* Category headers keep their dark text, turn gold on hover */
.cky-accordion-btn:hover {
  color: var(--cky-gold) !important;
}

/* --- Category switches in the modal (the blue "on" state) --- */
.cky-switch input[type="checkbox"]:checked {
  background-color: var(--cky-gold) !important;
}

/* --- Floating "revisit consent" icon (shown after the banner is closed) --- */
.cky-btn-revisit-wrapper {
  background-color: var(--cky-gold) !important;
  bottom: var(--cky-revisit-bottom) !important; /* moved up so it does not cover the chat button */
  transition: background-color .2s ease;
}
.cky-btn-revisit-wrapper:hover {
  background-color: var(--cky-gold-hover) !important;
}
/* The inner <button> gets Neve's black hover background - keep it transparent */
.cky-btn-revisit,
.cky-btn-revisit:hover,
.cky-btn-revisit:focus,
.cky-btn-revisit:active {
  background: transparent !important;
  background-color: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* --- Keyboard focus ring (accessibility): visible only for keyboard users, in gold --- */
.cky-btn:focus-visible,
.cky-show-desc-btn:focus-visible,
.cky-accordion-btn:focus-visible,
.cky-btn-close:focus-visible,
.cky-btn-revisit:focus-visible {
  outline: 2px solid var(--cky-gold) !important;
  outline-offset: 2px;
}



/* ------------------------
TABLE OF CONTENTS
------------------------ */
#ez-toc-container {
  margin: 0 auto;
  padding: 15px;
  border-width: 1px !important;
  border-radius: 6px;
  display: inline-table;
}
#ez-toc-container a.ez-toc-link {
  text-decoration: none;
}
#ez-toc-container li:hover a.ez-toc-link {
  opacity: 0.9;
}


/* ------------------------
TM Global Options
------------------------ */

/* PRZED ROZWINIĘCIEM
------------------------ */

/* section */
.tm-extra-product-options-fields {
  padding: 0!important;
  margin-bottom: 0!important;
  gap: 0!important;
}
.tm-extra-product-options-field {
  margin-bottom: 0!important;
  gap:0!important;
}

.tm-extra-product-options-fields .cpf-section {
  border: 2px solid var(--nv-primary-accent);
  border-radius: 6px;
  margin-bottom: 15px;
}

/* divider */
.tm-extra-product-options .tm-collapse .toggle-header-closed + div {
  display: none!important;
}

/* tytuł */
.tm-extra-product-options .tm-collapse .tm-section-label {
  padding: 15px 15px!important;
  font-size: 1rem;
  border-radius: 6px;
}
.tm-extra-product-options .tm-toggle.tm-section-label:focus {
  outline: none!important;
}

/* mniejsza strzałka */
.tm-extra-product-options-fields .tm-section-label.tm-toggle .tm-arrow {
  font-size: 1rem !important;
}

/* PO ROZWINIĘCIU
------------------------ */

/* tytuł */
.tm-extra-product-options-fields .tc-row.tm-collapse {
  position: relative;
  border: 0!important;
}
.tm-extra-product-options .tm-collapse .tm-section-label.toggle-header-open {
  padding: 15px 15px 0!important;
}
.tm-extra-product-options .tm-collapse .tm-section-label.toggle-header-open .tc-section-label-text {
  animation: bs-fade-slide-up 0.4s ease-out forwards;
  font-size: 1rem;
  position: absolute!important;
  left: 15px;
  top: -12px;
  background: var(--nv-site-bg);
  padding: 0 5px;
  color: var(--nv-primary-accent);
  opacity: 1;
}
.tm-extra-product-options .tc-epo-label {
  font-size: 1.25rem;
}

/* animacje przejścia */
.tm-extra-product-options .tm-collapse .tm-section-label .tm-arrow {
  transition: transform 0.3s ease-in-out;
}
.tm-extra-product-options .tm-collapse .tm-section-label.toggle-header-open .tm-arrow {
  transform: rotate(180deg);
}

/* grafiki wewnątrz */
.tm-extra-product-options .cpf-type-product-thumbnail ul.tmcp-ul-wrap.tm-element-ul-product,
.tm-extra-product-options .cpf-type-product-thumbnailmultiple ul.tmcp-ul-wrap.tm-element-ul-product {
  padding: 0!important;
}
.tm-extra-product-options .tm-epo-field-label .tc-label-text {
  font-size: 0.875rem;
  line-height: 1em;
}

/* General
------------------------ */
.tm-extra-product-options ul {
  margin-bottom: 0 !important;
}

.tm-extra-product-options .tm-epo-field-label .tc-label-text {
  font-size: 0.875rem;
  line-height: 1.2em;
  font-weight: normal;
}
.tm-extra-product-options li.tc-active .tm-epo-field-label .tc-label-text {
  font-weight: bold;
  color: #A8945B;
}

/* Section
------------------------ */
.tm-extra-product-options .tm-collapse-wrap {
  padding: 0 15px 30px;
}

/* Option Title
------------------------ */
.tm-extra-product-options .tc-epo-label {
  font-size: 0.875rem;
  margin-bottom: 2px;
}

/* Gwiazdka required */
.tm-extra-product-options .tm-epo-required {
  color: #e74c3c;
  font-size: 0.875rem;
}

/* Opis pola */
.tm-extra-product-options .tm-element-description {
  font-size: 0.8rem;
  color: #666;
  margin-bottom: 15px;
  line-height: 1.6;
}

/* Option: Radio Image
------------------------ */

/* Pojedynczy obrazek */
.tm-extra-product-options .tc-images-container .tmcp-field-wrap {
  margin: 0 !important;
}

/* Wrapper obrazka */
.tm-extra-product-options .tm-epo-field-label .radio-image {
  display: block;
  backdrop-filter: blur(10px);
  border: 2px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: 6px !important;
  padding: 10px!important;
  transition: all 0.3s ease;
  overflow: hidden;
  aspect-ratio: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  margin: 0!important;
}

/* Obrazek wewnątrz */
.tm-extra-product-options .tc-images-container .tc-image,
.tm-extra-product-options .tc-images-container img {
  width: 100%;
  height: auto;
  object-fit: contain;
  display: block;
}

/* Hover na obrazku */
.tm-extra-product-options .tc-images-container .tm-epo-field-label:hover .radio-image {
  background: rgba(255, 255, 255, 1);
  border-color:rgba(168,149,91,0.5)!important;
  transform: translateY(-2px);
}

/* Zaznaczony obrazek */
.tm-extra-product-options .tc-images-container li.tc-active .tm-epo-field-label:hover .radio-image,
.tm-extra-product-options .tc-images-container li.tc-active .radio-image {
  background: rgba(168,149,91,0.05)!important;
  border-color: #A8945B!important;
}

/* Ukryj checkbox/radio */
.tm-extra-product-options .tc-images-container input[type="radio"],
.tm-extra-product-options .tc-images-container input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Cena pod obrazkiem */
.tm-extra-product-options .tc-images-container .radio-image-label {
  position: relative;
  display: block;
  cursor: pointer;
  margin: 0!important;
  padding: 0;
}
.tm-extra-product-options .tc-images-container .radio-image-label .tc-price {
  font-size: 0.8rem!important;
  text-align: center!important;
}
.tm-extra-product-options .tc-images-container li.tc-active .radio-image-label .tc-price {
  color: #A8945B!important;
  font-weight: bold;
}
.tc-epo-style-space::after {
  display: none!important;
}

/* Option: Radio List
------------------------ */

/* Wrapper dla radio list */
.tm-extra-product-options .tc-list-container {
  display: flex;
  flex-direction: row;
  gap: 15px!important;
  margin: 0;
  padding: 0;
  list-style: none;
  align-items: stretch!important;
  width: 100%!important;
}

/* Pojedynczy radio */
.tm-extra-product-options .tc-list-container .tmcp-field-wrap {
  margin: 0;
  border: 2px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: 6px;
  width: 100%!important;
  transition: all 0.3s ease;
}

/* Label radio */
.tm-extra-product-options .tc-list-container .tm-epo-field-label {
  position: relative;
  display: block;
  cursor: pointer;
  margin: 0;
  padding: 0;
}
.tm-extra-product-options .tc-list-container .tm-epo-field-label .tc-label-wrap {
  align-items: center;
  gap: 15px;
  padding: 12px!important;
}
.tm-extra-product-options .tc-list-container .tm-epo-field-label .tc-label-wrap .tc-label-inner {
  align-items: center;
}
.tm-extra-product-options .tc-list-container .tmcp-field-wrap .tc-label-text {
  font-size: 0.875rem;
  line-height: 1.2em;
}
.tc-extra-product-options .tc-list-container .tmcp-field-wrap .price.tc-price {
  font-size: 0.8rem!important;
}
.tc-extra-product-options .tc-list-container .tmcp-field-wrap.tc-active .price.tc-price {
  color: #A8945B!important;
}

/* Hover na radio */
.tm-extra-product-options .tc-list-container .tmcp-field-wrap:hover {
  background: rgba(255, 255, 255, 1);
  border-color:rgba(168,149,91,0.5)!important;
  transform: translateY(-2px);
}

/* Zaznaczony radio */
.tm-extra-product-options .tc-list-container .tmcp-field-wrap.tc-active {
  background: rgba(168,149,91,0.05)!important;
  border-color: #A8945B!important;
}
.tm-extra-product-options .tc-list-container .tmcp-field-wrap.tc-active .tc-label-text {
  color: #A8945B!important;
}

/* Ukryj radio input */
.tm-extra-product-options .tc-list-container input[type="radio"],
.tm-extra-product-options .tc-list-container input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Custom radio indicator (kółko) */
.tm-extra-product-options .tc-list-container .tc-input-wrap::before {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid #ddd;
  border-radius: 50%;
  margin-right: 0;
  flex-shrink: 0;
  transition: all 0.3s ease;
  background: #fff;
}
.tm-extra-product-options .tc-list-container .tc-input-wrap::after {
  content: '';
  display: inline-block;
  width: 16px;
  height: 16px;
  border: 2px solid #ddd;
  border-radius: 50%;
  margin-right: 0;
  flex-shrink: 0;
  transition: all 0.3s ease;
  background: #fff;
}

/* Zaznaczony radio - wypełnione kółko */
.tm-extra-product-options .tc-list-container .tmcp-field-wrap.tc-active .tc-input-wrap::before {
  border-color: #A8945B!important;
  border-width: 2px;
  background: #A8945B
}

/* Tekst radio */
.tm-extra-product-options .tc-list-container .tc-label-text {
  font-size: 0.875rem;
  font-weight: normal;
  color: #333;
  flex: 1;
}

/* Option: Radio Color
------------------------ */

/* Wrapper dla kolorów */
.tm-extra-product-options .tc-colors-container {
}

/* Pojedynczy kolor */
.tm-extra-product-options .tc-colors-container .tmcp-field-wrap {
  margin: 0;
}

/* Label koloru */
.tm-extra-product-options .tc-colors-container .tm-epo-field-label {
  position: relative;
  display: block;
  cursor: pointer;
  margin: 0;
  padding: 0;
}

/* Wrapper koloru */
.tm-extra-product-options .tc-colors-container .radio-image {
  display: block;
  backdrop-filter: blur(10px);
  border: 2px solid rgba(0, 0, 0, 0.08) !important;
  border-radius: 6px!important;
  padding: 10px!important;
  transition: all 0.3s ease;
  overflow: hidden;
}

/* Hover na kolorze */
.tm-extra-product-options  .tc-colors-container .tm-epo-field-label:hover .radio-image {
  background: rgba(255, 255, 255, 1);
  border-color:rgba(168,149,91,0.5)!important;
  transform: translateY(-2px);
}

/* Zaznaczony kolor */
.tm-extra-product-options li.tc-active .tm-epo-field-label:hover .radio-image,
.tm-extra-product-options li.tc-active .radio-image {
  background: rgba(168,149,91,0.05)!important;
  border-color: #A8945B!important;
}
.tm-extra-product-options li.tc-active .radio-image .tc-image {
  border: 0!important;
}

/* Ukryj radio */
.tm-extra-product-options .tc-colors-container input[type="radio"] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Tekst pod kolorem */
.tm-extra-product-options .tc-colors-container .tc-label-text {
  font-size: 0.8rem!important;
  text-align: center;
  font-weight: normal;
  color: #333;
}

/* Option: Dropdown
------------------------ */

/* Wrapper dla select */
.tm-extra-product-options .tm-extra-product-options-select {
  margin: 0;
  padding: 0;
  list-style: none;
}

.tm-extra-product-options .tm-extra-product-options-select .tmcp-field-wrap {
  margin: 0;
  border: 0!important;
  padding: 0!important;
  
}
.tm-extra-product-options .tm-extra-product-options-select .tmcp-field-wrap:hover {
  transform: translateY(-0);
}

/* Select styling */
.tm-extra-product-options .tmcp-select {
  width: 100%;
  backdrop-filter: blur(10px);
  border: 2px solid rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  padding: 10px 15px 10px 15px!important;
  font-size: 14px;
  font-weight: 500;
  color: #333;
  cursor: pointer;
  transition: all 0.3s ease;
  /* Custom arrow */
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2300000014' d='M6 9L1 4h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 12px center;
  background-size: 12px;
}

/* Hover na select */
.tm-extra-product-options .tmcp-select:hover {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23A8945B' d='M6 9L1 4h10z'/%3E%3C/svg%3E"); 
  border-color: #A8945B;
}

/* Focus na select */
.tm-extra-product-options .tmcp-select:focus {
  outline: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23A8945B' d='M6 9L1 4h10z'/%3E%3C/svg%3E"); 
  border-color: #A8945B;
}

/* Cena przy select */
.tc-extra-product-options .tm-extra-product-options-select .tmcp-field-wrap .price.tc-price {
  font-size: 0.8rem!important;
  color: #A8945B;
}
.tm-extra-product-options .tm-extra-product-options-select .tc-price-wrap {
  display: inline-block;
  margin-left: 12px;
  font-size: 14px;
  font-weight: 600;
  color: #A8945B;
}

/* Textfield
------------------------ */

/* Wrapper dla text field */
.tm-extra-product-options-textfield {
  margin: 0;
  padding: 0;
  list-style: none;
}

.tm-extra-product-options-textfield .tmcp-field-wrap {
  margin: 0;
}

/* Text input styling */
.tm-extra-product-options .tmcp-textfield {
  width: 100%;
  backdrop-filter: blur(10px);
  border: 2px solid rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  padding: 12px 16px;
  font-size: 14px;
  font-weight: 500;
  color: #333;
  transition: all 0.3s ease;
}

/* Placeholder */
.tm-extra-product-options .tmcp-textfield::placeholder {
  color: #999;
  font-weight: 400;
}

/* Hover na input */
.tm-extra-product-options .tmcp-textfield:hover {
  background: rgba(255, 255, 255, 1);
  border-color:rgba(168,149,91,0.5)!important;
  transform: translateY(-2px);
}

/* Focus na input */
.tm-extra-product-options .tmcp-textfield:focus {
  outline: none;
  border-color: #A8945B;
  background-color: rgba(255, 255, 255, 1);
}

/* Licznik znaków */
.tm-extra-product-options .tc-chars {
  display: block;
  font-size: 0.8rem;
  color: #333;
  text-align: right;
}
.tm-extra-product-options .tc-chars-remanining {
  font-weight: 600;
  color: #447259;
}

/* Error */
.tm-extra-product-options .tm-epo-field.tmcp-textfield.tm-error, .tm-extra-product-options .tm-epo-field.tmcp-textarea.tm-error {
  border-width: 2px!important;
}
.tm-extra-product-options .tc-cell.tm-error {
  font-size: 0.8rem!important;
  margin: 0!important;
}

/* Akceptacja
------------------------ */

/* text */
.tm-extra-product-options .tm-element-description {
  font-size: 0.875rem;
}
.tm-extra-product-options .tm-element-description ul,
.tm-extra-product-options .tm-element-description p {
  margin-bottom: 10px;
}
.tm-extra-product-options .tm-element-description ul:last-child,
.tm-extra-product-options .tm-element-description p:last-child {
  margin-bottom: 0;
}
.tm-extra-product-options .tm-element-description ul li {
  margin-bottom: 5px!important;
}

/* Hover na checkbox */
.tm-extra-product-options .tm-extra-product-options-checkbox .tm-epo-field-label:hover .tm-label {
  border-color:rgba(168,149,91,0.5)!important;
}

/* Zaznaczony checkbox */
.tm-extra-product-options .tm-extra-product-options-checkbox li.tc-active .tm-label {
  outline: none;
  border-color: #A8945B;
}

/* Tekst checkbox */
.tm-extra-product-options .tm-extra-product-options-checkbox .tc-label-wrap {
  transition: all 0.4s ease!important;
}
.tm-extra-product-options .tm-extra-product-options-checkbox .tc-label-text {
  font-size: 0.875rem!important;
  font-weight: 500;
  color: #333;
  flex: 1;
  transition: all 0.4s ease;
}

/* tooltip */
.tm-extra-product-options .tm-extra-product-options-checkbox .tc-epo-style-space.tc-tooltip {
  margin-left: 0!important;
}

/* Upload
------------------------ */

/* Wrapper dla upload */
.tm-extra-product-options .tm-extra-product-options-upload {
  margin: 0;
  padding: 0;
  list-style: none;
}
.tm-extra-product-options .tm-extra-product-options-upload .tmcp-field-wrap {
  margin: 0;
}

/* Upload label */
.tm-extra-product-options .cpf-upload-container-basic {
  display: block;
  margin: 0;
  padding: 0;
}

/* Upload wrapper */
.tm-extra-product-options .cpf-upload-wrap {
  display: block;
}

/* File input (custom button) */
.tm-extra-product-options .tmcp-upload {
  width: 100%;
  padding: 30px 15px;
  backdrop-filter: blur(10px);
  border: 2px solid rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  font-size: 0.8rem!important;
  color: #666;
  cursor: pointer;
  transition: all 0.3s ease;
  text-align: center;
}

/* Hover na upload */
.tm-extra-product-options .tmcp-upload:hover {
  border-color:rgba(168,149,91,0.5)!important;
  color: #A8945B;
}

/* File selected */
.tm-extra-product-options .tmcp-upload:focus {
  border-color: #A8945B;
  border-style: solid;
}

/* Max file size info */
.tm-extra-product-options .tc-max-file-size {
  display: block;
  font-size: 0.8rem;
  color: #999;
  text-align: left;
}

/* price */
.tm-extra-product-options .tm-extra-product-options-upload .price.tc-price {
  font-size: 0.8rem!important;
  color: #A8945B!important;
  font-weight: bold;
}

/* Wyłączone pola
------------------------ */

/* Disabled wrapper */
.tm-extra-product-options .tc-container-disabled {
  opacity: 0.5;
  pointer-events: none;
}

/* Disabled input */
.tm-extra-product-options .tcdisabled {
  cursor: not-allowed;
  opacity: 0.6;
}

/* Tooltip
------------------------ */
.tm-extra-product-options .tm-tooltip {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  margin-left: 8px;
  color: #999;
  cursor: help;
  transition: color 0.2s;
}
.tm-extra-product-options .tm-tooltip:hover {
  color: #A8945B;
}

/* po najechaniu */
.tm-tooltip-html,
.tc-tooltip-html,
.tm-tip,
.tc-tip {
  background: #000 !important; /* Czarne tło */
  color: white !important; /* Białe napisy */
  border: none !important;
  border-radius: 6px!important;
  padding: 15px!important;
  font-size: 0.8rem !important;
  font-weight: 500 !important;
  
}

.tm-tooltip-html::before,
.tc-tooltip-html::before,
.tm-tooltip-html::after,
.tc-tooltip-html::after {
  border-color: transparent transparent #000 transparent !important; /* Czarna strzałka */
  border-top-color: #000 !important;
  border-bottom-color: #000 !important;
}

/* STRZAŁKA - Pozycja TOP (strzałka na dole) */
.tm-tip.top::before,
.tm-tip.top::after,
.tm-tooltip-html.top::before,
.tm-tooltip-html.top::after {
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #000 rgba(0, 0, 0, 0) !important;
  border-bottom-color: #000 !important;
  border-top-color: transparent !important;
}

/* STRZAŁKA - Pozycja BOTTOM (strzałka na górze) */
.tm-tip.bottom::before,
.tm-tip.bottom::after,
.tm-tooltip-html.bottom::before,
.tm-tooltip-html.bottom::after {
  border-color: #000 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) !important;
  border-top-color: #000 !important;
  border-bottom-color: transparent !important;
}

/* STRZAŁKA - Pozycja LEFT (strzałka po prawej) */
.tm-tip.left::before,
.tm-tip.left::after,
.tm-tooltip-html.left::before,
.tm-tooltip-html.left::after {
  border-color: rgba(0, 0, 0, 0) #000 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) !important;
  border-right-color: #000 !important;
  border-left-color: transparent !important;
}

/* STRZAŁKA - Pozycja RIGHT (strzałka po lewej) */
.tm-tip.right::before,
.tm-tip.right::after,
.tm-tooltip-html.right::before,
.tm-tooltip-html.right::after {
  border-color: rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #000 !important;
  border-left-color: #000 !important;
  border-right-color: transparent !important;
}

/* BACKUP - dla wszystkich pozostałych */
.tm-tip::before,
.tm-tip::after,
.tm-tooltip-html::before,
.tm-tooltip-html::after {
  border-color: #000 !important;
}

/* Linki białe */
.tm-tooltip-html a,
.tc-tooltip-html a,
.tm-tip a {
  color: white !important;
  text-decoration: underline !important;
}

.tm-tooltip-html a:hover,
.tc-tooltip-html a:hover,
.tm-tip a:hover {
  color: #ddd !important;
}

/* Strong białe */
.tm-tooltip-html strong,
.tc-tooltip-html strong,
.tm-tip strong {
  color: white !important;
}

/* Obrazki w tooltipie */
.tm-tip img {
  max-width: 192px!important;
  height: auto;
  border-radius: 3px;
}

/* Aside w tooltipie */
.tm-tip aside {
  margin-top: 5px;
  color: white !important;
}

/* Finalne poprawki
------------------------ */

/* Cały konfigurator */
.tm-extra-product-options {
  margin-top: 15px;
}

/* box z ceną */
.tm-extra-product-options dl.tm-extra-product-options-totals dd.tm-final-totals {
  padding-bottom: 0;
}
.tm-extra-product-options .tm-epo-totals {
  padding: 15px 0 30px;
}
.tm-extra-product-options .tm-extra-product-options-totals.tm-custom-price-totals {
  margin: 0 auto!important;
  padding: var(--defaultpadding);
  border: 2px solid var(--nv-light-bg);
  border-radius: var(--defaultborderradius);
  display: flex;
  justify-content: space-between; /* Rozdziela na lewo i prawo */
  align-items: center; /* Wyrównanie w pionie */
  font-size: 0.875rem;
}
.tm-extra-product-options .tm-extra-product-options-totals .price.amount.options, .tm-extra-product-options-totals .price.amount.fees, .tm-extra-product-options-totals .price.amount.subscription-fee {
  font-size: 1.25rem;
}

/* Reset padding dla list */
.tm-extra-product-options .tmcp-ul-wrap {
  padding-left: 0 !important;
}

/* Smooth animations */
.tm-extra-product-options * {
  transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
}

/* Focus visible dla accessibility */
.tm-extra-product-options *:focus-visible {
  outline: 2px solid #A8945B;
  outline-offset: 2px;
}


/* -------------------------
WPFORMS
------------------------- */
/* ukrywanie ikony recaptcha */
.grecaptcha-badge {
  display: none !important;
}

/* container margin & padding */
div.wpforms-container-full:not(:empty) {
  margin: 0 auto !important;
}
.wpforms-container .wpforms-field,
.wp-core-ui div.wpforms-container .wpforms-field {
  padding: 0 0 15px !important;
}

/* input border */
div.wpforms-container-full input[type="date"],
div.wpforms-container-full input[type="datetime"],
div.wpforms-container-full input[type="datetime-local"],
div.wpforms-container-full input[type="email"],
div.wpforms-container-full input[type="month"],
div.wpforms-container-full input[type="number"],
div.wpforms-container-full input[type="password"],
div.wpforms-container-full input[type="range"],
div.wpforms-container-full input[type="search"],
div.wpforms-container-full input[type="tel"],
div.wpforms-container-full input[type="text"],
div.wpforms-container-full input[type="time"],
div.wpforms-container-full input[type="url"],
div.wpforms-container-full input[type="week"],
div.wpforms-container-full select,
div.wpforms-container-full textarea,
.wp-core-ui div.wpforms-container-full input[type="date"],
.wp-core-ui div.wpforms-container-full input[type="datetime"],
.wp-core-ui div.wpforms-container-full input[type="datetime-local"],
.wp-core-ui div.wpforms-container-full input[type="email"],
.wp-core-ui div.wpforms-container-full input[type="month"],
.wp-core-ui div.wpforms-container-full input[type="number"],
.wp-core-ui div.wpforms-container-full input[type="password"],
.wp-core-ui div.wpforms-container-full input[type="range"],
.wp-core-ui div.wpforms-container-full input[type="search"],
.wp-core-ui div.wpforms-container-full input[type="tel"],
.wp-core-ui div.wpforms-container-full input[type="text"],
.wp-core-ui div.wpforms-container-full input[type="time"],
.wp-core-ui div.wpforms-container-full input[type="url"],
.wp-core-ui div.wpforms-container-full input[type="week"],
.wp-core-ui div.wpforms-container-full select,
.wp-core-ui div.wpforms-container-full textarea,
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices .choices__inner {
  border-color: var(--nv-text-color) !important;
}

div.wpforms-container-full input[type="date"]:focus,
div.wpforms-container-full input[type="datetime"]:focus,
div.wpforms-container-full input[type="datetime-local"]:focus,
div.wpforms-container-full input[type="email"]:focus,
div.wpforms-container-full input[type="month"]:focus,
div.wpforms-container-full input[type="number"]:focus,
div.wpforms-container-full input[type="password"]:focus,
div.wpforms-container-full input[type="range"]:focus,
div.wpforms-container-full input[type="search"]:focus,
div.wpforms-container-full input[type="tel"]:focus,
div.wpforms-container-full input[type="text"]:focus,
div.wpforms-container-full input[type="time"]:focus,
div.wpforms-container-full input[type="url"]:focus,
div.wpforms-container-full input[type="week"]:focus,
div.wpforms-container-full select:focus,
div.wpforms-container-full textarea:focus,
.wp-core-ui div.wpforms-container-full input[type="date"]:focus,
.wp-core-ui div.wpforms-container-full input[type="datetime"]:focus,
.wp-core-ui div.wpforms-container-full input[type="datetime-local"]:focus,
.wp-core-ui div.wpforms-container-full input[type="email"]:focus,
.wp-core-ui div.wpforms-container-full input[type="month"]:focus,
.wp-core-ui div.wpforms-container-full input[type="number"]:focus,
.wp-core-ui div.wpforms-container-full input[type="password"]:focus,
.wp-core-ui div.wpforms-container-full input[type="range"]:focus,
.wp-core-ui div.wpforms-container-full input[type="search"]:focus,
.wp-core-ui div.wpforms-container-full input[type="tel"]:focus,
.wp-core-ui div.wpforms-container-full input[type="text"]:focus,
.wp-core-ui div.wpforms-container-full input[type="time"]:focus,
.wp-core-ui div.wpforms-container-full input[type="url"]:focus,
.wp-core-ui div.wpforms-container-full input[type="week"]:focus,
.wp-core-ui div.wpforms-container-full select:focus,
.wp-core-ui div.wpforms-container-full textarea:focus,
div.wpforms-container-full input[type="date"]:focus:invalid,
div.wpforms-container-full input[type="datetime"]:focus:invalid,
div.wpforms-container-full input[type="datetime-local"]:focus:invalid,
div.wpforms-container-full input[type="email"]:focus:invalid,
div.wpforms-container-full input[type="month"]:focus:invalid,
div.wpforms-container-full input[type="number"]:focus:invalid,
div.wpforms-container-full input[type="password"]:focus:invalid,
div.wpforms-container-full input[type="range"]:focus:invalid,
div.wpforms-container-full input[type="search"]:focus:invalid,
div.wpforms-container-full input[type="tel"]:focus:invalid,
div.wpforms-container-full input[type="text"]:focus:invalid,
div.wpforms-container-full input[type="time"]:focus:invalid,
div.wpforms-container-full input[type="url"]:focus:invalid,
div.wpforms-container-full input[type="week"]:focus:invalid,
div.wpforms-container-full select:focus:invalid,
div.wpforms-container-full textarea:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="date"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="datetime"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="datetime-local"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="email"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="month"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="number"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="password"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="range"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="search"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="tel"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="text"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="time"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="url"]:focus:invalid,
.wp-core-ui div.wpforms-container-full input[type="week"]:focus:invalid,
.wp-core-ui div.wpforms-container-full select:focus:invalid,
.wp-core-ui div.wpforms-container-full textarea:focus:invalid {
  border-color: var(--primarybtnbg) !important;
  box-shadow:
    0 0 0 1px var(--primarybtnbg),
    0px 1px 2px rgba(0, 0, 0, 0.15) !important;
  color: var(--primarybtnbg) !important;
}

div.wpforms-container-full input[type="date"],
div.wpforms-container-full input[type="datetime"],
div.wpforms-container-full input[type="datetime-local"],
div.wpforms-container-full input[type="email"],
div.wpforms-container-full input[type="month"],
div.wpforms-container-full input[type="number"],
div.wpforms-container-full input[type="password"],
div.wpforms-container-full input[type="range"],
div.wpforms-container-full input[type="search"],
div.wpforms-container-full input[type="tel"],
div.wpforms-container-full input[type="text"],
div.wpforms-container-full input[type="time"],
div.wpforms-container-full input[type="url"],
div.wpforms-container-full input[type="week"],
div.wpforms-container-full select,
div.wpforms-container-full textarea,
.wp-core-ui div.wpforms-container-full input[type="date"],
.wp-core-ui div.wpforms-container-full input[type="datetime"],
.wp-core-ui div.wpforms-container-full input[type="datetime-local"],
.wp-core-ui div.wpforms-container-full input[type="email"],
.wp-core-ui div.wpforms-container-full input[type="month"],
.wp-core-ui div.wpforms-container-full input[type="number"],
.wp-core-ui div.wpforms-container-full input[type="password"],
.wp-core-ui div.wpforms-container-full input[type="range"],
.wp-core-ui div.wpforms-container-full input[type="search"],
.wp-core-ui div.wpforms-container-full input[type="tel"],
.wp-core-ui div.wpforms-container-full input[type="text"],
.wp-core-ui div.wpforms-container-full input[type="time"],
.wp-core-ui div.wpforms-container-full input[type="url"],
.wp-core-ui div.wpforms-container-full input[type="week"],
.wp-core-ui div.wpforms-container-full select,
.wp-core-ui div.wpforms-container-full textarea,
div.wpforms-container-full .wpforms-form textarea:focus {
  color: var(--primarybtnbg) !important;
}

/* dropdown modern */
html
  div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices
  .choices__list--dropdown,
div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices .choices__inner {
  background: var(--nv-site-bg) !important;
  color: var(--primarybtnbg) !important;
}
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices
  .choices__list--dropdown
  .choices__item--selectable.is-highlighted {
  color: var(--nv-site-bg) !important;
  background: var(--primarybtnbg) !important;
}
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices.is-focused
  .choices__inner,
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices.is-open
  .choices__inner,
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices.is-open
  .choices__list--dropdown,
html div.wpforms-container .wpforms-form .choices__list--dropdown {
  border: 1px solid var(--primarybtnbg) !important;
  box-shadow:
    0 0 0 1px var(--primarybtnbg),
    0px 1px 2px rgba(0, 0, 0, 0.15) !important;
}
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices
  .choices__inner
  .choices__list--single
  .choices__item--selectable,
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices
  .choices__inner
  .choices__list--single
  .choices__item--selectable.choices__placeholder,
::placeholder {
  color: var(--nv-text-color) !important;
}
::-ms-input-placeholder {
  /* Edge 12 -18 */
  color: var(--nv-text-color) !important;
}

div.wpforms-container-full .wpforms-form .wpforms-field.wpforms-field-select-style-modern .choices.is-open:before {
  height: 0px !important;
}

div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices[data-type*="select-one"]
  .choices__button {
  background-image: linear-gradient(
      45deg,
      transparent 44%,
      var(--e-global-color-nvprimaryaccent) 44%,
      var(--e-global-color-nvprimaryaccent) 56%,
      transparent 56%
    ),
    linear-gradient(
      135deg,
      transparent 44%,
      var(--e-global-color-nvprimaryaccent) 44%,
      var(--e-global-color-nvprimaryaccent) 56%,
      transparent 56%
    ) !important;
}

div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices[data-type*="select-one"]:after,
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices[data-type*="select-multiple"]:after {
  border-top: 5px solid var(--nv-text-color) !important;
}
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices[data-type*="select-one"].is-open:after,
div.wpforms-container-full
  .wpforms-form
  .wpforms-field.wpforms-field-select-style-modern
  .choices[data-type*="select-multiple"].is-open:after {
  border-top: 5px solid transparent !important;
  border-bottom: 5px solid var(--e-global-color-nvprimaryaccent) !important;
}

/* przycisk submit */
html div.wpforms-container-full button[type="submit"]:not(:hover):not(:active) {
  border-color: var(--primarybtnbg) !important;
  background: var(--primarybtnbg) !important;
  color: #fff !important;
  width: 100% !important;
  text-transform: uppercase !important;
  height: 48px!important;
}
html div.wpforms-container-full button[type="submit"]:hover,
html div.wpforms-container-full button[type="submit"]:active {
  border-color: var(--primarybtnbg) !important;
  background: var(--primarybtnbg) !important;
  color: #fff !important;
  width: 100% !important;
  text-transform: uppercase !important;
  opacity: 0.9!important;
  height: 48px!important;
}

div.wpforms-container-full input[type="submit"]:focus:after,
div.wpforms-container-full button[type="submit"]:focus:after,
div.wpforms-container-full .wpforms-page-button:focus:after,
.wp-core-ui div.wpforms-container-full input[type="submit"]:focus:after,
.wp-core-ui div.wpforms-container-full button[type="submit"]:focus:after,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:focus:after {
  border: 0 !important;
}

/* datepicker */
.flatpickr-day.selected, .flatpickr-day.startRange, .flatpickr-day.endRange, .flatpickr-day.selected.inRange, .flatpickr-day.startRange.inRange, .flatpickr-day.endRange.inRange, .flatpickr-day.selected:focus, .flatpickr-day.startRange:focus, .flatpickr-day.endRange:focus, .flatpickr-day.selected:hover, .flatpickr-day.startRange:hover, .flatpickr-day.endRange:hover, .flatpickr-day.selected.prevMonthDay, .flatpickr-day.startRange.prevMonthDay, .flatpickr-day.endRange.prevMonthDay, .flatpickr-day.selected.nextMonthDay, .flatpickr-day.startRange.nextMonthDay, .flatpickr-day.endRange.nextMonthDay {
  background: #121212!important;
  border-color: #121212!important;
}

/* timepicker */
li.ui-timepicker-selected, .ui-timepicker-list li:hover, .ui-timepicker-list .ui-timepicker-selected:hover {
  background: #121212!important;
  color: #fff!important;
}

/* przycisk checkbox */
div.wpforms-container-full input[type="checkbox"]:before,
div.wpforms-container-full input[type="radio"]:before {
  border-color: var(--e-global-color-nvtextcolor) !important;
}
div.wpforms-container-full input[type="checkbox"]:focus:before,
div.wpforms-container-full input[type="radio"]:focus:before,
div.wpforms-container-full input[type="checkbox"]:checked:before,
div.wpforms-container-full input[type="radio"]:checked:before {
  box-shadow:
    0 0 0 1px var(--primarybtnbg),
    0px 0px 1px rgba(0, 0, 0, 0.15) !important;
  border-color: var(--primarybtnbg) !important;
}
div.wpforms-container-full input[type="checkbox"]:checked:after {
  border-left: 4px solid var(--primarybtnbg) !important;
  border-bottom: 4px solid var(--primarybtnbg) !important;
}

/* potwierdzenie wysłania wiadomości */
div.wpforms-container-full .wpforms-confirmation-container-full,
div[submit-success] > .wpforms-confirmation-container-full:not(.wpforms-redirection-message) {
  background: #28a745 !important;
  border-radius: 3px !important;
  text-align: center !important;
  border-color: #28a745 !important;
  color: var(--nv-site-bg) !important;
}
div.wpforms-container-full .wpforms-confirmation-container-full p {
  margin-bottom: 0 !important;
  color: var(--nv-site-bg) !important;
}

/* textarea height */
div.wpforms-container-full .wpforms-form textarea {
  height: calc(var(--wpforms-field-size-input-height)* 3.1)!important;
}

/* ud cta form */
#ud-cta-form button[type="submit"] {
  color: #fff!important;
  height: 48px!important;
}


/* ************************
ELEMENTS
************************ */

/* ------------------------
ACCORDION
------------------------ */
.e-n-accordion .e-n-accordion-item:last-child .elementor-element {
  padding-bottom: 0;
  border-bottom: 0 !important;
}

/* ************************
LOOP
************************ */

/* ------------------------
ELEMENTOR - BLOG POSTS LOOP
------------------------ */
.e-loop-item .e-con.e-parent > .e-con-inner {
  padding: 30px 15px;
}

.ud-loop-blog-post:focus,
.ud-loop-blog-post:hover {
  opacity: 1;
}

/* ------------------------
ELEMENTOR - BLOG LATEST POSTS
------------------------ */
.ud-loop-blog-post {
  position: relative;
  overflow: hidden !important;
  transform: scale(1);
}

.ud-loop-blog-post::after {
  /* Pseudoelement, który przejmuje tło */
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: inherit; /* Ustawiamy tło – możesz tu użyć tej samej wartości, która jest przypisana do elementu */
  background-size: cover;
  background-position: center;
  transition: transform 0.2s ease;
  z-index: -1; /* pseudoelement za zawartością */
}

.ud-loop-blog-post:hover::after {
  transform: scale(1.1);
}

/* ------------------------
ELEMENTOR - BLOG ARCHIVE LOOP
------------------------ */
.e-loop-item .e-con.e-parent > . .e-loop-item .ud-loop-blog-archive.e-con.e-parent > .e-con-inner {
  padding: 0;
}

/* ------------------------
ELEMENTOR - PRODUCT GRID VIEW
------------------------ */
/* Kontener produktu */
.ud-product-box {
  position: relative!important;
  overflow: hidden!important;
}
/* Wrapper z obrazem */
.ud-product-image-wrapper {
  position: relative!important;
}
.ud-product-image-wrapper,
.ud-product-box .elementor-widget-image img,
.ud-product-box .elementor-widget-image {
  overflow: hidden!important;
  border-radius: 6px!important;
}
/* Przycisk – start: ukryty i przesunięty w dół */
.ud-product-box .ud-product-btn {
  position: absolute;
  bottom: 20px;
  left: 0;
  width: 100%;
  text-align: center;
  transform: translateY(120%);
  opacity: 0;
  transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out!important;
  z-index: 2;
}
/* Styl samego przycisku */
.ud-product-btn .elementor-button {
  transition: background 0.3s ease-in-out;
  display: block;
  margin-left: 15px;
  margin-right: 15px;
  transition: opacity 0.4s ease-in-out!important;
}
/* Efekt hover – wysuwanie przycisku do góry */
.ud-product-box:hover .ud-product-btn {
  transform: translateY(0);
  opacity: 1;
}
.ud-product-btn .elementor-button:hover {
  opacity: .9!important;
}
/* Opcjonalnie: delikatne przyciemnienie tła podczas hover */
.ud-product-image-wrapper::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.2);
  opacity: 1;
  z-index: 1;
  border-radius: 6px;
  transition: all 0.4s ease-in-out;
}
.ud-product-box:hover .ud-product-image-wrapper::after {
  opacity: 1;
  background: rgba(0, 0, 0, 0.5);
}

/* Zoom-in obrazka po najechaniu na produkt */
.ud-product-image-wrapper img {
  transition: transform 0.6s ease;
  transform-origin: center center;
}

.ud-product-box:hover .ud-product-image-wrapper img {
  transform: scale(1.04); /* delikatny zoom */
}

/* meta - kategorie */
.ud-product-box .product_meta .posted_in.detail-container {
  margin-top: 0;
  line-height: 1;
}

/* cena */
.ud-product-box .price bdi {
  color: #fff!important;
}


/* ************************
HEADER
************************ */

/* ------------------------
HEADER TOP
------------------------ */
.header-top .builder-item {
  margin-top: 2px;
  margin-bottom: 2px;
}

.header-top .hfg-slot.right .builder-item {
  padding-left: 0;
  padding-right: 15px;
}
.header-top .hfg-slot.right .button {
  margin: 0 15px 0 0 !important;
}
/* tylko gdy tło header top jest żółte
.header .header-top-inner .button.button-primary {
  border-color: var(--nv-secondary-accent);
}
.header .header-top-inner .button.button-primary:hover {
  border-color: var(--nv-secondary-accent);
}*/

@media screen and (min-width: 1025px) and (max-width: 1160px) {
  .header-top.has-center .row--wrapper {
    grid-template-columns: 1fr 1fr;
  }
  .header-top .hfg-slot.center {
    display: none !important;
  }
}


/* ------------------------
RIGHT
------------------------ */

/* Menu
------------------------ */
/* sub menu */
.nav-ul li > .sub-menu {
  margin-top: -2px;
  padding-top: 20px;
  padding-bottom: 20px;
  border-radius: 6px 6px 6px 6px;
}
.nav-ul li > .sub-menu li {
  line-height: 1rem;
}
.nav-ul li > .sub-menu li .wrap {
  padding: 10px 20px;
  line-height: 1rem;
}
.nav-ul li > .sub-menu li .wrap a {
  line-height: 1rem;
  min-height: 1rem;
}
.nav-ul li > .sub-menu li:hover .wrap a {
  opacity: 0.9;
}

.sub-menu li.ud-menu-top-line {
  border-top: 1px solid rgba(0, 0, 0, 0.05); /* Light grey, barely visible */
  margin-top: 5px;
  padding-top: 5px;
}

/* Search
------------------------ */
.header .nv-nav-search {
  box-shadow: none !important;
  border-radius: 6px;
}
.header .search-form .search-submit,
.header .search-form .search-field {
  border-color: var(--e-global-color-nvprimaryaccent);
  box-shadow: none !important;
}
.header .search-form .search-field {
  border-radius: 6px 0 0 6px;
}
.header .search-form .search-submit svg {
  opacity: 1;
  width: 1rem;
  height: 1rem;
}
.header .search-form .search-field:focus ~ button {
  border-color: var(--e-global-color-nvprimaryaccent);
}
.header .search-submit {
  border-radius: 0 6px 6px 0 !important;
}

.header .search-form .search-field::placeholder {
  color: var(--nv-primary-accent) !important;
  opacity: 1; /* upewnia się, że kolor placeholdera jest w pełni widoczny */
}

.item--inner.builder-item--my_account,
.item--inner.builder-item--header_cart_icon .component-wrap {
  margin: 0;
}
.item--inner.builder-item--advanced_search_icon_1 {
  padding: 0;
}
.item--inner.builder-item--my_account,
.item--inner.builder-item--header_cart_icon {
  padding: 0;
  margin-left: 5px;
}
.my-account-wrapper,
.nv-icon.nv-search,
.cart-icon-wrapper {
  background: rgba(0,0,0,0.0);
  padding: 8px 10px;
  border: 1px solid var(--color);
  border-radius: 3px;
  min-height: 33px;
}
.my-account-wrapper .my-account-icon {
  margin: 0;
}

.my-account-wrapper .my-account-label {
  display: none;
}

.nv-nav-search {
  right: 0!important;
  left: auto!important;
}
.header .search-submit {
  background: var(--color);
  border-left: 2px solid var(--color);
  padding: 0;
}
.header .search-form .nv-icon.nv-search {
  border: 0;
}
.header .search-form svg {
  fill: #fff;
}
.header .search-form input:focus + svg,
.header .search-form:hover svg {
  fill: var(--e-global-color-nvsecondaryaccent);!important;
}

/* Opcjonalnie dla lepszej zgodności z przeglądarkami: */
.header .search-form .search-field::-webkit-input-placeholder {
  color: var(--nv-primary-accent) !important;
}
.header .search-form .search-field::-moz-placeholder {
  color: var(--nv-primary-accent) !important;
}
.header .search-form .search-field:-ms-input-placeholder {
  color: var(--nv-primary-accent) !important;
}
.header .search-form .search-field::-ms-input-placeholder {
  color: var(--nv-primary-accent) !important;
}

/* Ukrycie domyślnego X w Chrome, Edge, Safari */
.search-field::-webkit-search-cancel-button {
  -webkit-appearance: none;
  appearance: none;
  display: none;
}

/* Ukrycie domyślnego X w Firefox */
.search-field::-moz-search-clear-button {
  display: none;
}

/* Dostosowanie własnego przycisku X */
.custom-clear {
  position: absolute;
  right: 93px; /* Dostosuj pozycję */
  top: 50%;
  transform: translateY(-50%);
  color: var(--nv-primary-accent);
  font-size: 0.875rem;
  cursor: pointer;
  display: none; /* Domyślnie ukryty */
  user-select: none;
  z-index: 10;
}

/* Buttons
------------------------ */
.header .builder-item .item--inner[class*="button_base"] a {
  font-size: 1rem;
  text-transform: none;
  letter-spacing: 0.5px;
}
.header .builder-item .item--inner.builder-item--button_base a {
  margin-left: 0;
  padding: 15px 30px;
}
.header .builder-item .item--inner.builder-item--button_base_3 a,
.header .builder-item .item--inner.builder-item--button_base_2 a {
  margin-left: 0;
  margin-right: 0;
  padding: 10px 15px;
  font-size: 0.875rem;
  white-space: nowrap;
  border: 1px solid var(--nv-primary-accent)!important;
}

#header-menu-sidebar .component-wrap.my-account-component {
  display: flex;
  width: 100%;
}
#header-menu-sidebar .component-wrap .my-account-container {
  flex: 1 1 100%;
  width: 100%;
  margin-top: 10px;
}
#header-menu-sidebar .item--inner.builder-item--my_account,
#header-menu-sidebar .item--inner.builder-item--header_cart_icon {
  margin: 0!important;
}
#header-menu-sidebar a.my-account-wrapper,
#header-menu-sidebar .builder-item .item--inner[class*="button_base"] a {
  display: flex;
  align-items: center;   /* wyśrodkowanie pionowe */
  justify-content: center; /* wyśrodkowanie poziome */
  padding: 10px 15px;
  width: 100%;
  flex: 1 1 100%;
  text-align: center;
  box-sizing: border-box;
  border: 2px solid var(--color);
}
#header-menu-sidebar a.my-account-wrapper:hover,
#header-menu-sidebar .builder-item .item--inner[class*="button_base"] a:hover {
  border: 2px solid var(--color);
}
.my-account-wrapper:hover svg {
  fill: var(--nv-secondary-accent);
}

#header-menu-sidebar .my-account-wrapper .my-account-label {
  margin-left: 5px;
  display: block;
}

#header-menu-sidebar .nv-social-icons-list {
  display: flex;
  justify-content: center; /* wyśrodkowanie w poziomie */
  align-items: center;     /* wyśrodkowanie w pionie (jeśli potrzebne) */
  gap: 15px;               /* odstęp między ikonami */
  list-style: none;        /* usuwa kropki listy */
  padding: 0;
  margin: 10px auto 0;
}
#header-menu-sidebar .nv-social-icons-list li {
  margin: 0!important;
}
#header-menu-sidebar .nv-social-icons-list li a {
  padding: 10px;
  border: 2px solid var(--color);
  border-radius: 3px;
  margin: 0!important;
  color: var(--nv-primary-accent);
}

/* ************************
PAGE HEADER
************************ */

/* ------------------------
BREADCRUMBS
------------------------ */
.nv-title-meta-wrap .neve-breadcrumbs-wrapper {
    margin-bottom: 0;
}

.ud-breadcrumbs span {
  font-size: 0.875rem;
  display: flex;
  gap: 15px;
  font-weight: bold;
}
.ud-breadcrumbs span a {
}
.ud-breadcrumbs span.breadcrumb_last {
  font-weight: normal;
}

/* ************************
FOOTER
************************ */

/* Scroll to Top
------------------------ */
#scroll-to-top {
  padding: 10px;
}
#scroll-to-top:hover {
  background: var(--hoverbgcolor);
  opacity: 0.9 !important;
}

/* Ustawienia wyglądu linków
------------------------ */
html .ud-footer-main a,
html .ud-footer-bottom a {
  color: #fff !important;
}

/* ------------------------
FOOTER MAIN
------------------------ */
.ud-footer-main .elementor-nav-menu.sm-vertical {
  display: block;
}


/* -------------------------
4 Blocks
------------------------- */
.ks-footer__features {
  padding-left: var(--gutter-x-container);
  padding-right: var(--gutter-x-container);
  border-top: 1px solid var(--border-color-light);
}

.ks-footer__features.e-con > .e-con-inner {
  padding-top: var(--gutter-y-container);
  padding-bottom: var(--gutter-y-container);
  align-items: center;
}

.ks-footer__features--card.e-con.e-flex {
  flex-flow: row nowrap;
  justify-content: center;
  align-items: center;
  padding: 0;
  gap: var(--gutter-x-container);
}

.ks-footer__features--content.e-con-full {
  width: initial;
  flex-flow: column nowrap;
  padding: 0;
  justify-content: start;
  align-items: start;
}

.ks-footer__features--icon {
  height: 30px;
  aspect-ratio: 1/1;
}

@media (max-width: 1024px) {
  .ks-footer__features--card.e-con.e-flex {
    flex-direction: column;
  }

  .ks-footer__features--content {
    justify-content: center;
    align-items: center;
  }

  .ks-footer__features--title {
    text-align: center;
  }
}

@media (min-width: 769px) and (max-width: 808px) {
  .ks-footer__features--title .elementor-widget-container {
    max-width: 164px;
  }
}

@media (max-width: 653px) {
  .ks-footer__features--title .elementor-widget-container {
    max-width: 131px;
  }
}

@media (max-width: 375px) {
  .ks-footer__features--title .elementor-widget-container {
    font-size: 14px;
  }
}

.site-footer .footer-main {
  padding-top: 60px;
  padding-bottom: 30px;
}
.site-footer .footer-bottom .footer-bottom-inner {
  padding-top: 10px;
  padding-bottom: 10px;
}
.site-footer .widget_block {
  margin-bottom: 10px
}
.site-footer .widget-title {
  text-transform: capitalize;
}
.site-footer .ud-footer-phone {
  font-size: 1.5em;
  margin-bottom: 5px;
}
.site-footer .wp-block-separator {
  border-top: 1px solid;
  color: #EDEDED0D!important;
  background-color: #EDEDED0D!important;
  margin-top: 5px;
  margin-bottom: 5px;
}
.site-footer .wp-block-gallery.has-nested-images figure.wp-block-image img {
  max-width: 80%!important;
  object-fit: contain!important;
}
@media screen and (max-width: 959px) {
  .site-footer .wp-block-separator {
    display: none;
  }
  .site-footer .hfg-slot {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 960px) {
  .footer-main #block-17 .wp-block-group {
    justify-content: flex-end!important;
  }
  .footer-main #block-17 .wp-block-gallery.has-nested-images figure.wp-block-image {
    align-items: flex-end;
  }
}
@media screen and (max-width: 599px) {
  .footer-main .wp-block-gallery.has-nested-images figure.wp-block-image:not(#individual-image) {
    width: calc(10% - var(--wp--style--unstable-gallery-gap, 16px) / 2);
  }
}

/* ------------------------
FOOTER BOTTOM
------------------------ */

/* Social icons
------------------------ */
.ud-footer-bottom .elementor-icon {
  font-size: var(--icon-size, 25px);
  line-height: var(--icon-size, 25px);
  width: calc(var(--icon-size, 25px) + 2 * var(--icon-padding, 0.5em));
  height: calc(var(--icon-size, 25px) + 2 * var(--icon-padding, 0.5em));
  display: inline-flex;
  background-color: #69727d;
  align-items: center;
  justify-content: center;
  text-align: center;
  cursor: pointer;
}


/* ************************
BLOG
************************ */

/* ------------------------
BLOG - Archive
------------------------ */
/* Kontener nadrzędny dla artykułów */
.blog .posts-wrapper {
  display: flex;
  flex-wrap: wrap; /* Dostosowanie do wielu wierszy */
  align-items: stretch; /* Rozciąga wszystkie dzieci */
}
.blog .posts-wrapper article {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: stretch;
  height: 100%; /* Wymusza równą wysokość */
  box-sizing: border-box;
}

/* Kontener dla zdjęć - proporcja 653:435 */
.blog .nv-post-thumbnail-wrap.img-wrap {
  position: relative;
  width: 100%;
  padding-top: 66.6%; /* Proporcja 653:435 */
  overflow: hidden;
  margin-bottom: 30px; /* Dystans między zdjęciem a treścią */
  border-radius: var(--defaultborderradius);
}

/* Zdjęcia - dopasowanie do kontenera */
.blog .nv-post-thumbnail-wrap.img-wrap img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* Przycięcie zdjęcia */
  object-position: center;
  border-radius: var(--defaultborderradius);
}

/* Treść artykułu - elastyczne wypełnienie */
.blog .article-content-col {
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
  border-bottom: 0;
}
.blog .article-content-col .content {
  flex-direction: column;
  justify-content: space-between;
  flex-grow: 1;
}

.blog .article-content-col .blog-entry-title {
  margin-bottom: 10px;
}

.blog .article-content-col .blog-entry-title a {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
  max-width: 100%; /* lub inna szerokość w zależności od layoutu */
}

.blog .article-content-col .nv-meta-list {
  margin-bottom: 10px;
}

/* Przyciski i podsumowanie */
.blog .excerpt-wrap {
  flex-grow: 1; /* Rozciąga treść w pionie */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.blog .excerpt-wrap p {
  margin-bottom: 15px;
}

/* Przycisk "Czytaj dalej" na samym dole */
.blog .read-more-wrapper {
  margin-top: auto;
  display: flex;
  justify-content: flex-start;
}

/* ------------------------
BLOG - Single
------------------------ */
.single-post .nv-thumb-wrap img {
  border-radius: var(--defaultborderradius);
  width: 100% !important;
}
.single-post .nv-title-meta-wrap {
  display: flex;
  flex-direction: column;
}
.single-post .nv-title-meta-wrap .title {
  order: 1;
  margin-bottom: 0;
}
.single-post .nv-title-meta-wrap .neve-breadcrumbs-wrapper {
  order: 2;
  margin-bottom: 15px;
}
.single-post .nv-title-meta-wrap .nv-meta-list {
  margin-bottom: 0;
  order: 3;
}
.single-post .nv-content-wrap p a {
  border-bottom: 1px dashed;
}


/* ************************
POZOSTAŁE STRONY
************************ */

/* ------------------------
Materiały
------------------------ */
/* Kontener główny */
.ud-material-box {
  position: relative;
  overflow: hidden;
}

/* Efekt przyciemnienia tła po najechaniu */
.ud-material-box::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0); /* brak przyciemnienia domyślnie */
  transition: background 0.4s ease;
  z-index: 1;
}

/* Ukrycie nagłówka i tekstu domyślnie */
.ud-material-box .elementor-widget-heading,
.ud-material-box .elementor-widget-text-editor,
.ud-material-box .elementor-widget-button {
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.5s ease, transform 0.5s ease!important;
  position: relative;
  z-index: 2; /* nad tłem */
  color: #fff; /* biały tekst na ciemnym tle */
  text-align: center;
}

/* Efekt po najechaniu myszką */
.ud-material-box:hover::after {
  background: rgba(0, 0, 0, 0.2); /* przyciemnienie */
}

.ud-material-box:hover .elementor-widget-heading,
.ud-material-box:hover .elementor-widget-text-editor,
.ud-material-box:hover .elementor-widget-button {
  opacity: 1;
  transform: translateY(0);
}

/* ------------------------
Strony prawne
------------------------ */
.ud-law {
  margin: 60px auto;
}
.ud-law h1 {
  text-align: center;
}
.ud-law ol ul,
.ud-law ol ol,
.ud-law ul ul,
.ud-law ul ol {
  margin-top: 15px;
}

body.page.page-template-default #content {
  margin-top: 60px;
  margin-bottom: 60px;
}


/* *************************
WOOCOMMERCE
************************* */
body.woocommerce-shop.archive .neve-main {
  padding-top: 60px;
}

/*resetowanie ustawień */
.woocommerce .col2-set::after,
.woocommerce .col2-set::before,
.woocommerce-page .col2-set::after,
.woocommerce-page .col2-set::before {
  content: none;
}
.woocommerce .woocommerce-customer-details address {
  border: 0;
  text-align: center;
  padding: 0;
}

/* odstęp dla głównych sekcji */
.woocommerce .woocommerce-customer-details,
.woocommerce .woocommerce-order-details,
.woocommerce .woocommerce-order-downloads {
  margin-bottom: var(--sectionpadding);
}

/* stylowanie tabeli */
.woocommerce table.shop_table td,
.woocommerce table.shop_table,
.woocommerce table.shop_table tbody th,
.woocommerce table.shop_table tfoot td,
.woocommerce table.shop_table tfoot th {
  border-color: var(--nv-light-bg);
}
.woocommerce table.shop_table th {
  padding: 20px 15px;
}

.woocommerce-checkout table.shop_table tbody,
.woocommerce-checkout table.shop_table tfoot {
  border-color: var(--nv-light-bg);
}

/* stylowanie czcionek dla tabeli */
.woocommerce table.shop_table thead th {
  font-size: var(--h6fontsize);
  font-weight: var(--h6fontweight);
}
.woocommerce-checkout table.shop_table tfoot td,
.woocommerce-checkout table.shop_table tfoot th {
  font-size: var(--bodyfontsize);
}
.woocommerce-checkout table.shop_table tfoot th {
  font-weight: bold;
}

/* border dla przycisków akcji */
.woocommerce-button.button.order-actions-button {
  border-color: var(--nv-primary-accent) !important;
  padding: 8px 30px;
  border-radius: var(--defaultborderradius);
}
.woocommerce-button.button.order-actions-button:hover {
  border-color: var(--nv-secondary-accent) !important;
}

/* remove box-shadow */
body:not(.woocommerce-block-theme-has-button-styles) .wc-block-components-button:not(.is-link):focus {
  box-shadow: none !important;
}

/* usunięcie odstępu górnego ze sklepu */
.archive:not(.search) main .nv-shop {
  margin-top: 0 !important;
}

/* border radius dla zdjęć */
.img-wrap img,
.img-wrap,
.sp-image-buttons .overlay {
  border-radius: 6px;
}

/* border radius przycisków i pól */
.wc-block-components-form .wc-block-components-text-input input[type="email"],
.wc-block-components-form .wc-block-components-text-input input[type="number"],
.wc-block-components-form .wc-block-components-text-input input[type="password"],
.wc-block-components-form .wc-block-components-text-input input[type="tel"],
.wc-block-components-form .wc-block-components-text-input input[type="text"],
.wc-block-components-form .wc-block-components-text-input input[type="url"],
.wc-block-components-text-input input[type="email"],
.wc-block-components-text-input input[type="number"],
.wc-block-components-text-input input[type="password"],
.wc-block-components-text-input input[type="tel"],
.wc-block-components-text-input input[type="text"],
.wc-block-components-text-input input[type="url"] {
  border-radius: 3px;
}

#add_payment_method .wc-proceed-to-checkout a.checkout-button,
#review_form #respond input#submit,
.wc-block-components-product-button .wp-block-button__link.add_to_cart_button,
.wc-block-grid__product-add-to-cart.wp-block-button .wp-block-button__link,
.woocommerce #respond input#submit.alt,
.woocommerce #respond input#submit.alt.disabled,
.woocommerce #respond input#submit.alt:disabled,
.woocommerce #respond input#submit.alt:disabled[disabled],
.woocommerce #respond input#submit.disabled,
.woocommerce #respond input#submit:disabled,
.woocommerce #respond input#submit:disabled[disabled],
.woocommerce a.button,
.woocommerce a.button.alt,
.woocommerce a.button.alt.disabled,
.woocommerce a.button.alt:disabled,
.woocommerce a.button.alt:disabled[disabled],
.woocommerce a.button.disabled,
.woocommerce a.button:disabled,
.woocommerce a.button:disabled[disabled],
.woocommerce button.button,
.woocommerce button.button.alt,
.woocommerce button.button.alt.disabled,
.woocommerce button.button.alt:disabled,
.woocommerce button.button.alt:disabled[disabled],
.woocommerce button.button.disabled,
.woocommerce button.button:disabled,
.woocommerce button.button:disabled[disabled],
.woocommerce input.button.alt,
.woocommerce input.button.alt.disabled,
.woocommerce input.button.alt:disabled,
.woocommerce input.button.alt:disabled[disabled],
.woocommerce input.button.disabled,
.woocommerce input.button:disabled,
.woocommerce input.button:disabled[disabled],
.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
.woocommerce-checkout .wc-proceed-to-checkout a.checkout-button {
  border-radius: 6px;
  transition: all .3s ease-in-out;
}
.woocommerce .button:hover {
  opacity: 0.9;
}

/* ustawienia dla listy zakupionych produktów */
.woocommerce-table--order-details .wc-item-meta {
  padding-left: 0;
  margin-top: var(--smallpadding);
}

/* ustawienia dla adresów */
.woocommerce-checkout .addresses .woocommerce-column {
  margin-bottom: 0;
}

/* quick view */
#quick-view-modal .product_title {
  font-size: var(--h2fontsize);
  line-height: var(--h2lineheight);
}

#quick-view-modal .price {
  font-size: var(--h3fontsize);
  line-height: var(--h3lineheight);
}

#quick-view-modal .button-secondary,
#quick-view-modal .single_add_to_cart_button {
  min-height: 51px;
}

#quick-view-modal .ud-darmowa-dostawa .ud-info-text {
  font-size: 0.7rem;
}

.wc-block-components-button:not(.is-link) span {
  line-height: 1em;
}


/* ------------------------
Wygląd karty produktu w sklepie - powiązany z Custom Product Card Layout for Neve w functions.php
------------------------- */
.woocommerce .nv-shop ul.products:not(.tns-slider) {
  gap: 30px;
}
.nv-product-content {
  display: none;
}

/* Pozycjonowanie dla nowych elementów
------------------------- */
.woocommerce ul.products li.product .sp-product-image {
  position: relative;
  overflow: hidden;
}

/* Zapewnij że img-wrap ma pełną szerokość */
.woocommerce ul.products li.product .sp-product-image .img-wrap {
  position: relative;
  width: 100%;
}
.woocommerce ul.products li.product .sp-product-image .img-wrap:after {
  content: '';
  position: absolute;
  width: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: rgba(0, 0, 0, 0);  /* Empty color layer, used only for the hover effect */
  background-image: linear-gradient(
    180deg,
    rgba(0, 0, 0, 0.2) 0%,
    rgba(0, 0, 0, 0.1) 30%,   /* Solid part ends here - change 30% to taste */
	rgba(0, 0, 0, 0) 40%,   /* Solid part ends here - change 30% to taste */
    rgba(0, 0, 0, 0) 100%
  );
  transition: all 0.3s ease-in-out;
}
.woocommerce ul.products li.product:hover .sp-product-image .img-wrap:after {
  background: rgba(0, 0, 0, 0.2);
}

/* Tytuł produktu - prawy górny róg
------------------------- */
.custom-product-title-overlay {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 3;
  max-width: 75%;
  /*background: rgba(0, 0, 0, 0.05);
  backdrop-filter: blur(5px);*/
  padding: 10px 15px;
  border-radius: 6px;
  /* Animacja */
  transition: all 0.3s ease;
  text-align: right;
}

/* Link tytułu */
.custom-product-title-overlay .custom-title-link {
  text-decoration: none;
  display: block;
}

/* Sam tytuł */
.custom-product-title {
  margin: 0;
  font-size: 14px;
  font-weight: 600;
  color: #fff;
  line-height: 1.3;
  /* Ograniczenie długości tekstu */
  display: -webkit-box;
  -webkit-line-clamp: 3; /* Maksymalnie 3 linie */
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}


/* Cena - lewy dolny róg
------------------------- */
.custom-product-price-overlay {
  /* Pozycjonowanie */
  position: absolute;
  bottom: 15px;
  left: 15px;
  z-index: 5;
  max-width: 40%;

  /* Wygląd */
  background: rgba(0, 0, 0, 0.25);
  backdrop-filter: blur(5px);
  padding: 8px 15px;
  border-radius: 6px;
  /* Typografia */
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  /* Animacja */
  transition: all 0.3s ease;
}

/* Style dla WooCommerce price */
.custom-product-price-overlay .woocommerce-Price-amount {
  font-size: 1.2rem;
  font-weight: 700;
  color: #fff;
}

/* Cena regularna i promocyjna */
.custom-product-price-overlay del {
  text-decoration: none;
  font-size: 0.8rem!important;
  line-height: 1em;
}
.custom-product-price-overlay del .woocommerce-Price-amount {
  opacity: 0.6;
  font-size: 0.8rem!important;
  margin-right: 5px;
  text-decoration: line-through;
  line-height: 1em;
}
.custom-product-price-overlay ins  {
  line-height: 1em;
}
.custom-product-price-overlay ins .woocommerce-Price-amount {
  text-decoration: none;
  color: #fff;
  line-height: 1em;
}

/* hover ceny po najechaniu na produkt */
.sp-product-image:hover .custom-product-price-overlay del {
  position: relative;
  top: 8px;
}
.sp-product-image:hover .custom-product-price-overlay {
  /* Pozycjonowanie */
  position: absolute;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0);
  backdrop-filter: blur(0);
}


/* Zniżka - lewy górny róg
------------------------- */
.woocommerce ul.products li.product .onsale {
  position: absolute;
  top: 15px;
  left: 15px;
  z-index: 4; /* Nad wszystkim innym */
  border-radius: 6px;
  padding: 6px;
  font-size: 0.875rem;
  background: rgba(60, 115, 87,0.85);
  backdrop-filter: blur(5px);
}

/* Kategorie atrybutu - nad ceną
------------------------- */
.custom-product-details-overlay {
  /* Pozycjonowanie - nad ceną */
  position: absolute;
  bottom: 0;              /* Nad ceną (dostosuj jeśli potrzeba) */
  left: 0;
  z-index: 4;
  /* Szerokość */
  width: 100%;
  max-width: 100%;
  /* Wygląd */
  background: rgba(0, 0, 0, 0.0);
  background: linear-gradient(180deg,rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.45) 100%);
  padding: 10px 15px 60px;
  border-radius: 0 0 6px 6px;
  /* Typografia */
  font-size: 0.8rem;
  line-height: 1.5;
  /* UKRYJ DOMYŚLNIE - pokaż po hover */
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  /* Płynna animacja */
  transition: all 0.3s ease;
}

/* POKAŻ po najechaniu na zdjęcie produktu */
.sp-product-image:hover .custom-product-details-overlay {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* Pojedynczy element (kategoria lub atrybut) */
.custom-detail-item {
  margin-bottom: 5px;
}
.custom-detail-item:last-child {
  margin-bottom: 0;
}

/* Style dla kategorii */
.custom-categories {
  opacity: 0.6;
  font-size: 11px;
  color: #fff;
  }
.custom-categories a {
  color: #fff;
  text-decoration: none;
  transition: all 0.2s ease-in-out;
  }

.custom-categories a:hover {
  opacity: 0.9;
  color: #fff;
  text-decoration: none;
}

/* Style dla atrybutów (Format, Materiał) */
.custom-attribute .custom-attr-label {
  font-weight: 600;
  color: #fff;
}

.custom-attribute .custom-attr-value {
  color: #fff;
  font-weight: 400;
}

/* Przycisk - środek
------------------------- */
.sp-product-image .sp-image-buttons {
  position: absolute;
  z-index: 3; /* Najwyższy - nad wszystkim */
}

.woocommerce ul.products li.product:hover .sp-image-buttons .button,
.sp-product-image:hover .sp-image-buttons .button,
.woocommerce ul.products li.product:hover .sp-image-buttons,
.sp-product-image:hover .sp-image-buttons {
  opacity: 1!important;
  visibility: visible;
}
.sp-product-image .sp-image-buttons .button {
  margin-bottom: 0!important;
  font-size: 0.875rem!important;
  letter-spacing: 0!important;
  background: rgba(168,148,91,0.95);
  backdrop-filter: blur(5px);
}
.sp-product-image .sp-image-buttons .button:hover {
  background: rgba(168,148,91,0.75);
  backdrop-filter: blur(1px);
}

/* Przycisk - prawy dolny róg
------------------------- */
/*
.sp-product-image .sp-image-buttons {
  position: absolute;
  z-index: 10;
  top: auto;
  left: auto;
  right: 0;
  bottom: 0;
  width: 60%;
  justify-content: flex-end;
  align-items: flex-end;
}

.sp-product-image .sp-product-overlay-link {
  position: absolute;
  top: auto;
  left: auto;
  bottom: 0;
  right: 0;
  width: 100%;
  z-index: 4;
}

.woocommerce ul.products li.product:hover .sp-image-buttons .button,
.sp-product-image:hover .sp-image-buttons .button,
.woocommerce ul.products li.product:hover .sp-image-buttons,
.sp-product-image:hover .sp-image-buttons {
  opacity: 1!important;
  visibility: visible;
}
.sp-product-image .sp-image-buttons .button {
  width: 100%;
  max-width: 100%;
  margin-bottom: 0!important;
  font-size: 0.875rem!important;
  letter-spacing: 0!important;
  border-radius: 6px 0 6px 0;
  background: rgba(168,148,91,0.95);
  backdrop-filter: blur(5px);
  padding: 15px 15px;
  z-index: 11;
}
.sp-product-image .sp-image-buttons .button:hover {
  background: rgba(168,148,91,0.75);
  backdrop-filter: blur(1px);
}
*/

/* Efekty specjalne (weryfikacja)
------------------------- */

/* Subtelne przyciemnienie zdjęcia po hover */
.sp-product-image:hover .img-wrap::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.05);
    z-index: 1;
    transition: all 0.3s ease;
}

/* Animacja zoom na zdjęciu po hover */
.sp-product-image .img-wrap img {
    transition: transform 0.5s ease;
}

.sp-product-image:hover .img-wrap img {
    transform: scale(1.05);
}


/* Podobne produkty
------------------------- */
.woocommerce .nv-shop ul.products:not(.tns-slider) li.product .sp-product-image {
  border-radius: 6px;
  overflow: hidden;
}


/* Zmiany na tablet i telefon
------------------------- */

@media (max-width: 992px) {
/* NA MOBILE - POKAŻ WSZYSTKO DOMYŚLNIE (bez hover) */
    
.custom-product-details-overlay {
  opacity: 1 !important;
  visibility: visible !important;
  transform: translateY(0) !important;
}
  
/* hover ceny po najechaniu na produkt */
.sp-product-image .custom-product-price-overlay del {
  position: relative;
  top: 8px;
}
.sp-product-image .custom-product-price-overlay {
  /* Pozycjonowanie */
  position: absolute;
  bottom: 0;
  left: 0;
  background: rgba(0, 0, 0, 0);
  backdrop-filter: blur(0);
}

.sp-product-image .custom-product-details-overlay {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
    
.woocommerce ul.products li.product .sp-image-buttons .button,
.sp-product-image .sp-image-buttons .button,
.woocommerce ul.products li.product .sp-image-buttons,
.sp-product-image .sp-image-buttons {
  opacity: 1!important;
  visibility: visible;
}    
  
}


/* ------------------------
Formularz
------------------------- */

/* 
Formularz - Moje Konto
------------------------- */
body.woocommerce-account .woocommerce-MyAccount-content form .form-row {
  margin-bottom: 15px;
}
body.woocommerce-account .woocommerce-MyAccount-content form .form-row-first,
body.woocommerce-account .woocommerce-MyAccount-content form .form-row-last {
  width: calc(50% - 5px);
}
body.woocommerce-account .woocommerce-MyAccount-content form .form-row input {
  border-radius: 3px !important;
  border: 1px solid var(--nv-text-color) !important;
  padding: var(--buttonpadding) !important;
  line-height: 1em !important;
}
body.woocommerce-account .woocommerce-MyAccount-content form .form-row input:hover {
  border: 1px solid var(--nv-primary-accent) !important;
}
body.woocommerce-account .woocommerce-MyAccount-content form .form-row input:focus {
  border: 1px solid var(--nv-primary-accent) !important;
  outline: 1px solid var(--nv-primary-accent);
}
body.woocommerce-account .woocommerce-MyAccount-content form em {
  font-size: 0.875rem;
}
body.woocommerce-account .woocommerce-MyAccount-content form fieldset {
  border-radius: 3px !important;
}
body.woocommerce-account .woocommerce-MyAccount-content form button {
  margin-top: 15px;
  padding: var(--buttonpadding);
}
body.woocommerce-account .woocommerce-MyAccount-content form button.show-password-input {
  margin: 0;
}

/* ------------------------
Mini koszyk (off-canvas)
------------------------ */
/* "Zamknij" button: Neve styles it as a secondary button with dark text,
   which is invisible on the dark cart panel. White outline + x icon. */
.cart-off-canvas .nv-close-cart-sidebar,
.cart-off-canvas .nv-close-cart-sidebar.button-secondary {
  display: inline-flex !important;
  align-items: center;
  gap: 8px;
  min-height: 0 !important;
  padding: 8px 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.35) !important;
  border-radius: var(--defaultborderradius) !important;
  background: transparent !important;
  color: #fff !important;
  font-size: 0.8125rem !important;
  line-height: 1 !important;
  letter-spacing: 0.04em;
  box-shadow: none !important;
  cursor: pointer;
  transition: border-color 0.2s ease, color 0.2s ease;
}
.cart-off-canvas .nv-close-cart-sidebar::before {
  content: "\00D7";
  font-size: 1.25rem;
  line-height: 0.8;
}
.cart-off-canvas .nv-close-cart-sidebar:hover,
.cart-off-canvas .nv-close-cart-sidebar:focus-visible {
  border-color: var(--primarybtnbg) !important;
  color: var(--primarybtnbg) !important;
  outline: none;
}

/* ------------------------
Powiadomienia
------------------------ */
.woocommerce .woocommerce-info,
.woocommerce-page .woocommerce-info {
  background: var(--custom-5);
  color: var(--nv-text-color);
}
.woocommerce .woocommerce-error,
.woocommerce-page .woocommerce-error {
  background: var(--custom-4);
  color: var(--nv-text-color);
}
.woocommerce .woocommerce-message,
.woocommerce-page .woocommerce-message {
  background: var(--custom-3);
  color: var(--nv-text-color);
}

.neve-main .wc-block-components-notice-banner button {
  margin-top: 0 !important;
  opacity: 1 !important;
}
.neve-main .wc-block-components-notice-banner button svg {
  background-color: transparent !important;
  fill: var(--nv-text-color) !important;
}

.woocommerce .woocommerce-message a.button:hover,
.woocommerce .woocommerce-error a.button:hover,
.woocommerce .woocommerce-info a.button:hover {
  border-color: var(--nv-secondary-accent);
  color: var(--nv-site-bg);
  background: var(--nv-secondary-accent);
}

.neve-main .wc-block-components-notice-banner.is-info {
  background: var(--custom-5);
  color: var(--nv-text-color);
}
.neve-main .wc-block-components-notice-banner.is-info > svg {
  background-color: var(--nv-text-color);
  fill: var(--custom-5);
}
.neve-main .wc-block-components-notice-banner.is-error {
  background: var(--custom-4);
  color: var(--nv-text-color);
}
.neve-main .wc-block-components-notice-banner.is-error > svg {
  background-color: var(--nv-text-color);
  fill: var(--custom-4);
}
.neve-main .wc-block-components-notice-banner.is-success {
  background: var(--custom-3);
  color: var(--nv-text-color);
}
.neve-main .wc-block-components-notice-banner.is-success > svg {
  background-color: var(--nv-text-color);
  fill: var(--custom-3);
}

/* ------------------------
Mini Cart
------------------------ */
.nv-nav-cart {
  background: var(--nv-dark-bg);
  color: #fff;
}
.nv-nav-cart a.remove,
.nv-nav-cart li > a {
  color: #fff !important;
}
.nv-nav-cart .widget_shopping_cart_content .total {
  box-shadow: none;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}
.woocommerce a.remove:hover {
  background: transparent;
  color: var(--nv-primary-accent) !important;
}
.nv-nav-cart .button {
  padding: 6px 15px !important;
  border-color: var(--nv-primary-accent) !important;
}
.nv-nav-cart .button:hover {
  color: #fff !important;
  border-color: #fff !important;
}
.nv-nav-cart .button-secondary {
  background: transparent !important;
  color: var(--nv-primary-accent) !important;
}
.nv-nav-cart .button.checkout {
  border-color: var(--nv-primary-accent);
}
.nv-nav-cart .button.checkout:hover {
  color: var(--nv-dark-bg) !important;
  background: #fff;
}

/* dodatkowe ustawienia */
.cart-off-canvas.cart-open a {
  color: #fff!important;
}
.nv-nav-cart .woocommerce-mini-cart__buttons.buttons .button {
  font-size: 0.875rem!important;
  line-height: 1em!important;
  border-radius: 4px!important;
  padding: 12px 10px!important;
  letter-spacing: 0!important;
  text-transform: uppercase!important;
}
.nv-nav-cart .woocommerce-mini-cart__buttons.buttons a.button.wc-forward:not(.checkout) {
  border: 2px solid #fff!important;
}

.woocommerce-mini-cart-item.mini_cart_item {
  border-bottom: 1px solid rgba(255,255,255,0.05)
}

.woocommerce-mini-cart-item.mini_cart_item img {
  border-radius: 6px;
}

/* mini cart - tm global */
.nv-nav-cart .tc-epo-metadata.variation {
  font-size: 0.7rem;
  line-height: 1.25em;
}

/* ------------------------
Moje Konto
------------------------- */
.woocommerce-account .nv-single-page-wrap,
.woocommerce-cart .nv-single-page-wrap,
.woocommerce-checkout .nv-single-page-wrap {
  margin-top: 60px;
}

/*
Moje Konto - zakładki (przyciski)
------------------------- */
body.woocommerce-account .woocommerce nav {
  display: block;
  float: none;
  width: 100%;
}
body.woocommerce-account .woocommerce nav ul {
  display: flex;
  justify-content: center;
  align-items: stretch;
  margin-top: 0!important;
  margin-bottom: 30px!important;
  gap: 15px;
  border: 0;
  border-radius: 0;
  overflow: initial;
}
body.woocommerce-account .woocommerce nav ul li {
  margin: 0 auto;
  display: flex;
  justify-content: stretch;
  flex: 1 0 auto;
}
body.woocommerce-account .woocommerce nav ul li a {
  width: 100%;
  background: var(--nv-primary-accent);
  color: var(--nv-light-bg);
  padding: var(--buttonpadding);
  border: 2px solid var(--nv-primary-accent);
  border-radius: var(--defaultborderradius);
  text-decoration: none;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 1px;
  text-align: center;
}
body.woocommerce-account .woocommerce nav ul li.is-active a,
body.woocommerce-account .woocommerce nav ul li a:hover {
  background: var(--nv-secondary-accent);
  border-color: var(--nv-secondary-accent);
  color: var(--nv-light-bg);
}
body.woocommerce-account .woocommerce nav .is-active {
  border-left: 0;
}

/*
Moje Konto - tekst
------------------------- */
body.woocommerce-account .woocommerce-MyAccount-content {
  text-align: center;
  float: none;
  width: 100%;
}
body.woocommerce-account .woocommerce-MyAccount-content p:last-of-type:not(:first-of-type) {
  margin-bottom: 0;
}

/*
Moje Konto - zamówienia
------------------------- */
.woocommerce table.order_details tfoot td {
  font-weight: normal;
}

.shop_table .button {
  padding: 12px 15px!important;
  margin: 5px 0 5px 10px!important
}

@media screen and (max-width: 768px) {
  .woocommerce table.my_account_orders tr th {
    margin-top: var(--sectionpadding);
    display: block;
    width: 100%;
    border-top: 2px solid var(--nv-light-bg);
  }
  .woocommerce table.my_account_orders tr:first-child th {
    margin-top: 0;
    display: block;
    width: 100%;
    border-top: 0;
  }
}

@media screen and (min-width: 769px) {
  .woocommerce table.my_account_orders tr:not(:first-child) th,
  .woocommerce table.my_account_orders tr:not(:first-child) td {
    border-top: 1px solid var(--nv-light-bg) !important;
  }

  body.woocommerce-account table.order_details tbody tr td {
    border-top: 0;
    border-bottom: 1px solid var(--nv-light-bg) !important;
  }
  body.woocommerce-account table.order_details tbody tr:last-child td,
  body.woocommerce-account table.order_details tfoot tr:last-child td,
  body.woocommerce-account table.order_details tfoot tr:last-child th {
    border-bottom: 2px solid var(--nv-light-bg) !important;
  }
}

/*
Moje Konto - adresy
------------------------- */
.woocommerce .col2-set,
.woocommerce-page .col2-set {
  margin-top: 30px;
  display: flex;
  gap: var(--defaultgap);
}
.woocommerce .col2-set,
.woocommerce-page .col2-set::before,
.woocommerce .col2-set,
.woocommerce-page .col2-set::after {
  content: none;
}
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2,
.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1 {
  width: 50%;
  float: none;
  padding: var(--defaultpadding);
  background: var(--custom-5);
  border-radius: var(--defaultborderradius);
}
.woocommerce-account .addresses .title .edit {
  display: inline-block;
  float: none;
  text-align: center;
  background: var(--nv-secondary-accent);
  color: var(--nv-light-bg);
  padding: var(--buttonpadding);
  border: 2px solid var(--nv-secondary-accent);
  border-radius: var(--defaultborderradius);
  text-decoration: none;
  font-size: 1rem;
  line-height: 1em;
  letter-spacing: 1px;
  margin-bottom: 15px;
}
body.woocommerce-account .woocommerce-MyAccount-content address {
  font-style: normal;
}

/* ------------------------
Status zamówienia
------------------------- */
.woocommerce-form-track-order {
  margin-top: calc(-1 * var(--defaultpadding));
  text-align: center;
}
.woocommerce-form-track-order p {
  margin-bottom: var(--defaultpadding);
}

body.status-zamowienia .woocommerce {
  text-align: center;
}

body.status-zamowienia .woocommerce table.shop_table {
  border-width: 2px;
}
body.status-zamowienia .woocommerce-table td {
  border-bottom: 0;
  padding: 20px 15px !important;
}
body.status-zamowienia .woocommerce table.shop_table {
  border: 0;
}
body.status-zamowienia .woocommerce-table tbody tr:first-child td {
  border-top: 2px solid var(--nv-text-color);
}
body.status-zamowienia .woocommerce-table tbody tr:last-child td {
  border-bottom: 2px solid var(--nv-light-bg);
}
body.status-zamowienia .woocommerce-table tfoot:last-child tr th,
body.status-zamowienia .woocommerce-table tfoot:last-child tr td {
  border-top: 0;
}
body.status-zamowienia .woocommerce-table tfoot:last-child tr:last-child th,
body.status-zamowienia .woocommerce-table tfoot:last-child tr:last-child td {
  border-bottom: 1px solid var(--nv-light-bg);
}
body.status-zamowienia .woocommerce-table tfoot:first-of-type tr:last-child th,
body.status-zamowienia .woocommerce-table tfoot:first-of-type tr:last-child td {
  border-bottom: 2px solid var(--nv-light-bg);
}
body.status-zamowienia .woocommerce-table tfoot td {
  font-weight: normal;
}

body.status-zamowienia .woocommerce-customer-details h2 {
  --h2fontsize: var(--h3fontsize);
}
body.status-zamowienia .woocommerce-order-details table tr th:last-child,
body.status-zamowienia .woocommerce-order-details table tr td:last-child {
  text-align: right;
}

/* ------------------------
Koszyk
------------------------- */
/* przycisk w koszyku */
.ud-cart-btn a {
  font-size: var(--bodyfontsize);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  fill: #ffffff;
  color: #ffffff;
  background-color: var(--nv-secondary-accent);
  border: 2px solid var(--nv-secondary-accent);
  border-radius: 3px;
  padding: var(--buttonpadding);
}
.ud-cart-btn a span {
  line-height: 1em;
}

/* 
Koszyk - lista produktów
------------------------- */
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
  border-radius: 3px;
}
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__prices,
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
  font-size: var(--bodyfontsize);
}
table.wc-block-cart-items .wc-block-cart-items__row .wc-block-components-product-name {
  font-weight: bold;
}
.wc-block-components-product-metadata {
  font-size: 0.875rem;
}
.wc-block-components-quantity-selector {
  border-radius: 3px;
}
.wc-block-components-quantity-selector input.wc-block-components-quantity-selector__input {
  padding: 8px 0;
}

@media screen and (min-width: 768px) {
  .is-large.wc-block-cart .wc-block-cart-items td.wc-block-cart-item__image {
    padding-left: 0;
  }
  table.wc-block-cart-items .wc-block-cart-items__row .wc-block-cart-item__image img {
    min-width: 128px;
  }
}

/* ------------------------
Zamówienie
------------------------- */
.wc-block-components-order-summary .wc-block-components-order-summary-item__image > img {
  border-radius: 3px;
}
.wc-block-components-address-card address .wc-block-components-address-card__address-section span {
  display: block !important;
}
.wp-block-woocommerce-checkout-actions-block
  .wc-block-checkout__actions_row
  .wc-block-components-checkout-place-order-button {
  padding: var(--buttonpadding);
  min-height: auto !important;
}
.wp-block-woocommerce-checkout-actions-block
  .wc-block-checkout__actions_row
  .wc-block-components-checkout-place-order-button:hover {
  opacity: 0.9;
}

/* ------------------------
Potwierdzenie zamówienia
------------------------- */
.woocommerce-order-received .woocommerce-order {
  text-align: center;
}

.woocommerce-order-received .woocommerce-order-details {
  margin-top: var(--sectionpadding);
}

.woocommerce-order-received table.shop_table {
  margin-bottom: var(--sectionpadding);
}
.woocommerce-order-received ul.order_details {
  width: 100%;
  display: flex;
  padding-left: 0;
  margin: 0 auto;
  margin-bottom: var(--defaultpadding);
  text-align: center;
  justify-content: center;
}

.woocommerce-order-received .woocommerce-customer-details {
  margin-bottom: 0;
}
.woocommerce-order-received .woocommerce-customer-details address {
  padding: 0;
  border: 0;
  text-align: center;
  font-style: normal;
}

/* dodatkowe informacje */
.checkout-fields-for-blocks {
  padding: var(--defaultpadding);
  background: var(--custom-5);
  border-radius: var(--defaultborderradius);
}

.woocommerce-order-received .checkout-fields-for-blocks {
  margin-top: var(--defaultpadding);
}
.woocommerce-order-received .checkout-fields-for-blocks ul {
  margin: 0 auto;
}

/* ------------------------
Archive product
------------------------- */

/* kiedy nie korzystam z sortowania neve, filtrowania i ilości produktów ukrywam te bloki  */
.nv-bc-count-wrap,
.nv-woo-filters {
  display: none;
}

.sp-image-buttons .overlay {
  background-color: transparent;
}

.products li.product .price {
  margin-bottom: 15px;
}

.products .variations {
  margin: 0 auto 15px;
}
.products .variations ul {
  margin: 0 auto;
  justify-content: center;
  align-items: center;
}
.products .sp-vswatches-wrapper .sp-vswatch-item.label {
  border-color: var(--e-global-color-nvlightbg);
}
.products .sp-vswatches-wrapper .sp-vswatch-item.label label {
  padding: 3px 15px !important;
  font-size: 0.75rem;
  font-weight: bold;
}
.products .sp-vswatches-wrapper .sp-vswatch-item.sp-vswatch-active:not(.color) {
  border-color: var(--nv-primary-accent);
}
.products ul:after {
  content: none !important;
}

/* quick view - szybki podgląd */
.sp-quick-view-product.bottom {
  color: var(--nv-light-bg);
  background: rgba(166, 135, 80, 0.9);
}
.sp-image-buttons .sp-quick-view-product.bottom:hover {
  opacity: 1;
}

/* EVERYTHING FILTER */
.nv-sidebar-wrap {
  padding-top: 0;
  margin-bottom: 30px;
}

/* ilość produktów */
.nv-sidebar-wrap .wpc-posts-found {
  margin-top: 5px;
  margin-bottom: 15px;
  font-size: 0.875rem;
}

/* szukaj */
.wpc-filter-search-form {
  padding-top: 10px;
}

/* sekcja filtra */
.wpc-filters-section {
  margin-bottom: 30px;
}

/* tytuł */
.widget:not(.site-footer *) .widget-title {
  background: var(--e-global-color-nvlightbg);
  padding: 10px 15px;
  border-radius: 6px;
  margin-bottom: 10px;
  font-size: 1rem;
}

/* linki */
.wpc-filters-main-wrap li.wpc-term-item a {
  color: var(--e-global-color-nvtextcolor);
}

/* select */
.select2.select2-container.select2-container--default {
  margin-top: 10px;
  width: 100%!important;
}
.wpc-filter-layout-dropdown .select2-container .select2-selection--single,
.wpc-sorting-form .select2-container .select2-selection--single {
  padding: 8px 16px!important;
  border-width: 1px!important;
}

@media (min-width: 960px) {
    .nv-sidebar-wrap.nv-left {
        padding-right: 15px;
    }
}

/* filter chips */
.wpc-filter-chips-list li,
body .wpc-filter-chips-list li.wpc-filter-chip,
li.wpc-filter-chip {
  margin: 0!important;
}
body .wpc-filter-chips-list li.wpc-filter-chip:not(.wpc-chip-reset-all) a {
  border-color: var(--e-global-color-nvtextcolor);
}
.wpc-filter-chip-name {
  font-size: 0.75rem;
  padding: 0px 2px;
}
.wpc-chip-remove-icon {
  display: inline-block;
  font-size: 1rem;
  line-height: 1em;
}

.wpc_show_bottom_widget .wpc-widget-top-inside .wpc-inner-widget-chips-wrapper .wpc-filter-chips-list,
.wpc-custom-selected-terms ul.wpc-filter-chips-list {
  display: flex;
  flex-wrap: wrap; /* Pozwala elementom zawijać się do nowej linii */
  padding-left: 0;
  gap: 4px; /* Opcjonalnie: odstęp między elementami */
}

@media screen and (min-width: 768px) {

.wpc-custom-selected-terms ul.wpc-filter-chips-list {
  gap: 8px;
  margin-bottom: 15px;
}
  
}

/* przycisk filtra na mobilce */
@media screen and (max-width: 959px) {

.wpc_show_bottom_widget .wpc-filters-open-button-container {
  margin-top: 0;
  margin-bottom: 15px;
}
.wpc_show_bottom_widget .wpc-filters-open-button-container a {
  width: 100%;
}
.wpc_show_bottom_widget .wpc-filters-open-button-container a .wpc-button-inner {
  justify-content: center;
}

}


/* ------------------------
Single product
------------------------ */
/* wyśrodkowanie */
.single-product .tabs.wc-tabs {
  display: flex;
  justify-content: center; /* To centruje elementy w poziomie */
  padding: 0;
  margin: 0 0 1.618em;
  border: 0;
}
.single-product .related.products {
  text-align: center;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    float: none !important;
    display: inline-block; /* Bezpieczny fallback */
    margin: 0 15px; /* Opcjonalny odstęp między zakładkami */
}
.woocommerce div.product .woocommerce-tabs ul.tabs::before {
    display: none;
}

/* odstępy w tabs */
.woocommerce div.product .woocommerce-tabs .panel {
  margin-left: -15px;
  margin-right: -15px;
}
.woocommerce div.product .woocommerce-tabs .panel.woocommerce-Tabs-panel--additional_information {
  margin-left: 0;
  margin-right: 0;
}

/* odstępy początkowe */
.single-product .shop-container .nv-index-posts {
  margin-bottom: 0;
}
.single-product .product_title {
  margin-bottom: 0;
}

/* zdjęcie produktu */
.woocommerce div.product div.images img {
  border-radius: 6px;
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .woocommerce-product-gallery__image {
  border-radius: 6px;
}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper a:hover {
  opacity: 1;
}

/* lightbox */
#photoswipe-fullscreen-dialog {
  z-index: 99999999;
}
#photoswipe-fullscreen-dialog button {
  border: 0!important;
}

.pswp__bg {
    background: rgba(0,0,0,0.85);
    backdrop-filter: blur(5px);
}
.pswp__img {
    border-radius: 0.875rem;
    overflow: hidden;
}

/* galeria produktów */
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper .zoomImg {
  background: var(--nv-secondary-accent);
}
.woocommerce div.product div.images .flex-control-thumbs li {
  position: relative;
}

.woocommerce div.product div.images .flex-control-thumbs li::before {
  content: "";
  background: #fff;
  position: absolute;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  border-radius: 6px;
  z-index: -1;
}
.woocommerce div.product div.images .flex-control-thumbs li img {
  opacity: 0.7;
  transition: all ease-in-out 0.2s;
}

/* tytuł + krótki opis */
.woocommerce div.product .product_title {
  font-size: var(--h2fontsize);
}
.woocommerce-product-details__short-description {
  font-size: 0.875rem!important;
  margin-bottom: 30px;
}

/* przecena */
.woocommerce span.onsale {
  left: 15px;
  top: 15px;
  border-radius: 6px;
  padding: 6px;
}

/* cena */
.woocommerce div.product p.price,
.woocommerce div.product p.price bdi {
  color: rgba(0,0,0,.3)!important;
}

/* opinie info prawne i lista opinii */
.woocommerce #reviews #comments ol.commentlist li .comment-text {
  margin-left: 0;
}

.bs-review-disclaimer {
  background: var(--nv-light-bg);
  padding: var(--smallpadding);
  margin-bottom: var(--defaultmarginbottom);
  border-radius: var(--defaultborderradius);
  font-size: 0.875rem;
}

/* opinie short */
.woocommerce .woocommerce-product-rating {
  display: flex;
  justify-content: flex-start; /* Wyrównanie do lewej */
  align-items: center; /* Wyśrodkowanie w pionie */
  float: initial;
}
.woocommerce .woocommerce-product-rating .star-rating {
  margin: 0 auto;
  color: var(--nv-primary-accent);
  flex: 0 0 auto;
  font-size: 1.25rem;
}
.woocommerce-review-link {
  position: relative;
  top: 1px;
  font-size: 01rem;
  flex: 1 0 auto;
}
.woocommerce div.product p.price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product p.price,
.woocommerce:where(body:not(.woocommerce-uses-block-theme)) div.product span.price {
  font-size: var(--h3fontsize);
}

.woocommerce.single #tab-description ol li,
.woocommerce.single #tab-description ul li,
.woocommerce.single .entry-summary ol li,
.woocommerce.single .entry-summary ul li {
  margin-bottom: 15px;
}

/* dodaj do koszyka - odstępy */
.woocommerce.single .entry-summary>form.cart {
    border-bottom: 0;
    padding-bottom: 0;
}

/* buttons - dodaj do koszyka i quantity */
.woocommerce div.product form.cart div.quantity {
  margin-right: 15px;
  float: none;
  display: flex;
}
.woocommerce div.product form.cart div.quantity .minus,
.woocommerce div.product form.cart div.quantity .plus {
  background: none;
  border-color: var(--nv-primary-accent);
  color: var(--nv-primary-accent);
}
.woocommerce div.product form.cart div.quantity .minus {
  border-radius: 6px 0 0 6px;
  border-right: 0;
}
.woocommerce div.product form.cart div.quantity .plus {
  border-radius: 0 6px 6px 0;
  border-left: 0;
}
.woocommerce.single .quantity input {
  border-color: var(--nv-primary-accent);
  border-left: 0;
  border-right: 0;
  border-radius: 0;
  padding-left: 0;
  width: 3em;
}
.woocommerce.single .quantity input::-webkit-inner-spin-button,
.woocommerce.single .quantity input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.woocommerce.single .quantity input {
  -moz-appearance: textfield;
}
.woocommerce div.product form.cart div.quantity:hover .minus,
.woocommerce div.product form.cart div.quantity:hover .plus,
.woocommerce.single .quantity:hover input {
  border-color: var(--nv-primary-accent);
}

/* szybki zakup */
.ud-btn-shop-now {
  padding-top: 15px;
  flex: 1 0 100%;
}
.woocommerce div.product form.cart .ud-btn-shop-now button.button {
  float: none;
  width: 100%;
  min-height: 51px;
  background: transparent;
  border: 2px solid var(--nv-primary-accent);
  color: var(--nv-primary-accent);
}
.woocommerce div.product form.cart .ud-btn-shop-now button.button:hover {
  background: var(--nv-primary-accent);
  border: 2px solid var(--nv-primary-accent);
  color: var(--nv-site-bg);
}

/* box z informacja o dostawie */
.ud-product-shipping-info {
  padding: var(--defaultpadding);
  border: 2px solid var(--nv-light-bg);
  border-radius: var(--defaultborderradius);
  display: flex;
  justify-content: space-between; /* Rozdziela na lewo i prawo */
  align-items: center; /* Wyrównanie w pionie */
  font-size: 0.875rem;
}
.ud-product-shipping-info > * {
  display: flex;
  align-items: center; /* Wyrównanie w pionie */
  flex: 1; /* Równa szerokość dla obu */
  gap: 15px;
}

.ud-info-box {
  display: flex;
  align-items: center; /* Wyrównanie w pionie */
  flex: 1; /* Równa szerokość dla obu */
}

.ud-info-icon {
  display: flex;
  align-items: center;
}

.ud-info-icon svg {
  width: 36px; /* Dopasuj rozmiar ikony */
}

.ud-info-wrapper {
  display: flex;
  flex-direction: column; /* Tekst pod tytułem */
  align-items: flex-start; /* Wyrównanie tekstu do lewej */
}
.ud-info-title {
  line-height: 1.5em;
}
.ud-info-text {
  line-height: 1.5em;
}
a.ud-info-text {
  color: var(--nv-text-color);
  text-decoration: underline;
}

/* charakterystyka produktu */
.woocommerce div.product .woocommerce-tabs .panel#tab-additional_information {
  border: 1px dashed var(--e-global-color-nvprimaryaccent)!important;
  border-radius: 6px;
}
.single-product .woocommerce-product-attributes {
  margin: 0 auto!important;
}
.single-product .woocommerce-product-attributes th,
.single-product .woocommerce-product-attributes td {
  border-bottom: 1px dashed var(--e-global-color-nvprimaryaccent)!important;
  padding: 15px!important;
}
.single-product .woocommerce-product-attributes tr:last-child th,
.single-product .woocommerce-product-attributes tr:last-child td {
  border-bottom: none!important;
}
.single-product .woocommerce-product-attributes th {
  border-right: 1px dashed var(--e-global-color-nvprimaryaccent)!important;
}
.single-product .woocommerce-product-attributes th p,
.single-product .woocommerce-product-attributes td p {
  padding: 0!important;
}

@media screen and (min-width: 768px) {


.single-product.woocommerce table.shop_attributes th {
  width: 240px;
}
	

}

/* ================================================================================================================================================
RESPONSIVE
================================================================================================================================================ */

/* ========================
RESPONSIVE REPAIR 0/4
======================== */
@media (min-width: 960px) {
  .hide-on-desktop {
    display: initial;
  }
}

@media (max-width: 959px) {
  .hide-on-tablet {
    display: initial;
  }
}

@media (max-width: 576px) {
  .hide-on-mobile {
    display: initial;
  }
}
/* correct settings */
@media (min-width: 1025px) {
  .hide-on-desktop {
    display: none;
  }
}

@media (max-width: 1024px) {
  .hide-on-tablet {
    display: none;
  }
}

@media (max-width: 480px) {
  .hide-on-mobile {
    display: none;
  }
}
/* END RESPONSIVE REPAIR */

/* ========================
RESPONSIVE 1024px 1/4
======================== */
@media screen and (max-width: 1024px) {


/* ************************
HEADER
************************ */

/* ------------------------
RIGHT
------------------------ */

/* Menu mobile
------------------------ */
.header-menu-sidebar .navbar-toggle-wrapper button.navbar-toggle:focus,
.header-menu-sidebar .navbar-toggle-wrapper button.navbar-toggle,
.menu-mobile-toggle .navbar-toggle {
  padding: 10px 15px;
  border-radius: 6px;
  border: 2px solid var(--e-global-color-nvprimaryaccent);
  background: var(--e-global-color-nvprimaryaccent);
  outline: none!important;
  color: #fff;
}
.header-menu-sidebar .navbar-toggle-wrapper button.navbar-toggle:hover,
.menu-mobile-toggle .navbar-toggle:hover {
  background: transparent;
  border: 2px solid var(--e-global-color-nvprimaryaccent);
  color: var(--e-global-color-nvprimaryaccent);
}

/* ustawienie odstępów */
#header-menu-sidebar .builder-item {
  margin: 0;
}
#header-menu-sidebar .builder-item--divider {
  padding: 15px 0 30px;
}
#header-menu-sidebar .builder-item--divider_2 {
  padding: 30px 0 15px;
}

/* search */
.header-menu-sidebar .search-form svg {
  opacity: 1;
}

/* btn */
.header-menu-sidebar .button-primary {
  margin-left: 0 !important;
}
.header-menu-sidebar .button-primary:hover {
  color: var(--primarybtncolor);
  border-color: var(--primarybtncolor);
}

/* social media */
#header-menu-sidebar .nv-social-icons-list {
  margin-top: 15px;
}
#header-menu-sidebar .nv-social-icons-list a {
  background: #fff!important;
  fill: var(--nv-primary-accent)!important;
}

/* dropdown */
.header-menu-sidebar button.caret-wrap {
  color: var(--color);
  padding: 0 !important;
  border: none !important;
}
.header-menu-sidebar button.caret-wrap:focus {
  outline: none !important;
}
.header-menu-sidebar .nav-ul .sub-menu.dropdown-open {
  background: rgba(0, 0, 0, 0.02);
  box-shadow: none !important;
  margin-left: 0;
  padding: 5px 15px;
  border-radius: 6px;
  margin-bottom: 15px;
}

.header-menu-sidebar .nav-ul li > .sub-menu li .wrap {
  padding: 0;
}
.header-menu-sidebar .nav-ul li:not([class*="block"]) > .wrap > a {
  padding: 15px 0 !important;
}

/* dodatkowe menu */
#secondary-menu-mobile-sidebar {
  margin: 0 auto;
  gap: 15px;
}
#secondary-menu-mobile-sidebar li {
  margin: 0 auto;
  padding: 0;
}
#secondary-menu-mobile-sidebar li .wrap {
  padding: 0;
  text-align: center;
  align-content: center;
  align-items: center;
}
#secondary-menu-mobile-sidebar li a {
  color: #fff;
  padding: 15px 30px;
  display: block;
  width: 100%;
  text-align: center;
}
#secondary-menu-mobile-sidebar li a:hover {
  border-color: var(--primarybtnbg);
  color: var(--primarybtnbg);
}
#secondary-menu-mobile-sidebar li.button-secondary a {
  color: var(--primarybtnbg);
}
#secondary-menu-mobile-sidebar li.button-secondary:hover {
  background: transparent !important;
  border-color: var(--primarybtnbg);
}

/* ************************
FOOTER
************************ */

/* ------------------------
FOOTER MAIN
------------------------ */

/* Wyśrodkowanie menu
------------------------ */
.ud-footer-main .elementor-nav-menu {
  display: flex!important;
  flex-direction: column;
  justify-content: center;
}
.ud-footer-main .elementor-nav-menu li {
  margin: 0 auto;
}

/* ------------------------
FOOTER MAIN
------------------------ */
.ud-footer-bottom.e-con.e-parent > .e-con-inner {
  gap: 15px;
}

/* ************************
POZOSTAŁE STRONY
************************ */

/* ------------------------
Strony prawne
------------------------ */
.ud-law {
  margin: 45px auto;
}


} /* END RESPONSIVE 1024px */



/* ========================
RESPONSIVE 768-1024px 2/4
======================== */
@media screen and (min-width: 768px) and (max-width: 1024px) {


/* ************************
GENERAL
************************ */

/* ------------------------
TITLES
------------------------ */
:root {
  --h1fontsize: 2.5rem;
  --h2fontsize: 2rem;
  --h3fontsize: 1.75rem;
  --h4fontsize: 1.5rem;
  --h5fontsize: 1.2rem;
  --h6fontsize: 1rem;
  --sectionpadding: 45px;
  --defaultpadding: 30px;
}
h1,
h1.elementor-heading-title {
  margin-bottom: 24px;
}
h2,
h2.elementor-heading-title {
  margin-bottom: 22px;
}
h3,
h3.elementor-heading-title {
  margin-bottom: 20px;
}
h4,
h4.elementor-heading-title {
  margin-bottom: 18px;
}
h5,
h5.elementor-heading-title {
  margin-bottom: 16px;
}
h6,
h6.elementor-heading-title {
  margin-bottom: 14px;
}

/* ------------------------
TEXT
------------------------ */
p {
  margin-bottom: 14px;
}


/* ************************
PLUGINS
************************ */

/* ------------------------
ELEMENTOR
------------------------ */

/* Global Settings
------------------------ */
.ud-con-normal.e-con.e-con-full,
.ud-con-normal.e-con:not(.e-con-full) > .e-con-inner {
  padding: 45px 15px;
}
.ud-con-small.e-con.e-con-full,
.ud-con-small.e-con:not(.e-con-full) > .e-con-inner {
  padding: 30px 15px;
}
.ud-con-minimal.e-con.e-con-full,
.ud-con-minimal.e-con:not(.e-con-full) > .e-con-inner {
  padding: 30px 15px;
}
.ud-con-normal.e-con > .e-con-inner {
  gap: 30px;
}
.ud-con-small.e-con > .e-con-inner {
  gap: 15px;
}
.ud-con-minimal.e-con > .e-con-inner {
  gap: 15px;
}

/* ------------------------
TABLE OF CONTENTS
------------------------ */
#ez-toc-container {
  margin: 15px auto 0;
}

/* ------------------------
GUTHENBERG
------------------------ */

/* Spacer
------------------------ */
.ud-gb-spacer {
  height: 45px !important;
}


/* ************************
WOOCOMMERCE
************************ */
body.woocommerce-shop.archive .neve-main {
  padding-top: 45px;
}

/* ------------------------
Wygląd karty produktu w sklepie - powiązany z Custom Product Card Layout for Neve w functions.php
------------------------- */
.woocommerce .nv-shop ul.products:not(.tns-slider) {
  gap: 15px;
}

/* ------------------------
Single product
------------------------- */

/* buttons - dodaj do koszyka i quantity } */
.woocommerce div.product form.cart div.quantity .minus,
.woocommerce div.product form.cart div.quantity .plus {
  padding: 15px;
}


} /* END RESPONSIVE 768-1024px */


/* ========================
RESPONSIVE 767px 3/4
======================== */
@media screen and (max-width: 767px) {


/* ************************
GENERAL
************************ */

/* ------------------------
TITLES
------------------------ */
:root {
  --h1fontsize: 2rem;
  --h2fontsize: 1.75rem;
  --h3fontsize: 1.5rem;
  --h4fontsize: 1.25rem;
  --h5fontsize: 1rem;
  --h6fontsize: 0.875rem;
  --h1letterspacing: 0px;
  --defaultgap: 15px;
  --sectionpadding: 30px;
  --defaultpadding: 15px;
  --smallpadding: 10px;
  --buttonpadding: 11px 20px;
  --defaultmargintop: 15px;
  --defaultmarginbottom: 15px;
}
h1,
h1.elementor-heading-title {
  margin-bottom: 20px;
}
h2,
h2.elementor-heading-title {
  margin-bottom: 18px;
}
h3,
h3.elementor-heading-title {
  margin-bottom: 16px;
}
h4,
h4.elementor-heading-title {
  margin-bottom: 14px;
}
h5,
h5.elementor-heading-title {
  margin-bottom: 12px;
}
h6,
h6.elementor-heading-title {
  margin-bottom: 10px;
}

/* ------------------------
TEXT
------------------------ */
p {
  margin-bottom: 10px;
}

/* ************************
PLUGINS
************************ */

/* ------------------------
ELEMENTOR
------------------------ */

/* Global Settings
------------------------ */
/*
.e-con.e-parent>.e-con-inner {
  padding: 30px 15px;
}
*/
.ud-con-normal.e-con.e-con-full,
.ud-con-normal.e-con:not(.e-con-full) > .e-con-inner {
  padding: 30px 15px;
}
.ud-con-small.e-con.e-con-full,
.ud-con-small.e-con:not(.e-con-full) > .e-con-inner {
  padding: 30px 15px;
}
.ud-con-minimal.e-con.e-con-full,
.ud-con-minimal.e-con:not(.e-con-full) > .e-con-inner {
  padding: 30px 15px;
}
.ud-con-normal.e-con > .e-con-inner {
  gap: 15px;
}
.ud-con-small.e-con > .e-con-inner {
  gap: 15px;
}
.ud-con-minimal.e-con > .e-con-inner {
  gap: 15px;
}

/* ------------------------
TABLE OF CONTENTS
------------------------ */
#ez-toc-container {
  margin: 0 auto;
}

/* ------------------------
GUTHENBERG
------------------------ */

/* Spacer
------------------------ */
.ud-gb-spacer {
  height: 30px !important;
}


/* ************************
ELEMENTS
************************ */

/* ------------------------
CAROUSEL
------------------------ */
.ud-carousel-gallery .swiper .swiper-slide:nth-child(2n) {
  margin-top: 15px;
}
.ud-carousel-gallery .elementor-swiper-button {
  display: none !important;
}


/* ************************
BLOG
************************ */

/* ------------------------
BLOG - Archive
------------------------ */
/* Kontener dla zdjęć - proporcja 653:435 */
.blog .nv-post-thumbnail-wrap.img-wrap {
  margin-bottom: 10px; /* Dystans między zdjęciem a treścią */
}


/* ************************
POZOSTAŁE STRONY
************************ */

/* ------------------------
Strony prawne
------------------------ */
.ud-law {
  margin: 30px auto;
}

.ud-law ol ul,
.ud-law ol ol,
.ud-law ul ul,
.ud-law ul ol {
  margin-bottom: 15px;
}


/* ************************
WOOCOMMERCE
************************ */
body.woocommerce-shop.archive .neve-main {
  padding-top: 30px;
}

/* ------------------------
Formularz
------------------------- */

/* 
Formularz - Moje Konto
------------------------- */
body.woocommerce-account .woocommerce-MyAccount-content form .form-row {
  margin-bottom: 10px;
}
body.woocommerce-account .woocommerce-MyAccount-content form button {
  margin-top: 10px;
}

/* ------------------------
Powiadomienia
------------------------- */
.woocommerce .woocommerce-message a.button,
.woocommerce .woocommerce-error a.button,
.woocommerce .woocommerce-info a.button {
  float: none;
  margin-bottom: 15px;
  width: auto;
}

/* ------------------------
Moje Konto
------------------------- */

/*
Moje Konto - zakładki (przyciski)
------------------------- */
body.woocommerce-account .woocommerce nav ul {
  flex-direction: column;
  gap: 5px;
  margin-bottom: 15px;
}
body.woocommerce-account .woocommerce nav ul li {
  width: 100%;
  margin-right: 0;
  padding-bottom: 5px;
}
body.woocommerce-account .woocommerce nav ul li a {
  width: 100%;
}

/*
Moje Konto - adresy
------------------------- */
.woocommerce .col2-set,
.woocommerce-page .col2-set {
  margin-top: 15px;
  flex-direction: column;
}
.woocommerce .col2-set .col-2,
.woocommerce-page .col2-set .col-2,
.woocommerce .col2-set .col-1,
.woocommerce-page .col2-set .col-1 {
  width: 100%;
}

/* ------------------------
Potwierdzenie zamówienia
------------------------- */
.woocommerce-checkout .addresses .woocommerce-column:first-child {
  margin-bottom: var(--defaultpadding);
}

/* ------------------------
Single Product
------------------------- */
/* tytuł + krótki opis */
.woocommerce div.product .product_title {
  font-size: var(--h2fontsize);
}
.woocommerce-product-details__short-description {
  font-size: 0.875rem!important;
  margin-bottom: 30px;
}


} /* END RESPONSIVE 767px */


/* ========================
RESPONSIVE 480px 4/4 - only some elements
======================== */
@media screen and (max-width: 480px) {





} /* END RESPONSIVE 480px */
